8 Commity 1f1fb47b0e ... a6e0bc6ec5

Autor SHA1 Wiadomość Data
  huangzhe a6e0bc6ec5 登录授权,优惠券样式、销售端提成明细 3 lat temu
  huangzhe baeb84f8f2 修改添加客户问题 3 lat temu
  一懒众山小 cfde498aa9 h 3 lat temu
  一懒众山小 c44de6a331 Merge branch 'master' of gitee.com:huangzhe-52410/huixiang-home 3 lat temu
  一懒众山小 8f5a7f2691 UI 3 lat temu
  huangzhe 1a60dd585f 销售端我的消息、UI调整、其他功能细节完善 3 lat temu
  huangzhe b79df16b9e 修改页面还原度问题 3 lat temu
  huangzhe 8a60df9ba6 小bug修改 3 lat temu
66 zmienionych plików z 1404 dodań i 516 usunięć
  1. 82 8
      src/components/basic-component/app-layout/app-user-login/app-user-login.vue
  2. 2 32
      src/components/basic-component/app-tab-bar/app-tab-bar.vue
  3. 1 1
      src/components/basic-component/app-tab-nav/app-tab-nav.vue
  4. 1 0
      src/components/page-component/app-area-picker/app-area-picker.vue
  5. 20 3
      src/components/page-component/app-no-goods/app-no-goods.vue
  6. 3 2
      src/components/page-component/app-order-goods-info/app-order-goods-info.vue
  7. 2 2
      src/components/page-component/app-user-center-top/app-user-center-top.vue
  8. 5 5
      src/components/page-component/goods/bd-service.vue
  9. 7 4
      src/components/page-component/goods/u-attr.vue
  10. 1 1
      src/components/page-component/index/app-nav-bar.vue
  11. 4 1
      src/core/apiUrl.js
  12. 23 8
      src/pages.json
  13. 4 1
      src/pages/binding/app-phone-binding/app-phone-binding.vue
  14. 18 13
      src/pages/case/appointment/appointment-form.vue
  15. 18 4
      src/pages/case/appointment/appointment-list.vue
  16. 4 3
      src/pages/case/components/hxj-bd-info.vue
  17. 16 3
      src/pages/case/hot_sale_project.vue
  18. 56 43
      src/pages/case/projectInfo.vue
  19. 7 3
      src/pages/coupon/details/app-details.vue
  20. 31 11
      src/pages/coupon/index/index.vue
  21. 77 4
      src/pages/coupon/list/list.vue
  22. 6 8
      src/pages/favorite/favorite.vue
  23. 5 5
      src/pages/index/binding/binding.vue
  24. 28 16
      src/pages/index/binding/bindingSale.vue
  25. 89 8
      src/pages/index/hxj_index_component.vue
  26. 4 2
      src/pages/index/index.scss
  27. 9 4
      src/pages/index/index.vue
  28. 15 5
      src/pages/order-submit/app-submit-goods.vue
  29. 8 8
      src/pages/order-submit/invoice/invoice.vue
  30. 3 3
      src/pages/order-submit/invoice/invoiceAddr.vue
  31. 44 34
      src/pages/order-submit/order-submit.vue
  32. 37 18
      src/pages/order/index/index.vue
  33. 3 3
      src/pages/sale/components/app-my-income.vue
  34. 6 3
      src/pages/sale/cusmter/addCustomer.vue
  35. 1 1
      src/pages/sale/cusmter/info.vue
  36. 5 3
      src/pages/sale/cusmter/list.vue
  37. 87 0
      src/pages/sale/myCommission.vue
  38. 56 30
      src/pages/sale/mySaleOrder.vue
  39. 68 7
      src/pages/sale/news/news.vue
  40. 6 2
      src/pages/sale/properties/addProperties.vue
  41. 116 38
      src/pages/sale/properties/properties.vue
  42. 32 24
      src/pages/sale/sale-user-center.vue
  43. 4 1
      src/pages/sale/salePersonInfo.vue
  44. 7 1
      src/pages/sale/sale_login/sale_login.vue
  45. 102 25
      src/pages/search/search.vue
  46. 6 6
      src/pages/share/index/index.vue
  47. 1 1
      src/pages/user-center/evaluate/list.vue
  48. 145 0
      src/pages/user-center/privacyAgreement/privacyAgreement.vue
  49. 1 1
      src/pages/user-center/user-center.vue
  50. 1 1
      src/plugins/composition/components/app-add-subtract/app-add-subtract.vue
  51. 3 3
      src/plugins/composition/components/app-bd-info/app-bd-info.vue
  52. 42 39
      src/plugins/composition/components/app-list/app-list.vue
  53. 2 2
      src/plugins/composition/detail/detail.vue
  54. 1 1
      src/plugins/pt/order/order.vue
  55. 19 1
      src/static/css/hxj.scss
  56. BIN
      src/static/image.zip
  57. BIN
      src/static/image/index/auth-default.png
  58. BIN
      src/static/image/index/detail-tell.png
  59. BIN
      src/static/image/index/icon-favorite-active.png
  60. BIN
      src/static/image/index/icon-favorite.png
  61. BIN
      src/static/image/index/msg.png
  62. BIN
      src/static/image/index/no-pt-order.png
  63. BIN
      src/static/image/sale/cart.png
  64. BIN
      src/static/image/sale/cart_select.png
  65. BIN
      src/static/image/sale/tcff.png
  66. 60 60
      vue.config.js

+ 82 - 8
src/components/basic-component/app-layout/app-user-login/app-user-login.vue

xqd xqd xqd xqd
@@ -1,26 +1,37 @@
 <template>
     <view class="login-1 dir-left-nowrap main-center cross-center" :class="showLoginModal ? 'show' : ''">
         <view class="login-content">
-            <image :src="auth_page && auth_page.pic_url" class="login-img"></image>
+            <image :src="'https://t17.9026.com/web/statics/image/index/auth-default.png'" class="login-img"></image>
             <view>
                 <app-hotspot :hotspot="auth_page.hotspot_link">
                     <button class="login-btn" @click="link"></button>
                 </app-hotspot>
             </view>
             <view>
-                <app-hotspot :hotspot="auth_page.hotspot_cancel">
-                    <button class="login-btn" @click="cancel"></button>
+                <app-hotspot :hotspot="hotspot_cancel">
+                    <button class="login-btn" @click="cancel" ></button>
                 </app-hotspot>
             </view>
+			<view>
+			    <app-hotspot :hotspot="userprivacy">
+			        <view class="main-left cross-center login-userprivacy">
+						<view class="login-userprivacy-radio" @click="isAgreeUserprivacy=!isAgreeUserprivacy" :style="{'border':`2px solid ${isAgreeUserprivacy?'#EA554D':'#CDCDCD'}`}">
+							<view class="login-userprivacy-radio-check" v-show="isAgreeUserprivacy"  @click.stop="isAgreeUserprivacy=!isAgreeUserprivacy"></view>
+						</view>
+						<text  @click="isAgreeUserprivacy=!isAgreeUserprivacy">登录即表示同意</text> 
+						<text style="color: #EE5C52;margin-left: 5rpx;" @click="$jump({'open_type':'navigate','url':'/pages/user-center/privacyAgreement/privacyAgreement'})">用户隐私协议</text>
+					</view>
+			    </app-hotspot>
+			</view>
             <view>
-                <app-hotspot :hotspot="auth_page.hotspot">
+                <app-hotspot :hotspot="hotspot">
                     <!-- #ifdef MP -->
                     <button class="login-btn" v-if="canIUseGetUserProfile"
                             scope="userInfo"
                             @click="getUserInfoClick"
                     >
                     </button>
-                    <button class="login-btn" v-else
+                    <button class="login-btn"  v-else
                             :open-type="openType"
                             scope="userInfo"
                             @getAuthorize="getUserInfo"
@@ -49,7 +60,40 @@
             appHotspot,
         },
         data() {
-            return {};
+            return {
+				isAgreeUserprivacy:false,
+				userprivacy:{
+					defaultX: "84",
+					defaultY: "560",
+					height: "80",
+					width: "450",
+					left: "84",
+					link: "",
+					open_type: "cancel",
+					top: "560",
+					
+				},
+				hotspot:{
+					defaultX: "354",
+					defaultY: "642",
+					height: "80",
+					left: "354",
+					link: "",
+					open_type: "cancel",
+					top: "642",
+					width: "224",
+				},
+				hotspot_cancel:{
+					defaultX: "72",
+					defaultY: "642",
+					height: "80",
+					left: "72",
+					link: "",
+					open_type: "cancel",
+					top: "642",
+					width: "224",
+				}
+			};
         },
         computed: {
             openType() {
@@ -129,6 +173,13 @@
             },
             // #ifdef MP
             getUserInfoClick(e) {
+				if(!this.isAgreeUserprivacy){
+					uni.showToast({
+						title:'请勾选用户隐私协议',
+						icon:'none'
+					})
+					return
+				}
 				this.$store.commit("user/showLoginModal", false);
                 // #ifdef MP-TOUTIAO
                 this.getUserInfo(e);
@@ -284,13 +335,36 @@
         .login-content {
             position: relative;
             width: #{650rpx};
-            height: #{700rpx};
+            height: #{770rpx};
         }
 
         .login-img {
             width: #{650rpx};
-            height: #{700rpx};
+            height: #{770rpx};
         }
+		.login-userprivacy{
+			font-size: 24rpx;
+			font-weight: 500;
+			color: #333333;
+			.login-userprivacy-radio{
+				width: 28rpx;
+				height: 28rpx;
+				border-radius: 50%;
+				border: 2px solid #CDCDCD;
+				margin-right: 8rpx;
+				position: relative;
+				.login-userprivacy-radio-check{
+					width: 16rpx;
+					height: 16rpx;
+					border-radius: 50%;
+					background-color: #EA554D;
+					position: absolute;
+					left: 50%;
+					top: 50%;
+					transform: translate(-50%,-50%);
+				}
+			}
+		}
     }
 
     .login-1.show {

+ 2 - 32
src/components/basic-component/app-tab-bar/app-tab-bar.vue

xqd xqd xqd
@@ -35,24 +35,6 @@
 							"icon": "https://t17.9026.com/web/statics/image/sale/sale_home.png",
 							"id": 1,
 							"key": "",
-							// "link": {
-							// 	"icon": "https://t1.9026.com/web/statics/img/mall/pick-link/icon-cats.png",
-							// 	"id": "22",
-							// 	"name": "分类",
-							// 	"new_link_url": "/pages/cats/cats?cat_id=",
-							// 	"open_type": "navigate",
-							// 	"params": [{
-							// 		"data_type": "number",
-							// 		"desc": "请选择分类",
-							// 		"is_required": "false",
-							// 		"key": "cat_id",
-							// 		"page_url": "mall/cat/index",
-							// 		"page_url_text": "商品管理->分类",
-							// 		"value": ""
-							// 	}],
-							// 	"type": "base",
-							// 	"value": "/pages/cats/cats"
-							// },
 							"open_type": "redirect",
 							"text": "代客下单",
 							"url": "/pages/cats/cats"
@@ -69,9 +51,9 @@
 						},
 						{
 							"active_color": "#A18353",
-							"active_icon": "https://t17.9026.com/web/statics/image/sale/sale_order_select.png",
+							"active_icon": "https://t17.9026.com/web/statics/image/sale/cart_select.png",
 							"color": "#989898",
-							"icon": "https://t17.9026.com/web/statics/image/sale/sale_order.png",
+							"icon": "https://t17.9026.com/web/statics/image/sale/cart.png",
 							"id": 3,
 							"open_type": "redirect",
 							"text": "购物车",
@@ -84,18 +66,6 @@
 							"icon": "https://t17.9026.com/web/statics/image/sale/sale_my.png",
 							"id": 4,
 							"key": "",
-							// "link": {
-							// 	"icon": "https://t1.9026.com/web/statics/img/mall/pick-link/icon-user-center.png",
-							// 	"id": "24",
-							// 	"ignore": [
-							// 		"title"
-							// 	],
-							// 	"name": "用户中心",
-							// 	"new_link_url": "/pages/user-center/user-center",
-							// 	"open_type": "navigate",
-							// 	"type": "base",
-							// 	"value": "/pages/user-center/user-center"
-							// },
 							"open_type": "redirect",
 							"text": "我的",
 							"url": "/pages/sale/sale-user-center"

+ 1 - 1
src/components/basic-component/app-tab-nav/app-tab-nav.vue

xqd
@@ -23,7 +23,7 @@
                     :class="[item.id == activeItem ? `active-text` : '']"
                     :style="[
                         {
-                            'color': `${ item.id == activeItem ? theme.color : '#353535'}`,
+                            'color': `${ item.id == activeItem ? theme.color : '#838584'}`,
                             'border-color':  `${ item.id == activeItem ? theme.color : ''}`,
                             'height': `${setHeight ? setHeight : 90}rpx`,
                             'padding': `0 ${padding}rpx`,

+ 1 - 0
src/components/page-component/app-area-picker/app-area-picker.vue

xqd
@@ -110,6 +110,7 @@ export default {
 		},
 		place(newData,old){
 			console.log('地址变化',newData)
+			this.$emit('place', newData);
 		}
 	},
 

+ 20 - 3
src/components/page-component/app-no-goods/app-no-goods.vue

xqd xqd xqd xqd
@@ -1,7 +1,9 @@
 <template>
-	<view class="app-no-goods dir-top-nowrap main-center cross-center" :style="{'backgroundColor': background}">
-		<image class="icon" v-if="is_image === 0" src="https://shop.9026.com/web/statics/img/mall/static/no-goods.png"></image>
-		<image class="icon" v-else-if="is_image === 1" src="https://shop.9026.com/web/statics/img/mall/static/order-empty.png"></image>
+	<view class="app-no-goods dir-top-nowrap main-center cross-center" :class="{'fixed':fixed}" :style="{'backgroundColor': background}">
+		
+		<image class="icon" v-if="icon" :src="icon"></image>
+		<image class="icon" v-if="is_image === 0 && !icon" src="https://shop.9026.com/web/statics/img/mall/static/no-goods.png"></image>
+		<image class="icon" v-else-if="is_image === 1 && !icon" src="https://shop.9026.com/web/statics/img/mall/static/order-empty.png"></image>
 		<text class="text" :style="{'color': color}">{{title}}</text>
 	</view>
 </template>
@@ -11,6 +13,12 @@
         name: "app-no-goods",
 	    
 	    props: {
+			fixed:{
+				type:Boolean,
+				default(){
+					return false
+				}
+			},
             background: {
                 type: String,
                 default() {
@@ -28,6 +36,12 @@
 			   default() {
 				   return '没有任何商品哦~';
 			   }
+		   },
+		   icon:{
+			 type:String,
+			   default(){
+				   return ''
+			   }
 		   },
 			is_image: {
 				type: Number,
@@ -53,4 +67,7 @@
 			margin-top: #{25upx};
 		}
 	}
+	.fixed{
+		position: fixed;top: 37%;left:50%;transform: translate(-50%,-50%);
+	}
 </style>

+ 3 - 2
src/components/page-component/app-order-goods-info/app-order-goods-info.vue

xqd
@@ -64,10 +64,11 @@ export default {
     width: 100%;
 
     .img {
-        width: 160#{rpx};
-        height: 160#{rpx};
         margin-right: 20#{rpx};
         flex-shrink: 0;
+		width: 147rpx;
+		height: 147rpx;
+		border-radius: 10rpx;
     }
 
     .item-box {

+ 2 - 2
src/components/page-component/app-user-center-top/app-user-center-top.vue

xqd xqd
@@ -208,7 +208,7 @@
 						</view>
 						<!--#ifdef MP-WEIXIN -->
 							<image v-if="isRealname" style="width: 96rpx;height: 31rpx;margin-left: 14rpx;" src="https://t17.9026.com/web/statics/image/index/ysm.png" mode=""></image>
-						<button class="u-refresh dir-left-nowrap main-between cross-center member-margin"
+						<button class="u-refresh dir-left-nowrap main-between cross-center "
 							open-type="getUserInfo" @getAuthorize="getUserInfo" @click="getUserInfo">
 							<icon class="u-icon" type></icon>
 							<text>刷新</text>
@@ -223,7 +223,7 @@
 						<!-- #endif-->
 					</view>
 					<view class="number" :style="{'color':userNameColor}">
-						15100997644
+						{{userInfo.mobile}}
 					</view>
 				</template>
 				<template v-else>

+ 5 - 5
src/components/page-component/goods/bd-service.vue

xqd xqd xqd
@@ -2,7 +2,7 @@
     <!-- #ifndef MP-TOUTIAO || MP-ALIPAY || H5 -->
     <view class="bd-item-content" v-if="mall.setting.show_contact_type != 0">
         <view v-if="mall.setting.show_contact_type == 2" class="bd-back dir-top-nowrap main-center cross-center box-grow-0" @click="router('/pages/web/web?url=' + encodeURIComponent(mall.setting.web_service_url))">
-            <image class="bd-icon" src="https://shop.9026.com/web/statics/image/mall/static/icon/detail-tell.png"></image>
+            <image class="bd-icon" src="https://t17.9026.com/web/statics/image/index/detail-tell.png"></image>
             <text class="bd-text">客服</text>
         </view>
         <button v-if="mall.setting.show_contact_type == 1"
@@ -12,12 +12,12 @@
                 :send-message-path="url"
                 class="bd-content bd-back box-grow-0">
             <view class="bd-content-view dir-top-nowrap main-center cross-center ">
-                <image class="bd-icon" src="https://shop.9026.com/web/statics/image/mall/static/icon/detail-tell.png"></image>
+                <image class="bd-icon" src="https://t17.9026.com/web/statics/image/index/detail-tell.png"></image>
                 <text class="bd-text">客服</text>
             </view>
         </button>
         <view v-if="mall.setting.show_contact_type == 3" class="bd-item-content dir-top-nowrap main-center cross-center box-grow-0" @click="makePhoneCall()">
-            <image class="bd-icon" src="https://shop.9026.com/web/statics/image/mall/static/icon/detail-tell.png"></image>
+            <image class="bd-icon" src="https://t17.9026.com/web/statics/image/index/detail-tell.png"></image>
             <text class="bd-text">客服</text>
         </view>
     </view>
@@ -25,11 +25,11 @@
     <!-- #ifdef MP-TOUTIAO || MP-ALIPAY || H5 -->
    <view>
        <view v-if="mall.setting.show_contact_type == 2" class="bd-item-content dir-top-nowrap main-center cross-center box-grow-0" @click="router('/pages/web/web?url=' + encodeURIComponent(mall.setting.web_service_url))">
-           <image class="bd-icon" src="https://shop.9026.com/web/statics/image/mall/static/icon/detail-tell.png"></image>
+           <image class="bd-icon" src="https://t17.9026.com/web/statics/image/index/detail-tell.png"></image>
            <text class="bd-text">客服</text>
        </view>
        <view v-else-if="mall.setting.show_contact_type == 3" class="bd-item-content dir-top-nowrap main-center cross-center box-grow-0" @click="makePhoneCall()">
-           <image class="bd-icon" src="https://shop.9026.com/web/statics/image/mall/static/icon/detail-tell.png"></image>
+           <image class="bd-icon" src="https://t17.9026.com/web/statics/image/index/detail-tell.png"></image>
            <text class="bd-text">客服</text>
        </view>
    </view>

+ 7 - 4
src/components/page-component/goods/u-attr.vue

xqd xqd xqd xqd
@@ -403,7 +403,6 @@
 				let copyAttr = this.copyAttr;
 				let groupLength = copyGroup.length;
 				let select = [];
-                console.log(copyAttr,copyGroup,3333);
 				copyAttr.forEach(i => {
 					let attr_list = i.attr_list;
 					attr_list.forEach(j => {
@@ -656,7 +655,11 @@
 				if (!this.$validation.isEmpty(this.checked)) {
 					return this.checked.stock;
 				} else if (!this.$validation.isEmpty(this.goods)) {
-					return this.goods.goods_num;
+					if(this.goods.goods_num){
+						return this.goods.goods_num;
+					}else{
+						return this.goods.stock;
+					}
 				}
 			},
 			sellPrice: function() {
@@ -757,7 +760,7 @@
 .u-btn {
     text-align: center;
     line-height: 70upx;
-    border-radius: 35upx;
+    // border-radius: 35upx;
     font-size: 26upx;
     width: calc(50% - 10upx);
 }
@@ -1005,7 +1008,7 @@
 	.u-btn {
 		text-align: center;
 		line-height: 70upx;
-		border-radius: 35upx;
+		
 		font-size: 26upx;
 		width: calc(50% - 10upx);
 	}

+ 1 - 1
src/components/page-component/index/app-nav-bar.vue

xqd
@@ -14,7 +14,7 @@
                         <view v-if="showLeftIcon">
 							<template v-if="xStyle==5">
 								<view class="main-left cross-center hxj-area" @click="leftClick">
-									<view class="tt t-omit">{{selectedProperties.name}}</view><image src="https://t17.9026.com/web/statics/image/index/arrow-down.png" mode=""></image>
+									<view class="tt t-omit">{{selectedProperties.name?selectedProperties.name:'绑定楼盘'}}</view><image src="https://t17.9026.com/web/statics/image/index/arrow-down.png" mode=""></image>
 								</view>
 							</template>
 							<template v-else>

+ 4 - 1
src/core/apiUrl.js

xqd
@@ -9,7 +9,10 @@ const apiUrl = {
 		customer_save:'plugin/sale/api/customer/save',
 		
 		estate_list:'plugin/sale/api/estate/list',
-		get_token:'plugin/sale/api/customer/get-token'
+		get_token:'plugin/sale/api/customer/get-token',
+		
+		message_list:'plugin/sale/api/message/list',
+		message_delete:'plugin/sale/api/message/delete'
 	},
 	example:{
 		style_list:'plugin/example/api/index/style-list',

+ 23 - 8
src/pages.json

xqd xqd xqd xqd xqd
@@ -200,6 +200,14 @@
 						"enablePullDownRefresh": false
 					}
 
+				}, {
+					"path": "news/news",
+					"style": {
+						"navigationBarTitleText": "我的消息",
+						"enablePullDownRefresh": false,
+						"navigationBarBackgroundColor": "#fff"
+					}
+
 				}, {
 					"path": "salePersonInfo",
 					"style": {
@@ -208,6 +216,13 @@
 						"navigationBarBackgroundColor": "#fff"
 					}
 
+				}, {
+					"path": "myCommission",
+					"style": {
+						"navigationBarTitleText": "我的提成",
+						"enablePullDownRefresh": false
+					}
+
 				}
 			]
 		},
@@ -496,13 +511,6 @@
 						"enablePullDownRefresh": false
 					}
 
-				}, {
-					"path": "news/news",
-					"style": {
-						"navigationBarTitleText": "我的消息",
-						"enablePullDownRefresh": false
-					}
-
 				}, {
 					"path": "about-mall/about-mall",
 					"style": {
@@ -518,6 +526,13 @@
 						"navigationBarBackgroundColor": "#fff"
 					}
 
+				}, {
+					"path": "privacyAgreement/privacyAgreement",
+					"style": {
+						"navigationBarTitleText": "用户隐私协议",
+						"enablePullDownRefresh": false
+					}
+
 				}
 			]
 		},
@@ -601,7 +616,7 @@
 					"path": "order-submit",
 					"style": {
 						"navigationBarTitleText": "确认订单",
-						"navigationStyle": "default"
+						"navigationStyle": "custom"
 					}
 				},
 				{

+ 4 - 1
src/pages/binding/app-phone-binding/app-phone-binding.vue

xqd xqd
@@ -7,7 +7,7 @@
 				<text class="app-hone">{{phone}}</text>
 			</view>
 			<view class="app-button">
-				<app-button type="important" round background="#ff4544" height="88" width="700" fontSize="32" @click="clearPhone(false)">更换绑定</app-button>
+				<app-button type="important" round :background="getTheme.background_gradient_btn" height="88" width="700" fontSize="32" @click="clearPhone(false)">更换绑定</app-button>
 			</view>
 		</view>
 		<template v-else>
@@ -97,6 +97,9 @@
                 wxapp_img: state => state.mallConfig.__wxapp_img,
 				is_manual_mobile_auth: state => state.mallConfig.mall.setting.is_manual_mobile_auth
             }),
+			...mapGetters('mallConfig', {
+				getTheme: 'getTheme',
+			}),
         },
 	    created() {
             // #ifndef MP-ALIPAY

+ 18 - 13
src/pages/case/appointment/appointment-form.vue

xqd xqd xqd xqd xqd
@@ -5,22 +5,16 @@
 		<!-- <app-nav-bar v-if="true" :fixed="true" :background-color="''" :xStyle="1" :hasMallSetting="2" -->
 		<view class="main-between-y builInfo">
 			<view class="main-between cross-center" style="height: 72rpx;" >
-				<view class="hjx-ts-30 hjx-tw-600 hjx-tc-222">楼盘名称</view>
+				<view class="hjx-ts-30 hjx-tw-600 hjx-tc-222">活动名称</view>
 				<view class="hjx-ts-30 hjx-tc-222">
-					<view class="cross-center hjx-ts-28 t-omit" style="width: 510rpx;text-align: right;"
-						:class="{'hjx-tc-999':estate_name==''?true:false,'hjx-tc-000':estate_name!=''?true:false}">{{estate_name===''?'请选择':estate_name}}
-						<!-- <image style="width: 12.8rpx;height: 22.8rpx;margin-left: 20rpx;"
-							src="https://t17.9026.com/web/statics/image/index/arrow-right-gray.png" mode=""></image> -->
+					<view class="cross-center hjx-ts-28 t-omit hjx-tc-000" style="width: 510rpx;text-align: right;">{{dataDetail.name}}
 					</view>
 				</view>
 			</view>
 			<view class="main-between cross-center" style="height: 72rpx;" >
-				<view class="hjx-ts-30 hjx-tw-600 hjx-tc-222">楼盘地址</view>
+				<view class="hjx-ts-30 hjx-tw-600 hjx-tc-222">活动地址</view>
 				<view class="hjx-ts-30 hjx-tc-222">
-					<view class="cross-center hjx-ts-28 t-omit" style="width: 510rpx;text-align: right;"
-						:class="{'hjx-tc-999':estate_address==''?true:false,'hjx-tc-000':estate_address!=''?true:false}">{{estate_address===''?'请选择':estate_address}}
-						<!-- <image style="width: 12.8rpx;height: 22.8rpx;margin-left: 20rpx;"
-							src="https://t17.9026.com/web/statics/image/index/arrow-right-gray.png" mode=""></image> -->
+					<view class="cross-center hjx-ts-28 t-omit hjx-tc-000" style="width: 510rpx;text-align: right;">{{dataDetail.address}}
 					</view>
 				</view>
 			</view>
@@ -49,7 +43,7 @@
 				</view>
 			</view>
 			<view class="item main-between cross-center">
-				<view class="hjx-ts-28 hjx-tw-600 hjx-tc-000">看房日期</view>
+				<view class="hjx-ts-28 hjx-tw-600 hjx-tc-000">到访日期</view>
 				<view>
 					<picker mode="date" :value="date" :start="startDate" :end="endDate" @change="bindDateChange">
 						<view class="cross-center hjx-ts-28"
@@ -61,7 +55,7 @@
 				</view>
 			</view>
 			<view class="item main-between cross-center">
-				<view class="hjx-ts-28 hjx-tw-600 hjx-tc-000">看房时间</view>
+				<view class="hjx-ts-28 hjx-tw-600 hjx-tc-000">到访时间</view>
 				<view>
 					<picker mode="time" :value="time" start="09:01" end="21:01" @change="bindTimeChange">
 						<view class="cross-center hjx-ts-28"
@@ -95,6 +89,7 @@
 		},
 		data() {
 			return {
+				dataDetail:{},
 				estate_id:'',
 				estate_name:'',
 				estate_address:'',
@@ -107,7 +102,17 @@
 		},
 		onLoad(option) {
 			this.visit_id=option.id
-			
+			this.$request({
+				url: this.$api.user.visit_detail,
+				data: {
+					visit_id: option.id
+				},
+				method: 'post'
+			}).then(res => {
+				if (res.code === 0) {
+					this.dataDetail=res.data
+				}
+			});
 		},
 		methods: {
 			bindTimeChange(e) {

+ 18 - 4
src/pages/case/appointment/appointment-list.vue

xqd xqd xqd
@@ -17,18 +17,20 @@
 					</view>
 				</view>
 				<view class="line"></view>
-				<view class="addr">
-					<view class="t-omit">活动地点:{{item.address}}</view>
+				<view class="main-between cross-center addr">
+					<view class="t-omit" style="width: 400rpx;">活动地点:{{item.address}}</view>
+					<!-- <button class="appointment-now" size="mini" :style="{'background-color':getTheme.background,}">去预约</button> -->
 				</view>
 			</view>
 			<appNoData v-if="VisitList.length===0" :title="'暂无预约'"></appNoData>
-			<view class="no-more" v-if="noMore">没有更多了...</view>
+			<view class="no-more" v-if="noMore && VisitList.length>0">没有更多了...</view>
 		</view>
 	</view>
 	</app-layout>
 </template>
 
 <script>
+	import {mapGetters} from 'vuex'
 	import appNoData from '@/components/page-component/app-no-goods/app-no-goods.vue'
 	export default {
 		components:{
@@ -42,6 +44,11 @@
 				noMore:false
 			};
 		},
+		computed:{
+			...mapGetters('mallConfig', {
+			    getTheme: 'getTheme',
+			}),
+		},
 		onLoad(option) {
 			'is_myself' in option?this.is_myself=option.is_myself:''
 			this.getVisitList()
@@ -181,12 +188,19 @@
 				height: 1px;
 			}
 			.addr{
-				padding: 24rpx 28rpx 32rpx;
+				padding: 24rpx 22rpx 32rpx 28rpx;
 				font-size: 22rpx;
 				font-weight: 500;
 				color: #999999;
 				line-height: 22rpx;
 			}
+			.appointment-now{
+				width: 150rpx;
+				font-size: 22rpx;
+				height: 100%;
+				color: #fff;
+				margin: 0;
+			}
 		}
 	}
 </style>

+ 4 - 3
src/pages/case/components/hxj-bd-info.vue

xqd xqd xqd
@@ -8,7 +8,7 @@
 					<view class="hxj-ynum">已售{{sales}}+</view>
 				</view>
 				<view class="main-left cross-center hjx-tc-999 hjx-ts-22">
-					<view style="margin-right: 31rpx;">{{house_layout}} {{measure}}</view>
+					<view style="margin-right: 31rpx;">{{house_layout}} {{estate_name}} {{measure}}</view>
 					<view class="hjx-text-decoration-line-through">{{originalPrice}}元</view>
 				</view>
 				<view class="hjx-tc-AE8445 hjx-ts-22 hjx-tw-500" style="margin:26rpx 0 22rpx ;">券后价</view>
@@ -66,6 +66,7 @@
 			goodsId: Number,
 			goods: Object,
 			house_layout:String,
+			estate_name:String,
 			measure:String,
 			isShowShare: {
 				type: Boolean,
@@ -153,12 +154,12 @@
 		padding: 43rpx 30rpx 28rpx 46rpx;
 
 		.hxj-name {
-			width: 360rpx;
+			max-width: 360rpx;
 			font-size: 28rpx;
 			font-weight: 500;
 			color: #121212;
 			line-height: 56rpx;
-			margin-right: 14rpx;
+			margin-right: 24rpx;
 		}
 
 		.hxj-tags {

+ 16 - 3
src/pages/case/hot_sale_project.vue

xqd xqd xqd xqd
@@ -30,14 +30,15 @@
 					<view class="main-between-y">
 						<view class="title t-omit">{{item.name}}</view>
 						<view class="desc">已售:{{item.sale_num}}套 | {{item.collect_num}}人收藏</view>
-						<view class="price"><text>¥</text>{{item.price}}</view>
+						<view class="price"><text>¥</text>{{item.actual_price}}</view>
 					</view>
 					<view class="cross-bottom arrow-right">
 						<image src="https://t17.9026.com/web/statics/image/index/arrow-right-gray.png" mode=""></image>
 					</view>
 				</view>
 			</view>
-			<appNoData v-if="CompositionList.length==0" :title="'该分类暂无套餐'"></appNoData>
+			<view class="no-more" v-if="noMore && CompositionList.length>0">没有更多了...</view>
+			<appNoData v-if="CompositionList.length==0" :background="'#f8f8f8'" :title="'该分类暂无套餐'"></appNoData>
 		</view>
 	</view>
 </template>
@@ -57,6 +58,7 @@
 				
 				classList:[],
 				CompositionList:[],
+				noMore:false,
 			};
 		},
 		onLoad(option) {
@@ -110,6 +112,13 @@
 </script>
 
 <style lang="scss" scoped>
+	.no-more {
+		font-size: 24rpx;
+		font-weight: 500;
+		color: #666666;
+		margin-top: 37rpx;
+		text-align: center;
+	}
 	.page{
 		position: relative;
 		min-height: 100vh;
@@ -176,9 +185,13 @@
 					font-size: 22rpx;
 					font-weight: 500;
 					color: #999999;
+					line-height: 45rpx;
 				}
 				.price{
-					font-size: 28rpx;
+					text{
+						font-size: 28rpx;
+					}
+					font-size: 38rpx;
 					font-weight: 500;
 					color: #F93F3F;
 				}

+ 56 - 43
src/pages/case/projectInfo.vue

xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd
@@ -7,7 +7,7 @@
 
 			<!--商品轮播图-->
 			<app-goods-banner :pic-list="compositionList.banner_imgs" :range-key="'banner_imgs'"
-				 :goods_id="compositionList.id" :isCart="false"></app-goods-banner>
+				:goods_id="compositionList.id" :isCart="false"></app-goods-banner>
 			<!-- 套装内商品 -->
 			<view style="background-color: #fff;">
 				<view class="link ">
@@ -19,35 +19,42 @@
 					</view>
 				</view>
 				<hxj-scroll-list :itemWidth="'168rpx'" :itemHeight="'168rpx'" :list="list"></hxj-scroll-list>
-				<hxj-bd-info :theme="getTheme" :name="compositionList.name" :discount_amount="compositionList.discount_amount" :original-price="compositionList.price"
-					:sales="Number(compositionList.sale_num)+Number(compositionList.virtual_sale_num)" :tag="compositionList.tag" :measure="compositionList.measure" :house_layout="compositionList.exampleHouse.name" :goods-id="compositionList.id" :coupons="goods_coupon_center" :extra-quick-share="extra_quick_share"
+				<hxj-bd-info :theme="getTheme" :name="compositionList.name"
+					:discount_amount="compositionList.discount_amount" :original-price="compositionList.actual_price"
+					:sales="Number(compositionList.sale_num)+Number(compositionList.virtual_sale_num)"
+					:tag="compositionList.tag" :measure="compositionList.measure" :estate_name="compositionList.estate.name"
+					:house_layout="compositionList.exampleHouse.name" :goods-id="compositionList.id"
+					:coupons="goods_coupon_center" :extra-quick-share="extra_quick_share"
 					:app-share-pic="app_share_pic ? app_share_pic : goods.pic_url[0].pic_url"
 					:app-share-title="compositionList.name"
 					:poster-config="poster_config + `&composition_id=` + compositionList.id"
-					:poster-generate="poster_generate + `&composition_id=` + compositionList.id" :has-poster-nav="true" :goods="goods"
-					@share="hShareAppMessage" @quickShare="quickShare" @receive="receive">
+					:poster-generate="poster_generate + `&composition_id=` + compositionList.id" :has-poster-nav="true"
+					:goods="goods" @share="hShareAppMessage" @quickShare="quickShare" @receive="receive">
 				</hxj-bd-info>
-				<view class="hxj-goods-list" :style="{ height: isOpen ? 'auto' : '270rpx' }">
+				<view class="hxj-goods-list" :style="{ height: isOpen ? 'auto' : '302rpx' }">
 					<view class="main-between" style="width: 560rpx;">
 						<view class="title">套装内商品</view>
 						<view class="title">数量</view>
 					</view>
-					<view class="main-between item"
-						v-for="(item, index) in list"
-						:key="index">
-						<view class="main-between" style="width: 560rpx;">
-							<view class="name t-omit">{{item.name}}</view>
-							<view class="num">x{{item.goods_num}}</view>
-						</view>
-						<view class="zk cropss-center" v-if="index === 1 &&list.length>2 && isOpen === false" @click="isOpen = true">
-							展开
-							<image src="https://t17.9026.com/web/statics/image/user-center/arrow-bottom.png" mode="">
-							</image>
-						</view>
-						<view class="zk cropss-center" v-if="index===list.length-1 && isOpen === true" @click="isOpen = false">
-							收起
-							<image src="https://t17.9026.com/web/statics/image/user-center/arrow-top.png" mode="">
-							</image>
+					<view  v-for="(item, index) in list" :key="index">
+						<view style="width: 525rpx;height: 1px;background: #EFEFEF;opacity: 0.63;margin-left: 62rpx;"></view>
+						<view class="main-between item">
+							<view class="main-between" style="width: 560rpx;">
+								<view class="name t-omit">{{item.name}}</view>
+								<view class="num">x{{item.goods_num}}</view>
+							</view>
+							<view class="zk cropss-center" v-if="index === 1 &&list.length>2 && isOpen === false"
+								@click="isOpen = true">
+								展开
+								<image src="https://t17.9026.com/web/statics/image/user-center/arrow-bottom.png" mode="">
+								</image>
+							</view>
+							<view class="zk cropss-center" v-if="index===list.length-1 && isOpen === true"
+								@click="isOpen = false">
+								收起
+								<image src="https://t17.9026.com/web/statics/image/user-center/arrow-top.png" mode="">
+								</image>
+							</view>
 						</view>
 					</view>
 				</view>
@@ -77,11 +84,11 @@
 				</view>
 				<view class="bd-bottom u-bottom-height-0 cross-center dir-left-nowrap">
 					<template v-if="exchangeStatus == null">
-						<view class="bd-back dir-top-nowrap main-center cross-center box-grow-0" @click="back">
+						<!-- <view class="bd-back dir-top-nowrap main-center cross-center box-grow-0" @click="back">
 							<image class="bd-icon"
 								src="https://shop.9026.com/web/statics/image/mall/static/icon/index.png"></image>
 							<text class="bd-text">首页</text>
-						</view>
+						</view> -->
 						<template v-if="is_negotiable !== 1">
 							<!-- 客服组件 -->
 							<bd-service :name="name" :url="sendPath"></bd-service>
@@ -89,8 +96,8 @@
 						<view class="bd-back dir-top-nowrap main-center cross-center box-grow-0" @click="setCollect">
 							<image class="bd-icon" :src="
 									compositionList.is_collect
-										? 'https://shop.9026.com/web/statics/image/mall/static/icon/icon-favorite-active.png'
-										: 'https://shop.9026.com/web/statics/image/mall/static/icon/icon-favorite.png'
+										? 'https://t17.9026.com/web/statics/image/index/icon-favorite-active.png'
+										: 'https://t17.9026.com/web/statics/image/index/icon-favorite.png'
 								"></image>
 							<text class="bd-text">收藏</text>
 						</view>
@@ -106,8 +113,7 @@
 									}" :class="['bd-btn', leftTip]">
 									加入购物车
 								</view> -->
-								<view :class="['box-grow-1']"
-									v-if="!(isTip == 0 && sell_time > 0)">
+								<view :class="['box-grow-1']" v-if="!(isTip == 0 && sell_time > 0)">
 									<app-jump-button form>
 										<view @click="clickAttr(1)" :style="{
 												background: getTheme.background_gradient_btn ? getTheme.background_gradient_btn : '#999999',
@@ -224,11 +230,11 @@
 		},
 		data() {
 			return {
-				id:'',//套餐id
+				id: '', //套餐id
 				isCouponShow: false,
 				list: [],
 				isOpen: false, //hxj套装内商品是否展开
-				compositionList:{}, //套餐详情
+				compositionList: {}, //套餐详情
 
 				showClose: false,
 				is_open: 0,
@@ -525,14 +531,19 @@
 					},
 					method: 'post'
 				}).then(res => {
-					if(res.code===0){
-						this.compositionList=res.data
+					if (res.code === 0) {
+						this.compositionList = res.data
 						for (let i = 0; i < this.compositionList.compositionGoods.length; i++) {
-							let image=this.compositionList.compositionGoods[i].goods.cover_pic
-							let id=this.compositionList.compositionGoods[i].goods.id
-							let name=this.compositionList.compositionGoods[i].goods.name
-							let goods_num=this.compositionList.compositionGoods[i].goods_num
-							this.list.push({image,link:`/pages/goods/goods?id=${id}`,name,goods_num})
+							let image = this.compositionList.compositionGoods[i].goods.cover_pic
+							let id = this.compositionList.compositionGoods[i].goods.id
+							let name = this.compositionList.compositionGoods[i].goods.name
+							let goods_num = this.compositionList.compositionGoods[i].goods_num
+							this.list.push({
+								image,
+								link: `/pages/goods/goods?id=${id}`,
+								name,
+								goods_num
+							})
 						}
 					}
 					this.$hideLoading();
@@ -541,12 +552,12 @@
 					url: this.$api.coupon.list,
 					data: {
 						composition_id: id,
-						limit:100,
+						limit: 100,
 					},
 					method: 'get'
 				}).then(res => {
-					if(res.code===0){
-						this.goods_coupon_center=res.data.list
+					if (res.code === 0) {
+						this.goods_coupon_center = res.data.list
 					}
 				})
 				// return new Promise((resolve, reject) => {
@@ -697,10 +708,11 @@
 					data: {
 						composition_id: this.id
 					},
-					method:'post'
+					method: 'post'
 				}).then(response => {
 					if (response.code === 0) {
-						this.compositionList.is_collect==0?this.compositionList.is_collect=1:this.compositionList.is_collect=0
+						this.compositionList.is_collect == 0 ? this.compositionList.is_collect = 1 : this
+							.compositionList.is_collect = 0
 					} else {
 						uni.showModal({
 							title: '提示',
@@ -768,7 +780,7 @@
 
 	.hxj-goods-list {
 		width: 100%;
-		height: 270rpx;
+		height: 302rpx;
 		overflow: hidden;
 		padding: 50rpx 43rpx 50rpx 51rpx;
 		background-color: #fff;
@@ -781,6 +793,7 @@
 		}
 
 		.item {
+			height: 69rpx;
 			.name {
 				width: 300rpx;
 				font-size: 24rpx;

+ 7 - 3
src/pages/coupon/details/app-details.vue

xqd xqd
@@ -30,13 +30,14 @@
                     <view class="scan-code">仅限礼品卡使用</view>
                 </view>
                 <view @click="toGoods" v-if="list.status == 1">
-                    <button style="background-color: #fff;color: #ff4544;border: 1rpx solid #ff4544"
+                    <button style="background-color: #fff;"
+					:style="{'color': getTheme.color,'border': `1rpx solid ${getTheme.color}`}"
                             :class="[`btn`]">
                         立即使用
                     </button>
                 </view>
                 <view @click="receive(list.id)" v-else-if="list.status == 0">
-                    <button style="color:#fff;border: 1rpx solid #ff4544;background: #ff4544;" :class="[`btn`]">立即领取
+                    <button style="color:#fff;" :style="{'color': getTheme.color,'border': `1rpx solid ${getTheme.color}`}" :class="[`btn`]">立即领取
                     </button>
                 </view>
                 <button class="btn used" v-else-if="list.status == 2">已使用</button>
@@ -116,7 +117,10 @@
         computed: {
             ...mapGetters({
                 userInfo: 'user/info',
-            })
+            }),
+			...mapGetters('mallConfig', {
+			    getTheme: 'getTheme',
+			}),
         },
         watch: {
             // #ifndef H5

+ 31 - 11
src/pages/coupon/index/index.vue

xqd xqd xqd xqd
@@ -22,13 +22,16 @@
 	                    <view style="font-size: 10px" v-if="item.discount_limit">优惠上限:¥{{item.discount_limit | reservedNum}}</view>
 	                </view>
 	                <view class="item-right">
-	                    <view class="item-name t-omit t-large t-large-color hjx-tc-222 hjx-tw-600">{{item.coupon.name}}</view>
+	                    <view class="item-name t-omit hjx-tc-222 hjx-tw-600">{{item.coupon.name}}</view>
 						<view v-if="item.coupon.appoint_type == 3">全场通用</view>
 						<view v-else-if="item.coupon.appoint_type == 4">仅限当面付活动使用</view>
 						<view v-else-if="item.coupon.appoint_type == 5">仅限礼品卡使用</view>
 						<view v-else>限品类</view>
-	                    <view class="t-small-color time-area hjx-tc-B19D60">{{item.start_time}} - {{item.end_time}}</view>
+	                    <view class="t-omit t-small-color time-area hjx-tc-B19D60">{{item.start_time.split(' ')[0]}} - {{item.end_time.split(' ')[0]}}</view>
 	                </view>
+					<view class="item-right-btn cross-center" v-if="activeTab == 1">
+						<view class="btn">去使用</view>
+					</view>
 	            </view>
 	        </view>
 	    </view>
@@ -186,7 +189,7 @@
     }
 
     .time-area {
-        padding:#{7rpx} 0;
+		font-size: 22rpx;
     }
 
 	.list {
@@ -195,10 +198,10 @@
 	}
 
 	.list-item {
-	    height: #{152rpx};
+	    height: #{181rpx};
 	    width: 100%;
 	    position: relative;
-	    margin-bottom: #{25rpx};
+	    margin-bottom: #{20rpx};
 	}
 
 	.list-item image {
@@ -227,21 +230,38 @@
 	.item-right {
 	    position: absolute;
 	    left: #{220rpx};
-	    top: #{15rpx};
-	    width: 65%;
-	    color: #6f6e6d;
-	    font-size: #{20rpx};
+	    top: #{30rpx};
+	    width: 45%;
+	    color: #666666;
+	    font-size: #{24rpx};
 	}
 
 	.item-name {
 	    font-size: #{32rpx};
-	    color: #353535;
 	}
 
 	.item-right view {
 	    margin-bottom: #{4rpx};
 	}
-
+	.item-right-btn{
+		position: absolute;
+		right: 0;
+		top: 0;
+		width: 20%;
+		height: 100%;
+		.btn{
+			width: 118rpx;
+			height: 52rpx;
+			border: 1rpx solid #B19D60;
+			border-radius: 26rpx;
+			font-size: 22rpx;
+			font-weight: 500;
+			color: #B19D60;
+			text-align: center;
+			line-height: 52rpx;
+			box-sizing: border-box;
+		}
+	}
 	.coupon-footer {
 	    position: fixed;
 	    bottom: 0;

+ 77 - 4
src/pages/coupon/list/list.vue

xqd xqd xqd xqd xqd
@@ -2,7 +2,8 @@
     <app-layout>
         <view class="page">
             <view class="coupon-item" v-for="item in list" :key="item.id">
-                <image class="coupon-bg" :src="couponImg[item.is_receive == '0' ? 'coupon_enabled' : 'coupon_disabled']" ></image>
+                <!-- <image class="coupon-bg" :src="couponImg[item.is_receive == '0' ? 'coupon_enabled' : 'coupon_disabled']" ></image> -->
+				<image class="coupon-bg" src="https://t17.9026.com/web/statics/image/index/img-coupon-bg-0.png" ></image>
                 <view class="coupon-left dir-left-nowrap" @click="toDetail(item.id)">
                     <view class="coupon-price t-omit box-grow-0">
                         <template v-if="item.type == 2">
@@ -45,6 +46,7 @@
                     </view>
                 </view>
             </view>
+			
 			<app-no-goods v-if="list.length === 0" :title="'暂无可领取优惠券'" background="#f7f7f7"></app-no-goods>
         </view>
     </app-layout>
@@ -56,7 +58,78 @@ import appNoGoods from '@/components/page-component/app-no-goods/app-no-goods.vu
     export default {
         data() {
             return {
-                list: [],
+                list: [
+					   {
+					      "app_share_pic": "https://swdzshopv4.oss-cn-chengdu.aliyuncs.com/uploads/mall10000/20211129/12b320e83a7b82333ed46041acd3a4d2.jpg",
+					      "app_share_title": "分享",
+					      "appoint_type": "3",
+					      "begin_time": "",
+					      "can_receive_count": "-1",
+					      "cat": [],
+					      "couponGoods": [],
+					      "created_at": "2021-11-30 15:31:16",
+					      "deleted_at": "0000-00-00 00:00:00",
+					      "desc": "",
+					      "discount": "10.0",
+					      "discount_limit": null,
+					      "end_time": "",
+					      "expire_day": "1",
+					      "expire_type": "1",
+					      "goods": [],
+					      "id": "3",
+					      "is_delete": "0",
+					      "is_member": "0",
+					      "is_receive": "0",
+					      "mall_id": "10000",
+					      "min_price": "20000.00",
+					      "name": "满减",
+					      "page_url": "/pages/goods/list?coupon_id=3",
+					      "pic_url": "10",
+					      "rule": "",
+					      "share_type": 4,
+					      "sort": "3",
+					      "sub_price": "200.00",
+					      "total_count": "0",
+					      "type": "2",
+					      "updated_at": "2021-11-30 19:55:45",
+					      "use_obtain": "1"
+					    },
+					    {
+					      "app_share_pic": "",
+					      "app_share_title": "",
+					      "appoint_type": "3",
+					      "begin_time": "",
+					      "can_receive_count": "-1",
+					      "cat": [],
+					      "couponGoods": [],
+					      "created_at": "2021-11-30 14:22:26",
+					      "deleted_at": "0000-00-00 00:00:00",
+					      "desc": "",
+					      "discount": "10.0",
+					      "discount_limit": null,
+					      "end_time": "",
+					      "expire_day": "1",
+					      "expire_type": "1",
+					      "goods": [],
+					      "id": "1",
+					      "is_delete": "0",
+					      "is_member": "0",
+					      "is_receive": "0",
+					      "mall_id": "10000",
+					      "min_price": "131.00",
+					      "name": "优惠卷",
+					      "page_url": "/pages/goods/list?coupon_id=1",
+					      "pic_url": "10",
+					      "rule": "",
+					      "share_type": 4,
+					      "sort": "100",
+					      "sub_price": "11.00",
+					      "total_count": "-1",
+					      "type": "2",
+					      "updated_at": "2021-12-06 16:00:04",
+					      "use_obtain": "0"
+					    }
+				],
                 loading: false,
                 page: 2,
             }
@@ -203,7 +276,7 @@ import appNoGoods from '@/components/page-component/app-no-goods/app-no-goods.vu
     }
 
     .coupon-bg {
-        height: #{160rpx};
+        height: #{275rpx};
         width: 100%;
     }
 
@@ -211,7 +284,7 @@ import appNoGoods from '@/components/page-component/app-no-goods/app-no-goods.vu
         position: absolute;
         left: #{20rpx};
         top: #{30rpx};
-        color: #fff;
+        color: #282828;
         width: 70%;
     }
 

+ 6 - 8
src/pages/favorite/favorite.vue

xqd xqd xqd xqd xqd xqd
@@ -10,7 +10,7 @@
 							class="u-tabs-item"
 							:style="{
 								fontWeight: index == getCurrent ? 'bold' : 'normal',
-								color: index == getCurrent ? getTheme.color : ''
+								color: index == getCurrent ? getTheme.color : '#838584'
 							}"
 							v-for="(item, index) in getTabs"
 							:key="index"
@@ -270,7 +270,6 @@
 							</view>
 						</good-action>
 					</view>
-					
 			</view>
 		</view>
 	</app-layout>
@@ -342,18 +341,18 @@ export default {
 		emit(index) {
 			this.goods_page = 1;
 			if (index === 0) {
-				this.is_goods = true;
 				this.left = 0;
 				this.statusTop = 85;
 				setTimeout(() => {
+					this.is_goods = true;
 					this.getCurrent = index;
 				});
 				this.getFavorite();
 			} else if (index === 1) {
 				setTimeout(() => {
 					this.is_goods = false;
-				}, 500);
-				this.getCurrent = index;
+					this.getCurrent = index;
+				} );
 				this.left = 375;
 				this.typeY = -800;
 				this.statusTop = -85;
@@ -424,7 +423,6 @@ export default {
 				if (this.rotate.right !== 0) {
 					this.rightSet = this.selectStatus;
 				}
-
 				this.getFavorite();
 				for (let i in this.rotate) {
 					this.rotate[i] = 0;
@@ -925,7 +923,7 @@ export default {
 }
 .f-status {
 	height: 78upx;
-	background-color: #ffffff;
+	background-color: #F8F8F8;
 	border-bottom: 1upx solid #e2e2e2;
 	padding: 0 24upx;
 	transition: 0.5s;
@@ -963,7 +961,7 @@ export default {
 	}
 	.f-def-set {
 		border: 1upx solid #f5f5f5;
-		background-color: #f5f5f5;
+		background-color: #ffffff;
 	}
 
 	.f-img {

+ 5 - 5
src/pages/index/binding/binding.vue

xqd xqd xqd xqd
@@ -7,14 +7,14 @@
 				</view>
 				<view class="main-between-y right ">
 					<view class="title">{{item.name}}</view>
-					<view class="addr">{{item.address}}</view>
+					<view class="addr"><image style="width: 18rpx;height: 20rpx;margin-right: 12rpx;" src="https://t17.9026.com/web/statics/image/index/location.png"></image>{{item.address}}</view>
 					<view class="content t-omit-two" v-html="item.details"></view>
 				</view>
 				<image class="bg" src="https://t17.9026.com/web/statics/image/sale/properties_gradual.png" mode="">
 				</image>
 				<view class="is-mainbuilding" v-if="item.is_master_estate">主楼盘</view>
 			</view>
-			<AppNoData v-if="dataList.length===0" title="您还未绑定任何楼盘"></AppNoData>
+			<AppNoData :background="'#f8f8f8'" v-if="dataList.length===0" title="您还未绑定任何楼盘"></AppNoData>
 		</view>
 		<!-- <view class="main-between cross-center lp">
 			<view class="name">世龙广场</view>
@@ -34,7 +34,7 @@
 				</view>
 			</AppAreaPicker>
 			<view class="line"></view>
-			<view class="main-between cross-center item" @click="selectBuild">
+			<view class="main-between cross-center item" @click="selectBuild()">
 				<view class="title_1">楼盘名称</view>
 				<view class="main-right cross-center">
 					<text :class="{'val':name!=='','pla':name===''}">{{name===''?'请选择':name}}</text>
@@ -93,7 +93,7 @@
 
 				propertyList: ['住宅用房', '非住宅用房'],
 
-				dataList: [{}],
+				dataList: [],
 				
 				isSwitchMainBuilding:0
 			};
@@ -121,7 +121,7 @@
 			addmyEstate() {
 				if(this.name===''  || this.sale===''){
 					uni.showToast({
-						title:'请完整填写信息',
+						title:'请完整填写楼盘信息',
 						icon:'none'
 					})
 					return

+ 28 - 16
src/pages/index/binding/bindingSale.vue

xqd xqd xqd
@@ -1,15 +1,17 @@
 <template>
-	<view>
-		<image class="a" src="https://t17.9026.com/web/statics/image/index/addcustomerbg.png" mode=""></image>
+	<view style="min-height: 100vh;background-color: #fff;">
+		<image class="a" src="https://t17.9026.com/web/statics/image/index/addcustomerbg.png" style="margin-bottom: 41rpx;" mode=""></image>
 		<view class="main-left cross-center search">
 			<image src="https://t17.9026.com/web/statics/image/index/search.png" mode=""></image>
-			<input style="width: 560rpx;" type="text" value="" placeholder="输入销售人员姓名" placeholder-style="font-size:28rpx;color:#999;" />
+			<input style="width: 560rpx;" type="text" v-model="name" placeholder="输入销售人员姓名" @confirm="search" placeholder-style="font-size:28rpx;color:#999;" />
 		</view>
 		
 		<view class="main">
 			<view class="main-between cross-center" style="height: 100rpx;">
 				<view class="title t-omit">{{estateName}}销售人员</view>
-				<view class="main-right cross-center"><text class="pla">更多</text><image class="arrow-right" src="https://t17.9026.com/web/statics/image/index/arrow-right-gray.png" mode=""></image></view>
+				<view class="main-right cross-center">
+					<!-- <text class="pla">更多</text><image class="arrow-right" src="https://t17.9026.com/web/statics/image/index/arrow-right-gray.png" mode=""></image> -->
+					</view>
 			</view>
 			<view class="main-between cross-center item" v-for="(item,index) in dataList" :key="index" @click="selectSale(index,item.id,item.salesperson.name)">
 				<view class="main-left">
@@ -40,23 +42,33 @@
 				
 				dataList:[],
 				estateName:'',
+				estate_id:'',
+				name:'',
 			};
 		},
 		onLoad(option) {
 			this.estateName=option.name
-			this.$request({
-				url:this.$api.index.sale_list,
-				data:{
-					estate_id:option.estate_id
-				},
-				method:'post'
-			}).then(res=>{
-				if(res.code===0){
-					this.dataList=res.data
-				}
-			})
+			this.estate_id=option.estate_id
+			this.getData()
 		},
 		methods:{
+			search(){
+				this.getData()
+			},
+			getData(){
+				this.$request({
+					url:this.$api.index.sale_list,
+					data:{
+						estate_id:this.estate_id,
+						name:this.name
+					},
+					method:'post'
+				}).then(res=>{
+					if(res.code===0){
+						this.dataList=res.data
+					}
+				})
+			},
 			selectSale(index,id,name){
 				this.selectSaleIndex=index
 				var pages = getCurrentPages();
@@ -123,7 +135,7 @@
 	.search{
 		width: 680rpx;
 		height: 82rpx;
-		background: #FFFFFF;
+		background: #F8F8F8;
 		border: 1rpx solid #EEEEEE;
 		border-radius: 4rpx;
 		margin: 0 auto;

+ 89 - 8
src/pages/index/hxj_index_component.vue

xqd xqd xqd xqd xqd xqd xqd
@@ -11,6 +11,20 @@
 				<view :class="swiperKey===i?'view_active':''" v-for="(item1,i) in homePages[0].data.banners.length" :key="i"></view>
 			</view>
 		</view>
+		<u-announcement
+		  v-bind:bgColor="homePages[1].data.background"
+		  v-bind:btn-color="homePages[1].data.btnColor"
+		  v-bind:btn-height="homePages[1].data.btnHeight"
+		  v-bind:btn-radius="`${homePages[1].data.btnRadius}rpx`"
+		  v-bind:btn-text="homePages[1].data.btnText"
+		  v-bind:btn-text-color="homePages[1].data.btnTextColor"
+		  v-bind:btn-width="homePages[1].data.btnWidth"
+		  v-bind:content="homePages[1].data.content"
+		  v-bind:header-url="homePages[1].data.headerUrl"
+		  v-bind:icon="homePages[1].data.icon"
+		  v-bind:name="homePages[1].data.name"
+		  v-bind:textColor="homePages[1].data.textColor"
+		></u-announcement>
 		<view class="link">
 			<view>
 				<view class="title">人居 · 荟享家<image class="hxjImg"
@@ -127,20 +141,22 @@
 
 		<view class="group_list">
 			<swiper style="height: 606rpx;" :indicator-dots="false" :autoplay="false" :interval="3000" :duration="1000"
-				previous-margin="75rpx" next-margin="75rpx">
+				previous-margin="25rpx" next-margin="25rpx" :current="ptCurrent"  @change="ptChange">
 				<swiper-item class="" v-for="(item,index) in homePages[9].data.list" :key="index"
 					@click="goPage(item.page_url)">
 					<view class="item">
-						<view class="imgBox">
+						<view class="imgBox" >
 							<image class="img" :src="item.cover_pic"></image>
 						</view>
-						<view class="b_card main-between">
+						<view class="b_card main-between" >
 							<view class="main-left cross-center left">
-								<view class="i">02</view>
+								<view class="i">{{item.pintuanGoods.time_str.day}}</view>
 								<view class="q">:</view>
-								<view class="i">24</view>
+								<view class="i">{{item.pintuanGoods.time_str.hou}}</view>
 								<view class="q">:</view>
-								<view class="i">45</view>
+								<view class="i">{{item.pintuanGoods.time_str.min}}</view>
+								<view class="q">:</view>
+								<view class="i">{{item.pintuanGoods.time_str.sec}}</view>
 							</view>
 							<view class="right">
 								<view class="price"><text class="rmb">¥</text><text>{{item.pintuan_price}}</text><text
@@ -202,12 +218,14 @@
 <script>
 	import {mapState} from 'vuex'
 	import appScrollList from './components/scroll-list.vue'
+	import uAnnouncement from "@/components/page-component/u-announcement/u-announcement.vue";
 	export default {
 		components: {
-			appScrollList
+			appScrollList,
+			uAnnouncement
 		},
 		props: {
-			homePages: {
+			homePagesProps: {
 				type: Object,
 				default () {
 					return {
@@ -242,12 +260,21 @@
 			selectedProperties(){
 				this.getComposition()
 			},
+			homePagesProps:{
+				handler:function(nVal,oVal){
+					this.homePages=nVal;
+					this.countdown(nVal[9].data.list)
+				},
+				deep:true
+			}
 		},
 		data() {
 			return {
+				ptCurrent:0,//拼图轮播第几个
 				pageData: '',
 				swiperKey: 0, //轮播位置
 				bottom_goods_index:0, //底部商品分类索引
+				homePages:null,
 				list: [
 
 					{
@@ -308,6 +335,14 @@
 				// 	}, 
 				// ],
 				compositionList:[],//本期家点灵感
+				// 倒计时
+				// time_str: {
+				//     day: '00',
+				//     hou: '00',
+				//     min: '00',
+				//     sec: '00'
+				// },
+				down_time: 0,
 			}
 		},
 		created() {
@@ -406,6 +441,33 @@
 					this.$storage.setStorageSync('INDEX_MALL', storage);
 				}
 			},
+			ptChange(e){
+				this.ptCurrent=e.detail.current
+			},
+			countdown(list) {
+				for (let i = 0; i < list.length; i++) {
+					let item=list[i].pintuanGoods.end_time
+					let time = new Date(item.replace(/-/g, '/'));
+					let nowTime = new Date();
+					let equation = time.getTime() - nowTime.getTime();
+					let day = parseInt((equation / 3600000 / 24));
+					let hour = parseInt((equation / 1000 / 60 / 60) % 24);
+					let minute = parseInt((equation / 1000 / 60) % 60);
+					let second = parseInt((equation / 1000) % 60);
+					this.homePages[9].data.list[i].pintuanGoods.time_str = {
+					    day: day < 10 ? `0${day}` : day,
+					    hou: hour < 10 ? `0${hour}` : hour,
+					    min: minute < 10 ? `0${minute}` : minute,
+					    sec: second < 10 ? `0${second}` : second
+					}
+				}
+			    this.down_time = setTimeout(() => {
+			        this.countdown(list);
+			    }, 1000);
+			},
+		},
+		deactivated() {
+			clearTimeout(this.down_time)
 		}
 	}
 </script>
@@ -435,4 +497,23 @@
 			}
 		}
 	}
+	.ptcc{
+		animation:myfirst 0.5s infinite;
+		animation-iteration-count:1;
+		animation-fill-mode:forwards;
+		
+	}
+	// .ptee{
+	// 	animation:myfirst 0.5s infinite;
+	// 	animation-iteration-count:1;
+	// 	animation-fill-mode:forwards;
+	// 	animation-direction:reverse;
+	// }
+	@keyframes myfirst
+	{
+	    from   {height: 404rpx;}
+	    to   {margin-top: 40rpx;height: 365rpx!important;}
+	    
+	}
+	 
 </style>

+ 4 - 2
src/pages/index/index.scss

xqd xqd
@@ -444,7 +444,7 @@
 			width: 379rpx;
 			height: 204rpx;
 			background: #fefffe;
-			padding: 31rpx 37rpx;
+			padding: 59rpx 37rpx;
 			position: absolute;
 			bottom: 0;
 			left: 0;
@@ -465,12 +465,14 @@
 	.bottom {
 		margin-top: 40rpx;
 		.item {
-			width: 320rpx;
+			width: 323rpx;
 			margin-bottom: 35rpx;
 			border-radius: 20rpx;
 			.cover {
 				width: 320rpx;
 				height: 250rpx;
+				border-radius: 14rpx;
+				overflow: hidden;
 			}
 		}
 		& > .item:nth-child(2n-1) {

+ 9 - 4
src/pages/index/index.vue

xqd xqd xqd xqd xqd
@@ -14,7 +14,7 @@
 		<template v-else-if="true">
 			<app-nav-bar v-if="navbarStatus"
                          :fixed="true"
-                         :background-color="'rgb(239 239 239 / 0)'"
+                         :background-color="`rgb(255 255 255 / ${sss})`"
                          :left-icon="diy__app_nav_bar.leftIcon"
                          :link="diy__app_nav_bar.link"
                          :xStyle="5"
@@ -30,7 +30,8 @@
                           :is_storage="is_storage" :theme="getTheme" :page_id="page_id" :is_required="is_required"
                           :coupon_req="coupon_req"></app-diy-page> -->
 
-			<hxj-index :home-pages="homePages.navs[0].template.data[1].data.list[0].data"></hxj-index>
+			<hxj-index :homePagesProps="homePages.navs[0].template.data[1].data.list[0].data"></hxj-index>
+			<view id="query"></view>
 		</template>
 		<!-- <app-buy-prompt :isShowAttention="isShowAttention" v-if="config.is_purchase_frame === 1"></app-buy-prompt> -->
 		<app-attr :goods="attrGoods.goods" :attrGroupList="attrGoods.goods.attr_groups" :theme="getTheme"
@@ -90,7 +91,8 @@
 				// #ifdef H5
 				pagePath: '',
 				// #endif
-				isShowAttention: false
+				isShowAttention: false,
+				sss:0,
 			}
 		},
 
@@ -140,6 +142,10 @@
 
 		/* #ifdef MP_WEIXIN || MP_BAIDU */
 		onPageScroll(e) {
+			// this.$utils.throttle(()=>{
+				this.sss=e.scrollTop*0.00370
+			// },100,false)
+			
 			this.$store.dispatch('page/actionSetScrollTop', e.scrollTop);
 		},
 		/* #endif */
@@ -425,7 +431,6 @@
 				return false;
 				// #endif
 			},
-
 			...mapGetters('mallConfig', {
 				tabBarNavs: 'getNavBar',
 				getTheme: 'getTheme',

+ 15 - 5
src/pages/order-submit/app-submit-goods.vue

xqd xqd xqd
@@ -52,15 +52,18 @@
         <view v-else class="composition">
             <view class="composition-item" v-for="(compositionItem, compositionIndex) in newList.composition_list"
                   :key="compositionIndex">
+				  <!-- <view>
+					  
+				  </view> -->
                 <view v-for="(goodsItem, goodsIndex) in compositionItem.goods_list" :key="goodsIndex"
-                      class="goods-item">
-                    <view class="dir-left-nowrap">
+                      class="goods-item" >
+                    <view class="dir-left-nowrap" >
                         <view class="box-grow-0" style="position: relative;">
                             <view v-if="goodsItem.address_disabled" class="address-disabled">不在配送范围内</view>
-                            <image class="goods-image"
+                            <image class="goods-image-composition"
                                    :src="goodsItem.goods_attr.pic_url ? goodsItem.goods_attr.pic_url : goodsItem.cover_pic"></image>
                         </view>
-                        <view class="box-grow-1 dir-top-nowrap">
+                        <view class="box-grow-1 dir-top-nowrap" >
                             <view class="goods-name box-grow-1">{{goodsItem.name}}</view>
                             <view class="box-grow-0">
                                 <view class="dir-left-wrap attr-list">
@@ -85,7 +88,7 @@
                                 </view>
                             </view>
                         </view>
-                    </view>
+                    </view >
                     <view v-for="(discount,discountIndex) in goodsItem.discounts"
                           :key="discountIndex"
                           :class="[themeTextClass]"
@@ -231,6 +234,13 @@
                 margin-right: #{24rpx};
                 font-size: #{24rpx};
             }
+			.goods-image-composition {
+			    width: #{106rpx};
+			    height: #{106rpx};
+			    display: block;
+			    margin-right: #{24rpx};
+			    font-size: #{24rpx};
+			}
 
             .goods-name {
                 white-space: nowrap;

+ 8 - 8
src/pages/order-submit/invoice/invoice.vue

xqd xqd xqd xqd xqd xqd xqd xqd
@@ -31,7 +31,7 @@
 				<view class="title_1">发票抬头<text>*</text></view>
 				<view class="main-right cross-center">
 					<input type="text" v-model="invoice_info.header_name" placeholder="企业名称" style="text-align: right;font-size: 28rpx;"
-						placeholder-style="font-size: 28rpx;font-weight: 500;color: #999999;" />
+						placeholder-style="font-size: 28rpx;font-weight: 300;color: #999999;" />
 				</view>
 			</view>
 			<view class="line"></view>
@@ -39,7 +39,7 @@
 				<view class="title_1">税号</view>
 				<view class="main-right cross-center">
 					<input type="text" v-model="invoice_info.duty_number" placeholder="抬头为企业单位时填写" style="text-align: right;font-size: 28rpx;"
-						placeholder-style="font-size: 28rpx;font-weight: 500;color: #999999;" />
+						placeholder-style="font-size: 28rpx;font-weight: 300;color: #999999;" />
 				</view>
 			</view>
 			<view class="line"></view>
@@ -47,7 +47,7 @@
 				<view class="title_1">单位地址</view>
 				<view class="main-right cross-center">
 					<input type="text" v-model="invoice_info.company_address" placeholder="请输入" style="text-align: right;font-size: 28rpx;"
-						placeholder-style="font-size: 28rpx;font-weight: 500;color: #999999;" />
+						placeholder-style="font-size: 28rpx;font-weight: 300;color: #999999;" />
 				</view>
 			</view>
 
@@ -57,7 +57,7 @@
 				<view class="title_1">电话号码</view>
 				<view class="main-right cross-center">
 					<input type="text" v-model="invoice_info.phone" placeholder="请输入" style="text-align: right;font-size: 28rpx;"
-						placeholder-style="font-size: 28rpx;font-weight: 500;color: #999999;" />
+						placeholder-style="font-size: 28rpx;font-weight: 300;color: #999999;" />
 				</view>
 			</view>
 			<view class="line"></view>
@@ -65,7 +65,7 @@
 				<view class="title_1">开户银行</view>
 				<view class="main-right cross-center">
 					<input type="text" v-model="invoice_info.bank_name" placeholder="请输入" style="text-align: right;font-size: 28rpx;"
-						placeholder-style="font-size: 28rpx;font-weight: 500;color: #999999;" />
+						placeholder-style="font-size: 28rpx;font-weight: 300;color: #999999;" />
 				</view>
 			</view>
 			<view class="line"></view>
@@ -73,7 +73,7 @@
 				<view class="title_1">银行账户</view>
 				<view class="main-right cross-center">
 					<input type="text" v-model="invoice_info.bank_account" placeholder="请输入" style="text-align: right;font-size: 28rpx;"
-						placeholder-style="font-size: 28rpx;font-weight: 500;color: #999999;" />
+						placeholder-style="font-size: 28rpx;font-weight: 300;color: #999999;" />
 				</view>
 			</view>
 			<view class="line"></view>
@@ -81,7 +81,7 @@
 				<view class="title_1">开票金额<text>*</text></view>
 				<view class="main-right cross-center">
 					<input type="digit" v-model="invoice_info.amount" placeholder="请输入" style="text-align: right;font-size: 28rpx;"
-						placeholder-style="font-size: 28rpx;font-weight: 500;color: #999999;" />
+						placeholder-style="font-size: 28rpx;font-weight: 300;color: #999999;" />
 				</view>
 			</view>
 
@@ -215,7 +215,7 @@
 
 		.pla {
 			font-size: 28rpx;
-			font-weight: 500;
+			font-weight: 300;
 			color: #999999;
 			margin-right: 20rpx;
 		}

+ 3 - 3
src/pages/order-submit/invoice/invoiceAddr.vue

xqd xqd xqd
@@ -5,7 +5,7 @@
 				<view class="title_1">姓名</view>
 				<view class="main-right cross-center">
 					<input type="text" v-model="name" placeholder="请输入" style="text-align: right;font-size: 28rpx;"
-						placeholder-style="font-size: 28rpx;font-weight: 500;color: #999999;" />
+						placeholder-style="font-size: 28rpx;font-weight: 300;color: #999999;" />
 				</view>
 			</view>
 			<view class="line"></view>
@@ -13,7 +13,7 @@
 				<view class="title_1">电话</view>
 				<view class="main-right cross-center">
 					<input type="text" v-model="phone" placeholder="请输入" style="text-align: right;font-size: 28rpx;"
-						placeholder-style="font-size: 28rpx;font-weight: 500;color: #999999;" />
+						placeholder-style="font-size: 28rpx;font-weight:300;color: #999999;" />
 				</view>
 			</view>
 			<view class="line"></view>
@@ -21,7 +21,7 @@
 				<view class="title_1">地址</view>
 				<view class="main-right cross-center">
 					<input type="text" v-model="addr" placeholder="请输入" style="text-align: right;font-size: 28rpx;"
-						placeholder-style="font-size: 28rpx;font-weight: 500;color: #999999;" />
+						placeholder-style="font-size: 28rpx;font-weight: 300;color: #999999;" />
 				</view>
 			</view>
 		</view>

+ 44 - 34
src/pages/order-submit/order-submit.vue

xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd
@@ -3,18 +3,20 @@
 		<view class="safe-area-inset-bottom">
 			<!-- 地址、商户、配送、商品、优惠、费用信息 -->
 			<view class="page" v-if="previewData">
-				<template v-if="getIsEnterSales">
-					<view v-if="!customerInfo" @click="navCustomer" class="select-customer" >
-						请选择客户
-					</view>
-					<view v-else @click="navCustomer" class="select-customer" >
-						客户:{{customerInfo.name}} 手机号:{{customerInfo.mobile}}
+				<view style="background-image: url(https://t17.9026.com/web/statics/image/index/appointment_top.png);background-size: 100% 100%;padding-bottom: 24rpx;">
+					<app-nav-bar :fixed="true" :background-color="''" :title="'确认订单'" :xStyle="1" :hasMallSetting="2" :hasHeight="true"></app-nav-bar>
+					<template v-if="getIsEnterSales">
+						<view v-if="!customerInfo" @click="navCustomer" class="select-customer" >
+							请选择客户
+						</view>
+						<view v-else @click="navCustomer" class="select-customer" >
+							客户:{{customerInfo.name}} 手机号:{{customerInfo.mobile}}
+						</view>
+					</template>
+					<view v-if="!previewData.hasCity && previewData.show_address !== false && previewData.hasRecipient" class="group">
+						<app-address-bar :address="previewData.address" :has-ziti="previewData.has_ziti"
+							:all-ziti="previewData.allZiti" @address-input="handleAddressInput"></app-address-bar>
 					</view>
-				</template>
-				<view v-if="!previewData.hasCity && previewData.show_address !== false && previewData.hasRecipient"
-					class="group">
-					<app-address-bar :address="previewData.address" :has-ziti="previewData.has_ziti"
-						:all-ziti="previewData.allZiti" @address-input="handleAddressInput"></app-address-bar>
 				</view>
 				<template v-for="(mch, mchIndex) in previewData.mch_list">
 					<!-- <view v-if="previewData.hasCity && mchIndex === 0" class="group xz">
@@ -25,7 +27,7 @@
 						<app-address-bar :address="previewData.address" :has-ziti="previewData.has_ziti"
 							:all-ziti="previewData.allZiti" :city="mch.city"></app-address-bar>
 					</view> -->
-					<view :key="mchIndex" class="group">
+					<view :key="mchIndex" >
 						<!-- 循环商户列表start -->
 						<view style="padding: 26rpx 32rpx;" v-if="false">
 							<view class="dir-left-nowrap cross-center" style="padding: 10rpx 0;line-height: 1.2;">
@@ -160,9 +162,12 @@
 							style="height: 80rpx;line-height: 80rpx; background: #fff4f3;padding: 0 24rpx;">
 							<view>以下商品满{{mch.pick_up_price}}元起送</view>
 						</view>
-						<app-submit-goods :theme="theme" v-on:updateList="updateList" :index="mchIndex" :plugin="plugin"
-							:list="mch"></app-submit-goods>
-						<view class="line"></view>
+						<view class="group">
+							<app-submit-goods :theme="theme" v-on:updateList="updateList" :index="mchIndex" :plugin="plugin"
+								:list="mch"></app-submit-goods>
+						</view>
+						
+						<view class="group">
 						<template v-if="(mch.coupon && mch.coupon.enabled)">
 							<view style="padding: 20rpx 32rpx;">
 								<template v-if="mch.coupon && mch.coupon.enabled">
@@ -300,12 +305,12 @@
 							<view class="line"></view>
 						</template>
 						<template>
-							<view class="dir-left-nowrap cross-center" style="height: 84rpx; padding: 0 32rpx;">
+							<!-- <view class="dir-left-nowrap cross-center" style="height: 84rpx; padding: 0 32rpx;">
 								<view class="box-grow-1">支付方式</view>
 								<view class="box-grow-0">
 									微信支付
 								</view>
-							</view>
+							</view> -->
 							<view class="dir-left-nowrap cross-center" style="height: 84rpx; padding: 0 32rpx;">
 								<view class="box-grow-1">配送方式</view>
 								<view class="box-grow-0">
@@ -348,11 +353,22 @@
 							<view class="dir-left-nowrap cross-center" style="min-height: 84rpx; padding: 0 32rpx;">
 								<view class="box-grow-1">买家留言</view>
 								<view class="box-grow-0">
-									<textarea type="text" style="width: 460rpx;" maxlength="50" auto-height placeholder="填写您想要备注的信息,50字以内" placeholder-style="font-size: 24rpx;font-weight: 500;color: #999999;" />
+									<textarea type="text" style="width: 460rpx;" maxlength="50" auto-height placeholder="填写您想要备注的信息,50字以内" placeholder-style="font-size: 24rpx;color: #999999;" />
 								</view>
 							</view>
 						</template><!-- 买家留言end -->
-
+						</view>
+						
+						<view  class="group">
+							<view class="dir-left-nowrap cross-center" style="height: 84rpx; padding: 0 32rpx;">
+								<view class="box-grow-1">商品总额</view>
+								<view class="box-grow-0">
+									<view :class="[themeTextClass]" :style="{'color': !is_gift ? theme.color : ''}">
+										¥{{balance < 0 ? setPrice(mch.total_price, balance) : FlorPrice(mch.total_price)}}
+									</view>
+								</view>
+								<!-- <view class="box-grow-0 font-gray mr-12">共{{mch.goods_count}}件</view> -->
+							</view>
 						<template v-if="mch.show_express_price !== false">
 							<!-- 运费信息start -->
 							<view class="dir-left-nowrap cross-center" style="height: 84rpx; padding: 0 32rpx;">
@@ -382,7 +398,7 @@
 						</template>
 						<!-- 欠款金额end -->
 
-						<template v-if="
+						<!-- <template v-if="
                     !(mch.order_form && mch.order_form.status == '1')
                     && mch.show_remark !== false
                     && mch.has_goods_form !== true">
@@ -392,15 +408,8 @@
 									padding-left="0" height="100"></app-input>
 							</view>
 						</template>
-						<view class="line"></view>
-						<view class="dir-right-nowrap cross-center" style="height: 84rpx; padding: 0 32rpx;">
-							<view class="box-grow-0 dir-left-nowrap">
-								<view>小计:</view>
-								<view :class="[themeTextClass]" :style="{'color': !is_gift ? theme.color : ''}">
-									¥{{balance < 0 ? setPrice(mch.total_price, balance) : FlorPrice(mch.total_price)}}
-								</view>
-							</view>
-							<view class="box-grow-0 font-gray mr-12">共{{mch.goods_count}}件</view>
+						<view class="line"></view> -->
+						
 						</view>
 					</view><!-- 循环商户列表end -->
 				</template>
@@ -532,6 +541,7 @@
 	import AppSubmitCheckbox from "./app-submit-checkbox";
 	import AppClose from '../../components/basic-component/app-close/app-close.vue';
 
+	import appNavBar from '@/components/page-component/index/app-nav-bar.vue';
 	export default {
 		name: 'order-submit',
 		components: {
@@ -541,7 +551,8 @@
 			AppCouponPick,
 			AppDiyForm,
 			appSubmitGoods,
-			AppClose
+			AppClose,
+			appNavBar
 		},
 		data() {
 			return {
@@ -856,7 +867,6 @@
 				}
 			},
 			loadPreviewData() {
-				console.log(2222222222222223333333333333)
 				this.loadingPreviewData = true;
 				uni.showLoading({
 					mask: true,
@@ -1466,7 +1476,7 @@
 		background: #fff;
 		border-radius: #{16rpx};
 		overflow: hidden;
-		box-shadow: 0 0 #{5rpx} rgba(0, 0, 0, 0.025);
+		// box-shadow: 0 0 #{5rpx} rgba(0, 0, 0, 0.025);
 	}
 
 	.row {
@@ -1658,7 +1668,7 @@
 		}
 
 		.submit-btn {
-			width: 240upx;
+			width: 335rpx;
 			text-align: center;
 			// border-radius: 41upx;
 		}
@@ -1693,7 +1703,7 @@
 	.bd-bottom {
 		width: 750upx;
 		height: 110upx;
-		padding: 14upx 24upx;
+		padding: 0 24upx;
 	}
 
 	.full-tip {

+ 37 - 18
src/pages/order/index/index.vue

xqd xqd xqd xqd xqd xqd xqd
@@ -3,14 +3,14 @@
         <!-- #ifdef H5 -->
         <bd-h5-back :iconStyle="2" height="88" width="100"></bd-h5-back>
         <!-- #endif -->
-        <view class="search-area">
+        <view class="search-area" style="background-color: #fff;">
             <view v-if="search.keyword || search.dateArr[0] || search.dateArr[1]" class="search be-search dir-left-nowrap" @click="toSearch">
                 <image class="icon-search" src="https://shop.9026.com/web/statics/image/mall/static/icon/icon-search.png"></image>
                 <view v-if="search.dateArr[0]">{{search.dateArr[0]}}</view>
                 <view v-if="search.dateArr[1]"><text v-if="search.dateArr[0]">至</text>{{search.dateArr[1]}}</view>
                 <view v-if="search.keyword"><text v-if="search.dateArr[0] || search.dateArr[1]">,</text>{{search.keyword}}</view>
             </view>
-            <view v-else class="search main-center" @click="toSearch">
+            <view v-else class="search main-left" @click="toSearch">
                 <image class="icon-search" src="https://shop.9026.com/web/statics/image/mall/static/icon/icon-search.png"></image>
                 <text>搜索</text>
             </view>
@@ -23,14 +23,16 @@
                     <view hover-class="u-hover-class" v-for='(item, index) in orders' :key='item.id' :style="{'margin-top': index == 0 ? '24rpx' : '0'}" class='order-item-box dir-top-wrap'>
                         <app-jump-button :url="getPageUrl(item.id, item.sign)">
                             <view class="dir-top-nowrap" style="width: 100%">
-                                <view class='dir-left-nowrap view-1'>
-                                    <view class='box-grow-1'>订单号:{{item.order_no}}</view>
-                                    <template v-if='item.status == 0'>
-                                        <text v-if='item.sign == "pintuan"'>{{item.is_pay == 1 ? '拼团中' : '待付款'}}</text>
-                                    </template>
-                                    <template v-else>
-                                        <view>{{item.status_text}}</view>
-                                    </template>
+                                <view class='main-between dir-left-nowrap view-1' style="color: #838584;font-size: 22rpx;">
+                                    <view class='hxj-order-status'>
+										<template v-if='item.status == 0'>
+											<text v-if='item.sign == "pintuan"'>{{item.is_pay == 1 ? '拼团中' : '待付款'}}</text>
+										</template>
+										<template v-else>
+											<view>{{item.status_text}}</view>
+										</template>
+									</view>
+									<view>订单号:{{item.order_no}}</view>
                                 </view>
                                 <view v-for='(dItem, dIndex) in item.detail' :key='dIndex' class='view-2'>
                                     <app-order-goods-info :goods='dItem.goods_info' :plugin-data="item.plugin_data" :plugin-index="dIndex"></app-order-goods-info>
@@ -46,10 +48,10 @@
                             </template>
                             <template v-else>
                                 <view class='box-grow-1 main-right cross-center price-count-box'>
-                                    <text class="price-label">合计 </text>
+                                    <text class="price-label">合计  </text>
                                     <span class='price-color'>
                                         <text v-if="item.plugin_data.exchange_count">{{item.plugin_data.exchange_count}}{{item.plugin_data.price_name}}+</text>
-                                        <text>¥{{item.total_pay_price}}</text>
+                                        <text><text class="price-rmb"></text>{{item.total_pay_price}}</text>
                                     </span>
                                     <text v-if="item.express_price > 0" class="price-express">(含运费¥{{item.express_price}})</text>
                                 </view>
@@ -162,7 +164,7 @@ export default {
             is_qrcode: false,
             is_show: false,
             is_load_show: false,
-            bgColor: '#f7f7f7',
+            bgColor: '#fff',
             isRequest: true, //防止数据重复加载
             template_message: [],
             recommend_list: []
@@ -487,10 +489,10 @@ export default {
         height: #{64rpx};
         line-height: #{64rpx};
         border-radius: #{32rpx};
-        background-color: #fff;
+        background-color: #F8F8F8;
         color: #b2b2b2;
         font-size:#{26rpx};
-
+		padding-left: 28rpx;
         &.be-search {
             color: #353535;
             padding-left: 32rpx;
@@ -559,7 +561,21 @@ export default {
     margin: 32#{rpx} 0;
 }
 
-.order-item-box .view-2 {}
+.order-item-box .view-2 {
+	
+}
+
+.hxj-order-status{
+	width: 113rpx;
+	height: 44rpx;
+	background: #F8F8F8;
+	border-radius: 4rpx;
+	font-size: 22rpx;
+	font-weight: 500;
+	color: #838584;
+	line-height: 44rpx;
+	text-align: center;
+}
 
 .order-item-box .view-3 {
     font-size: $uni-font-size-import-two;
@@ -575,12 +591,15 @@ export default {
 
 .price-label {
     margin-right: 5#{rpx};
-    font-size: $uni-font-size-weak-one;
-    color: $uni-general-color-two;
+    font-size: 24rpx;
+    color: #222222;
 }
 
 .price-color {
     color: $uni-important-color-black;
+	.price-rmb{
+		font-size: 20rpx;
+	}
 }
 
 .price-express {

+ 3 - 3
src/pages/sale/components/app-my-income.vue

xqd
@@ -3,16 +3,16 @@
 		<view class="item" @click="goPage('/pages/sale/mySaleOrder')">
 			<view class="title">订单总额(万)</view>
 			<view class="main-between cross-center">
-				<view class="num">{{userInfo.salesperson_info.order_total_amount}}</view>
+				<view class="num">{{(userInfo.salesperson_info.order_total_amount/10000).toFixed(2)}}</view>
 				<image style="width: 12rpx;height: 21rpx;" src="https://t17.9026.com/web/statics/image/index/arrow-right-gray.png"
 					mode=""></image>
 			</view>
 		</view>
 		<view class="line"></view>
-		<view class="item">
+		<view class="item" @click="$jump({'open_type':'navigate','url':'/pages/sale/myCommission'})">
 			<view class="title">我的提成(万)</view>
 			<view class="main-between cross-center">
-				<view class="num">{{userInfo.salesperson_info.order_total_commission}}</view>
+				<view class="num">{{(userInfo.salesperson_info.order_total_commission/10000).toFixed(2)}}</view>
 				<image style="width: 12rpx;height: 21rpx;" src="https://t17.9026.com/web/statics/image/index/arrow-right-gray.png"
 					mode=""></image>
 			</view>

+ 6 - 3
src/pages/sale/cusmter/addCustomer.vue

xqd xqd xqd xqd xqd
@@ -25,7 +25,7 @@
 		</view>
 		<view class="oinfo" v-for="(item,index) in form.estates" :key="index">
 			<view class="main-between cross-center linp border_bottom" >
-				<view class="field" style="font-weight: bold;" >{{index===0?'楼盘信息':''}}</view>
+				<view class="field" style="font-weight: bold;" >楼盘信息</view>
 				<view class="main-right" style="width: 210rpx;height: 100%;">
 					<view class="cross-center curd-btn" @click="addOrDel()" v-if="index==form.estates.length-1">
 						<image src="https://t17.9026.com/web/statics/image/sale/tianjia.png" mode=""></image>添加
@@ -75,7 +75,7 @@
 				formIndex:'',
 				form: {
 					sale_customer_id: '',
-					avatar: '',
+					avatar: 'https://swdzshopv4.oss-cn-chengdu.aliyuncs.com/uploads/20220111/aeec87ce2c9483ae057754ada306bb22.jpg',
 					mobile: '',
 					name: '',
 					estates: []
@@ -146,11 +146,12 @@
 			'estateInfo' in currPage.$vm ? this.form.estates[this.formIndex].estate_name = currPage.$vm.estateInfo.name : ''
 			'estateInfo' in currPage.$vm ? this.form.estates[this.formIndex].estate_id = currPage.$vm.estateInfo.id : ''
 			'estateInfo' in currPage.$vm ? this.form.estates[this.formIndex].multiIndex = currPage.$vm.estateInfo.multiIndex : ''
+			
 		},
 		methods: {
 			addOrDel(i){
 				if(i===undefined){
-					this.form.estates.push({estate_id: '',estate_no: '',room_no: ''})
+					this.form.estates.push({estate_id: '',estate_no: '',room_no: '',regionId:{province_id:'',city_id:'',district_id:''},region:''})
 				}else{
 					if(this.form.estates.length===1)return;
 					uni.showModal({
@@ -165,6 +166,7 @@
 				}
 			},
 			areaEvent(data,index=this.formIndex) {
+				console.log('data',data)
 				if (data) {
 					this.form.estates[index].regionId.province_id = data.province.id;
 					this.form.estates[index].regionId.city_id = data.city.id;
@@ -273,6 +275,7 @@
 						uni.showToast({
 							title:this.form.sale_customer_id?'编辑成功':'添加成功',
 						})
+						uni.navigateBack()
 					}else{
 						uni.showToast({
 							title:res.msg,

+ 1 - 1
src/pages/sale/cusmter/info.vue

xqd
@@ -42,7 +42,7 @@
 				<view class="tei">是否确认并认证该用户楼盘信息?</view>
 				<view class="main-between">
 					<navigator :url="`/pages/sale/cusmter/addCustomer?id=${info.id}`" @click="show = false" hover-class="none">
-					<view class=" btn left">认证成功</view>
+					<view class=" btn left">认证</view>
 					</navigator>
 					<view class=" btn right" @click="show = false">信息有误</view>
 				</view>

+ 5 - 3
src/pages/sale/cusmter/list.vue

xqd xqd
@@ -26,11 +26,11 @@
 				<image style="width: 13rpx;height: 21rpx;"
 					src="https://t17.9026.com/web/statics/image/sale/arrow_right.png" mode=""></image>
 			</view>
-			<view class="no-more" v-if="noMore">没有更多了...</view>
+			<view class="no-more" v-if="noMore && dataList.length>0">没有更多了...</view>
 			<view style="height: 200rpx;"></view>
-			<app-no-goods v-if="dataList.length === 0" :title="'暂无数据'" background="#f7f7f7"></app-no-goods>
+			<app-no-goods v-if="dataList.length === 0" :title="'暂无数据'" background="#ffffff"></app-no-goods>
 		</view>
-		<navigator url="/pages/sale/cusmter/addCustomer" hover-class="navigator-hover" v-if="!why==='select_customer'">
+		<navigator url="/pages/sale/cusmter/addCustomer" hover-class="navigator-hover" v-if="why!='select_customer'">
 			<button class="addPro" type="default">添加客户</button>
 		</navigator>
 	</view>
@@ -55,6 +55,8 @@
 		},
 		onLoad(option) {
 			this.why=option.why
+		},
+		onShow() {
 			this.getData()
 		},
 		onReachBottom() {

+ 87 - 0
src/pages/sale/myCommission.vue

xqd
@@ -0,0 +1,87 @@
+<template>
+	<app-layout>
+	<view style="min-height: 100vh;background-color: #f7f7f7;padding-top: 24rpx;">
+		<view class="main-around cross-center head">
+			<view>
+				<view class="hjx-tc-777 hjx-ts-22 mb24">已发放提成</view>
+				<view class="price28 hjx-tc-B19D60 hjx-ts-50"><text>¥</text>9826</view>
+			</view>
+			<view>
+				<view class="hjx-tc-777 hjx-ts-22 mb24">未发放金额</view>
+				<view class="price28 hjx-tc-333 hjx-ts-50"><text>¥</text>346</view>
+			</view>
+		</view>
+		<view class="list">
+			<view class="cross-center hjx-ts-30 hjx-tc-666" style="padding: 32rpx 0;">
+				已发放提成<image style="width: 30rpx;height: 25rpx;margin-left: 8rpx;" src="../../static/image/sale/tcff.png" mode=""></image>
+			</view>
+			<view style="width: 100%;height: 1px;background: #EAEAEA;"></view>
+			<view class="main-between cross-center item" :class="{'item-line':true}" v-for="(item,index) in dataList" :key="index">
+				<view class="main-between-y">
+					<view class="hjx-ts-28 hjx-tc-222 hjx-tw-500">提成收入</view>
+					<view class="hjx-ts-24 hjx-tc-666 hjx-tw-500">2021-02-10 10:12:32</view>
+				</view>
+				<view class="hjx-tc-B19D60 hjx-ts-34 hjx-tw-600">¥9826</view>
+			</view>
+			<view class="no-more" v-if="isNoMore && dataList.length>0">没有更多了...</view>
+			<app-no-goods v-if="dataList.length===0" :title="`暂无提成`" background="#fff"></app-no-goods>
+		</view>
+	</view>
+	</app-layout>
+</template>
+
+<script>
+	import appNoGoods from '@/components/page-component/app-no-goods/app-no-goods.vue';
+	export default {
+		components:{
+			appNoGoods
+		},
+		data() {
+			return {
+				dataList:[],
+				isNoMore:false,
+				page:1,
+			};
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.head{
+		width: 702rpx;
+		height: 200rpx;
+		background: linear-gradient(157deg, rgba(177, 157, 96, 0.3) 0%, rgba(255, 255, 255, 0) 100%);
+		border-radius: 4rpx;
+		opacity: 0.7;
+		margin: 0 auto;
+		text-align: center;
+	}
+	.price28{
+		display: flex;
+		align-items: flex-end;
+		font-weight: 600;
+		&>text{
+			padding-bottom: 6rpx;
+			font-size: calc(100% - 22rpx);
+			font-weight: 400;
+		}
+	}
+	.mb24{
+		margin-bottom: 24rpx;
+	}
+	.list{
+		width: 702rpx;
+		height: auto;
+		background: #FFFFFF;
+		border-radius: 4rpx;
+		margin: 24rpx auto 0;
+		padding: 0 24rpx;
+		.item{
+			height: 136rpx;
+			padding: 32rpx 0;
+		}
+		.item-line{
+			border-bottom: 1rpx solid #EAEAEA;
+		}
+	}
+</style>

+ 56 - 30
src/pages/sale/mySaleOrder.vue

xqd xqd xqd xqd xqd xqd xqd xqd
@@ -3,10 +3,12 @@
 	<app-layout >
 	<view class="page">
 		<!-- <view style="background-color: #fff;position: fixed;top: 0;width: 100%;"> -->
-		<view class="main-left cross-center search">
-			<image src="https://t17.9026.com/web/statics/image/index/search.png" mode=""></image>
-			<input style="width: 560rpx;" type="text" value="" placeholder="搜索客户、商品、时间、订单号" v-model="keyword"
-				placeholder-style="font-size:28rpx;color:#999;" />
+		<view style="background-color: #fff;">
+			<view class="main-left cross-center search">
+				<image src="https://t17.9026.com/web/statics/image/index/search.png" mode=""></image>
+				<input style="width: 560rpx;" type="text" value="" placeholder="搜索客户、商品、时间、订单号" v-model="keyword" @confirm="search"
+					placeholder-style="font-size:28rpx;color:#999;" />
+			</view>
 		</view>
 		<view style="background-color: #fff;position: sticky;top: 0;width: 100%;">
 			<AppDropdownMenu :size="28" :selectedColor="getTheme.color" :checkboxColor="getTheme.color"
@@ -46,9 +48,9 @@
 						客户楼盘绑定通知
 					</view> -->
 					<view class="main-between cross-center">
-						<view class="date">交易成功</view>
-						<image class="del" src="https://t17.9026.com/web/statics/image/user-center/del.png" mode="">
-						</image>
+						<view class="date">{{item.status_text}}</view>
+						<!-- <image class="del" src="https://t17.9026.com/web/statics/image/user-center/del.png" mode="">
+						</image> -->
 					</view>
 				</view>
 				<view class="center">
@@ -86,7 +88,7 @@
 							<!-- <view class="kbtn">上传发票</view> -->
 							<view class="kbtn">再次购买</view>
 							
-							<view class="kbtn" @click="$jump({open_type:'navigate',url:'/pages/order/express-detail/express-detail'})">查看物流</view>
+							<view class="kbtn" v-if="item.status>1" @click="$jump({open_type:'navigate',url:'/pages/order/express-detail/express-detail'})">查看物流</view>
 						</view>
 					</template>
 					<!-- <template v-if="false">
@@ -96,8 +98,8 @@
 					</template> -->
 				</view>
 			</view>
-			<view class="no-more" v-if="isNoMore">没有更多了...</view>
-			<app-no-goods v-if="dataList.length===0" :title="'暂无数据'" background="#f7f7f7"></app-no-goods>
+			<view class="no-more" v-if="isNoMore && dataList.length>0">没有更多了...</view>
+			<app-no-goods v-if="dataList.length===0" :title="`暂无订单`" background="#f7f7f7"></app-no-goods>
 		</view>
 		<template>
 			<view class="safe-area-inset-bottom">
@@ -126,33 +128,46 @@
 		},
 		data() {
 			return {
-				dataList:[{}],
+				dataList:[],
 				options: [
-					[{
-						text: '订单状态',
-						value: 1,
-						checked: true
-					}, {
-						text: '交易成功',
-						value: 2
-					}, {
-						text: '交易失败',
-						value: 3
-					}],
+					[
+						{
+							text: '订单状态',
+							value: 0,
+							checked: true
+						}, {
+							text: '全部',
+							value: 0
+						}, {
+							text: '待付款',
+							value: 1
+						},{
+							text: '待发货',
+							value: 2
+						},{
+							text: '待收货',
+							value: 3
+						},{
+							text: '已完成',
+							value: 4
+						},
+					],
 					[{
 						text: '全部客户',
-						value: 1,
+						value: 0,
 						checked: true
 					}, {
 						text: '已认证',
 						value: 2
 					}, {
 						text: '未认证',
-						value: 3
+						value: 1
 					}]
 				],
 				range: '订单状态',
+				status:0,
 				range1: '全部客户',
+				user_verify_status:0,
 				selectIndex: 0,
 				rangeShow: false,
 				rangeShow1: false,
@@ -187,11 +202,12 @@
 				this.$request({
 					url:this.$api.order.list,
 					data:{
-						status: 0,
+						status: this.status,
 						keyword: this.keyword,
 						dateArr: [],
 						page: this.page,
-						sale_id:this.info.salesperson_id
+						sale_id:this.info.salesperson_id,
+						user_verify_status:this.user_verify_status
 					},
 					method:'get'
 				}).then(res=>{
@@ -216,13 +232,23 @@
 				this.selectIndex ? this.rangeShow1 = true : this.rangeShow = true
 			},
 			rangeItemClick(e) {
-				console.log(e)
-				this.selectIndex ? this.range1 = e.text : this.range = e.text
-
+				if(this.selectIndex){
+					this.range1 = e.text
+					this.user_verify_status=e.value
+				}else{
+					this.range = e.text
+					this.status=e.value
+				}
+				this.getDataList()
 				this.rangeClose()
 			},
 			rangeClose() {
 				this.selectIndex ? this.rangeShow1 = false : this.rangeShow = false
+			},
+			
+			search(){
+				this.page=1
+				this.getDataList()
 			}
 		}
 	}
@@ -263,7 +289,7 @@
 		height: 82rpx;
 		// background: #FFFFFF;
 		border: 1rpx solid #EEEEEE;
-		border-radius: 4rpx;
+		border-radius: 82rpx;
 		margin: 0 auto;
 		padding-left: 22rpx;
 

+ 68 - 7
src/pages/user-center/news/news.vue → src/pages/sale/news/news.vue

xqd xqd xqd
@@ -1,16 +1,16 @@
 <template>
 	<view class="page">
-		<view class="box" v-for="(item,index) in 3" :key="index">
+		<view class="box" v-for="(item,index) in dataList" :key="index">
 			<view class="main-between cross-center header">
 				<!-- <view class="cross-center head t-omit" :class="{'border_bottom':true}">
 					<image src="https://t17.9026.com/web/statics/image/sale/1.png" mode=""></image>
 					周先生
 				</view> -->
 				<view class="cross-center head1">
-					<image src="https://t17.9026.com/web/statics/image/sale/1.png" mode=""></image>
+					<image src="https://t17.9026.com/web/statics/image/index/msg.png" mode=""></image>
 					客户楼盘绑定通知
 				</view>
-				<view class="main-between cross-center">
+				<view class="main-between cross-center" @click="del_msg(item.id,index)">
 					<!-- <view class="date">2021-11-17</view> -->
 					<image class="del" src="https://t17.9026.com/web/statics/image/user-center/del.png" mode=""></image>
 				</view>
@@ -23,7 +23,8 @@
 						<image src="https://t17.9026.com/web/statics/image/user-center/arrow-bottom.png" mode=""></image>
 					</view>
 				</view> -->
-				<view class="center-text">客户xxxx向您发起了楼盘xxxx的认证通知,请前往我的-我的客户查看并处理</view>
+				<view class="center-text">{{item.message}}</view>
+				<!-- 客户xxxx向您发起了楼盘xxxx的认证通知,请前往我的-我的客户查看并处理 -->
 				<!-- <view class="center-img">
 					<image v-for="(item, index) in 5" :key="index" src="https://t17.9026.com/web/statics/image/user-center/1.png" mode=""></image>
 				</view>
@@ -47,17 +48,77 @@
 			<view class="main-between footer cross-center border_top">
 				<view class="left">查看详情</view>
 				<image style="width: 12rpx;height: 22rpx;" src="https://t17.9026.com/web/statics/image/index/arrow-right-gray.png"
-					mode=""></image>
+					mode="" ></image>
 			</view>
 		</view>
-		<view class="no-more">没有更多了...</view>
+		<view class="no-more" v-if="noMore && dataList.length>0">没有更多了...</view>
 	</view>
 </template>
 
 <script>
 	export default {
 		data() {
-			return {};
+			return {
+				page:1,
+				dataList:[],
+				noMore:false
+			};
+		},
+		onLoad() {
+			this.getMessageList()
+		},
+		onReachBottom() {
+			if(!this.noMore){
+				this.page++
+				this.getMessageList()
+			}
+		},
+		methods:{
+			getMessageList(){
+				this.$request({
+					url:this.$api.sale.message_list,
+					data:{
+						page:this.page
+					},
+					method:'post'
+				}).then(res=>{
+					if(res.code===0){
+						if(this.page===1){
+							this.dataList=res.data.list
+						}else{
+							this.dataList=this.dataList(res.data.list)
+						}
+						if(res.data.list.length<20){
+							this.noMore=true
+						}
+					}
+					
+				})
+			},
+			del_msg(id,index){
+				uni.showModal({
+				    title: '提示',
+				    content: '确定删除该条消息吗',
+				    success:(qq)=> {
+				        if (qq.confirm) {
+				            this.$request({
+				            	url:this.$api.sale.message_delete,
+				            	data:{
+				            		message_id:id
+				            	},
+				            	method:'post'
+				            }).then(res=>{
+				            	if(res.code===0){
+									this.dataList.splice(index,1)
+								}
+				            })
+				        } else if (qq.cancel) {
+				            console.log('用户点击取消');
+				        }
+				    }
+				});
+				
+			}
 		}
 	};
 </script>

+ 6 - 2
src/pages/sale/properties/addProperties.vue

xqd xqd xqd xqd xqd
@@ -1,4 +1,5 @@
 <template>
+	<app-layout>
 	<view style="padding-top: 20rpx;">
 		<view class="main-left cross-center search">
 			<image src="https://t17.9026.com/web/statics/image/index/search.png" mode=""></image>
@@ -12,13 +13,13 @@
 				</view>
 				<view class="main-between-y right ">
 					<view class="title">{{item.name}}</view>
-					<view class="addr">{{item.address}}</view>
+					<view class="addr"><image style="width: 18rpx;height: 20rpx;margin-right: 12rpx;" src="https://t17.9026.com/web/statics/image/index/location.png"></image>{{item.address}}</view>
 					<view class="content t-omit-two" v-html="item.details"></view>
 				</view>
 				<image class="bg" src="https://t17.9026.com/web/statics/image/sale/properties_gradual.png" mode="">
 				</image>
 			</view>
-			<view class="no-more" v-if="noMore">没有更多了...</view>
+			<view class="no-more" v-if="noMore && dataList.length>0">没有更多了...</view>
 			<app-no-goods v-if="dataList.length === 0" :title="'暂无数据'" background="#f7f7f7"></app-no-goods>
 		</view>
 		<u-popup v-model="show" mode="center" border-radius="14" @close="show = false">
@@ -41,6 +42,7 @@
 			</view>
 		</u-popup>
 	</view>
+	</app-layout>
 </template>
 
 <script>
@@ -107,6 +109,7 @@
 				},800)
 			},
 			getData(page){
+				this.$showLoading()
 				this.$request({
 					url: this.$api.sale.estate_list,
 					data: {
@@ -127,6 +130,7 @@
 							this.noMore=true
 						}
 					}
+					this.$hideLoading()
 				})
 			}
 		},

+ 116 - 38
src/pages/sale/properties/properties.vue

xqd xqd xqd
@@ -1,61 +1,103 @@
 <template>
-	<view class="properties_list">
-		<view class="main-around tabs">
-			<view class="tab" :class="{'select':audit_state===2}" @click="audit_state=2">已通过<view class="under_line"></view></view>
-			<view class="tab" :class="{'select':audit_state===1}" @click="audit_state=1">待通过<view class="under_line"></view></view>
-		</view>
-		<view class="item main-left" v-for="(item,index) in dataList">
-			<view class="left">
-				<image :src="item.cover_img" mode=""></image>
+	<app-layout>
+		<view class="properties_list">
+			<view class="main-around tabs">
+				<view class="tab" :class="{'select':audit_state===2}" @click="audit_state=2">已通过<view
+						class="under_line"></view>
+				</view>
+				<view class="tab" :class="{'select':audit_state===1}" @click="audit_state=1">待通过<view
+						class="under_line"></view>
+				</view>
 			</view>
-			<view class="main-between-y right ">
-				<view class="title">{{item.name}}</view>
-				<view class="addr">{{item.address}}</view>
-				<view class="content t-omit-two" v-html="item.details"></view>
+			<view class="item main-left" v-for="(item,index) in dataList">
+				<view class="left">
+					<image :src="item.cover_img" mode=""></image>
+				</view>
+				<view class="main-between-y right ">
+					<view class="title">{{item.name}}</view>
+					<view class="addr">
+						<image style="width: 18rpx;height: 20rpx;margin-right: 12rpx;"
+							src="https://t17.9026.com/web/statics/image/index/location.png"></image>{{item.address}}
+					</view>
+					<view class="content t-omit-two" v-html="item.details"></view>
+				</view>
+				<image class="bg" src="https://t17.9026.com/web/statics/image/sale/properties_gradual.png" mode="">
+				</image>
 			</view>
-			<image class="bg" src="https://t17.9026.com/web/statics/image/sale/properties_gradual.png" mode=""></image>
+			<view class="no-more" v-if="isNoMore && dataList.length>0">没有更多了...</view>
+			<app-no-goods v-if="dataList.length===0" :title="`暂无数据`" background="#f7f7f7"></app-no-goods>
+			<view style="100rpx"></view>
+			<navigator url="/pages/sale/properties/addProperties" hover-class="navigator-hover">
+				<button class="addPro" :class="[`coupon-footer`,iphone_x? `iphone_x`:``]" type="default">添加楼盘</button>
+				<!-- <view :class="[`footer-space`,iphone_x? `iphone_x`:``]"></view>
+			<view :class="[`coupon-footer`,iphone_x? `iphone_x`:``]" @click="toList">去领券</view> -->
+			</navigator>
 		</view>
-		<view style="100rpx"></view>
-		<navigator url="/pages/sale/properties/addProperties" hover-class="navigator-hover">
-			<button class="addPro" type="default">添加楼盘</button>
-		</navigator>
-	</view>
+	</app-layout>
 </template>
 
 <script>
+	import appNoGoods from '@/components/page-component/app-no-goods/app-no-goods.vue';
 	export default {
+		components: {
+			appNoGoods
+		},
 		data() {
 			return {
-				audit_state:2,
-				dataList:[]
+				audit_state: 2,
+				dataList: [],
+				iphone_x: false,
+				isNoMore: false,
+				page: 1,
 			};
 		},
-		watch:{
-			audit_state(val){
-				this.getDate(1,'')
+		watch: {
+			audit_state(val) {
+				this.getDate()
 			},
 		},
 		onShow() {
-			this.getDate(1,'')
+			this.getDate()
 		},
 		onLoad() {
-			
+			uni.getSystemInfo({
+				success: (res) => {
+					if (res.model.indexOf('iPhone X') > -1 || res.model.indexOf('iPhone 11') > -1 || res.model
+						.indexOf('iPhone11') > -1 || res.model.indexOf('iPhone12') > -1 || res.model.indexOf(
+							'Unknown Device') > -1) {
+						this.iphone_x = true;
+					}
+				}
+			})
+		},
+		onReachBottom() {
+			if (!this.isNoMore) {
+				this.getDate()
+			}
 		},
-		methods:{
-			getDate(page,name){
+		methods: {
+			getDate() {
+				this.$showLoading()
 				this.$request({
 					url: this.$api.sale.estate_list,
 					data: {
-						page: page,
+						page: this.page,
 						is_sale_myself: 1,
-						name: name,
-						audit_state:this.audit_state
+						audit_state: this.audit_state
 					},
 					method: 'post'
-				}).then(res=>{
-					if(res.code===0){
-						this.dataList=res.data.list
+				}).then(res => {
+					if (res.code === 0) {
+						if (this.page === 1) {
+							this.dataList = res.data.list
+						} else {
+							this.dataList = this.dataList.concat(res.data.list)
+						}
+						if (res.data.list.length < 20) {
+							this.isNoMore = true
+						}
 					}
+					this.$hideLoading()
 				})
 			}
 		}
@@ -63,23 +105,52 @@
 </script>
 
 <style lang="scss" scoped>
+	.footer-space {
+		height: #{100rpx};
+	}
+
+	.footer-space.iphone_x {
+		height: #{150rpx};
+	}
+
+	.coupon-footer {
+		position: fixed;
+		bottom: 0;
+		left: 0;
+		right: 0;
+		width: 100%;
+		height: #{100rpx};
+		line-height: #{100rpx};
+		text-align: center;
+		background-color: #fff;
+		z-index: 2;
+	}
+
+	.coupon-footer.iphone_x {
+		height: #{150rpx};
+		padding-bottom: #{50rpx};
+	}
+
 	.properties_list {
 		background-color: #F8F8F8;
-		
-		.tabs{
+
+		.tabs {
 			height: 90rpx;
 			font-size: 28rpx;
 			font-weight: 500;
 			color: #838584;
-			.tab{
+
+			.tab {
 				width: 50%;
 				line-height: 90rpx;
 				text-align: center;
 			}
-			.select{
+
+			.select {
 				color: #A18353;
 				position: relative;
-				.under_line{
+
+				.under_line {
 					position: absolute;
 					left: 50%;
 					bottom: 10rpx;
@@ -159,4 +230,11 @@
 		}
 	}
 
+	.no-more {
+		font-size: 24rpx;
+		font-weight: 500;
+		color: #666666;
+		text-align: center;
+		line-height: 80rpx;
+	}
 </style>

+ 32 - 24
src/pages/sale/sale-user-center.vue

xqd xqd xqd xqd xqd xqd xqd xqd
@@ -14,18 +14,19 @@
 			<view class="list" :class="[listStyle]">
 				<!--  #ifdef MP -->
 				<view class="item" v-for="(item, index) in temporaryMenu" :key="index">
-					<app-jump-button form :url="item.link_url" :open_type="item.open_type" :item="item"
+					<app-jump-button form :url="item.link_url" :open_type="item.open_type" :item="item" :number="userInfo.service_phone"
 						:arrangement="'row'">
 						<view style="width: 100%" class="item-container dir-left-nowrap cross-center">
 							<view class="box-grow-0">
 								<image :src="item.icon_url" class="icon"></image>
 							</view>
-							<view class="box-grow-1" style="max-width: 100%">
+							<view class="box-grow-1 main-between" style="max-width: 100%">
 								<view class="name">{{item.name}}</view>
+								<view class="num" v-if="item.num">{{item.num===1?Number(userInfo.salesperson_info.already_verify_num) + Number(userInfo.salesperson_info.not_verify_num):userInfo.salesperson_info.estate_num}}</view>
 							</view>
 							<view class="box-grow-0">
-								<image src="https://shop.9026.com/web/statics/image/mall/static/icon/arrow-right.png"
-									class="arrow"></image>
+								<image src="https://t17.9026.com/web/statics/image/index/arrow-right-bgwrite.png"
+									class="arrow" ></image>
 								<!-- <image src="https://t17.9026.com/web/statics/image/index/arrow-right-bgwrite.png" class="arrow"></image> -->
 							</view>
 						</view>
@@ -46,11 +47,12 @@
 								</view>
 								<view class="box-grow-1" style="max-width: 100%">
 									<view class="name">{{item.name}}</view>
+									<view class="num" v-if="item.num">{{item.num===1?Number(userInfo.salesperson_info.already_verify_num) + Number(userInfo.salesperson_info.not_verify_num):userInfo.salesperson_info.estate_num}}</view>
 								</view>
 								<view class="box-grow-0" v-if="userCenter.menu_style=='1'">
 									<image
-										src="https://shop.9026.com/web/statics/image/mall/static/icon/arrow-right.png"
-										class="arrow"></image>
+										src="https://t17.9026.com/web/statics/image/index/arrow-right.png"
+										class="arrow" ></image>
 								</view>
 							</view>
 						</app-jump-button>
@@ -120,6 +122,7 @@
 						link_url: "/pages/sale/cusmter/list",
 						name: "我的客户",
 						open_type: "navigate",
+						num:1,
 					},
 					{
 						icon_url: "https://t17.9026.com/web/statics/image/index/lp.png",
@@ -127,27 +130,28 @@
 						link_url: "/pages/sale/properties/properties",
 						name: "我负责的楼盘",
 						open_type: "navigate",
+						num:2,
 					},
 					{
 						icon_url: "https://t17.9026.com/web/statics/image/index/xx.png",
 						key: "pintuan",
-						link_url: "/pages/user-center/news/news",
+						link_url: "/pages/sale/news/news",
 						name: "我的消息",
 						open_type: "navigate",
 					},
-					{
-						icon_url: "https://t17.9026.com/web/statics/image/index/m.png",
-						key: "pintuan",
-						link_url: "",
-						name: "我的身份码",
-						open_type: "navigate",
-					},
+					// {
+					// 	icon_url: "https://t17.9026.com/web/statics/image/index/m.png",
+					// 	key: "pintuan",
+					// 	link_url: "",
+					// 	name: "我的身份码",
+					// 	open_type: "navigate",
+					// },
 					{
 						icon_url: "https://t17.9026.com/web/statics/image/index/kf.png",
 						key: "pintuan",
 						link_url: "",
 						name: "联系客服",
-						open_type: "navigate",
+						open_type: "tel",
 					},
 					{
 						icon_url: "https://t17.9026.com/web/statics/image/sale/sale_home.png",
@@ -361,7 +365,7 @@
 			this.$jwx.config();
 			// #endif
 			if(!this.info.salesperson_info){
-				uni.navigateTo({
+				uni.redirectTo({
 					url:'/pages/sale/sale_login/sale_login'
 				})
 			}
@@ -373,7 +377,7 @@
 				});
 			});
 			// if (this.$user.isLogin()) {
-			//     this.$store.dispatch('user/refresh');
+			    this.$store.dispatch('user/refresh');
 			// }
 			this.$nextTick().then(() => {
 				this.$store.dispatch('userCenter/data');
@@ -399,9 +403,9 @@
 	}
 
 	.app-my-service {
-		width: #{702rpx};
+		// width: #{702rpx};
 		border-radius: #{16rpx};
-		margin: #{24rpx} auto;
+		// margin: #{24rpx} auto;
 		box-shadow: 0 0 #{8rpx} rgba(0, 0, 0, .05);
 		background: #fff;
 
@@ -412,21 +416,25 @@
 		.list {
 			.item {
 				.icon {
-					width: #{50rpx};
-					height: #{50rpx};
+					width: #{36rpx};
+					height: #{36rpx};
 					display: block;
 				}
 
 				.arrow {
-					width: #{12rpx};
-					height: #{22rpx};
+					width: 42rpx;height: 42rpx;
+				}
+				.num{
+					font-size: 28rpx;
+					color: #999999;
+					margin-right: 32rpx;
 				}
 			}
 		}
 
 		.list.row {
 			.item-container {
-				padding: #{20rpx} #{32rpx};
+				padding: #{30rpx} #{39rpx};
 			}
 
 			.icon {

+ 4 - 1
src/pages/sale/salePersonInfo.vue

xqd xqd
@@ -59,6 +59,9 @@
 		font-size: 30rpx;
 		font-weight: 500;
 		color: #222222;
+		.title{
+			width: 200rpx;
+		}
 		.head{
 			width: 78rpx;
 			height: 78rpx;
@@ -73,7 +76,7 @@
 		.input{
 			text-align: right;
 			font-size: 30rpx;
-			font-weight: 500;
+			// font-weight: 500;
 			color: #999999;
 		}
 	}

+ 7 - 1
src/pages/sale/sale_login/sale_login.vue

xqd xqd
@@ -17,12 +17,13 @@
 				<view class="b_line"></view>
 			</view>
 			<view class="forget" @click="forgetPwd">忘记密码</view>
-			<button class="submit" type="default" @click="login">登录</button>
+			<button class="submit" :style="{background:getTheme.background_gradient_btn,}" type="default" @click="login">登录</button>
 		</view>
 	</app-layout>
 </template>
 
 <script>
+	import {mapGetters} from 'vuex'
 	export default {
 		data() {
 			return {
@@ -30,6 +31,11 @@
 				password:'',
 			};
 		},
+		computed:{
+			...mapGetters('mallConfig', {
+				getTheme: 'getTheme'
+			}),
+		},
 		methods:{
 			login(){
 				this.$request({

+ 102 - 25
src/pages/search/search.vue

xqd xqd xqd xqd
@@ -86,12 +86,34 @@
                             </view>
                         </view>
                     </template>
-                    <view style="background-color: #f7f7f7">
+                    <view style="background-color: #f7f7f7;padding: 0 20rpx;">
+						<view class="item" v-for="(item,index) in CompositionList" :key="index" @click="$jump({'open_type':'navigate','url':`/pages/case/projectInfo?id=${item.id}`})">
+							<view class="main-between img">
+								<view style="width: 419rpx;height: 281rpx;">
+									<image style="width: 420rpx;height: 420rpx;" :src="item.cover_img" mode=""></image>
+								</view>
+								<view style="width: 206rpx;">
+									<image style="width: 206rpx;height: 206rpx;" :src="item.banner_imgs[0].banner_imgs" mode=""></image>
+									<image style="width: 206rpx;height: 206rpx;" :src="item.banner_imgs[1].banner_imgs" mode=""></image>
+								</view>
+							</view>
+							<view class="main-between pl" >
+								<view class="main-between-y">
+									<view class="title t-omit">{{item.name}}</view>
+									<view class="desc">已售:{{item.sale_num}}套 | {{item.collect_num}}人收藏</view>
+									<view class="price"><text>¥</text>{{item.actual_price}}</view>
+								</view>
+								<view class="cross-bottom arrow-right">
+									<image src="https://t17.9026.com/web/statics/image/index/arrow-right-gray.png" mode=""></image>
+								</view>
+							</view>
+						</view>
                         <u-ordinary-list :is-under-line-price="isListUnderlinePrice == 1 ? true : false"
                                          :reset="goodsReset" @buyProduct="buyProduct" :pagination="true" :list="newList" :theme="getTheme"
                                          :show-buy-btn="sign === 'goods' ? true : false"
                                          :is-show-attr="false"
-                                         :list-style="2"></u-ordinary-list>
+                                         :list-style="2">
+						</u-ordinary-list>
                     </view>
                 </view>
                 <view class="u-loading-list" v-if="loading">加载中...</view>
@@ -128,6 +150,7 @@ export default {
     data() {
         return {
             hotGoodsList: [],
+			CompositionList:[],
             list: [],
             isSearch: false,
             historyList: [],
@@ -355,39 +378,54 @@ export default {
             this.getSelect();
             this.reset();
         },
-        getGoodsList() {
+        async getGoodsList() {
             if (!this.keyword) return;
             if (is_loading) return;
             is_loading = true;
-            this.$request({
-                url: this.url,
-                data: {
-                    keyword: this.keyword,
-                    mch_id: this.mch_id,
-                    page: page,
-                }
-            }).then(response => {
-                is_loading = false;
-                this.isSearch = true;
-                this.loading = false;
-                let { code, data, msg } = response;
+			let compositionList=await this.$request({
+			    url: this.$api.composition.list,
+			    data: {
+			        keyword: this.keyword,
+			        // mch_id: this.mch_id,
+					limit:10,
+			        page: page,
+			    }
+			})
+			if (compositionList.code === 0) {
+			    if (page === 1) this.CompositionList = [];
+			    if (compositionList.data.list.length > 0) {
+			        this.CompositionList.push(...compositionList.data.list);
+			    } 
+			} 
+			if(compositionList.data.list.length<10){
+				let goodsList=await this.$request({
+					url: this.url,
+					data: {
+						keyword: this.keyword,
+						mch_id: this.mch_id,
+						page: page,
+					}
+				})
+                let { code, data, msg } = goodsList;
                 if (code === 0) {
-                    if (page === 1) this.list = [];
                     if (data.list.length > 0) {
                         this.list.push(...data.list);
-                        page++;
                     } else {
                         is_no_more = true;
                         if (page === 1) this.getRecommend();
                     }
-                } else {
-                    uni.showModal({
-                        content: msg
-                    })
-                }
-            }).catch(() => {
-                is_loading = false;
-            });
+                } 
+				if(code!=0 ||compositionList.code!=0){
+							   uni.showModal({
+							       content: msg
+							   })
+				}
+           }
+		   page++;
+		   is_loading = false;
+		   this.isSearch = true;
+		   this.loading = false;
+		   
         },
         setHistory() {
             let historyList = this.getHistory();
@@ -632,6 +670,45 @@ export default {
                 margin-right: #{40rpx};
             }
         }
+		//composition
+		.item{
+			width: 678rpx;
+			height: auto;
+			background: #FFFFFF;
+			border-radius: 8rpx;
+			margin:0 auto 24rpx;
+			padding: 27rpx 22rpx;
+			.img{
+				height: 420rpx;
+				border-radius: 10rpx;
+				overflow: hidden;
+			}
+			.pl{
+				margin-top: 25rpx;
+				.title{
+					width: 620rpx;
+					font-size: 32rpx;
+					font-weight: bold;
+					color: #222222;
+				}
+				.desc{
+					font-size: 22rpx;
+					font-weight: 500;
+					color: #999999;
+				}
+				.price{
+					font-size: 28rpx;
+					font-weight: 500;
+					color: #F93F3F;
+				}
+				.arrow-right{
+					image{
+						width: 15rpx;
+						height: 26rpx;
+					}
+				}
+			}
+			}
     }
     .u-loading-list {
         height: 64upx;

+ 6 - 6
src/pages/share/index/index.vue

xqd xqd xqd
@@ -7,9 +7,9 @@
 					<image class="user-avatar box-grow-0" :src="userInfo.avatar"></image>
 					<view class="box-grow-1 dir-top-nowrap main-center">
 						<view class="user-name t-omit">{{name ? name:userInfo.nickname}}</view>
-						<view class="mtb-10 t-omit">
+						<view class="mtb-10 t-omit hjx-tc-666">
 							{{custom_setting.words.parent_name.name}}:{{userInfo.identity.parent_name}}</view>
-						<view v-if="index">分销等级:{{index.level_name ? index.level_name : '无'}}</view>
+						<view v-if="index" class="hjx-tc-666">分销等级:{{index.level_name ? index.level_name : '无'}}</view>
 					</view>
 					<view class="box-grow-0" v-if="share_setting.is_show_share_level == 1"
 						@click="$jump({url: '/pages/share/level/level', open_type: 'navigate'})">升级条件</view>
@@ -539,10 +539,10 @@
 <style scoped lang="scss">
 	.info {
 		height: #{312rpx};
-		background-color: #ff4544;
+		// background-color: #ff4544;
 		width: 100%;
 		padding: #{20rpx} #{25rpx} 0;
-		color: #fff;
+	color: #333333;
 		font-size: #{28rpx};
 		background-repeat: no-repeat;
 		background-size: #{750rpx} #{312rpx};
@@ -593,10 +593,10 @@
 		height: #{56rpx};
 		line-height: #{54rpx};
 		font-size: #{28rpx};
-		color: #fff;
+		color: #333;
 		background-color: auto;
 		text-align: center;
-		border: #{2rpx} solid #fff;
+		border: #{2rpx} solid #333;
 		padding: 0;
 		margin-top: #{48rpx};
 	}

+ 1 - 1
src/pages/user-center/evaluate/list.vue

xqd
@@ -59,7 +59,7 @@
 				</view>
 			</view>
 			<appNoData v-if="evaluateList.length==0" :title="'暂无评价'"></appNoData>
-			<view class="no-more" v-if="noMore">没有更多了...</view>
+			<view class="no-more" v-if="noMore && evaluateList.length>0">没有更多了...</view>
 		</view>
 	</app-layout>
 </template>

+ 145 - 0
src/pages/user-center/privacyAgreement/privacyAgreement.vue

xqd
@@ -0,0 +1,145 @@
+<template>
+	<view style="min-height: 100vh;background-color: #f0f2f5;">
+		<view v-html=""></view>
+		<button class="login-btn" v-if="content" @click="login">
+			立即登录
+		</button>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				content:''
+			};
+		},
+		methods:{
+			login(e){
+				this.$store.commit("user/showLoginModal", false);
+				// #ifdef MP-TOUTIAO
+				this.getUserInfo(e);
+				// #endif
+				// #ifdef MP-WEIXIN
+				this.$user.getUserProfile(e).then(res => {
+					console.log(res)
+					this.getUserInfo(res);
+				}).catch(res => {
+					console.log(res)
+				})
+				// #endif
+			},
+			getUserInfo(e) {
+			    // #ifdef H5
+			    if (this.$jwx.isWechat()) {
+			        this.$request({
+			            url: this.$api.registered.url,
+			            method: 'get',
+			            data: {
+			                scope: 'snsapi_userinfo',
+			                response_type: 'code',
+			                url: `${window.location.href}`
+			            }
+			        }).then(res => {
+			            if (res.code === 0) {
+			                this.$storage.setStorageSync('_USER_SIGN', true);
+			                window.location.replace(res.data.url);
+			            } else {
+			                uni.navigateTo({
+			                    url: '/pages/registered/sign'
+			                });
+			            }
+			        });
+			    } else {
+			        uni.navigateTo({
+			            url: '/pages/registered/sign'
+			        });
+			    }
+			    // #endif
+			    // #ifdef MP
+			    this.$store.commit('user/showLoginModal', false);
+			    const resolve = this.$user.getUserInfoResolve;
+			    const reject = this.$user.getUserInfoReject;
+			    this.$event.on(this.$const.EVENT_USER_LOGIN, true).then(() => {
+			        this.$jump({
+			            open_type: 'reload'
+			        })
+			    });
+			    // #ifdef MP-WEIXIN
+			    if (e.detail.errMsg !== 'getUserInfo:ok') {
+			        this.$store.commit('user/showLoginModal', true);
+			        return reject(e.detail.errMsg);
+			    } else {
+			        return resolve(e);
+			    }
+			    // #endif
+			
+			    // #ifdef MP-ALIPAY
+			    my.getOpenUserInfo({
+			        success(openUserInfo) {
+			            const response = JSON.parse(openUserInfo.response);
+			            e.detail = {
+			                rawData: JSON.stringify(response.response),
+			                encryptedData: '',
+			                iv: '',
+			                signature: '',
+			            };
+			            return resolve(e);
+			        },
+			        fail(failE) {
+			            console.log('getOpenUserInfo:', failE);
+			        },
+			    });
+			    // #endif
+			
+			    // #ifdef MP-BAIDU
+			    e.detail.rawData = JSON.stringify(e.detail.userInfo);
+			    e.detail.encryptedData = '';
+			    e.detail.iv = '';
+			    e.detail.signature = '';
+			    return resolve(e);
+			    // #endif
+			
+			    // #ifdef MP-TOUTIAO
+			    uni.login({
+			        success() {
+			            uni.getUserInfo({
+			                success(result) {
+			                    e.detail = {
+			                        rawData: result.rawData,
+			                        encryptedData: '',
+			                        iv: '',
+			                        signature: '',
+			                    };
+			                    return resolve(e);
+			                },
+			                fail(e) {
+			                    console.log('getUserInfo fail:', e);
+			                },
+			            });
+			        },
+			        fail(e) {
+			            console.log('login fail:', e);
+			        },
+			    });
+			    // #endif
+			    // #endif
+			},
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.login-btn{
+		width: 678rpx;
+		height: 82rpx;
+		background: #EA554D;
+		border-radius: 41rpx;
+		margin: 20rpx auto;
+		text-align: center;
+		font-size: 30rpx;
+		font-weight: 500;
+		color: #FFFFFF;
+		line-height: 82rpx;
+	}
+</style>

+ 1 - 1
src/pages/user-center/user-center.vue

xqd
@@ -15,7 +15,7 @@
             <view @click="router(item.name)" class="u-foot-item main-center" v-for="(item, key) in foot_bar" :key="key">
                 <!-- <image class="u-icon" :src="item.icon_url"></image> -->
                 <view class="u-foot-info">
-                    <view class="u-foot-num">{{item.name | showNum(userInfo)}}</view>
+                    <view class="u-foot-num" style="font-weight: bold;">{{item.name | showNum(userInfo)}}</view>
                     <view>{{item.name}}</view>
                 </view>
             </view>

+ 1 - 1
src/plugins/composition/components/app-add-subtract/app-add-subtract.vue

xqd
@@ -196,7 +196,7 @@
 			line-height: #{32upx};
 			height: #{32rpx};
 			width: #{68rpx};
-			font-size: #{21rpx};
+			font-size: #{24rpx};
 			margin-top: #{4rpx};
 			color: #353535;
 			text-align: center;

+ 3 - 3
src/plugins/composition/components/app-bd-info/app-bd-info.vue

xqd xqd
@@ -16,7 +16,7 @@
 					<view class="main-between">
 						<view class="main-left">
 							<view class="tag">{{info.tag}}</view>
-							<view class="tag">全款</view>
+							<!-- <view class="tag">全款</view> -->
 							<!-- <view class="tag">满200减10</view> -->
 						</view>
 					</view>
@@ -111,13 +111,13 @@
 		}
 		.tag{
 			width: auto;
-			height: 25rpx;
+			height: 28rpx;
 			border: 1rpx solid #F59922;
 			border-radius: 2rpx;
 			font-size: 20rpx;
 			font-weight: 500;
 			color: #F59922;
-			line-height: 24rpx;
+			line-height: 20rpx;
 			margin-right: 13rpx;
 			padding: 0 9rpx;
 		}

+ 42 - 39
src/plugins/composition/components/app-list/app-list.vue

xqd xqd xqd xqd xqd xqd xqd xqd xqd xqd
@@ -18,13 +18,13 @@
 						        <image class="item-good-attr-arrow" src="https://t17.9026.com/web/statics/image/index/arrow-right-A18353.png"></image>
 						    </view>
 						    <view class="item-good-attr" v-else @click="chooseAttr(goods,index)">
-						        <view class="item-good-attr-text t-omit-two">
+						        <view class="item-good-attr-text t-omit">
 									<!-- {{attr.attr_group_name}}: -->
 						            <text v-for="attr in goods.choose_attr.attr_list" :key="attr.attr_id">{{attr.attr_name}}</text>
 						        </view>
 						        <image class="item-good-attr-arrow" src="https://t17.9026.com/web/statics/image/index/arrow-right-A18353.png"></image>
 						    </view>
-							<view class="price"><text class="ought_price">¥{{goods.choose_attr?goods.choose_attr.price*goods.choose_attr.number:goods.min_price}}</text><text class="paid_price" v-show="goods.total_price">实付:¥<text>{{goods.total_price}}</text></text></view>
+							<view class="price"><text class="ought_price">¥{{goods.choose_attr?goods.choose_attr.price*goods.choose_attr.number:goods.min_price}}</text><text class="paid_price" v-show="goods.total_price>=0">实付:¥<text>{{goods.total_price}}</text></text></view>
 						</view>
 					</view>
 					<app-add-subtract :xStyle="2" :stock="goods.stock" :good_id="goods.id" :min="1" :value="goods.choose_attr.number" @change="addsubChange($event,goods,index,index1,0)"></app-add-subtract>
@@ -51,7 +51,7 @@
                             </view>
                             <image class="item-good-attr-arrow" src="https://t17.9026.com/web/statics/image/index/arrow-right-A18353.png"></image>
                         </view>
-                        <view class="price"><text class="ought_price">¥{{goods.choose_attr?goods.choose_attr.price*goods.choose_attr.number:goods.min_price}}</text><text class="paid_price" v-show="goods.total_price">实付:¥<text>{{goods.total_price}}</text></text></view>
+                        <view class="price"><text class="ought_price">¥{{goods.choose_attr?goods.choose_attr.price*goods.choose_attr.number:goods.min_price}}</text><text class="paid_price" v-show="goods.total_price>=0">实付:¥<text>{{goods.total_price}}</text></text></view>
                     </view>
 					</view>
 					<app-add-subtract :xStyle="2" :stock="goods.stock" :good_id="goods.id" :min="0" :value="goods.choose_attr.number" @change="addsubChange($event,goods,index,idx,1)"></app-add-subtract>
@@ -163,6 +163,7 @@
             // 规格选择
             check({item}) {
                 this.checked = item;
+				console.log(this.checked)
             },
             toDetail(id) {
                 uni.navigateTo({
@@ -203,6 +204,9 @@
                 })
                 that.list[that.index].host_list.forEach(v => {
                     if(v.id == that.goods.id) {
+						v.choose_attr = selectAttr;
+						!v.choose_attr.number?v.choose_attr.number=1:''
+						v.detail.selectAttr = selectAttr;
                         for(let i in selectAttr.attr_list) {
                             for(let j in v.attr_groups) {
                                 if(v.attr_groups[j].attr_group_id == selectAttr.attr_list[i].attr_group_id) {
@@ -215,8 +219,6 @@
                                 }
                             }
                         }
-                        v.choose_attr = selectAttr;
-                        v.detail.selectAttr = selectAttr;
                         v.choose_goods = true;
                         that.count();
                         that.$forceUpdate();
@@ -235,35 +237,35 @@
                 this.index = index;
                 this.attrShow = Math.random();
             },
-            choose(index,item) {
-                if(this.list[index].type == 2) {
-                    this.list[index].choose = !this.list[index].choose;
-                    for(let i in this.list[index].goods_list) {
-                        this.list[index].goods_list[i].choose_goods = this.list[index].choose
-                    }
-                    this.count();
-                    this.$forceUpdate();
-                    if (this.search) {
-                        this.$emit('search', item);
-                    }
-                }
-            },
-            chooseGoods(idx,index,item) {
-                this.list[index].goods_list[idx].choose_goods = !this.list[index].goods_list[idx].choose_goods;
-                let all = true;
-                for(let i in this.list[index].goods_list) {
-                    if(!this.list[index].goods_list[i].choose_goods) {
-                        all = false;
-                    }
-                }
-                this.list[index].choose = all;
-                this.$forceUpdate();
-                this.$emit("updateList",this.list);
-                this.count();
-                if (this.search) {
-                    this.$emit('search', item, 1);
-                }
-            },
+            // choose(index,item) {
+            //     if(this.list[index].type == 2) {
+            //         this.list[index].choose = !this.list[index].choose;
+            //         for(let i in this.list[index].goods_list) {
+            //             this.list[index].goods_list[i].choose_goods = this.list[index].choose
+            //         }
+            //         this.count();
+            //         this.$forceUpdate();
+            //         if (this.search) {
+            //             this.$emit('search', item);
+            //         }
+            //     }
+            // },
+            // chooseGoods(idx,index,item) {
+            //     this.list[index].goods_list[idx].choose_goods = !this.list[index].goods_list[idx].choose_goods;
+            //     let all = true;
+            //     for(let i in this.list[index].goods_list) {
+            //         if(!this.list[index].goods_list[i].choose_goods) {
+            //             all = false;
+            //         }
+            //     }
+            //     this.list[index].choose = all;
+            //     this.$forceUpdate();
+            //     this.$emit("updateList",this.list);
+            //     this.count();
+            //     if (this.search) {
+            //         this.$emit('search', item, 1);
+            //     }
+            // },
             count() {
                 let that = this;
                 that.total = 0;
@@ -308,11 +310,11 @@
 					for (let k = 0; k < that.list[i].host_list.length; k++) {
 						let item=that.list[i].host_list[k]
 						if(item.choose_attr) {
-							that.list[i].total_price = (+item.choose_attr.price - +item.price)*item.choose_attr.number
+							that.list[i].total_price += (+item.choose_attr.price - +item.price)*item.choose_attr.number
 							item.total_price = (+item.choose_attr.price - +item.price)*item.choose_attr.number
 							that.max_discount += (+item.price)*item.choose_attr.number
 							if(item.total_price < 0) {
-								item.total_price = 0
+								item.total_price = 0.00
 							}else {
 								item.total_price = +item.total_price.toFixed(2);
 							}
@@ -327,7 +329,7 @@
                             item.total_price = (+item.choose_attr.price - +item.price)*item.choose_attr.number
                             that.max_discount += (+item.price)*item.choose_attr.number
                             if(item.total_price < 0) {
-                                item.total_price = 0
+                                item.total_price = 0.00
                             }else {
                                 item.total_price = +item.total_price.toFixed(2);
                             }
@@ -341,7 +343,7 @@
                         }
                     }
                     if(that.list[i].total_price < 0) {
-                        that.list[i].total_price = 0
+                        that.list[i].total_price = 0.00
                     }
                     that.list[i].total_price = +that.list[i].total_price.toFixed(2);
                     that.max_discount = +that.max_discount.toFixed(2);
@@ -516,11 +518,12 @@
 						
 						width: 110rpx;
 						padding-right: 20rpx;
-						height: 30rpx;
+						height: 36rpx;
 						background: #EFDDC4;
 						border: 1px solid #A18353;
 						border-radius: 4rpx;
 						overflow: hidden;
+						padding: 0rpx 7rpx;
                         .item-good-attr-text {
                             line-height: #{30rpx};
                             max-height: #{62rpx};

+ 2 - 2
src/plugins/composition/detail/detail.vue

xqd
@@ -1,10 +1,10 @@
 <template>
 	<app-layout>
-		<app-bd-info @receive="receive" :info="list[0]" :coupons="goods_coupon_center" :total="total"></app-bd-info>
+		<app-bd-info v-if="list.length>0" @receive="receive" :info="list[0]" :coupons="goods_coupon_center" :total="total"></app-bd-info>
 		<!--商品优惠券-->
 		<bd-coupon @change="setCoupon" @on-show-change="val => {isCouponShow = val}" :isCustomEntry="true"
 			:myShow="isCouponShow" :theme="getTheme" :coupons="goods_coupon_center"></bd-coupon>
-		<view
+		<view v-show="list.length>0"
 			style="font-size: 34rpx;font-weight: bold;color: #222222;line-height: 46rpx;padding:30rpx 0 0 35rpx;background-color: #fff;">
 			套餐内商品</view>
 		<app-list v-if="loading" :hidden="false" :top="0" :theme="getTheme" :list="list" v-on:update="update"

+ 1 - 1
src/plugins/pt/order/order.vue

xqd
@@ -6,7 +6,7 @@
 		    </view>
 	        <view class="order-list">
 		        <app-order-list :theme="getTheme" @click="deleteItem" :list="list"></app-order-list>
-				<AppNoData v-if="list.length===0" title="暂无订单"></AppNoData>
+				<AppNoData v-if="list.length===0" :background="'#f7f7f7'" :color="'#999999'" :fixed="true" :icon="'https://t17.9026.com/web/statics/image/index/no-pt-order.png'" title="暂无订单"></AppNoData>
 	        </view>
 	    </view>
     </app-layout>

+ 19 - 1
src/static/css/hxj.scss

xqd xqd xqd
@@ -9,9 +9,16 @@
 .hjx-tc-222{
 	color: $uni-important-color-black;
 }
+
+.hjx-tc-333{
+	color: #333;
+}
 .hjx-tc-666{
 	color: $uni-general-color-one;
 }
+.hjx-tc-777{
+	color: #777;
+}
 .hjx-tc-999{
 	color: $uni-general-color-two;
 }
@@ -43,6 +50,9 @@
 .hjx-ts-34{
 	font-size: 34rpx;
 }
+.hjx-ts-50{
+	font-size: 50rpx;
+}
 
 .hjx-tw-500{
 	font-weight: 500;
@@ -87,4 +97,12 @@
 	width: 100%;
 	height: 1px;
 	background-color:#CACACA;
-}
+}
+
+.no-more {
+		font-size: 24rpx;
+		font-weight: 500;
+		color: #666666;
+		text-align: center;
+		line-height: 80rpx;
+	}

BIN
src/static/image.zip


BIN
src/static/image/index/auth-default.png


BIN
src/static/image/index/detail-tell.png


BIN
src/static/image/index/icon-favorite-active.png


BIN
src/static/image/index/icon-favorite.png


BIN
src/static/image/index/msg.png


BIN
src/static/image/index/no-pt-order.png


BIN
src/static/image/sale/cart.png


BIN
src/static/image/sale/cart_select.png


BIN
src/static/image/sale/tcff.png


+ 60 - 60
vue.config.js

xqd xqd
@@ -18,10 +18,10 @@ let copyPlugin = [
         from: path.join(__dirname, 'src/sitemap.json'),
         to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, '')
     },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'pages/app_admin/siteinfo.js')
-    },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'pages/app_admin/siteinfo.js')
+    // },
     {
         from: path.join(__dirname, 'src/siteinfo.js'),
         to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'pages/card/siteinfo.js')
@@ -30,70 +30,70 @@ let copyPlugin = [
         from: path.join(__dirname, 'src/siteinfo.js'),
         to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'pages/coupon/siteinfo.js')
     },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/advance/siteinfo.js')
-    },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/community/siteinfo.js')
-    },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/advance/siteinfo.js')
+    // },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/community/siteinfo.js')
+    // },
     {
         from: path.join(__dirname, 'src/siteinfo.js'),
         to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/book/siteinfo.js')
     },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/step/siteinfo.js')
-    },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/bargain/siteinfo.js')
-    },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/flash_sale/siteinfo.js')
-    },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/exchange/siteinfo.js')
-    },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/gift/siteinfo.js')
-    },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/integral_mall/siteinfo.js')
-    },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/miaosha/siteinfo.js')
-    },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/pick/siteinfo.js')
-    },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/step/siteinfo.js')
+    // },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/bargain/siteinfo.js')
+    // },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/flash_sale/siteinfo.js')
+    // },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/exchange/siteinfo.js')
+    // },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/gift/siteinfo.js')
+    // },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/integral_mall/siteinfo.js')
+    // },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/miaosha/siteinfo.js')
+    // },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/pick/siteinfo.js')
+    // },
     {
         from: path.join(__dirname, 'src/siteinfo.js'),
         to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/pt/siteinfo.js')
     },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/mch/mch/siteinfo.js')
-    },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/wholesale/siteinfo.js')
-    },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/mch/siteinfo.js')
-    },
-    {
-        from: path.join(__dirname, 'src/siteinfo.js'),
-        to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/vip_card/siteinfo.js')
-    },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/mch/mch/siteinfo.js')
+    // },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/wholesale/siteinfo.js')
+    // },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/mch/siteinfo.js')
+    // },
+    // {
+    //     from: path.join(__dirname, 'src/siteinfo.js'),
+    //     to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'plugins/vip_card/siteinfo.js')
+    // },
     {
         from: path.join(__dirname, 'src/siteinfo.js'),
         to: path.join(__dirname, 'dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'pages/siteinfo.js')