From ba15d76ff0ec80ee759913511158d4333f6e6c59 Mon Sep 17 00:00:00 2001 From: cuijian <cuijian@xalxzn.com> Date: 星期五, 29 八月 2025 18:21:22 +0800 Subject: [PATCH] 日常业务问题修改、工具参数查询增加 --- src/views/tms/lossBound/modules/LossboundModal.vue | 131 ++++++++++++++++++++++++++----------------- 1 files changed, 78 insertions(+), 53 deletions(-) diff --git a/src/views/tms/lossBound/modules/LossboundModal.vue b/src/views/tms/lossBound/modules/LossboundModal.vue index 3942e81..e10bd0c 100644 --- a/src/views/tms/lossBound/modules/LossboundModal.vue +++ b/src/views/tms/lossBound/modules/LossboundModal.vue @@ -13,16 +13,19 @@ <a-row> <a-col :span="12"> <a-form-model-item label="鎶ユ崯鍗曞崟鍙�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderCode"> - <j-input v-model="model.orderCode" placeholder="绯荤粺鑷姩鐢熸垚" :disabled="true"></j-input> + <a-input v-model="model.orderCode" placeholder="绯荤粺鑷姩鐢熸垚" :disabled="true"></a-input> </a-form-model-item> </a-col> - <a-col :span="12"> - <a-form-model-item label="鎶ユ崯浜�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="losser"> - <j-dict-select-tag :disabled="disableSubmit" - v-model="model.losser" dictCode="sys_user,realname,id" + <a-col :span="12"> + <a-form-model-item label="缁忔墜浜�" :labelCol="labelCol" :wrapperCol="wrapperCol" + prop="handler"> + + <j-dict-select-tag :disabled="true" + v-model="model.handler" dictCode="sys_user,realname,id" placeholder="璇烽�夋嫨" /> </a-form-model-item> </a-col> + </a-row> <a-row> <a-col :span="12"> @@ -43,16 +46,14 @@ </a-col> </a-row> <a-row> - - <a-col :span="12"> - <a-form-model-item v-if="addShow" label="缁忔墜浜�" :labelCol="labelCol" :wrapperCol="wrapperCol" - prop="handler"> - + <!-- <a-col :span="12"> + <a-form-model-item label="鎶ユ崯浜�" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="losser"> <j-dict-select-tag :disabled="disableSubmit" - v-model="model.handler" dictCode="sys_user,realname,id" + v-model="model.losser" dictCode="sys_user,realname,id" placeholder="璇烽�夋嫨" /> </a-form-model-item> - </a-col> + </a-col> --> + <a-col :span="12"> <a-form-model-item v-if="addShow" label="瀹℃牳鐘舵��" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="orderStatus"> @@ -60,9 +61,7 @@ placeholder="璇烽�夋嫨瀹℃牳鐘舵��" disabled /> </a-form-model-item> </a-col> - </a-row> - <a-row> - <a-col :span="12"> + <a-col :span="12"> <a-form-model-item v-if="addShow" label="瀹℃牳鏃堕棿" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="approvalDate"> @@ -72,8 +71,8 @@ </a-col> </a-row> <a-row> - <a-col :span="12"> - <a-form-model-item v-if="addShow" label="瀹℃牳鎰忚" :labelCol="labelCol" :wrapperCol="wrapperCol" + <a-col :span="24"> + <a-form-model-item v-if="addShow" label="瀹℃牳鎰忚" :labelCol="{span:2}" :wrapperCol="{span:20}" prop="approvalOpinion"> <a-input v-model="model.approvalOpinion" placeholder="璇疯緭鍏ュ鏍告剰瑙�" disabled></a-input> </a-form-model-item> @@ -81,15 +80,13 @@ </a-row> <a-row> <a-col :span="12"> - <a-form-model-item label="澶囨敞" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="remark"> - <a-textarea :disabled="disableSubmit" v-model="model.remark" rows="4" placeholder="璇疯緭鍏ュ娉�" /> + <a-form-model-item label="鎶ユ崯鍘熷洜" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="lossReason"> + <a-textarea :disabled="disableSubmit" v-model="model.lossReason" rows="4" placeholder="璇疯緭鍏ユ姤鎹熷師鍥�" /> </a-form-model-item> </a-col> - </a-row> - <a-row> <a-col :span="12"> - <a-form-model-item label="鎶ユ崯鍘熷洜" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="lossReason"> - <a-textarea :disabled="disableSubmit" v-model="model.lossReason" rows="4" placeholder="璇疯緭鍏ュ娉�" /> + <a-form-model-item label="澶囨敞" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="remark"> + <a-textarea :disabled="disableSubmit" v-model="model.remark" rows="4" placeholder="璇疯緭鍏ュ娉�" /> </a-form-model-item> </a-col> </a-row> @@ -113,9 +110,20 @@ @change="handleTableChange"> <template v-for="col in columns" :slot="col.dataIndex" slot-scope="text, record, index"> - <a-input-number :disabled="disableSubmit" :value="text" v-if="col.dataIndex == 'lossNumber'" :min="0" - :max="99999" - @change="(e) => handleChange(e, record.key, col, index)" style="width: 100%;" /> + <div v-if="col.dataIndex == 'lossNumber'"> + <a-input-number + :disabled="record.accuracyClass === '1'" + :value="text" + :min="1" + :max="99999" + @change="(e) => handleChange(e, record.key, col, index)" + style="width: 100%;" + /> + <div v-if="record.lossNumberError" style="color: #f5222d; font-size: 12px; margin-top: 4px;"> + {{ record.lossNumberMsg }} + </div> + </div> + <a-textarea v-if="col.dataIndex == 'lossReason'" :disabled="disableSubmit" @@ -193,10 +201,10 @@ width: 50 }, { - title: '鍒�鍏风紪鍙�', - dataIndex: 'toolCode', + title: '鍒�鍏风紪鐮�', + dataIndex: 'toolId', align: 'center', - width: 150 + width: 200 }, { @@ -205,7 +213,22 @@ align: 'center', width: 150 }, + { + title: '鎶ユ崯鍘熷洜', + width: 150, + dataIndex: 'lossReason', + align: 'center', + scopedSlots: { customRender: 'lossReason' } + }, + { + title: '鎶ユ崯鏁伴噺', + dataIndex: 'lossNumber', + align: 'center', + width: 150, + scopedSlots: { customRender: 'lossNumber' }, + key: 'lossNumber' + }, { title: '涓枃鍚嶇О', dataIndex: 'chineseName', @@ -245,21 +268,7 @@ dataIndex: 'goodsShelvesId', align: 'center' }, - { - title: '鎶ユ崯鍘熷洜', - width: 150, - dataIndex: 'lossReason', - align: 'center', - scopedSlots: { customRender: 'lossReason' } - }, - { - title: '鎶ユ崯鏁伴噺', - dataIndex: 'lossNumber', - align: 'center', - width: 150, - scopedSlots: { customRender: 'lossNumber' } - }, { title: '澶囨敞', @@ -304,8 +313,8 @@ this.$bus.$on('selectionRows', (data) => { for (let i = 0; i < data.length; i++) { this.dataSource.push({ - toolId: data[i].id, - toolCode: data[i].toolCode, + toolCode:data[i].toolCode, + toolId:data[i].toolId, classifyId: data[i].classifyId, applicationType: data[i].applicationType_dictText, chineseName: data[i].chineseName, @@ -314,8 +323,11 @@ supplierId: data[i].supplierId, goodsShelvesId: data[i].positionCode, toolMaterial: data[i].toolMaterial, - partMaterial: data[i].partMaterial - + partMaterial: data[i].partMaterial, + lossNumber: "1", // 鍒濆鍖栨姤鎹熸暟閲� + lossNumberError: false, // 鏍¢獙鐘舵�� + lossNumberMsg: '', // 閿欒淇℃伅 + accuracyClass: data[i].accuracyClass }) } this.ipagination.total = this.dataSource.length @@ -332,13 +344,15 @@ const target = temp.filter(item => key === item.key)[index] if (target) { target[column.dataIndex] = value - this.dataSource = temp - if (column.dataIndex === 'lossNumber') { - target[column.dataIndex] = value - } - if (column.dataIndex === 'lossReason') { - target[column.dataIndex] = value + if (column.dataIndex === 'lossNumber') { + if (value === null || value === undefined || value <= 0) { + target.lossNumberError = true + target.lossNumberMsg = '鎶ユ崯鏁伴噺涓嶈兘涓虹┖涓斿繀椤诲ぇ浜�0' + } else { + target.lossNumberError = false + target.lossNumberMsg = '' + } } this.dataSource = temp } @@ -398,6 +412,17 @@ // 瑙﹀彂琛ㄥ崟楠岃瘉 this.$refs.form.validate(valid => { if (valid) { + let isTableValid = true + this.dataSource.forEach((row, index) => { + this.handleChange(row.lossNumber, row.key, { dataIndex: 'lossNumber' }, index) + if (row.lossNumberError) { + isTableValid = false + } + }) + + if (!isTableValid) { + return false + } this.model.toolsLossBoundDetailList = this.dataSource that.confirmLoading = true let httpurl = '' -- Gitblit v1.9.3