From ea87c908fb6cdfc3e227a584a53e6730efb8262a Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 26 十月 2023 13:41:12 +0800
Subject: [PATCH] 小程序代码

---
 minipro_standard/pages_adjust/pages/manualFeed/manualFeed.vue |  119 ++++++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 101 insertions(+), 18 deletions(-)

diff --git a/minipro_standard/pages_adjust/pages/manualFeed/manualFeed.vue b/minipro_standard/pages_adjust/pages/manualFeed/manualFeed.vue
index e0e9a8d..418c60b 100644
--- a/minipro_standard/pages_adjust/pages/manualFeed/manualFeed.vue
+++ b/minipro_standard/pages_adjust/pages/manualFeed/manualFeed.vue
@@ -1,11 +1,11 @@
 <template>
 	<view class="tl">
-		<workOrderInfo :orederMessage="{proUserList:[]}" />
+		<workOrderInfo :orederMessage="info" />
 		<div class="tl_title">
 			<div class="tl_title_left">
 				<div class="tl_title_left_x"></div>
 				<span>鎶曟枡淇℃伅</span>
-				<!-- <span>{{total == 0 ? '' : total}}{{formList[formList.length - 1].dw ? formList[formList.length - 1].dw : ''}}</span> -->
+				<!-- <span>{{total == 0 ? '' : total}}{{formList[formList.length - 1].dw ? formList[formList.length - 1].dw : ''}}</span> -->
 				<!-- <span>{{total == 0 ? '' : total}}{{formList[formList.length - 1].dw ? formList[formList.length - 1].dw : ''}}</span> -->
 			</div>
 			<div class="tl_title_right" @click="add">
@@ -47,26 +47,40 @@
 					</div>
 				</div>
 			</u-swipe-action-item>
-		</u-swipe-action>
-		<SelectMaterial ref="selectMaterial" @selectAction="getValue"/>
+		</u-swipe-action>
+		<view class="" style="height: 88rpx;"></view>
+		<u-safe-bottom></u-safe-bottom>
+		<div class="tl_footer">
+			<button class="tl_footer_submit" v-preventReClick @click="submit">鎻愪氦</button>
+		</div>
+		<SelectMaterial ref="selectMaterial" @selectAction="getValue" />
+		<!-- <SelectMultipleMaterial ref="selectMultipleMaterial" @selected="getMaterails"/> -->
 	</view>
 </template>
 
 <script>
-	import workOrderInfo from '@/components/workOrderInfo.vue'
-	import SelectMaterial from '@/components/selectMaterial.vue'
-	
+	import workOrderInfo from '@/components/workOrderInfo.vue'
+	import SelectMaterial from '@/components/selectMaterial.vue'
+	// import SelectMultipleMaterial from '@/components/SelectMultipleMaterial.vue'
+	import {
+		queryById,
+		createMaterial,
+		createMaterialStandard
+	} from '@/util/api/WorkOrderAPI'
 	import {
 		positiveInteger,
 		number
 	} from '@/common/config'
 	export default {
 		components: {
-			workOrderInfo,
-			SelectMaterial
+			workOrderInfo,
+			SelectMaterial,
+			// SelectMultipleMaterial
 		},
 		data() {
 			return {
+				deviceId: '',
+				workorderId: '',
 				// formList: [{
 				// 	id: Date.now(),
 				// 	toolingTypeId: '', // 宸ヨ绫诲瀷
@@ -79,6 +93,7 @@
 				// 	dw: '', // 鐗╂枡鍗曚綅
 				// 	unitAttribute: ''
 				// }],
+				info: {},
 				materialList: [{
 					id: '',
 					materialName: '',
@@ -97,10 +112,25 @@
 					}
 				}],
 			};
-		},
+		},
+		onLoad(obj) {
+			this.workorderId = obj.id
+			queryById(this.workorderId)
+				.then(res => {
+					if (res.code === 200) {
+						this.info = res.data
+						this.deviceId = res.data.pgmodel.id
+					}
+				})
+		},
 		methods: {
-			open1(index) {
-				this.$refs.selectMaterial.open({})
+			open1(index) {
+				// this.$refs.selectMaterial.open({})
+				this.index = index
+				this.$refs.selectMaterial.open({
+					workorderId: this.workorderId,
+					deviceId: this.deviceId
+				})
 			},
 			deleItem(index) {
 				if (this.materialList.length === 1) {
@@ -109,7 +139,7 @@
 				}
 				this.materialList.splice(index, 1)
 			},
-			add() {
+			add() {
 				this.total += 1
 				this.materialList.unshift({
 					id: '',
@@ -145,9 +175,61 @@
 					})
 					this.materialList[index].num = ''
 				}
-			},
-			getValue(item) {
-				console.log(item);
+			},
+			getValue(item) {
+				for (let i = 0; i < this.materialList.length; i++) {
+					if (item.id === this.materialList[i].id) {
+						uni.$u.toast({
+							message: '涓嶈兘閲嶅閫夋嫨鐩稿悓鐗╂枡'
+						})
+						return
+					}
+				}
+				this.materialList[this.index].id = item.id
+				this.materialList[this.index].materialName = item.materialName
+				this.materialList[this.index].num = item.num
+				this.materialList[this.index].batch = item.batch
+				this.materialList[this.index].locationName = item.locationName
+				this.materialList[this.index].materialCode = item.materialCode
+				this.materialList[this.index].procedureName = item.procedureName
+				this.materialList[this.index].qualityType = item.qualityType
+				this.materialList[this.index].unitAttribute = item.unitAttribute
+			},
+			submit() {
+				let temp = this.materialList.findIndex(item => !item.id || !item.num)
+				if (temp != -1) {
+					uni.$u.toast(`璇峰厛瀹屽杽绗�${temp + 1}鏉℃姇鏂欎俊鎭痐)
+					return
+				}
+				let total = this.materialList.reduce((accumulator, currentValue) => accumulator + Number(currentValue.num),
+					0)
+				console.log(total);
+				if (this.info.bomType != 1 && this.info.hasBom != 1) {
+					if (total > this.info.planNum) {
+						uni.$u.toast(`鎶曟枡鏁伴噺涓嶈兘澶т簬璁″垝鏁伴噺`)
+						return
+					}
+				}
+				let recordList = this.materialList.map(item => {
+					return {
+						wstockId: item.id,
+						num: item.num
+					}
+				})
+				createMaterialStandard({
+					id: this.workorderId,
+					recordList
+				}).then(res => {
+					if (res.code === 200) {
+						// Toast.success({ message: '鎶曟枡鎴愬姛', duration: 2000, forbidClick: true })
+						// setTimeout(() => {
+						//   router.go(-1)
+						// }, 2000)
+						uni.$u.toast(`鎶曟枡鎴愬姛`)
+						uni.$emit('addMaterial')
+						uni.navigateBack()
+					}
+				})
 			}
 		}
 	}
@@ -297,9 +379,10 @@
 			width: 100%;
 			position: fixed;
 			bottom: 0;
-			left: 0;
-			padding: 0 30rpx 68rpx 30rpx;
+			padding: 0 30rpx calc(env(safe-area-inset-bottom) + 20rpx);
 			box-sizing: border-box;
+			z-index: 999;
+			background-color: #fff;
 
 			.tl_footer_submit {
 				width: 690rpx;

--
Gitblit v1.9.3