diff --git a/beike/Repositories/CategoryRepo.php b/beike/Repositories/CategoryRepo.php
index ab871ad3..ac7204b4 100644
--- a/beike/Repositories/CategoryRepo.php
+++ b/beike/Repositories/CategoryRepo.php
@@ -84,6 +84,7 @@ class CategoryRepo
}
$results[] = [
'id' => $category->id,
+ 'status' => $category->active,
'name' => $pathName,
];
}
diff --git a/beike/Repositories/ProductRepo.php b/beike/Repositories/ProductRepo.php
index 3240a819..60fa66ad 100644
--- a/beike/Repositories/ProductRepo.php
+++ b/beike/Repositories/ProductRepo.php
@@ -103,6 +103,7 @@ class ProductRepo
$results[] = [
'id' => $product->id,
'name' => $product->description->name,
+ 'status' => $product->active,
'image' => $product->image,
];
}
diff --git a/public/build/beike/admin/css/design.css b/public/build/beike/admin/css/design.css
index bb448c1b..7ee22520 100644
--- a/public/build/beike/admin/css/design.css
+++ b/public/build/beike/admin/css/design.css
@@ -226,3 +226,255 @@ body.page-design .pb-images-selector .pb-images-list .pb-images-btns button {
body.page-design .pb-images-selector .pb-images-list .el-input-group__prepend {
padding: 0 10px;
}
+
+.link-selector-wrap > .title {
+ margin-bottom: 6px;
+ position: relative;
+ font-size: 12px;
+}
+.link-selector-wrap > .title i {
+ margin-right: 4px;
+ color: #0072ff;
+}
+.link-selector-wrap .selector-type {
+ position: relative;
+ outline: none;
+}
+.link-selector-wrap .selector-type .title {
+ border: 1px solid #eee;
+ padding: 6px 16px 6px 6px;
+ font-size: 12px;
+ cursor: pointer;
+ text-overflow: ellipsis;
+ overflow: hidden;
+ white-space: nowrap;
+ border-radius: 2px;
+ background-color: #fff;
+}
+.link-selector-wrap .selector-type .title:hover {
+ border-color: #ddd;
+}
+.link-selector-wrap .selector-type .title:before {
+ content: "\f107";
+ font-family: fontawesome;
+ position: absolute;
+ right: 10px;
+ top: 8px;
+}
+.link-selector-wrap .selector-type .selector-content {
+ position: absolute;
+ z-index: 999;
+ top: calc(100% + 2px);
+ border-radius: 2px;
+ left: 0;
+ width: 100%;
+ background-color: #fff;
+ box-shadow: 0 3px 10px rgba(0, 0, 0, 0.25);
+ display: none;
+}
+.link-selector-wrap .selector-type .selector-content.active {
+ display: block;
+}
+.link-selector-wrap .selector-type .selector-content > div {
+ padding: 6px 10px;
+ cursor: pointer;
+}
+.link-selector-wrap .selector-type .selector-content > div:hover {
+ background-color: #e0fcf6;
+}
+
+.link-dialog-box .el-dialog__header {
+ padding: 0;
+}
+.link-dialog-box .el-dialog__header .el-dialog__headerbtn {
+ top: 14px;
+ font-size: 20px;
+}
+.link-dialog-box .el-dialog__header .el-dialog__headerbtn i {
+ color: #fff;
+}
+.link-dialog-box .el-dialog__body {
+ padding-bottom: 10px;
+}
+.link-dialog-box .el-dialog__footer .el-button {
+ padding: 10px 20px;
+ min-width: 80px;
+}
+.link-dialog-box .link-dialog-header {
+ padding: 10px 20px;
+ background-color: #409eff;
+}
+.link-dialog-box .link-dialog-header .title {
+ font-weight: bold;
+ color: #fff;
+ font-size: 16px;
+}
+.link-dialog-box .link-dialog-header div.input-with-select {
+ margin-top: 16px;
+ display: flex;
+ align-items: center;
+}
+.link-dialog-box .link-dialog-header div.input-with-select input {
+ height: 34px;
+ border: none;
+ border-radius: 4px 0 0 4px;
+ flex: 1;
+ padding: 0 10px;
+ outline: none;
+}
+.link-dialog-box .link-dialog-header div.input-with-select button {
+ color: #333;
+ border: none;
+ background-color: #eee;
+ height: 34px;
+ line-height: 36px;
+ border-radius: 0 4px 4px 0;
+ padding: 0 14px;
+ overflow: hidden;
+}
+.link-dialog-box .link-dialog-content .product-search {
+ margin: -30px -20px 10px;
+ padding: 6px 20px;
+ text-align: left;
+ background-color: #f3f4f7;
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+.link-dialog-box .link-dialog-content .product-search > a {
+ border: 1px solid #ccc;
+ background-color: #fff;
+ padding: 0 10px;
+ border-radius: 4px;
+ height: 26px;
+ line-height: 26px;
+ color: #333;
+}
+.link-dialog-box .link-dialog-content .product-search .el-input-group__append {
+ background-color: #0072ff;
+ color: #fff;
+ margin-top: -1px;
+}
+.link-dialog-box .link-dialog-content .product-info {
+ height: 340px;
+}
+.link-dialog-box .link-dialog-content .product-info .product-info-title {
+ background-color: #dee1e9;
+ display: flex;
+ justify-content: space-between;
+ padding: 6px 20px 6px 38px;
+ text-align: left;
+ color: #30344f;
+ font-size: 14px;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list {
+ padding-left: 0;
+ list-style: none;
+ margin-top: 4px;
+ margin-bottom: 0;
+ height: 314px;
+ overflow-y: auto;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list.static {
+ height: 340px;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ padding: 5px 10px;
+ border-bottom: 1px solid #eee;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li:not(.no-status) {
+ cursor: pointer;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li:not(.no-status):hover {
+ background-color: #e0fcf6;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li .left {
+ flex: 1;
+ display: flex;
+ align-items: center;
+ margin-right: 20px;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li .left .checkbox-plus {
+ margin-right: 12px;
+ flex: 0 0 14px;
+ height: 14px;
+ border: 1px solid #ddd;
+ border-radius: 50%;
+ display: flex;
+ position: relative;
+ justify-content: center;
+ align-items: center;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li .left .checkbox-plus:not(.no-status) {
+ cursor: pointer;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li .left .checkbox-plus:before {
+ content: "";
+ width: 10px;
+ height: 10px;
+ background-color: #0072ff;
+ border-radius: 50%;
+ display: none;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li .left .checkbox-plus.active {
+ border-color: #0072ff;
+ box-shadow: 0px 0px 4px #0072ff;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li .left .checkbox-plus.active:before {
+ display: block;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li .left .checkbox-plus.no-status {
+ background-color: #ddd;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li .left > div {
+ display: -webkit-box;
+ text-overflow: ellipsis;
+ -webkit-line-clamp: 2;
+ -webkit-box-orient: vertical;
+ word-break: break-all;
+ overflow: hidden;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li .right {
+ border: 1px solid #ddd;
+ border-radius: 2px;
+ padding: 2px 6px;
+ color: #aaa;
+ font-size: 12px;
+ background-color: #fff;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li .right.ok {
+ color: #52c41a;
+ border-color: #b7eb8f;
+}
+.link-dialog-box .link-dialog-content .product-info .product-list li img {
+ width: 46px;
+ margin-right: 10px;
+}
+.link-dialog-box .link-dialog-content .product-info-no {
+ text-align: center;
+ font-size: 14px;
+}
+.link-dialog-box .link-dialog-content .product-info-no > div {
+ display: block;
+}
+.link-dialog-box .link-dialog-content .product-info-no .icon {
+ margin: 50px 0 20px;
+}
+.link-dialog-box .link-dialog-content .product-info-no .icon i {
+ font-size: 100px;
+ color: #8c8c8c;
+}
+.link-dialog-box .link-dialog-content .product-info-no .no-text {
+ font-size: 16px;
+}
+.link-dialog-box .link-dialog-content .product-info-no a {
+ color: #0072ff;
+ text-decoration: underline;
+}
+.link-dialog-box .el-dialog__footer {
+ background-color: #f6f6f6;
+ padding: 10px 20px;
+}
diff --git a/public/build/beike/admin/css/filemanager.css b/public/build/beike/admin/css/filemanager.css
index bda06a45..b3e99add 100644
--- a/public/build/beike/admin/css/filemanager.css
+++ b/public/build/beike/admin/css/filemanager.css
@@ -13,6 +13,20 @@ body.page-filemanager .filemanager-wrap {
}
body.page-filemanager .filemanager-wrap .filemanager-navbar {
width: 20%;
+ background-color: #293042;
+}
+body.page-filemanager .filemanager-wrap .filemanager-navbar .el-tree {
+ background-color: transparent;
+}
+body.page-filemanager .filemanager-wrap .filemanager-navbar .el-tree .el-tree-node__content {
+ color: #eee;
+}
+body.page-filemanager .filemanager-wrap .filemanager-navbar .el-tree .el-tree-node__content:hover {
+ background-color: #434d66;
+}
+body.page-filemanager .filemanager-wrap .filemanager-navbar .el-tree--highlight-current .el-tree-node.is-current > .el-tree-node__content {
+ background-color: #434d66;
+ color: #fff;
}
body.page-filemanager .filemanager-wrap .filemanager-navbar .tree-wrap .el-tree-node__content {
height: 36px;
@@ -27,7 +41,7 @@ body.page-filemanager .filemanager-wrap .filemanager-navbar .tree-wrap .custom-t
margin-right: 8px;
}
body.page-filemanager .filemanager-wrap .filemanager-navbar .tree-wrap .custom-tree-node .right span:hover {
- color: #fd560f;
+ color: #0b68ff;
}
body.page-filemanager .filemanager-wrap .filemanager-divider {
top: 0;
@@ -35,7 +49,7 @@ body.page-filemanager .filemanager-wrap .filemanager-divider {
cursor: col-resize;
}
body.page-filemanager .filemanager-wrap .filemanager-divider:hover {
- background: #fd560f;
+ background: #0b68ff;
}
body.page-filemanager .filemanager-wrap .filemanager-content {
flex: 1;
@@ -60,10 +74,10 @@ body.page-filemanager .filemanager-wrap .filemanager-content .content-head .left
color: #17191c;
}
body.page-filemanager .filemanager-wrap .filemanager-content .content-head .left a.is-disabled i {
- color: #fe9d74;
+ color: #71a7ff;
}
body.page-filemanager .filemanager-wrap .filemanager-content .content-head .left a i {
- color: #fd560f;
+ color: #0b68ff;
font-weight: 600;
}
body.page-filemanager .filemanager-wrap .filemanager-content .content-center {
@@ -71,7 +85,7 @@ body.page-filemanager .filemanager-wrap .filemanager-content .content-center {
display: flex;
align-items: flex-start;
flex-wrap: wrap;
- background: #f9fafa;
+ background: #f7f9fc;
padding: 20px 10px;
overflow-y: auto;
align-content: flex-start;
@@ -82,7 +96,7 @@ body.page-filemanager .filemanager-wrap .filemanager-content .content-center::-w
}
body.page-filemanager .filemanager-wrap .filemanager-content .content-center::-webkit-scrollbar-thumb {
border-radius: 2px;
- background: #fd560f;
+ background: #0b68ff;
}
body.page-filemanager .filemanager-wrap .filemanager-content .content-center::-webkit-scrollbar-track {
background: transparent;
@@ -107,7 +121,7 @@ body.page-filemanager .filemanager-wrap .filemanager-content .content-center .im
max-height: 100%;
}
body.page-filemanager .filemanager-wrap .filemanager-content .content-center .image-list.active {
- outline: 1px solid #fd560f;
+ outline: 1px solid #0b68ff;
}
body.page-filemanager .filemanager-wrap .filemanager-content .content-center .image-list .text {
border-top: 1px solid #eee;
@@ -123,7 +137,7 @@ body.page-filemanager .filemanager-wrap .filemanager-content .content-center .im
white-space: nowrap;
}
body.page-filemanager .filemanager-wrap .filemanager-content .content-center .image-list .text .el-icon-check {
- color: #fd560f;
+ color: #0b68ff;
font-size: 18px;
font-weight: 600;
}
@@ -136,21 +150,25 @@ body.page-filemanager .filemanager-wrap .filemanager-content .content-footer {
align-items: center;
justify-content: space-between;
}
+body.page-filemanager .upload-wrap .el-dialog__body {
+ padding-top: 10px;
+}
body.page-filemanager .upload-wrap .upload-image {
height: 300px;
overflow-y: auto;
}
body.page-filemanager .upload-wrap .upload-image .list {
background-color: #f4f4f4;
- padding: 10px 10px;
+ padding: 4px 10px;
border-radius: 4px;
-}
-body.page-filemanager .upload-wrap .upload-image .list .name {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 8px;
}
+body.page-filemanager .upload-wrap .upload-image .list .name {
+ color: #111111;
+}
body.page-filemanager .upload-wrap .el-progress-bar__outer {
background-color: #ccc;
}
@@ -160,6 +178,7 @@ body.page-filemanager .photos-upload {
body.page-filemanager .photos-upload .el-upload {
width: 100%;
display: block;
+ margin-bottom: 10px;
}
body.page-filemanager .photos-upload .el-loading-spinner {
top: 35%;
diff --git a/resources/beike/admin/css/design/app.scss b/resources/beike/admin/css/design/app.scss
index 6a3aeff3..bde61aad 100644
--- a/resources/beike/admin/css/design/app.scss
+++ b/resources/beike/admin/css/design/app.scss
@@ -264,4 +264,315 @@ body.page-design {
}
}
}
+}
+
+
+
+.link-selector-wrap {
+ > .title {
+ margin-bottom: 6px;
+ position: relative;
+ font-size: 12px;
+ i {
+ margin-right: 4px;
+ color: #0072ff;
+ }
+ }
+
+ .selector-type {
+ position: relative;
+ outline: none;
+
+ .title {
+ border: 1px solid #eee;
+ padding: 6px 16px 6px 6px;
+ font-size: 12px;
+ cursor: pointer;
+ text-overflow: ellipsis;
+ overflow: hidden;
+ white-space: nowrap;
+ border-radius: 2px;
+ background-color: #fff;
+ &:hover {
+ border-color: #ddd;
+ }
+
+ &:before {
+ content: '\f107';
+ font-family: fontawesome;
+ position: absolute;
+ right: 10px;
+ top: 8px;
+ }
+ }
+
+ .selector-content {
+ position: absolute;
+ z-index: 999;
+ top: calc(100% + 2px);
+ border-radius: 2px;
+ left: 0;
+ width: 100%;
+ background-color: #fff;
+ box-shadow: 0 3px 10px rgba(0,0,0,0.25);
+ display: none;
+ &.active {
+ display: block;
+ }
+
+ > div {
+ padding: 6px 10px;
+ cursor: pointer;
+
+ &:hover {
+ background-color: #e0fcf6;
+ }
+ }
+ }
+ }
+}
+
+.link-dialog-box {
+ .el-dialog__header {
+ padding: 0;
+
+ .el-dialog__headerbtn {
+ top: 14px;
+ font-size: 20px;
+ i {
+ color: #fff;
+ }
+ }
+ }
+
+ .el-dialog__body {
+ padding-bottom: 10px;
+ }
+
+ .el-dialog__footer {
+ .el-button {
+ padding: 10px 20px;
+ min-width: 80px;
+ }
+ }
+
+ .link-dialog-header {
+ padding: 10px 20px;
+ background-color: #409eff;
+
+ .title {
+ font-weight: bold;
+ color: #fff;
+ font-size: 16px;
+ }
+
+
+ div.input-with-select {
+ margin-top: 16px;
+ display: flex;
+ align-items:center;
+
+ input {
+ height: 34px;
+ border: none;
+ border-radius: 4px 0 0 4px;
+ flex: 1;
+ padding: 0 10px;
+ outline: none;
+ }
+
+ button {
+ color: #333;
+ border: none;
+ background-color: #eee;
+ height: 34px;
+ line-height: 36px;
+ border-radius: 0 4px 4px 0;
+ padding: 0 14px;
+ overflow: hidden;
+ }
+ }
+ }
+
+ .link-dialog-content {
+ .product-search {
+ margin: -30px -20px 10px;
+ padding: 6px 20px;
+ text-align: left;
+ background-color: #f3f4f7;
+ display: flex;
+ justify-content: space-between;
+ align-items:center;
+
+ > a {
+ border: 1px solid #ccc;
+ background-color: #fff;
+ padding: 0 10px;
+ border-radius: 4px;
+ height: 26px;
+ line-height: 26px;
+ color: #333;
+ }
+
+ .link-top-new {
+
+ }
+
+ .el-input-group__append {
+ background-color: #0072ff;
+ color: #fff;
+ margin-top: -1px;
+ }
+ }
+
+ .product-info {
+ height: 340px;
+ // overflow-y: auto;
+
+ .product-info-title {
+ background-color: #dee1e9;
+ display: flex;
+ justify-content: space-between;
+ padding: 6px 20px 6px 38px;
+ text-align: left;
+ color: #30344f;
+ font-size: 14px;
+ }
+
+ .product-list {
+ padding-left: 0;
+ list-style: none;
+ margin-top: 4px;
+ margin-bottom: 0;
+ height: 314px;
+ overflow-y: auto;
+
+ &.static {
+ height: 340px;
+ }
+
+ li {
+ display: flex;
+ justify-content:space-between;
+ align-items: center;
+ padding: 5px 10px;
+ border-bottom: 1px solid #eee;
+ &:not(.no-status) {
+ cursor: pointer;
+ &:hover {
+ background-color: #e0fcf6;
+ }
+ }
+
+ .left {
+ flex: 1;
+ display: flex;
+ align-items: center;
+ margin-right: 20px;
+
+ .checkbox-plus {
+ // width: 16px;
+ margin-right: 12px;
+ flex: 0 0 14px;
+ height: 14px;
+ border: 1px solid #ddd;
+ border-radius: 50%;
+ display: flex;
+ position: relative;
+ justify-content: center;
+ align-items: center;
+
+ &:not(.no-status) {
+ cursor: pointer;
+ }
+
+ &:before {
+ content: "";
+ width: 10px;
+ height: 10px;
+ background-color: #0072ff;
+ border-radius: 50%;
+ display: none;
+ }
+
+ &.active {
+ border-color: #0072ff;
+ box-shadow: 0px 0px 4px #0072ff;
+
+ &:before {
+ display: block;
+ }
+ }
+
+ &.no-status {
+ background-color: #ddd;
+ }
+ }
+
+ > div {
+ // padding-left: 10px;
+ display: -webkit-box;
+ text-overflow: ellipsis;
+ -webkit-line-clamp: 2;
+ -webkit-box-orient: vertical;
+ word-break: break-all;
+ overflow: hidden;
+ }
+ }
+
+ .right {
+ border: 1px solid #ddd;
+ border-radius: 2px;
+ padding: 2px 6px;
+ color: #aaa;
+ font-size: 12px;
+ background-color: #fff;
+
+ &.ok {
+ color: #52c41a;
+ border-color: #b7eb8f;
+ }
+ }
+
+ img {
+ width: 46px;
+ margin-right: 10px;
+ }
+ }
+ }
+ }
+
+ .product-info-no {
+ text-align: center;
+ font-size: 14px;
+ > div {
+ display: block;
+ }
+ .icon {
+ margin: 50px 0 20px;
+ i {
+ font-size: 100px;
+ color: #8c8c8c;
+ }
+ }
+
+ .no-text {
+ font-size: 16px;
+ }
+
+ a {
+ color: #0072ff;
+ text-decoration: underline;
+ }
+ }
+ }
+
+ .el-dialog__footer {
+ background-color: #f6f6f6;
+ padding: 10px 20px;
+ }
+
+ .link-dialog-footer {
+
+ }
}
\ No newline at end of file
diff --git a/resources/beike/admin/css/filemanager/app.scss b/resources/beike/admin/css/filemanager/app.scss
index e69a7d02..4757a0d4 100644
--- a/resources/beike/admin/css/filemanager/app.scss
+++ b/resources/beike/admin/css/filemanager/app.scss
@@ -1,6 +1,6 @@
@charset "UTF-8";
-$primary: #fd560f;
+$primary: #0b68ff;
[v-cloak] {
display: none;
@@ -17,6 +17,23 @@ body.page-filemanager {
.filemanager-navbar {
width: 20%;
+ background-color: #293042;
+
+ .el-tree {
+ background-color: transparent;
+ .el-tree-node__content {
+ color: #eee;
+
+ &:hover {
+ background-color: #434d66;
+ }
+ }
+ }
+
+ .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content {
+ background-color: #434d66;
+ color: #fff;
+ }
.tree-wrap {
.el-tree-node__content {
@@ -99,7 +116,7 @@ body.page-filemanager {
align-items: flex-start;
flex-wrap: wrap;
// align-items: center; // flex-start | center
- background: #f9fafa;
+ background: #f7f9fc;
padding: 20px 10px;
// justify-content: space-between; // flex-end | center | space-between
// flex-wrap: wrap;
@@ -184,20 +201,25 @@ body.page-filemanager {
}
.upload-wrap {
+ .el-dialog__body {
+ padding-top: 10px;
+ }
+
.upload-image {
height: 300px;
overflow-y: auto;
.list {
background-color: #f4f4f4;
- padding: 10px 10px;
+ padding: 4px 10px;
border-radius: 4px;
+ display: flex;
+ align-items: center; // flex-start | center
+ justify-content: space-between; // flex-end | center | space-between
+ margin-bottom: 8px;
.name {
- display: flex;
- align-items: center; // flex-start | center
- justify-content: space-between; // flex-end | center | space-between
- margin-bottom: 8px;
+ color: #111111;
}
}
}
@@ -214,6 +236,7 @@ body.page-filemanager {
.el-upload {
width: 100%;
display: block;
+ margin-bottom: 10px;
}
.el-loading-spinner {
diff --git a/resources/beike/admin/views/pages/design/builder/component/link_selector.blade.php b/resources/beike/admin/views/pages/design/builder/component/link_selector.blade.php
index e69de29b..dbdcc608 100644
--- a/resources/beike/admin/views/pages/design/builder/component/link_selector.blade.php
+++ b/resources/beike/admin/views/pages/design/builder/component/link_selector.blade.php
@@ -0,0 +1,361 @@
+
+
+
+
+
+
+
+