From c4d59de5b8132c70ae4dc64e4309fc6d761b111d Mon Sep 17 00:00:00 2001
From: 小小儁爺 <1694218219@qq.com>
Date: 星期二, 16 十二月 2025 09:24:56 +0800
Subject: [PATCH] 1.工艺模式 生产工单带工序改为默认历史最新2.生产执行新增 订单号字段
---
src/views/workOrder/produceOrderList.vue | 287 ++++++++++++++++++++++++++++++++++++++-------------------
1 files changed, 192 insertions(+), 95 deletions(-)
diff --git a/src/views/workOrder/produceOrderList.vue b/src/views/workOrder/produceOrderList.vue
index 978206d..f1415f2 100644
--- a/src/views/workOrder/produceOrderList.vue
+++ b/src/views/workOrder/produceOrderList.vue
@@ -7,10 +7,23 @@
>
<div style="font-weight: bolder;">璁㈠崟鐘舵��</div>
<div class="statusItem" :class="{statusItemLight:form.erporderstus===''}" @click="statusChange('')">鍏ㄩ儴</div>
- <div class="statusItem" :class="{statusItemLight:form.erporderstus==='NEW'}" @click="statusChange('NEW')">鏂拌鍗�</div>
- <div class="statusItem" :class="{statusItemLight:form.erporderstus==='CREATING'}" @click="statusChange('CREATING')">閮ㄥ垎涓嬭揪</div>
- <div class="statusItem" :class="{statusItemLight:form.erporderstus==='CREATED'}" @click="statusChange('CREATED')">鍏ㄩ儴涓嬭揪</div>
- <div class="statusItem" :class="{statusItemLight:form.erporderstus==='CLOSED'}" @click="statusChange('CLOSED')">宸插叧闂�</div>
+ <div class="statusItem" :class="{statusItemLight:form.erporderstus==='NEW'}" @click="statusChange('NEW')">鏂拌鍗�
+ </div>
+ <div
+ class="statusItem"
+ :class="{statusItemLight:form.erporderstus==='CREATING'}"
+ @click="statusChange('CREATING')"
+ >閮ㄥ垎涓嬭揪
+ </div>
+ <div
+ class="statusItem"
+ :class="{statusItemLight:form.erporderstus==='CREATED'}"
+ @click="statusChange('CREATED')"
+ >鍏ㄩ儴涓嬭揪
+ </div>
+ <div class="statusItem" :class="{statusItemLight:form.erporderstus==='CLOSED'}" @click="statusChange('CLOSED')">
+ 宸插叧闂�
+ </div>
</div>
<div class="bodyTopButtonGroup" style="justify-content: space-between;margin-top: 5px;">
@@ -45,6 +58,8 @@
<el-select
v-model="form.wkshopcode"
filterable
+ multiple
+ collapse-tags
:popper-append-to-body="false"
style="width: 200px"
placeholder="璇烽�夋嫨"
@@ -237,7 +252,7 @@
<el-table-column
show-tooltip-when-overflow
prop="saleOrderCode"
- label="閿�鍞鍗�"
+ label="閿�鍞鍗�/棰勬祴鍗�"
sortable="custom"
width="150"
>
@@ -273,6 +288,30 @@
</template>
</el-table-column>
<el-table-column
+ prop="TopInventoryCode"
+ label="椤剁骇鐗╂枡缂栫爜"
+ sortable="custom"
+ show-tooltip-when-overflow
+ min-width="130"
+ >
+ <template slot-scope="{row}">
+ <div v-if="row.TopInventoryCode">{{ row.TopInventoryCode }}</div>
+ <div v-else>/</div>
+ </template>
+ </el-table-column>
+ <el-table-column
+ prop="TopInventoryName"
+ label="椤剁骇鐗╂枡鍚嶇О"
+ sortable="custom"
+ show-tooltip-when-overflow
+ min-width="130"
+ >
+ <template slot-scope="{row}">
+ <div v-if="row.TopInventoryName">{{ row.TopInventoryName }}</div>
+ <div v-else>/</div>
+ </template>
+ </el-table-column>
+ <el-table-column
prop="qty"
label="璁㈠崟鏁伴噺"
width="150"
@@ -286,66 +325,66 @@
width="150"
sortable="custom"
/>
-<!-- <el-table-column-->
-<!-- prop="priuserdefnvc1"-->
-<!-- label="瀹㈡埛鍚嶇О"-->
-<!-- width="110"-->
-<!-- sortable="custom"-->
-<!-- >-->
-<!-- <template slot-scope="{row}">-->
-<!-- {{ row.priuserdefnvc1 ? row.priuserdefnvc1 : '/' }}-->
-<!-- </template>-->
-<!-- </el-table-column>-->
-<!-- <el-table-column-->
-<!-- prop="priuserdefnvc6"-->
-<!-- label="瀹㈡埛缂栫爜"-->
-<!-- width="110"-->
-<!-- sortable="custom"-->
-<!-- >-->
-<!-- <template slot-scope="{row}">-->
-<!-- {{ row.priuserdefnvc6 ? row.priuserdefnvc6 : '/' }}-->
-<!-- </template>-->
-<!-- </el-table-column>-->
-<!-- <el-table-column-->
-<!-- prop="priuserdefnvc2"-->
-<!-- label="瀵瑰唴鍚嶇О"-->
-<!-- width="110"-->
-<!-- sortable="custom"-->
-<!-- >-->
-<!-- <template slot-scope="{row}">-->
-<!-- {{ row.priuserdefnvc2 ? row.priuserdefnvc2 : '/' }}-->
-<!-- </template>-->
-<!-- </el-table-column>-->
-<!-- <el-table-column-->
-<!-- prop="priuserdefnvc3"-->
-<!-- label="CTP鏃ユ湡"-->
-<!-- width="110"-->
-<!-- sortable="custom"-->
-<!-- >-->
-<!-- <template slot-scope="{row}">-->
-<!-- {{ row.priuserdefnvc3 ? row.priuserdefnvc3 : '/' }}-->
-<!-- </template>-->
-<!-- </el-table-column>-->
-<!-- <el-table-column-->
-<!-- prop="priuserdefnvc4"-->
-<!-- label="閽㈠垁缂栧彿"-->
-<!-- width="110"-->
-<!-- sortable="custom"-->
-<!-- >-->
-<!-- <template slot-scope="{row}">-->
-<!-- {{ row.priuserdefnvc4 ? row.priuserdefnvc4 : '/' }}-->
-<!-- </template>-->
-<!-- </el-table-column>-->
-<!-- <el-table-column-->
-<!-- prop="priuserdefnvc5"-->
-<!-- label="鐩掑瀷"-->
-<!-- width="110"-->
-<!-- sortable="custom"-->
-<!-- >-->
-<!-- <template slot-scope="{row}">-->
-<!-- {{ row.priuserdefnvc5 ? row.priuserdefnvc5 : '/' }}-->
-<!-- </template>-->
-<!-- </el-table-column>-->
+ <!-- <el-table-column-->
+ <!-- prop="priuserdefnvc1"-->
+ <!-- label="瀹㈡埛鍚嶇О"-->
+ <!-- width="110"-->
+ <!-- sortable="custom"-->
+ <!-- >-->
+ <!-- <template slot-scope="{row}">-->
+ <!-- {{ row.priuserdefnvc1 ? row.priuserdefnvc1 : '/' }}-->
+ <!-- </template>-->
+ <!-- </el-table-column>-->
+ <!-- <el-table-column-->
+ <!-- prop="priuserdefnvc6"-->
+ <!-- label="瀹㈡埛缂栫爜"-->
+ <!-- width="110"-->
+ <!-- sortable="custom"-->
+ <!-- >-->
+ <!-- <template slot-scope="{row}">-->
+ <!-- {{ row.priuserdefnvc6 ? row.priuserdefnvc6 : '/' }}-->
+ <!-- </template>-->
+ <!-- </el-table-column>-->
+ <!-- <el-table-column-->
+ <!-- prop="priuserdefnvc2"-->
+ <!-- label="瀵瑰唴鍚嶇О"-->
+ <!-- width="110"-->
+ <!-- sortable="custom"-->
+ <!-- >-->
+ <!-- <template slot-scope="{row}">-->
+ <!-- {{ row.priuserdefnvc2 ? row.priuserdefnvc2 : '/' }}-->
+ <!-- </template>-->
+ <!-- </el-table-column>-->
+ <!-- <el-table-column-->
+ <!-- prop="priuserdefnvc3"-->
+ <!-- label="CTP鏃ユ湡"-->
+ <!-- width="110"-->
+ <!-- sortable="custom"-->
+ <!-- >-->
+ <!-- <template slot-scope="{row}">-->
+ <!-- {{ row.priuserdefnvc3 ? row.priuserdefnvc3 : '/' }}-->
+ <!-- </template>-->
+ <!-- </el-table-column>-->
+ <!-- <el-table-column-->
+ <!-- prop="priuserdefnvc4"-->
+ <!-- label="閽㈠垁缂栧彿"-->
+ <!-- width="110"-->
+ <!-- sortable="custom"-->
+ <!-- >-->
+ <!-- <template slot-scope="{row}">-->
+ <!-- {{ row.priuserdefnvc4 ? row.priuserdefnvc4 : '/' }}-->
+ <!-- </template>-->
+ <!-- </el-table-column>-->
+ <!-- <el-table-column-->
+ <!-- prop="priuserdefnvc5"-->
+ <!-- label="鐩掑瀷"-->
+ <!-- width="110"-->
+ <!-- sortable="custom"-->
+ <!-- >-->
+ <!-- <template slot-scope="{row}">-->
+ <!-- {{ row.priuserdefnvc5 ? row.priuserdefnvc5 : '/' }}-->
+ <!-- </template>-->
+ <!-- </el-table-column>-->
<el-table-column
prop="clerkuser"
label="閿�鍞笟鍔″憳"
@@ -473,12 +512,21 @@
@click="edit('edit',row)"
/>
</el-tooltip>
- <el-tooltip v-del-tab-index class="item" effect="dark" content="璁㈠崟鍏抽棴" placement="top">
+ <el-tooltip v-del-tab-index class="item" effect="dark" :content="row.status!=='CLOSED'?'璁㈠崟鍏抽棴':'璁㈠崟鍚姩'" placement="top">
<i
+ v-if="row.status!=='CLOSED'"
class="el-icon-switch-button"
+ :style="{color:'red'}"
+ style="cursor: pointer;margin-left: 15px"
+ @click="orderClose(row)"
+ />
+
+ <i
+ v-if="row.status==='CLOSED'"
+ class="el-icon-thumb"
:style="{color:$store.state.settings.theme}"
style="cursor: pointer;margin-left: 15px"
- @click="orderClose(row.id)"
+ @click="orderOpen(row)"
/>
</el-tooltip>
@@ -531,6 +579,15 @@
<el-form-item label="浜у搧瑙勬牸" prop="partspec">
<el-input v-model="dialogForm.partspec" disabled style="width: 200px" />
</el-form-item>
+
+ <el-form-item label="椤剁骇鐗╂枡缂栫爜" prop="TopInventoryCode">
+ <el-input v-model="dialogForm.TopInventoryCode" disabled style="width: 200px" />
+ </el-form-item>
+
+ <el-form-item label="椤剁骇鐗╂枡鍚嶇О" prop="TopInventoryName">
+ <el-input v-model="dialogForm.TopInventoryName" disabled style="width: 200px" />
+ </el-form-item>
+
<el-form-item label="鐢熶骇杞﹂棿" prop="wkshopname">
<el-input v-model="dialogForm.wkshopname" disabled style="width: 200px" />
</el-form-item>
@@ -560,6 +617,7 @@
v-model="dialogForm.ordernum"
oninput="value=value.replace(/[^0-9.]/g,'')"
style="width: 200px"
+ disabled
/>
</el-form-item>
@@ -644,7 +702,7 @@
DeleteErpOrder,
ErpOrderSearch,
MarkBatchSaveErpOrder,
- MarkSaveErpOrder
+ MarkSaveErpOrder, ReverseClosedErpOrder
} from '@/api/WorkOrder'
import { SeaveSearchErpOrder } from '@/api/ErpSyncMes'
import { PrentOrganizationNoCompany } from '@/api/GeneralBasicData'
@@ -675,7 +733,7 @@
mainHeight: 0,
tableHeight: 0,
form: {
- wkshopcode: '', // 杞﹂棿缂栫爜
+ wkshopcode: [], // 杞﹂棿缂栫爜
erporderstus: '', // 璁㈠崟鐘舵�佺爜
erpordercode: '', // 璁㈠崟缂栧彿
partcode: '', // 浜у搧缂栫爜
@@ -729,9 +787,15 @@
ordernum: '', // 涓嬪崟鍗曟暟
relse_qty: '', // 宸蹭笅鍗曟暟閲�
+ idTopInventory: '', // 椤剁骇鐗╂枡id
+ TopInventoryCode: '', // 椤剁骇鐗╂枡缂栫爜
+ TopInventoryName: '', // 椤剁骇鐗╂枡鍚嶇О
+
clerkuser: '', // 閿�鍞笟鍔″憳
saleOrderDeliveryDate: '', // 棰勮浜や粯鏃ユ湡
+
+ deptcode: '',
paystartdate: '', // 棰勮寮�宸ユ棩鏈�
payenddate: ''// 棰勮瀹屽伐鏃ユ湡
@@ -822,7 +886,7 @@
const data = {
erporderstus: this.form.erporderstus, // 璁㈠崟鐘舵�佺爜
- wkshopcode: this.form.wkshopcode, // 杞﹂棿缂栫爜
+ wkshopcode: this.form.wkshopcode.join(','), // 杞﹂棿缂栫爜
erpordercode: this.form.erpordercode, // 璁㈠崟缂栧彿
saleordercode: this.form.saleordercode, // 閿�鍞崟鍙�
@@ -900,7 +964,7 @@
},
// 閲嶇疆
reset() {
- this.form.wkshopcode = ''
+ this.form.wkshopcode = []
this.form.erporderstus = ''
this.form.erpordercode = ''
this.form.partcode = ''
@@ -953,28 +1017,41 @@
})
},
// 璁㈠崟鍏抽棴
- async orderClose(id) {
- this.tableData.forEach(item => {
- if (item.id === id) {
- if (item.status !== 'NEW') {
- return this.$message.info('姝よ鍗曢潪鏂拌鍗曪紝鏃犳硶鍏抽棴锛�')
- } else {
- this.$confirm('鏄惁纭鍏抽棴璁㈠崟?', '鎻愮ず', {
- confirmButtonText: '纭畾',
- cancelButtonText: '鍙栨秷',
- type: 'warning'
- }).then(() => {
- ClosedErpOrder({ erpordercode: item.wo, erporderid: id }).then(res => {
- if (res.code === '200') {
- this.$message.success('璁㈠崟鍏抽棴鎴愬姛!')
- this.getErpOrderSearch()
- }
- })
- }).catch(() => {
- this.$message.info('宸插彇娑堝叧闂紒')
- })
+ async orderClose(row) {
+ if (row.status !== 'NEW') {
+ return this.$message.info('姝よ鍗曢潪鏂拌鍗曪紝鏃犳硶鍏抽棴锛�')
+ } else {
+ this.$confirm('鏄惁纭鍏抽棴璁㈠崟?', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ ClosedErpOrder({ erpordercode: row.wo, erporderid: row.id }).then(res => {
+ if (res.code === '200') {
+ this.$message.success('璁㈠崟鍏抽棴鎴愬姛!')
+ this.getErpOrderSearch()
+ }
+ })
+ }).catch(() => {
+ this.$message.info('宸插彇娑堝叧闂紒')
+ })
+ }
+ },
+ // 璁㈠崟寮�鍚�
+ async orderOpen(row) {
+ this.$confirm('鏄惁纭鍚姩璁㈠崟锛岃璁㈠崟涓嬬殑鎵�鏈夊伐鍗曞皢浼氬紑鍚紒', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ ReverseClosedErpOrder({ erpordercode: row.wo, erporderid: row.id }).then(res => {
+ if (res.code === '200') {
+ this.$message.success('璁㈠崟鍚姩鎴愬姛!')
+ this.getErpOrderSearch()
}
- }
+ })
+ }).catch(() => {
+ this.$message.info('宸插彇娑堝叧闂紒')
})
},
batchHandle() {
@@ -1004,7 +1081,7 @@
'saleordercode': i.saleOrderCode,
// 'saleOrderDeliveryDate': i.saleOrderDeliveryDate
'saleOrderDeliveryDate': handleDatetime(new Date()) + ' 00:00:00',
-
+ deptcode: i.dept_code,
'paystartdate': i.planstartdate,
'payenddate': i.planenddate
})
@@ -1065,10 +1142,17 @@
this.dialogForm.markqty = parseFloat(row.qty) - parseFloat(row.relse_qty)
this.dialogForm.ordernum = 1
this.dialogForm.relse_qty = row.relse_qty
+
+ this.dialogForm.idTopInventory = row.idTopInventory
+ this.dialogForm.TopInventoryCode = row.TopInventoryCode
+ this.dialogForm.TopInventoryName = row.TopInventoryName
+
this.dialogForm.clerkuser = row.clerkuser
this.dialogForm.paystartdate = row.planstartdate
this.dialogForm.payenddate = row.planenddate
+
+ this.dialogForm.deptcode = row.dept_code
})
},
// 瀵硅瘽妗嗗叧闂簨浠�
@@ -1094,8 +1178,14 @@
ordernum: '', // 涓嬪崟鍗曟暟
relse_qty: '', // 宸蹭笅鍗曟暟閲�
+ idTopInventory: '', // 椤剁骇鐗╂枡id
+ TopInventoryCode: '', // 椤剁骇鐗╂枡缂栫爜
+ TopInventoryName: '', // 椤剁骇鐗╂枡鍚嶇О
+
payenddate: '', // 棰勮瀹屽伐鏃ユ湡
paystartdate: '', // 棰勮寮�宸ユ棩鏈�
+
+ deptcode: '',
saleOrderDeliveryDate: '' // 棰勮浜や粯鏃ユ湡
}
@@ -1130,6 +1220,11 @@
'partcode': this.dialogForm.partcode,
'wkshopcode': this.dialogForm.wkshopcode,
'warehousecode': this.dialogForm.warehousecode,
+
+ 'idTopInventory': this.dialogForm.idTopInventory,
+ 'TopInventoryCode': this.dialogForm.TopInventoryCode,
+ 'TopInventoryName': this.dialogForm.TopInventoryName,
+
'clerkuser': this.dialogForm.clerkuser,
'erpqty': this.dialogForm.erpqty,
'markqty': this.dialogForm.markqty,
@@ -1137,6 +1232,7 @@
'payenddate': this.dialogForm.payenddate,
'paystartdate': this.dialogForm.paystartdate,
'relse_qty': this.dialogForm.relse_qty,
+ deptcode: this.dialogForm.deptcode,
'saleOrderDeliveryDate': handleDatetime(this.dialogForm.saleOrderDeliveryDate) + ' 00:00:00'
}
@@ -1363,12 +1459,13 @@
padding: 10px 10px 0 10px;
}
-.statusItem{
+.statusItem {
margin-left: 20px;
cursor: pointer;
color: #a7a7a7;
}
-.statusItemLight{
+
+.statusItemLight {
font-weight: bolder;
color: #42b983;
}
--
Gitblit v1.9.3