From 4a2c6fb2773adf8b5e28351021b79aebaf2af5e4 Mon Sep 17 00:00:00 2001
From: 小小儁爺 <1694218219@qq.com>
Date: 星期三, 25 三月 2026 17:16:03 +0800
Subject: [PATCH] 1.生产工单 批量绑定工艺 修改
---
src/views/workOrder/workOrderList.vue | 126 ++++++++++++++++++++++++++++++------------
1 files changed, 90 insertions(+), 36 deletions(-)
diff --git a/src/views/workOrder/workOrderList.vue b/src/views/workOrder/workOrderList.vue
index b6b8126..3c41914 100644
--- a/src/views/workOrder/workOrderList.vue
+++ b/src/views/workOrder/workOrderList.vue
@@ -533,6 +533,7 @@
<div class="elTableDiv">
<el-table
+ ref="tableDataRef2"
:data="tableDataDetail"
border
height="210px"
@@ -856,7 +857,13 @@
/>
</el-select>
</el-form-item>
-
+ <el-form-item label="閿�鍞鍗�" prop="">
+ <el-input
+ v-model="dialogForm.saleordercode"
+ style="width: 200px"
+ :disabled="!(dialogForm.mesorderstus==='NEW'&&dialogForm.data_sources==='MES')"
+ />
+ </el-form-item>
<el-form-item label="棰勮浜や粯鏃ユ湡" prop="deliverydate">
<el-date-picker
v-model="dialogForm.deliverydate"
@@ -1581,6 +1588,7 @@
</div>
<div
id="qrCode0"
+ :key="formApprove.mesordercode"
style="width: 22%;height:90px;
margin-top: 20px;
overflow-y: scroll;display: flex;
@@ -1717,6 +1725,7 @@
</div>
<div
id="qrCode1"
+ :key="formApprove.mesordercode"
style="width: 22%;height:90px;
margin-top: 20px;
overflow-y: scroll;display: flex;
@@ -2489,9 +2498,8 @@
</div>
<div v-for="(i,index) in formData3" :key="index" class="customDiv">
-
+ <!-- ref="dialogForm"-->
<el-form
- ref="dialogForm"
inline
:model="i"
label-width="110px"
@@ -2572,7 +2580,13 @@
/>
</el-select>
</el-form-item>
-
+ <el-form-item label="閿�鍞鍗�" prop="">
+ <el-input
+ v-model="i.saleordercode"
+ style="width: 200px"
+ :disabled="!(i.mesorderstus==='NEW'&&i.data_sources==='MES')"
+ />
+ </el-form-item>
<el-form-item label="棰勮浜や粯鏃ユ湡" prop="deliverydate">
<el-date-picker
v-model="i.deliverydate"
@@ -2743,7 +2757,7 @@
AddUpdateMesOrder, AddUpdateMesOrderList, DeleteMesOrder,
MesBadOrderSearch, MesOrderDistribution, MesOrderNewStepContent, MesOrderProcessSopSearch,
MesOrderSearch, MesOrderSopSearch, UpdateMesOrderStepListSearch,
- UpdateMesOrderStepSearch
+ UpdateMesOrderStepSearch, MesOrderNewStepListContent
} from '@/api/WorkOrder'
import { PartSelect } from '@/api/ProductModel'
import { PrentOrganization, PrentOrganizationNoCompany, StepData } from '@/api/GeneralBasicData'
@@ -2751,7 +2765,12 @@
import ElDragSelect from '@/components/DragSelect'
import { MesOrderPrintSearch } from '@/api/GridReport' // base on element-ui
import DateType from '@/components/DateType'
-import { PartSelectRpute, PartSelectRputeList, RouteSelectStep, RouteSelectStepList } from '@/api/basicSettings'
+import {
+ PartSelectRpute,
+ PartSelectRputeList,
+ RouteSelectStep,
+ RouteSelectStepList
+} from '@/api/basicSettings'
import { DeviceSopSearch } from '@/api/DeviceManager'
export default {
@@ -2783,7 +2802,7 @@
// createdate: '', // 鍒涘缓鏃堕棿
datatype: 'ED', // 鏃ユ湡绫诲瀷(璁″垝寮�宸�(PS)銆佽鍒掑畬宸�(PE)銆侀璁′氦浠�(ED)銆佸垱寤烘棩鏈�(CT))
timeValue: [], // 鏌ヨ鏃ユ湡
- prop: 'lm_date', // 鎺掑簭瀛楁
+ prop: 'partspec', // 鎺掑簭瀛楁 lm_date
order: 'desc', // 鎺掑簭瀛楁
page: 1, // 绗嚑椤�
rows: 20 // 姣忛〉澶氬皯鏉�
@@ -2808,6 +2827,8 @@
ordertype: 'PO', // 宸ュ崟绫诲瀷
sourceorderid: '', // 婧愬崟id
sourceorder: '', // 婧愬崟鍗曞彿
+
+ saleordercode: '', // 閿�鍞鍗曞彿
partcode: '', // 浜у搧缂栫爜
partname: '', // 浜у搧鍚嶇О
@@ -3031,7 +3052,7 @@
routecodeArr: [], //
- sourceType: false, // 宸ュ簭鐨勬暟鎹潵婧�
+ sourceType: true, // 宸ュ簭鐨勬暟鎹潵婧�
mesSetting: JSON.parse(localStorage.getItem('mesSetting')),
@@ -3160,6 +3181,7 @@
ordertype: i.wotype, // 宸ュ崟绫诲瀷
sourceorderid: i.sourceid, // 婧愬崟id
sourceorder: i.m_po, // 婧愬崟鍗曞彿
+ saleordercode: i.saleOrderCode,
partcode: i.partcode, // 浜у搧缂栫爜
partname: i.partname, // 浜у搧鍚嶇О
partspec: i.partspec, // 浜у搧瑙勬牸
@@ -3175,6 +3197,8 @@
stepTableData: []// 宸ュ簭琛ㄥ��
})
})
+
+ const tempArr = []
const { data: res3 } = await UpdateMesOrderStepListSearch(data3)
console.log(res3, 321)
res3.forEach((i, index) => {
@@ -3185,40 +3209,61 @@
})
this.formData3[index].stepTableData = i.stepdata
this.formData3[index].stepSelectedValue = i.stepdata.map(j => j.stepcode)
+ } else {
+ tempArr.push({
+ 'wkshopcode': this.formData3[index].wkshopcode,
+ 'routecode': this.formData3[index].routecode,
+ 'partcode': this.formData3[index].partcode
+ })
}
})
-
- const { data: res } = await PartSelectRputeList(partcodeArr)
- if (this.mesSetting.route) {
- res.forEach((i, index) => {
- if (i.routedata.length > 0) {
- this.formData3[index].routecodeArr = i.routedata
- }
- })
- } else {
+ console.log(this.sourceType, '鎵ц1', this.formData3)
+ const tempArr2 = tempArr.filter((item, index) => {
+ return tempArr.findIndex(i => i.partcode === item.partcode) === index
+ })
+ if (this.sourceType) { // 涓簍rue鏃讹紝璋冪敤MesOrderNewStepListContent
+ const { data: res } = await MesOrderNewStepListContent(tempArr2)
this.formData3.forEach((i, index) => {
if (i.stepTableData.length === 0) {
- i.stepTableData = res[index].stepdata
- i.stepSelectedValue = res[index].stepdata.length > 0 ? res[index].stepdata.map(j => j.stepcode) : []
- }
- })
- }
- // i.stepdata.forEach(j => {
- // j.ratio = parseFloat(j.ratio) > 0 ? parseFloat(j.ratio) : 0
- // j.sumqty = Math.round(parseFloat(i.canupdate_qty) * (1 + (parseFloat(j.ratio) > 0 ? parseFloat(j.ratio) / 100 : 0)))
- // })
- if (this.mesSetting.route) {
- const { data: res2 } = await RouteSelectStepList(data2)
- this.formData3.forEach((i, index) => {
- if (i.stepTableData.length === 0) {
- res2[index].stepdata.forEach(j => {
+ const ind = res.findIndex(j => j.partcode === this.formData3[index].partcode)
+ res[ind].stepdata.forEach(j => {
j.ratio = parseFloat(j.ratio) > 0 ? parseFloat(j.ratio) : 0
j.sumqty = Math.round(parseFloat(i.mesqty) * (1 + (parseFloat(j.ratio) > 0 ? parseFloat(j.ratio) / 100 : 0)))
})
- i.stepTableData = res2[index].stepdata
- i.stepSelectedValue = res2[index].stepdata.length > 0 ? res2[index].stepdata.map(j => j.stepcode) : []
+ this.formData3[index].stepTableData = res[ind].stepdata
+ this.formData3[index].stepSelectedValue = res[ind].stepdata.length > 0 ? res[ind].stepdata.map(j => j.stepcode) : []
}
})
+ } else { // 璋冪敤PartSelectRputeList
+ const { data: res } = await PartSelectRputeList(partcodeArr)
+ if (this.mesSetting.route) {
+ res.forEach((i, index) => {
+ if (i.routedata.length > 0) {
+ this.formData3[index].routecodeArr = i.routedata
+ }
+ })
+ } else {
+ this.formData3.forEach((i, index) => {
+ if (i.stepTableData.length === 0) {
+ i.stepTableData = res[index].stepdata
+ i.stepSelectedValue = res[index].stepdata.length > 0 ? res[index].stepdata.map(j => j.stepcode) : []
+ }
+ })
+ }
+
+ if (this.mesSetting.route) {
+ const { data: res2 } = await RouteSelectStepList(data2)
+ this.formData3.forEach((i, index) => {
+ if (i.stepTableData.length === 0) {
+ res2[index].stepdata.forEach(j => {
+ j.ratio = parseFloat(j.ratio) > 0 ? parseFloat(j.ratio) : 0
+ j.sumqty = Math.round(parseFloat(i.mesqty) * (1 + (parseFloat(j.ratio) > 0 ? parseFloat(j.ratio) / 100 : 0)))
+ })
+ i.stepTableData = res2[index].stepdata
+ i.stepSelectedValue = res2[index].stepdata.length > 0 ? res2[index].stepdata.map(j => j.stepcode) : []
+ }
+ })
+ }
}
// this.formData3 = this.multipleSelection
@@ -3274,6 +3319,7 @@
sourceid: i.sourceorderid, // 婧愬崟id
sourcewo: i.sourceorder, // 婧愬崟鍗曞彿
partcode: i.partcode, // 浜у搧缂栧彿
+ saleordercode: i.saleordercode, // 閿�鍞崟鍙�
wkshopcode: i.wkshopcode,
woqty: i.mesqty, // 宸ュ崟鏁伴噺
deliverydate: i.deliverydate, // 浜や粯鏃堕棿
@@ -3625,6 +3671,8 @@
this.form.ordertype = ''
// this.form.createdate = ''
+ this.form.saleordercode = ''
+
this.form.timeValue = []
this.cycleTime = null
this.$refs.DateTypeRef.clearValue()
@@ -3738,6 +3786,7 @@
this.dialogForm.ordertype = row.wotype
this.dialogForm.sourceorderid = row.sourceid
this.dialogForm.sourceorder = row.m_po
+ this.dialogForm.saleordercode = row.saleOrderCode
this.dialogForm.partcode = row.partcode
this.dialogForm.partname = row.partname
this.dialogForm.partspec = row.partspec
@@ -3822,7 +3871,9 @@
this.stepSelectedValue = this.stepTableData.map(i => i.stepcode)
} else {
- await this.getBasicProcessData()
+ // await this.getBasicProcessData()
+ console.log('鎵ц')
+ this.sourceTypeChange(this.sourceType)
}
}
@@ -3952,7 +4003,7 @@
ordertype: 'PO', // 宸ュ崟绫诲瀷
sourceorderid: '', // 婧愬崟id
sourceorder: '', // 婧愬崟鍗曞彿
-
+ saleordercode: '', // 閿�鍞鍗曞彿
partcode: '', // 浜у搧缂栫爜
partname: '', // 浜у搧鍚嶇О
partspec: '', // 浜у搧瑙勬牸
@@ -3969,11 +4020,13 @@
this.dialogForm.routecode = ''
- this.sourceType = false
+ this.sourceType = true
this.stepSelectedValue = []
this.stepTableData = []
this.$refs.dialogForm.clearValidate()
+ this.$refs.tableDataRef.doLayout()
+ this.$refs.tableDataRef2.doLayout()
},
// 瀵硅瘽妗嗗彇娑�
dialogVisibleCancel() {
@@ -4031,6 +4084,7 @@
wotype: this.dialogForm.ordertype, // 宸ュ崟绫诲瀷
sourceid: this.dialogForm.sourceorderid, // 婧愬崟id
sourcewo: this.dialogForm.sourceorder, // 婧愬崟鍗曞彿
+ saleordercode: this.dialogForm.saleordercode, // 閿�鍞鍗曞彿
partcode: this.dialogForm.partcode, // 浜у搧缂栧彿
wkshopcode: this.dialogForm.wkshopcode,
woqty: this.dialogForm.mesqty, // 宸ュ崟鏁伴噺
--
Gitblit v1.9.3