xiebaomin 2 лет назад
Родитель
Сommit
8d6478cbfa
100 измененных файлов с 2823 добавлено и 361 удалено
  1. 1 1
      common/css/common.scss
  2. 47 9
      common/css/iconfont.scss
  3. 2 2
      components/cm-module/cart-components/cm-unit-popup.vue
  4. 8 8
      components/cm-module/cart-components/index.vue
  5. 1 1
      components/cm-module/homeIndex/banner.vue
  6. 3 3
      components/cm-module/homeIndex/certificate.vue
  7. 1 1
      components/cm-module/homeIndex/notice.vue
  8. 1 1
      components/cm-module/orderDetails/goodsList.vue
  9. 2 2
      components/cm-module/orderDetails/orderButton.vue
  10. 1 1
      components/cm-module/pageTemplate/templateH.vue
  11. 2 2
      components/cm-module/productDetails/cm-unit-popup.vue
  12. 1 1
      components/cm-module/scrollTop/scrollTop.vue
  13. 11 11
      components/thorui/tui-modal/tui-modal.vue
  14. 2 2
      components/uni-calendar/uni-calendar.vue
  15. 1 1
      components/uni-keyinput/uni-keyinput.vue
  16. 2 2
      components/uni-search/cat-search.vue
  17. 27 2
      pages.json
  18. 6 6
      pages/goods/components/cm-product-doc.vue
  19. 1 1
      pages/goods/components/cm-product-modal.vue
  20. 3 3
      pages/goods/components/cm-unit-popup.vue
  21. 3 3
      pages/goods/components/cm-unit-suppor-popup.vue
  22. 4 4
      pages/goods/good-hot.vue
  23. 11 11
      pages/goods/goods-classify.vue
  24. 4 4
      pages/goods/goods-doc-list.vue
  25. 3 3
      pages/goods/goods-supporting.vue
  26. 4 5
      pages/goods/product.vue
  27. 1 1
      pages/h5/activity/components/template-live/components/swiper-temp1.vue
  28. 1 1
      pages/h5/activity/components/template-live/components/swiper-temp2.vue
  29. 1 1
      pages/h5/activity/components/template-picture/templateA.vue
  30. 1 1
      pages/h5/activity/components/template-picture/templateB.vue
  31. 1 1
      pages/h5/activity/components/template-picture/templateE.vue
  32. 1 1
      pages/login/apply-supplier.vue
  33. 3 3
      pages/login/apply.vue
  34. 1 1
      pages/login/bindOperator.vue
  35. 1 1
      pages/login/binding.vue
  36. 2 2
      pages/login/information.vue
  37. 3 3
      pages/login/login.vue
  38. 4 4
      pages/login/logincode.vue
  39. 1 1
      pages/login/register-supplier.vue
  40. 3 3
      pages/login/register.vue
  41. 3 3
      pages/search/components/article-list.vue
  42. 1 1
      pages/search/components/encyclopedia-list.vue
  43. 6 6
      pages/search/components/product-filter.vue
  44. 3 3
      pages/search/components/product-full-list.vue
  45. 3 3
      pages/search/components/product-list.vue
  46. 1 1
      pages/search/components/search-header.vue
  47. 4 4
      pages/search/search-library.vue
  48. 17 17
      pages/search/search.vue
  49. 2 2
      pages/search/search_new.vue
  50. 6 6
      pages/second/form/form-presale.vue
  51. 6 6
      pages/second/form/form-seller.vue
  52. 6 6
      pages/second/form/form.vue
  53. 1 1
      pages/second/form/introduce.vue
  54. 2 2
      pages/second/product/product-details.vue
  55. 4 4
      pages/second/product/product-list.vue
  56. 4 4
      pages/seller/cart/cart.vue
  57. 1 1
      pages/seller/cart/components/cm-unit-cart-popup.vue
  58. 1 1
      pages/seller/cart/components/cm-unit-popup.vue
  59. 3 3
      pages/seller/cart/components/cm-unit-suppor-popup.vue
  60. 5 5
      pages/seller/cart/components/immediatelyList.vue
  61. 4 4
      pages/seller/cart/components/secondHand.vue
  62. 1 1
      pages/seller/cart/coupon-share.vue
  63. 1 1
      pages/seller/cart/second.vue
  64. 257 0
      pages/seller/club/club-detail.vue
  65. 52 38
      pages/seller/club/club-info.vue
  66. 1 1
      pages/seller/club/club-list.vue
  67. 451 0
      pages/seller/club/club-portrait.vue
  68. 288 0
      pages/seller/club/club-visit-detail.vue
  69. 216 0
      pages/seller/club/club-visit.vue
  70. 202 0
      pages/seller/club/components/echart-contact.vue
  71. 104 0
      pages/seller/club/components/echart-info.vue
  72. 206 0
      pages/seller/club/components/echart-keyword.vue
  73. 257 0
      pages/seller/club/components/echart-order.vue
  74. 190 0
      pages/seller/club/components/echart-service.vue
  75. 56 0
      pages/seller/club/components/mixins/chart.mixin.js
  76. 225 59
      pages/seller/club/list.vue
  77. 2 2
      pages/seller/components/cm-clubmodal.vue
  78. 1 1
      pages/seller/components/cm-clubpopup.vue
  79. 1 1
      pages/seller/components/cm-goods-popup.vue
  80. 1 1
      pages/seller/components/cm-refereepopup.vue
  81. 3 3
      pages/seller/components/cm-report-popup.vue
  82. 2 2
      pages/seller/components/cm-screen-drawer.vue
  83. 2 2
      pages/seller/components/cm-seller-popup.vue
  84. 2 2
      pages/seller/login/apply.vue
  85. 2 2
      pages/seller/login/information.vue
  86. 8 15
      pages/seller/login/login.vue
  87. 4 4
      pages/seller/login/register-member.vue
  88. 1 1
      pages/seller/login/register.vue
  89. 1 1
      pages/seller/order/components/sellerClubVisible.vue
  90. 2 2
      pages/seller/order/components/sellerDetaileButton.vue
  91. 1 1
      pages/seller/order/components/sellerFreight.vue
  92. 3 3
      pages/seller/order/components/sellerInvoice.vue
  93. 2 2
      pages/seller/order/components/sellerOrderButton.vue
  94. 1 1
      pages/seller/order/components/sellerRegulations.vue
  95. 3 3
      pages/seller/order/create-order.vue
  96. 1 1
      pages/seller/order/order-details.vue
  97. 4 4
      pages/seller/remarks/add-record.vue
  98. 4 4
      pages/seller/remarks/add.vue
  99. 3 3
      pages/seller/remarks/customer-list.vue
  100. 3 3
      pages/seller/remarks/details.vue

+ 1 - 1
common/css/common.scss

@@ -369,7 +369,7 @@ button::after{
 	display: inline-block;
 	padding:0 4rpx;
 	font-size: 18rpx !important;
-	border: 1px solid #E15616;
+	border: 1px solid #FF5B00;
 	float: left;
 	margin-right: 8rpx;
 }

+ 47 - 9
common/css/iconfont.scss

@@ -1,14 +1,8 @@
-// @font-face {
-//   font-family: "iconfont"; /* Project id 1519039 */
-//   src: url('/common/fonts/iconfont.woff2?t=1668502271099') format('woff2'),
-//        url('/common/fonts/iconfont.woff?t=1668502271099') format('woff'),
-//        url('/common/fonts/iconfont.ttf?t=1668502271099') format('truetype');
-// }
 @font-face {
   font-family: "iconfont"; /* Project id 1519039 */
-  src: url('//at.alicdn.com/t/c/font_1519039_ow9hswsn3r.woff2?t=1671427765583') format('woff2'),
-       url('//at.alicdn.com/t/c/font_1519039_ow9hswsn3r.woff?t=1671427765583') format('woff'),
-       url('//at.alicdn.com/t/c/font_1519039_ow9hswsn3r.ttf?t=1671427765583') format('truetype');
+  src: url('//at.alicdn.com/t/c/font_1519039_vj73i9j8tkm.woff2?t=1679652049039') format('woff2'),
+       url('//at.alicdn.com/t/c/font_1519039_vj73i9j8tkm.woff?t=1679652049039') format('woff'),
+       url('//at.alicdn.com/t/c/font_1519039_vj73i9j8tkm.ttf?t=1679652049039') format('truetype');
 }
 
 .iconfont {
@@ -19,6 +13,50 @@
   -moz-osx-font-smoothing: grayscale;
 }
 
+.icon-xiaoshou:before {
+  content: "\e74b";
+}
+
+.icon-fangwenjilu:before {
+  content: "\e752";
+}
+
+.icon-zixunjilu:before {
+  content: "\e753";
+}
+
+.icon-sousuoguanjianci:before {
+  content: "\e74e";
+}
+
+.icon-gongsi:before {
+  content: "\e74f";
+}
+
+.icon-dingdan:before {
+  content: "\e750";
+}
+
+.icon-rili:before {
+  content: "\e751";
+}
+
+.icon-xiugaiziliao:before {
+  content: "\e74d";
+}
+
+.icon-shangcheng:before {
+  content: "\e749";
+}
+
+.icon-tianxie:before {
+  content: "\e74a";
+}
+
+.icon-jigouhuaxiang:before {
+  content: "\e74c";
+}
+
 .icon-duanxin:before {
   content: "\e747";
 }

+ 2 - 2
components/cm-module/cart-components/cm-unit-popup.vue

@@ -330,7 +330,7 @@ export default {
 					background: #fff1eb;
 					color: $color-system;
 					.tips {
-						background: #e15616;
+						background: #FF5B00;
 					}
 				}
 				.tips {
@@ -430,7 +430,7 @@ export default {
 			box-sizing: border-box;
 			&.cancel {
 				background: #ffe6dc;
-				color: #e15616;
+				color: #FF5B00;
 			}
 			&.confirm {
 				background: $btn-confirm;

+ 8 - 8
components/cm-module/cart-components/index.vue

@@ -339,8 +339,8 @@
 						:currentTab="currentTab > 2 ? 0 : currentTab"
 						@change="couponChange"
 						:itemWidth="100 / navbar.length + '%'"
-						selectedColor="#e15616"
-						sliderBgColor="#e15616"
+						selectedColor="#FF5B00"
+						sliderBgColor="#FF5B00"
 					>
 					</coupon-tabs>
 				</view>
@@ -602,7 +602,7 @@ export default {
 					text: '去升级',
 					customStyle: {
 						color: '#fff',
-						bgColor: 'linear-gradient(90deg, #F28F31 0%, #E15616 100%)'
+						bgColor: 'linear-gradient(90deg, #F28F31 0%, #FF5B00 100%)'
 					},
 					plain: false
 				}
@@ -1582,8 +1582,8 @@ page {
 		line-height: 50rpx;
 		border-radius: 30rpx;
 		background: #ffffff;
-		border: 1px solid #e15616;
-		color: #e15616;
+		border: 1px solid #FF5B00;
+		color: #FF5B00;
 		float: right;
 		text-align: center;
 		&.none {
@@ -1661,7 +1661,7 @@ page {
 			float: right;
 			line-height: 80rpx;
 			font-size: $font-size-30;
-			color: #e15616;
+			color: #FF5B00;
 		}
 		.floor-item-act {
 			width: 120rpx;
@@ -1824,8 +1824,8 @@ page {
 				line-height: 40rpx;
 				font-size: 24rpx;
 				box-sizing: border-box;
-				border: 1px solid #e15616;
-				color: #e15616;
+				border: 1px solid #FF5B00;
+				color: #FF5B00;
 				float: left;
 				border-radius: 20rpx;
 				margin-left: 16rpx;

+ 1 - 1
components/cm-module/homeIndex/banner.vue

@@ -71,7 +71,7 @@
 		width: 100%;
 		height: 200rpx;
 		padding-top:100rpx;
-		background:#F28F31;
+		background:#FF7F00;
 		position: relative;
 		background-size: cover;
 		margin-bottom: 170rpx;

+ 3 - 3
components/cm-module/homeIndex/certificate.vue

@@ -76,9 +76,9 @@
 			background-color: #f7f7f7;
 			padding: 0 20rpx;
 			.image {
-				width: 54rpx;
-				height: 46rpx;
-				margin-right: 16rpx;
+				width: 70rpx;
+				height: 68rpx;
+				margin-right: 6rpx;
 			}
 			.text {
 				font-size: 20rpx;

+ 1 - 1
components/cm-module/homeIndex/notice.vue

@@ -79,7 +79,7 @@
 		.tui-roll-label{
 			font-weight: bold;
 			font-size: $font-size-26;
-			color: #E15616;
+			color: #FF5B00;
 		}
 		.tui-roll-more{
 			font-size: $font-size-24;

+ 1 - 1
components/cm-module/orderDetails/goodsList.vue

@@ -253,7 +253,7 @@ export default {
                     display: inline-block;
                     padding:0 6rpx;
                     font-size: $font-size-20;
-                    border: 1px solid #E15616;
+                    border: 1px solid #FF5B00;
                     float: left;
                 }
             }

+ 2 - 2
components/cm-module/orderDetails/orderButton.vue

@@ -207,7 +207,7 @@
 					width: 160rpx;
 					height: 34rpx;
 					padding: 10rpx 10rpx;
-					background:#E15616;
+					background:#FF5B00;
 					border-radius: 8rpx;
 					position: absolute;
 					color: #FFFFFF;
@@ -220,7 +220,7 @@
 						content: "";
 						width: 25rpx;
 						height: 25rpx;
-						background:#E15616;
+						background:#FF5B00;
 						position: absolute;
 						bottom: -8rpx;
 						left: 30rpx;

+ 1 - 1
components/cm-module/pageTemplate/templateH.vue

@@ -354,7 +354,7 @@ export default {
 			width: 32rpx;
 			height: 8rpx;
 			border-radius: 4rpx;
-			background-color: #e15616;
+			background-color: #FF5B00;
 			transition: all 0.4s;
 		}
 	}

+ 2 - 2
components/cm-module/productDetails/cm-unit-popup.vue

@@ -407,7 +407,7 @@ export default {
 					background: #fff1eb;
 					color: $color-system;
 					.tips {
-						background: #e15616;
+						background: #FF5B00;
 					}
 				}
 				.tips {
@@ -513,7 +513,7 @@ export default {
 			box-sizing: border-box;
 			&.cancel {
 				background: #ffe6dc;
-				color: #e15616;
+				color: #FF5B00;
 				&.disabled {
 					background-color: #e1e1e1;
 					color: #ffffff;

+ 1 - 1
components/cm-module/scrollTop/scrollTop.vue

@@ -80,7 +80,7 @@
 				}
 			}
 			&.msg{
-				background-image: linear-gradient(0deg, #f28e31 0%, #e15616 100%);
+				background-image: linear-gradient(0deg, #f28e31 0%, #FF5B00 100%);
 			}
 			&.top{
 				background-color: rgba(0,0,0,0.4);

+ 11 - 11
components/thorui/tui-modal/tui-modal.vue

@@ -275,24 +275,24 @@ export default {
     border: 1px solid #5677fc;
 }
 
-.tui-danger {
-    background: #e15616;
-    color: #fff;
-}
+	.tui-danger {
+		background: #FF5B00;
+		color: #fff;
+	}
 
 .tui-danger-hover {
     background: #d53912;
     color: #e5e5e5;
 }
 
-.tui-danger-outline {
-    color: #e15616;
-    background: transparent;
-}
+	.tui-danger-outline {
+		color: #FF5B00;
+		background: transparent;
+	}
 
-.tui-danger-outline::after {
-    border: 1px solid #e15616;
-}
+	.tui-danger-outline::after {
+		border: 1px solid #FF5B00;
+	}
 
 .tui-red {
     background: #e41f19;

+ 2 - 2
components/uni-calendar/uni-calendar.vue

@@ -332,7 +332,7 @@
 		top:0;
 		.iconfont{
 			font-size: 36rpx;
-			color: #E15616;
+			color: #FF5B00;
 		} 
 	}
 	.uni-calendar__header-btn-box.ri{
@@ -341,7 +341,7 @@
 		top:0;
 		.iconfont{
 			font-size: 36rpx;
-			color: #E15616;
+			color: #FF5B00;
 		}
 	}
 	.uni-calendar__header-btn {

+ 1 - 1
components/uni-keyinput/uni-keyinput.vue

@@ -167,7 +167,7 @@ export default {
 	line-height: 76rpx;
 	text-align: center;
 	font-weight: 500;
-	color: #E15616 !important;
+	color: #FF5B00 !important;
 	border-radius: 8rpx;
 }
 .vcode-input-item.on::after {

+ 2 - 2
components/uni-search/cat-search.vue

@@ -225,9 +225,9 @@ export default {
 			margin-left: -28rpx;
 		}
 		&.active {
-			color: #e15616;
+			color: #FF5B00;
 			&::before {
-				background-color: #e15616;
+				background-color: #FF5B00;
 			}
 		}
 	}

+ 27 - 2
pages.json

@@ -668,6 +668,25 @@
 						"navigationBarTitleText": "我的机构"
 					}
 				},
+				{
+					"path": "club/club-portrait",
+					"style": {
+						"navigationBarTitleText": "机构画像"
+					}
+				},
+				{
+					"path": "club/club-visit",
+					"style": {
+						"navigationBarTitleText": "访问记录",
+						"navigationStyle": "custom"
+					}
+				},
+				{
+					"path": "club/club-visit-detail",
+					"style": { 
+						"navigationBarTitleText": "访问详情"
+					}
+				},
 				{
 					"path": "club/allClub-list",
 					"style": {
@@ -683,7 +702,13 @@
 				{
 					"path": "club/club-info",
 					"style": {
-						"navigationBarTitleText": "机构信息"
+						"navigationBarTitleText": "商城访问记录"
+					}
+				},
+				{
+					"path": "club/club-detail",
+					"style": {
+						"navigationBarTitleText": "资料详情"
 					}
 				},
 				{
@@ -1159,7 +1184,7 @@
 	"tabBar": {
 		"height": "80",
 		"color": "#999999",
-		"selectedColor": "#E15616",
+		"selectedColor": "#FF5B00",
 		"borderStyle": "black",
 		"backgroundColor": "#ffffff",
 		"list": [{

+ 6 - 6
pages/goods/components/cm-product-doc.vue

@@ -149,7 +149,7 @@ export default {
                     text: '确认',
                     customStyle: {
                         color: '#fff',
-                        bgColor: 'linear-gradient(90deg, #F28F31 0%, #E15616 100%)'
+                        bgColor: 'linear-gradient(90deg, #F28F31 0%, #FF5B00 100%)'
                     },
                     plain: false
                 }
@@ -396,7 +396,7 @@ export default {
             //     return uni.showModal({
             //         content: `${suffix}类型文件暂不支持预览`,
             //         cancelColor: '#666',
-            //         confirmColor: '#E15616'
+            //         confirmColor: '#FF5B00'
             //     })
             // }
         },
@@ -431,7 +431,7 @@ export default {
                                 uni.showModal({
                                     content: '不支持的文件预览',
                                     cancelColor: '#666',
-                                    confirmColor: '#E15616'
+                                    confirmColor: '#FF5B00'
                                 })
                             }
                             uni.hideLoading()
@@ -481,12 +481,12 @@ export default {
     }
     text {
         font-size: 26rpx;
-        color: #e15616;
+        color: #FF5B00;
     }
     .cm-btn {
         width: 136rpx;
         height: 48rpx;
-        background: #e15616;
+        background: #FF5B00;
         border-radius: 28px;
         font-size: 26rpx;
         text-align: center;
@@ -558,7 +558,7 @@ export default {
                 .cm-preview {
                     font-size: 26rpx;
                     font-weight: 400;
-                    color: #e15616;
+                    color: #FF5B00;
                 }
                 .cm-time {
                     padding: 0;

+ 1 - 1
pages/goods/components/cm-product-modal.vue

@@ -74,7 +74,7 @@ export default {
 			return map[code]
 		},
 		setModalButton(flag = '', identity = '', clubType = '', hasLogin) {
-			const customStyle = { color: '#fff', bgColor: 'linear-gradient(90deg, #F28F31 0%, #E15616 100%)' }
+			const customStyle = { color: '#fff', bgColor: 'linear-gradient(90deg, #F28F31 0%, #FF5B00 100%)' }
 			const btnMap = {
 				'22': [
 					{ text: '关闭', type: 'gray', plain: true },

+ 3 - 3
pages/goods/components/cm-unit-popup.vue

@@ -344,7 +344,7 @@ export default {
 					background: #fff1eb;
 					color: $color-system;
 					.tips {
-						background: #e15616;
+						background: #FF5B00;
 					}
 				}
 				.tips {
@@ -436,7 +436,7 @@ export default {
 		text-align: center;
 		font-size: 24rpx;
 		background: #fffaf8;
-		color: #e15616;
+		color: #FF5B00;
 	}
 }
 .tui-flex-1 {
@@ -462,7 +462,7 @@ export default {
 		box-sizing: border-box;
 		&.cancel {
 			background: #ffe6dc;
-			color: #e15616;
+			color: #FF5B00;
 			&.disabled {
 				background-color: #e1e1e1;
 				color: #ffffff;

+ 3 - 3
pages/goods/components/cm-unit-suppor-popup.vue

@@ -206,7 +206,7 @@ export default {
 					background: #fff1eb;
 					color: $color-system;
 					.tips {
-						background: #e15616;
+						background: #FF5B00;
 					}
 				}
 				.tips {
@@ -234,7 +234,7 @@ export default {
 		text-align: center;
 		font-size: 24rpx;
 		background: #fffaf8;
-		color: #e15616;
+		color: #FF5B00;
 	}
 }
 .tui-modal-flex {
@@ -253,7 +253,7 @@ export default {
 		box-sizing: border-box;
 		&.cancel {
 			background: #ffe6dc;
-			color: #e15616;
+			color: #FF5B00;
 		}
 		&.confirm {
 			background: $btn-confirm;

+ 4 - 4
pages/goods/good-hot.vue

@@ -517,7 +517,7 @@ page {
 				position: fixed;
 				top: 0;
 				height: 80rpx;
-				background: linear-gradient(90deg, #e15616 0%, #f28f31 100%);
+				background: linear-gradient(90deg, #FF5B00 0%, #f28f31 100%);
 				z-index: 9999;
 				
 			}
@@ -649,7 +649,7 @@ page {
 			width: 40rpx;
 			height: 8rpx;
 			border-radius: 4rpx;
-			background-color: #e15616;
+			background-color: #FF5B00;
 			transition: all 0.4s;
 		}
 	}
@@ -744,7 +744,7 @@ page {
 				}
 				&.active {
 					background-color: #ffe6dc;
-					color: #e15616;
+					color: #FF5B00;
 				}
 			}
 		}
@@ -806,7 +806,7 @@ page {
 				}
 				&.active {
 					background-color: #ffe6dc;
-					color: #e15616;
+					color: #FF5B00;
 				}
 			}
 		}

+ 11 - 11
pages/goods/goods-classify.vue

@@ -22,7 +22,7 @@
 						<tui-icon
 							:name="isSearchSales ? 'turningdown' : 'turningup'"
 							:size="18"
-							:color="tabIndex == 1 ? '#e15616' : '#999'"
+							:color="tabIndex == 1 ? '#FF5B00' : '#999'"
 							tui-icon-class="tui-ml"
 						></tui-icon>
 					</template>
@@ -38,7 +38,7 @@
 						<tui-icon
 							:name="isSearchMood ? 'turningdown' : 'turningup'"
 							:size="18"
-							:color="tabIndex == 2 ? '#e15616' : '#999'"
+							:color="tabIndex == 2 ? '#FF5B00' : '#999'"
 							tui-icon-class="tui-ml"
 						></tui-icon>
 					</template>
@@ -54,7 +54,7 @@
 						<tui-icon
 							:name="isSearchPrice ? 'turningdown' : 'turningup'"
 							:size="18"
-							:color="tabIndex == 3 ? '#e15616' : '#999'"
+							:color="tabIndex == 3 ? '#FF5B00' : '#999'"
 							tui-icon-class="tui-ml"
 						></tui-icon>
 					</template>
@@ -1032,7 +1032,7 @@ page {
 	margin-left: 8rpx;
 }
 .tui-topitem-active {
-	color: #e15616;
+	color: #FF5B00;
 }
 
 .tui-screen-bottom {
@@ -1073,7 +1073,7 @@ page {
 
 .tui-btmItem-active {
 	background: #fcedea !important;
-	color: #e15616;
+	color: #FF5B00;
 	font-weight: bold;
 	position: relative;
 }
@@ -1081,7 +1081,7 @@ page {
 .tui-btmItem-active::after {
 	content: '';
 	position: absolute;
-	border: 1rpx solid #e15616;
+	border: 1rpx solid #FF5B00;
 	width: 100%;
 	height: 100%;
 	border-radius: 40rpx;
@@ -1105,7 +1105,7 @@ page {
 	top: 58rpx;
 }
 .tui-active {
-	color: #e15616;
+	color: #FF5B00;
 }
 .tui-icon-ml .tui-icon-class {
 	margin-left: 6rpx;
@@ -1149,7 +1149,7 @@ page {
 		background-color: #f7f7f7;
 		.drawer-title-h1 {
 			font-size: $font-size-26;
-			color: #e15616;
+			color: #FF5B00;
 			font-weight: bold;
 			text-align: left;
 			float: left;
@@ -1159,7 +1159,7 @@ page {
 			float: right;
 			color: #333333;
 			.text {
-				color: #e15616;
+				color: #FF5B00;
 			}
 		}
 	}
@@ -1242,7 +1242,7 @@ page {
 				-webkit-box-orient: vertical;
 				&.checked {
 					background-color: #fef6f3;
-					color: #e15616;
+					color: #FF5B00;
 				}
 				&:nth-child(3n) {
 					margin-right: 0;
@@ -1283,7 +1283,7 @@ page {
 						color: #b2b2b2;
 					}
 					&.icon-yixuanze {
-						color: #e15616;
+						color: #FF5B00;
 					}
 				}
 			}

+ 4 - 4
pages/goods/goods-doc-list.vue

@@ -22,8 +22,8 @@
                     <tui-tabs
                         :tabs="tabs"
                         :currentTab="currentTab"
-                        sliderBgColor="#E15616"
-                        selectedColor="#E15616"
+                        sliderBgColor="#FF5B00"
+                        selectedColor="#FF5B00"
                         itemWidth="50%"
                         @change="tabChange"
                     ></tui-tabs>
@@ -126,7 +126,7 @@ export default {
                 //正则表达式
                 const reg = new RegExp(this.listQuery.keyword, 'g')
                 item.productName = item.productName.replace(reg, $1 => {
-                    return `<span style="color: #E15616;">${$1}</span>`
+                    return `<span style="color: #FF5B00;">${$1}</span>`
                 })
             })
         },
@@ -230,7 +230,7 @@ page {
             -webkit-line-clamp: 2; /*文本占的行数,如果要设置2行加...则设置为2*/
             -webkit-box-orient: vertical;
             text {
-                color: #e15616;
+                color: #FF5B00;
             }
         }
         .params {

+ 3 - 3
pages/goods/goods-supporting.vue

@@ -18,7 +18,7 @@
 								<view
 									class="checkbox iconfont"
 									:class="[pros.isChecked ? 'icon-yixuanze' : 'icon-weixuanze']"
-									:style="{ color: disabledChecked(pros) ? '#E1E1E1' : '#E15616' }"
+									:style="{ color: disabledChecked(pros) ? '#E1E1E1' : '#FF5B00' }"
 									@click="checkedSoperv(pros)"
 								>
 								</view>
@@ -1153,7 +1153,7 @@ page {
 		margin-left: 32rpx;
 		&.add {
 			background: #ffe6dc;
-			color: #e15616;
+			color: #FF5B00;
 		}
 		&.buy {
 			background: $btn-confirm;
@@ -1180,7 +1180,7 @@ page {
 			}
 			&.add {
 				background: #ffe6dc;
-				color: #e15616;
+				color: #FF5B00;
 			}
 		}
 	}

+ 4 - 5
pages/goods/product.vue

@@ -357,8 +357,8 @@
 								:currentTab="currentTab > 2 ? 0 : currentTab"
 								@change="couponChange"
 								:itemWidth="100 / navbar.length + '%'"
-								selectedColor="#e15616"
-								sliderBgColor="#e15616"
+								selectedColor="#FF5B00"
+								sliderBgColor="#FF5B00"
 							>
 							</coupon-tabs>
 						</view>
@@ -734,7 +734,7 @@ export default {
 					text: '去升级',
 					customStyle: {
 						color: '#fff',
-						bgColor: 'linear-gradient(90deg, #F28F31 0%, #E15616 100%)'
+						bgColor: 'linear-gradient(90deg, #F28F31 0%, #FF5B00 100%)'
 					},
 					plain: false
 				}
@@ -1458,7 +1458,6 @@ export default {
 				// - topBar.height
 			})
 			this.sectionPropsArr = sectionPropsArr
-
 			console.log('更新tab影响区域')
 		},
 		//当滑动时也能同步激活tab
@@ -2423,7 +2422,7 @@ page {
 			color: #ffffff;
 		}
 		.btn-bay {
-			background: linear-gradient(to right, #f28f31 0%, #e15616 100%);
+			background: linear-gradient(to right, #f28f31 0%, #FF5B00 100%);
 			border-radius: 0 42rpx 42rpx 0;
 		}
 		.btn-bay.disabled {

+ 1 - 1
pages/h5/activity/components/template-live/components/swiper-temp1.vue

@@ -194,7 +194,7 @@ export default {
             width: 32rpx;
             height: 8rpx;
             border-radius: 4rpx;
-            background-color: #e15616;
+            background-color: #FF5B00;
             transition: all 0.4s;
         }
     }

+ 1 - 1
pages/h5/activity/components/template-live/components/swiper-temp2.vue

@@ -189,7 +189,7 @@ export default {
             width: 32rpx;
             height: 8rpx;
             border-radius: 4rpx;
-            background-color: #e15616;
+            background-color: #FF5B00;
             transition: all 0.4s;
         }
     }

+ 1 - 1
pages/h5/activity/components/template-picture/templateA.vue

@@ -164,7 +164,7 @@ export default {
 			width: 32rpx;
 			height: 8rpx;
 			border-radius: 4rpx;
-			background-color: #e15616;
+			background-color: #FF5B00;
 			transition: all 0.4s;
 		}
 	}

+ 1 - 1
pages/h5/activity/components/template-picture/templateB.vue

@@ -178,7 +178,7 @@ export default {
 			width: 32rpx;
 			height: 8rpx;
 			border-radius: 4rpx;
-			background-color: #e15616;
+			background-color: #FF5B00;
 			transition: all 0.4s;
 		}
 	}

+ 1 - 1
pages/h5/activity/components/template-picture/templateE.vue

@@ -177,7 +177,7 @@ export default {
             width: 32rpx;
             height: 8rpx;
             border-radius: 4rpx;
-            background-color: #e15616;
+            background-color: #FF5B00;
             transition: all 0.4s;
         }
     }

+ 1 - 1
pages/login/apply-supplier.vue

@@ -101,7 +101,7 @@
 				<view class="register-from radio">
 					<radio-group @change="radioChange">
 						<label class="row-input" v-for="(item, index) in supplierList" :key="item.value">
-							<radio class="row-radio" :value="item.value" :checked="item.value === shopInfo.secondShopType" color="#E15616"/>
+							<radio class="row-radio" :value="item.value" :checked="item.value === shopInfo.secondShopType" color="#FF5B00"/>
 							<view class="row-text">{{item.name}}</view>
 						</label>
 					</radio-group>

+ 3 - 3
pages/login/apply.vue

@@ -1306,8 +1306,8 @@ checkbox .wx-checkbox-input {
 }
 /* 选中后的 背景样式 */
 checkbox .wx-checkbox-input.wx-checkbox-input-checked {
-	background: #e15616;
-	border: 2rpx solid #e15616;
+	background: #FF5B00;
+	border: 2rpx solid #FF5B00;
 }
 checkbox .wx-checkbox-input.wx-checkbox-input-checked::before {
 	border-radius: 50%;
@@ -1354,7 +1354,7 @@ checkbox .wx-checkbox-input.wx-checkbox-input-checked::before {
 			color: #666666;
 			text-align: justify;
 			.red {
-				color: #e15616;
+				color: #FF5B00;
 			}
 		}
 		.tui-alert-btn {

+ 1 - 1
pages/login/bindOperator.vue

@@ -280,7 +280,7 @@
 			height: auto;
 			padding: 0 24rpx;
 			&.title{
-				color: #e15616;
+				color: #FF5B00;
 				font-size: 24rpx;
 				text-align: center;
 				margin-bottom: 20rpx;

+ 1 - 1
pages/login/binding.vue

@@ -574,7 +574,7 @@
 						background-color: #ffe6dc;
 						line-height: 64rpx;
 						text-align: center;
-						color: #e15616;
+						color: #FF5B00;
 						font-size: $font-size-28;
 						float: right;
 					}

+ 2 - 2
pages/login/information.vue

@@ -1370,8 +1370,8 @@ checkbox .wx-checkbox-input {
 }
 /* 选中后的 背景样式 */
 checkbox .wx-checkbox-input.wx-checkbox-input-checked {
-	background: #e15616;
-	border: 2rpx solid #e15616;
+	background: #FF5B00;
+	border: 2rpx solid #FF5B00;
 }
 checkbox .wx-checkbox-input.wx-checkbox-input-checked::before {
 	border-radius: 50%;

+ 3 - 3
pages/login/login.vue

@@ -257,12 +257,12 @@ export default {
 		display: flex;
 		flex-direction: column;
 		align-items: center;
-		height: 189rpx;
+		height: 284rpx;
 		padding: 60rpx 0 40rpx 0;
 		margin-bottom: 70rpx;
 		.logo {
-			width: 467rpx;
-			height: 189rpx;
+			width: 611rpx;
+			height: 284rpx;
 			display: block;
 		}
 	}

+ 4 - 4
pages/login/logincode.vue

@@ -172,12 +172,12 @@
 			display: flex;
 			flex-direction: column;
 			align-items: center;
-			height: 189rpx;
+			height: 284rpx;
 			padding:60rpx 0 40rpx 0;
 			margin-bottom: 70rpx;
 			.logo{
-				width:467rpx;
-				height: 189rpx;
+				width:611rpx;
+				height: 284rpx;
 				display: block;
 			}
 		}
@@ -194,7 +194,7 @@
 			padding: 0 75rpx;
 			font-size: $font-size-28;
 			line-height: 40rpx;
-			color: #E15616;
+			color: #FF5B00;
 			margin-bottom: 48rpx;
 			text-align: right;
 		}

+ 1 - 1
pages/login/register-supplier.vue

@@ -227,7 +227,7 @@
 				<view class="register-from radio">
 					<radio-group @change="radioChange">
 						<label class="row-input" v-for="(item, index) in supplierList" :key="item.value">
-							<radio class="row-radio" :value="item.value" :checked="index === current" color="#E15616" />
+							<radio class="row-radio" :value="item.value" :checked="index === current" color="#FF5B00" />
 							<view class="row-text">{{ item.name }}</view>
 						</label>
 					</radio-group>

+ 3 - 3
pages/login/register.vue

@@ -375,11 +375,11 @@ export default {
 			display: flex;
 			flex-direction: column;
 			align-items: center;
-			height: 189rpx;
+			height: 284rpx;
 			padding: 60rpx 0 40rpx 0;
 			.logo {
-				width: 467rpx;
-				height: 189rpx;
+				width: 611rpx;
+				height: 284rpx;
 				display: block;
 			}
 		}

+ 3 - 3
pages/search/components/article-list.vue

@@ -162,11 +162,11 @@ export default {
                     }
 
                     &.active {
-                        color: #e15616;
+                        color: #FF5B00;
 
                         &::before {
-                            background: #e15616;
-                            border-color: #e15616;
+                            background: #FF5B00;
+                            border-color: #FF5B00;
                         }
                     }
 

+ 1 - 1
pages/search/components/encyclopedia-list.vue

@@ -123,7 +123,7 @@ export default {
                 .tag {
                     height: 40rpx;
                     padding: 0 8rpx;
-                    color: #e15616;
+                    color: #FF5B00;
                     font-size: 22rpx;
                     background: #fef6f3;
                     margin-right: 8rpx;

+ 6 - 6
pages/search/components/product-filter.vue

@@ -135,13 +135,13 @@ export default {
             background: #f7f7f7;
             .name {
                 font-size: 26rpx;
-                color: #e15616;
+                color: #FF5B00;
             }
             .number {
                 font-size: 24rpx;
                 color: #333333;
                 .enhance {
-                    color: #e15616;
+                    color: #FF5B00;
                 }
             }
         }
@@ -171,7 +171,7 @@ export default {
                     }
 
                     &.active {
-                        color: #e15616;
+                        color: #FF5B00;
                         background: #fef6f3;
                     }
                 }
@@ -216,7 +216,7 @@ export default {
 
             .icon-yixuanze {
                 font-size: 28rpx;
-                color: #e15616;
+                color: #FF5B00;
             }
         }
     }
@@ -240,12 +240,12 @@ export default {
 
             &.btn-reset {
                 background: #ffe6dc;
-                color: #e15616;
+                color: #FF5B00;
                 margin: 0 24rpx 0 112rpx;
             }
 
             &.btn-confirm {
-                background: linear-gradient(135deg, #f28f31 0%, #e15616 100%);
+                background: linear-gradient(135deg, #f28f31 0%, #FF5B00 100%);
                 color: #ffffff;
             }
         }

+ 3 - 3
pages/search/components/product-full-list.vue

@@ -154,7 +154,7 @@ export default {
             &.active .sort.desc::after,
             &.active .sort.asc::before,
             &.active .icon-shaixuan {
-                color: #e15616;
+                color: #FF5B00;
             }
 
             .icon-shaixuan {
@@ -226,7 +226,7 @@ export default {
                     display: flex;
                     align-items: flex-end;
                     .real-price {
-                        color: #e15616;
+                        color: #FF5B00;
                         font-size: 24rpx;
                     }
                     .old-price {
@@ -256,7 +256,7 @@ export default {
                         &.other {
                             border: 1rpx solid rgba(225, 86, 22, 0.2);
                             line-height: 30rpx;
-                            color: #e15616;
+                            color: #FF5B00;
                         }
                         &.svip {
                             line-height: 32rpx;

+ 3 - 3
pages/search/components/product-list.vue

@@ -154,7 +154,7 @@ export default {
             &.active .sort.desc::after,
             &.active .sort.asc::before,
             &.active .icon-shaixuan {
-                color: #e15616;
+                color: #FF5B00;
             }
 
             .icon-shaixuan {
@@ -226,7 +226,7 @@ export default {
                     display: flex;
                     align-items: flex-end;
                     .real-price {
-                        color: #e15616;
+                        color: #FF5B00;
                         font-size: 24rpx;
                     }
                     .old-price {
@@ -256,7 +256,7 @@ export default {
                         &.other {
                             border: 1rpx solid rgba(225, 86, 22, 0.2);
                             line-height: 30rpx;
-                            color: #e15616;
+                            color: #FF5B00;
                         }
                         &.svip {
                             line-height: 32rpx;

+ 1 - 1
pages/search/components/search-header.vue

@@ -158,7 +158,7 @@ export default {
     }
     .search-submit {
         font-size: 30rpx;
-        color: #e15616;
+        color: #FF5B00;
         flex-shrink: 0;
     }
 }

+ 4 - 4
pages/search/search-library.vue

@@ -26,8 +26,8 @@
                     :bold="true"
                     :unlined="true"
                     :height="60"
-                    sliderBgColor="#E15616"
-                    selectedColor="#E15616"
+                    sliderBgColor="#FF5B00"
+                    selectedColor="#FF5B00"
                     @change="onTabChange"
                 ></tui-tabs>
             </view>
@@ -473,7 +473,7 @@ export default {
                     this.libraryWordList = []
                 }
                 this.libraryWordList = res.data.map(item => {
-                    item.text = item.keyword.replace(keyword, `<span style="color:#E15616;">${keyword}</span>`)
+                    item.text = item.keyword.replace(keyword, `<span style="color:#FF5B00;">${keyword}</span>`)
                     return item
                 })
                 if (this.libraryWordList.length <= 0) return
@@ -632,7 +632,7 @@ export default {
                     color: #333;
 
                     text {
-                        color: #e15616;
+                        color: #FF5B00;
                     }
                 }
             }

+ 17 - 17
pages/search/search.vue

@@ -51,7 +51,7 @@
                             <tui-icon
                                 :name="isSearchSales ? 'turningdown' : 'turningup'"
                                 :size="18"
-                                :color="tabIndex == 1 ? '#e15616' : '#999'"
+                                :color="tabIndex == 1 ? '#FF5B00' : '#999'"
                                 tui-icon-class="tui-ml"
                             ></tui-icon>
                         </template>
@@ -68,7 +68,7 @@
                             <tui-icon
                                 :name="isSearchMood ? 'turningdown' : 'turningup'"
                                 :size="18"
-                                :color="tabIndex == 2 ? '#e15616' : '#999'"
+                                :color="tabIndex == 2 ? '#FF5B00' : '#999'"
                                 tui-icon-class="tui-ml"
                             ></tui-icon>
                         </template>
@@ -85,7 +85,7 @@
                             <tui-icon
                                 :name="isSearchPrice ? 'turningdown' : 'turningup'"
                                 :size="18"
-                                :color="tabIndex == 3 ? '#e15616' : '#999'"
+                                :color="tabIndex == 3 ? '#FF5B00' : '#999'"
                                 tui-icon-class="tui-ml"
                             ></tui-icon>
                         </template>
@@ -607,7 +607,7 @@ export default {
                     this.libraryWordList = []
                 }
                 this.libraryWordList = res.data.map(item => {
-                    item.text = item.keyword.replace(keyword, `<span style="color:#E15616;">${keyword}</span>`)
+                    item.text = item.keyword.replace(keyword, `<span style="color:#FF5B00;">${keyword}</span>`)
                     return item
                 })
                 if (this.libraryWordList.length <= 0) return
@@ -1198,7 +1198,7 @@ page {
             line-height: 70rpx;
             float: right;
             text-align: center;
-            color: #e15616;
+            color: #FF5B00;
             font-size: 30rpx;
         }
     }
@@ -1248,7 +1248,7 @@ page {
     margin-left: 8rpx;
 }
 .tui-topitem-active {
-    color: #e15616;
+    color: #FF5B00;
 }
 
 .tui-screen-bottom {
@@ -1289,7 +1289,7 @@ page {
 
 .tui-btmItem-active {
     background: #fcedea !important;
-    color: #e15616;
+    color: #FF5B00;
     font-weight: bold;
     position: relative;
 }
@@ -1297,7 +1297,7 @@ page {
 .tui-btmItem-active::after {
     content: '';
     position: absolute;
-    border: 1rpx solid #e15616;
+    border: 1rpx solid #FF5B00;
     width: 100%;
     height: 100%;
     border-radius: 40rpx;
@@ -1321,7 +1321,7 @@ page {
     top: 58rpx;
 }
 .tui-active {
-    color: #e15616;
+    color: #FF5B00;
 }
 .tui-icon-ml .tui-icon-class {
     margin-left: 6rpx;
@@ -1407,12 +1407,12 @@ page {
                 background-color: #f3f3f3;
                 .iconfont {
                     font-size: $font-size-30;
-                    color: #e15616;
+                    color: #FF5B00;
                     margin-left: 12rpx;
                 }
                 &.list-active {
                     background-color: #fef6f3;
-                    color: #e15616;
+                    color: #FF5B00;
                 }
             }
         }
@@ -1676,7 +1676,7 @@ page {
     z-index: 99;
     .drawer-title-h1 {
         font-size: $font-size-26;
-        color: #e15616;
+        color: #FF5B00;
         font-weight: bold;
         text-align: left;
         float: left;
@@ -1686,7 +1686,7 @@ page {
         float: right;
         color: #333333;
         .text {
-            color: #e15616;
+            color: #FF5B00;
         }
     }
 }
@@ -1729,7 +1729,7 @@ page {
                 -webkit-box-orient: vertical;
                 &.checked {
                     background-color: #fef6f3;
-                    color: #e15616;
+                    color: #FF5B00;
                 }
                 &:nth-child(3n) {
                     margin-right: 0;
@@ -1770,7 +1770,7 @@ page {
                         color: #b2b2b2;
                     }
                     &.icon-yixuanze {
-                        color: #e15616;
+                        color: #FF5B00;
                     }
                 }
             }
@@ -1808,7 +1808,7 @@ page {
             }
             &.clear {
                 background: #ffe6dc;
-                color: #e15616;
+                color: #FF5B00;
             }
         }
     }
@@ -1870,7 +1870,7 @@ page {
                 color: #333;
 
                 text {
-                    color: #e15616;
+                    color: #FF5B00;
                 }
             }
         }

+ 2 - 2
pages/search/search_new.vue

@@ -386,13 +386,13 @@ export default {
             .icon-resou {
                 display: none;
                 font-size: 30rpx;
-                color: #e15616;
+                color: #FF5B00;
                 margin-left: 12rpx;
             }
 
             &.light {
                 background: #fef6f3;
-                color: #e15616;
+                color: #FF5B00;
 
                 .icon-resou {
                     display: block;

+ 6 - 6
pages/second/form/form-presale.vue

@@ -611,7 +611,7 @@
 	.newsTitle {
 		line-height: 48rpx;
 		text-align: left;
-		color: #e15616;
+		color: #FF5B00;
 		padding:20rpx;
 		background-color: rgba(225, 86, 22, .1);
 		border-radius: 10rpx;
@@ -633,7 +633,7 @@
 		margin-left: 96rpx;
 	}
 	.secondradio view.active {
-		color: #e15616;
+		color: #FF5B00;
 	}
 	.placeholder{
 		color: #b2b2b2;
@@ -716,7 +716,7 @@
 				color: #333333;
 				.icon-yixuanze{
 					margin-right: 10rpx;
-					color: #E15616;
+					color: #FF5B00;
 				}
 				.icon-weixuanze{ 
 					margin-right: 10rpx;
@@ -827,7 +827,7 @@
 			.file-none-button{
 				width: 88rpx;
 				height: 44rpx;
-				background-color: #e15616;
+				background-color: #FF5B00;
 				border-radius: 8rpx;
 				line-height: 44rpx;
 				text-align: center;
@@ -856,7 +856,7 @@
 		color: #b2b2b2;
 	}
 	.icon-jiagexiangliao{
-		color: #e15616 !important;
+		color: #FF5B00 !important;
 	}
 	.pricecolor{
 		margin-left: 10rpx;
@@ -1050,7 +1050,7 @@
 				color: #999999;
 			}
 			&.confirm{
-				background-image: linear-gradient(270deg, #f28f31 0%, #e15616 100%);
+				background-image: linear-gradient(270deg, #f28f31 0%, #FF5B00 100%);
 				border-radius: 0rpx 0rpx 32rpx 0rpx;
 				color: #fff;
 			}

+ 6 - 6
pages/second/form/form-seller.vue

@@ -932,7 +932,7 @@
 	.newsTitle {
 		line-height: 48rpx;
 		text-align: left;
-		color: #e15616;
+		color: #FF5B00;
 		padding:20rpx;
 		background-color: rgba(225, 86, 22, .1);
 		border-radius: 10rpx;
@@ -954,7 +954,7 @@
 		margin-left: 96rpx;
 	}
 	.secondradio view.active {
-		color: #e15616;
+		color: #FF5B00;
 	}
 	.placeholder{
 		color: #b2b2b2;
@@ -1037,7 +1037,7 @@
 				color: #333333;
 				.icon-yixuanze{
 					margin-right: 10rpx;
-					color: #E15616;
+					color: #FF5B00;
 				}
 				.icon-weixuanze{ 
 					margin-right: 10rpx;
@@ -1148,7 +1148,7 @@
 			.file-none-button{
 				width: 88rpx;
 				height: 44rpx;
-				background-color: #e15616;
+				background-color: #FF5B00;
 				border-radius: 8rpx;
 				line-height: 44rpx;
 				text-align: center;
@@ -1177,7 +1177,7 @@
 		color: #b2b2b2;
 	}
 	.icon-jiagexiangliao{
-		color: #e15616 !important;
+		color: #FF5B00 !important;
 	}
 	.pricecolor{
 		margin-left: 10rpx;
@@ -1371,7 +1371,7 @@
 				color: #999999;
 			}
 			&.confirm{
-				background-image: linear-gradient(270deg, #f28f31 0%, #e15616 100%);
+				background-image: linear-gradient(270deg, #f28f31 0%, #FF5B00 100%);
 				border-radius: 0rpx 0rpx 32rpx 0rpx;
 				color: #fff;
 			}

+ 6 - 6
pages/second/form/form.vue

@@ -607,7 +607,7 @@
 	.newsTitle {
 		line-height: 48rpx;
 		text-align: left;
-		color: #e15616;
+		color: #FF5B00;
 		padding:20rpx;
 		background-color: rgba(225, 86, 22, .1);
 		border-radius: 10rpx;
@@ -629,7 +629,7 @@
 		margin-left: 96rpx;
 	}
 	.secondradio view.active {
-		color: #e15616;
+		color: #FF5B00;
 	}
 	.placeholder{
 		color: #b2b2b2;
@@ -712,7 +712,7 @@
 				color: #333333;
 				.icon-yixuanze{
 					margin-right: 10rpx;
-					color: #E15616;
+					color: #FF5B00;
 				}
 				.icon-weixuanze{ 
 					margin-right: 10rpx;
@@ -823,7 +823,7 @@
 			.file-none-button{
 				width: 88rpx;
 				height: 44rpx;
-				background-color: #e15616;
+				background-color: #FF5B00;
 				border-radius: 8rpx;
 				line-height: 44rpx;
 				text-align: center;
@@ -852,7 +852,7 @@
 		color: #b2b2b2;
 	}
 	.icon-jiagexiangliao{
-		color: #e15616 !important;
+		color: #FF5B00 !important;
 	}
 	.pricecolor{
 		margin-left: 10rpx;
@@ -1046,7 +1046,7 @@
 				color: #999999;
 			}
 			&.confirm{
-				background-image: linear-gradient(270deg, #f28f31 0%, #e15616 100%);
+				background-image: linear-gradient(270deg, #f28f31 0%, #FF5B00 100%);
 				border-radius: 0rpx 0rpx 32rpx 0rpx;
 				color: #fff;
 			}

+ 1 - 1
pages/second/form/introduce.vue

@@ -143,7 +143,7 @@ page {
 }
 .fleaMarket {
 	padding: 20rpx;
-	background-image: linear-gradient(#ff7676, #e15616);
+	background-image: linear-gradient(#ff7676, #FF5B00);
 }
 .second-hand-wrapper {
 	background-image: url('https://static.caimei365.com/app/img/bg/bg22.png');

+ 2 - 2
pages/second/product/product-details.vue

@@ -1133,7 +1133,7 @@
 				background-color: #E1E1E1;
 			}
 			.btn-bay{
-				background:linear-gradient(to right, #f28f31 0%, #e15616 100%);
+				background:linear-gradient(to right, #f28f31 0%, #FF5B00 100%);
 				border-radius: 0 42rpx 42rpx 0;
 			}
 			.btn-bay.disabled{
@@ -1458,7 +1458,7 @@
 	    border-radius:20rpx;
 	    padding:0 20rpx  20rpx 20rpx;
 		font-size: 20rpx;
-		color: #e15616;
+		color: #FF5B00;
 		margin-bottom: 30rpx
 	}
 	.Disclaimer span {

+ 4 - 4
pages/second/product/product-list.vue

@@ -389,7 +389,7 @@
 		    width: 10vw;
 		    margin: 0 auto;
 		    height: .48vw;
-		    background-color: #e15616;
+		    background-color: #FF5B00;
 		    display: block;
 		}
 	}
@@ -407,14 +407,14 @@
 			color: #627386;
 			cursor: pointer;
 			&.addstyle{
-				color: #e15616;
+				color: #FF5B00;
 			}
 		}
 		.line {
 			width: 75rpx;
 			margin: 0 auto;
 			height: 4rpx;
-			background-color: #e15616;
+			background-color: #FF5B00;
 			display: block;
 		}
 	}
@@ -543,7 +543,7 @@
 			font-size: 30rpx;
 			&.intro{
 				background: #ffe6dc;
-				color: #e15616;
+				color: #FF5B00;
 				&.long{
 					width: 600rpx;
 					display: block;

+ 4 - 4
pages/seller/cart/cart.vue

@@ -1132,7 +1132,7 @@ page {
 		line-height: 50rpx;
 		border-radius: 30rpx;
 		background: #ffffff;
-		border: 1px solid #e15616;
+		border: 1px solid #FF5B00;
 		color: $color-system;
 		float: right;
 		text-align: center;
@@ -1223,7 +1223,7 @@ page {
 				display: inline-block;
 				padding: 0 6rpx;
 				font-size: $font-size-20;
-				border: 1px solid #e15616;
+				border: 1px solid #FF5B00;
 				float: right;
 			}
 		}
@@ -1386,8 +1386,8 @@ page {
 				line-height: 40rpx;
 				font-size: 24rpx;
 				box-sizing: border-box;
-				border: 1px solid #e15616;
-				color: #e15616;
+				border: 1px solid #FF5B00;
+				color: #FF5B00;
 				float: left;
 				border-radius: 20rpx;
 				margin-left: 16rpx;

+ 1 - 1
pages/seller/cart/components/cm-unit-cart-popup.vue

@@ -355,7 +355,7 @@ export default {
 					background: #fff1eb;
 					color: $color-system;
 					.tips {
-						background: #e15616;
+						background: #FF5B00;
 					}
 				}
 				.tips {

+ 1 - 1
pages/seller/cart/components/cm-unit-popup.vue

@@ -376,7 +376,7 @@ export default {
 					background: #fff1eb;
 					color: $color-system;
 					.tips {
-						background: #e15616;
+						background: #FF5B00;
 					}
 				}
 				.tips {

+ 3 - 3
pages/seller/cart/components/cm-unit-suppor-popup.vue

@@ -276,7 +276,7 @@ export default {
 					background: #fff1eb;
 					color: $color-system;
 					.tips {
-						background: #e15616;
+						background: #FF5B00;
 					}
 				}
 				.tips {
@@ -304,7 +304,7 @@ export default {
 		text-align: center;
 		font-size: 24rpx;
 		background: #fffaf8;
-		color: #e15616;
+		color: #FF5B00;
 		margin-bottom: 30rpx;
 	}
 }
@@ -324,7 +324,7 @@ export default {
 		box-sizing: border-box;
 		&.cancel {
 			background: #ffe6dc;
-			color: #e15616;
+			color: #FF5B00;
 		}
 		&.confirm {
 			background: $btn-confirm;

+ 5 - 5
pages/seller/cart/components/immediatelyList.vue

@@ -760,8 +760,8 @@ export default {
 	line-height: 76rpx;
 	padding-left: 30rpx;
 	&.active {
-		color: #e15616;
-		border-bottom: 4rpx solid #e15616;
+		color: #FF5B00;
+		border-bottom: 4rpx solid #FF5B00;
 	}
 }
 .tabstyle {
@@ -796,7 +796,7 @@ export default {
 		height: 36rpx;
 		line-height: 36rpx;
 		text-align: center;
-		color: #e15616;
+		color: #FF5B00;
 		position: absolute;
 		bottom: -5rpx;
 		right: -5rpx;
@@ -1046,9 +1046,9 @@ export default {
 					border-radius: 16rpx;
 					text-align: center;
 					box-sizing: border-box;
-					border: 1px solid #e15616;
+					border: 1px solid #FF5B00;
 					font-size: 24rpx;
-					color: #e15616;
+					color: #FF5B00;
 					margin-left: 30rpx;
 				}
 			}

+ 4 - 4
pages/seller/cart/components/secondHand.vue

@@ -367,8 +367,8 @@
 		line-height: 76rpx;
 		padding-left: 30rpx;
 		&.active{
-			color: #E15616;
-			border-bottom: 4rpx solid #E15616;
+			color: #FF5B00;
+			border-bottom: 4rpx solid #FF5B00;
 		}
 	}
 	.tabstyle{
@@ -403,7 +403,7 @@
 			height: 36rpx;
 			line-height: 36rpx;
 			text-align: center;
-			color: #E15616;	
+			color: #FF5B00;	
 			position: absolute;
 			bottom: -5rpx;
 			right: -5rpx;
@@ -801,7 +801,7 @@
 			color: #333333;
 			font-size: 26rpx;
 			margin-right: 0;
-			// background:linear-gradient(135deg,rgba(242,143,49,1) 0%,rgba(225,86,22,1) 100%);
+			// background:linear-gradient(90deg, #FF9300 0%, #FF5B00 100%);
 			background: #FFFFFF;
 			border: 2rpx solid #C9C9C9;
 		}

+ 1 - 1
pages/seller/cart/coupon-share.vue

@@ -91,7 +91,7 @@ export default {
 					text: '去升级',
 					customStyle: {
 						color: '#fff',
-						bgColor: 'linear-gradient(90deg, #F28F31 0%, #E15616 100%)'
+						bgColor: 'linear-gradient(90deg, #F28F31 0%, #FF5B00 100%)'
 					},
 					plain: false
 				}

+ 1 - 1
pages/seller/cart/second.vue

@@ -240,7 +240,7 @@
 		}
 	.addbtn{
 			height: 84rpx;
-			background: linear-gradient(135deg,rgba(242,143,49,1) 0%,rgba(225,86,22,1) 100%);
+			background: linear-gradient(90deg, #FF9300 0%, #FF5B00 100%);
 			text-align: center;
 			font-size: 28rpx;
 			color: #fff;

+ 257 - 0
pages/seller/club/club-detail.vue

@@ -0,0 +1,257 @@
+<template>
+	<view class="container club-info">
+		<tui-skeleton
+			v-if="skeletonShow"
+			backgroundColor="#fafafa"
+			borderRadius="10rpx"
+			:isLoading="true"
+			:loadingType="5"
+		></tui-skeleton>
+		<template v-else>
+			<view class="info-content clearfix">
+				<view class="info-main border">
+					<view class="info-p"
+						>机构名称:<text>{{ clubInfo.name }}</text></view
+					>
+					<view class="info-p"
+						>状态:<text
+							class="info-h1-tag"
+							:class="{
+								orange: clubInfo.status == 1,
+								grey: clubInfo.status == 90,
+								warn: clubInfo.status == 92
+							}"
+						>
+							{{ clubInfo.status | statusFilters }}
+						</text></view
+					>
+					<view class="info-p"
+						>机构级别:<text>{{ clubInfo.userIdentity === 2 ? '资质机构' : '个人机构' }}</text></view
+					>
+					<view class="info-p"
+						>机构类型:<text
+							>{{ clubInfo.firstClubType | FirstFormat }}-{{ clubInfo.secondClubType | TwoFormat }}</text
+						></view
+					>
+					<view class="info-p"
+						>联系人:<text>{{ clubInfo.linkMan }}</text></view
+					>
+					<view class="info-p"
+						>手机号:<text>{{ clubInfo.contractMobile }}</text></view
+					>
+					<view class="info-p"
+						>联系人身份:<text>{{ clubInfo.linkManIdentity | linkManFormat }}</text></view
+					>
+					<view class="info-p"
+						>注册时间:<text>{{ clubInfo.addTime }}</text></view
+					>
+					<view class="info-p"
+						>联系地址:<text>{{ clubInfo.provincialAddress }}{{ clubInfo.address }}</text></view
+					>
+					<view class="info-p"
+						v-if="clubInfo.socialCreditCode" >营业执照编号:<text>{{ clubInfo.socialCreditCode }}</text></view
+					>
+					<view class="info-p">营业执照:</view>
+					<view class="info-img"><image :src="clubInfo.businessLicense" alt=""/></view>
+					<view class="info-p" v-if="clubInfo.medicalPracticeLicense">医疗许可证:</view>
+					<view class="info-img" v-if="clubInfo.medicalPracticeLicense"
+						><image :src="clubInfo.medicalPracticeLicense" alt=""
+					/></view>
+				</view>
+				<view class="info-main">
+					<view class="info-p"
+						v-if="clubInfo.shortName">机构简称:<text>{{ clubInfo.shortName }}</text></view
+					>
+					<view class="info-p"
+						v-if="clubInfo.contractEmail">邮箱:<text>{{ clubInfo.contractEmail }}</text></view
+					>
+					<view class="info-p" v-if="clubInfo.shopPhoto">门头照:</view>
+					<view class="info-img" v-if="clubInfo.shopPhoto"><image :src="clubInfo.shopPhoto" alt=""/></view>
+					<view class="info-p"
+						>主营内容:<text>{{ clubInfo.mainProduct }}</text></view
+					>
+					<template v-if="clubInfo.contractPhone || clubInfo.fax || clubInfo.profile">
+						<view class="info-p" v-if="clubInfo.contractPhone"
+							>固定电话:<text>{{ clubInfo.contractPhone ? clubInfo.contractPhone : '无' }}</text></view
+						>
+						<view class="info-p" v-if="clubInfo.fax"
+							>传真:<text>{{ clubInfo.fax ? clubInfo.fax : '无' }}</text></view
+						>
+						<view class="info-p" v-if="clubInfo.profile"
+							>公司介绍:<text>{{ clubInfo.profile ? clubInfo.profile : '无' }}</text></view
+						>
+					</template>
+				</view>
+			</view>
+		</template>
+	</view>
+</template>
+
+<script>
+import { mapState, mapMutations } from 'vuex'
+import authorize from '@/common/config/authorize.js'
+import wxLogin from '@/common/config/wxLogin.js'
+
+export default {
+	data() {
+		return {
+			skeletonShow: true,
+			clubInfo: {},
+			isSellerpopup: false
+		}
+	},
+	onLoad(option) {
+		wxLogin.wxLoginAuthorize()
+		this.userClubRecordLinkage({ userId: option.userId })
+	},
+	filters: {
+		FirstFormat(value) {
+			//处理格式
+			const map = {
+				1: '医美',
+				2: '生美',
+				3: '项目公司',
+				4: '个人',
+				5: '其他'
+			}
+			return map[value]
+		},
+		TwoFormat(value) {
+			const map = {
+				1: '诊所',
+				2: '门诊',
+				3: '医院',
+				4: '其他',
+				5: '美容院',
+				6: '养生馆',
+				7: '其他',
+			}
+			return map[value]
+		},
+		linkManFormat(value) {
+			const map = {
+				1: '老板',
+				2: '采购',
+				3: '运营',
+				4: '其他'
+			}
+			return map[value]
+		},
+		statusFilters(value) {
+			// 状态
+			const map = {
+				1: '待审核',
+				90: '已上线',
+				92: '审核未通过'
+			}
+			return map[value]
+		}
+	},
+	computed: {
+		...mapState(['isManage'])
+	},
+	methods: {
+		async userClubRecordLinkage(param) {
+			//查询机构信息
+			const userInfo = await this.$api.getStorage()
+			this.UserService.OrganizationUpdateModifyInfo(param)
+				.then(response => {
+					this.clubInfo = response.data.club
+					setTimeout(() => {
+						this.skeletonShow = false
+					}, 1000)
+				})
+				.catch(error => {
+					this.isInvalid = true
+				})
+		}
+	},
+	onShow() {}
+}
+</script>
+
+<style lang="scss">
+page {
+	height: auto;
+}
+.club-info {
+	width: 100%;
+	.info-content {
+		width: 100%;
+		height: auto;
+		float: left;
+		box-sizing: border-box;
+		.info-main {
+			width: 100%;
+			height: auto;
+			padding: 24rpx 0;
+			margin-bottom: 24rpx;
+			&.border{
+				border-bottom: 30rpx solid #F5F5F5;
+			}
+			.info-h1 {
+				width: 100%;
+				box-sizing: border-box;
+				padding: 0 24rpx;
+				position: relative;
+				line-height: 80rpx;
+				font-size: 30rpx;
+				color: #333333;
+				&:before {
+					content: '';
+					width: 6rpx;
+					height: 24rpx;
+					background-color: #FF5B00;
+					position: absolute;
+					left: 0;
+					top: 30rpx;
+				}
+			}
+			.info-p {
+				width: 100%;
+				box-sizing: border-box;
+				padding: 0 24rpx;
+				position: relative;
+				line-height: 66rpx;
+				font-size: 30rpx;
+				color: #999999;
+				.info-h1-tag {
+					display: inline-block;
+					padding: 0 16rpx;
+					line-height: 40rpx;
+					background-color: #fff2d5;
+					font-size: 24rpx;
+					border-radius: 20rpx;
+					color: #ffffff;
+					text-align: center;
+					margin-left: 16rpx;
+					&.orange {
+						background-color: #fff2d5;
+						color: #e4aa43;
+					}
+					&.grey {
+						background-color: #0db26d;
+					}
+					&.warn {
+						background-color: #f94b4b;
+					}
+				}
+				text {
+					color: #333333;
+				}
+			}
+			.info-img {
+				width: 200rpx;
+				height: 200rpx;
+				image {
+					width: 200rpx;
+					height: 200rpx;
+					display: block;
+					margin-left: 24rpx;
+					border: 1px dashed #e2e2e2;
+				}
+			}
+		}
+	}
+}
+</style>

+ 52 - 38
pages/seller/club/club-info.vue

@@ -8,6 +8,10 @@
 			:loadingType="5"
 		></tui-skeleton>
 		<template v-else>
+			<view class="info-header-path" @click="handlePathVisit">
+				<view class="path-text">客户访问采美商城全部记录</view>
+				<view class="path-icon"><text class="iconfont icon-xiayibu"></text></view>
+			</view>
 			<view class="info-header clearfix" v-if="clubInfo.ipAddress">
 				<view class="pp"
 					>注册地:<text>{{ clubInfo.ipAddress }}</text></view
@@ -99,7 +103,7 @@
 			</view>
 		</template>
 		<!-- 按钮 -->
-		<template v-if="clubInfo.spType === 0 && isManage">
+<!-- 	<template v-if="clubInfo.spType === 0 && isManage">
 			<tui-bottom-popup :radius="false" :mask="false" :show="true">
 				<view class="tui-popup-box clearfix">
 					<view
@@ -112,7 +116,7 @@
 					</view>
 				</view>
 			</tui-bottom-popup>
-		</template>
+		</template> -->
 		<!-- 选择弹窗 -->
 		<cm-seller-popup
 			ref="cmresellerpopup"
@@ -154,43 +158,28 @@ export default {
 		this.userClubRecordLinkage({ clubId: this.salesParams.clubId })
 	},
 	filters: {
-		FirstFormat: function(type) {
-			//处理金额
-			let name = ''
-			switch (type) {
-				case 1:
-					name = '医美'
-					break
-				case 2:
-					name = '生美'
-					break
-				case 3:
-					name = '项目公司'
-					break
-				case 4:
-					name = '个人'
-					break
-				case 5:
-					name = '其他'
-					break
+		FirstFormat(value) {
+			//处理格式
+			const map = {
+				1: '医美',
+				2: '生美',
+				3: '项目公司',
+				4: '个人',
+				5: '其他'
 			}
-			return name
+			return map[value]
 		},
-		TwoFormat: function(type) {
-			//处理金额
-			let text = ''
-			switch (type) {
-				case 1:
-					text = '诊所'
-					break
-				case 2:
-					text = '门诊'
-					break
-				case 3:
-					text = '医院'
-					break
+		TwoFormat(value) {
+			const map = {
+				1: '诊所',
+				2: '门诊',
+				3: '医院',
+				4: '其他',
+				5: '美容院',
+				6: '养生馆',
+				7: '其他',
 			}
-			return text
+			return map[value]
 		},
 		statusFilters(value) {
 			// 状态
@@ -243,6 +232,10 @@ export default {
 		handleShowSellerpopup() {
 			//显示选择协销弹窗
 			this.isSellerpopup = true
+		},
+		handlePathVisit(){
+			// 跳转商城访问记录
+			this.$api.navigateTo(`/pages/seller/club/club-visit?clubId=${this.salesParams.clubId}`)
 		}
 	},
 	onShow() {}
@@ -255,6 +248,28 @@ page {
 }
 .club-info {
 	width: 100%;
+	.info-header-path{
+		width: 100%;
+		height: 90rpx;
+		box-sizing: border-box;
+		padding: 0 24rpx;
+		background-color: #FEF6F3;
+		line-height: 90rpx;
+		.path-text{
+			float: left;
+			font-size: 28rpx;
+			color: #FF5B00;
+			font-weight: bold;
+		}
+		.path-icon{
+			width: 90rpx;
+			height: 90rpx;
+			float: right;
+			text-align: right;
+			font-size: 30rpx;
+			color: #FF5B00;
+		}
+	}
 	.info-header {
 		width: 100%;
 		height: auto;
@@ -283,7 +298,6 @@ page {
 		box-sizing: border-box;
 		padding: 0 24rpx;
 		background-color: #ffffff;
-		padding-bottom: 240rpx;
 		.info-title {
 			width: 100%;
 			height: 68rpx;
@@ -340,7 +354,7 @@ page {
 					content: '';
 					width: 6rpx;
 					height: 24rpx;
-					background-color: #e15616;
+					background-color: #FF5B00;
 					position: absolute;
 					left: 0;
 					top: 30rpx;

+ 1 - 1
pages/seller/club/club-list.vue

@@ -550,7 +550,7 @@ page,
 					margin-right: 5rpx;
 				}
 			}
-	}
+		}
 	}
 }
 </style>

+ 451 - 0
pages/seller/club/club-portrait.vue

@@ -0,0 +1,451 @@
+<template>
+	<view class="container clearfix">
+		<tui-skeleton
+			v-if="skeletonShow"
+			backgroundColor="#fafafa"
+			borderRadius="10rpx"
+			:isLoading="true"
+			:loadingType="5"
+		></tui-skeleton>
+		<template v-else>
+			<!-- <view class="charts-navbar" id="topBar">
+				<view
+					class="nav-item tui-skeleton-fillet"
+					v-for="(nav, index) in navBarList"
+					:key="index"
+					:class="{ current: tabCurrentIndex === nav.index }"
+					@click="tabChange(nav.index)"
+				>
+					<text>{{ nav.name }}</text> <text class="line"></text>
+				</view>
+			</view> -->
+			<view class="charts-content">
+				<!-- 重点资料 -->
+				<view class="charts-box charts-box0" id="charts-box0">
+					<echartInfo ref="echart-info" :clubInfo="clubInfo" :clubId="clubInfo.clubId" v-if="isRequest" />
+				</view>
+				<!-- 订单 -->
+				<view class="charts-box charts-box1" id="charts-box1">
+					<echartOrder
+						ref="echartOrder"
+						:clubId="clubInfo.clubId"
+						:totalAmount="totalData.orderTotalAmount"
+						:totalNum="totalData.orderTotal"
+						v-if="isRequest"
+					/>
+				</view>
+				<!-- 关键词 -->
+				<view class="charts-box charts-box2" id="charts-box2">
+					<echartKeyword
+						ref="echartKeyword"
+						:clubId="clubInfo.clubId"
+						:totalNum="totalData.totalKeywords"
+						v-if="isRequest"
+					/>
+				</view>
+				<!-- 咨询记录 -->
+				<view class="charts-box charts-box3" id="charts-box3">
+					<echartContact
+						ref="echartContact"
+						:clubId="clubInfo.clubId"
+						:totalNum="totalData.remarksTotal"
+						v-if="isRequest"
+					/>
+				</view>
+				<!-- 访问记录 -->
+				<view class="charts-box charts-box4" id="charts-box4">
+					<echartService ref="echartService" :clubId="clubInfo.clubId" v-if="isRequest" />
+				</view>
+			</view>
+		</template>
+	</view>
+</template>
+
+<script>
+import { mapState, mapMutations } from 'vuex'
+import { debounce } from '@/common/config/common.js'
+import echartInfo from './components/echart-info'
+import echartOrder from './components/echart-order'
+import echartKeyword from './components/echart-keyword'
+import echartContact from './components/echart-contact'
+import echartService from './components/echart-service'
+import chartMixin from './components/mixins/chart.mixin.js'
+const observers = {}
+export default {
+	mixins: [chartMixin],
+	components: {
+		echartInfo,
+		echartOrder,
+		echartKeyword,
+		echartContact,
+		echartService
+	},
+	data() {
+		return {
+			skeletonShow: true,
+			isRequest: false,
+			clubInfo: {},
+			navBarList: [
+				{ name: '重点资料', index: 0 },
+				{ name: '订单数据', index: 1 },
+				{ name: '搜索关键词', index: 2 },
+				{ name: '咨询记录', index: 3 },
+				{ name: '访问记录', index: 4 }
+			],
+			tabCurrentIndex: 0,
+			anchorList: [], // 锚点元素节点信息
+			anchorStatus: [0, 0, 0, 0, 0], // 分别代表5个锚点区域的开关 0:关  1:开
+			totalData: {
+				orderTotalAmount: 0, // 订单总金额
+				orderTotal: 0, // 订单总量
+				remarksTotal: 0, // 所有咨询记录条数
+				totalKeywords: 0 // 所有关键词条数
+			}
+		}
+	},
+	onLoad(option) {
+		this.getClubInfo(option.userId)
+	},
+	onReady() {
+		console.log('onReady')
+		setTimeout(() => {
+			this.getAnchorSection()
+		}, 2000)
+	},
+	methods: {
+		async getClubInfo(userId) {
+			//获取机构信息
+			try {
+				const clubRes = await this.UserService.OrganizationUpdateModifyInfo({ userId: userId })
+				this.clubInfo =  clubRes.data.club
+				const tialRes = await this.UserService.userClubInitial({ clubId: this.clubInfo.clubId })
+				this.totalData.orderTotal = tialRes.data.orderTotal
+				this.totalData.orderTotalAmount = tialRes.data.orderTotalAmount
+				this.totalData.remarksTotal = tialRes.data.remarksTotal
+				this.totalData.totalKeywords = tialRes.data.totalKeywords
+				setTimeout(() => {
+					this.skeletonShow = false
+					this.isRequest = true
+				}, 1000)
+			} catch (error) {
+				console.log(error)
+			}
+		},
+		tabChange(index) {
+			this.tabCurrentIndex = index
+			this.scrollToAnchor()
+		},
+		// 获取锚点元素信息
+		getAnchorSection() {
+			const query = uni.createSelectorQuery().in(this)
+			query
+				.selectAll('.charts-box')
+				.boundingClientRect(data => {
+					if (data.length > 0) {
+						this.anchorList = data
+						this.anchorList.forEach((dom, index) => {
+							uni.createSelectorQuery()
+								.select('.charts-content')
+								.boundingClientRect(data => {
+									//目标节点、也可以是最外层的父级节点
+									uni.createSelectorQuery()
+										.select(`#${dom.id}`)
+										.boundingClientRect(res => {
+											//dom
+											dom.top = res.top - data.top + 8
+										})
+										.exec()
+								})
+								.exec()
+						})
+						console.log(this.anchorList)
+						this.observerAnchor(data)
+					}
+				})
+				.exec()
+		},
+		// 滚动到锚点
+		scrollToAnchor() {
+			let scrollTop = 0
+			const query = uni.createSelectorQuery().in(this)
+			if (this.tabCurrentIndex > 0) {
+				scrollTop = this.anchorList[this.tabCurrentIndex].top
+			}
+			uni.pageScrollTo({
+				scrollTop: scrollTop
+			})
+		},
+		// 为需要观测的区域创建观测者
+		observerAnchor(selectorList = []) {
+			const height = uni.getSystemInfoSync().windowHeight - 70
+			selectorList.forEach((selector, index) => {
+				observers[selector.id] = uni.createIntersectionObserver(this)
+				observers[selector.id].relativeToViewport({ bottom: -height }).observe(`#${selector.id}`, res => {
+					if (res.intersectionRatio > 0) {
+						this.anchorStatus[index] = 1
+						// console.log(index, `当前区域为${selector.id}标签选择器的区域...`)
+					} else {
+						this.anchorStatus[index] = 0
+						// console.log(index, `离开区域为${selector.id}标签选择器的区域...`)
+					}
+				})
+			})
+		}
+	},
+	onPageScroll(e) {
+		this.scrollTop = e.scrollTop
+	},
+	onShow() {}
+}
+</script>
+
+<style lang="scss">
+page {
+	background-color: #f5f5f5 !important;
+}
+.container {
+	width: 100%;
+	height: auto;
+	box-sizing: border-box;
+	padding: 24rpx;
+}
+.charts-navbar {
+	width: 100%;
+	height: 90rpx;
+	background-color: #ffffff;
+	box-sizing: border-box;
+	padding: 20rpx 0;
+	display: flex;
+	position: fixed;
+	top: 0;
+	left: 0;
+	z-index: 9999999;
+	.nav-item {
+		display: flex;
+		flex: 1;
+		justify-content: center;
+		align-items: center;
+		height: 50rpx;
+		font-size: $font-size-28;
+		color: $text-color;
+		position: relative;
+		float: left;
+		position: relative;
+		.line {
+			width: 60rpx;
+			height: 2px;
+			border-radius: 1px;
+			background: #ffffff;
+			position: absolute;
+			bottom: 0;
+			left: 50%;
+			margin-left: -30rpx;
+		}
+		&.current {
+			color: $color-system;
+			.line {
+				background: $color-system;
+			}
+		}
+	}
+}
+.charts-content {
+	width: 100%;
+	height: auto;
+}
+.charts-box {
+	width: 100%;
+	min-height: 350rpx;
+	box-sizing: border-box;
+	padding: 34rpx 24rpx;
+	background-color: #fff;
+	margin-bottom: 32rpx;
+	border-radius: 16rpx;
+	float: left;
+	.echart-content {
+		width: 100%;
+		.echart-title {
+			width: 100%;
+			height: 96rpx;
+			float: left;
+			box-sizing: border-box;
+			padding: 16rpx 0 24rpx 0;
+			.e-icon {
+				width: 56rpx;
+				height: 56rpx;
+				float: left;
+				text-align: center;
+				line-height: 56rpx;
+				border-radius: 50%;
+				&.e1 {
+					background-color: #1890f9;
+				}
+				&.e2 {
+					background-color: #FF5B00;
+				}
+				&.e3 {
+					background-color: #f2637b;
+				}
+				&.e4 {
+					background-color: #f99e0a;
+				}
+				&.e5 {
+					background-color: #36cbcb;
+				}
+				.iconfont {
+					font-size: 30rpx;
+					color: #fff;
+				}
+			}
+			.e-name {
+				float: left;
+				line-height: 56rpx;
+				font-size: 30rpx;
+				margin-left: 24rpx;
+				color: #333;
+			}
+			.e-start {
+				float: right;
+				line-height: 56rpx;
+				font-size: 28rpx;
+				color: #34cc8c;
+			}
+		}
+		.echart-main {
+			width: 100%;
+			min-height: 200rpx;
+			box-sizing: border-box;
+			padding: 32rpx 40rpx;
+			position: relative;
+			float: left;
+			background-color: #f7f7f7;
+			.echart-text {
+				width: 100%;
+				line-height: 40rpx;
+				margin-bottom: 20rpx;
+				font-size: 28rpx;
+				color: #333;
+				float: left;
+				.label {
+					color: #999;
+					text-align-last: justify;
+				}
+			}
+			.echart-next {
+				width: 100rpx;
+				height: 100%;
+				position: absolute;
+				right: 10rpx;
+				top: 50%;
+				font-size: 28rpx;
+				color: #1890f9;
+			}
+		}
+		.echart-search {
+			width: 100%;
+			height: auto;
+			float: left;
+			margin-bottom: 58rpx;
+			.echart-search-text {
+				width: 100%;
+				height: 34rpx;
+				margin-bottom: 20rpx;
+				.search-text {
+					float: left;
+					line-height: 34rpx;
+					font-size: 24rpx;
+					color: #333;
+					margin-right: 20rpx;
+					text {
+						color: #FF5B00;
+					}
+				}
+			}
+			.echart-search-date {
+				width: 100%;
+				height: 56rpx;
+				box-sizing: border-box;
+				.line {
+					color: #999999;
+					float: left;
+					line-height: 56rpx;
+					margin: 0 20rpx;
+				}
+				.echart-search-date-input {
+					width: 228rpx;
+					height: 56rpx;
+					border: 1px solid #e2e2e2;
+					border-radius: 8rpx;
+					box-sizing: border-box;
+					padding: 0 20rpx;
+					line-height: 56rpx;
+					float: left;
+					position: relative;
+					.input-text {
+						display: block;
+						height: 56rpx;
+						font-size: 24rpx;
+						color: #666666;
+					}
+					.icon-riqi {
+						color: #999;
+						display: block;
+						width: 40rpx;
+						height: 56rpx;
+						position: absolute;
+						right: 10rpx;
+						top: 0;
+						line-height: 56rpx;
+					}
+				}
+			}
+			.echart-search-time {
+				width: 100%;
+				height: 40rpx;
+				margin-top: 24rpx;
+				.time-tab {
+					width: 80rpx;
+					height: 40rpx;
+					float: left;
+					border-radius: 20rpx;
+					margin-right: 24rpx;
+					box-sizing: border-box;
+					border: 1px solid #b2b2b2;
+					line-height: 38rpx;
+					font-size: 24rpx;
+					text-align: center;
+					color: #999;
+					&.current {
+						background-color: #fef6f3;
+						border-color: #FF5B00;
+						color: #FF5B00;
+					}
+				}
+			}
+		}
+		.echart-mains {
+			width: 100%;
+			min-height: 300rpx;
+			float: left;
+			.echart-mains-none {
+				width: 100%;
+				height: 100%;
+				display: flex;
+				align-items: center;
+				justify-content: center;
+				flex-direction: column;
+				.none-image {
+					width: 220rpx;
+					height: 220rpx;
+					margin-bottom: 20rpx;
+				}
+				.none-text {
+					font-size: $font-size-28;
+					color: #999999;
+					line-height: 44rpx;
+				}
+			}
+		}
+	}
+}
+</style>

+ 288 - 0
pages/seller/club/club-visit-detail.vue

@@ -0,0 +1,288 @@
+<template>
+	<view class="container club-visit">
+		<tui-skeleton
+			v-if="skeletonShow"
+			backgroundColor="#fafafa"
+			borderRadius="10rpx"
+			:isLoading="true"
+			:loadingType="5"
+		></tui-skeleton>
+		<template v-else>
+			<view class="visit-content clearfix">
+				<view class="info-title">{{ listQuery.accessDate }}</view>
+				<view class="info-main" v-for="(visit, index) in list" :key="index" :class="index === list.length -1 ? 'none' : ''">
+					<view class="info-p">访问时间:<text>{{ visit.accessNewTime }}</text></view>
+					<view class="info-p">页面类型:<text>{{ visit.pageType ? visit.pageType : '--' }}</text></view>
+					<view class="info-p">页面标签:<text>{{ visit.pageLabel ? visit.pageLabel : '--' }}</text></view>
+					<view class="info-p">商品名称:<text>{{ visit.productName ? visit.productName  : '--'  }}</text></view>
+					<view class="info-p">商品图片: <text v-if="!visit.productImage">--</text></view>
+					<view class="info-img" v-if="visit.productImage"><image :src="visit.productImage" alt=""/></view>
+					<view class="info-p">访问来源:<text>{{ visit.accessSource | accessSourceFilters }}</text></view>
+					<view class="info-p">访问客户端:<text>{{ visit.accessClient | accessClientFilters }}</text></view>
+					<view class="info-p">访问时长:<text>{{ visit.accessDuration }}</text></view>
+				</view>
+				<!--加载loadding-->
+				<tui-loadmore :visible="loadding" :index="3" type="black"></tui-loadmore>
+				<tui-nomore :visible="!pullUpOn" :backgroundColor="'#F7F7F7'" :text="nomoreText"></tui-nomore>
+				<!--加载loadding-->
+			</view>
+		</template>
+		<!-- 侧边 -->
+		<view class="scrollTop" :style="{bottom:'150rpx'}">
+			<view class="icon top" @click="onPageScrollTop" :class="isScrollTop ? 'show' : 'none'">
+				<text class="iconfont icon-zhiding"></text>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+import { mapState, mapMutations } from 'vuex'
+import authorize from '@/common/config/authorize.js'
+import wxLogin from '@/common/config/wxLogin.js'
+
+export default {
+	data() {
+		return {
+			skeletonShow: true,
+			isScrollTop:false,
+			nomoreText: '上拉显示更多',
+			hasNextPage: false,
+			loadding: false,
+			pullUpOn: true,
+			pullFlag: true,
+			listQuery:{
+				clubId:0,
+				accessDate:'',
+				ip:'',
+				pageNum:1,
+				pageSize:10
+			},
+			list:[] ,
+		}
+	},
+	filters: {
+		accessClientFilters(value) {
+		  // 访问客户端
+		  const map = {
+			'0': '网站',
+			'1': '小程序'
+		  }
+		  return map[value]
+		},
+		accessSourceFilters(value) {
+		  // 访问来源
+		  if(!value) return '--'
+		  const map = {
+			'0': '直接访问',
+			'1': '百度搜索',
+			'2': '360搜索',
+			'3': '谷歌搜索',
+			'4': '神马搜索',
+			'5': '头条搜索',
+			'6': '搜狗搜索',
+			'7': '直接访问'
+		  }
+		  return map[value]
+		}
+	},
+	computed: {},
+	onLoad(option) {
+		this.listQuery.clubId = option.clubId
+		this.listQuery.accessDate = option.accessDate
+		this.listQuery.ip = option.ip
+		this.getClubRecordDetail()
+		setTimeout(() => {
+			this.skeletonShow = false
+		}, 1000)
+		this.listQuery
+	},
+	methods: {
+		getClubRecordDetail() {
+			//获取记录详情
+			this.listQuery.pageNum = 1
+			this.UserService.userClubRecordDetail(this.listQuery)
+				.then(response => {
+					let data = response.data
+					if (data.list && data.list.length > 0) {
+						this.hasNextPage = response.data.hasNextPage
+						this.list = data.list
+						this.pullFlag = false
+						setTimeout(() => {
+							this.pullFlag = true
+						}, 500)
+						if (this.hasNextPage) {
+							this.pullUpOn = false
+							this.nomoreText = '上拉显示更多'
+						} else {
+							this.pullUpOn = true
+							this.loadding = false
+							this.nomoreText = '已至底部'
+						}
+					}
+				})
+				.catch(error => {
+					this.$util.msg(error.msg, 2000)
+				})
+		},
+		getOnReachBottomData() {
+			this.listQuery.pageNum += 1
+			this.UserService.userClubRecordDetail(this.listQuery)
+				.then(response => {
+					let data = response.data
+					if (data.list && data.list.length > 0) {
+						this.hasNextPage = response.data.hasNextPage
+						this.list = this.list.concat(data.list)
+						this.pullFlag = false // 防上拉暴滑
+						setTimeout(() => {
+							this.pullFlag = true
+						}, 500)
+						if (this.hasNextPage) {
+							this.pullUpOn = false
+							this.nomoreText = '上拉显示更多'
+						} else {
+							this.pullUpOn = false
+							this.loadding = false
+							this.nomoreText = '已至底部'
+						}
+					}
+				})
+				.catch(error => {
+					this.$util.msg(error.msg, 2000)
+				})
+		},
+		onPageScrollTop(){
+			uni.pageScrollTo({
+			    scrollTop: 0,
+			    duration: 600
+			})
+		},
+	},
+	onPullDownRefresh() {
+		setTimeout(() => {
+			this.getClubRecordDetail()
+			uni.stopPullDownRefresh()
+		}, 200)
+	},
+	onReachBottom() {
+		if (this.hasNextPage) {
+			this.loadding = true
+			this.pullUpOn = true
+			this.getOnReachBottomData()
+		}
+	},
+	onPageScroll(e) {
+		//实时获取到滚动的值
+		if (e.scrollTop > 800) {
+			this.isScrollTop = true
+		} else {
+			this.isScrollTop = false
+		}
+	},
+	onShow() {}
+}
+</script>
+
+<style lang="scss">
+page {
+	height: auto;
+}
+.club-visit {
+	width: 100%;
+	.visit-content {
+		width: 100%;
+		height: auto;
+		float: left;
+		box-sizing: border-box;
+		.info-title {
+			width: 100%;
+			box-sizing: border-box;
+			padding: 24rpx 24rpx 0 24rpx;
+			position: relative;
+			line-height: 48rpx;
+			font-size: 40rpx;
+			color: #333;
+			font-weight: bold;
+		}
+		.info-main {
+			width: 100%;
+			height: auto;
+			padding: 20rpx 0;
+			margin-bottom: 24rpx;
+			border-bottom: 20rpx solid #f5f5f5;
+			box-sizing: border-box;
+			.info-p {
+				width: 100%;
+				box-sizing: border-box;
+				padding: 0 24rpx;
+				position: relative;
+				line-height: 66rpx;
+				font-size: 30rpx;
+				color: #999999;
+				text-overflow: ellipsis;
+				overflow: hidden;
+				display: -webkit-box;
+				-webkit-line-clamp: 1;
+				line-clamp: 1;
+				-webkit-box-orient: vertical;
+				text {
+					color: #333333;
+				}
+			}
+			.info-img {
+				width: 200rpx;
+				height: 200rpx;
+				image {
+					width: 200rpx;
+					height: 200rpx;
+					display: block;
+					margin-left: 24rpx;
+					border: 1px dashed #e2e2e2;
+				}
+			}
+			&.none{
+				border-bottom: none;
+			}
+		}
+	}
+}
+.scrollTop{
+	width: 80rpx;
+	height: 100rpx;
+	position: fixed;
+	right: 20rpx;
+	z-index: 99;
+	.icon{
+		width: 80rpx;
+		height: 80rpx;
+		border-radius: 50%;
+		float: left;
+		margin: 10rpx 0;
+		line-height: 80rpx;
+		text-align: center;
+		.contact-btn{
+			width: 80rpx;
+			height: 80rpx;
+			background-color: rgba(0,0,0,0);
+			line-height: 80rpx;
+			.iconfont{
+				font-size: $font-size-44;
+				color: #FFFFFF;
+			}
+		}
+		&.top{
+			background-color: rgba(0,0,0,0.4);
+			&.show{
+				opacity: 1;
+			}
+			&.none{
+				opacity: 0;
+			}
+		}
+		.iconfont{
+			font-size: $font-size-44;
+			color: #FFFFFF;
+		}
+	}
+	}
+</style>

+ 216 - 0
pages/seller/club/club-visit.vue

@@ -0,0 +1,216 @@
+<template>
+	<view class="container ">
+		<tui-skeleton
+			v-if="skeletonShow"
+			backgroundColor="#fafafa"
+			borderRadius="10rpx"
+			:isLoading="true"
+			:loadingType="5"
+		></tui-skeleton>
+		<template v-else>
+			<au-custom :navbar-data='nvabarData' @navigateBack="hanldNavigateBack"></au-custom>
+			<view class="vsit-content" v-if="list.length>0">
+				<view class="list" v-for="(item,index) in list" :key="index" >
+					<view class="list-title">{{ item.year }}年</view>
+					<view class="list-main clear">
+						<view class="list-main-item" v-for="(visit,vIndex) in item.data" :key="vIndex" @click="handleVisitDeatil(visit)">
+							<view class="item-le">{{ visit.monthAndDay }}</view>
+							<view class="item-ri">
+								<view class="item-ri-i">访问记录</view>
+								<view class="item-ri-i none">{{ visit.number }}条</view>
+							</view>
+						</view>
+					</view>
+				</view>
+			</view>
+			<view class="vsit-content-none" v-else>
+				<image class="none-image" src="https://static.caimei365.com/app/img/bg/bg_visit_none@2x.png" mode=""></image>
+				<view class="none-text">暂无数据</view>
+			</view>
+		</template>
+	</view>	
+</template>
+
+<script>
+	export default{
+		data(){
+			return{
+				skeletonShow:true,
+				clubId:0,
+				nvabarData: {		//顶部自定义导航
+					haveHome:true,
+					haveBack:true,
+					textColor:'#ffffff',
+					showCapsule:1, // 是否显示左上角图标  1表示显示  0表示不显示,
+					showSearch: 0,
+					title: '',  // 导航栏 中间的标题
+					textLeft:this.$store.state.isIphone
+				},
+				list:[]
+			}
+		},
+		filters:{
+			
+		},
+		onLoad(option) {
+			this.clubId = option.clubId
+			this.getVisitList(option.clubId)
+		},
+		methods:{
+			getVisitList(clubId){
+			    this.UserService.userClubRecordList({ clubId : clubId })
+			        .then(response => {
+			            this.list = response.data
+						setTimeout(()=>{
+							this.skeletonShow = false
+						},500)
+			        })
+			        .catch(error => {
+			            console.log(error)
+			        })
+			},
+			handleVisitDeatil(visit){
+				this.$api.navigateTo(`/pages/seller/club/club-visit-detail?clubId=${this.clubId}&accessDate=${visit.accessDate}&ip=${visit.ip}`)
+			},
+			hanldNavigateBack(){
+				uni.navigateBack({
+					delta: 1
+				})
+			}
+		},
+		onShow() {
+			
+		}
+	}
+</script>
+
+<style lang="scss">
+	page{
+		width: 100%;
+		height: auto;
+		background-color: #F7F7F7 !important;
+	}
+	.container{
+		width: 100%;
+		min-height: 700rpx;
+		background: url(https://static.caimei365.com/app/img/bg/bg_visit@2x.png) top center no-repeat;
+		background-size: contain;
+		box-sizing: border-box;
+		padding: 0 24rpx;
+		padding-top: 441rpx;
+	}
+	.vsit-content-none{
+		width: 100%;
+		min-height: 1000rpx;
+		background: #FFFFFF;
+		border-radius: 24rpx;
+		padding: 52rpx 24rpx;
+		box-sizing: border-box;
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		flex-direction: column;
+		.none-image{
+			width: 260rpx;
+			height: 260rpx;
+			margin-bottom: 20rpx;
+		}
+		.none-text{
+			font-size: $font-size-28;
+			color: #999999;
+			line-height: 44rpx;
+		}
+	}
+	.vsit-content{
+		width: 100%;
+		min-height: 1000rpx;
+		background: #FFFFFF;
+		border-radius: 24rpx;
+		padding: 52rpx 24rpx;
+		box-sizing: border-box;
+		.list{
+			width: 100%;
+			height: auto;
+			margin-bottom: 80rpx;
+			.list-title{
+				width: 100%;
+				height: 58rpx;
+				margin-bottom: 20rpx;
+				font-size: 42rpx;
+				color: #333;
+			}
+			.list-main{
+				width: 100%;
+				height: auto;
+				padding: 24rpx 16rpx 24rpx 70rpx;
+				box-sizing: border-box;
+				position: relative;
+				&::before{
+					content:'';
+					height: 100%; 
+					border-left: 2px dashed #FFA880;
+					position: absolute;
+					left: 37rpx;
+					top: 0;
+				}
+				.list-main-item{
+					width: 565rpx;
+					height: 120rpx;
+					box-sizing: border-box;
+					padding: 12rpx 35rpx;
+					background: url(https://static.caimei365.com/app/img/bg/bg_visit_list@2x.png)no-repeat;
+					background-size: cover;
+					margin-bottom: 40rpx;
+					position: relative;
+					border-radius: 16rpx;
+					&::after{
+						content:'';
+						width: 40rpx;
+						height: 40rpx;
+						background: url(https://static.caimei365.com/app/img/bg/bg_visit_radius@2x.png)no-repeat;
+						background-size: cover;
+						position: absolute;
+						left: -52rpx;
+					}
+					.item-le{
+						height: 100%;
+						box-sizing: border-box;
+						padding-right: 30rpx;
+						position: relative;
+						float: left;
+						line-height: 96rpx;
+						font-size: 30rpx;
+						text-align: center;
+						color: #333333;
+						&::before{
+							content: '';
+							width: 1px;
+							height: 48rpx;
+							background-color: #CCC;
+							position: absolute;
+							top: 24rpx;
+							right: 0;
+						}
+					}
+					.item-ri{
+						height: 96rpx;
+						padding-left: 48rpx;
+						float: left;
+						.item-ri-i{
+							padding-right: 60rpx;
+							line-height: 96rpx;
+							font-size: 28rpx;
+							text-align: center;
+							color: #999;
+							float: left;
+							&.none{
+								font-size: 30rpx;
+								color: #FF5B00;
+							}
+						}
+					}
+				}
+			}
+		}
+	}
+</style>

+ 202 - 0
pages/seller/club/components/echart-contact.vue

@@ -0,0 +1,202 @@
+<template>
+	<view class="echart-content">
+		<view class="echart-title">
+			<view class="e-icon e4"><text class="iconfont icon-zixunjilu"></text></view>
+			<view class="e-name">咨询记录</view>
+		</view>
+		<view class="echart-search">
+			<view class="echart-search-text">
+				<view class="search-text">所有:<text>{{ remarksTotal }}条</text></view>
+				<view class="search-text">当前范围:<text>{{ contactData.remarksScopeNum }}条</text></view>
+			</view>
+			<view class="echart-search-date">
+				<view class="echart-search-date-input">
+					<picker
+						mode="date"
+						:value="date"
+						:start="startDate"
+						:end="endDate"
+						@change="bindStartDateChange($event, 2)"
+					>
+						<text class="input-text">{{ contactData.startTime }}</text>
+					</picker>
+					<text class="iconfont icon-riqi"></text>
+				</view>
+				<view class="line">-</view>
+				<view class="echart-search-date-input">
+					<picker
+						mode="date"
+						:value="date"
+						:start="startDate"
+						:end="endDate"
+						@change="bindEndDateChange($event, 2)"
+					>
+						<text class="input-text">{{ contactData.endTime }}</text>
+					</picker>
+					<text class="iconfont icon-riqi"></text>
+				</view>
+			</view>
+			<view class="echart-search-time">
+				<view
+					class="time-tab"
+					v-for="(time, index) in timeList"
+					:class="{ current: current === index }"
+					:key="index"
+					@click="handleTimeClick(time.current, index, 2)"
+					>{{ time.label }}</view
+				>
+			</view>
+		</view>
+		<view class="echart-mains">
+			<view class="echart-mains-none" v-if="isEmpty">
+				<image
+					class="none-image"
+					src="https://static.caimei365.com/app/img/bg/icon_echart_none@2x.png"
+					mode=""
+				></image>
+				<view class="none-text">暂无数据</view>
+			</view>
+			<view class="echart-mains-data" v-else>
+				<qiun-data-charts type="column" :opts="opts" :chartData="contactChartData" :animation="false" />
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+import { mapState, mapMutations } from 'vuex'
+import chartMixin from './mixins/chart.mixin.js'
+export default {
+	mixins: [chartMixin],
+	props:{
+		clubId:{
+			type:Number,
+			default:0
+		},
+		totalNum:{
+			type:Number,
+			default:0
+		}
+	},
+	data() {
+		return {
+			isEmpty:false,
+			current: 0,
+			remarksTotal:0,
+			contactChartData:null,
+			contactData:{
+			    startTime: '',
+			    endTime: '',
+			    remarksScopeNum:0
+			},
+			params:{
+			    clubId:0,//  机构id
+			    dateType:3,//   日期类别 0日 1月 2半年 3全年
+			    startTime:'',//   开始时间
+			    endTime:'',//   结束时间
+			    type:0	//  统计类别 0订单 1搜索关键词 2咨询记录 3访问记录 4初始状态
+			},
+			opts: {
+				legend: {
+					show: false
+				},
+				color: ['#81ecec'],
+				dataLabel: true,
+				padding: [15, 30, 0, 5],
+				enableScroll: false,
+				xAxis: {
+					disableGrid: true,
+					min: 0,
+					axisLine: false,
+					max: 40,
+					rotateLabel: true,
+					format: 'xAxisDemo3'
+				},
+				yAxis: {
+					fontSize: 12,
+					fontColor: '#CCCCCC',
+					axisLineColor: '#DCDCDC',
+					gridColor: '#DCDCDC',
+					boundaryGap: 'justify',
+					disabled: true,
+					axisLine: false,
+					min: 0,
+					max: 40
+				},
+				extra: {
+					column: {
+						type: 'group',
+						width: 20,
+						meterBorde: 1,
+						meterFillColor: '#FFFFFF',
+						activeBgColor: '#000000',
+						activeBgOpacity: 0.08,
+						seriesGap: 2,
+						categoryGap: 3,
+						barBorderCircle: false,
+						linearType: 'custom',
+						linearOpacity: 1,
+						customColor: ['#00cec9', '#81ecec'],
+						colorStop: 0
+					}
+				}
+			}
+		}
+	},
+	created() {
+		this.params.clubId = this.clubId
+		this.remarksTotal = this.totalNum
+		this.userClubPortrait(2)
+	},
+	methods: {
+		handleTimeClick(dateType,index,type) {
+		    //年月日点击
+		    console.log('dateType', dateType)
+		    this.current = index
+		    this.params.dateType = dateType
+			this.params.startTime = ''
+			this.params.endTime = ''
+		    this.userClubPortrait(type)
+		},
+		async userClubPortrait(type){
+			this.params.type = type
+			this.contactData.startTime = this.params.startTime
+			this.contactData.endTime = this.params.endTime
+			try {
+				const res = await this.UserService.userClubPortrait(this.params)
+				const data = res.data
+				this.contactData.remarksScopeNum = data.portrait.remarksScopeNum
+				this.contactData.startTime = this.params.startTime = data.portrait.startTime
+				this.contactData.endTime = this.params.endTime = data.portrait.endTime
+				if(data.remarks){
+					this.isEmpty = false  
+				    this.getSetContactData(data.remarks)
+				}else{
+					this.isEmpty = true  
+				}
+				console.log('contactData',this.contactData)
+			} catch (error) {
+			   this.$util.msg(error.msg, 2000)
+			}
+		},
+		getSetContactData(data) {
+			setTimeout(() => {
+				//模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接
+				let res = {
+					categories:data.name,
+					series: [
+						{
+							name: '',
+							data: data.value
+						}
+					]
+				}
+				this.contactChartData = JSON.parse(JSON.stringify(res))
+			}, 500)
+		}
+	},
+	onShow() {}
+}
+</script>
+
+<style lang="scss"></style>

+ 104 - 0
pages/seller/club/components/echart-info.vue

@@ -0,0 +1,104 @@
+<template>
+	<view class="echart-content"> 
+		<view class="echart-title">
+			<view class="e-icon e1"><text class="iconfont icon-gongsi"></text></view>
+			<view class="e-name">采美信息技术有限公司</view>
+			<view class="e-start">{{ data.status | statusFilters }}</view>
+		</view>
+		<view class="echart-main clearfix" @click="handleClubInfo">
+			<view class="echart-text">
+				<text class="label">联系人:</text>{{ data.linkMan ? data.linkMan :'无' }}
+			</view>
+			<view class="echart-text">
+				<text class="label">手机号:</text>{{ data.contractMobile }}
+			</view>
+			<view class="echart-text" v-if="data.linkManIdentity">
+				<text class="label">联系人身份:</text>{{ data.linkManIdentity | linkManFormat }}
+			</view>
+			<view class="echart-text" v-if="data.firstClubType">
+				<text class="label">机构类型:</text>{{ data.firstClubType | FirstFormat }}-{{ data.secondClubType | TwoFormat }}
+			</view>
+			<view class="echart-text" v-if="data.provincialAddress">
+				<text class="label">地址:</text>{{ data.provincialAddress }}
+			</view>
+			<view class="echart-text" v-if="data.addTime">
+				<text class="label">注册时间:</text> {{ data.addTime }}
+			</view>
+			<view class="echart-next">详情></view>
+		</view>
+	</view>
+</template>
+
+<script>
+import { mapState, mapMutations } from 'vuex'
+export default {
+	props:{
+		clubInfo:{
+			type:Object,
+			default:{}
+		}
+	},
+	data() {
+		return {
+			data:{}
+		}
+	},
+	created() {
+		this.data = this.clubInfo
+	},
+	filters: {
+		FirstFormat(value) {
+			//处理格式
+			const map = {
+				1: '医美',
+				2: '生美',
+				3: '项目公司',
+				4: '个人',
+				5: '其他'
+			}
+			return map[value]
+		},
+		TwoFormat(value) {
+			if(!value){  return ''}
+			const map = {
+				1: '诊所',
+				2: '门诊',
+				3: '医院',
+				4: '其他',
+				5: '美容院',
+				6: '养生馆',
+				7: '其他',
+			}
+			return map[value]
+		},
+		linkManFormat(value) {
+			const map = {
+				1: '老板',
+				2: '采购',
+				3: '运营',
+				4: '其他'
+			}
+			return map[value]
+		},
+		statusFilters(value) {
+			// 状态
+			const map = {
+				1: '待审核',
+				90: '已上线',
+				92: '审核未通过'
+			}
+			return map[value]
+		}
+	},
+	methods: {
+		handleClubInfo(){
+			this.$api.navigateTo(`/pages/seller/club/club-detail?userId=${this.data.userId}`)
+		},
+	},
+	onShow() {}
+}
+</script>
+
+<style lang="scss">
+
+</style>

+ 206 - 0
pages/seller/club/components/echart-keyword.vue

@@ -0,0 +1,206 @@
+<template>
+	<view class="echart-content">
+		<view class="echart-title">
+			<view class="e-icon e3"><text class="iconfont icon-sousuoguanjianci"></text></view>
+			<view class="e-name">搜索关键词</view>
+		</view>
+		<view class="echart-search">
+			<view class="echart-search-text">
+				<view class="search-text"
+					>所有:<text>{{ totalKeywords }}条</text></view
+				>
+				<view class="search-text"
+					>当前范围:<text>{{ keyWordData.keyWordsScopeNum }}条</text></view
+				>
+			</view>
+			<view class="echart-search-date">
+				<view class="echart-search-date-input">
+					<picker
+						mode="date"
+						:value="date"
+						:start="startDate"
+						:end="endDate"
+						@change="bindStartDateChange($event, 1)"
+					>
+						<text class="input-text">{{ keyWordData.startTime }}</text>
+					</picker>
+					<text class="iconfont icon-riqi"></text>
+				</view>
+				<view class="line">-</view>
+				<view class="echart-search-date-input">
+					<picker
+						mode="date"
+						:value="date"
+						:start="startDate"
+						:end="endDate"
+						@change="bindEndDateChange($event, 1)"
+					>
+						<text class="input-text">{{ keyWordData.endTime }}</text>
+					</picker>
+					<text class="iconfont icon-riqi"></text>
+				</view>
+			</view>
+			<view class="echart-search-time">
+				<view
+					class="time-tab"
+					v-for="(time, index) in timeList"
+					:class="{ current: current === index }"
+					:key="index"
+					@click="handleTimeClick(time.current, index, 1)"
+					>{{ time.label }}</view
+				>
+			</view>
+		</view>
+		<view class="echart-mains">
+			<view class="echart-mains-none" v-if="isEmpty">
+				<image
+					class="none-image"
+					src="https://static.caimei365.com/app/img/bg/icon_echart_none@2x.png"
+					mode=""
+				></image>
+				<view class="none-text">暂无数据</view>
+			</view>
+			<view class="echart-mains-data" v-else>
+				<qiun-data-charts type="column" :opts="opts" :chartData="keyWordChartData" :animation="false" />
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+import { mapState, mapMutations } from 'vuex'
+import chartMixin from './mixins/chart.mixin.js'
+export default {
+	mixins: [chartMixin],
+	props:{
+		clubId:{
+			type:Number,
+			default:0
+		},
+		totalNum:{
+			type:Number,
+			default:0
+		}
+	},
+	data() {
+		return {
+			isEmpty:false,
+			current: 0,
+			totalKeywords:0,
+			keyWordChartData: null,
+			keyWordData: {
+				startTime: '',
+				endTime: '',
+				keyWordsScopeNum: 0
+			},
+			params:{
+			    clubId:0,//  机构id
+			    dateType:3,//   日期类别 0日 1月 2半年 3全年
+			    startTime:'',//   开始时间
+			    endTime:'',//   结束时间
+			    type:0	//  统计类别 0订单 1搜索关键词 2咨询记录 3访问记录 4初始状态
+			},
+			opts: {
+				legend: {
+					show: false
+				},
+				color: ['#9370DB'],
+				dataLabel: true,
+				padding: [15, 30, 0, 5],
+				enableScroll: false,
+				xAxis: {
+					disableGrid: true,
+					min: 0,
+					axisLine: false,
+					max: 40,
+					rotateLabel: true,
+					format: 'xAxisDemo3'
+				},
+				yAxis: {
+					fontSize: 12,
+					fontColor: '#CCCCCC',
+					axisLineColor: '#DCDCDC',
+					gridColor: '#DCDCDC',
+					boundaryGap: 'justify',
+					disabled: true,
+					axisLine: false,
+					min: 0,
+					max: 40
+				},
+				extra: {
+					column: {
+						type: 'group',
+						width: 20,
+						meterBorde: 1,
+						meterFillColor: '#FFFFFF',
+						activeBgColor: '#000000',
+						activeBgOpacity: 0.08,
+						seriesGap: 2,
+						categoryGap: 3,
+						barBorderCircle: false,
+						linearType: 'custom',
+						linearOpacity: 1,
+						customColor: ['#7B68EE', '#9370DB'],
+						colorStop: 0
+					}
+				}
+			}
+		}
+	},
+	created() {
+		this.params.clubId = this.clubId
+		this.totalKeywords = this.totalNum
+		this.userClubPortrait(1)
+	},
+	methods: {
+		handleTimeClick(dateType, index,type) {
+			//年月日点击
+			console.log('dateType', dateType)
+			this.current = index
+			this.params.dateType = dateType
+			this.params.startTime = ''
+			this.params.endTime = ''
+			this.userClubPortrait(type)
+		},
+		async userClubPortrait(type){
+			this.params.type = type
+			this.keyWordData.startTime = this.params.startTime
+			this.keyWordData.endTime = this.params.endTime
+			try {
+				const res = await this.UserService.userClubPortrait(this.params)
+				const data = res.data
+				this.keyWordData.keyWordsScopeNum = data.portrait.keyWordsScopeNum
+				this.keyWordData.startTime = this.params.startTime = data.portrait.startTime
+				this.keyWordData.endTime = this.params.endTime = data.portrait.endTime
+				if (data.behavior) {
+					this.isEmpty = false
+					this.getSetKeywordData(data.behavior)
+				}else{
+					this.isEmpty = true  
+				}
+				console.log('keyWordData', this.keyWordData)
+			} catch (error) {
+			   this.$util.msg(error.msg, 2000)
+			}
+		},
+		getSetKeywordData(data) {
+			setTimeout(() => {
+				//模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接
+				let res = {
+					categories: data.name,
+					series: [
+						{
+							name: '',
+							data: data.value
+						}
+					]
+				}
+				this.keyWordChartData = JSON.parse(JSON.stringify(res))
+			}, 500)
+		}
+	},
+	onShow() {}
+}
+</script>
+
+<style lang="scss"></style>

+ 257 - 0
pages/seller/club/components/echart-order.vue

@@ -0,0 +1,257 @@
+<template>
+	<view class="echart-content">
+		<view class="echart-title">
+			<view class="e-icon e2"><text class="iconfont icon-dingdan"></text></view> <view class="e-name">订单</view>
+		</view>
+		<view class="echart-search">
+			<view class="echart-search-text">
+				<view class="search-text">所有:<text>¥{{ orderTotalAmount }}({{ orderTotal }}个)</text></view>
+				<view class="search-text">当前范围:<text>¥{{ orderData.orderScopeTotalFee }}({{ orderData.orderScopeNum }}个)</text></view>
+			</view>
+			<view class="echart-search-date">
+				<view class="echart-search-date-input">
+					<picker
+						mode="date"
+						:value="date"
+						:start="startDate"
+						:end="endDate"
+						@change="bindStartDateChange($event, 0)"
+					>
+						<text class="input-text">{{ orderData.startTime }}</text>
+					</picker>
+					<text class="iconfont icon-riqi"></text>
+				</view>
+				<view class="line">-</view>
+				<view class="echart-search-date-input">
+					<picker
+						mode="date"
+						:value="date"
+						:start="startDate"
+						:end="endDate"
+						@change="bindEndDateChange($event, 0)"
+					>
+						<text class="input-text">{{ orderData.endTime }}</text>
+					</picker>
+					<text class="iconfont icon-riqi"></text>
+				</view>
+			</view>
+			<view class="echart-search-time">
+				<view
+					class="time-tab"
+					v-for="(time, index) in timeList"
+					:class="{ current: current === index }"
+					:key="index"
+					@click="handleTimeClick(time.current, index, 0)"
+					>{{ time.label }}</view
+				>
+			</view>
+		</view>
+		<view class="echart-mains">
+			<view class="echart-mains-none" v-if="isEmpty">
+				<image
+					class="none-image"
+					src="https://static.caimei365.com/app/img/bg/icon_echart_none@2x.png"
+					mode=""
+				></image>
+				<view class="none-text">暂无数据</view>
+			</view>
+			<view class="echart-mains-data" v-else>
+				<qiun-data-charts type="pie" :opts="opts" :chartData="orderChartData" :errorShow="false" />
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+import { mapState, mapMutations } from 'vuex'
+import chartMixin from './mixins/chart.mixin.js'
+export default {
+	mixins: [chartMixin],
+	props:{
+		clubId:{
+			type:Number,
+			default:0
+		},
+		totalAmount:{
+			type:Number,
+			default:0
+		},
+		totalNum:{
+			type:Number,
+			default:0
+		}
+	},
+	data() {
+		return {
+			isEmpty:false,
+			current: 0,
+			orderChartData:null,
+			orderTotal:0,
+			orderTotalAmount:0, 
+			orderData:{
+			    startTime: '',
+			    endTime: '',
+			    orderScopeNum:0,
+				orderScopeTotalFee:0,
+			},
+			params:{
+			    clubId:0,//  机构id
+			    dateType:3,//   日期类别 0日 1月 2半年 3全年
+			    startTime:'',//   开始时间
+			    endTime:'',//   结束时间
+			    type:0	//  统计类别 0订单 1搜索关键词 2咨询记录 3访问记录 4初始状态
+			},
+			opts: {
+				timing: 'easeOut',
+				duration: 50,
+				rotate: false,
+				rotateLock: false,
+				color: [
+					'#1890FF',
+					'#91CB74',
+					'#FAC858',
+					'#EE6666',
+					'#73C0DE',
+					'#3CA272',
+					'#FC8452',
+					'#9A60B4',
+					'#ea7ccc'
+				],
+				padding: [5, 5, 5, 5],
+				fontSize: 13,
+				fontColor: '#666666',
+				dataLabel: true,
+				dataPointShape: true,
+				dataPointShapeType: 'solid',
+				touchMoveLimit: 60,
+				enableScroll: false,
+				enableMarkLine: false,
+				legend: {
+					show: false,
+					position: 'bottom',
+					lineHeight: 25,
+					float: 'bottom',
+					padding: 5,
+					margin: 5,
+					backgroundColor: 'rgba(0,0,0,0)',
+					borderColor: 'rgba(0,0,0,0)',
+					borderWidth: 0,
+					fontSize: 12,
+					fontColor: '#666666',
+					hiddenColor: '#CECECE',
+					itemGap: 10
+				},
+				title: {
+					name: '订单总量',
+					fontSize: 12,
+					color: '#666666',
+					offsetX: 0,
+					offsetY: 0
+				},
+				subtitle: {
+					name: '70%',
+					fontSize: 12,
+					color: '#7cb5ec',
+					offsetX: 0,
+					offsetY: 0
+				},
+				extra: {
+					pie:{
+						activeOpacity: 0.5,
+						activeRadius: 10,
+						offsetAngle: 0,
+						labelWidth: 15,
+						border: true,
+						borderWidth: 3,
+						borderColor: "#FFFFFF",
+						customRadius: 60,
+						linearType: "none"
+					},
+					tooltip: {
+						showBox: true,
+						showArrow: true,
+						showCategory: false,
+						borderWidth: 0,
+						borderRadius: 0,
+						borderColor: '#000000',
+						borderOpacity: 0.7,
+						bgColor: '#000000',
+						bgOpacity: 0.7,
+						gridType: 'solid',
+						dashLength: 4,
+						gridColor: '#CCCCCC',
+						boxPadding: 3,
+						fontSize: 12,
+						lineHeight: 20,
+						fontColor: '#FFFFFF',
+						legendShow: true,
+						legendShape: 'auto',
+						splitLine: true,
+						horizentalLine: false,
+						xAxisLabel: false,
+						yAxisLabel: false,
+						labelBgColor: '#FFFFFF',
+						labelBgOpacity: 0.7,
+						labelFontColor: '#666666'
+					}
+				}
+			}
+		}
+	},
+	created() {
+		this.params.clubId = this.clubId
+		console.log('orderTotal',this.orderTotal)
+		this.orderTotal = this.totalNum
+		this.orderTotalAmount = this.totalAmount
+		this.userClubPortrait(0)
+	},
+	methods: {
+		handleTimeClick(dateType,index,type) {
+		    //年月日点击
+		    console.log('dateType', dateType)
+		    this.current = index
+		    this.params.dateType = dateType
+			this.params.startTime = ''
+			this.params.endTime = ''
+		    this.userClubPortrait(type)
+		},
+		async userClubPortrait(type){
+			this.params.type = type
+			try {
+				const res = await this.UserService.userClubPortrait(this.params)
+				const data = res.data
+				this.orderData.orderScopeNum = data.portrait.orderScopeNum
+				this.orderData.orderScopeTotalFee = data.portrait.orderScopeTotalFee
+				this.orderData.startTime = this.params.startTime = data.portrait.startTime
+				this.orderData.endTime = this.params.endTime = data.portrait.endTime
+				if(data.order){
+					this.isEmpty = false
+				    this.getSetOrderData(data.order)
+				}else{
+					this.isEmpty = true  
+				}
+			} catch (error) {
+			   this.$util.msg(error.msg, 2000)
+			}
+		},
+		getSetOrderData(data) {
+			//模拟从服务器获取数据时的延时
+			setTimeout(() => {
+				//模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接
+				let res = {
+					series: [
+						{
+							format: 'pieDemo1',
+							data: data.orderList
+						}
+					]
+				}
+				this.orderChartData = JSON.parse(JSON.stringify(res))
+			}, 500)
+		}
+	},
+	onShow() {}
+}
+</script>
+
+<style lang="scss"></style>

+ 190 - 0
pages/seller/club/components/echart-service.vue

@@ -0,0 +1,190 @@
+<template>
+	<view class="echart-content">
+		<view class="echart-title">
+			<view class="e-icon e5"><text class="iconfont icon-fangwenjilu"></text></view>
+			<view class="e-name">访问记录</view>
+		</view>
+		<view class="echart-search">
+			<view class="echart-search-date">
+				<view class="echart-search-date-input">
+					<picker
+						mode="date"
+						:value="date"
+						:start="startDate"
+						:end="endDate"
+						@change="bindStartDateChange($event, 3)"
+					>
+						<text class="input-text">{{ serviceData.startTime }}</text>
+					</picker>
+					<text class="iconfont icon-riqi"></text>
+				</view>
+				<view class="line">-</view>
+				<view class="echart-search-date-input">
+					<picker
+						mode="date"
+						:value="date"
+						:start="startDate"
+						:end="endDate"
+						@change="bindEndDateChange($event, 3)"
+					>
+						<text class="input-text">{{ serviceData.endTime }}</text>
+					</picker>
+					<text class="iconfont icon-riqi"></text>
+				</view>
+			</view>
+			<view class="echart-search-time">
+				<view
+					class="time-tab"
+					v-for="(time, index) in timeList"
+					:class="{ current: current === index }"
+					:key="index"
+					@click="handleTimeClick(time.current, index, 3)"
+					>{{ time.label }}</view
+				>
+			</view>
+		</view>
+		<view class="echart-mains">
+			<view class="echart-mains-none" v-if="isEmpty">
+				<image
+					class="none-image"
+					src="https://static.caimei365.com/app/img/bg/icon_echart_none@2x.png"
+					mode=""
+				></image>
+				<view class="none-text">暂无数据</view>
+			</view>
+			<view class="echart-mains-data" v-else>
+				<qiun-data-charts type="column" :opts="opts" :chartData="serviceChartData" :animation="false" />
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+import { mapState, mapMutations } from 'vuex'
+import chartMixin from './mixins/chart.mixin.js'
+export default {
+	mixins: [chartMixin],
+	props:{
+		clubId:{
+			type:Number,
+			default:0
+		}
+	},
+	data() {
+		return {
+			isEmpty:false,
+			current: 0,
+			serviceChartData:null,
+			serviceData:{
+			    startTime: '',
+			    endTime: ''
+			},
+			params:{
+			    clubId:0,//  机构id
+			    dateType:3,//   日期类别 0日 1月 2半年 3全年
+			    startTime:'',//   开始时间
+			    endTime:'',//   结束时间
+			    type:0	//  统计类别 0订单 1搜索关键词 2咨询记录 3访问记录 4初始状态
+			},
+			opts: {
+				legend: {
+					show: false
+				},
+				color: ['#74b9ff'],
+				dataLabel: true,
+				padding: [15, 30, 0, 5],
+				enableScroll: false,
+				xAxis: {
+					disableGrid: true,
+					min: 0,
+					axisLine: false,
+					max: 40,
+					rotateLabel: true,
+					format: 'xAxisDemo3'
+				},
+				yAxis: {
+					fontSize: 12,
+					fontColor: '#CCCCCC',
+					axisLineColor: '#DCDCDC',
+					gridColor: '#DCDCDC',
+					boundaryGap: 'justify',
+					disabled: true,
+					axisLine: false,
+					min: 0,
+					max: 40
+				},
+				extra: {
+					column: {
+						type: 'group',
+						width: 20,
+						meterBorde: 1,
+						meterFillColor: '#FFFFFF',
+						activeBgColor: '#000000',
+						activeBgOpacity: 0.08,
+						seriesGap: 2,
+						categoryGap: 3,
+						barBorderCircle: false,
+						linearType: 'custom',
+						linearOpacity: 1,
+						customColor: ['#0984e3', '#74b9ff'],
+						colorStop: 0
+					}
+				}
+			}
+		}
+	},
+	created() {
+		this.params.clubId = this.clubId
+		this.userClubPortrait(3)
+	},
+	methods: {
+		handleTimeClick(dateType,index,type) {
+		    //年月日点击
+		    console.log('dateType', dateType)
+		    this.current = index
+		    this.params.dateType = dateType
+			this.params.startTime = ''
+			this.params.endTime = ''
+		    this.userClubPortrait(type)
+		},
+		async userClubPortrait(type){
+			this.params.type = type
+			this.serviceData.startTime = this.params.startTime
+			this.serviceData.endTime = this.params.endTime
+			try {
+				const res = await this.UserService.userClubPortrait(this.params)
+				const data = res.data
+				this.serviceData.startTime = this.params.startTime = data.portrait.startTime
+				this.serviceData.endTime = this.params.endTime = data.portrait.endTime
+				if(data.pageType){
+					this.isEmpty = false  
+				    this.getSetServiceData(data.pageType)
+				}else{
+					this.isEmpty = true  
+				}
+				console.log('serviceData',this.serviceData)
+			} catch (error) {
+			   this.$util.msg(error.msg, 2000)
+			}
+		},
+		getSetServiceData(data) {
+			setTimeout(() => {
+				//模拟服务器返回数据,如果数据格式和标准格式不同,需自行按下面的格式拼接
+				let res = {
+					categories: data.name,
+					series: [
+						{
+							name: '',
+							data: data.value
+						}
+					]
+				}
+				this.serviceChartData = JSON.parse(JSON.stringify(res))
+			}, 500)
+		}
+	},
+	onShow() {}
+}
+</script>
+
+<style lang="scss"></style>

+ 56 - 0
pages/seller/club/components/mixins/chart.mixin.js

@@ -0,0 +1,56 @@
+// 机构画像
+import Vue from 'vue'
+const chartMixin = {
+    data() {
+        const currentDate = this.getDate({
+            format: true
+        })
+        return {
+            date: currentDate,
+            timeList: [
+                { label: '全年', current: 3 },
+                { label: '半年', current: 2 },
+                { label: '月', current: 1 },
+                { label: '日', current: 0 }
+            ]
+        }
+    },
+    computed: {
+        startDate() {
+            return this.getDate('start')
+        },
+        endDate() {
+            return this.getDate('end')
+        }
+    },
+    methods: {
+        bindStartDateChange(event,type) {
+            //开始时间
+            console.log('开始时间==>', event.detail.value)
+            this.params.startTime = event.detail.value
+            this.userClubPortrait(type)
+        },
+        bindEndDateChange(event,type) {
+            //结束时间
+            console.log('结束时间==>', event.detail.value)
+            this.params.endTime = event.detail.value
+            this.userClubPortrait(type)
+        },
+        getDate(type) {
+            const date = new Date()
+            let year = date.getFullYear()
+            let month = date.getMonth() + 1
+            let day = date.getDate()
+            if (type === 'start') {
+                year = year - 1
+            } else if (type === 'end') {
+                year = year + 1
+            }
+            month = month > 9 ? month : '0' + month
+            day = day > 9 ? day : '0' + day
+            return `${year}-${month}-${day}`
+        }
+    }
+}
+
+export default chartMixin

+ 225 - 59
pages/seller/club/list.vue

@@ -120,6 +120,15 @@
 										"
 										>{{ club.customerValue }} <text class="iconfont icon-xiayibu"></text
 									></text>
+									<text class="tags-or" @click.stop="handleOrderHistory(club)">
+										<text class="iconfont icon-dingdan"></text> 订单列表
+										<text
+											v-if="club.orderNum > 0"
+											class="opea-badge uni-badge uni-badge-error uni-small uni-badge--small icon-num"
+										>
+											{{ showBadge(club.orderNum) }}
+										</text>
+									</text>
 								</view>
 								<view class="list-ntel" v-if="tabSmallCurrentIndex === 1">
 									<text class="list-link">销售:{{ club.serviceName ? club.serviceName : '' }}</text>
@@ -130,26 +139,59 @@
 								</view>
 							</view>
 						</view>
-						<view class="list-cell-btn">
-							<view class="btn" @click.stop="checkData(club)">修改资料</view>
-							<view class="btn" @click.stop="orderHistory(club)">
-								历史订单
-								<text
-									v-if="club.orderNum > 0"
-									class="opea-badge uni-badge uni-badge-error uni-small uni-badge--small icon-num"
+						<view class="club-list-bot">
+							<template v-if="tabSmallCurrentIndex === 0">
+								<view class="btn" @click.stop="handleClickOper(1, club)">
+									<text class="iconfont icon-jigouhuaxiang"></text> 机构画像</view
 								>
-									{{ showBadge(club.orderNum) }}
-								</text>
-							</view>
-							<view
-								class="btn"
-								v-if="isManage && club.serviceProviderId != 1342"
-								@click.stop="handleReplaceClub(club)"
-								>更换协销</view
-							>
-							<view class="btn" @click.stop="handleClubinfo(club)" v-if="club.recordCount === 1"
-								>注册行为记录</view
-							>
+								<view class="btn" @click.stop="handleClickOper(2, club)">
+									<text class="iconfont icon-tianxie"></text> 填写咨询记录</view
+								>
+								<view class="btn" @click.stop="handleClickOper(3, club)">
+									<text class="iconfont icon-shangcheng"></text>商城访问记录
+								</view>
+								<view
+									class="btn"
+									v-if="tabSmallCurrentIndex === 0"
+									@click.stop="handleShowBubble(club, index)"
+								>
+									<text class="iconfont icon-gengduo2"></text>
+									<view
+										class="btn-bubble"
+										:style="{
+											height: isManage ? '160rpx' : '80rpx',
+											top: isManage ? '-154rpx' : '-76rpx'
+										}"
+										v-if="currentIndex === index && club.bubble"
+									>
+										<view class="btn-view border" @click.stop="handleClickOper(4, club)">
+											<text class="iconfont icon-xiugaiziliao"></text> 修改资料
+										</view>
+										<view
+											class="btn-view"
+											v-if="isManage && club.serviceProviderId != 1342"
+											@click.stop="handleClickOper(5, club)"
+										>
+											<text class="iconfont icon-xiaoshou"></text> 更换协销
+										</view>
+									</view>
+								</view>
+							</template>
+							<template v-if="tabSmallCurrentIndex === 1">
+								<view class="btn" @click.stop="handleClickOper(1, club)">
+									<text class="iconfont icon-jigouhuaxiang"></text> 机构画像</view
+								>
+								<view class="btn" @click.stop="handleClickOper(3, club)">
+									<text class="iconfont icon-tianxie"></text>商城访问记录</view
+								>
+								<view
+									class="btn none"
+									v-if="isManage && club.serviceProviderId != 1342"
+									@click.stop="handleClickOper(5, club)"
+								>
+									<text class="iconfont icon-xiaoshou"></text>更换协销</view
+								>
+							</template>
 						</view>
 					</view>
 					<!--加载loadding-->
@@ -219,7 +261,7 @@ export default {
 	data() {
 		return {
 			listTab: [{ name: '个人机构' }, { name: '资质机构' }],
-			listItemTab: [{ name: '我的机构' }, { name: '组员机构' }, { name: '待分配机构' }],
+			listItemTab: [{ name: '我的机构' }, { name: '组员机构' }],
 			listQuery: Object.assign({}, defaultListQuery),
 			isShowClose: false,
 			isEmpty: false,
@@ -246,7 +288,8 @@ export default {
 				clubId: 0,
 				spId: 0
 			},
-			isShowIndex: false
+			isShowIndex: false,
+			currentIndex: 0
 		}
 	},
 	onLoad(option) {
@@ -272,7 +315,10 @@ export default {
 					if (data.list && data.list.length > 0) {
 						this.isEmpty = false
 						this.hasNextPage = response.data.hasNextPage
-						this.clubList = data.list
+						this.clubList = data.list.map((el, index) => {
+							el.bubble = false
+							return el
+						})
 						this.pullFlag = false
 						setTimeout(() => {
 							this.pullFlag = true
@@ -406,27 +452,49 @@ export default {
 			this.salesParams.spId = data.serviceProviderId
 			this.userClubChoseSales(this.salesParams)
 		},
-		handleReplaceClub(club) {
-			//更换协销
-			this.salesParams.clubId = club.clubId
-			this.isSellerpopup = true
-		},
 		showRightDrawer() {
 			//显示筛选抽屉
 			this.rightDrawer = true
 		},
-		checkData(club) {
-			//修改机构资料
-			switch (this.tabCurrentNum) {
-				case 0:
-					this.$api.navigateTo(`/pages/seller/login/apply?userID=${club.userId}`)
-					break
+		// 按钮操作
+		handleClickOper(type, club) {
+			/**
+			 * 1:机构画像 2:填写咨询记录 3:商城访问记录 4:修改资料 5:更换协销
+			 * */
+
+			console.log('type', type)
+			switch (type) {
 				case 1:
-					this.$api.navigateTo(`/pages/seller/login/information?userID=${club.userId}`)
+					this.$api.navigateTo(`/pages/seller/club/club-portrait?userId=${club.userId}`)
+					break
+				case 2:
+					this.$api.navigateTo(`/pages/seller/remarks/add?userId=${club.userId}`)
+					break
+				case 3:
+					this.$api.navigateTo(`/pages/seller/club/club-info?clubId=${club.clubId}`)
 					break
+				case 4:
+					this.handleReturnPath(club)
+					break
+				case 5:
+					this.handleReplaceClub(club)
+					break
+			}
+		},
+		handleReplaceClub(club) {
+			//更换协销
+			this.salesParams.clubId = club.clubId
+			this.isSellerpopup = true
+		},
+		handleReturnPath(club) {
+			//修改机构资料
+			const tabMap = {
+				0: `/pages/seller/login/apply?userID=${club.userId}`,
+				1: `/pages/seller/login/information?userID=${club.userId}`
 			}
+			this.$api.navigateTo(tabMap[this.tabCurrentNum])
 		},
-		orderHistory(club) {
+		handleOrderHistory(club) {
 			//跳转机构历史订单
 			this.$api.setStorage('orderUserInfo', club)
 			if (this.tabSmallCurrentIndex === 1 || this.tabSmallCurrentIndex === 2) {
@@ -440,10 +508,6 @@ export default {
 				this.$api.navigateTo(`/pages/seller/order/order-historylist?clubId=${club.clubId}&listType=0`)
 			}
 		},
-		handleClubinfo(club) {
-			//跳转机构信息
-			this.$api.navigateTo(`/pages/seller/club/club-info?clubId=${club.clubId}`)
-		},
 		onShowClose() {
 			//输入框失去焦点时触发
 			if (this.listQuery.name != '') {
@@ -471,6 +535,10 @@ export default {
 		},
 		handleNavigateIndex() {
 			this.$api.navigateTo(`/pages/seller/index/index`)
+		},
+		handleShowBubble(club, index) {
+			this.currentIndex = index
+			club.bubble = !club.bubble
 		}
 	},
 	onReachBottom() {
@@ -629,7 +697,7 @@ page,
 .club-main {
 	.list {
 		width: 100%;
-		height: 268rpx;
+		height: 288rpx;
 		padding: 24rpx;
 		box-sizing: border-box;
 		background: #ffffff;
@@ -649,12 +717,12 @@ page,
 					height: 140rpx;
 					border-radius: 8rpx;
 				}
-				.list-id{
+				.list-id {
 					display: inline-block;
 					width: 100%;
 					height: 32rpx;
 					line-height: 32rpx;
-					background: rgba(0,0,0,0.1);
+					background: rgba(0, 0, 0, 0.1);
 					color: #333;
 					position: absolute;
 					top: 0;
@@ -667,7 +735,7 @@ page,
 				}
 			}
 			.list-content {
-				width: 498rpx;
+				width: 530rpx;
 				height: 140rpx;
 				float: left;
 				padding-left: 30rpx;
@@ -725,6 +793,25 @@ page,
 							margin-left: 10rpx;
 						}
 					}
+					.tags-or {
+						display: inline-block;
+						height: 36rpx;
+						box-sizing: border-box;
+						font-size: $font-size-22;
+						color: #1890f9;
+						text-align: center;
+						line-height: 36rpx;
+						position: relative;
+						.opea-badge {
+							position: absolute;
+							right: -30rpx;
+							top: -15rpx;
+						}
+						.icon-xiayibu {
+							font-size: 22rpx;
+							color: #1890f9;
+						}
+					}
 				}
 				.list-ntel {
 					width: 100%;
@@ -746,31 +833,110 @@ page,
 				}
 			}
 		}
-		.list-cell-btn {
+		.club-list-bot {
 			width: 100%;
-			height: 60rpx;
-			display: flex;
-			color: #166ce1;
-			flex-direction: row;
-			align-items: center;
+			height: 80rpx;
 			float: left;
+			background-color: #f7f7f7;
+			border-radius: 8rpx;
 			margin-top: 20rpx;
 			.btn {
-				height: 60rpx;
+				height: 80rpx;
 				box-sizing: border-box;
+				line-height: 80rpx;
 				padding: 0 20rpx;
-				line-height: 60rpx;
-				border-radius: 30rpx;
 				font-size: $font-size-24;
-				color: $text-color;
+				color: #333333;
 				text-align: center;
-				margin: 0 20rpx 0 0;
+				float: left;
 				position: relative;
-				border: 1px solid #999999;
-				.opea-badge {
-					position: absolute;
-					right: -10rpx;
-					top: -20rpx;
+				
+				&:nth-child(1) {
+					&:before {
+						content: '';
+						width: 1px;
+						height: 20rpx;
+						background-color: #b2b2b2;
+						position: absolute;
+						right: 0;
+						top: 30rpx;
+					}
+				}
+				&:nth-child(2) {
+					&:before {
+						content: '';
+						width: 1px;
+						height: 20rpx;
+						background-color: #b2b2b2;
+						position: absolute;
+						right: 0;
+						top: 30rpx;
+					}
+				}
+				&:nth-child(3) {
+					&:before {
+						content: '';
+						width: 1px;
+						height: 20rpx;
+						background-color: #b2b2b2;
+						position: absolute;
+						right: 0;
+						top: 30rpx;
+					}
+				}
+				&:last-child {
+					padding: 0 28rpx;
+					.iconfont {
+						font-weight: bold;
+					}
+					.btn-bubble {
+						width: 200rpx;
+						height: 160rpx;
+						background: rgba(51, 51, 51, 0.8);
+						position: absolute;
+						top: -154rpx;
+						right: 0;
+						border-radius: 8rpx;
+						&:before {
+							content: '';
+							width: 0;
+							height: 0;
+							border: 15rpx solid transparent;
+							border-top: 15rpx solid rgba(51, 51, 51, 0.8);
+							position: absolute;
+							bottom: -26rpx;
+							right: 35rpx;
+						}
+						.btn-view {
+							width: 100%;
+							height: 80rpx;
+							box-sizing: border-box;
+							line-height: 80rpx;
+							font-size: $font-size-24;
+							color: #ffffff;
+							text-align: center;
+							float: left;
+							.iconfont {
+								font-size: 28rpx;
+								color: #ffffff;
+								margin-right: 5rpx;
+								font-weight: normal;
+							}
+							&.border {
+								border-bottom: 1px solid rgba(255, 255, 255, 0.3);
+							}
+						}
+					}
+				}
+				&.none{
+					&::before{
+						background-color: #f7f7f7 !important;
+					}
+				}
+				.iconfont {
+					font-size: 30rpx;
+					color: #333333;
+					margin-right: 5rpx;
 				}
 			}
 		}

+ 2 - 2
pages/seller/components/cm-clubmodal.vue

@@ -248,7 +248,7 @@ export default {
 							color: #b2b2b2;
 						}
 						&.icon-yixuanze {
-							color: #e15616;
+							color: #FF5B00;
 						}
 					}
 				}
@@ -318,7 +318,7 @@ export default {
 				color: #333333;
 			}
 			&.confirm{
-				border-color: #E15616;
+				border-color: #FF5B00;
 				background: $btn-confirm;
 				color: #FFFFFF;
 			}

+ 1 - 1
pages/seller/components/cm-clubpopup.vue

@@ -350,7 +350,7 @@ export default {
 							color: #b2b2b2;
 						}
 						&.icon-yixuanze {
-							color: #e15616;
+							color: #FF5B00;
 						}
 					}
 				}

+ 1 - 1
pages/seller/components/cm-goods-popup.vue

@@ -318,7 +318,7 @@ export default {
 							color: #b2b2b2;
 						}
 						&.icon-yixuanze {
-							color: #e15616;
+							color: #FF5B00;
 						}
 					}
 				}

+ 1 - 1
pages/seller/components/cm-refereepopup.vue

@@ -274,7 +274,7 @@ export default {
 							color: #b2b2b2;
 						}
 						&.icon-yixuanze {
-							color: #e15616;
+							color: #FF5B00;
 						}
 					}
 				}

+ 3 - 3
pages/seller/components/cm-report-popup.vue

@@ -15,7 +15,7 @@
 								v-model="listQuery.keyWord"
 								@input="onShowClose"
 								@confirm="userClubReportList()"
-								placeholder="搜索商品名称 / 报备关键词"
+								placeholder="搜索商品名称 / 报备关键词"
 								maxlength="16"
 							/>
 							<text class="iconfont icon-shanchu1" v-if="isShowClose" @click="delInputText()"></text>
@@ -487,7 +487,7 @@ export default {
 								color: #b2b2b2;
 							}
 							&.icon-yixuanze {
-								color: #e15616;
+								color: #FF5B00;
 							}
 						}
 					}
@@ -515,7 +515,7 @@ export default {
 			height: 48rpx;
 			line-height: 48rpx;
 			text-align: center;
-			color: #e15616;
+			color: #FF5B00;
 			font-size: $font-size-26;
 			margin: 0 auto;
 			margin-top: 15rpx;

+ 2 - 2
pages/seller/components/cm-screen-drawer.vue

@@ -459,7 +459,7 @@ export default {
 					color: #666666;
 				}
 				.icon-riqi{
-					color: #E15616;
+					color: #FF5B00;
 					display: block;
 					width: 40rpx;
 					height: 56rpx;
@@ -497,7 +497,7 @@ export default {
 				-webkit-box-orient: vertical;
 				&.checked {
 					background-color: #fef6f3;
-					color: #e15616;
+					color: #FF5B00;
 				}
 				&:nth-child(3n) {
 					margin-right: 0;

+ 2 - 2
pages/seller/components/cm-seller-popup.vue

@@ -168,7 +168,7 @@ export default {
 		box-sizing: border-box;
 		float: left;
 		font-size: 26rpx;
-		color: #e15616;
+		color: #FF5B00;
 	}
 	.tui-popup-main {
 		width: 100%;
@@ -211,7 +211,7 @@ export default {
 							color: #b2b2b2;
 						}
 						&.icon-yixuanze {
-							color: #e15616;
+							color: #FF5B00;
 						}
 					}
 				}

+ 2 - 2
pages/seller/login/apply.vue

@@ -211,7 +211,7 @@
 				<view class="register-from radio">
 					<radio-group @change="radioChange">
 						<label class="row-label-input" v-for="(item, index) in beautyList" :key="item.value">
-							<radio class="row-radio" :value="item.value" :checked="index === current" color="#E15616" />
+							<radio class="row-radio" :value="item.value" :checked="index === current" color="#FF5B00" />
 							<view class="row-text">{{ item.name }}</view>
 						</label>
 					</radio-group>
@@ -221,7 +221,7 @@
 				<view class="register-from radio">
 					<radio-group @change="radioChange">
 						<label class="row-label-input" v-for="(item, index) in beautyLists" :key="item.value">
-							<radio class="row-radio" :value="item.value" :checked="index === current" color="#E15616" />
+							<radio class="row-radio" :value="item.value" :checked="index === current" color="#FF5B00" />
 							<view class="row-text">{{ item.name }}</view>
 						</label>
 					</radio-group>

+ 2 - 2
pages/seller/login/information.vue

@@ -168,7 +168,7 @@
 				<view class="register-from radio">
 					<radio-group @change="radioChange">
 						<label class="row-label-input" v-for="(item, index) in beautyList" :key="item.value">
-							<radio class="row-radio" :value="item.value" :checked="index === current" color="#E15616"/>
+							<radio class="row-radio" :value="item.value" :checked="index === current" color="#FF5B00"/>
 							<view class="row-text">{{item.name}}</view>
 						</label>
 					</radio-group>
@@ -178,7 +178,7 @@
 				<view class="register-from radio">
 					<radio-group @change="radioChange">
 						<label class="row-label-input" v-for="(item, index) in beautyLists" :key="item.value">
-							<radio class="row-radio" :value="item.value" :checked="index === current" color="#E15616"/>
+							<radio class="row-radio" :value="item.value" :checked="index === current" color="#FF5B00"/>
 							<view class="row-text">{{item.name}}</view>
 						</label>
 					</radio-group>

+ 8 - 15
pages/seller/login/login.vue

@@ -2,8 +2,7 @@
 	<view class="container login" :style="{paddingTop:CustomBar+'px'}" v-if="isSeller">
 		<cu-custom :navbar-data='nvabarData'  @navigateBack="hanldNavigateBack"></cu-custom>
 		<view class="login-main">
-			<image class="logo" src="https://static.caimei365.com/app/img/icon/login-logo@3x.png" mode=""></image>
-			<text class="logo-text">生美/医美采购服务平台</text>
+			<image class="logo" src="https://static.caimei365.com/app/img/icon/logo@2x.png" mode=""></image>
 		</view>
 		<view class="login-form">
 			<view class="login-input">
@@ -145,25 +144,19 @@
 		.model-warp.show{
 			display: block;
 		}
-		.login-main{
+		.login-main {
 			width: 100%;
 			display: flex;
 			flex-direction: column;
 			align-items: center;
-			height: 198rpx;
-			padding: 170rpx 0 60rpx 0;
-			.logo{
-				width: 138rpx;
-				height: 118rpx;
+			height: 284rpx;
+			padding: 60rpx 0 40rpx 0;
+			margin-bottom: 70rpx;
+			.logo {
+				width: 611rpx;
+				height: 284rpx;
 				display: block;
 			}
-			.logo-text{
-				font-size: 30rpx;
-				line-height: 44rpx;
-				color: $color-system;
-				font-weight: 600;
-				margin-top: 20rpx;
-			}
 		}
 		.login-input{
 			width: 600rpx;

+ 4 - 4
pages/seller/login/register-member.vue

@@ -144,7 +144,7 @@
 			<view class="main-form-item picker">
 				<radio-group @change="bindPickerChange">
 					<label class="label-radio" v-for="(item, index) in radioGroup1" :key="item.value">
-						<radio class="row-radio" :value="item.value" :checked="index === current" color="#E15616" />
+						<radio class="row-radio" :value="item.value" :checked="index === current" color="#FF5B00" />
 						<view class="row-text">{{ item.name }}</view>
 					</label>
 				</radio-group>
@@ -220,7 +220,7 @@
 							<checkbox
 								class="item-checkbox"
 								:value="item.value"
-								color="#E15616"
+								color="#FF5B00"
 								style="transform:scale(0.7)"
 								:checked="item.checked"
 							></checkbox>
@@ -252,7 +252,7 @@
 							<checkbox
 								class="item-checkbox"
 								:value="item.value"
-								color="#E15616"
+								color="#FF5B00"
 								style="transform:scale(0.7)"
 								:checked="item.checked"
 							></checkbox>
@@ -1138,7 +1138,7 @@ page {
 					background-color: #ffe6dc;
 					line-height: 64rpx;
 					text-align: center;
-					color: #e15616;
+					color: #FF5B00;
 					font-size: $font-size-28;
 					float: right;
 				}

+ 1 - 1
pages/seller/login/register.vue

@@ -135,7 +135,7 @@
 				<view class="register-from radio">
 					<radio-group @change="radioChange">
 						<label class="row-input" v-for="(item, index) in beautyList" :key="item.value">
-							<radio class="row-radio" :value="item.value" :checked="index === current" color="#E15616"/>
+							<radio class="row-radio" :value="item.value" :checked="index === current" color="#FF5B00"/>
 							<view class="row-text">{{item.name}}</view>
 						</label>
 					</radio-group>

+ 1 - 1
pages/seller/order/components/sellerClubVisible.vue

@@ -18,7 +18,7 @@
 								<radio
 									:value="item.value"
 									:checked="index === current"
-									color="#E15616"
+									color="#FF5B00"
 									style="transform:scale(0.7)"
 								/>
 							</view>

+ 2 - 2
pages/seller/order/components/sellerDetaileButton.vue

@@ -229,7 +229,7 @@
 					width: 160rpx;
 					height: 34rpx;
 					padding: 10rpx 10rpx;
-					background:#E15616;
+					background:#FF5B00;
 					border-radius: 8rpx;
 					position: absolute;
 					color: #FFFFFF;
@@ -242,7 +242,7 @@
 						content: "";
 						width: 25rpx;
 						height: 25rpx;
-						background:#E15616;
+						background:#FF5B00;
 						position: absolute;
 						bottom: -8rpx;
 						left: 30rpx;

+ 1 - 1
pages/seller/order/components/sellerFreight.vue

@@ -19,7 +19,7 @@
 					<view class="freight-radio">
 						<radio-group class="row-group" @change="radioChange">
 							<label class="row-input" v-for="(item, index) in freightList" :key="item.value">
-								<radio class="row-radio" :value="item.value" :checked="index === current" color="#E15616"/>
+								<radio class="row-radio" :value="item.value" :checked="index === current" color="#FF5B00"/>
 								<view class="row-text">{{item.name}}</view>
 							</label>
 						</radio-group>

+ 3 - 3
pages/seller/order/components/sellerInvoice.vue

@@ -21,7 +21,7 @@
 					<view class="invoice-radio">
 						<radio-group class="row-group" @change="radioChange">
 							<label class="row-input" v-for="(item, index) in invoiceTypeList" :key="item.value">
-								<radio class="row-radio" :value="item.value" :checked="index === current" color="#E15616"/>
+								<radio class="row-radio" :value="item.value" :checked="index === current" color="#FF5B00"/>
 								<view class="row-text">{{item.name}}</view>
 							</label>
 						</radio-group>
@@ -62,14 +62,14 @@
 						<view class="invoice-group tit">
 							<checkbox-group class="row-group" @change="checkboxChange">
 								<view class="text">商品明细</view>
-								<checkbox class="row-radio" value="明细"  :checked="inventoryChecked" color="#E15616"></checkbox>
+								<checkbox class="row-radio" value="明细"  :checked="inventoryChecked" color="#FF5B00"></checkbox>
 							</checkbox-group>
 						</view>
 						<view class="invoice-ltitle">发票抬头</view>
 						<view class="invoice-group tit">
 							<radio-group class="row-group radio" @change="radioChangeTitle">
 								<label class="row-input" v-for="(item, index) in invoiceTitleList" :key="item.value">
-									<radio class="row-radio" :value="item.value" :checked="index === titleCurrent" color="#E15616"/>
+									<radio class="row-radio" :value="item.value" :checked="index === titleCurrent" color="#FF5B00"/>
 									<view class="row-text">{{item.name}}</view>
 								</label>
 							</radio-group>

+ 2 - 2
pages/seller/order/components/sellerOrderButton.vue

@@ -191,7 +191,7 @@
 					width: 160rpx;
 					height: 34rpx;
 					padding: 10rpx 10rpx;
-					background:#E15616;
+					background:#FF5B00;
 					border-radius: 8rpx;
 					position: absolute;
 					color: #FFFFFF;
@@ -204,7 +204,7 @@
 						content: "";
 						width: 25rpx;
 						height: 25rpx;
-						background:#E15616;
+						background:#FF5B00;
 						position: absolute;
 						bottom: -8rpx;
 						left: 30rpx;

+ 1 - 1
pages/seller/order/components/sellerRegulations.vue

@@ -19,7 +19,7 @@
 						<radio-group class="row-group" @change="radioChange">
 							<label class="row-input" v-for="(item, index) in regulaDatas" :key="index">
 								<view class="row-text" @click.stop="gotoConten(item)">{{item.name.length>10?item.name.substring(0,10)+'...':item.name}}</view>
-								<radio class="row-radio" :value="item.id" color="#E15616"/>
+								<radio class="row-radio" :value="item.id" color="#FF5B00"/>
 							</label>
 						</radio-group>
 					</view>

+ 3 - 3
pages/seller/order/create-order.vue

@@ -184,7 +184,7 @@
 						text: '继续提交',
 						customStyle: {
 							color: '#fff',
-							bgColor: 'linear-gradient(90deg, #F28F31 0%, #E15616 100%)'
+							bgColor: 'linear-gradient(90deg, #F28F31 0%, #FF5B00 100%)'
 						},
 						plain: false
 					}
@@ -555,7 +555,7 @@
 							contentModalText :  '订单内存在械字号三类商品,需要拥有医疗执业许可证的医美机构才能购买。建议升级医美机构后再下单,否则会导致订单退款或影响发货。',
 							modalButton :  [
 								{ text: '取消',  type: 'gray', plain: true },
-								{ text: '继续提交', customStyle: { color: '#fff', bgColor: 'linear-gradient(90deg, #F28F31 0%, #E15616 100%)' },plain: false }
+								{ text: '继续提交', customStyle: { color: '#fff', bgColor: 'linear-gradient(90deg, #F28F31 0%, #FF5B00 100%)' },plain: false }
 							]
 						}
 				}
@@ -872,7 +872,7 @@
 				width: 100%;
 				height: 100%;
 				color: #FFFFFF;
-				background:linear-gradient(135deg,rgba(242,143,49,1) 0%,rgba(225,86,22,1) 100%);
+				background:linear-gradient(90deg, #FF9300 0%, #FF5B00 100%);
 				font-size: $font-size-26;
 				text-align: center;
 				line-height: 80rpx;

+ 1 - 1
pages/seller/order/order-details.vue

@@ -734,7 +734,7 @@ page {
 }
 .return-instructions{
     font-size: 26rpx;
-    color: #E15616;
+    color: #FF5B00;
     line-height: 42rpx;
     padding: 32rpx 50rpx;
     background-color: #FFFAF8;

+ 4 - 4
pages/seller/remarks/add-record.vue

@@ -891,7 +891,7 @@ page {
 					font-size: $font-size-48;
 				}
 				.icon-shanchu4 {
-					color: #e15616;
+					color: #FF5B00;
 					font-size: $font-size-48;
 				}
 			}
@@ -911,7 +911,7 @@ page {
 			float: left;
 			.icon-yixuanze{
 				margin-right: 10rpx;
-				color: #E15616;
+				color: #FF5B00;
 			}
 			.icon-weixuanze{ 
 				margin-right: 10rpx;
@@ -1010,7 +1010,7 @@ page {
 				border-radius: 8rpx;
 				background-color: #fff2ec;
 				font-size: $font-size-24;
-				color: #e15616;
+				color: #FF5B00;
 				line-height: 44rpx;
 				text-align: center;
 				float: left;
@@ -1086,7 +1086,7 @@ page {
 		height: 88rpx;
 		line-height: 88rpx;
 		text-align: center;
-		color: #e15616;
+		color: #FF5B00;
 		font-size: $font-size-24;
 	}
 	.edit-button {

+ 4 - 4
pages/seller/remarks/add.vue

@@ -985,7 +985,7 @@ page {
 					font-size: $font-size-48;
 				}
 				.icon-shanchu4 {
-					color: #e15616;
+					color: #FF5B00;
 					font-size: $font-size-48;
 				}
 			}
@@ -1005,7 +1005,7 @@ page {
 			float: left;
 			.icon-yixuanze {
 				margin-right: 10rpx;
-				color: #e15616;
+				color: #FF5B00;
 			}
 			.icon-weixuanze {
 				margin-right: 10rpx;
@@ -1103,7 +1103,7 @@ page {
 				border-radius: 8rpx;
 				background-color: #fff2ec;
 				font-size: $font-size-24;
-				color: #e15616;
+				color: #FF5B00;
 				line-height: 44rpx;
 				text-align: center;
 				float: left;
@@ -1179,7 +1179,7 @@ page {
 		height: 88rpx;
 		line-height: 88rpx;
 		text-align: center;
-		color: #e15616;
+		color: #FF5B00;
 		font-size: $font-size-24;
 	}
 	.edit-button {

+ 3 - 3
pages/seller/remarks/customer-list.vue

@@ -94,7 +94,7 @@ export default {
 					text: '确认',
 					customStyle: {
 						color: '#fff',
-						bgColor: 'linear-gradient(90deg, #F28F31 0%, #E15616 100%)'
+						bgColor: 'linear-gradient(90deg, #F28F31 0%, #FF5B00 100%)'
 					},
 					plain: false
 				}
@@ -399,7 +399,7 @@ page {
 						color: #b2b2b2;
 					}
 					&.icon-yixuanze {
-						color: #e15616;
+						color: #FF5B00;
 					}
 				}
 			}
@@ -451,7 +451,7 @@ page {
 		height: 48rpx;
 		line-height: 48rpx;
 		text-align: center;
-		color: #e15616;
+		color: #FF5B00;
 		font-size: $font-size-26;
 		margin: 0 auto;
 	}

+ 3 - 3
pages/seller/remarks/details.vue

@@ -264,7 +264,7 @@ export default {
 								uni.showModal({
 									content: '不支持的文件预览',
 									cancelColor: '#666',
-									confirmColor: '#E15616'
+									confirmColor: '#FF5B00'
 								})
 							}
 							uni.hideLoading()
@@ -391,7 +391,7 @@ page {
 				color: #0db26d;
 				font-size: 26rpx;
 				&.reviewed{
-					color: #E15616;
+					color: #FF5B00;
 				}
 				&.approved{
 					color: #0DB26D;
@@ -494,7 +494,7 @@ page {
 				width: 96rpx;
 				height: 44rpx;
 				font-size: $font-size-24;
-				color: #e15616;
+				color: #FF5B00;
 				line-height: 44rpx;
 				text-align: center;
 				float: left;

Некоторые файлы не были показаны из-за большого количества измененных файлов