From 1f017a1ebe252ef945e42dc868ac8c24e2b6d534 Mon Sep 17 00:00:00 2001
From: yyb <995253665@qq.com>
Date: 星期四, 21 八月 2025 17:35:49 +0800
Subject: [PATCH] pda报工选择投料接口变更

---
 pages/product/cancelReport/index.vue |  516 +++++++++++++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 477 insertions(+), 39 deletions(-)

diff --git a/pages/product/cancelReport/index.vue b/pages/product/cancelReport/index.vue
index 68365de..b453976 100644
--- a/pages/product/cancelReport/index.vue
+++ b/pages/product/cancelReport/index.vue
@@ -1,50 +1,488 @@
 <template>
-  <!-- 鍙栨秷鎶ュ伐 -->
-  <view class="page">
-    <u-form :model="form" ref="uForm" :label-width="280" :rules="rules" :error-type="['toast']">
-      <u-form-item label="璁㈠崟鍙�" :border-bottom="false" prop="value3">
-        <u-input v-model="form.value3" type="select" placeholder="鐐瑰嚮閫夋嫨" @click="openList" />
-      </u-form-item>
-      <u-form-item label="鍙栨秷鎶ュ伐璁板綍锛�" :border-bottom="false" prop="value12"></u-form-item>
-    </u-form>
-  </view>
+	<!-- 鍙栨秷鎶ュ伐 -->
+	<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" />
+		<u-form :model="form" ref="uForm" :label-width="280" :rules="rules" :error-type="['toast']" class="uForm">
+			<u-form-item label="璁㈠崟鍙�" :border-bottom="false" prop="moNo">
+				<u-input v-model="form.moNo" type="select" placeholder="鐐瑰嚮閫夋嫨" @click="openList" />
+			</u-form-item>
+			<u-form-item label="宸ュ崟" :border-bottom="false" prop="optaskNo">
+				<u-input v-model="form.optaskNo" type="select" placeholder="鐐瑰嚮閫夋嫨" @click="seachWork" />
+			</u-form-item>
+			<u-form-item label="鍙栨秷鎶ュ伐璁板綍锛�" :border-bottom="false" prop="value12"></u-form-item>
+		</u-form>
+		<view class="wrap">
+			<scroll-view class="finishProductIn-locno-scroll-list" scroll-y="true">
+				<u-cell-group class="finishProductIn-locno-scroll-list-group" :border="false">
+					<view class="content" v-for="(item, index) in list" :key="item.moNo" :index="index"
+						@click="cancelReport(item,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.outBatchNo }}
+								</view>
+							</view>
+							<view class="row-list">
+								<view class="_label">
+									<view class="_label-name">闆朵欢鍙凤細</view>
+								</view>
+								<view class="_content">
+									{{ item.partNo }}
+								</view>
+							</view>
+							<view class="row-list">
+								<view class="_label">
+									<view class="_label-name">闆朵欢鎻忚堪锛�</view>
+								</view>
+								<view class="_content">
+									{{ item.partName }}
+								</view>
+							</view>
+							<view class="row-list">
+								<view class="_label">
+									<view class="_label-name">鍙栨秷鎺ユ敹鏁伴噺锛�</view>
+								</view>
+								<view class="_content">
+									{{ item.qtyRequired }}
+								</view>
+							</view>
+						</view>
+					</view>
+				</u-cell-group>
+			</scroll-view>
+		</view>
+		<u-modal width="720rpx" v-model="showModal" title="" :show-cancel-button="true" :show-confirm-button="true"
+			@confirm="confirmModle" @cancel="cancel">
+			<view class="popup-content">
+				<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">{{ detailedList.outBatchNo }}</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 class="packing-registration-param-item-right">
+								<text class="item-one">{{ detailedList.partNo }}</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 class="packing-registration-param-item-right">
+								<span class="item-one">{{
+                  detailedList.partName
+                }}</span>
+							</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">
+								<span class="item-one">{{
+                  detailedList.netWeight
+                }}</span>
+							</view>
+						</view>
+					</view>
+				</view>
+			</view>
+		</u-modal>
+		<scan></scan>
+	</view>
 </template>
 
 <script>
-export default {
-  data() {
-    return {
-      form: {
-        value3: ''
-      },
-      rules: {}
-    };
-  },
-  methods: {
-    openList() {
-      uni.navigateTo({
-        url: '/pages/product/report/orderList'
-      })
-    },
-    setNo(val) {
-      this.form.value3 = val
-    }
+	import content_bg from "@/static/custom/packing/backBg.png";
+	import scan from "@/components/scan/scan.vue";
 
-  }
-}
+	export default {
+		components: {
+			scan,
+		},
+		data() {
+			return {
+				background: {
+					backgroundImage: `url(${content_bg})`,
+					backgroundAttachment: "fixed",
+					backgroundSize: "100% auto",
+					backgroundRepeat: "no-repeat",
+				},
+				form: {
+					moNo: "",
+					optaskNo: "",
+					id: "",
+				},
+				detailedList: {},
+				list: [],
+				rules: {},
+        showModal: false,
+        id: "",
+			};
+		},
+		onReady() {},
+		// onShow() {
+		//   let that = this;
+		//   uni.$off("scan"); // 姣忔杩涙潵鍏� 绉婚櫎鍏ㄥ眬鑷畾涔変簨浠剁洃鍚櫒
+		//   uni.$on("scan", function (data) {
+		//     console.log("onscan");
+		//     //鎵爜鎴愬姛鍚庣殑鍥炶皟锛屼綘鍙互鍐欒嚜宸辩殑閫昏緫浠g爜鍦ㄨ繖閲�
+		//     console.log("椤甸潰鎵爜缁撴灉锛�", data.code);
+		//     if (data.code) {
+		//       let codeInfo = JSON.parse(data.code);
+		//         console.log('222')
+		//       if (codeInfo.moNo) {
+		//         console.log('1111')
+		//         // 鎵弿鎶ュ伐鍗曚簩缁寸爜
+		//         that.saveForm(codeInfo);
+		// 	// that.$forceUpdate();
+		//       }
+		//     }
+		//   });
+		// },
+		methods: {
+			//宸ュ崟
+			seachWork() {
+				if (this.form.moNo == "") {
+					this.$u.toast("璇烽�夋嫨璁㈠崟鍙�");
+					return;
+				}
+				// 浣跨敤uni.navigateTo鏂规硶璺宠浆锛屽苟閫氳繃queryParams浼犻�掑弬鏁�
+				uni.navigateTo({
+					url: "/pages/product/WorkshopOrderIssued/WorkOrderList?id=" +
+						encodeURIComponent(JSON.stringify(this.form.id)),
+				});
+			},
+			cancel() {
+				this.showModal = false; // 鍏抽棴寮圭獥
+			},
+			openList() {
+				uni.navigateTo({
+					url: "/pages/product/report/orderList",
+				});
+			},
+			setNo(val) {
+				this.form.moNo = val.moNo;
+				this.form.id = val.id;
+			},
+			// 鍥炴樉鎵爜鐨勪俊鎭�-鎶ュ伐鍗�
+			saveForm(val) {
+				console.log('1111@@@@@@1', this.form)
+				if (this.form.moNo == '') {
+					uni.showToast({
+						icon: "none",
+						title: "璇峰厛閫夋嫨璁㈠崟鍙凤紒",
+						duration: 2 * 1000,
+					});
+					return;
+				}
+				if (this.form.moNo != val.moNo) {
+					uni.showToast({
+						icon: "none",
+						title: "鎵弿鐨勪簩缁寸爜涓庤璁㈠崟涓嶄竴鑷�",
+						duration: 2 * 1000,
+					});
+					return;
+				}
+				this.detailedList = val;
+				this.showModal = true;
+			},
+			// 宸ュ崟鍥炴樉
+			workNo(val) {
+        this.id = val.id;
+        this.getBGList();
+				this.form.optaskNo = val.optaskNo;
+      },
+      getBGList() {
+        this.$u.api.workReporting
+				.getProductMainV1({
+					current: 1,
+					size: -1,
+					id:this.id,
+				})
+          .then((res) => {
+          console.log('res',res)
+					this.list = res.data.productOutputList;
+				});
+      },
+			// 鍙栨秷鎶ュ伐
+			cancelReport(item, index) {
+				let that = this;
+				uni.showModal({
+					title: "鎻愮ず",
+					content: "鏄惁纭鍙栨秷鎵规" + item.outBatchNo + "鐨勬姤宸�",
+					success: function(res) {
+						if (res.confirm) {
+							that.detailedList = item;
+							that.showModal = true;
+						} else if (res.cancel) {
+							return;
+						}
+					},
+				});
+			},
+			confirmModle() {
+				console.log("鐐瑰嚮纭鍚庤幏鍙栧彇娑堟姤宸ヨ褰�");
+				// 澶勭悊纭閫昏緫
+				this.$u.api.cancelReporting
+					.cancelDTAOfWorkApplication({
+						outBatchNo: this.detailedList.outBatchNo,
+						outputId: this.detailedList.id
+					})
+					.then((res) => {
+						console.log("res", res);
+						this.getBGList();
+						this.showModal = false;
+						// this.getHandelList();
+						this.$u.toast("鍙栨秷鎶ュ伐鎴愬姛");
+					});
+			},
+		},
+	};
 </script>
 
 <style lang="scss" scoped>
-.page {
-  box-sizing: border-box;
-  padding: 30rpx;
-}
+	.packing-registration-param {
+		padding: 40rpx 30rpx 10rpx 30rpx;
+		height: 350px;
+		overflow: hidden;
 
-::v-deep .u-input__input {
-  text-align: right !important;
-}
+		.packing-registration-param-title {
+			display: flex;
+			flex-direction: row;
+			align-items: center;
+			margin-bottom: 30rpx;
 
-.u-form-item {
-  padding: 0;
-}
+			.title-label {
+				margin-left: 14rpx;
+				font-size: 34rpx;
+				font-weight: bold;
+				color: #283e65;
+			}
+		}
+
+		.packing-registration-param-view {
+			height: 177rpx;
+			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 {
+						word-break: break-all;
+						font-size: 30rpx;
+						color: #666666;
+					}
+				}
+
+				.packing-registration-param-item-right {
+					display: flex;
+					justify-content: space-between;
+
+					.item-one {
+						font-size: 30rpx;
+						color: #060505;
+						margin-right: 6rpx;
+						word-break: break-all;
+					}
+
+					.item-two {
+						font-size: 15rpx;
+						color: #a6b4cc;
+						margin-right: 6rpx;
+					}
+
+					.item-three {
+						font-size: 30rpx;
+						color: #214ded;
+						margin-right: 6rpx;
+					}
+				}
+			}
+
+			.param-extra {
+				border-bottom: 1px solid #ededed;
+			}
+		}
+	}
+
+	.popup-content {
+		width: 720rpx;
+		height: 400rpx;
+		background-color: #fff;
+		border-radius: 8px;
+		z-index: 10;
+		/* 纭繚鍐呭鍦ㄨ挋鐗堜箣涓� */
+	}
+
+	.page {
+		box-sizing: border-box;
+	}
+
+	.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;
+	}
+
+	.uForm {
+		background: #fff;
+		margin: 40rpx 30rpx;
+		padding: 20rpx 30rpx;
+		border-radius: 16rpx;
+	}
+
+	::v-deep .u-input__input {
+		text-align: right !important;
+	}
+
+	.u-form-item {
+		padding: 0;
+	}
+
+	.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;
+
+			white-space: normal;
+
+			.content-header {
+				width: 40rpx;
+				height: 90rpx;
+				display: flex;
+				align-items: center;
+				overflow-wrap: break-word;
+
+				.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 {
+					width: 40rpx;
+					// margin-left: 11rpx;
+					font-size: 26rpx;
+					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 {
+						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

--
Gitblit v1.9.3