From b70e0c99b88e2283f119080a12d818a6f8f874c6 Mon Sep 17 00:00:00 2001 From: yyb <995253665@qq.com> Date: 星期四, 05 六月 2025 17:27:17 +0800 Subject: [PATCH] 车间订单下发/车间取消下发/库存件盘点导体备货盘点/领料/取消领料页面开发及配置 --- pages/storeManagement/CancelMaterialRequisition/index.vue | 349 +++++++++++++++ pages/wareHouse/InventoryCountStockItems/index.vue | 577 +++++++++++++++++++++++++ pages.json | 52 ++ pages/storeManagement/MaterialRequisition/index.vue | 349 +++++++++++++++ pages/sys/home/index.vue | 8 pages/wareHouse/InventoryCheckConductiveMterials/index.vue | 1 pages/product/receive/index.vue | 7 7 files changed, 1,336 insertions(+), 7 deletions(-) diff --git a/pages.json b/pages.json index 96753c5..c722513 100644 --- a/pages.json +++ b/pages.json @@ -183,6 +183,7 @@ "navigationBarTitleText": "浠诲姟澶勭悊" } }, + // 绉诲簱 { "path": "pages/wareHouse/moveWareHouse/index", "style": { @@ -502,6 +503,47 @@ "navigationStyle": "custom" } }, + // 搴撳瓨浠剁洏鐐� + { + "path": "pages/wareHouse/InventoryCountStockItems/index", + "style": { + "navigationStyle": "custom", + "navigationBarTitleText": "", + // "navigationBarBackgroundColor": "#CEE3FE", + "enablePullDownRefresh": false + } + }, + // 棰嗘枡 + { + "path": "pages/storeManagement/MaterialRequisition/index", + "style": { + "navigationStyle": "custom", + "navigationBarTitleText": "", + // "navigationBarBackgroundColor": "#CEE3FE", + "enablePullDownRefresh": false + } + }, + // 鍙栨秷棰嗘枡 + { + "path": "pages/storeManagement/CancelMaterialRequisition/index", + "style": { + "navigationStyle": "custom", + "navigationBarTitleText": "", + // "navigationBarBackgroundColor": "#CEE3FE", + "enablePullDownRefresh": false + } + }, + // 瀵间綋澶囪揣鐩樼偣 + { + "path": "pages/wareHouse/InventoryCheckConductiveMterials/index", + "style": { + "navigationStyle": "custom", + "navigationBarTitleText": "", + // "navigationBarBackgroundColor": "#CEE3FE", + "enablePullDownRefresh": false + } + }, + // 鐩樼偣鎶ュ憡鐩樼偣 { "path": "pages/wareHouse/inventory/index", "style": { @@ -760,6 +802,16 @@ "enablePullDownRefresh": false } }, + // 鎺ユ敹(閾滄潌) + { + "path": "pages/product/receive/index", + "style": { + "navigationStyle": "custom", + "navigationBarTitleText": "", + // "navigationBarBackgroundColor": "#3281FF" + "enablePullDownRefresh": false + } + }, // 杞﹂棿璁㈠崟涓嬪彂 { "path": "pages/product/WorkshopOrderIssued/index", diff --git a/pages/product/receive/index.vue b/pages/product/receive/index.vue index fdfc4a4..1579ebc 100644 --- a/pages/product/receive/index.vue +++ b/pages/product/receive/index.vue @@ -2,7 +2,7 @@ <!-- 鎺ユ敹锛堥摐鏉嗭級 --> <view class="page"> <view class="packing-registration-bg" /> - <u-navbar title="杞﹂棿璁㈠崟鎺ユ敹锛堬級" :background="background" :border-bottom="false" :title-bold="true" title-color="#000" + <u-navbar title="杞﹂棿璁㈠崟鎺ユ敹(閾滄潌)" :background="background" :border-bottom="false" :title-bold="true" title-color="#000" back-icon-color="#000" /> <u-form :model="form" ref="uForm" :label-width="280" :rules="rules" :error-type="['toast']" class="uForm"> <u-form-item label="璁㈠崟鍙�" :border-bottom="false" prop="value1"> @@ -25,7 +25,7 @@ </u-form-item> <u-form-item label="鐗╂枡鍜屽伐搴�" prop="value7"> <u-checkbox-group> - <u-checkbox :name="item.name" v-for="(item, index) in checkboxList" :key="index" v-model="item.value" + <u-checkbox :name="item.name" :checked="item.checked" v-for="(item, index) in checkboxList" :disabled="item.disabled" :key="index" v-model="item.value" @change="changeCheckbox"> {{ item.name }} </u-checkbox> @@ -68,7 +68,8 @@ }, { name: '宸ュ簭鐨勮嚜鍔ㄦ姤鍛�', - value: false + value: true, + disabled: true, }, { name: '绠�鍖栫墿鏂欐鏌�', diff --git a/pages/storeManagement/CancelMaterialRequisition/index.vue b/pages/storeManagement/CancelMaterialRequisition/index.vue new file mode 100644 index 0000000..9bcc374 --- /dev/null +++ b/pages/storeManagement/CancelMaterialRequisition/index.vue @@ -0,0 +1,349 @@ +// 鍙栨秷棰嗘枡 +<template> + <view class="page"> + <view class="packing-registration-bg" /> + <u-navbar title="鐢佃В閾滈鏂�" :background="background" :border-bottom="false" :title-bold="true" title-color="#000" + back-icon-color="#000" /> + <view class="textST"> + <text >鍙栨秷棰嗘枡璁板綍:</text> + </view> + <view class="wrap"> + <scroll-view class="packing-registration-scroll-list" scroll-y="true"> + <u-cell-group class="packing-registration-scroll-list-group" :border="false"> + <!-- <div class="tip" style="text-align: center;" v-if="hasScanSnList.length==0">-璇锋壂鐮�-</div> --> + <view class="content" v-for="(item, index) in hasScanSnList" :key="index" :index="index"> + <view class="content-header"> + <view class="content-header-title">{{ index + 1 }}</view> + </view> + <view class="content-body"> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">闆朵欢鍙凤細</view> + </view> + <view class="_content"> + {{ item.value0 }} + </view> + </view> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">鎵规鍙凤細</view> + </view> + <view class="_content"> + {{ item.value1 }} + </view> + </view> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">WDR锛�</view> + </view> + <view class="_content"> + {{ item.value4 }} + </view> + </view> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">搴撲綅鍙凤細</view> + </view> + <view class="_content"> + {{ item.value0 }} + </view> + </view> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">鐩樼偣鏁伴噺锛�</view> + </view> + <view class="_content"> + {{ item.value1 }} + </view> + </view> + </view> + </view> + </u-cell-group> + </scroll-view> + <scan></scan> + </view> + </view> +</template> +<script> +import scan from "@/components/scan/scan.vue"; +import content_bg from '@/static/custom/packing/backBg.png' +export default { + components: { + scan, + }, + data() { + return { + background: { + backgroundImage: `url(${content_bg})`, + backgroundAttachment: 'fixed', + backgroundSize: '100% auto', + backgroundRepeat: 'no-repeat', + }, + labelStyle: { + fontSize: '32rpx', + whiteSpace: 'nowrap' + }, + hasScanSnList: [{ + value0: '11111111111111111111111', + value1: '111', + value2: '111', + value3: '111', + value4: '111', + + }, + { + value0: '111', + value1: '111', + value2: '111', + value3: '111', + value4: '111', + + }, + { + value0: '111', + value1: '111', + value2: '111', + value3: '111', + value4: '111', + + }, + { + value0: '111', + value1: '111', + value2: '111', + value3: '111', + value4: '111', + + }, + ], + delContent: null, + staffList: [], + }; + }, + onLoad(option) { }, + onShow() { + + let that = this + + uni.$off('scan') // 姣忔杩涙潵鍏� 绉婚櫎鍏ㄥ眬鑷畾涔変簨浠剁洃鍚櫒 + uni.$on('scan', function (data) { + console.log('onscan'); + //鎵爜鎴愬姛鍚庣殑鍥炶皟锛屼綘鍙互鍐欒嚜宸辩殑閫昏緫浠g爜鍦ㄨ繖閲� + console.log('鎵爜缁撴灉锛�', data.code); + that.scanHandle(data.code) + that.$forceUpdate(); + + }) + }, + onNavigationBarButtonTap() { + this.goScan() + }, + onReady() { }, + methods: { + setNo(val) { + console.log('11111', val) + this.registerInfo.value1 = val.value1 + this.registerInfo.value2 = val.value2 + + }, + //鐩樼偣鎶ュ憡鍙� + seachPersonnelNo() { + console.log('11111') + uni.navigateTo({ + url: '/pages/wareHouse/inventory/orderList' + }) + }, + goScan() { + uni.scanCode({ + scanType: ['qrCode'], + success: res => { + try { + console.log('鎵爜缁撴灉锛�', res); + this.scanHandle(res.result) + } catch (e) { } + } + }); + }, + scanHandle(scanresult) { + scanresult = scanresult.replace(/[\r\n]/g, "") + if (scanresult.indexOf('{') > -1) { + //浜岀淮鐮� + const result = JSON.parse(scanresult) + //澧炲姞SN鏍¢獙 + if (result.sn_no && result.sn_no != null && result.sn_no != '') { + if (this.hasScanSnList.length > 0) { + let hasScanSnIndex = this.hasScanSnList.indexOf(result.sn_no) + if (hasScanSnIndex < 0) { + this.hasScanSnList.push(result.sn_no) + } else { + this.$u.toast('璇峰嬁閲嶅鎵弿') + } + } else { + this.hasScanSnList.push(result.sn_no) + } + } + + } else { + //澧炲姞SN鏍¢獙 + if (this.hasScanSnList.length > 0) { + let hasScanSnIndex = this.hasScanSnList.indexOf(scanresult) + if (hasScanSnIndex < 0) { + this.hasScanSnList.push(scanresult) + } else { + this.$u.toast('璇峰嬁閲嶅鎵弿') + } + } else { + this.hasScanSnList.push(scanresult) + } + } + }, + goSubmit() { + // if (this.registerInfo.shiftId == null || this.registerInfo.shiftId == '') { + // this.$u.toast('璇烽�夋嫨鐝') + // return + // } + // if (this.registerInfo.value3 == null || this.registerInfo.value3 == '') { + // this.$u.toast('璇烽�夋嫨鏃ユ湡') + // return + // } + // if (this.registerInfo.locNo == null || this.registerInfo.locNo == '') { + // this.$u.toast('璇烽�夋嫨鍖呰搴撲綅') + // return + // } + // if (this.hasScanSnList.length == 0) { + // this.$u.toast('鏃犲緟鎻愪氦鐨凷N鍙锋槑缁�') + // return + // } + // let registrList = [] + // this.staffList = [] + // this.staffNameList.forEach((item) => { + // this.staffList.push({ + // staffId: item.id + // }) + // }) + // this.hasScanSnList.forEach((item) => { + // registrList.push({ + // shiftId: this.registerInfo.shiftId, + // value3: this.registerInfo.value3, + // locNo: this.registerInfo.locNo, + // partBatchNo: item, + // staffList: this.staffList + // }) + // }) + // this.$u.api.pigxPacking.addPackageRegister(registrList).then(res => { + // let resData = res.data + // this.hasScanSnList = [] + // this.$u.toast('鎻愪氦鎴愬姛') + // }).catch((e) => { + // }) + + }, + } +}; +</script> +<style lang="scss" scoped> +.textST { + font-size: 14px; + margin:0 0 13px 13px; +} +.packing-registration-bg { + background-color: #F6F9FF; + background-image: url('~@/static/custom/packing/backBg.png'); + padding: 0 20rpx; + background-attachment: fixed; + background-size: 100% auto; + background-repeat: no-repeat; + position: fixed; + top: 0; + bottom: 0; + width: 100%; + z-index: -1; +} + +.wrap .packing-registration-scroll-list { + height: calc(100vh - var(--window-top) - var(--window-bottom) - 250rpx); + width: 100%; +} + +.packing-registration-scroll-list-group { + ::v-deep .u-cell-item-box { + background-color: rgba(250, 252, 255, 0.36) !important; + padding: 0rpx 30rpx; + } + + .content { + font-size: 12px; + background-color: #ffffff; + box-sizing: border-box; + border-radius: 10rpx; + margin: 0rpx 0rpx 16rpx; + padding: 20rpx 8rpx; + box-shadow: none; + display: flex; + align-items: center; + + .content-header { + width: 40rpx; + height: 90rpx; + display: flex; + align-items: center; + + .content-header-icon { + background-image: url("~@/static/custom/moveWareHouse/header_icon.png"); + background-size: 100% auto; + background-repeat: no-repeat; + height: 28rpx; + width: 28rpx; + } + + .content-header-title { + margin-left: 11rpx; + font-size: 26rpx; + font-weight: bold; + color: #626369; + } + } + + .content-body { + flex: 1; + background-color: #ffffff; + border-radius: 10rpx; + padding: 0rpx 23rpx; + + .row-list { + height: 60rpx; + display: flex; + flex-direction: row; + padding: 0px; + align-items: center; + } + + .row-list ._label { + display: flex; + flex: 0.8; + color: #909399; + align-items: center; + + ._label-name { + margin-left: 11rpx; + font-size: 26rpx; + font-weight: 500; + color: #666666; + } + } + + .row-list ._content { + flex: 1.5; + text-align: right; + color: #909399; + font-size: 24rpx; + } + + .row-list .s1 { + color: #d35651; + } + } + } +} + +</style> \ No newline at end of file diff --git a/pages/storeManagement/MaterialRequisition/index.vue b/pages/storeManagement/MaterialRequisition/index.vue new file mode 100644 index 0000000..b672ae1 --- /dev/null +++ b/pages/storeManagement/MaterialRequisition/index.vue @@ -0,0 +1,349 @@ +// 棰嗘枡 +<template> + <view class="page"> + <view class="packing-registration-bg" /> + <u-navbar title="鐢佃В閾滈鏂�" :background="background" :border-bottom="false" :title-bold="true" title-color="#000" + back-icon-color="#000" /> + <view class="textST"> + <text >棰嗘枡璁板綍:</text> + </view> + <view class="wrap"> + <scroll-view class="packing-registration-scroll-list" scroll-y="true"> + <u-cell-group class="packing-registration-scroll-list-group" :border="false"> + <!-- <div class="tip" style="text-align: center;" v-if="hasScanSnList.length==0">-璇锋壂鐮�-</div> --> + <view class="content" v-for="(item, index) in hasScanSnList" :key="index" :index="index"> + <view class="content-header"> + <view class="content-header-title">{{ index + 1 }}</view> + </view> + <view class="content-body"> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">闆朵欢鍙凤細</view> + </view> + <view class="_content"> + {{ item.value0 }} + </view> + </view> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">鎵规鍙凤細</view> + </view> + <view class="_content"> + {{ item.value1 }} + </view> + </view> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">WDR锛�</view> + </view> + <view class="_content"> + {{ item.value4 }} + </view> + </view> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">搴撲綅鍙凤細</view> + </view> + <view class="_content"> + {{ item.value0 }} + </view> + </view> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">鐩樼偣鏁伴噺锛�</view> + </view> + <view class="_content"> + {{ item.value1 }} + </view> + </view> + </view> + </view> + </u-cell-group> + </scroll-view> + <scan></scan> + </view> + </view> +</template> +<script> +import scan from "@/components/scan/scan.vue"; +import content_bg from '@/static/custom/packing/backBg.png' +export default { + components: { + scan, + }, + data() { + return { + background: { + backgroundImage: `url(${content_bg})`, + backgroundAttachment: 'fixed', + backgroundSize: '100% auto', + backgroundRepeat: 'no-repeat', + }, + labelStyle: { + fontSize: '32rpx', + whiteSpace: 'nowrap' + }, + hasScanSnList: [{ + value0: '11111111111111111111111', + value1: '111', + value2: '111', + value3: '111', + value4: '111', + + }, + { + value0: '111', + value1: '111', + value2: '111', + value3: '111', + value4: '111', + + }, + { + value0: '111', + value1: '111', + value2: '111', + value3: '111', + value4: '111', + + }, + { + value0: '111', + value1: '111', + value2: '111', + value3: '111', + value4: '111', + + }, + ], + delContent: null, + staffList: [], + }; + }, + onLoad(option) { }, + onShow() { + + let that = this + + uni.$off('scan') // 姣忔杩涙潵鍏� 绉婚櫎鍏ㄥ眬鑷畾涔変簨浠剁洃鍚櫒 + uni.$on('scan', function (data) { + console.log('onscan'); + //鎵爜鎴愬姛鍚庣殑鍥炶皟锛屼綘鍙互鍐欒嚜宸辩殑閫昏緫浠g爜鍦ㄨ繖閲� + console.log('鎵爜缁撴灉锛�', data.code); + that.scanHandle(data.code) + that.$forceUpdate(); + + }) + }, + onNavigationBarButtonTap() { + this.goScan() + }, + onReady() { }, + methods: { + setNo(val) { + console.log('11111', val) + this.registerInfo.value1 = val.value1 + this.registerInfo.value2 = val.value2 + + }, + //鐩樼偣鎶ュ憡鍙� + seachPersonnelNo() { + console.log('11111') + uni.navigateTo({ + url: '/pages/wareHouse/inventory/orderList' + }) + }, + goScan() { + uni.scanCode({ + scanType: ['qrCode'], + success: res => { + try { + console.log('鎵爜缁撴灉锛�', res); + this.scanHandle(res.result) + } catch (e) { } + } + }); + }, + scanHandle(scanresult) { + scanresult = scanresult.replace(/[\r\n]/g, "") + if (scanresult.indexOf('{') > -1) { + //浜岀淮鐮� + const result = JSON.parse(scanresult) + //澧炲姞SN鏍¢獙 + if (result.sn_no && result.sn_no != null && result.sn_no != '') { + if (this.hasScanSnList.length > 0) { + let hasScanSnIndex = this.hasScanSnList.indexOf(result.sn_no) + if (hasScanSnIndex < 0) { + this.hasScanSnList.push(result.sn_no) + } else { + this.$u.toast('璇峰嬁閲嶅鎵弿') + } + } else { + this.hasScanSnList.push(result.sn_no) + } + } + + } else { + //澧炲姞SN鏍¢獙 + if (this.hasScanSnList.length > 0) { + let hasScanSnIndex = this.hasScanSnList.indexOf(scanresult) + if (hasScanSnIndex < 0) { + this.hasScanSnList.push(scanresult) + } else { + this.$u.toast('璇峰嬁閲嶅鎵弿') + } + } else { + this.hasScanSnList.push(scanresult) + } + } + }, + goSubmit() { + // if (this.registerInfo.shiftId == null || this.registerInfo.shiftId == '') { + // this.$u.toast('璇烽�夋嫨鐝') + // return + // } + // if (this.registerInfo.value3 == null || this.registerInfo.value3 == '') { + // this.$u.toast('璇烽�夋嫨鏃ユ湡') + // return + // } + // if (this.registerInfo.locNo == null || this.registerInfo.locNo == '') { + // this.$u.toast('璇烽�夋嫨鍖呰搴撲綅') + // return + // } + // if (this.hasScanSnList.length == 0) { + // this.$u.toast('鏃犲緟鎻愪氦鐨凷N鍙锋槑缁�') + // return + // } + // let registrList = [] + // this.staffList = [] + // this.staffNameList.forEach((item) => { + // this.staffList.push({ + // staffId: item.id + // }) + // }) + // this.hasScanSnList.forEach((item) => { + // registrList.push({ + // shiftId: this.registerInfo.shiftId, + // value3: this.registerInfo.value3, + // locNo: this.registerInfo.locNo, + // partBatchNo: item, + // staffList: this.staffList + // }) + // }) + // this.$u.api.pigxPacking.addPackageRegister(registrList).then(res => { + // let resData = res.data + // this.hasScanSnList = [] + // this.$u.toast('鎻愪氦鎴愬姛') + // }).catch((e) => { + // }) + + }, + } +}; +</script> +<style lang="scss" scoped> +.textST { + font-size: 14px; + margin:0 0 13px 13px; +} +.packing-registration-bg { + background-color: #F6F9FF; + background-image: url('~@/static/custom/packing/backBg.png'); + padding: 0 20rpx; + background-attachment: fixed; + background-size: 100% auto; + background-repeat: no-repeat; + position: fixed; + top: 0; + bottom: 0; + width: 100%; + z-index: -1; +} + +.wrap .packing-registration-scroll-list { + height: calc(100vh - var(--window-top) - var(--window-bottom) - 250rpx); + width: 100%; +} + +.packing-registration-scroll-list-group { + ::v-deep .u-cell-item-box { + background-color: rgba(250, 252, 255, 0.36) !important; + padding: 0rpx 30rpx; + } + + .content { + font-size: 12px; + background-color: #ffffff; + box-sizing: border-box; + border-radius: 10rpx; + margin: 0rpx 0rpx 16rpx; + padding: 20rpx 8rpx; + box-shadow: none; + display: flex; + align-items: center; + + .content-header { + width: 40rpx; + height: 90rpx; + display: flex; + align-items: center; + + .content-header-icon { + background-image: url("~@/static/custom/moveWareHouse/header_icon.png"); + background-size: 100% auto; + background-repeat: no-repeat; + height: 28rpx; + width: 28rpx; + } + + .content-header-title { + margin-left: 11rpx; + font-size: 26rpx; + font-weight: bold; + color: #626369; + } + } + + .content-body { + flex: 1; + background-color: #ffffff; + border-radius: 10rpx; + padding: 0rpx 23rpx; + + .row-list { + height: 60rpx; + display: flex; + flex-direction: row; + padding: 0px; + align-items: center; + } + + .row-list ._label { + display: flex; + flex: 0.8; + color: #909399; + align-items: center; + + ._label-name { + margin-left: 11rpx; + font-size: 26rpx; + font-weight: 500; + color: #666666; + } + } + + .row-list ._content { + flex: 1.5; + text-align: right; + color: #909399; + font-size: 24rpx; + } + + .row-list .s1 { + color: #d35651; + } + } + } +} + +</style> \ No newline at end of file diff --git a/pages/sys/home/index.vue b/pages/sys/home/index.vue index 0f59b0f..5c49760 100644 --- a/pages/sys/home/index.vue +++ b/pages/sys/home/index.vue @@ -74,12 +74,12 @@ }, { name: '搴撳瓨浠剁洏鐐�', - url: '/pages/wareHouse/inventory/index', + url: '/pages/wareHouse/InventoryCountStockItems/index', icon: 'nine' }, { name: '瀵间綋澶囪揣鐩樼偣', - url: '/pages/wareHouse/inventory/index', + url: '/pages/wareHouse/InventoryCheckConductiveMterials/index', icon: 'ten' }, ] @@ -89,12 +89,12 @@ list: [ { name: '棰嗘枡', - url: '/pages/wareHouse/moveWareHouse/index', + url: '/pages/storeManagement/MaterialRequisition/index', icon: 'eleven' }, { name: '鍙栨秷棰嗘枡', - url: '/pages/wareHouse/inventory/index', + url: '/pages/storeManagement/CancelMaterialRequisition/index', icon: 'twelve' }, ] diff --git a/pages/wareHouse/InventoryCheckConductiveMterials/index.vue b/pages/wareHouse/InventoryCheckConductiveMterials/index.vue new file mode 100644 index 0000000..4523fd0 --- /dev/null +++ b/pages/wareHouse/InventoryCheckConductiveMterials/index.vue @@ -0,0 +1 @@ +// 瀵间綋澶囪揣鐩樼偣 \ No newline at end of file diff --git a/pages/wareHouse/InventoryCountStockItems/index.vue b/pages/wareHouse/InventoryCountStockItems/index.vue new file mode 100644 index 0000000..8849e28 --- /dev/null +++ b/pages/wareHouse/InventoryCountStockItems/index.vue @@ -0,0 +1,577 @@ +// 搴撳瓨浠剁洏鐐� +<template> + <view class="page"> + <view class="packing-registration-bg" /> + <u-navbar title="搴撳瓨浠剁洏鐐�" :background="background" :border-bottom="false" :title-bold="true" title-color="#000" + back-icon-color="#000" /> + <view class="packing-registration-param"> + <view class="packing-registration-param-view"> + <view class="packing-registration-param-item param-extra"> + <view class="packing-registration-param-item-left"> + <text class="item-one">闆朵欢鍙�</text> + </view> + <view class="packing-registration-param-item-right"> + <view class="item-one item-two" @click="openPN()"> + <text>{{ registerInfo.value6 == '' ? "鎵爜鎴栫偣鍑昏緭鍏�" : registerInfo.value6 }}</text> + </view> + <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value6 == ''"></u-icon> + </view> + </view> + <view class="packing-registration-param-item param-extra"> + <view class="packing-registration-param-item-left"> + <text class="item-one">鎵规鍙�</text> + </view> + <view class="packing-registration-param-item-right" @click="openBatch()"> + <text class="item-one item-two">{{ registerInfo.value3 == '' ? "鎵爜鎴栫偣鍑昏緭鍏�" : registerInfo.value3 }}</text> + <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value3 == ''"></u-icon> + </view> + </view> + <view class="packing-registration-param-item param-extra"> + <view class="packing-registration-param-item-left"> + <text class="item-one">WDR</text> + </view> + <view class="packing-registration-param-item-right" @click="openWDR()"> + <text class="item-one item-two">{{ registerInfo.value0 == '' ? "鎵爜鎴栫偣鍑昏緭鍏�" : registerInfo.value0 }}</text> + <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value0 == ''"></u-icon> + </view> + </view> + <view class="packing-registration-param-item param-extra"> + <view class="packing-registration-param-item-left"> + <text class="item-one">搴撲綅鍙�</text> + </view> + <view class="packing-registration-param-item-right" @click="openLocation()"> + <view class="item-one item-two"> + <text>{{ registerInfo.value4 == '' ? "鎵爜鎴栫偣鍑昏緭鍏�" : registerInfo.value4 }}</text> + </view> + <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value4 == ''"></u-icon> + </view> + </view> + <view class="packing-registration-param-item param-extra"> + <view class="packing-registration-param-item-left"> + <text class="item-one">鐩樼偣鏁伴噺</text> + </view> + <view class="packing-registration-param-item-right" @click="openPhysicalInventory()"> + <view class="item-one item-two"> + <text>{{ registerInfo.value5 == '' ? "鎵爜鎴栫偣鍑昏緭鍏�" : registerInfo.value5 }}</text> + </view> + <u-icon name="arrow-right" color="#687792" size="28" v-show="registerInfo.value4 == ''"></u-icon> + </view> + </view> + </view> + </view> + <view class="registration-form-footer"> + <u-button class="btn" type="primary" @click="goSubmit">鎻愪氦</u-button> + </view> + <view class="wrap"> + <scroll-view class="packing-registration-scroll-list" scroll-y="true"> + <u-cell-group class="packing-registration-scroll-list-group" :border="false"> + <!-- <div class="tip" style="text-align: center;" v-if="hasScanSnList.length==0">-璇锋壂鐮�-</div> --> + <view class="textST"> + <text >{{`鏈鐩樼偣璁板綍(鍏�${registerInfo.num}鏉�)锛歚}}</text> + </view> + <view class="content" v-for="(item, index) in hasScanSnList" :key="index" :index="index"> + <view class="content-header"> + <view class="content-header-title">{{ index + 1 }}</view> + </view> + <view class="content-body"> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">闆朵欢鍙凤細</view> + </view> + <view class="_content"> + {{ item.value0 }} + </view> + </view> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">鎵规鍙凤細</view> + </view> + <view class="_content"> + {{ item.value1 }} + </view> + </view> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">WDR锛�</view> + </view> + <view class="_content"> + {{ item.value4 }} + </view> + </view> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">搴撲綅鍙凤細</view> + </view> + <view class="_content"> + {{ item.value0 }} + </view> + </view> + <view class="row-list"> + <view class="_label"> + <view class="_label-name">鐩樼偣鏁伴噺锛�</view> + </view> + <view class="_content"> + {{ item.value1 }} + </view> + </view> + </view> + </view> + </u-cell-group> + </scroll-view> + <scan></scan> + <!-- 闆朵欢鍙� --> + <modalBg ref="openPN" :confirm="confirmPN"> + <u-field v-model="registerInfo.value6" label="闆朵欢鍙凤細" placeholder="璇疯緭鍏�" :border-bottom="false"> + </u-field> + </modalBg> + <!-- 鎵规鍙� --> + <modalBg ref="openBatch" :confirm="confirmBatch"> + <u-field v-model="registerInfo.value3" label="鎵规鍙凤細" placeholder="璇疯緭鍏�" :border-bottom="false"> + </u-field> + </modalBg> + <!-- 搴撲綅鍙� --> + <modalBg ref="openLocation" :confirm="confirmLocation"> + <u-field v-model="registerInfo.value4" label="搴撲綅鍙凤細" placeholder="璇疯緭鍏�" :border-bottom="false"> + </u-field> + </modalBg> + <!-- 鐩樼偣鏁伴噺 --> + <modalBg ref="openPhysicalInventory" :confirm="confirmPhysicalInventory"> + <u-field v-model="registerInfo.value5" label="鐩樼偣鏁伴噺锛�" label-width="140" placeholder="璇疯緭鍏�" :border-bottom="false"> + </u-field> + </modalBg> + <!-- WDR --> + <modalBg ref="openWDR" :confirm="confirmWDR"> + <u-field v-model="registerInfo.value0" label="WDR锛�" label-width="140" placeholder="璇疯緭鍏�" :border-bottom="false"> + </u-field> + </modalBg> + </view> + </view> +</template> +<script> +import modalBg from '@/components/modal/modal-bg.vue' +import scan from "@/components/scan/scan.vue"; +import content_bg from '@/static/custom/packing/backBg.png' +export default { + components: { + scan, + modalBg + }, + data() { + return { + background: { + backgroundImage: `url(${content_bg})`, + backgroundAttachment: 'fixed', + backgroundSize: '100% auto', + backgroundRepeat: 'no-repeat', + }, + labelStyle: { + fontSize: '32rpx', + whiteSpace: 'nowrap' + }, + registerInfo: { + num: 0, + value0: '', + value1: '', + value2: '', + value3: '', + value4: '', + value5: '', + value6: '' + }, + hasScanSnList: [{ + value0: '11111111111111111111111', + value1: '111', + value2: '111', + value3: '111', + value4: '111', + + }, + { + value0: '111', + value1: '111', + value2: '111', + value3: '111', + value4: '111', + + }, + { + value0: '111', + value1: '111', + value2: '111', + value3: '111', + value4: '111', + + }, + { + value0: '111', + value1: '111', + value2: '111', + value3: '111', + value4: '111', + + }, + ], + delContent: null, + staffList: [], + }; + }, + onLoad(option) { }, + onShow() { + + let that = this + + uni.$off('scan') // 姣忔杩涙潵鍏� 绉婚櫎鍏ㄥ眬鑷畾涔変簨浠剁洃鍚櫒 + uni.$on('scan', function (data) { + console.log('onscan'); + //鎵爜鎴愬姛鍚庣殑鍥炶皟锛屼綘鍙互鍐欒嚜宸辩殑閫昏緫浠g爜鍦ㄨ繖閲� + console.log('鎵爜缁撴灉锛�', data.code); + that.scanHandle(data.code) + that.$forceUpdate(); + + }) + }, + onNavigationBarButtonTap() { + this.goScan() + }, + onReady() { }, + methods: { + //WDR + openWDR() { + this.$refs.openWDR.open(); + }, + // 寮规淇濆瓨 + confirmWDR() { + console.log('淇濆瓨', this.registerInfo.value6); + // 璇锋眰鎺ュ彛锛屾牴鎹伐鍗曞彿鏌ヨ鍏朵粬淇℃伅骞惰祴鍊� + }, + //闆朵欢鍙� + openPN() { + this.$refs.openPN.open(); + }, + // 寮规淇濆瓨 + confirmPN() { + console.log('淇濆瓨', this.registerInfo.value6); + // 璇锋眰鎺ュ彛锛屾牴鎹伐鍗曞彿鏌ヨ鍏朵粬淇℃伅骞惰祴鍊� + }, + //鎵规鍙� + openBatch() { + this.$refs.openBatch.open(); + }, + // 寮规淇濆瓨 + confirmBatch() { + console.log('淇濆瓨', this.registerInfo.value3); + // 璇锋眰鎺ュ彛锛屾牴鎹伐鍗曞彿鏌ヨ鍏朵粬淇℃伅骞惰祴鍊� + }, + //搴撲綅鍙� + openLocation() { + this.$refs.openLocation.open(); + }, + // 寮规淇濆瓨 + confirmLocation() { + console.log('淇濆瓨', this.registerInfo.value4); + // 璇锋眰鎺ュ彛锛屾牴鎹伐鍗曞彿鏌ヨ鍏朵粬淇℃伅骞惰祴鍊� + }, + //鐩樼偣鏁伴噺 + openPhysicalInventory() { + this.$refs.openPhysicalInventory.open(); + }, + // 寮规淇濆瓨 + confirmPhysicalInventory() { + console.log('淇濆瓨', this.registerInfo.value5); + // 璇锋眰鎺ュ彛锛屾牴鎹伐鍗曞彿鏌ヨ鍏朵粬淇℃伅骞惰祴鍊� + }, + + setNo(val) { + console.log('11111', val) + this.registerInfo.value1 = val.value1 + this.registerInfo.value2 = val.value2 + + }, + //鐩樼偣鎶ュ憡鍙� + seachPersonnelNo() { + console.log('11111') + uni.navigateTo({ + url: '/pages/wareHouse/inventory/orderList' + }) + }, + goScan() { + uni.scanCode({ + scanType: ['qrCode'], + success: res => { + try { + console.log('鎵爜缁撴灉锛�', res); + this.scanHandle(res.result) + } catch (e) { } + } + }); + }, + scanHandle(scanresult) { + scanresult = scanresult.replace(/[\r\n]/g, "") + if (scanresult.indexOf('{') > -1) { + //浜岀淮鐮� + const result = JSON.parse(scanresult) + //澧炲姞SN鏍¢獙 + if (result.sn_no && result.sn_no != null && result.sn_no != '') { + if (this.hasScanSnList.length > 0) { + let hasScanSnIndex = this.hasScanSnList.indexOf(result.sn_no) + if (hasScanSnIndex < 0) { + this.hasScanSnList.push(result.sn_no) + } else { + this.$u.toast('璇峰嬁閲嶅鎵弿') + } + } else { + this.hasScanSnList.push(result.sn_no) + } + } + + } else { + //澧炲姞SN鏍¢獙 + if (this.hasScanSnList.length > 0) { + let hasScanSnIndex = this.hasScanSnList.indexOf(scanresult) + if (hasScanSnIndex < 0) { + this.hasScanSnList.push(scanresult) + } else { + this.$u.toast('璇峰嬁閲嶅鎵弿') + } + } else { + this.hasScanSnList.push(scanresult) + } + } + }, + goSubmit() { + // if (this.registerInfo.shiftId == null || this.registerInfo.shiftId == '') { + // this.$u.toast('璇烽�夋嫨鐝') + // return + // } + // if (this.registerInfo.value3 == null || this.registerInfo.value3 == '') { + // this.$u.toast('璇烽�夋嫨鏃ユ湡') + // return + // } + // if (this.registerInfo.locNo == null || this.registerInfo.locNo == '') { + // this.$u.toast('璇烽�夋嫨鍖呰搴撲綅') + // return + // } + // if (this.hasScanSnList.length == 0) { + // this.$u.toast('鏃犲緟鎻愪氦鐨凷N鍙锋槑缁�') + // return + // } + // let registrList = [] + // this.staffList = [] + // this.staffNameList.forEach((item) => { + // this.staffList.push({ + // staffId: item.id + // }) + // }) + // this.hasScanSnList.forEach((item) => { + // registrList.push({ + // shiftId: this.registerInfo.shiftId, + // value3: this.registerInfo.value3, + // locNo: this.registerInfo.locNo, + // partBatchNo: item, + // staffList: this.staffList + // }) + // }) + // this.$u.api.pigxPacking.addPackageRegister(registrList).then(res => { + // let resData = res.data + // this.hasScanSnList = [] + // this.$u.toast('鎻愪氦鎴愬姛') + // }).catch((e) => { + // }) + + }, + } +}; +</script> +<style lang="scss" scoped> +.textST { + font-size: 14px; + margin-bottom: 5px; +} +.packing-registration-bg { + background-color: #F6F9FF; + background-image: url('~@/static/custom/packing/backBg.png'); + padding: 0 20rpx; + background-attachment: fixed; + background-size: 100% auto; + background-repeat: no-repeat; + position: fixed; + top: 0; + bottom: 0; + width: 100%; + z-index: -1; +} + +.packing-registration-param { + padding: 40rpx 30rpx 10rpx 30rpx; + + .packing-registration-param-title { + display: flex; + flex-direction: row; + align-items: center; + margin-bottom: 30rpx; + + .title-label { + margin-left: 14rpx; + font-size: 34rpx; + font-weight: bold; + color: #283E65; + } + } + + .packing-registration-param-view { + height: 440rpx; + background-color: #fff; + border-radius: 10rpx; + padding: 0rpx 23rpx; + margin-bottom: 30rpx; + + .packing-registration-param-item { + height: 90rpx; + border: 1px solid #ADC8E4; + line-height: 90rpx; + display: flex; + justify-content: space-between; + border: none; + + .packing-registration-param-item-left { + .item-one { + font-size: 30rpx; + color: #666666; + } + } + + .packing-registration-param-item-right { + display: flex; + justify-content: space-between; + + .item-one { + font-size: 30rpx; + color: #333333; + margin-right: 6rpx; + } + + .item-two { + font-size: 30rpx; + color: #A6B4CC; + margin-right: 6rpx; + } + + .item-three { + font-size: 30rpx; + color: #214DED; + margin-right: 6rpx; + } + } + } + + .param-extra { + border-bottom: 1px solid #EDEDED; + } + } +} + +.wrap .packing-registration-scroll-list { + height: calc(100vh - var(--window-top) - var(--window-bottom) - 780rpx); + width: 100%; +} + +.packing-registration-scroll-list-group { + ::v-deep .u-cell-item-box { + background-color: rgba(250, 252, 255, 0.36) !important; + padding: 0rpx 30rpx; + } + + .content { + font-size: 12px; + background-color: #ffffff; + box-sizing: border-box; + border-radius: 10rpx; + margin: 0rpx 0rpx 16rpx; + padding: 20rpx 8rpx; + box-shadow: none; + display: flex; + align-items: center; + + .content-header { + width: 40rpx; + height: 90rpx; + display: flex; + align-items: center; + + .content-header-icon { + background-image: url("~@/static/custom/moveWareHouse/header_icon.png"); + background-size: 100% auto; + background-repeat: no-repeat; + height: 28rpx; + width: 28rpx; + } + + .content-header-title { + margin-left: 11rpx; + font-size: 26rpx; + font-weight: bold; + color: #626369; + } + } + + .content-body { + flex: 1; + background-color: #ffffff; + border-radius: 10rpx; + padding: 0rpx 23rpx; + + .row-list { + height: 60rpx; + display: flex; + flex-direction: row; + padding: 0px; + align-items: center; + } + + .row-list ._label { + display: flex; + flex: 0.8; + color: #909399; + align-items: center; + + ._label-name { + margin-left: 11rpx; + font-size: 26rpx; + font-weight: 500; + color: #666666; + } + } + + .row-list ._content { + flex: 1.5; + text-align: right; + color: #909399; + font-size: 24rpx; + } + + .row-list .s1 { + color: #d35651; + } + } + } +} + +.registration-form-footer { + display: flex; + margin-top: 10rpx; + margin-bottom: 10rpx; + margin-left: 20rpx; + margin-right: 20rpx; + padding-bottom: 14rpx; + + .btn { + flex: 1; + margin: 10rpx; + background: #214DED; + box-shadow: 0rpx 6rpx 8rpx 0rpx rgba(4, 49, 212, 0.3); + font-weight: bold; + color: #FEFEFE; + font-family: PingFang SC; + } +} +</style> \ No newline at end of file -- Gitblit v1.9.3