From 62cb247da5cc1cc097c5afea402aabee05260431 Mon Sep 17 00:00:00 2001 From: xwt <2740516069@qq.com> Date: 星期四, 14 八月 2025 19:56:50 +0800 Subject: [PATCH] 首检巡检来料检入库检 --- pages/QC/XJ/Add.vue | 265 ++++++++++++++++++++++++++++++++++------------------- 1 files changed, 170 insertions(+), 95 deletions(-) diff --git a/pages/QC/XJ/Add.vue b/pages/QC/XJ/Add.vue index e393806..7dbd87b 100644 --- a/pages/QC/XJ/Add.vue +++ b/pages/QC/XJ/Add.vue @@ -110,17 +110,24 @@ </view> </view> - <!-- 鎿嶄綔鎸夐挳 --> - <view class="action-buttons"> - <button class="action-btn primary" v-if="isUpdate && !isShowTable" @click="getItem">鍒涘缓妫�楠屽崟骞剁敓鎴愰儴鍒嗛粯璁ゅ��</button> - <button class="action-btn secondary" v-if="!isUpdate && !isShowTable" @click="toImage">涓婁紶/鏌ョ湅鍥剧墖</button> - <button class="action-btn danger" v-if="!isUpdate && !formData.fcheckResu && !isShowTable" @click="removeXJ">鍒犻櫎鍗曟嵁</button> - <button class="action-btn warning" v-if="!isUpdate && !isShowTable" @click="saveRemarks">娣诲姞涓嶅悎鏍兼弿杩�</button> - <button class="action-btn primary" v-if="isShowTable" @click="getTable">鑾峰彇妫�楠岄」鐩�</button> - <button class="action-btn primary" v-if="isShowTable && isUpdate" @click="saveTable">鐢熸垚妫�楠岄」鐩�</button> - <button class="action-btn success" v-if="!isUpdate && !isShowTable" @click="getGenUpdate">鑾峰彇妫�楠岄」鐩�</button> - <button class="action-btn success" v-if="!isUpdate && !isShowTable" @click="submitInspection">鎻愪氦妫�楠�</button> - </view> + <!-- 鎿嶄綔鎸夐挳 --> + <view class="action-buttons"> + <!-- 鏂板缓鍗曟嵁鏃剁殑鍒涘缓鎸夐挳 --> + <button class="action-btn primary" v-if="isUpdate && !isShowTable" @click="save"> + 鍒涘缓妫�楠屽崟骞剁敓鎴愰儴鍒嗛粯璁ゅ�� + </button> + + <!-- 宸叉湁鍗曟嵁鐨勬搷浣滄寜閽� --> + <button class="action-btn secondary" v-if="!isUpdate && !isShowTable" @click="toImage">涓婁紶/鏌ョ湅鍥剧墖</button> + <button class="action-btn danger" v-if="!isUpdate && !formData.fcheckResu && !isShowTable && formData.fsubmit !== 1" @click="removeXJ">鍒犻櫎鍗曟嵁</button> + <button class="action-btn warning" v-if="!isUpdate && !isShowTable && formData.fsubmit !== 1" @click="saveRemarks">娣诲姞涓嶅悎鏍兼弿杩�</button> + + <!-- 妫�楠岄」鐩鐞嗘寜閽� --> + <button class="action-btn primary" v-if="isShowTable" @click="getTable">鑾峰彇妫�楠岄」鐩�</button> + <button class="action-btn primary" v-if="isShowTable && isUpdate" @click="saveTable">鐢熸垚妫�楠岄」鐩�</button> + <button class="action-btn success" v-if="!isUpdate && !isShowTable && formData.fsubmit !== 1" @click="getGenUpdate">鑾峰彇妫�楠岄」鐩�</button> + <button class="action-btn success" v-if="!isUpdate && !isShowTable && formData.fsubmit !== 1" @click="submitInspection">鎻愪氦妫�楠�</button> + </view> <!-- 淇敼涓嶅悎鏍兼弿杩板脊鍑烘 --> <view v-if="remarksPopup" class="overlay"> <view class="popup"> @@ -147,23 +154,27 @@ export default { data() { return { - formData: { - id: "", - releaseNo: "", - createBy: "", - createDate: "", - daa020: "", - itemNo: "", - billNo: "", - catQty: "", - detailMem: "", - taskNo: "", - fcheckResu: "", - boardModel: "", - planQty: "", - mocode: "", - boardStyle: "" - }, + formData: { + id: "", + releaseNo: "", + createBy: "", + createDate: "", + daa020: "", + daa002: "", // 娣诲姞浜у搧ID瀛楁 + itemNo: "", + itemName: "", // 娣诲姞鐗╂枡鍚嶇О + itemModel: "", // 娣诲姞瑙勬牸鍨嬪彿 + billNo: "", + catQty: "", + detailMem: "", + taskNo: "", + fcheckResu: "", + fsubmit: 0, // 娣诲姞鎻愪氦鐘舵�佸瓧娈� + boardModel: "", + planQty: "", + mocode: "", + boardStyle: "" + }, DAA020List: [], DAA020Index: -1, @@ -270,29 +281,75 @@ this.$showMessage("璇峰厛閫夋嫨妫�楠屽崟鍙�"); } }, - getItem() { - + save() { + // 楠岃瘉蹇呭~瀛楁 - 鍊熼壌SJ鐨勯獙璇侀�昏緫锛屼絾淇濇寔XJ鐨勫瓧娈甸獙璇� + if (!this.formData.billNo) { + this.$showMessage("璇烽�夋嫨宸ュ崟鍗曞彿"); + return; + } + + if (!this.formData.itemNo) { + this.$showMessage("鐗╂枡淇℃伅鑾峰彇澶辫触锛岃閲嶆柊閫夋嫨宸ュ崟"); + return; + } + + if (!this.tableData || this.tableData.length === 0) { + this.$showMessage("姝ょ墿鏂欐病鏈夊惎鐢ㄧ殑妫�楠岄」鐩紝璇风淮鎶�!"); + return; + } - - if (!this.formData.billNo) { - this.$showMessage("璇烽�夋嫨宸ュ崟鍗曞彿"); - return; - } - - this.$post({ - url: "/XJ/save", - data: { - from: this.formData, - userNo: this.$loginInfo.account, - items: this.tableData - } - }).then(res => { - this.formData.id = res.data.tbBillList; - this.$showMessage("鐢熸垚妫�楠岄」鐩垚鍔�"); - this.init(); - this.isUpdate = false; - }); - }, + const saveData = { + ReleaseNo: this.formData.releaseNo, + ItemNo: this.formData.itemNo, + BillNo: this.formData.billNo, + DepartmentId: this.selectedDepartment, // 鍙娇鐢ㄩ儴闂↖D + WorkShop: null, // 鏄庣‘璁剧疆涓簄ull锛岄伩鍏嶆暟鎹簱瀛楁閿欒 + ItemId: this.formData.daa002, // 浣跨敤宸ュ崟涓殑浜у搧ID + PlanQty: this.formData.planQty, + CreateBy: this.formData.createBy, + CreateDate: this.formData.createDate, + FcheckDate: new Date(), + Remarks: this.formData.remarks || "" + }; + + // 璋冭瘯淇℃伅 + console.log("鍒涘缓妫�楠屽崟鏁版嵁:", { + formData: this.formData, + selectedDepartment: this.selectedDepartment, + WORKSHOP: this.WORKSHOP, + saveData: saveData, + tableData: this.tableData + }); + + this.$post({ + url: "/XJ/save", + data: { + from: saveData, + userNo: this.$loginInfo.account, + items: this.tableData + } + }).then(res => { + if (res.data.tbBillList) { + this.formData.id = res.data.tbBillList; + + // 濡傛灉杩斿洖浜嗗畬鏁寸殑妫�楠岄」鐩俊鎭紝鏇存柊tableData + if (res.data.xjDto && res.data.xjDto.items) { + this.tableData = res.data.xjDto.items; + } + + this.$showMessage("鍒涘缓妫�楠屽崟骞剁敓鎴愰粯璁ゅ�兼垚鍔�"); + this.isUpdate = false; + + // 鏇存柊formData鐨勫叾浠栧瓧娈� + this.formData = { ...this.formData, ...saveData }; + } else { + this.$showMessage("鍒涘缓妫�楠屽崟澶辫触锛岃妫�鏌ユ暟鎹�"); + } + }).catch(err => { + console.error("鍒涘缓妫�楠屽崟閿欒:", err); + this.$showMessage("鍒涘缓妫�楠屽崟澶辫触锛�" + (err.message || "鏈煡閿欒")); + }); + }, // 鍔犺浇閮ㄩ棬鍒楄〃 loadDepartments() { @@ -374,20 +431,28 @@ this.DAA020Index = event.mp.detail.value; this.lineNo = this.lineList[this.DAA020Index].lineNo; + // 璁剧疆绾夸綋缂栧彿鍒癴ormData + this.formData.daa020 = this.lineList[this.DAA020Index].lineName; this.$post({ - url: "/XJ/getDaa001", + url: "/XJ/getWorkOrderWithItem", // 璋冪敤鏂扮殑API鑾峰彇宸ュ崟璇︾粏淇℃伅 data: { daa020: this.lineNo } }).then(res => { //濉厖宸ュ崟鍙风殑鏁版嵁婧� this.schemeResult = res.data.tbBillList; - this.DAA001List = this.schemeResult.map(s => s.Daa001); + this.DAA001List = this.schemeResult.map(s => s.daa001); // 淇敼涓哄皬鍐� //鍙樹负榛樿绌哄�肩殑鐘舵�� this.DAA001Index = -1; this.formData.billNo = ""; + // 娓呯┖鐗╂枡淇℃伅 + this.formData.itemNo = ""; + this.formData.itemName = ""; + this.formData.itemModel = ""; + this.formData.planQty = ""; + this.tableData = []; }) }, @@ -396,13 +461,16 @@ onDaa001Change(event) { this.DAA001Index = event.mp.detail.value; const selectedWorkOrder = this.schemeResult[this.DAA001Index]; - this.formData.billNo = selectedWorkOrder.Daa001; - this.formData.planQty = selectedWorkOrder.Daa008; + + // 璁剧疆宸ュ崟淇℃伅 + this.formData.billNo = selectedWorkOrder.daa001; // 淇敼涓哄皬鍐� + this.formData.planQty = selectedWorkOrder.daa008; // 淇敼涓哄皬鍐� + this.formData.daa002 = selectedWorkOrder.daa002; // 璁剧疆浜у搧ID // 浠庡伐鍗曟暟鎹腑鑾峰彇鐗╂枡淇℃伅 - this.formData.itemNo = selectedWorkOrder.ItemNo; // 鐗╂枡缂栫爜 - this.formData.itemName = selectedWorkOrder.ItemName; // 鐗╂枡鍚嶇О - this.formData.itemModel = selectedWorkOrder.ItemModel; // 瑙勬牸鍨嬪彿 + this.formData.itemNo = selectedWorkOrder.itemNo; // 淇敼涓哄皬鍐� + this.formData.itemName = selectedWorkOrder.itemName; // 淇敼涓哄皬鍐� + this.formData.itemModel = selectedWorkOrder.itemModel; // 淇敼涓哄皬鍐� // 鑾峰彇妫�楠岄」鐩� this.$post({ @@ -419,46 +487,53 @@ this.isSubmit = true; this.tableData = []; } + }).catch(err => { + console.error("鑾峰彇妫�楠岄」鐩敊璇�:", err); + this.$showMessage("鑾峰彇妫�楠岄」鐩け璐�"); + this.tableData = []; }); }, - init() { - this.$post({ - url: "/XJ/getPage", - data: { - id: this.formData.id, - pageIndex: 1, - limit: 1, - } - }).then(res => { - let data = res.data.tbBillList[0]; - if (data) { - this.formData = data; - - this.$post({ - url: "/XJ/getJYItem", - data: { - pid: this.formData.id - } - }).then(res1 => { - let tableData = res1.data.tbBillList - //褰撳凡妫�楠屼釜鏁伴兘涓嶄负绌烘椂鎸夌収妫�娴嬬粨鏋勬帓搴� - tableData.sort((a, b) => { - if (a.result === '鏈畬鎴�' && b.result === '鍚堟牸') { - return -1; - } else if (a.result === '鍚堟牸' && b.result === '鏈畬鎴�') { - return 1; - } else { - return 0; - } - }); - this.tableData = tableData; - if (this.tableData.length === 0) { - this.isShowTable = true; - } - }) - } - }); - }, + init() { + this.$post({ + url: "/XJ/getPage", + data: { + id: this.formData.id, + pageIndex: 1, + limit: 1, + } + }).then(res => { + let data = res.data.tbBillList[0]; + if (data) { + this.formData = data; + + // 涓嶅啀鏍规嵁fsubmit瀛楁淇敼isUpdate鐘舵�� + // 鑰屾槸閫氳繃鎸夐挳鐨剉-if鏉′欢鏉ユ帶鍒舵樉绀� + + this.$post({ + url: "/XJ/getJYItem", + data: { + pid: this.formData.id + } + }).then(res1 => { + let tableData = res1.data.tbBillList + //褰撳凡妫�楠屼釜鏁伴兘涓嶄负绌烘椂鎸夌収妫�娴嬬粨鏋勬帓搴� + tableData.sort((a, b) => { + if (a.result === '鏈畬鎴�' && b.result === '鍚堟牸') { + return -1; + } else if (a.result === '鍚堟牸' && b.result === '鏈畬鎴�') { + return 1; + } else { + return 0; + } + }); + this.tableData = tableData; + if (this.tableData.length === 0) { + this.isShowTable = true; + } + }) + } + }); + }, toDetail(item) { if (this.isUpdate) { uni.showToast({ -- Gitblit v1.9.3