From 781f98550d5f51e262bde9c72cd6cfa15875c4e5 Mon Sep 17 00:00:00 2001
From: yyb <995253665@qq.com>
Date: 星期四, 05 六月 2025 09:49:24 +0800
Subject: [PATCH] 车间订单下发/车间取消下发页面绘制

---
 pages/product/WorkshopOrderIssued/index.vue             |  440 ++++++++++++++++++++++
 pages/product/WorkshopOrderCancellationIssued/index.vue |  405 ++++++++++++++++++++
 pages.json                                              |   29 +
 pages/product/WorkshopOrderIssued/comp.vue              |  313 +++++++++++++++
 pages/sys/home/index.vue                                |    4 
 5 files changed, 1,189 insertions(+), 2 deletions(-)

diff --git a/pages.json b/pages.json
index 5749b6f..96753c5 100644
--- a/pages.json
+++ b/pages.json
@@ -760,6 +760,35 @@
         "enablePullDownRefresh": false
       }
     },
+    // 杞﹂棿璁㈠崟涓嬪彂
+    {
+      "path": "pages/product/WorkshopOrderIssued/index",
+      "style": {
+        "navigationStyle": "custom",
+        "navigationBarTitleText": "",
+        // "navigationBarBackgroundColor": "#3281FF"
+        "enablePullDownRefresh": false
+      }
+    },
+        // 杞﹂棿璁㈠崟鐗╂枡
+    {
+      "path": "pages/product/WorkshopOrderIssued/comp",
+      "style": {
+        "navigationStyle": "custom",
+        "navigationBarTextStyle": "white",
+        "navigationBarBackgroundColor": "#3281FF"
+      }
+    },
+    // 杞﹂棿鍙栨秷涓嬪彂
+    {
+      "path": "pages/product/WorkshopOrderCancellationIssued/index",
+      "style": {
+        "navigationStyle": "custom",
+        "navigationBarTitleText": "",
+        // "navigationBarBackgroundColor": "#3281FF"
+        "enablePullDownRefresh": false
+      }
+    },
     // 鐩樼偣鎶ュ憡鍙�
     {
       "path": "pages/wareHouse/inventory/orderList",
diff --git a/pages/product/WorkshopOrderCancellationIssued/index.vue b/pages/product/WorkshopOrderCancellationIssued/index.vue
new file mode 100644
index 0000000..ff26668
--- /dev/null
+++ b/pages/product/WorkshopOrderCancellationIssued/index.vue
@@ -0,0 +1,405 @@
+//杞﹂棿璁㈠崟鍙栨秷涓嬪彂
+// 杞﹂棿璁㈠崟涓嬪彂
+<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">
+						<text class="item-one item-two" @click="seachPersonnelNo()">{{ registerInfo.value1 == '' ?
+							"鐐瑰嚮閫夋嫨" : registerInfo.value1 }}</text>
+						<u-icon name="arrow-right" color="#687792" size="28" @click="seachPersonnelNo()"
+							v-show="registerInfo.value1 == ''"></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>
+			</view>
+		</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">闆朵欢鎻忚堪锛�</view>
+								</view>
+								<view class="_content">
+									{{ item.value0 }}
+								</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'
+			},
+			registerInfo: {
+				value1: '',
+			},
+			hasScanSnList: [{
+				value0: '11111111111111111111111',
+				value1: '111',
+				value2: '111',
+				value3: '111',
+			},
+			{
+				value0: '111',
+				value1: '111',
+				value2: '111',
+				value3: '111',
+			},
+			{
+				value0: '111',
+				value1: '111',
+				value2: '111',
+				value3: '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('杞﹂棿璁㈠崟鍙�')
+			uni.navigateTo({
+			    url: '/pages/product/report/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>
+.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: 180rpx;
+		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) - 400rpx);
+	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/product/WorkshopOrderIssued/comp.vue b/pages/product/WorkshopOrderIssued/comp.vue
new file mode 100644
index 0000000..f006d68
--- /dev/null
+++ b/pages/product/WorkshopOrderIssued/comp.vue
@@ -0,0 +1,313 @@
+<template>
+  <view class="page">
+    <view class="finishProductIn-locno-bg" />
+    <u-navbar title="杞﹂棿璁㈠崟鐗╂枡" :background="background" :border-bottom="false" :title-bold="true" title-color="#000"
+      back-icon-color="#000" />
+    <view class="finishProductIn-locno-search">
+      <u-search v-model="keywords" shape="square" bg-color="rgba(250,252,255,0.36)" :show-action="false"
+        placeholder="璇疯緭鍏ラ浂浠跺彿" @clear="search" @custom="search" @search="search">
+      </u-search>
+    </view>
+    <view class="wrap">
+      <scroll-view class="finishProductIn-locno-scroll-list" scroll-y="true" @scrolltolower="loadMore">
+        <u-cell-group class="finishProductIn-locno-scroll-list-group" :border="false">
+          <view class="content" v-for="(item, index) in list" :key="item.locNo" :index="index"
+            @click="selectNo(item.index)">
+            <view class="content-header">
+              <view class="content-header-title">{{ item.index }}</view>
+            </view>
+            <view class="content-body">
+              <view class="row-list">
+                <view class="_label">
+                  <view class="_label-icon-1">
+                  </view>
+                  <view class="_label-name">琛屽彿锛�</view>
+                </view>
+                <view class="_content">
+                  {{ item.value0 }}
+                </view>
+              </view>
+              <view class="row-list">
+                <view class="_label">
+                  <view class="_label-icon-2">
+                  </view>
+                  <view class="_label-name">涓嬪彂鑷冲簱浣嶏細</view>
+                </view>
+                <view class="_content">
+                  {{ item.value1 }}
+                </view>
+              </view>
+            <view class="row-list">
+                <view class="_label">
+                  <view class="_label-icon-1">
+                  </view>
+                  <view class="_label-name">闆朵欢鍙凤細</view>
+                </view>
+                <view class="_content">
+                  {{ item.value3 }}
+                </view>
+              </view>
+              <view class="row-list">
+                <view class="_label">
+                  <view class="_label-icon-3">
+                  </view>
+                  <view class="_label-name">闆朵欢鎻忚堪锛�</view>
+                </view>
+                <view class="_content">
+                  {{ item.value2 }}
+                </view>
+              </view>
+              <view class="row-list">
+                <view class="_label">
+                  <view class="_label-icon-2">
+                  </view>
+                  <view class="_label-name">闆朵欢涓嬪彂鏁伴噺锛�</view>
+                </view>
+                <view class="_content">
+                  {{ item.value4 }}
+                </view>
+              </view>
+              <view class="row-list">
+                <view class="_label">
+                  <view class="_label-icon-3">
+                  </view>
+                  <view class="_label-name">鐗╂枡琛岀姸鎬侊細</view>
+                </view>
+                <view class="_content">
+                  {{ item.value5 }}
+                </view>
+              </view>
+            </view>
+          </view>
+        </u-cell-group>
+        <view class="loadmore" @click="loadMore">
+          <u-loadmore :status="loadStatus"></u-loadmore>
+        </view>
+      </scroll-view>
+    </view>
+  </view>
+</template>
+<script>
+import content_bg from '@/static/custom/finishProductIn/locNoBg.png'
+export default {
+  data() {
+    return {
+      background: {
+        backgroundImage: `url(${content_bg})`,
+        backgroundAttachment: 'fixed',
+        backgroundSize: '100% auto',
+        backgroundRepeat: 'no-repeat',
+      },
+      keywords: '',
+      alllist: [],
+      originList: [],
+      query: {
+        current: 1,
+        size: 10
+      },
+      list: [
+        {
+          index: 1,
+          value0: '123456789',
+          value1: '123456789',
+          value2: '123456789',
+          value3: '123456789',
+          value4: '123456789',
+          value5: '123456789'
+        }
+      ],
+      count: 0,
+      loadStatus: 'loading'
+    };
+  },
+  onLoad() {
+    this.$u.api.finishProductIn.fetchList().then(res => {
+      this.alllist = res.data
+      this.originList = res.data
+      this.loadList()
+    })
+  },
+  methods: {
+    loadMore() {
+      if (this.loadStatus == "nomore" || this.loadStatus == "loading") {
+        return
+      }
+      this.loadStatus = "loading";
+      setTimeout(() => {
+        this.query.current += 1;
+        this.loadList();
+      }, 100);
+    },
+    loadList() {
+      const data = this.originList.slice((this.query.current - 1) * this.query.size, this.query.current * this.query.size)
+      this.list = this.list.concat(data);
+      this.loadStatus = "loadmore";
+      if (!data || data.length < this.query.size) {
+        this.loadStatus = "nomore";
+      }
+    },
+    search(value) {
+      this.list = [];
+      this.query.current = 1;
+      if (value) {
+        this.originList = this.alllist.filter(item => item.locNo.includes(value))
+      } else {
+        this.originList = this.alllist
+      }
+      this.loadList()
+    },
+    selectNo(no) {
+      this.refreshLastPage(no)
+    },
+
+    //鍒锋柊涓婁竴涓〉闈�
+    refreshLastPage(no) {
+      // 鍛婄煡 A.vue 鏇存柊鏁版嵁
+      // 鑾峰彇椤甸潰鏍�
+      let pages = getCurrentPages()
+
+      // 鑾峰彇涓婁竴椤垫爤
+      let prevPage = pages[pages.length - 2]
+
+      // 瑙﹀彂涓婁竴椤� upData 鍑芥暟(骞舵惡甯﹀弬鏁�)
+      prevPage.$vm.setNo(no)
+
+      // 杩斿洖涓婁竴椤�
+      uni.navigateBack({
+        delta: 1
+      })
+    },
+  }
+};
+</script>
+<style lang="scss" scoped>
+.finishProductIn-locno-bg {
+  background-color: #F6F9FF;
+  background-image: url('~@/static/custom/finishProductIn/locNoBg.png');
+  // background: linear-gradient(180deg,rgba(206,227,254,1),rgba(206,227,254,1) 20%,rgba(206,227,254,0.5) 40%,rgba(206,227,254,0.25) 60%,rgba(206,227,254,0.08) 80%,rgba(206,227,254,0));
+  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;
+}
+
+.finishProductIn-locno-search {
+  padding: 40rpx 30rpx 20rpx 30rpx;
+}
+
+.wrap .finishProductIn-locno-scroll-list {
+  height: calc(100vh - var(--window-top) - var(--window-bottom) - 242rpx);
+  width: 100%;
+}
+
+.finishProductIn-locno-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: #333333;
+      }
+    }
+
+    .content-body {
+      flex: 1;
+      background: #F5F9FF;
+      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-icon-1 {
+          background-image: url('~@/static/custom/moveWareHouse/label-icon-1.png');
+          background-size: 100% auto;
+          background-repeat: no-repeat;
+          height: 26rpx;
+          width: 26rpx;
+        }
+
+        ._label-icon-2 {
+          background-image: url('~@/static/custom/moveWareHouse/label-icon-2.png');
+          background-size: 100% auto;
+          background-repeat: no-repeat;
+          height: 26rpx;
+          width: 26rpx;
+        }
+
+        ._label-icon-3 {
+          background-image: url('~@/static/custom/moveWareHouse/label-icon-3.png');
+          background-size: 100% auto;
+          background-repeat: no-repeat;
+          height: 26rpx;
+          width: 26rpx;
+        }
+
+        ._label-name {
+          width:70px;
+          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>
diff --git a/pages/product/WorkshopOrderIssued/index.vue b/pages/product/WorkshopOrderIssued/index.vue
new file mode 100644
index 0000000..81349d1
--- /dev/null
+++ b/pages/product/WorkshopOrderIssued/index.vue
@@ -0,0 +1,440 @@
+// 杞﹂棿璁㈠崟涓嬪彂
+<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">
+						<text class="item-one item-two" @click="seachPersonnelNo()">{{ registerInfo.value1 == '' ?
+							"鐐瑰嚮閫夋嫨" : registerInfo.value1 }}</text>
+						<u-icon name="arrow-right" color="#687792" size="28" @click="seachPersonnelNo()"
+							v-show="registerInfo.value1 == ''"></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">
+						<text class="item-one item-two" @click="seachComp()">{{ registerInfo.value2 == '' ?
+							"鐐瑰嚮閫夋嫨" : registerInfo.value2 }}</text>
+						<u-icon name="arrow-right" color="#687792" size="28" @click="seachComp()"
+							v-show="registerInfo.value2 == ''"></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">
+						<text class="item-one item-two">{{ registerInfo.value2 }}</text>
+					</view>
+				</view>
+				<view class="packing-registration-param-item param-extra">
+					<view class="packing-registration-param-item-left">
+						<text class="item-one">涓嬪彂璁板綍锛�</text>
+					</view>
+				</view>
+			</view>
+		</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">闆朵欢鎻忚堪锛�</view>
+								</view>
+								<view class="_content">
+									{{ item.value0 }}
+								</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'
+			},
+			registerInfo: {
+				value1: '',
+				value2: '',
+			},
+			hasScanSnList: [{
+				value0: '11111111111111111111111',
+				value1: '111',
+				value2: '111',
+				value3: '111',
+			},
+			{
+				value0: '111',
+				value1: '111',
+				value2: '111',
+				value3: '111',
+			},
+			{
+				value0: '111',
+				value1: '111',
+				value2: '111',
+				value3: '111',
+			},
+			{
+				value0: '111',
+				value1: '111',
+				value2: '111',
+				value3: '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('杞﹂棿璁㈠崟鍙�')
+			uni.navigateTo({
+			    url: '/pages/product/report/orderList'
+			})
+        },
+        //瀛愪欢
+        seachComp() {
+            if (this.registerInfo.value1 == null || this.registerInfo.value1 == '') {
+				this.$u.toast('璇烽�夋嫨璁㈠崟鍙�')
+				return
+			}
+			console.log('瀛愪欢')
+            uni.navigateTo({
+			    url: '/pages/product/WorkshopOrderIssued/comp'
+			})
+		},
+		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>
+.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: 345rpx;
+		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) - 550rpx);
+	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 30a1a3b..0f59b0f 100644
--- a/pages/sys/home/index.vue
+++ b/pages/sys/home/index.vue
@@ -44,12 +44,12 @@
 						},
 						{
 							name: '杞﹂棿璁㈠崟涓嬪彂',
-							url: '/',
+							url: '/pages/product/WorkshopOrderIssued/index',
 							icon: 'four'
 						},
 						{
 							name: '杞﹂棿鍙栨秷涓嬪彂',
-							url: '/',
+							url: '/pages/product/WorkshopOrderCancellationIssued/index',
 							icon: 'five'
 						},
 					]

--
Gitblit v1.9.3