Просмотр исходного кода

Merge branch 'develop_hb01' of jianguan-web/repairYimatong-mini-html into master

李磊 2 лет назад
Родитель
Сommit
e519593a55
33 измененных файлов с 724 добавлено и 236 удалено
  1. 6 0
      api/car.js
  2. 8 0
      api/data.js
  3. 31 0
      api/rewardRule.js
  4. 8 0
      api/shelf.js
  5. 11 3
      components/scrollBox.vue
  6. 170 150
      pages.json
  7. 78 11
      pages/index/index.vue
  8. 17 5
      pages/morePage/morePage.vue
  9. 295 0
      pages/morePage/redPacket.vue
  10. 5 7
      pages/personData/personData.vue
  11. 1 1
      pages/vinInput/confirmVin.vue
  12. 1 1
      pages/vinRecord/vinRecord.vue
  13. 19 5
      pagesA/digitalShelf/choosePart.vue
  14. 50 14
      pagesA/digitalShelf/choosePartResult.vue
  15. 3 3
      pagesA/digitalShelf/orderDetail.vue
  16. 5 5
      pagesA/digitalShelf/orderList.vue
  17. 0 0
      pagesA/digitalShelf/scanBarcode/scanBarcode.vue
  18. 0 0
      pagesA/digitalShelf/settlementManage/settlementAyDetail.vue
  19. 3 3
      pagesA/digitalShelf/settlementManage/settlementManage.vue
  20. 0 0
      pagesA/digitalShelf/settlementManage/settlementSxDetail.vue
  21. 0 0
      pagesA/digitalShelf/settlementRecord/orderPartDetail.vue
  22. 1 1
      pagesA/digitalShelf/settlementRecord/settlementDetail.vue
  23. 1 1
      pagesA/digitalShelf/settlementRecord/settlementRecord.vue
  24. 1 1
      pagesA/digitalShelf/stockPut.vue
  25. 0 0
      pagesA/digitalShelf/stockPutDetail.vue
  26. 1 1
      pagesA/digitalShelf/tempOrderList/orderDetail.vue
  27. 1 1
      pagesA/digitalShelf/tempOrderList/tempOrderList.vue
  28. 4 22
      pagesA/queryByCode/confirmQh.vue
  29. 1 1
      pagesA/queryByCode/queryByCode.vue
  30. BIN
      pagesA/static/hb.png
  31. BIN
      static/banner2.png
  32. BIN
      static/hbheader.jpg
  33. 3 0
      store/index.js

+ 6 - 0
api/car.js

@@ -222,6 +222,12 @@ export const scanVinLog = (params) => {
     method: 'post'
   })
 }
+export const scanVinLogCopy = (params) => {
+  return request({
+    url: `scanVinLog/logCopy/${params.id}`,
+    method: 'get'
+  })
+}
 // 滚动扫描记录
 export const scanVinLogQueryRoll = (params) => {
   return request({

+ 8 - 0
api/data.js

@@ -39,6 +39,14 @@ export const wxUserUpdate = (params) => {
 	data:params
   }).then(res=>res.data)
 }
+// 获取用户信息
+export const getCurrUserInfo = (params) => {
+  return request({
+    url: 'employee/findCurrent',
+	data:params,
+    method: 'get'
+  })
+}
 
 // 根据字典code查询选项
 export const getLookUpDatas = (params) => {

+ 31 - 0
api/rewardRule.js

@@ -0,0 +1,31 @@
+import request from './request';
+// 取当前活动规则
+export const findCurrentRewardRule = (params) => {
+  return request({
+    url: `shelf/rewardRule/findCurrentRewardRule`,
+    method: 'get'
+  })
+}
+// 获取当前用户 的奖励汇总信息
+export const findUserReward = (params) => {
+  return request({
+    url: `shelf/reward/findUserReward`,
+    method: 'get'
+  })
+}
+// 获取奖励列表信息
+export const getRewardOrderList = (params) => {
+  return request({
+    url: `shelf/rewardOrder/queryPage/${params.pageNo}/${params.pageSize}`,
+    data: params,
+    method: 'post'
+  })
+}
+// 滚动领奖列表
+export const getRewardRollList = (params) => {
+  return request({
+    url: `shelf/rewardOrder/rollList/${params.pageNo}/${params.pageSize}`,
+    data: params,
+    method: 'post'
+  })
+}

+ 8 - 0
api/shelf.js

@@ -298,4 +298,12 @@ export const savePriceShowEmployee = (params) => {
     data: params,
     method: 'post'
   })
+}
+// 下单后是否有红包奖励
+export const rewardOrderFindBySn = (params) => {
+  return request({
+    url: `shelf/rewardOrder/findByOrderSn`,
+    data: params,
+    method: 'post'
+  })
 }

+ 11 - 3
components/scrollBox.vue

@@ -2,9 +2,9 @@
 	<view class="list uni-flex uni-column">
 		<view class="wrap-item">
 			<view class="lis uni-flex uni-column" :animation="animationData">
-				<view class="uni-flex uni-column item" v-for="(item, index) in list" :key="index">
+				<view class="uni-flex uni-column item" :style="{background: bgColor,color:color}" v-for="(item, index) in list" :key="index">
 					<view class="swiper-item item_title uni-flex list_item">
-						<view class="time uni-flex-item justify-align-center uni-flex">{{ item.userName }}刚刚扫描了一个VIN</view>
+						<view class="time uni-flex-item justify-align-center uni-flex">{{ item.placeText }}</view>
 					</view>
 				</view>
 			</view>
@@ -17,6 +17,14 @@ export default {
 	props: {
 		list: {
 			type: Array
+		},
+		bgColor: {
+			type: String,
+			default: 'rgba(229, 237, 240, 0.6)'
+		},
+		color: {
+			type: String,
+			default: '#333'
 		}
 	},
 	data() {
@@ -65,7 +73,7 @@ export default {
 
 <style lang="less">
 	.list {
-		width: 50%;
+		width: 60%;
 		height: 2.6em;
 		overflow: hidden;
 		.item{

+ 170 - 150
pages.json

@@ -122,143 +122,7 @@
             }
             
         },
-		{
-		    "path" : "pages/digitalShelf/choosePart",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "选择配件",
-		        "enablePullDownRefresh": false
-		    }
-		}
-		,{
-		    "path" : "pages/digitalShelf/orderList",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "货架订单",
-		        "enablePullDownRefresh": false
-		    }
-		}
-		,{
-		    "path" : "pages/digitalShelf/orderDetail",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "订单详情",
-		        "enablePullDownRefresh": false
-		    }
-		    
-		}
-		,{
-		    "path" : "pages/digitalShelf/choosePartResult",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "",
-				"enablePullDownRefresh": false
-		    }
-		    
-		}
-		,{
-		    "path" : "pages/digitalShelf/stockPut",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "补货记录",
-		        "enablePullDownRefresh": false
-		    }
-		    
-		}
-		,{
-		    "path" : "pages/digitalShelf/stockPutDetail",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "补货单详情",
-		        "enablePullDownRefresh": false
-		    }
-		    
-		}
-		,{
-		    "path" : "pages/digitalShelf/settlementManage/settlementManage",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "付款结算",
-		        "enablePullDownRefresh": false
-		    }
-		    
-		}
-		,{
-		    "path" : "pages/digitalShelf/settlementManage/settlementSxDetail",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "已用额度详情",
-		        "enablePullDownRefresh": false
-		    }
-		    
-		}
-		,{
-		    "path" : "pages/digitalShelf/settlementManage/settlementAyDetail",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "待结算详情",
-		        "enablePullDownRefresh": false
-		    }
-		    
-		}
-		,{
-		    "path" : "pages/digitalShelf/settlementRecord/settlementRecord",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "结算记录",
-		        "enablePullDownRefresh": false,
-				"titleView":false,
-				// 将回弹属性关掉
-				"bounce":"none"
-		    }
-		    
-		}
-		,{
-		    "path" : "pages/digitalShelf/settlementRecord/settlementDetail",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "结算详情",
-		        "enablePullDownRefresh": false
-		    }
-		    
-		}
-		,{
-		    "path" : "pages/digitalShelf/settlementRecord/orderPartDetail",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "订单详情",
-		        "enablePullDownRefresh": false
-		    }
-		    
-		}
-		,{
-		    "path" : "pages/digitalShelf/scanBarcode/scanBarcode",
-		    "style" :                                                                                    
-		    {
-		        "navigationBarTitleText": "扫码拿货",
-		        "enablePullDownRefresh": false
-		    }
-		    
-		}
-        ,{
-            "path" : "pages/digitalShelf/tempOrderList/tempOrderList",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "急送订单",
-                "enablePullDownRefresh": false
-            }
-            
-        }
-        ,{
-            "path" : "pages/digitalShelf/tempOrderList/orderDetail",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "急送订单详情",
-                "enablePullDownRefresh": false
-            }
-            
-        }
-        ,{
+        {
             "path" : "pages/storeManage/addPerson",
             "style" :                                                                                    
             {
@@ -277,33 +141,189 @@
             
         }
         ,{
-            "path" : "pages/queryByCode/queryByCode",
-            "style" :                                                                                    
-            {
-                "navigationBarTitleText": "按产品编码查询",
-                "enablePullDownRefresh": false
-            }
-            
-        }
-        ,{
-            "path" : "pages/queryByCode/confirmQh",
+            "path" : "pages/storeManage/priceSetting/priceSetting",
             "style" :                                                                                    
             {
-                "navigationBarTitleText": "确认拿货",
+                "navigationBarTitleText": "价格显示设置",
                 "enablePullDownRefresh": false
             }
             
         }
         ,{
-            "path" : "pages/storeManage/priceSetting/priceSetting",
+            "path" : "pages/morePage/redPacket",
             "style" :                                                                                    
             {
-                "navigationBarTitleText": "价格显示设置",
+                "navigationBarTitleText": "红包奖励",
                 "enablePullDownRefresh": false
             }
             
         }
     ],
+	"subPackages":[{
+		"root": "pagesA",
+		"pages":[
+			{
+			    "path" : "digitalShelf/choosePart",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "选择配件",
+			        "enablePullDownRefresh": false
+			    }
+			}
+			,{
+			    "path" : "digitalShelf/orderList",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "货架订单",
+			        "enablePullDownRefresh": false
+			    }
+			}
+			,{
+			    "path" : "digitalShelf/orderDetail",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "订单详情",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			}
+			,{
+			    "path" : "digitalShelf/choosePartResult",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "",
+					"enablePullDownRefresh": false
+			    }
+			    
+			}
+			,{
+			    "path" : "digitalShelf/stockPut",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "补货记录",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			}
+			,{
+			    "path" : "digitalShelf/stockPutDetail",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "补货单详情",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			}
+			,{
+			    "path" : "digitalShelf/settlementManage/settlementManage",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "付款结算",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			}
+			,{
+			    "path" : "digitalShelf/settlementManage/settlementSxDetail",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "已用额度详情",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			}
+			,{
+			    "path" : "digitalShelf/settlementManage/settlementAyDetail",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "待结算详情",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			}
+			,{
+			    "path" : "digitalShelf/settlementRecord/settlementRecord",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "结算记录",
+			        "enablePullDownRefresh": false,
+					"titleView":false,
+					// 将回弹属性关掉
+					"bounce":"none"
+			    }
+			    
+			}
+			,{
+			    "path" : "digitalShelf/settlementRecord/settlementDetail",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "结算详情",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			}
+			,{
+			    "path" : "digitalShelf/settlementRecord/orderPartDetail",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "订单详情",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			}
+			,{
+			    "path" : "digitalShelf/scanBarcode/scanBarcode",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "扫码拿货",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			}
+			,{
+			    "path" : "digitalShelf/tempOrderList/tempOrderList",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "急送订单",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			}
+			,{
+			    "path" : "digitalShelf/tempOrderList/orderDetail",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "急送订单详情",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			},
+			{
+			    "path" : "queryByCode/queryByCode",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "按产品编码查询",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			}
+			,{
+			    "path" : "queryByCode/confirmQh",
+			    "style" :                                                                                    
+			    {
+			        "navigationBarTitleText": "确认拿货",
+			        "enablePullDownRefresh": false
+			    }
+			    
+			}
+		]
+	}],
+	"preloadRule": {
+		"pages/index/index": {
+			"network": "all",
+			"packages": ["pagesA"]
+		}
+	},
 	"globalStyle": {
 		"navigationBarTextStyle": "black",
 		"navigationBarTitleText": "uni-app",

+ 78 - 11
pages/index/index.vue

@@ -11,7 +11,8 @@
 			<view class="body-box bg-blue">
 				<!-- 滚动区域 -->
 				<view class="scroll-list">
-					<scrollBox v-if="list.length" :list="list"></scrollBox>
+					<scrollBox v-if="list.length&&!hasRedPacket" :list="list"></scrollBox>
+					<scrollBox v-if="slist.length&&hasRedPacket" :list="slist"></scrollBox>
 				</view>
 				<!-- 保证金 -->
 				<view class="notices flex align_center" v-if="bondRecord" @click="toPayBondAmount">
@@ -75,8 +76,8 @@
 					</view>
 					<view></view>
 				</view>
-				<view class="flex align_center justify_center" style="margin-top: 20upx;">
-					<u-image src="/static/banner1.png" width="645" height="504"></u-image>
+				<view style="margin-top: 20upx;">
+					<u-swiper mode="dot" bg-color="" img-mode="widthFix" @click="clickBanner" :interval="3000" :height="374" :list="imgList"></u-swiper>
 				</view>
 				<u-action-sheet :list="actionList" @click="clickAction" v-model="showAction"></u-action-sheet>
 			</view>
@@ -120,8 +121,10 @@
 	import UniStatusBar from '@/components/uni-status-bar/uni-status-bar.vue'
 	import { shelfBondRecordWaitPayRecord, findStoreShelf, shelfGetTotalWaitQty, getProductfindByScanCode, findPriceShow,findPriceShowType,findPriceShowEmployee } from '@/api/shelf.js'
 	import { xprhStoreApplyRead } from '@/api/xprh.js'
-	import { listLookUp, getLookUpDatas } from '@/api/data.js';
+	import { findCurrentRewardRule } from '@/api/rewardRule.js'
+	import { listLookUp, getLookUpDatas, getCurrUserInfo } from '@/api/data.js';
 	import { scanVinLogQueryRoll, getScanVinLogList, getScanGetMaxQty }from '@/api/car.js'
+	import { getRewardRollList } from '@/api/rewardRule.js'
 	export default {
 		components: {
 			scrollBox,
@@ -132,7 +135,8 @@
 				status: 'loading',
 				noDataText: '暂无数据',
 				bondRecord: null, // 保证金
-				list:[],
+				list:[], // 扫描记录滚动
+				slist:[], // 红包滚动
 				vinList: [],
 				orderTodo: null,
 				avatarUrl:'',
@@ -148,7 +152,7 @@
 						text: '按产品编码查询',
 						fontSize: 32
 					}
-				]
+				],
 			}
 		},
 		computed: {
@@ -161,6 +165,23 @@
 			},
 			storeApply(){
 				return this.$store.state.vuex_storeAuthInfo || null
+			},
+			hasRedPacket(){
+				const rule = this.$store.state.vuex_rewardRule
+				return rule&&rule.ruleStatus == 'release'
+			},
+			imgList(){
+				if(this.hasRedPacket&&this.hasShelf){
+					return [{
+						image: '/static/banner1.png'
+					},{
+						image: '/static/banner2.png'
+					}]
+				}else{
+					return [{
+						image: '/static/banner1.png'
+					}]
+				}
 			}
 		},
 		onReady() {
@@ -189,6 +210,10 @@
 				this.getLookUpList('PRICE_SHOW_TYPE', 'vuex_priceTypeList');
 				// 初始化页面
 				this.pageInit()
+				// 查询红包活动
+				this.getRedPacketRule()
+				// 更新用户信息
+				this.getCurrUserInfo()
 			})
 			// 刷新首页数据
 			uni.$on("refashHome",()=>{
@@ -210,13 +235,20 @@
 			// 用户头像
 			this.avatarUrl = uni.getStorageSync('userPhoto');
 			if(this.hasLogin){
+				// 更新用户信息
+				this.getCurrUserInfo()
 				// 查询门店认证信息
 				if(this.userInfo.sysUserFlag == '0'){
 					this.findLastApply()
 				}
+				if(this.userInfo.sysUserFlag == '1'){
+					// 查询红包活动
+					this.getRedPacketRule()
+				}
 			}
 		},
 		methods: {
+			// 扫描vin
 			beforeSwitch(index){
 				if(index==1){
 					this.openCamera()
@@ -224,6 +256,7 @@
 					return true
 				}
 			},
+			// 价格显示
 			async getPriceShow(){
 				await findPriceShow().then(res => {
 					this.showPrice = res.data ? res.data.paramValue=='1' : false
@@ -245,7 +278,6 @@
 				if(this.hasLogin){
 					// 获取扫描记录
 					this.getVinLog()
-					
 					// 非游客
 					if(this.userInfo.sysUserFlag == '1'){
 						// 查询是否有数字货架
@@ -284,6 +316,17 @@
 					}
 				});
 			},
+			// 最新用户信息
+			getCurrUserInfo(){
+				getCurrUserInfo().then(res => {
+					if(res.data){
+						this.$store.state.vuex_userInfo.userNameCN = res.data.name;
+						this.$store.state.vuex_userInfo.mobile = res.data.mobile;
+						this.$store.state.vuex_userPhoto = res.data.photo;
+						uni.setStorageSync('userPhoto', res.data.photo);
+					}
+				})
+			},
 			// 获取最大扫描数
 			getMaxQty(){
 				getScanGetMaxQty().then(res => {
@@ -320,7 +363,7 @@
 			toOrder(){
 				if(this.hasShelf){
 					uni.navigateTo({
-						url: "/pages/digitalShelf/orderList"
+						url: "/pagesA/digitalShelf/orderList"
 					})
 				}else{
 					uni.showToast({
@@ -334,6 +377,9 @@
 				scanVinLogQueryRoll({pageNo:1,pageSize:1000}).then(res => {
 					console.log(res)
 					this.list = res.data.list || []
+					this.list.map(item => {
+						item.placeText = item.userName + '刚刚扫描了一个VIN'
+					})
 				})
 			},
 			// 获取当前门店扫描记录
@@ -360,6 +406,21 @@
 						}
 				})
 			},
+			// 查询是有红包活动
+			getRedPacketRule(){
+				findCurrentRewardRule().then(res => {
+					this.$store.state.vuex_rewardRule = res.data;
+					this.getRedScroll()
+				})
+			},
+			getRedScroll(){
+				getRewardRollList({pageNo:1,pageSize:1000}).then(res => {
+					this.slist = res.data || []
+					this.slist.map(item => {
+						item.placeText = item.userName + '刚刚得到了'+item.totalRewardAmount+'元 红包奖励'
+					})
+				})
+			},
 			// 获取保证金金额
 			getShelfBWPayRecord(){
 				const data = this.$store.state.vuex_storeShelf
@@ -382,6 +443,12 @@
 					})
 				}
 			},
+			// 单击banner
+			clickBanner(index){
+				if(index == 1 && this.hasRedPacket){
+					uni.navigateTo({url:"/pages/morePage/redPacket"})
+				}
+			},
 			// 选择取货方式
 			clickAction(index){
 				const shelfSn = this.hasShelf.shelfSn
@@ -412,7 +479,7 @@
 										const params = Object.assign({shelfSn: shelfSn, billSource: billSource},res.data)
 										_this.$store.state.vuex_tempData = params
 										uni.navigateTo({
-											url: '/pages/queryByCode/confirmQh'
+											url: '/pagesA/queryByCode/confirmQh'
 										})
 									}else{
 										uni.showModal({
@@ -437,7 +504,7 @@
 				}else{
 					// 按编码搜索
 					uni.navigateTo({
-						url: '/pages/queryByCode/queryByCode'
+						url: '/pagesA/queryByCode/queryByCode'
 					})
 				}
 			},
@@ -490,7 +557,7 @@
 			toChoosePart(item){
 				item.text = item.modelInfo
 				uni.navigateTo({
-					url: "/pages/digitalShelf/choosePart?vinNumber="+item.vinCode+"&carList="+encodeURIComponent(JSON.stringify(item))
+					url: "/pagesA/digitalShelf/choosePart?vinNumber="+item.vinCode+"&carList="+encodeURIComponent(JSON.stringify(item))+'&type=log'
 				})
 			}
 		}

+ 17 - 5
pages/morePage/morePage.vue

@@ -1,6 +1,14 @@
 <template>
 	<view>
 	<view class="morePages">
+		<view class="list-box" v-if="hasRedPacket&&hasShelf">
+			<view class="list-title flex align_center justify_between" @click="toPage('/pages/morePage/redPacket')">
+				<view><u-icon size="34" color="#f10000" name="red-packet-fill"></u-icon> <text style="color: #ff0000;margin-left: 10rpx;">红包奖励</text></view>
+				<view>
+					<u-icon size="28" color="#969799" name="arrow-right"></u-icon>
+				</view>
+			</view>
+		</view>
 		<view class="list-box" v-if="$hasPermissions('M_stockQueryList_mini')||$hasPermissions('M_stockPut_mini')">
 			<view class="list-title">
 				<u-icon size="38" name="bag"></u-icon> <text>货品管理</text>
@@ -9,7 +17,7 @@
 				<u-cell-item title="库存查询" v-if="$hasPermissions('M_stockQueryList_mini')" @click="toPage('/pages/stockQuery/stockQuery')" :title-style="{fontSize:'1em'}">
 					<text slot="icon"></text>
 				</u-cell-item>
-				<u-cell-item title="补货记录" v-if="$hasPermissions('M_stockPut_mini')" @click="toPage('/pages/digitalShelf/stockPut')" :title-style="{fontSize:'1em'}">
+				<u-cell-item title="补货记录" v-if="$hasPermissions('M_stockPut_mini')" @click="toPage('/pagesA/digitalShelf/stockPut')" :title-style="{fontSize:'1em'}">
 					<text slot="icon"></text>
 				</u-cell-item>
 			</u-cell-group>
@@ -19,10 +27,10 @@
 				<u-icon size="34" name="order"></u-icon> <text>订单管理</text>
 			</view>
 			<u-cell-group :border="false">
-				<u-cell-item title="货架订单" v-if="$hasPermissions('M_shelfOrder_mini')" @click="toPage('/pages/digitalShelf/orderList')" :title-style="{fontSize:'1em'}">
+				<u-cell-item title="货架订单" v-if="$hasPermissions('M_shelfOrder_mini')" @click="toPage('/pagesA/digitalShelf/orderList')" :title-style="{fontSize:'1em'}">
 					<text slot="icon"></text>
 				</u-cell-item>
-				<u-cell-item title="急送订单" v-if="$hasPermissions('M_tempShelfOrder_mini')" @click="toPage('/pages/digitalShelf/tempOrderList/tempOrderList')" :title-style="{fontSize:'1em'}">
+				<u-cell-item title="急送订单" v-if="$hasPermissions('M_tempShelfOrder_mini')" @click="toPage('/pagesA/digitalShelf/tempOrderList/tempOrderList')" :title-style="{fontSize:'1em'}">
 					<text slot="icon"></text>
 				</u-cell-item>
 			</u-cell-group>
@@ -32,10 +40,10 @@
 				<u-icon size="36" name="rmb-circle"></u-icon> <text>结算管理</text>
 			</view>
 			<u-cell-group :border="false">
-				<u-cell-item title="结算记录" v-if="$hasPermissions('M_settlementRecord_mini')" @click="toPage('/pages/digitalShelf/settlementRecord/settlementRecord')" :title-style="{fontSize:'1em'}">
+				<u-cell-item title="结算记录" v-if="$hasPermissions('M_settlementRecord_mini')" @click="toPage('/pagesA/digitalShelf/settlementRecord/settlementRecord')" :title-style="{fontSize:'1em'}">
 					<text slot="icon"></text>
 				</u-cell-item>
-				<u-cell-item title="付款结算" v-if="$hasPermissions('M_settlementManage_mini')" @click="toPage('/pages/digitalShelf/settlementManage/settlementManage')" :title-style="{fontSize:'1em'}">
+				<u-cell-item title="付款结算" v-if="$hasPermissions('M_settlementManage_mini')" @click="toPage('/pagesA/digitalShelf/settlementManage/settlementManage')" :title-style="{fontSize:'1em'}">
 					<text slot="icon"></text>
 				</u-cell-item>
 			</u-cell-group>
@@ -106,6 +114,10 @@
 			},
 			storeApply(){
 				return this.$store.state.vuex_storeAuthInfo
+			},
+			hasRedPacket(){
+				const rule = this.$store.state.vuex_rewardRule
+				return rule&&rule.ruleStatus == 'release'
 			}
 		},
 		onShow() {

+ 295 - 0
pages/morePage/redPacket.vue

@@ -0,0 +1,295 @@
+<template>
+	<view class="content">
+		<view class="header-img">
+			<u-image src="/static/hbheader.jpg" width="750" height="578"></u-image>
+			<!-- 滚动区域 -->
+			<view class="scroll-list" v-if="slist.length">
+				<scrollBox :list="slist" bgColor="rgba(250, 224, 188, 0.6)"></scrollBox>
+			</view>
+			<view class="amount-box">
+				{{rewardData?rewardData.rewardAmount:'0.00'}}
+				<text>元</text>
+			</view>
+			<view class="view-gz" @click="showModal = true">查看活动规则>></view>
+		</view>
+		<view class="list-box">
+			<view class="codes flex align_center">
+				<view @click="openImg()">
+					<u-image :src="hasRedPacket&&hasRedPacket.serviceQrcode" width="160" height="160"></u-image>
+				</view>
+				<view>
+					<view>扫描添加客服微信,领取待发放红包</view>
+					<view>点击二维码查看大图,长按识别二维码</view>
+				</view>
+			</view>
+			<view class="tabbox">
+				<view class="tabhead flex align_center justify_between">
+					<view :class="curTab==0?'active':''" @click="tabChange(0)">所有红包</view>
+					<view :class="curTab==1?'active':''" @click="tabChange(1)">已发红包</view>
+					<view :class="curTab==2?'active':''" @click="tabChange(2)">待发红包</view>
+				</view>
+				<swiper class="tablist">
+					<swiper-item class="swiper-item" style="height: 100%;width: 100%;overflow: hidden;">
+						<scroll-view scroll-y style="height: 100%;width: 100%;overflow: auto;" @scrolltolower="onreachBottom">
+							<view class="totalBar" v-if="rewardData&&curTab==1&&total">
+								共<text>{{total}}</text>个红包,合计<text>{{rewardData.paidAmount||0}}</text>元
+							</view>
+							<view class="totalBar" v-if="rewardData&&curTab==2&&total">
+								共<text>{{total}}</text>个红包,合计<text>{{rewardData.unPaidAmount||0}}</text>元
+							</view>
+							<view class="flex align_center justify_between itemlist" v-for="item in list" :key="item.id">
+								<view class="flex align_center">
+									<view class="imgs flex align_center">
+										<u-icon size="30" color="#fff" name="red-packet"></u-icon>
+									</view>
+									<view class="txts">
+										<view class="txts-name">{{item.orderSourceName}}</view>
+										<view class="txts-time">{{item.rewardCreateDate}}</view>
+									</view>
+								</view>
+								<view class="amount">+{{item.totalRewardAmount}}</view>
+							</view>
+							<view style="padding: 20upx;">
+								 <u-empty :src="`/static/nodata.png`" icon-size="180" :text="noDataText" img-width="120" v-if="list.length==0 && status!='loading'" mode="list"></u-empty>
+								 <u-loadmore v-if="(total>=list.length&&list.length)||status=='loading'" :status="status" />
+							</view>
+						</scroll-view>
+					</swiper-item>
+				</swiper>
+			</view>
+		</view>
+		<!-- 活动规则 -->
+		<u-popup v-model="showModal" closeable mode="center" border-radius="15" width="600rpx">
+			<view style="padding: 20rpx;">
+				<view style="text-align: center;padding: 20rpx 0pt;">活动规则</view>
+				<view style="font-weight: bold;">【活动时间】</view>
+				<view style="padding: 10rpx 20rpx;">即日起—2022年12月31日</view>
+				<view style="font-weight: bold;">【活动内容】</view>
+				<view style="padding: 10rpx 20rpx;">活动期间,凡是通过店内易码通货架取货和小程序下单的用户,即可获得最高百元现金红包。</view>
+				<view style="font-weight: bold;">【领取方式】</view>
+				<view style="padding: 10rpx 20rpx;">在活动页面,扫码或添加客服微信号,发送“姓名+修理厂名称+手机号+提现金额”,客服会在收到信息后1-3个工作日内,以微信红包的形式发放现金红包,您可在“已发放”“待发放”中查看红包金额。</view>
+				<view style="font-weight: bold;">【注意】</view>
+				<view style="padding: 10rpx 20rpx;">1.退货或已取消的订单不可领取红包;</view>
+				<view style="padding: 10rpx 20rpx;">2.红包不可转让或为他人付款;</view>
+				<view style="padding: 10rpx 20rpx;">3.活动仅限实名认证用户才能参与,因微信账号非实名导致用户无法收到和领取红包的,请联系腾讯客服完成实名认证;</view>
+				<view style="padding: 10rpx 20rpx;">4.该活动最终解释权归广东易码通数字科技有限公司所有。</view>
+				<view style="font-weight: bold;">【声明】</view>
+				<view style="padding: 10rpx 20rpx;">广东易码通数字科技有限公司不会以任何理由向用户所要身份证、银行卡账户和密码等相关信息,请注意保护个人隐私。</view>
+			</view>
+		</u-popup>
+	</view>
+</template>
+
+<script>
+	import scrollBox from '@/components/scrollBox.vue'
+	import { findUserReward, getRewardOrderList, getRewardRollList } from '@/api/rewardRule.js'
+	export default {
+		components: {
+			scrollBox,
+		},
+		data() {
+			return {
+				showModal: false,
+				rewardData: null, // 奖励信息
+				slist:[],
+				status: 'loading',
+				noDataText: '暂无数据',
+				pageNo: 1,
+				pageSize: 30,
+				total: 0,
+				rewardStatus: ['','paid','un_paid'], //un_paid 未发放,paid 已发放
+				list: [],
+				curTab:'0'
+			}
+		},
+		onLoad(){
+			this.getScrollLog()
+			this.getUserReward()
+			this.getEwardOrder()
+		},
+		computed: {
+			hasRedPacket(){
+				return this.$store.state.vuex_rewardRule
+			}
+		},
+		methods: {
+			openImg(url){
+				uni.previewImage({
+					urls:[this.hasRedPacket&&this.hasRedPacket.serviceQrcode||'']
+				})
+			},
+			// 活动奖励信息
+			getUserReward(){
+				findUserReward().then(res => {
+					this.rewardData = res.data
+				})
+			},
+			tabChange(i){
+				this.curTab = i
+				this.list = []
+				this.total = 0
+				this.getEwardOrder(1)
+				this.getUserReward()
+			},
+			// 查询列表
+			getEwardOrder (pageNo) {
+			  let _this = this
+			  if (pageNo) {
+			    this.pageNo = pageNo
+			  }
+			  // 状态条件
+			  let params = {
+			    pageNo: this.pageNo,
+			    pageSize: this.pageSize,
+				rewardStatus: this.rewardStatus[this.curTab]
+			  }
+			  this.status = "loading"
+			  getRewardOrderList(params).then(res => {
+				if (res.code == 200 || res.status == 204 || res.status == 200) {
+				  if(_this.pageNo>1){
+					  _this.list = _this.list.concat(res.data.list || [])
+				  }else{
+					  _this.list = res.data.list || []
+				  }
+				  _this.total = res.data.count || 0
+				} else {
+				  _this.list = []
+				  _this.total = 0
+				  _this.noDataText = res.message
+				}
+				_this.status = _this.total>=_this.list.length ? "nomore" : 'loadmore'
+			  })
+			},
+			// scroll-view到底部加载更多
+			onreachBottom() {
+				if(this.list.length < this.total){
+					this.pageNo += 1
+					this.getEwardOrder()
+				}else{
+					this.status = "nomore"
+				}
+			},
+			// 获取上方滚动扫描记录
+			getScrollLog(){
+				getRewardRollList({pageNo:1,pageSize:1000}).then(res => {
+					this.slist = res.data || []
+					this.slist.map(item => {
+						item.placeText = item.userName + '刚刚得到了'+item.totalRewardAmount+'元 红包奖励'
+					})
+				})
+			},
+		}
+	}
+</script>
+
+<style lang="less">
+	.content{
+		padding: 0;
+		background-color: #fae0bc;
+		.header-img{
+			position: relative;
+			color: #fff;
+			.amount-box{
+				position: absolute;
+				width: 100%;
+				text-align: center;
+				font-size: 80rpx;
+				text{
+					font-size: 40rpx;
+				}
+				top: 50%;
+				color: #f5563d;
+			}
+			.view-gz{
+				position: absolute;
+				width: 100%;
+				text-align: center;
+				bottom: 45rpx;
+				font-size: 30rpx;
+			}
+			.scroll-list{
+				width:100%;
+				position: absolute;
+				left:10rpx;
+				top:-10rpx;
+			}
+		}
+		.list-box{
+			padding: 30rpx;
+			.codes{
+				margin-bottom: 40rpx;
+				> view{
+					&:first-child{
+						padding: 10rpx;
+						background-color: #fff;
+					}
+					&:last-child{
+						padding: 0 20rpx;
+						> view{
+							padding: 10rpx 0;
+							font-size: 26rpx;
+						}
+					}
+				}
+			}
+			.tabbox{
+				background-color: #fff5e7;
+				box-shadow: 0 0 10rpx #e75115;
+				border-radius: 15rpx;
+				.tabhead{
+					border-bottom: 1rpx solid #f0b675;
+					> view{
+						width: 30%;
+						color: #5a4f49;
+						padding: 20rpx 0;
+						text-align: center;
+					}
+					.active{
+						color: #e7463c;
+						border-bottom: 4rpx solid #e7463c;
+						font-weight: bold;
+					}
+				}
+				.tablist{
+					height: 70vh;
+					padding: 20rpx 0;
+					.itemlist{
+						border-bottom: 1rpx solid #fff;
+						padding: 20rpx 30rpx;
+						.txts-name{
+							color: #e7463c;
+						}
+						.txts-time{
+							font-size: 24rpx;
+							color: #666;
+							margin-top: 10rpx;
+						}
+						.amount{
+							color: #e7463c;
+							font-weight: bold;
+							font-size: 32rpx;
+						}
+					}
+					.txts{
+						padding:0 20rpx;
+					}
+					.imgs{
+						background-color: #fe9790;
+						border-radius: 100rpx;
+						padding: 10rpx;
+						width: 50rpx;
+						height: 50rpx;
+						text-align: center;
+					}
+				}
+				.totalBar{
+					background-color: #fff;
+					padding: 10rpx 20rpx;
+					border-radius: 60rpx;
+					margin: 0 30rpx;
+					color: #e7463c;
+				}
+			}
+		}
+	}
+</style>

+ 5 - 7
pages/personData/personData.vue

@@ -62,27 +62,25 @@
     } from 'vuex'
     export default {
         components: {
-			uniPopup,uniPopupDialog
+			uniPopup,
+			uniPopupDialog
         },
         data() {
             return {
 				title:'',
-				avatarUrl:""
+				avatarUrl:"",
+				userInfo: null
             }
         },
 		computed: {
 			...mapState(['hasLogin']),
-			userInfo(){
-				return this.$store.state.vuex_userInfo
-			},
 			shelfInfo(){
 				return this.$store.state.vuex_storeShelf
 			},
 		},
 		onShow() {
-			//检测是否登录
-			this.$store.dispatch('checkLogin');
 			this.avatarUrl = this.$store.state.vuex_userPhoto || uni.getStorageSync('userPhoto');
+			this.userInfo = this.$store.state.vuex_userInfo
 		},
         methods: {
 		  onChooseAvatar(e) {

+ 1 - 1
pages/vinInput/confirmVin.vue

@@ -166,7 +166,7 @@
 							}
 							// 打开选择配件页面
 							uni.redirectTo({
-								url: "/pages/digitalShelf/choosePart?vinNumber="+vinNo+"&carList="+encodeURIComponent(JSON.stringify(res.data))
+								url: "/pagesA/digitalShelf/choosePart?vinNumber="+vinNo+"&carList="+encodeURIComponent(JSON.stringify(res.data))+'&type=news'
 							})
 						} else {
 							uni.showModal({

+ 1 - 1
pages/vinRecord/vinRecord.vue

@@ -102,7 +102,7 @@
 			toChoosePart(item){
 				item.text = item.modelInfo
 				uni.navigateTo({
-					url: "/pages/digitalShelf/choosePart?vinNumber="+item.vinCode+"&carList="+encodeURIComponent(JSON.stringify(item))
+					url: "/pagesA/digitalShelf/choosePart?vinNumber="+item.vinCode+"&carList="+encodeURIComponent(JSON.stringify(item))
 				})
 			}
 		}

+ 19 - 5
pages/digitalShelf/choosePart.vue → pagesA/digitalShelf/choosePart.vue

@@ -230,6 +230,7 @@
 
 <script>
 	import { getShelfProductList, getShelfProductType, queryPartCodeByVin, getShelfQueryList, shelfOrderFlowCreate } from '@/api/shelf'
+	import { scanVinLogCopy } from '@/api/car'
 	export default {
 		data() {
 			return {
@@ -253,7 +254,7 @@
 				vinPartList: [],
 				isIphoneXup: false,
 				saveLoading: false,
-				showPopup: false
+				showPopup: false,
 			}
 		},
 		computed:{
@@ -290,6 +291,10 @@
 			},
 			isAdmin(){
 				return this.userInfo.superAdmin == 1
+			},
+			hasRedPacket(){
+				const rule = this.$store.state.vuex_rewardRule
+				return rule&&rule.ruleStatus == 'release'
 			}
 		},
 		onLoad(opts) {
@@ -298,7 +303,10 @@
 			this.carInfo = opts.carList?JSON.parse(decodeURIComponent(opts.carList)):null
 			// 获取vin 对应code
 			this.getCarCodeByVin()
-			console.log(this.$store.state.vuex_showPrice)
+			// 记录
+			if(opts.type == 'log'){
+				this.scanVinLogCopy()
+			}
 			// 游客
 			if(this.userInfo.sysUserFlag == '0'){
 				// 未认证
@@ -311,6 +319,11 @@
 			this.$store.state.vuex_shelfChoosePart = []
 		},
 		methods: {
+			scanVinLogCopy(){
+				scanVinLogCopy({id:this.carInfo.id}).then(res => {
+					console.log(res)
+				})
+			},
 			toAuthStore(){
 				this.showPopup = false
 				uni.redirectTo({
@@ -591,6 +604,7 @@
 						vin: this.vinNumber,
 						vehicleModel: this.modelLabel || '',
 						vehicleLogo: this.carInfo.icon||'',
+						billSource: 'vin'
 					}
 					console.log(params,'立即提交')
 					this.saveLoading = true
@@ -599,18 +613,18 @@
 						if(res.status == 200){
 							// 提交成功
 							uni.redirectTo({
-								url:"/pages/digitalShelf/choosePartResult?data="+encodeURIComponent(JSON.stringify(res.data))+"&state=1"
+								url:"/pagesA/digitalShelf/choosePartResult?data="+encodeURIComponent(JSON.stringify(res.data))+"&state=1"
 							})
 						}else{
 							// 或失败
 							uni.redirectTo({
-								url:"/pages/digitalShelf/choosePartResult?data="+encodeURIComponent(JSON.stringify({shelfOrder:{remindMessage:res.message}}))+"&state=0"
+								url:"/pagesA/digitalShelf/choosePartResult?data="+encodeURIComponent(JSON.stringify({shelfOrder:{remindMessage:res.message}}))+"&state=0"
 							})
 						}
 						this.saveLoading = false
 					})
 				}
-			}
+			},
 		}
 	}
 </script>

+ 50 - 14
pages/digitalShelf/choosePartResult.vue → pagesA/digitalShelf/choosePartResult.vue

@@ -1,6 +1,6 @@
 <template>
 	<view class="choosePartResult flex flex_column">
-		<view class="contHead" v-if="state" :style="{background:state==1?'#1283d4':'#ff5500',color:'#fff'}">
+		<view class="contHead" v-if="state" :style="{background:state==1?'#066cff':'#ff5500',color:'#fff'}">
 			<view class="statusH">
 				<view class="flex flex_column align_center">
 					<view class="status-row">
@@ -9,6 +9,9 @@
 						<text>{{statusText}}</text>
 					</view>
 					<view class="messageText" v-html="info&&info.shelfOrder&&info.shelfOrder.remindMessage||''"></view>
+					<view class="messageText" v-if="redPacketData&&redPacketData.totalRewardAmount&&!showMask">
+						您已获得<text>{{redPacketData.totalRewardAmount}}</text>元红包奖励,可在“更多-红包奖励”中查看
+					</view>
 					<!-- <view class="button-group"> -->
 						<!-- <button :hover-stop-propagation="true" @click="toScan" v-if="state == 1&&partList.length" class="back" size="mini">扫码拿货</button> -->
 						<!-- <button :hover-stop-propagation="true" :loading="loading" @click="onceQh" v-if="state == 1&&partList.length" class="action" size="mini">一键拿货</button> -->
@@ -117,13 +120,24 @@
 				</view>
 			</view>
 		</view>
+		<!-- 红包 -->
+		<u-mask :show="showMask">
+			<view class="imageWarp flex flex_column justify_center align_center" style="width:100%;height:100vh;">
+				<view style="position: relative;">
+					<u-image src="/pagesA/static/hb.png" width="700" height="657" @click="showMask=false"></u-image>
+					<view style="font-size: 60rpx;color:#fff;position: absolute;top:50%;text-align: center;width: 100%;">
+						{{redPacketData&&redPacketData.totalRewardAmount||'0.00'}} <text style="font-size: 26rpx;margin-left: 10rpx;">元</text>
+					</view>
+				</view>
+			</view>
+		</u-mask>
 	</view>
 </template>
 
 <script>
 	import uniIcons from "@/components/uni-icons/uni-icons.vue"
 	import moment from 'moment'
-	import { findBySnShelfOrder, takeGoods } from '@/api/shelf'
+	import { findBySnShelfOrder, takeGoods, rewardOrderFindBySn } from '@/api/shelf'
 	export default {
 	   name: 'choosePartResult',
 	   components: {
@@ -139,7 +153,9 @@
 			   tempPartList: [], 
 			   state: null,
 			   current: 0,
-			   shelfOrderSn: ''
+			   shelfOrderSn: '',
+			   showMask: false,
+			   redPacketData: null
 		   }
 	   },
 	   onLoad(option) { 
@@ -147,13 +163,16 @@
 		  this.state = option.state
 		  console.log(this.info,'-------------')
 		  if(option.state==1){
-			  this.statusText = '拿货成功'
-			  this.statusIcon = 'checkmark-circle'
+			  this.statusText = '拿货成功';
+			  this.statusIcon = 'checkmark-circle';
 			  // 获取配件列表
-			  this.partList = this.info.shelfOrder ? this.info.shelfOrder.shelfOrderDetailList : []
-			  this.tempPartList = this.info.shelfTempBill ? this.info.shelfTempBill.detailList : [],
-			  this.shelfOrderSn = this.info.shelfOrder ? this.info.shelfOrder.shelfOrderSn : ''
-			  this.current = this.partList.length ? 0 : 1
+			  this.partList = this.info.shelfOrder ? this.info.shelfOrder.shelfOrderDetailList : [];
+			  this.tempPartList = this.info.shelfTempBill ? this.info.shelfTempBill.detailList : [];
+			  this.shelfOrderSn = this.info.shelfOrder ? this.info.shelfOrder.shelfOrderSn : '';
+			  this.current = this.partList.length ? 0 : 1;
+			  
+			  // 是否有红包活动奖励
+			  this.getOrderRedReward()
 		  }else{
 			  this.statusText = '拿货失败'
 			  this.statusIcon = 'close-circle'
@@ -162,7 +181,7 @@
 		  // 更改标题栏背景色
 		  uni.setNavigationBarColor({
 		  	frontColor: '#ffffff',
-		  	backgroundColor: option.state==1 ? '#1283d4':'#ff5500',
+		  	backgroundColor: option.state==1 ? '#066cff':'#ff5500',
 		  })
 	   },
 	   computed: {
@@ -195,7 +214,21 @@
 		 // 扫码拿货
 		 toScan(){
 			 uni.redirectTo({
-			 	url:"/pages/digitalShelf/scanBarcode/scanBarcode?shelfOrderSn="+this.shelfOrderSn
+			 	url:"/pagesA/digitalShelf/scanBarcode/scanBarcode?shelfOrderSn="+this.shelfOrderSn
+			 })
+		 },
+		 // 盘点是否有红包奖励
+		 getOrderRedReward(){
+			 uni.showLoading({
+			 	title: "正在加载...",
+				mask: true
+			 })
+			 rewardOrderFindBySn({orderSn:this.shelfOrderSn}).then(res => {
+				 if(res.status == 200 && res.data){
+				 	this.showMask = true
+					this.redPacketData = res.data
+				 }
+				 uni.hideLoading()
 			 })
 		 },
 		 // 一键拿货
@@ -225,7 +258,7 @@
 		 // 去结算
 		 toSettle(){
 			 uni.redirectTo({
-			 	url:"/pages/digitalShelf/settlementManage/settlementManage"
+			 	url:"/pagesA/digitalShelf/settlementManage/settlementManage"
 			 })
 		 },
 		 message(title){
@@ -258,6 +291,7 @@
 				}
 				.status-row{
 					font-size: 42upx;
+					margin-top: 20rpx;
 					text{
 						margin-left: 10rpx;
 					}
@@ -265,10 +299,12 @@
 				.messageText{
 					font-size: 30upx;
 					text-align: center;
+					color: #ebef09;
 					text{
-						color: #ffaa00;
+						color: #ff9900;
+						font-size: 38upx;
 					}
-					padding: 20rpx 0 10rpx;
+					padding: 10rpx 0 10rpx;
 				}
 				.button-group{
 					padding: 20rpx 0;

+ 3 - 3
pages/digitalShelf/orderDetail.vue → pagesA/digitalShelf/orderDetail.vue

@@ -1,6 +1,6 @@
 <template>
 	<view class="orderDetail-digitalShel flex flex_column">
-		<view class="contHead" :style="{background:state== 'FINISH'?'#1283d4':'#ff5500',color:'#fff'}">
+		<view class="contHead" :style="{background:state!= 'CLOSE' ? '#066cff':'#ff5500',color:'#fff'}">
 			<view class="statusH">
 				<view class="flex flex_column align_center">
 					<view class="status-row">
@@ -132,7 +132,7 @@
 		  // 更改标题栏背景色
 		  uni.setNavigationBarColor({
 		  	frontColor: '#ffffff',
-		  	backgroundColor: option.state== 'FINISH' ? '#1283d4':'#ff5500',
+		  	backgroundColor: option.state!= 'CLOSE' ? '#066cff':'#ff5500',
 		  })
 	   },
 	   onShow() {
@@ -187,7 +187,7 @@
 		 // 打开扫描取货
 		 sanCodeRow () {
 			 uni.navigateTo({
-				url:"/pages/digitalShelf/scanBarcode/scanBarcode?shelfOrderSn="+this.shelfOrderSn
+				url:"/pagesA/digitalShelf/scanBarcode/scanBarcode?shelfOrderSn="+this.shelfOrderSn
 			 })
 		  },
 		  // 获取详情

+ 5 - 5
pages/digitalShelf/orderList.vue → pagesA/digitalShelf/orderList.vue

@@ -20,7 +20,7 @@
 								</view>
 								 <view class="check-row flex align-center">
 									 <view class="carImage">
-										 <u-image v-if="!item.billSource" :src="item.vehicleLogo" border-radius="30" width="100" height="100" bg-color="#EBEBEB" ></u-image> 
+										 <u-image v-if="!item.billSource||item.billSource=='vin'" :src="item.vehicleLogo" border-radius="30" width="100" height="100" bg-color="#EBEBEB" ></u-image> 
 										 <u-image v-if="item.billSource=='qr_code'" src="/static/qrcode.png" border-radius="30" width="100" height="100" bg-color="#EBEBEB" ></u-image> 
 										 <u-image v-if="item.billSource=='bar_code'" src="/static/barcode.png" border-radius="30" width="100" height="100" bg-color="#EBEBEB" ></u-image>
 										 <u-image v-if="item.billSource=='product_code'" src="/static/tag.png" border-radius="30" width="100" height="100" bg-color="#333" ></u-image> 
@@ -81,6 +81,7 @@
 				theme:'',
 				status: 'loading',
 				noDataText: '暂无数据',
+				stateList:['WAIT','FINISH','CLOSE'],
 				tabList: [
 					  {
 						  dispName: '待取货',
@@ -184,11 +185,10 @@
 			    this.pageNo = pageNo
 			  }
 			  // 状态条件
-			  const state = ['WAIT','FINISH','CLOSE']
 			  let params = {
 			    pageNo: this.pageNo,
 			    pageSize: this.pageSize,
-				billState: state[this.swiperCurrent]
+				billState: this.stateList[this.swiperCurrent]
 			  }
 			  this.status = "loading"
 			  getShelfOrderList(params).then(res => {
@@ -213,7 +213,7 @@
 			// 详细页
 			viewRow(item){
 				uni.navigateTo({
-					url: "/pages/digitalShelf/orderDetail?shelfOrderSn="+item.shelfOrderSn+"&state="+['FINISH','CLOSE'][this.swiperCurrent]
+					url: "/pagesA/digitalShelf/orderDetail?shelfOrderSn="+item.shelfOrderSn+"&state="+this.stateList[this.swiperCurrent]
 				})
 			},
 			// 删除
@@ -254,7 +254,7 @@
 			// 打开扫描取货
 		   sanCodeRow (item) {
 			     uni.navigateTo({
-			     	url:"/pages/digitalShelf/scanBarcode/scanBarcode?shelfOrderSn="+item.shelfOrderSn
+			     	url:"/pagesA/digitalShelf/scanBarcode/scanBarcode?shelfOrderSn="+item.shelfOrderSn
 			     })
 		    },
 			// 一键取货

+ 0 - 0
pages/digitalShelf/scanBarcode/scanBarcode.vue → pagesA/digitalShelf/scanBarcode/scanBarcode.vue


+ 0 - 0
pages/digitalShelf/settlementManage/settlementAyDetail.vue → pagesA/digitalShelf/settlementManage/settlementAyDetail.vue


+ 3 - 3
pages/digitalShelf/settlementManage/settlementManage.vue → pagesA/digitalShelf/settlementManage/settlementManage.vue

@@ -74,7 +74,7 @@
 			// 结算记录
 			if(btns.index == 0){
 				uni.navigateTo({
-					url: "/pages/digitalShelf/settlementRecord/settlementRecord"
+					url: "/pagesA/digitalShelf/settlementRecord/settlementRecord"
 				})
 			}
 		},
@@ -110,11 +110,11 @@
 			viewDetail(month){
 				if(this.settlementType == 'CREDIT'){
 					uni.navigateTo({
-						url: "/pages/digitalShelf/settlementManage/settlementSxDetail?data="+encodeURIComponent(JSON.stringify(this.info))
+						url: "/pagesA/digitalShelf/settlementManage/settlementSxDetail?data="+encodeURIComponent(JSON.stringify(this.info))
 					})
 				}else{
 					uni.navigateTo({
-						url: "/pages/digitalShelf/settlementManage/settlementAyDetail?month="+month+"&data="+encodeURIComponent(JSON.stringify(this.info))
+						url: "/pagesA/digitalShelf/settlementManage/settlementAyDetail?month="+month+"&data="+encodeURIComponent(JSON.stringify(this.info))
 					})
 				}
 			}

+ 0 - 0
pages/digitalShelf/settlementManage/settlementSxDetail.vue → pagesA/digitalShelf/settlementManage/settlementSxDetail.vue


+ 0 - 0
pages/digitalShelf/settlementRecord/orderPartDetail.vue → pagesA/digitalShelf/settlementRecord/orderPartDetail.vue


+ 1 - 1
pages/digitalShelf/settlementRecord/settlementDetail.vue → pagesA/digitalShelf/settlementRecord/settlementDetail.vue

@@ -146,7 +146,7 @@
 				item.payDate = this.info.payDate
 				this.$u.vuex('vuex_settleOrderDetail', item)
 				uni.navigateTo({
-					url: "/pages/digitalShelf/settlementRecord/orderPartDetail"
+					url: "/pagesA/digitalShelf/settlementRecord/orderPartDetail"
 				})
 			}
 		}

+ 1 - 1
pages/digitalShelf/settlementRecord/settlementRecord.vue → pagesA/digitalShelf/settlementRecord/settlementRecord.vue

@@ -79,7 +79,7 @@
 				item.payTypeVal = this.filterpayType(item.payWay)
 				this.$u.vuex('vuex_settleRecordDetail', item)
 				uni.navigateTo({
-					url: "/pages/digitalShelf/settlementRecord/settlementDetail"
+					url: "/pagesA/digitalShelf/settlementRecord/settlementDetail"
 				})
 			}
 		},

+ 1 - 1
pages/digitalShelf/stockPut.vue → pagesA/digitalShelf/stockPut.vue

@@ -199,7 +199,7 @@
 			// 详细页
 			viewRow(item){
 				uni.navigateTo({
-					url: "/pages/digitalShelf/stockPutDetail?sn="+item.replenishBillSn
+					url: "/pagesA/digitalShelf/stockPutDetail?sn="+item.replenishBillSn
 				})
 			},
 			// 立即入库

+ 0 - 0
pages/digitalShelf/stockPutDetail.vue → pagesA/digitalShelf/stockPutDetail.vue


+ 1 - 1
pages/digitalShelf/tempOrderList/orderDetail.vue → pagesA/digitalShelf/tempOrderList/orderDetail.vue

@@ -139,7 +139,7 @@
 		 // 打开扫描拿货
 		 sanCodeRow () {
 			 uni.navigateTo({
-				url:"/pages/digitalShelf/scanBarcode/scanBarcode?shelfOrderSn="+this.shelfOrderSn
+				url:"/pagesA/digitalShelf/scanBarcode/scanBarcode?shelfOrderSn="+this.shelfOrderSn
 			 })
 		  },
 		  // 获取详情

+ 1 - 1
pages/digitalShelf/tempOrderList/tempOrderList.vue → pagesA/digitalShelf/tempOrderList/tempOrderList.vue

@@ -205,7 +205,7 @@
 			// 详细页
 			viewRow(item){
 				uni.navigateTo({
-					url: "/pages/digitalShelf/tempOrderList/orderDetail?orderSn="+item.tempSn+"&state="+(item.billState == 'FINISH'?1:0)
+					url: "/pagesA/digitalShelf/tempOrderList/orderDetail?orderSn="+item.tempSn+"&state="+(item.billState == 'FINISH'?1:0)
 				})
 			},
 			// 获取待拿货数量

+ 4 - 22
pages/queryByCode/confirmQh.vue → pagesA/queryByCode/confirmQh.vue

@@ -40,7 +40,7 @@
 			return {
 				 loading:false,
 				 nowData: null,
-				 qty: 1
+				 qty: 1,
 			}
 		},
 		onLoad(options) {
@@ -73,8 +73,9 @@
 			},
 			toDetail(data){
 				uni.$emit("updateQueryByCodeList")
+				// 提交成功
 				uni.redirectTo({
-					url: "/pages/digitalShelf/orderDetail?shelfOrderSn="+data.shelfOrderSn
+					url:"/pagesA/digitalShelf/choosePartResult?data="+encodeURIComponent(JSON.stringify({shelfOrder:data}))+"&state=1"
 				})
 			},
 			// 确认拿货
@@ -89,26 +90,7 @@
 						}]
 				 }).then(res => {
 					 if(res.status == 200){
-						 if(res.data&&res.data.remindMessage){
-							 uni.showModal({
-							 	title: '提示',
-							 	content: res.data.remindMessage,
-							 	confirmText: '知道了',
-							 	showCancel: false,
-								success(ret) {
-									if(ret.confirm){
-										_this.toDetail(res.data)
-									}
-								}
-							 })
-						 }else{
-							 uni.showToast({
-							 	icon:'none',
-								title: res.message,
-								duration: 4000
-							 })
-							 _this.toDetail(res.data)
-						 }
+						 this.toDetail(res.data)
 					 }else{
 						 uni.showModal({
 						 	title: res.errCode == 'VALIDATE_STOCK_LACK' ? '以下产品库存不足' : '提示',

+ 1 - 1
pages/queryByCode/queryByCode.vue → pagesA/queryByCode/queryByCode.vue

@@ -102,7 +102,7 @@
 					}
 					this.$store.state.vuex_tempData = Object.assign(params, item)
 					uni.navigateTo({
-						url: '/pages/queryByCode/confirmQh'
+						url: '/pagesA/queryByCode/confirmQh'
 					})
 				}else{
 					uni.showToast({

BIN
pagesA/static/hb.png


BIN
static/banner2.png


BIN
static/hbheader.jpg


+ 3 - 0
store/index.js

@@ -44,6 +44,7 @@ const store = new Vuex.Store({
 		vuex_carType: {}, // 选择的车辆品牌
 		deviceNo: "",
 		vuex_storeShelf: null, // 数字货架是否启用
+		vuex_rewardRule: null, // 红包活动信息
 		vuex_settleRecordDetail: null, // 结算记录详情
 		vuex_settleOrderDetail: null, // 结算记录订单详情
 		vuex_shelfChoosePart: [], // 数字货架临配选择配件
@@ -118,6 +119,8 @@ const store = new Vuex.Store({
 			state.vuex_userInfo = null
 			state.vuex_userPhoto = null
 			state.vuex_permCodes = null
+			state.vuex_storeAuthInfo = null
+			state.vuex_rewardRule = null
         },
 		openId(state,id) {
 			state.vuex_openid = id