From c3c23631be761f336789f4cc11d33fab2ec9f125 Mon Sep 17 00:00:00 2001 From: xwt <2740516069@qq.com> Date: 星期二, 12 八月 2025 09:43:02 +0800 Subject: [PATCH] 来料检修改,推送钉钉修改 --- pages/QC/XJ/Add.vue | 257 +++++++++++++++++++++++++++++++++++---------------- 1 files changed, 177 insertions(+), 80 deletions(-) diff --git a/pages/QC/XJ/Add.vue b/pages/QC/XJ/Add.vue index da84f2f..e393806 100644 --- a/pages/QC/XJ/Add.vue +++ b/pages/QC/XJ/Add.vue @@ -24,28 +24,32 @@ <view class="info-value">{{ formData.createDate }}</view> </view> <view class="info-item"> + <view class="info-label">鐢熶骇杞﹂棿</view> + <picker v-if="isUpdate" class="picker-input" name="selector" :range="departmentList" range-key="departmentname" + @change="onDepartmentChange"> + <view class="picker-value">{{ getSelectedDepartmentName() || '璇烽�夋嫨杞﹂棿' }}</view> + </picker> + <view v-else class="info-value">{{ WORKSHOP }}</view> + </view> + <view class="info-item"> <view class="info-label">绾夸綋缂栧彿</view> - <picker v-if="isUpdate" class="picker-input" name="selector" :range="DAA020List" + <picker v-if="isUpdate" class="picker-input" name="selector" :range="filteredDAA020List" @change="onDaa020Change"> - <view class="picker-value">{{ DAA020List[DAA020Index] || '璇烽�夋嫨' }}</view> + <view class="picker-value">{{ filteredDAA020List[DAA020Index] || '璇烽�夋嫨' }}</view> </picker> <view v-else class="info-value">{{ formData.daa020 }}</view> </view> <view class="info-item"> - <view class="info-label">鐗╂枡缂栫爜</view> - <picker v-if="isUpdate" class="picker-input" name="selector" :range="ItemList" - @change="onItemChange"> - <view class="picker-value">{{ ItemList[ItemIndex] || '璇烽�夋嫨' }}</view> - </picker> - <view v-else class="info-value">{{ formData.itemNo }}</view> - </view> - <view class="info-item"> - <view class="info-label">璁″垝缂栧彿</view> + <view class="info-label">宸ュ崟鍗曞彿</view> <picker v-if="isUpdate" class="picker-input" name="selector" :range="DAA001List" @change="onDaa001Change"> <view class="picker-value">{{ DAA001List[DAA001Index] || '璇烽�夋嫨' }}</view> </picker> <view v-else class="info-value">{{ formData.billNo }}</view> + </view> + <view class="info-item"> + <view class="info-label">鐗╂枡缂栫爜</view> + <view class="info-value">{{ formData.itemNo }}</view> </view> <view class="info-item"> <view class="info-label">鐗╂枡鍚嶇О</view> @@ -114,6 +118,8 @@ <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 v-if="remarksPopup" class="overlay"> @@ -161,17 +167,14 @@ DAA020List: [], DAA020Index: -1, + filteredDAA020List: [], - DAA001List: [], + DAA001List: [], DAA001Index: -1, schemeResult: [], - - isShowTable: false, - - ItemList: [], - ItemIndex: -1, - boardItems: [], - + + isShowTable: false, + lineList: [], lineNo: "", @@ -184,6 +187,11 @@ remarks: "", remarksPopup: false, + + // 閮ㄩ棬閫夋嫨鐩稿叧 + departmentList: [], + selectedDepartment: '', + WORKSHOP: '', }; }, onLoad(options) { @@ -213,7 +221,11 @@ }).then(res => { this.lineList = res.data.tbBillList; this.DAA020List = res.data.tbBillList.map(item => item.lineName); + this.filteredDAA020List = this.DAA020List; // 鍒濆鏃舵樉绀烘墍鏈夌嚎浣� }) + + // 鑾峰彇閮ㄩ棬鍒楄〃 + this.loadDepartments(); } }, methods: { @@ -260,13 +272,10 @@ }, getItem() { - if (this.isSubmit) { - this.$showMessage("姝ょ墿鏂欐棤鍚敤鐨勬楠岄」鐩紝璇风淮鎶�!"); - return; - } + if (!this.formData.billNo) { - this.$showMessage("璇烽�夋嫨璁″垝缂栧彿"); + this.$showMessage("璇烽�夋嫨宸ュ崟鍗曞彿"); return; } @@ -284,86 +293,132 @@ this.isUpdate = false; }); }, - //鐢熶骇绾垮埆閫夋嫨骞跺垵濮嬭瘽宸ュ崟鍙� + + // 鍔犺浇閮ㄩ棬鍒楄〃 + loadDepartments() { + this.$post({ + url: "/XJ/getDepartmentsWithLines" + }).then(res => { + if (res.status === 0) { + this.departmentList = res.data.tbBillList; + } else { + this.$showMessage("鑾峰彇閮ㄩ棬鍒楄〃澶辫触"); + } + }); + }, + + // 閮ㄩ棬閫夋嫨鍙樺寲澶勭悊 + onDepartmentChange(e) { + const index = e.detail.value; + if (index >= 0 && index < this.departmentList.length) { + const selectedDept = this.departmentList[index]; + this.selectedDepartment = selectedDept.departmentid; + this.WORKSHOP = selectedDept.departmentname; + + // 鏍规嵁閫変腑鐨勯儴闂ㄨ繃婊ょ嚎浣撳垪琛� + this.filterLinesByDepartment(selectedDept.departmentid); + + // 淇濆瓨閮ㄩ棬閫夋嫨 + this.saveDepartmentSelection(); + } + }, + + // 鑾峰彇閫変腑鐨勯儴闂ㄥ悕绉� + getSelectedDepartmentName() { + if (!this.selectedDepartment) return ''; + const dept = this.departmentList.find(item => item.departmentid === this.selectedDepartment); + return dept ? dept.departmentname : ''; + }, + + // 淇濆瓨閮ㄩ棬閫夋嫨 + saveDepartmentSelection() { + if (this.formData.id && this.selectedDepartment) { + this.$post({ + url: "/XJ/saveDepartmentSelection", + data: { + id: this.formData.id, + departmentId: this.selectedDepartment, + departmentName: this.WORKSHOP + } + }).then(res => { + if (res.status === 0) { + this.$showMessage("閮ㄩ棬閫夋嫨宸蹭繚瀛�"); + } + }); + } + }, + + // 鏍规嵁閮ㄩ棬杩囨护绾夸綋鍒楄〃 + filterLinesByDepartment(departmentId) { + this.$post({ + url: "/XJ/getLinesByDepartment", + data: { + departmentId: departmentId + } + }).then(res => { + if (res.status === 0) { + this.filteredDAA020List = res.data.tbBillList.map(item => item.lineName); + this.lineList = res.data.tbBillList; + // 閲嶇疆绾夸綋閫夋嫨绱㈠紩 + this.DAA020Index = -1; + this.formData.daa020 = ''; + } else { + this.$showMessage("鑾峰彇绾夸綋鍒楄〃澶辫触"); + } + }); + }, + + //鐢熶骇绾垮埆閫夋嫨骞跺垵濮嬪寲宸ュ崟鍙� onDaa020Change(event) { //鑾峰彇鐢熶骇绾垮埆鐨勪笅鏍囧湴鍧� this.DAA020Index = event.mp.detail.value; - + this.lineNo = this.lineList[this.DAA020Index].lineNo; - - this.$post({ - url: "/XJ/getBoardItem", - data: { - lineNo: this.lineNo - } - }).then(res => { - //濉厖宸ュ崟鍙风殑鏁版嵁婧� - this.boardItems = res.data.tbBillList; - this.ItemList = this.boardItems.map(item => item.itemNo); - //鍙樹负榛樿绌哄�肩殑鐘舵�� - this.ItemIndex = -1; - }) - - }, - onItemChange(event) { - this.ItemIndex = event.mp.detail.value; - this.formData.itemNo = this.boardItems[this.ItemIndex].itemNo;//涓昏鏄敼杩欓噷 - this.formData.itemId = this.boardItems[this.ItemIndex].id;//涓昏鏄敼杩欓噷 - this.formData.itemName = this.boardItems[this.ItemIndex].itemName;//涓昏鏄敼杩欓噷 - this.formData.itemModel = this.boardItems[this.ItemIndex].itemModel;//涓昏鏄敼杩欓噷 + this.$post({ url: "/XJ/getDaa001", data: { - daa020: this.lineNo, - item: this.formData.itemNo + 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 = ""; }) + }, - //閫夊彇宸ュ崟濉厖鐗╂枡鍙峰拰鍏朵粬淇℃伅 + + //閫夊彇宸ュ崟濉厖鐗╂枡鍙峰拰鍏朵粬淇℃伅 onDaa001Change(event) { this.DAA001Index = event.mp.detail.value; - this.formData.billNo = this.schemeResult[this.DAA001Index].daa001; - this.formData.planQty = this.schemeResult[this.DAA001Index].daa008; - //琛ㄥ崟涓殑閮ㄥ垎瀛楁璧嬪�� + const selectedWorkOrder = this.schemeResult[this.DAA001Index]; + this.formData.billNo = selectedWorkOrder.Daa001; + this.formData.planQty = selectedWorkOrder.Daa008; + + // 浠庡伐鍗曟暟鎹腑鑾峰彇鐗╂枡淇℃伅 + this.formData.itemNo = selectedWorkOrder.ItemNo; // 鐗╂枡缂栫爜 + this.formData.itemName = selectedWorkOrder.ItemName; // 鐗╂枡鍚嶇О + this.formData.itemModel = selectedWorkOrder.ItemModel; // 瑙勬牸鍨嬪彿 + + // 鑾峰彇妫�楠岄」鐩� this.$post({ - url: "/XJ/getItem", + url: "/XJ/setJYItem", data: { - daa001: this.formData.billNo + itemNo: this.formData.itemNo } }).then(res => { - let data = res.data.tbBillList[0]; - //褰撹繑鍥炵殑缁撴灉闆嗕负绌烘椂缃┖鍘熸湁鐨勫�� - if (!data) { - this.formData.billNo = ""; - this.formData.itemNo = ""; - this.formData.planQty = ""; + if (res.data.tbBillList.length > 0) { + this.tableData = res.data.tbBillList; + this.isSubmit = false; + } else { + this.$showMessage("姝ょ墿鏂欐病鏈夊惎鐢ㄧ殑妫�楠岄」鐩紝璇风淮鎶�!"); + this.isSubmit = true; this.tableData = []; - return; } - - this.$post({ - url: "/XJ/setJYItem", - data: { - itemNo: this.formData.itemNo - } - }).then(res => { - if (res.data.tbBillList.length > 0) { - this.tableData = res.data.tbBillList; // 鍦ㄧ澶村嚱鏁颁腑锛宼his 鎸囧悜澶栧眰浣滅敤鍩熺殑 this - this.isSubmit = false; - } else { - this.$showMessage("姝ょ墿鏂欐病鏈夊惎鐢ㄧ殑妫�楠岄」鐩紝璇风淮鎶�!"); - this.isSubmit = true; - this.tableData = []; - } - }); }); }, init() { @@ -480,6 +535,43 @@ this.isUpdate = false; this.init(); }) + }, + submitInspection() { + if (this.formData.id) { + this.$post({ + url: "/XJ/SjSubmit", + data: { + id: this.formData.id, + userNo: this.$loginInfo.account + } + }).then(res => { + if (res.data.tbBillList) { + this.$showMessage("鎻愪氦鎴愬姛"); + this.init(); + } + }); + } + }, + getGenUpdate() { + if (!this.formData.id || !this.formData.releaseNo) { + this.$showMessage("璇峰厛淇濆瓨妫�楠屽崟锛�"); + return; + } + this.$post({ + url: "/XJ/GenUpdate", + data: { + id: this.formData.id, + no: this.formData.releaseNo, + user: this.$loginInfo.account + } + }).then(res => { + if (res.data.result === 0) { + this.$showMessage("鑾峰彇妫�楠岄」鐩垚鍔�"); + this.init(); + } else { + this.$showMessage(res.data.message || "鑾峰彇澶辫触"); + } + }); } }, onShow() { @@ -725,6 +817,11 @@ color: white; } + .action-btn.success { + background-color: #2ecc71; + color: white; + } + /* 寮瑰嚭妗嗘牱寮� */ .overlay { position: fixed; -- Gitblit v1.9.3