소스 검색

超级会员版本测试问题修复

zhengjinyi 3 년 전
부모
커밋
fffbae7846
46개의 변경된 파일635개의 추가작업 그리고 2131개의 파일을 삭제
  1. 1 0
      common/css/common.scss
  2. 3 3
      common/json/data.json.js
  3. 33 29
      components/cm-module/creatOrder/sellerFreight.vue
  4. 9 4
      components/cm-module/orderDetails/orderInformation.vue
  5. 6 83
      components/cm-module/pageFloorTemplate/templateA.vue
  6. 6 83
      components/cm-module/pageFloorTemplate/templateB.vue
  7. 6 83
      components/cm-module/pageFloorTemplate/templateC.vue
  8. 6 83
      components/cm-module/pageFloorTemplate/templateD.vue
  9. 6 83
      components/cm-module/pageFloorTemplate/templateE.vue
  10. 6 83
      components/cm-module/pageFloorTemplate/templateF.vue
  11. 6 83
      components/cm-module/pageFloorTemplate/templateG.vue
  12. 6 83
      components/cm-module/pageFloorTemplate/templateI.vue
  13. 6 74
      components/cm-module/pageFloorTemplate/templateJ.vue
  14. 6 83
      components/cm-module/pageFloorTemplate/templateK.vue
  15. 6 83
      components/cm-module/pageTemplate/templateA.vue
  16. 6 83
      components/cm-module/pageTemplate/templateB.vue
  17. 6 83
      components/cm-module/pageTemplate/templateC.vue
  18. 6 83
      components/cm-module/pageTemplate/templateD.vue
  19. 6 83
      components/cm-module/pageTemplate/templateE.vue
  20. 6 83
      components/cm-module/pageTemplate/templateF.vue
  21. 6 83
      components/cm-module/pageTemplate/templateG.vue
  22. 6 85
      components/cm-module/pageTemplate/templateH.vue
  23. 6 83
      components/cm-module/pageTemplate/templateI.vue
  24. 6 83
      components/cm-module/pageTemplate/templateJ.vue
  25. 6 83
      components/cm-module/pageTemplate/templateK.vue
  26. 0 139
      components/cm-module/productDetails/cm-acttags.vue
  27. 6 15
      components/cm-module/productDetails/cm-price.vue
  28. 83 60
      pages/goods/goods-classify.vue
  29. 3 1
      pages/goods/product.vue
  30. 53 47
      pages/login/apply.vue
  31. 11 6
      pages/login/information.vue
  32. 35 26
      pages/search/search.vue
  33. 1 1
      pages/seller/club/club-list.vue
  34. 1 1
      pages/seller/club/list.vue
  35. 4 3
      pages/seller/login/apply.vue
  36. 7 4
      pages/seller/order/create-order.vue
  37. 21 1
      pages/seller/order/order-historylist.vue
  38. 21 1
      pages/seller/order/order-list.vue
  39. 5 7
      pages/seller/remarks/add.vue
  40. 1 1
      pages/seller/remarks/list.vue
  41. 21 1
      pages/seller/search/search-order.vue
  42. 27 20
      pages/user/member/member-product.vue
  43. 1 1
      pages/user/member/member-record.vue
  44. 6 5
      pages/user/member/member-renew.vue
  45. 83 19
      pages/user/member/member.vue
  46. 73 0
      services/public.js

+ 1 - 0
common/css/common.scss

@@ -393,6 +393,7 @@ button::after{
 	font-size: 18rpx !important;
 	border: 1px solid #E15616;
 	float: left;
+	margin-right: 8rpx;
 }
 /* 会员标签样式*/
 .svip-tags{

+ 3 - 3
common/json/data.json.js

@@ -5,9 +5,9 @@ const beautyList = [
     { value: 4, name: '其他' }
 ]
 const beautyLists = [
-    { value: 1, name: '美容院' },
-    { value: 2, name: '养生馆' },
-    { value: 3, name: '其他' }
+    { value: 5, name: '美容院' },
+    { value: 6, name: '养生馆' },
+    { value: 7, name: '其他' }
 ]
 const mentuzCampNullList = [
     { value: '1', name: '整形' },

+ 33 - 29
components/cm-module/creatOrder/sellerFreight.vue

@@ -46,7 +46,7 @@
 
 <script>
 	export default{
-		name:"freight",
+		name:'freight',
 		props:{
 			freightDatas:{
 				type:Object
@@ -71,47 +71,51 @@
 			}
 		},
 		created(){
+			console.log('this.freightDatas',this.freightDatas)
 			this.infoData(this.freightDatas)
 		},
 		methods:{
 			infoData(data){//初始化运费
-				// console.log(data)
+				console.log(data)
 				switch(data.postageFlag){
 					case 1:
-						this.current = 0;
-						this.freightData.postageFlag = data.postageFlag;
+						this.current = 0
+						this.freightData.postageFlag = data.postageFlag
 						if(data.freight == 0){
 							this.hanldFreight = ''
 						}else{
 							this.hanldFreight = data.postage
 						}
-						this.freightData.postage = data.postage;
-						this.freightMoney = this.hanldFreight;
+						this.freightData.postage = data.postage
+						this.freightMoney = this.hanldFreight
 						this.freightText = ''
-						break;
+						console.log('11111111111')
+						break
 					case 0:
-						this.current = 1;
-						this.freightData.postageFlag = data.postageFlag;
+						this.current = 1
+						this.freightData.postageFlag = data.postageFlag
 						this.freightText = '包邮'
-						break;
+						console.log('000000000000')
+						break
 					case -1:
-						this.current = 2;
-						this.freightData.postageFlag = data.postageFlag;
+						this.current = 2
+						this.freightData.postageFlag = data.postageFlag
 						this.freightText = '到付'
-						break;
+						console.log('-=1-1-1-1-1-1-')
+						break
 				}
 			},
 			freightConfim(){//提交完成运费选择
 				switch(this.freightData.postageFlag){
 					case 1:
 						this.choiceaFreightFirst(this.freightData.postageFlag)
-						break;
+						break
 					case 0:
 						this.choiceaFreightFirst(this.freightData.postageFlag)
-						break;
+						break
 					case -1:
 						this.choiceaFreightFirst(this.freightData.postageFlag)
-						break;	
+						break	
 				}		
 			},
 			choiceaFreightFirst(index){//校验运费形式及运费价
@@ -129,35 +133,35 @@
 				this.hideSpec()
 			},
 			showTip(){//显示运费弹窗
-				this.$emit('showFreightAlert');
+				this.$emit('showFreightAlert')
 			},
 			hideSpec() {//关闭选择数量确认弹窗
-				this.specClass = 'hide';
+				this.specClass = 'hide'
 				setTimeout(() => {
-					this.specClass = 'none';
-				}, 200);
+					this.specClass = 'none'
+				}, 200)
 			},
 			hanldOperationConfim(data){//显示选择数量确认弹窗
-				this.specClass = 'show';
+				this.specClass = 'show'
 				this.freightMoney = this.hanldFreight
 			},
 			radioChange(e) {//运费选择切换
-				this.freightData.postageFlag = parseInt(e.target.value);
+				this.freightData.postageFlag = parseInt(e.target.value)
 				switch(this.freightData.postageFlag){
 					case 1:
 						this.freightText = '不包邮'
-						break;
+						break
 					case 0:
 						this.freightText = '包邮'
-						break;
+						break
 					case -1:
 						this.freightText = '到付'
-						break;	
+						break	
 				}		
 				for (let i = 0; i < this.freightList.length; i++) {
 					if (this.freightList[i].value === this.postageFlag) {
-						this.current = i;
-						break;
+						this.current = i
+						break
 					}
 				}
 			},
@@ -171,8 +175,8 @@
 				}
 			},
 			orderPriceToFixed (num){
-				let price ='';
-				price = parseInt(num).toFixed(2);
+				let price =''
+				price = parseInt(num).toFixed(2)
 				return price
 			},
 			discard(){

+ 9 - 4
components/cm-module/orderDetails/orderInformation.vue

@@ -49,12 +49,17 @@
 						运费:<label class="label">¥{{ orderData.postage | NumFormat }}</label>
 					</view>
 				</view>
-				<view class="information-view same" v-if="orderData.userBeans > 0">
+				<view class="information-view same" v-if="orderData.svipFullReduction > 0">
+					<view class="view-man">
+						超级会员优惠:<label class="label">¥{{ orderData.svipFullReduction | NumFormat }}</label>
+					</view>
+				</view>
+				<view class="information-view" v-if="orderData.userBeans > 0">
 					<view class="view-man">
 						采美豆抵用运费:<label class="label">{{ orderData.userBeans }}</label>
 					</view>
 				</view>
-				<view class="information-view" v-if="orderData.discountFee && orderData.discountFee > 0">
+				<view class="information-view same" v-if="orderData.discountFee && orderData.discountFee > 0">
 					<view class="view-num">
 						经理折扣:<label class="label">¥{{ orderData.discountFee | NumFormat }}</label>
 					</view>
@@ -123,8 +128,8 @@ export default {
 		NumFormat(value) {
 			//处理金额
 			if (!value) return '0.00'
-			let number = parseFloat(Number(value))
-			return number
+			let number = Number(value)
+			return number.toFixed(2)
 		},
 		TextFormat(status) {
 			//处理金额

+ 6 - 83
components/cm-module/pageFloorTemplate/templateA.vue

@@ -35,90 +35,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -150,13 +71,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateA',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageFloorTemplate/templateB.vue

@@ -51,90 +51,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -166,13 +87,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateB',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageFloorTemplate/templateC.vue

@@ -51,90 +51,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -166,13 +87,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateC',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageFloorTemplate/templateD.vue

@@ -67,90 +67,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -182,13 +103,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateD',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageFloorTemplate/templateE.vue

@@ -35,90 +35,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -150,13 +71,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateE',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageFloorTemplate/templateF.vue

@@ -19,90 +19,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -134,13 +55,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateG',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageFloorTemplate/templateG.vue

@@ -19,90 +19,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -134,13 +55,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateG',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageFloorTemplate/templateI.vue

@@ -67,90 +67,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -182,13 +103,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateD',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 74
components/cm-module/pageFloorTemplate/templateJ.vue

@@ -67,81 +67,11 @@
 					</text>
 				</view>
 				<template>
-					<cm-acttags :product="item.product"></cm-acttags>
+					<template-Tags :product="item.product"></template-Tags>
 				</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1? 'none' : ''"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1? 'none' : ''"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none' 
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -173,13 +103,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateD',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageFloorTemplate/templateK.vue

@@ -99,90 +99,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -214,13 +135,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateD',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageTemplate/templateA.vue

@@ -36,90 +36,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -151,12 +72,14 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 export default {
 	name: 'templateA',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageTemplate/templateB.vue

@@ -52,90 +52,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -167,13 +88,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateB',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageTemplate/templateC.vue

@@ -52,90 +52,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -167,13 +88,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateC',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageTemplate/templateD.vue

@@ -68,90 +68,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -183,13 +104,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateD',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageTemplate/templateE.vue

@@ -36,90 +36,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -151,13 +72,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateE',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageTemplate/templateF.vue

@@ -20,90 +20,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -151,13 +72,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateF',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageTemplate/templateG.vue

@@ -20,90 +20,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -135,13 +56,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateG',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 85
components/cm-module/pageTemplate/templateH.vue

@@ -30,92 +30,11 @@
 							</view>
 							<view class="floor-item-price" v-if="item.listType == 1">
 								<template>
-									<cm-acttags :product="item.product"></cm-acttags>
+									<template-Tags :product="item.product"></template-Tags>
 								</template>
 								<view v-if="hasLogin">
 									<template v-if="item.product.productCategory == 1">
-										<template v-if="userIdentity == 3">
-											<template v-if="item.product.shopID == shopId">
-												<view class="title-none" v-if="item.product.priceFlag === 1">
-													<text class="p big">¥未公开价格</text>
-												</view>
-												<view
-													class="price tui-skeleton-rect"
-													v-else
-													:class="
-														PromotionsFormat(item.product.promotions) ||
-														item.product.svipProductFlag == 1
-															? 'none'
-															: ''
-													"
-												>
-													<text class="p sm">¥</text>
-													<text class="p big">{{
-														(PromotionsFormat(item.product.promotions)
-															? item.product.originalPrice
-															: item.product.price) | NumFormat
-													}}</text>
-												</view>
-											</template>
-											<template v-else>
-												<view class="no-price">
-													<view class="p-stars">
-														<text class="p-no">¥</text>
-														<uni-grader
-															:grade="Number(item.product.priceGrade)"
-															:margin="14"
-														></uni-grader>
-													</view>
-												</view>
-											</template>
-										</template>
-										<template v-else-if="userIdentity === 4">
-											<view class="title-none" v-if="item.product.priceFlag === 1">
-												<text class="p big">¥未公开价格</text>
-											</view>
-											<view class="title-none" v-if="item.product.priceFlag === 2">
-												<text class="p big">¥价格仅会员可见</text>
-											</view>
-											<view
-												class="price tui-skeleton-rect"
-												v-if="item.product.priceFlag === 0"
-												:class="
-													PromotionsFormat(item.product.promotions) ||
-													item.product.svipProductFlag == 1
-														? 'none'
-														: ''
-												"
-											>
-												<text class="p sm">¥</text>
-												<text class="p big">{{
-													(PromotionsFormat(item.product.promotions)
-														? item.product.originalPrice
-														: item.product.price) | NumFormat
-												}}</text>
-											</view>
-										</template>
-										<template v-else>
-											<view class="title-none" v-if="item.product.priceFlag === 1">
-												<text class="p big">¥未公开价格</text>
-											</view>
-											<view
-												class="price tui-skeleton-rect"
-												v-else
-												:class="
-													PromotionsFormat(item.product.promotions) ||
-													item.product.svipProductFlag == 1
-														? 'none'
-														: ''
-												"
-											>
-												<text class="p sm">¥</text>
-												<text class="p big">{{
-													(PromotionsFormat(item.product.promotions)
-														? item.product.originalPrice
-														: item.product.price) | NumFormat
-												}}</text>
-											</view>
-										</template>
+										<template-Price  :product="item.product"></template-Price>
 									</template>
 									<template v-else>
 										<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -163,13 +82,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateH',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageTemplate/templateI.vue

@@ -68,90 +68,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -183,13 +104,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateD',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageTemplate/templateJ.vue

@@ -69,90 +69,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -184,13 +105,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateD',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 6 - 83
components/cm-module/pageTemplate/templateK.vue

@@ -100,90 +100,11 @@
 				</view>
 				<view class="floor-item-price" v-if="item.listType == 1">
 					<template>
-						<cm-acttags :product="item.product"></cm-acttags>
+						<template-Tags :product="item.product"></template-Tags>
 					</template>
 					<view v-if="hasLogin">
 						<template v-if="item.product.productCategory == 1">
-							<template v-if="userIdentity == 3">
-								<template v-if="item.product.shopID == shopId">
-									<view class="title-none" v-if="item.product.priceFlag === 1">
-										<text class="p big">¥未公开价格</text>
-									</view>
-									<view
-										class="price tui-skeleton-rect"
-										v-else
-										:class="
-											PromotionsFormat(item.product.promotions) ||
-											item.product.svipProductFlag == 1
-												? 'none'
-												: ''
-										"
-									>
-										<text class="p sm">¥</text>
-										<text class="p big">{{
-											(PromotionsFormat(item.product.promotions)
-												? item.product.originalPrice
-												: item.product.price) | NumFormat
-										}}</text>
-									</view>
-								</template>
-								<template v-else>
-									<view class="no-price">
-										<view class="p-stars">
-											<text class="p-no">¥</text>
-											<uni-grader
-												:grade="Number(item.product.priceGrade)"
-												:margin="14"
-											></uni-grader>
-										</view>
-									</view>
-								</template>
-							</template>
-							<template v-else-if="userIdentity === 4">
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view class="title-none" v-if="item.product.priceFlag === 2">
-									<text class="p big">¥价格仅会员可见</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-if="item.product.priceFlag === 0"
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
-							<template v-else>
-								<view class="title-none" v-if="item.product.priceFlag === 1">
-									<text class="p big">¥未公开价格</text>
-								</view>
-								<view
-									class="price tui-skeleton-rect"
-									v-else
-									:class="
-										PromotionsFormat(item.product.promotions) || item.product.svipProductFlag == 1
-											? 'none'
-											: ''
-									"
-								>
-									<text class="p sm">¥</text>
-									<text class="p big">{{
-										(PromotionsFormat(item.product.promotions)
-											? item.product.originalPrice
-											: item.product.price) | NumFormat
-									}}</text>
-								</view>
-							</template>
+							<template-Price  :product="item.product"></template-Price>
 						</template>
 						<template v-else>
 							<view class="price tui-skeleton-rect" v-if="item.product.detailTalkFlag == '2'">
@@ -215,13 +136,15 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import uniGrader from '@/components/uni-grade/uni-grade.vue'
-import cmActtags from '@/components/cm-module/productDetails/cm-acttags.vue'
+import templateTags from '@/components/cm-module/pageTemplate/templateTags.vue'
+import templatePrice from '@/components/cm-module/pageTemplate/templatePrice.vue'
 
 export default {
 	name: 'templateD',
 	components: {
 		uniGrader,
-		cmActtags
+		templateTags,
+		templatePrice
 	},
 	props: {
 		pageData: {

+ 0 - 139
components/cm-module/productDetails/cm-acttags.vue

@@ -1,139 +0,0 @@
-<template name="cm-acttags">
-	<!-- 促销优惠VIP标签 -->
-	<view class="floor-item-act">
-		<view class="coupon-tags" v-if="goods.couponsLogo">优惠券</view>
-		<template v-if="userIdentity === 3">
-			<template v-if="goods.actStatus == 1">
-				<view class="floor-tags" v-if="PromotionsFormat(goods.promotions)">
-					{{ goods.promotions.name }}
-					<text v-if="hasLogin && goods.priceFlag != 1 && goods.shopId == shopId"
-						>:¥{{ goods.price | NumFormat }}</text
-					>
-				</view>
-				<view class="floor-tags" v-else>{{ goods.promotions.name }}</view>
-			</template>
-			<template v-if="goods.svipProductFlag == 1">
-				<view class="svip-tags" v-if="goods.shopId == shopId">
-					<view class="tags">SVIP</view>
-					<view class="price" v-if="goods.priceFlag != 1 && userIdentity == 2">{{ goods.svipPriceTag }}</view>
-				</view>
-				<view class="svip-tags" v-else> <view class="tags none">SVIP</view> </view>
-			</template>
-		</template>
-		<template v-if="userIdentity === 1">
-			<template v-if="goods.actStatus == 1">
-				<view class="floor-tags" v-if="PromotionsFormat(goods.promotions)">
-					{{ goods.promotions.name }} <text>:¥{{ goods.price | NumFormat }}</text>
-				</view>
-				<view class="floor-tags" v-else>{{ goods.promotions.name }}</view>
-			</template>
-			<template v-if="goods.svipProductFlag == 1">
-				<view class="svip-tags"> <view class="tags none">SVIP</view> </view>
-			</template>
-		</template>
-		<template v-else>
-			<template v-if="goods.actStatus == 1">
-				<view class="floor-tags" v-if="PromotionsFormat(goods.promotions)">
-					{{ goods.promotions.name }}
-					<text v-if="userIdentity == 2 && goods.priceFlag != 1">:¥{{ goods.price | NumFormat }}</text>
-				</view>
-				<view class="floor-tags" v-else>{{ goods.promotions.name }}</view>
-			</template>
-			<template v-if="goods.svipProductFlag == 1">
-				<view class="svip-tags">
-					<view class="tags" :class="{ none: vipFlag == 0 }">SVIP</view>
-					<view
-						class="price"
-						v-if="isShowVipFlag(goods)"
-						>{{ goods.svipPriceTag }}</view
-					>
-				</view>
-			</template>
-		</template>
-	</view>
-</template>
-
-<script>
-import { mapState, mapMutations } from 'vuex'
-import uniGrader from '@/components/uni-grade/uni-grade.vue'
-export default {
-	name: 'cm-price',
-	components: {
-		uniGrader
-	},
-	props: {
-		product: {
-			type: Object
-		}
-	},
-	data() {
-		return {
-			vipFlag: 0, // 是否是超级会员 0否 1是
-			shopId: 0, // 是否是供应商
-			userIdentity: 0, // 用户类型
-			goods: {}
-		}
-	},
-	filters: {
-		NumFormat: function(text) {
-			//处理金额
-			return Number(text).toFixed(2)
-		}
-	},
-	created() {
-		this.initData(this.product)
-	},
-	computed: {
-		...mapState(['hasLogin', 'isWxAuthorize'])
-	},
-	watch: {
-		pageData: {
-			handler: function(el) {
-				//监听对象的变换使用 function,箭头函数容易出现this指向不正确
-				this.product = el
-				this.initData(this.product)
-			},
-			deep: true
-		}
-	},
-	methods: {
-		async initData(data) {
-			const userInfo = await this.$api.getStorage()
-			this.shopId = userInfo.shopId ? userInfo.shopId : 0
-			this.userIdentity = userInfo.userIdentity ? userInfo.userIdentity : 0
-			this.vipFlag = userInfo.vipFlag ? userInfo.vipFlag : 0
-			this.goods = data
-		},
-		isShowVipFlag(pros){
-			if(pros.priceFlag!=1){
-				if(this.userIdentity == 4 && this.vipFlag == 1){
-					return true
-				}else if(this.userIdentity == 2){
-					return true
-				}
-			}
-		},
-		PromotionsFormat(promo) {
-			//促销活动类型数据处理
-			if (promo != null) {
-				if (promo.type == 1 && promo.mode == 1) {
-					return true
-				} else {
-					return false
-				}
-			}
-			return false
-		}
-	}
-}
-</script>
-
-<style lang="scss">
-.floor-item-act {
-	display: block;
-	width: 100%;
-	height: 32rpx;
-	text-align: center;
-	box-sizing: border-box;
-}
-</style>

+ 6 - 15
components/cm-module/productDetails/cm-price.vue

@@ -62,6 +62,7 @@
 						<template v-if="product.svipProductFlag == 1">
 							<view class="svip-tags">
 								<view class="tags none">SVIP</view>
+								<view class="price">{{ product.svipPriceTag }}</view>
 							</view>
 						</template>
 					</view>
@@ -71,7 +72,7 @@
 				</view>
 			</template>
 			<!-- 资质机构  -->
-			<template v-if="userIdentity == 2">
+			<template v-if="userIdentity == 2 || (userIdentity == 4 && vipFlag == 1)">
 				<view class="wrap-main-item">
 					<view v-if="product.priceFlag == 1" class="wrap-main-text">¥未公开价格</view>
 					<view
@@ -168,7 +169,7 @@
 				</template>
 			</template>
 			<!-- 个人机构  -->
-			<template v-if="userIdentity == 4">
+			<template v-if="userIdentity == 4 && vipFlag == 0">
 				<template v-if="product.priceFlag == 1">
 					<text class="wrap-main-text">¥未公开价格</text>
 				</template>
@@ -186,8 +187,7 @@
 						>
 							<text class="txt sm">¥</text>
 							<text class="txt big">{{
-								((PromotionsFormat(product.promotions) || product.svipProductFlag == 1 )? product.originalPrice : product.price)
-									| NumFormat
+								((PromotionsFormat(product.promotions) || product.svipProductFlag == 1) ? product.originalPrice : product.price) | NumFormat
 							}}</text>
 						</view>
 						<view class="floor-item-act">
@@ -210,8 +210,8 @@
 							</template>
 							<template v-if="product.svipProductFlag == 1">
 								<view class="svip-tags">
-									<view class="tags">SVIP</view> 
-									<view class="price" v-if="isShowVipFlag(product)">{{ product.svipPriceTag }}</view>
+									<view class="tags" :class="{ none: vipFlag == 0 }">SVIP</view> 
+									<view class="price" v-if="vipFlag == 1">{{ product.svipPriceTag }}</view>
 								</view>
 							</template>
 						</view>
@@ -347,15 +347,6 @@ export default {
 	},
 	computed: {
 		...mapState(['hasLogin', 'isWxAuthorize']),
-		isShowVipFlag(pros){
-			if(pros.priceFlag!=1){
-				if(this.userIdentity == 4 && this.vipFlag == 1){
-					return true
-				}else if(this.userIdentity == 2){
-					return true
-				}
-			}
-		}
 	},
 	methods: {
 		async initData(data) {

+ 83 - 60
pages/goods/goods-classify.vue

@@ -80,73 +80,86 @@
 					:style="{ height: scrollHeight + 'px', paddingTop: CustomBar + 44 + 'px' }"
 				>
 					<view
-						v-for="(item, index) in listData"
+						v-for="(pros, index) in listData"
 						:key="index"
-						:id="item.productId"
+						:id="pros.productId"
 						class="all-type-list-content commodity-list"
-						@click.stop="navToDetailPage(item.productId)"
+						@click.stop="navToDetailPage(pros.productId)"
 					>
-						<image mode="widthFix" :src="item.image" class="list-img" alt="list-img"></image>
+						<image mode="widthFix" :src="pros.image" class="list-img" alt="list-img"></image>
 						<view class="list-details-info">
 							<text class="list-details-title">
-								<text class="mclap-tag" v-if="item.beautyActFlag == 1">美博会</text>
-								<text class="mclap" :class="item.beautyActFlag == 1 ? 'indent' : ''">{{
-									item.name
+								<text class="mclap-tag" v-if="pros.beautyActFlag == 1">美博会</text>
+								<text class="mclap" :class="pros.beautyActFlag == 1 ? 'indent' : ''">{{
+									pros.name
 								}}</text>
 							</text>
-							<text class="list-details-specs">规格:{{ item.unit }}</text>
-							<view class="list-details-specs" v-if="item.code != '' && item.code != null"
-								>商品编码:{{ item.code }}</view
+							<text class="list-details-specs">规格:{{ pros.unit }}</text>
+							<view class="list-details-specs" v-if="pros.code != '' && pros.code != null"
+								>商品编码:{{ pros.code }}</view
 							>
 							<view class="list-details-price">
 								<template v-if="userIdentity == 3">
 									<view class="floor-item-act">
-										<view class="coupon-tags" v-if="item.couponsLogo">优惠券</view>
-										<template v-if="item.actStatus == 1">
-											<view class="floor-tags" v-if="PromotionsFormat(item.promotions)">
-												{{ item.promotions.name }}
-												<text v-if="hasLogin && userIdentity == 3 && item.priceFlag != 1"
-													>:¥{{ item.price | NumFormat }}</text
+										<view class="coupon-tags" v-if="pros.couponsLogo">优惠券</view>
+										<template v-if="pros.actStatus == 1">
+											<view class="floor-tags" v-if="PromotionsFormat(pros.promotions)">
+												{{ pros.promotions.name }}
+												<text v-if="hasLogin && userIdentity == 3 && pros.priceFlag != 1"
+													>:¥{{ pros.price | NumFormat }}</text
 												>
 											</view>
-											<view class="floor-tags" v-else>{{ item.promotions.name }}</view>
+											<view class="floor-tags" v-else>{{ pros.promotions.name }}</view>
 										</template>
-										<template v-if="item.svipProductFlag == 1">
+										<template v-if="pros.svipProductFlag == 1">
 											<view
 												class="svip-tags"
-												v-if="hasLogin && userIdentity == 3 && item.priceFlag != 1"
+												v-if="hasLogin && userIdentity == 3 && pros.priceFlag != 1"
 											>
 												<view class="tags">SVIP</view>
-												<view class="price">{{ item.svipPriceTag }}</view>
+												<view class="price">{{ pros.svipPriceTag }}</view>
 											</view>
 											<view class="svip-tags" v-else> <view class="tags none">SVIP</view> </view>
 										</template>
 									</view>
 								</template>
-								<template v-else>
+								<template v-else-if="userIdentity == 1">
 									<view class="floor-item-act">
-										<view class="coupon-tags" v-if="item.couponsLogo">优惠券</view>
-										<template v-if="item.actStatus == 1">
+										<view class="coupon-tags" v-if="pros.couponsLogo">优惠券</view>
+										<template v-if="pros.actStatus == 1">
 											<view
 												class="floor-tags"
-												v-if="item.actStatus == 1 && PromotionsFormat(item.promotions)"
+												v-if="pros.actStatus == 1 && PromotionsFormat(pros.promotions)"
 											>
-												{{ item.promotions.name }}
-												<text v-if="hasLogin && userIdentity == 2 && item.priceFlag != 1"
-													>:¥{{ item.price | NumFormat }}</text
-												>
+												{{ pros.promotions.name }} <text>:¥{{ pros.price | NumFormat }}</text>
 											</view>
-											<view class="floor-tags" v-else>{{ item.promotions.name }}</view>
+											<view class="floor-tags" v-else>{{ pros.promotions.name }}</view>
+										</template>
+										<template v-if="pros.svipProductFlag == 1">
+											<view class="svip-tags"><view class="tags none">SVIP</view> </view>
 										</template>
-										<template v-if="item.svipProductFlag == 1">
+									</view>
+								</template>
+								<template v-else>
+									<view class="floor-item-act">
+										<view class="coupon-tags" v-if="pros.couponsLogo">优惠券</view>
+										<template v-if="pros.actStatus == 1">
 											<view
-												class="svip-tags"
-												v-if="hasLogin && userIdentity == 2 && item.priceFlag != 1"
+												class="floor-tags"
+												v-if="pros.actStatus == 1 && PromotionsFormat(pros.promotions)"
 											>
-												<view class="tags">SVIP</view>
-												<view class="price">{{ item.svipPriceTag }}</view>
+												{{ pros.promotions.name }}
+												<text v-if="hasLogin && userIdentity == 2 && pros.priceFlag != 1"
+													>:¥{{ pros.price | NumFormat }}</text
+												>
+											</view>
+											<view class="floor-tags" v-else>{{ pros.promotions.name }}</view>
+										</template>
+										<template v-if="pros.svipProductFlag == 1">
+											<view class="svip-tags">
+												<view class="tags" :class="{ none : vipFlag == 0 }">SVIP</view>
+												<view class="price" v-if="isShowVipFlag(pros)">{{ pros.svipPriceTag }}</view>
 											</view>
-											<view class="svip-tags" v-else> <view class="tags none">SVIP</view> </view>
 										</template>
 									</view>
 								</template>
@@ -157,48 +170,48 @@
 											<text
 												class="price-larger"
 												:class="
-													PromotionsFormat(item.promotions) || item.svipProductFlag == 1
+													PromotionsFormat(pros.promotions) || pros.svipProductFlag == 1
 														? 'none'
 														: ''
 												"
 											>
 												¥{{
-													(PromotionsFormat(item.promotions) || item.svipProductFlag == 1
-														? item.originalPrice
-														: item.price) | NumFormat
+													(PromotionsFormat(pros.promotions) || pros.svipProductFlag == 1
+														? pros.originalPrice
+														: pros.price) | NumFormat
 												}}
 											</text>
 										</template>
 									</template>
-									<template v-if="userIdentity == 4">
-										<view class="price-larger" v-if="item.priceFlag == 1">
+									<template v-if="userIdentity == 4 && vipFlag == 0">
+										<view class="price-larger" v-if="pros.priceFlag == 1">
 											<text class="txt">¥未公开价格</text>
 										</view>
 										<text v-else-if="priceLoading" class="price-larger small">正在获取价格...</text>
 										<template v-else>
-											<view class="price-larger" v-if="item.priceFlag == 2">
+											<view class="price-larger" v-if="pros.priceFlag == 2">
 												<text class="txt">¥价格仅会员可见</text>
 											</view>
 											<text
 												v-else
 												class="price-larger"
 												:class="
-													PromotionsFormat(item.promotions) || item.svipProductFlag == 1
+													PromotionsFormat(pros.promotions) || pros.svipProductFlag == 1
 														? 'none'
 														: ''
 												"
 											>
 												¥{{
-													(PromotionsFormat(item.promotions) || item.svipProductFlag == 1
-														? item.originalPrice
-														: item.price) | NumFormat
+													(PromotionsFormat(pros.promotions) || pros.svipProductFlag == 1
+														? pros.originalPrice
+														: pros.price) | NumFormat
 												}}
 											</text>
 										</template>
 									</template>
 									<template v-if="userIdentity == 3">
-										<template v-if="item.supplierId === shopId">
-											<view class="price-larger" v-if="item.priceFlag == 1">
+										<template v-if="pros.supplierId === shopId">
+											<view class="price-larger" v-if="pros.priceFlag == 1">
 												<text class="txt">¥未公开价格</text>
 											</view>
 											<text v-else-if="priceLoading" class="price-larger small"
@@ -208,27 +221,27 @@
 												v-else
 												class="price-larger"
 												:class="
-													PromotionsFormat(item.promotions) || item.svipProductFlag == 1
+													PromotionsFormat(pros.promotions) || pros.svipProductFlag == 1
 														? 'none'
 														: ''
 												"
 											>
 												¥{{
-													(PromotionsFormat(item.promotions) || item.svipProductFlag == 1
-														? item.originalPrice
-														: item.price) | NumFormat
+													(PromotionsFormat(pros.promotions) || pros.svipProductFlag == 1
+														? pros.originalPrice
+														: pros.price) | NumFormat
 												}}
 											</text>
 										</template>
 										<template v-else>
 											<view class="list-login-now">
 												<text class="p-no">¥</text>
-												<uni-grader :grade="Number(item.priceGrade)"></uni-grader>
+												<uni-grader :grade="Number(pros.priceGrade)"></uni-grader>
 											</view>
 										</template>
 									</template>
-									<template v-if="userIdentity == 2">
-										<view class="price-larger" v-if="item.priceFlag == 1">
+									<template v-if="userIdentity == 2 || (userIdentity == 4 && vipFlag == 1) ">
+										<view class="price-larger" v-if="pros.priceFlag == 1">
 											<text class="txt">¥未公开价格</text>
 										</view>
 										<text v-else-if="priceLoading" class="price-larger small">正在获取价格...</text>
@@ -236,15 +249,15 @@
 											<text
 												class="price-larger"
 												:class="
-													PromotionsFormat(item.promotions) || item.svipProductFlag == 1
+													PromotionsFormat(pros.promotions) || pros.svipProductFlag == 1
 														? 'none'
 														: ''
 												"
 											>
 												¥{{
-													(PromotionsFormat(item.promotions) || item.svipProductFlag == 1
-														? item.originalPrice
-														: item.price) | NumFormat
+													(PromotionsFormat(pros.promotions) || pros.svipProductFlag == 1
+														? pros.originalPrice
+														: pros.price) | NumFormat
 												}}
 											</text>
 										</template>
@@ -252,7 +265,7 @@
 								</view>
 								<view v-else class="list-login-now">
 									<text class="p-no">¥</text>
-									<uni-grader :grade="Number(item.priceGrade)"></uni-grader>
+									<uni-grader :grade="Number(pros.priceGrade)"></uni-grader>
 								</view>
 							</view>
 						</view>
@@ -656,6 +669,16 @@ export default {
 			}
 			return false
 		},
+		isShowVipFlag(pros) {
+			// 超级会员价格显示控制
+			if (this.hasLogin && pros.priceFlag != 1) {
+				if (this.userIdentity == 4 && this.vipFlag == 1) {
+					return true
+				} else if (this.userIdentity == 2) {
+					return true
+				}
+			}
+		},
 		SetScrollHeight() {
 			const { windowHeight, pixelRatio } = wx.getSystemInfoSync()
 			this.windowHeight = windowHeight - 1

+ 3 - 1
pages/goods/product.vue

@@ -613,6 +613,7 @@ export default {
 			userId: 0,
 			shopId: 0,
 			shopID: 0,
+			vipFlag:0,
 			productId: 0,
 			userIdentity: 0, // 用户类型
 			goodsData: {}, // 自定义数据
@@ -793,7 +794,7 @@ export default {
 					if (this.product.priceFlag == 1) {
 						this.disabled = true
 					} else if (this.product.priceFlag == 2) {
-						if (this.userIdentity == 4) {
+						if (this.userIdentity == 4 && this.vipFlag == 0) {
 							this.disabled = true
 						} else {
 							this.disabled = false
@@ -1311,6 +1312,7 @@ export default {
 				.then(resolve => {
 					this.userId = this.couponParam.userId = resolve.userId ? resolve.userId : ''
 					this.userIdentity = resolve.userIdentity ? resolve.userIdentity : 0
+					this.vipFlag = resolve.vipFlag ? resolve.vipFlag : 0
 					this.shopID = resolve.shopId ? resolve.shopId : ''
 					if (this.userIdentity == 0 || this.userIdentity == 2 || this.userIdentity == 4) {
 						this.isShowButton = true

+ 53 - 47
pages/login/apply.vue

@@ -141,7 +141,7 @@
 								<radio
 									class="row-radio"
 									:value="item.value"
-									:checked="item.value === isOrganizationType"
+									:checked="index === firstClubTypeCurrent"
 									color="#E15616"
 								/>{{ item.name }}
 							</label>
@@ -191,7 +191,7 @@
 					</view>
 				</view>
 			</view>
-			<view class="register-row clearfix" v-show="firstClubType == 1 && isDepartment">
+			<view class="register-row clearfix" v-if="isOrganizationType == 1 && isDepartment">
 				<view class="register-from" style="height: auto;border: 0;">
 					<view class="kes-title">科室</view>
 					<textarea
@@ -312,44 +312,44 @@ export default {
 				textLeft: this.$store.state.isIphone
 			},
 			isIphoneX: this.$store.state.isIphoneX,
-			CustomBar: this.CustomBar, // 顶部导航栏高度
+			CustomBar: this.CustomBar, 				// 顶部导航栏高度
 			errorList: [],
 			tabCurrentIndex: 3,
-			clubStatus: '', //审核状态
-			isPreviewImage: false, //预览图片开关
-			userId: '', //用户ID
-			clubId: '', //会所ID
-			contractEmail: '', //邮箱
-			clubName: '', //机构名称
-			shortName: '', //机构简称
-			socialCreditCode: '', //统一社会信用代码
+			clubStatus: '', 						//审核状态
+			isPreviewImage: false, 					//预览图片开关
+			userId: '', 							//用户ID
+			clubId: '', 							//会所ID
+			contractEmail: '', 						//邮箱
+			clubName: '', 							//机构名称
+			shortName: '', 							//机构简称
+			socialCreditCode: '', 					//统一社会信用代码
 			isDisabled: true,
 			isShowInput: true,
 			textareaFocus: false,
-			businessLicense:
-				'https://dss3.bdstatic.com/70cFv8Sh_Q1YnxGkpoWK1HF6hhy/it/u=1306508493,2006189766&fm=26&gp=0.jpg', //营业执照图片
-			shopPhoto: '', //门头照图片
-			medicalPracticeLicense: '', //资质照图片
-			department: '', //科室
-			isDepartment: false, //是否显示科室
-			secondClubType: '', //机构类型二级分类
-			mainProduct: '', //主营内容
-			firstClubType: '', //机构类型
-			isOrganizationType: 0,
+			businessLicense:'', 					//营业执照图片
+			shopPhoto: '', 							//门头照图片
+			medicalPracticeLicense: '', 			//资质照图片
+			department: '', 						//科室
+			isDepartment: true, 					//是否显示科室
+			secondClubType: '', 					//机构类型二级分类
+			mainProduct: '', 						//主营内容
+			firstClubType: 1, 						//机构类型
+			isOrganizationType: 1,
+			firstClubTypeCurrent:0,
 			organizationTypeText: '请选择机构类型',
-			beautyList: beautyList, //医美分类
-			beautyLists: beautyLists, //生美分类
+			beautyList: beautyList, 				//医美分类
+			beautyLists: beautyLists, 				//生美分类
 			mentuzCampNullList: mentuzCampNullList, //医美分类
 			medicaCampNullList: medicaCampNullList, //生美分类
-			mentuzCampList: [], //医美主营
-			medicaCampList: [], //生美主营
+			mentuzCampList: [], 					//医美主营
+			medicaCampList: [], 					//生美主营
 			typtIndex: 0,
 			organizationType: 0,
-			current: 0,
-			isShowAustomItem: false, //是否显示其他添加
-			customItemValue: '', //自定义项目
+			isShowAustomItem: false, 				//是否显示其他添加
+			customItemValue: '',					//自定义项目
 			isMainproCheck: false,
 			isConfirmShow: false,
+			isFirstAdds:true,
 			addressData: {
 				address: '请选择机构所在地区',
 				townId: '', //区ID
@@ -362,7 +362,6 @@ export default {
 	},
 	onLoad(option) {
 		this.clubStatus = option.clubStatus
-		console.log(this.clubStatus)
 		this.organizationInfo()
 	},
 	methods: {
@@ -384,11 +383,12 @@ export default {
 							this.errorList = organizationUser.auditNoteList
 						}
 						this.contractEmail = organizationClub.contractEmail
-						console.log(this.contractEmail)
 						this.clubId = organizationUser.clubId
 						if (this.contractEmail) {
+							this.isFirstAdds = false
 							this.clubName = this.$reg.checkData(organizationClub.name)
 						} else {
+							this.isFirstAdds = true
 							this.clubName = ''
 						}
 						this.shortName = this.$reg.checkData(organizationClub.shortName)
@@ -430,7 +430,7 @@ export default {
 								break
 							case null:
 								this.organizationTypeText = '请选择机构类型'
-								this.isOrganizationType = 0
+								this.isOrganizationType = 1
 								break
 						}
 						if (organizationClub.mainProduct == '' || organizationClub.mainProduct == null) {
@@ -449,14 +449,12 @@ export default {
 						//机构类型
 						switch (this.secondClubType) {
 							case 1:
-								this.current = 0
+								this.isDepartment = false
 								break
 							case 2:
-								this.current = 1
 								this.isDepartment = true
 								break
 							case 3:
-								this.current = 2
 								this.isDepartment = true
 								break
 						}
@@ -468,9 +466,9 @@ export default {
 		},
 		organizationUpdateInfo() {
 			//提交审核
-			if (!this.isMainproCheck) {
+			if (this.isFirstAdds) {
 				let mainproList = []
-				if (this.firstClubType == 1) {
+				if (this.isOrganizationType == 1) {
 					this.mentuzCampList.forEach(item => {
 						mainproList.push(item.name)
 					})
@@ -505,9 +503,19 @@ export default {
 				this.$util.msg('请上传您的营业执照', 2000)
 				return
 			}
-			if (this.isOrganizationType != 0) {
+			if (this.medicalPracticeLicense == '') {
+				this.$util.msg('请上传您的资质许可证', 2000)
+				return
+			}
+			if (this.isOrganizationType == 1 || this.isOrganizationType == 2) {
+				if(this.secondClubType == ''){
+					this.$util.msg('选择机构类型', 2000)
+					return
+				}
+			}
+			if (this.isOrganizationType == 1 || this.isOrganizationType == 2) {
 				if (this.mainProduct == '') {
-					this.$util.msg('请选择住机构主营内容', 2000)
+					this.$util.msg('请选择机构主营内容', 2000)
 					return
 				}
 			}
@@ -630,6 +638,12 @@ export default {
 		},
 		bindPickerChange(e) {
 			this.isOrganizationType = e.target.value
+			for (let i = 0; i < this.typename.length; i++) {
+				if (this.typename[i].value === e.target.value) {
+					this.firstClubTypeCurrent = i
+					break
+				}
+			}
 			// let self = this
 			// uni.showActionSheet({
 			// 	title:'标题',
@@ -658,19 +672,11 @@ export default {
 			} else {
 				this.isDepartment = false
 			}
-			for (let i = 0; i < this.beautyList.length; i++) {
-				if (this.beautyList[i].value === this.secondClubType) {
-					this.current = i
-					break
-				}
-			}
 		},
 		chooseMaleLike(e) {
-			this.isMainproCheck = true
 			this.mainProduct = this.checkLikes(e, this.mentuzCampList)
 		},
 		chooseMaleLikes(e) {
-			this.isMainproCheck = true
 			this.mainProduct = this.checkLikes(e, this.medicaCampList)
 		},
 		checkLikes(e, list) {
@@ -798,7 +804,7 @@ export default {
 				padding: 0 24rpx;
 				border-radius: 22rpx;
 				line-height: 42rpx;
-				margin-right: 56rpx;
+				margin-right: 30rpx;
 				float: left;
 				&.active {
 					border: 2rpx solid #ffe6dc;

+ 11 - 6
pages/login/information.vue

@@ -416,7 +416,7 @@ export default {
 			current: 0,
 			isShowAustomItem: false, // 是否显示其他添加
 			customItemValue: '', // 自定义项目
-			isMainproCheck: false,
+			isFirstAdds: true,
 			addressData: {
 				address: '请选择机构所在地区',
 				townId: '', // 区ID
@@ -445,6 +445,11 @@ export default {
 					.then(response => {
 						let organizationClub = response.data.club
 						let organizationUser = response.data.user
+						if(organizationClub.contractEmail){
+							this.isFirstAdds = false
+						}else{
+							this.isFirstAdds = true
+						}
 						this.contractEmail = organizationClub.contractEmail
 							? organizationClub.contractEmail
 							: organizationClub.email
@@ -548,8 +553,7 @@ export default {
 					profile: this.profile
 				}
 			} else {
-				console.log('isMainproCheck', this.isMainproCheck)
-				if (!this.isMainproCheck) {
+				if (this.isFirstAdds) {
 					let mainproList = []
 					if (this.firstClubType == 1) {
 						this.mentuzCampList.forEach(item => {
@@ -560,7 +564,6 @@ export default {
 							mainproList.push(item.name)
 						})
 					}
-					console.log('mainproList', mainproList)
 					this.mainProduct = mainproList.join('/')
 				}
 				if (this.contractEmail == '') {
@@ -587,6 +590,10 @@ export default {
 					this.$util.msg('请上传您的营业执照', 2000)
 					return
 				}
+				if (this.medicalPracticeLicense == '') {
+					this.$util.msg('请上传您的资质许可证', 2000)
+					return
+				}
 				console.log('mainProduct', this.mainProduct)
 				console.log('firstClubType', this.firstClubType)
 				if (this.firstClubType != 0) {
@@ -753,11 +760,9 @@ export default {
 			}
 		},
 		chooseMaleLike(e) {
-			this.isMainproCheck = true
 			this.mainProduct = this.checkLikes(e, this.mentuzCampList)
 		},
 		chooseMaleLikes(e) {
-			this.isMainproCheck = true
 			this.mainProduct = this.checkLikes(e, this.medicaCampList)
 		},
 		checkLikes(e, list) {

+ 35 - 26
pages/search/search.vue

@@ -155,7 +155,7 @@
 										<view class="floor-tags" v-else>{{ pros.promotions.name }}</view>
 									</template>
 									<template v-if="pros.svipProductFlag == 1">
-										<view class="svip-tags"> <view class="tags none">SVIP</view> </view>
+										<view class="svip-tags"><view class="tags none">SVIP</view> </view>
 									</template>
 								</view>
 							</template>
@@ -175,15 +175,10 @@
 										<view class="floor-tags" v-else>{{ pros.promotions.name }}</view>
 									</template>
 									<template v-if="pros.svipProductFlag == 1">
-										<template v-if="pros.priceFlag != 1 && hasLogin && userIdentity == 2">
-											<view class="svip-tags">
-												<view class="tags">SVIP</view>
-												<view class="price">{{ pros.svipPriceTag }}</view>
-											</view>
-										</template>
-										<template v-else>
-											<view class="svip-tags"> <view class="tags none">SVIP</view> </view>
-										</template>
+										<view class="svip-tags">
+											<view class="tags" :class="{ none : vipFlag == 0 }">SVIP</view>
+											<view class="price" v-if="isShowVipFlag(pros)">{{ pros.svipPriceTag }}</view>
+										</view>
 									</template>
 								</view>
 							</template>
@@ -203,7 +198,7 @@
 										}}
 									</text>
 								</template>
-								<template v-if="userIdentity == 4">
+								<template v-if="userIdentity == 4 && vipFlag == 0">
 									<view class="price-larger" v-if="pros.priceFlag == 1">
 										<text class="txt">¥未公开价格</text>
 									</view>
@@ -256,7 +251,7 @@
 										</view>
 									</template>
 								</template>
-								<template v-if="userIdentity == 2">
+								<template v-if="userIdentity == 2 || (userIdentity == 4 && vipFlag == 1)">
 									<view class="price-larger" v-if="pros.priceFlag == 1">
 										<text class="txt">¥未公开价格</text>
 									</view>
@@ -323,7 +318,8 @@ export default {
 			tabValue: '产品',
 			themeClass: 'block',
 			show: false,
-			userIdentity: '',
+			vipFlag:0,
+			userIdentity: 0,
 			searchKeyType: 1,
 			isShowClose: false, //是否显示清空输入框图标
 			isSearchHistory: false, //是都显示搜索历史
@@ -362,10 +358,21 @@ export default {
 		if (option.type == 'share') {
 			wxLogin.wxLoginAuthorize()
 		}
-		this.$api.getStorage().then(resolve => {
-			this.userId = resolve.userId ? resolve.userId : 0
-			this.shopId = resolve.shopId ? resolve.shopId : 0
-			this.userIdentity = resolve.userIdentity
+		this.initGetStotage(option)
+	},
+	filters: {
+		NumFormat: function(text) {
+			//处理金额
+			return Number(text).toFixed(2)
+		}
+	},
+	methods: {
+		async initGetStotage(option) {
+			const userInfo = await this.$api.getStorage()
+			this.userId = userInfo.userId ? userInfo.userId : 0
+			this.shopId = userInfo.shopId ? userInfo.shopId : 0
+			this.vipFlag = userInfo.vipFlag ? userInfo.vipFlag : 0
+			this.userIdentity = userInfo.userIdentity ? userInfo.userIdentity : 0
 			this.listQuery.identity = this.identity
 			if (option.keyWord) {
 				this.listQuery.keyword = option.keyWord
@@ -376,15 +383,7 @@ export default {
 				this.isFocus = true
 				this.initGetSerachRecord()
 			}
-		})
-	},
-	filters: {
-		NumFormat: function(text) {
-			//处理金额
-			return Number(text).toFixed(2)
-		}
-	},
-	methods: {
+		},
 		GetHomeHotSearchTerms() {
 			//金刚区分类
 			this.CommonService.GetHomeHotSearchTerms({})
@@ -546,6 +545,16 @@ export default {
 			}
 			return false
 		},
+		isShowVipFlag(pros) {
+			// 超级会员价格显示控制
+			if (this.hasLogin && pros.priceFlag != 1) {
+				if (this.userIdentity == 4 && this.vipFlag == 1) {
+					return true
+				} else if (this.userIdentity == 2) {
+					return true
+				}
+			}
+		},
 		onShowClose() {
 			//输入框输入时触发
 			this.inputEmpty(this.listQuery.keyword)

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

@@ -52,7 +52,7 @@
 									>
 								</view>
 								<view class="list-opea">
-									<text class="tags" v-if="club.vipFlag == -1 && club.userIdentity === 2 ">VIP</text>
+									<text class="tags" v-if="club.vipFlag == 0 && club.userIdentity === 2 ">VIP</text>
 									<text class="tags sv" v-if="club.vipFlag == 1">SVIP</text>
 								</view>
 							</view>

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

@@ -57,7 +57,7 @@
 						<view class="list-content">
 							<view class="list-name">
 								{{ club.userIdentity === 2 ? club.name : club.linkMan }}
-								<text class="tags" v-if="club.vipFlag == -1 && club.userIdentity === 2 ">VIP</text>
+								<text class="tags" v-if="club.vipFlag == 0 && club.userIdentity === 2 ">VIP</text>
 								<text class="tags sv" v-if="club.vipFlag == 1">SVIP</text>
 							</view>
 							<view class="list-ntel">

+ 4 - 3
pages/seller/login/apply.vue

@@ -1027,14 +1027,15 @@ export default {
 					}
 				}
 				&.radio {
-					padding: 0 24rpx;
-					width: 654rpx;
+					padding: 0 14rpx;
+					width: 674rpx;
 					height: 90rpx;
 					.row-input {
-						width: 160rpx;
+						width: 168rpx;
 						height: 88rpx;
 						line-height: 88rpx;
 						padding-left: 0;
+						font-size: 26rpx;
 					}
 					.row-radio {
 						float: left;

+ 7 - 4
pages/seller/order/create-order.vue

@@ -290,7 +290,6 @@
 					this.rechargeGoods = data.includeRecharge
 					this.clauseList = data.clauseList
 					this.postageParam.productIds = this.getProductIds(data.list)
-					this.getAddressData()
 					this.isCouponShow = true
 					if(this.couponList.length>0){
 						this.couponAmount = data.couponList[0].couponAmount
@@ -302,9 +301,12 @@
 						item.cartList.forEach(pros =>{
 							if(this.depositIds.indexOf(pros.productId)>=0){
 								this.isDepositFlg = false
+							}else{
+								this.isDepositFlg = true
 							}
 						})
 					})
+					this.getAddressData()
 				}).catch(error =>{
 					this.$util.msg(error.msg,2000)
 				})
@@ -338,9 +340,10 @@
 			},
 			getFreightData(){//获取邮费信息
 				this.OrderService.GetOrderPostage(this.postageParam).then(response =>{
-					const data = response.data
-					this.isFreight = true
+					let data = response.data
 					this.freightData = data
+					this.isFreight = true
+					console.log('this.freightData',this.freightData)
 					if(data.postageFlag== 1){
 						this.orderShouldPayFee = this.allPrice + data.postage
 						this.attributePallPrice()
@@ -561,7 +564,7 @@
 				this.addressData = SelectData
 				this.getFreightData()
 			}else{
-				this.getAddressData()
+				// this.getAddressData()
 			}
 		}
 	}

+ 21 - 1
pages/seller/order/order-historylist.vue

@@ -62,7 +62,11 @@
 								@click.stop="detail(order)"
 							>
 								<view class="order-title">
-									<view class="order-title-name">{{ order.clubName }}</view>
+									<view class="order-title-name">
+										<text>{{ order.clubName ? order.clubName : '' }}</text>
+										<text class="tags" v-if="order.svipUserFlag == 0 && order.userIdentity === 2 ">VIP</text>
+										<text class="tags sv" v-if="order.svipUserFlag == 1">SVIP</text>
+									</view>
 									<view class="order-title-t">
 										<text
 											class="bage-buss tui-skeleton-fillet"
@@ -804,6 +808,22 @@ page {
 		text-align: left;
 		font-size: $font-size-28;
 		color: #333333;
+		.tags {
+			display: inline-block;
+			width: 60rpx;
+			height: 32rpx;
+			border-radius: 8rpx;
+			background: #f0cb72;
+			font-size: $font-size-22;
+			color: #4e4539;
+			text-align: center;
+			line-height: 32rpx;
+			margin-left: 10rpx;
+			&.sv {
+				background: #333333;
+				color: #f0cb72;
+			}
+		}
 	}
 	.order-title-t {
 		width: 100%;

+ 21 - 1
pages/seller/order/order-list.vue

@@ -72,7 +72,11 @@
 								@click.stop="detail(order)"
 							>
 								<view class="order-title">
-									<view class="order-title-name">{{ order.clubName ? order.clubName : '' }}</view>
+									<view class="order-title-name">
+										<text>{{ order.clubName ? order.clubName : '' }}</text>
+										<text class="tags" v-if="order.svipUserFlag == 0 && order.userIdentity === 2 ">VIP</text>
+										<text class="tags sv" v-if="order.svipUserFlag == 1">SVIP</text>
+									</view>
 									<view class="order-title-t">
 										<view class="Rebate " v-if="order.rebateFlag == 1">返佣</view>
 										<text
@@ -853,6 +857,22 @@ page {
 		text-align: left;
 		font-size: $font-size-28;
 		color: #333333;
+		.tags {
+			display: inline-block;
+			width: 60rpx;
+			height: 32rpx;
+			border-radius: 8rpx;
+			background: #f0cb72;
+			font-size: $font-size-22;
+			color: #4e4539;
+			text-align: center;
+			line-height: 32rpx;
+			margin-left: 10rpx;
+			&.sv {
+				background: #333333;
+				color: #f0cb72;
+			}
+		}
 	}
 	.order-title-t {
 		width: 100%;

+ 5 - 7
pages/seller/remarks/add.vue

@@ -53,7 +53,7 @@
 				<view class="list-view-file" @click="uploadFile(remarksParams.fileList)">选择文件</view>
 			</view>
 		</view>
-		<view class="remarks-btn" :style="{ paddingBottom: isIphoneX ? '68rpx' : '0' }">
+		<view class="remarks-btn" :style="{ paddingBottom: isIphoneX ? '68rpx' : '34rpx' }">
 			<view class="edit-button" @click="editButtonConfim">确定</view>
 		</view>
 	</view>
@@ -62,7 +62,7 @@
 <script>
 import { mapState, mapMutations } from 'vuex'
 import authorize from '@/common/config/authorize.js'
-import { uploadFileImage, uploadFilePdfDocDocx } from '@/services/public.js'
+import { uploadFileImage, uploadFilePdfDocDocxXlsx } from '@/services/public.js'
 
 var isPreviewImg
 export default {
@@ -124,16 +124,14 @@ export default {
 				this.$util.msg('请输入文字备注', 2000)
 				return
 			}
-			console.log('remarksParams',this.remarksParams)
-			console.log('remarksParams',JSON.stringify(this.remarksParams))
 			this.UserService.getUserClubRemarksSave({
 				params: JSON.stringify(this.remarksParams)
 			})
 				.then(response => {
 					this.$util.msg('添加成功', 3000, true, 'success')
 					setTimeout(() => {
-						this.$api.navigateTo('/pages/seller/remarks/list')
-					}, 2000)
+						uni.navigateBack({delta: 1})
+					}, 1000)
 				})
 				.catch(error => {
 					this.$util.msg(error.msg, 2000)
@@ -142,7 +140,7 @@ export default {
 		uploadFile(array) {
 			//上传资质文件
 			console.log(array)
-			uploadFilePdfDocDocx().then(res => {
+			uploadFilePdfDocDocxXlsx().then(res => {
 				let data = JSON.parse(res.data).data
 				let obj = {
 					fileName: uni.getStorageSync('fileName'),

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

@@ -25,7 +25,7 @@
 		<!-- 取消收藏操作 -->
 		<tui-bottom-popup :radius="false" :mask="false" :show="popupShow">
 			<view class="tui-popup-box clearfix">
-				<view class="tui-right-flex tui-popup-btn" :style="{ paddingBottom: isIphoneX ? '68rpx' : '0rpx' }">
+				<view class="tui-right-flex tui-popup-btn" :style="{ paddingBottom: isIphoneX ? '68rpx' : '34rpx' }">
 					<view class="tui-flex-1">
 						<view class="tui-button" @click="handleAllUnder">添加资料备注</view>
 					</view>

+ 21 - 1
pages/seller/search/search-order.vue

@@ -58,7 +58,11 @@
 							@click.stop="detail(order)"
 						>
 							<view class="order-title">
-								<view class="order-title-name">{{ order.clubName ? order.clubName : '' }}</view>
+								<view class="order-title-name">
+									<text>{{ order.clubName ? order.clubName : '' }}</text>
+									<text class="tags" v-if="order.svipUserFlag == 0 && order.userIdentity === 2 ">VIP</text>
+									<text class="tags sv" v-if="order.svipUserFlag == 1">SVIP</text>
+								</view>
 								<view class="order-title-t">
 									<text
 										class="bage-buss tui-skeleton-fillet"
@@ -882,6 +886,22 @@ page {
 		text-align: left;
 		font-size: $font-size-28;
 		color: #333333;
+		.tags {
+			display: inline-block;
+			width: 60rpx;
+			height: 32rpx;
+			border-radius: 8rpx;
+			background: #f0cb72;
+			font-size: $font-size-22;
+			color: #4e4539;
+			text-align: center;
+			line-height: 32rpx;
+			margin-left: 10rpx;
+			&.sv {
+				background: #333333;
+				color: #f0cb72;
+			}
+		}
 	}
 	.order-title-t {
 		width: 100%;

+ 27 - 20
pages/user/member/member-product.vue

@@ -24,22 +24,17 @@
 									<view class="floor-tags" v-else>{{ pro.promotions.name }}</view>
 								</template>
 								<template v-if="pro.svipProductFlag == 1">
-									<template v-if="hasLogin && pro.priceFlag != 1 && userIdentity == 2">
-										<view class="svip-tags">
-											<view class="tags">SVIP</view>
-											<view class="price">{{ pro.svipPriceTag }}</view>
-										</view>
-									</template>
-									<template v-else>
-										<view class="svip-tags"> <view class="tags none">SVIP</view> </view>
-									</template>
+									<view class="svip-tags">
+										<view class="tags" :class="{ none: vipFlag == 0 }">SVIP</view>
+										<view class="price" v-if="isShowVipFlag(pro)">{{ pro.svipPriceTag }}</view>
+									</view>
 								</template>
 							</view>
 						</view>
 						<view class="product-price" v-if="hasLogin">
 							<view class="list-none" v-if="pro.priceFlag == 1">¥未公开价格</view>
 							<template v-else>
-								<view class="list-none" v-if="pro.priceFlag == 2 && userIdentity == 4"
+								<view class="list-none" v-if="pro.priceFlag == 2 && ( userIdentity == 4 && vipFlag == 0)"
 									>¥价格仅会员可见</view
 								>
 								<view class="list-none-price" v-else>¥{{ pro.originalPrice | NumFormat }}</view>
@@ -83,7 +78,8 @@ export default {
 				pageNum: 1,
 				pageSize: 10
 			},
-			userIdentity:0,
+			vipFlag: 0,
+			userIdentity: 0,
 			productList: [],
 			nomoreText: '上拉显示更多',
 			hasNextPage: false,
@@ -109,6 +105,7 @@ export default {
 		async initGetStotage() {
 			const userInfo = await this.$api.getStorage()
 			this.listQuery.userId = userInfo.userId ? userInfo.userId : 0
+			this.vipFlag = userInfo.vipFlag ? userInfo.vipFlag : 0
 			this.userIdentity = userInfo.userIdentity ? userInfo.userIdentity : 0
 			this.getSvipProductPage()
 		},
@@ -188,9 +185,20 @@ export default {
 			return false
 		},
 		productDetail(productId) {
+			// 跳转商品详情
 			this.isModallayer = true
 			this.$api.navigateTo(`/pages/goods/product?id=${productId}`)
 			this.isModallayer = false
+		},
+		isShowVipFlag(pros) {
+			// 超级会员价格显示控制
+			if (this.hasLogin && pros.priceFlag != 1) {
+				if (this.userIdentity == 4 && this.vipFlag == 1) {
+					return true
+				} else if (this.userIdentity == 2) {
+					return true
+				}
+			}
 		}
 	},
 	onPullDownRefresh() {
@@ -206,19 +214,18 @@ export default {
 			this.getOnReachBottomData()
 		}
 	},
-	onShareAppMessage(res){//分享转发
+	onShareAppMessage(res) {
+		//分享转发
 		if (res.from === 'button') {
-	      // 来自页面内转发按钮
-	    }
+			// 来自页面内转发按钮
+		}
 		return {
-		  title: '采美超级会员,巨量优惠享不停',
-		  path: '/pages/user/member/member-product',
-		  imageUrl:'https://static.caimei365.com/app/img/icon/icon-member-share@2x.png'
+			title: '采美超级会员,巨量优惠享不停',
+			path: '/pages/user/member/member-product',
+			imageUrl: 'https://static.caimei365.com/app/img/icon/icon-member-share@2x.png'
 		}
 	},
-	onShow() {
-		
-	}
+	onShow() {}
 }
 </script>
 

+ 1 - 1
pages/user/member/member-record.vue

@@ -16,7 +16,7 @@
 		<view class="cm-member-main">
 			<view class="record-list" v-for="(pay, index) in payList" :key="index">
 				<view class="record-list-type">
-					<view class="list-type-h1">超级会员套餐-{{ pay.packageId | MonthFormat}} </view>
+					<view class="list-type-h1">超级会员套餐-{{ pay.duration }}个月 </view>
 					<view class="list-type-p"> {{ pay.payTime }} </view>
 				</view>
 				<view class="record-list-text">

+ 6 - 5
pages/user/member/member-renew.vue

@@ -27,12 +27,12 @@
 				>
 					<view class="hot" v-if="index == 0">推荐</view> <view class="text-1">{{ pay.duration }}个月</view>
 					<view class="text-2"> <text>¥</text>{{ pay.price }}</view>
-					<view class="text-3" v-if="index == 0 || index == 1">{{ pay.price / pay.duration }}/月</view>
+					<view class="text-3" v-if="index == 0 || index == 1">{{ pay.price / pay.duration }}/月</view>
 				</view>
 			</view>
 			<view class="cm-member-button">
 				<view class="pay-btn pay" @click="hanldWechatPay">立即支付{{ handelPayMsg.price }}元开通</view>
-				<view class="pay-btn none" @click="hanldeShowBeans">抵扣{{ handelPayMsg.beans }}个采美豆开通</view>
+				<view class="pay-btn none" @click="hanldeShowBeans">抵扣{{ handelPayMsg.beans }}个采美豆开通</view>
 			</view>
 		</view>
 		<!-- 弹窗 -->
@@ -83,7 +83,9 @@ export default {
 			tabCurrent: 0
 		}
 	},
-	onLoad() {},
+	onLoad() {
+		this.getUserSuperPackage()
+	},
 	filters: {
 		TypeFormat(value) {
 			switch (value) {
@@ -113,7 +115,6 @@ export default {
 			const userInfo = await this.$api.getStorage()
 			this.payParam.userId = userInfo.userId ? userInfo.userId : 0
 			this.userIdentity = userInfo.userIdentity ? userInfo.userIdentity : 0
-			this.getUserSuperPackage()
 			this.getUserSuperCenter()
 		},
 		getUserSuperPackage() {
@@ -160,7 +161,7 @@ export default {
 					this.isShowBeansModal = false
 					this.$util.msg('续费成功', 2000, true, 'success')
 					setTimeout(() => {
-						this.$api.navigateTo('/pages/user/member/member')
+						uni.navigateBack({delta: 1})
 					}, 2000)
 				})
 				.catch(error => {

+ 83 - 19
pages/user/member/member.vue

@@ -36,12 +36,12 @@
 				>
 					<view class="hot" v-if="index == 0">推荐</view> <view class="text-1">{{ pay.duration }}个月</view>
 					<view class="text-2"> <text>¥</text>{{ pay.price }}</view>
-					<view class="text-3" v-if="index == 0 || index == 1">{{ pay.price / pay.duration }}/月</view>
+					<view class="text-3" v-if="index == 0 || index == 1">{{ pay.price / pay.duration }}/月</view>
 				</view>
 			</view>
-			<view class="cm-member-button">
+			<view class="cm-member-button" v-if="!popupShow">
 				<view class="pay-btn pay" @click="hanldWechatPay">立即支付{{ handelPayMsg.price }}元开通</view>
-				<view class="pay-btn none" @click="hanldeShowBeans">抵扣{{ handelPayMsg.beans }}个采美豆开通</view>
+				<view class="pay-btn none" @click="hanldeShowBeans">抵扣{{ handelPayMsg.beans }}个采美豆开通</view>
 			</view>
 		</view>
 		<view class="cm-member-main">
@@ -92,7 +92,7 @@
 				</view>
 			</view>
 		</view>
-		<view class="cm-member-main none">
+		<view class="cm-member-main none" :style="{ paddingBottom: popupShow ? '240rpx' : '0rpx' }">
 			<view class="title">
 				优惠商品
 				<view class="more" @click="hanldPayUrl('/pages/user/member/member-product')"
@@ -121,22 +121,17 @@
 									<view class="floor-tags" v-else>{{ pro.promotions.name }}</view>
 								</template>
 								<template v-if="pro.svipProductFlag == 1">
-									<template v-if="pro.priceFlag != 1 && userIdentity == 2">
-										<view class="svip-tags">
-											<view class="tags">SVIP</view>
-											<view class="price">{{ pro.svipPriceTag }}</view>
-										</view>
-									</template>
-									<template v-else>
-										<view class="svip-tags"> <view class="tags none">SVIP</view> </view>
-									</template>
+									<view class="svip-tags">
+										<view class="tags" :class="{ none: userVip.vipFlag == 0 }">SVIP</view>
+										<view class="price" v-if="isShowVipFlag(pro)">{{ pro.svipPriceTag }}</view>
+									</view>
 								</template>
 							</view>
 						</view>
 						<view class="product-price">
 							<view class="list-none" v-if="pro.priceFlag == 1">¥未公开价格</view>
 							<template v-else>
-								<view class="list-none" v-if="pro.priceFlag == 2 && userIdentity == 4"
+								<view class="list-none" v-if="pro.priceFlag == 2 && ( userIdentity == 4 && userVip.vipFlag == 0)"
 									>¥价格仅会员可见</view
 								>
 								<view class="list-none-price" v-else>¥{{ pro.originalPrice | NumFormat }}</view>
@@ -169,6 +164,17 @@
 				</view>
 			</view>
 		</template>
+		<!-- 悬浮按钮 -->
+		<tui-bottom-popup :radius="false" :mask="false" :show="popupShow">
+			<view class="tui-popup-box clearfix" :style="{ paddingBottom: isIphoneX ? '68rpx' : '34rpx' }">
+				<view class="cm-member-button">
+					<view class="pay-btn pay" @click="hanldWechatPay">立即支付{{ handelPayMsg.price }}元开通</view>
+					<view class="pay-btn none" @click="hanldeShowBeans"
+						>或抵扣{{ handelPayMsg.beans }}个采美豆开通</view
+					>
+				</view>
+			</view>
+		</tui-bottom-popup>
 	</view>
 </template>
 
@@ -182,9 +188,11 @@ export default {
 	data() {
 		return {
 			StaticUrl: this.$Static,
+			isIphoneX: this.$store.state.isIphoneX,
 			isRequest: false,
 			isModallayer: false,
 			isShowBeansModal: false,
+			popupShow: false,
 			memberType: 0,
 			tabCurrent: 0,
 			userIdentity: 0,
@@ -253,7 +261,9 @@ export default {
 			isReceiveLoading: false
 		}
 	},
-	onLoad() {},
+	onLoad() {
+		this.getUserSuperPackage()
+	},
 	filters: {
 		TypeFormat: function(value) {
 			switch (value) {
@@ -288,6 +298,7 @@ export default {
 			this.payParam.userId = this.listQuery.userId = userInfo.userId ? userInfo.userId : 0
 			this.userIdentity = userInfo.userIdentity ? userInfo.userIdentity : 0
 			this.getUserSuperCenter()
+			this.getSvipProductPage()
 		},
 		getUserSuperCenter() {
 			// 获取会员中心数据
@@ -296,8 +307,6 @@ export default {
 					let data = response.data
 					this.userVip = data.vip
 					this.productCouponList = data.coupon
-					this.getSvipProductPage()
-					this.getUserSuperPackage()
 					this.isRequest = true
 				})
 				.catch(error => {
@@ -337,6 +346,10 @@ export default {
 			if (this.isReceiveLoading) {
 				return
 			}
+			if (this.userVip.vipFlag != 1) {
+				this.$util.msg('您还未开通超级会员,不能领取', 2000)
+				return
+			}
 			this.ProductService.ReceiveCoupon({
 				userId: this.payParam.userId,
 				couponId: coupon.couponId,
@@ -369,9 +382,9 @@ export default {
 				.then(response => {
 					this.isShowBeansModal = false
 					this.$util.msg('开通成功', 2000, true, 'success')
-					setTimeout(()=>{
+					setTimeout(() => {
 						this.getUserSuperCenter()
-					},2000)
+					}, 2000)
 				})
 				.catch(error => {
 					this.$util.msg(error.msg, 2000)
@@ -442,9 +455,30 @@ export default {
 			return false
 		},
 		productDetail(productId) {
+			// 跳转商品详情
 			this.isModallayer = true
 			this.$api.navigateTo(`/pages/goods/product?id=${productId}`)
 			this.isModallayer = false
+		},
+		isShowVipFlag(pros) {
+			// 超级会员价格显示控制
+			if (pros.priceFlag != 1) {
+				if (this.userIdentity == 4 && this.userVip.vipFlag == 1) {
+					return true
+				} else if (this.userIdentity == 2) {
+					return true
+				}
+			}
+		}
+	},
+	onPageScroll(e) {
+		//实时获取到滚动的值
+		if(this.userVip.vipFlag == 0){
+			if (e.scrollTop > 400) {
+				this.popupShow = true
+			} else {
+				this.popupShow = false
+			}
 		}
 	},
 	onPullDownRefresh() {
@@ -922,4 +956,34 @@ page {
 		}
 	}
 }
+.tui-popup-box {
+	position: relative;
+	box-sizing: border-box;
+	min-height: 168rpx;
+	padding: 6rpx 24rpx;
+	.cm-member-button {
+		width: 100%;
+		box-sizing: border-box;
+		padding: 24rpx 51rpx;
+		.pay-btn {
+			width: 100%;
+			height: 90rpx;
+			line-height: 90rpx;
+			border-radius: 50rpx;
+			text-align: center;
+			font-size: $font-size-30;
+			color: #55331d;
+			box-sizing: border-box;
+			margin-bottom: $font-size-24;
+			&.pay {
+				background: linear-gradient(90deg, #fee9ba 0%, #f0cb72 100%);
+				font-weight: bold;
+			}
+			&.none {
+				border: 1px solid #f0cb72;
+				margin-bottom: 0;
+			}
+		}
+	}
+}
 </style>

+ 73 - 0
services/public.js

@@ -190,3 +190,76 @@ export function uploadFilePdf() {
         })
     })
 }
+/**
+ * 协销机构资料上传文件
+ * 限制pdf,doc,docx
+ */
+export function uploadFilePdfDocDocxXlsx() {
+    return new Promise(function(resolve, reject) {
+        wx.chooseMessageFile({
+            count: 1,
+            type: 'file',
+            success(res) {
+                // tempFilePath可以作为img标签的src属性显示图片
+                const tempFilePaths = res.tempFiles
+                const size = tempFilePaths[0].size //获取图片的大小,单位B
+                const filename = res.tempFiles[0].name
+                const newfilename = filename + ''
+                const url = requestUrl + '/file/upload'
+                uni.setStorageSync('fileName', filename)
+                console.log('filename', filename)
+                //截取
+                let fixFile = newfilename.substr(newfilename.lastIndexOf('.'))
+                console.log(fixFile)
+                //统一转成小写  
+                let lowFixFile = fixFile.toLowerCase()
+                if (
+                    lowFixFile != '.pdf' &&
+					lowFixFile != '.doc' &&
+					lowFixFile != '.docx' &&
+					lowFixFile != '.ppt' &&
+					lowFixFile != '.pptx' &&
+					lowFixFile != '.xlsx' &&
+					lowFixFile != '.xls'
+                ) { //限制了文件类型
+                    uni.showToast({
+                        title: '文件格式不正确!',
+                        icon: 'none',
+                        mask: true,
+                        duration: 3000
+                    })
+                    return
+                }
+                if (size > 51200000) { //限制了文件的大小50M
+                    uni.showToast({
+                        title: '文件大小不能超过50M',
+                        icon: 'none',
+                        mask: true,
+                        duration: 3000
+                    })
+                    return
+                }
+                wx.showLoading({ title: '上传中~' })
+                wx.uploadFile({
+                    url: url,
+                    filePath: tempFilePaths[0].path,
+                    name: 'file',
+                    header: {
+                        'Content-Type': 'multipart/form-data',
+                    },
+                    formData: {
+                        'user': 'test'
+                    },
+                    success: function(res) {
+                        wx.hideLoading()
+                        resolve(res)
+                    },
+                    error: function(err) {
+                        wx.hideLoading()
+                        reject(err)
+                    }
+                })
+            }
+        })
+    })
+}