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