From dab59f7624a2fb8d4114bb67b554ff09d91f810c Mon Sep 17 00:00:00 2001 From: spring <2396852758@qq.com> Date: 星期四, 10 四月 2025 13:07:36 +0800 Subject: [PATCH] Merge branch 'radio-frequency-cable' of http://114.132.189.42:9002/r/lims-ruoyi-before into radio-frequency-cable --- src/views/business/reliabilityPlan/index.vue | 68 +++++++++++++++++++++++++++------ 1 files changed, 55 insertions(+), 13 deletions(-) diff --git a/src/views/business/reliabilityPlan/index.vue b/src/views/business/reliabilityPlan/index.vue index c989737..a0d9c30 100644 --- a/src/views/business/reliabilityPlan/index.vue +++ b/src/views/business/reliabilityPlan/index.vue @@ -97,12 +97,16 @@ <el-cascader v-model="materialForm.materialName" :options="itemParameterData.cascaderField.sample.tree" :props="{ value: 'name', label: 'name', checkStrictly: false, multiple: false, emitPath: false }" :show-all-levels="false" clearable filterable placeholder="璇烽�夋嫨鍘熻緟鏉愬悕绉�" size="small" style="width: 100%;" - :disabled="operationType === 'review' || operationType === 'submit'"> + :disabled="operationType === 'review' || operationType === 'submit'" @change="handleMaterialNameChange"> </el-cascader> </el-form-item> <el-form-item label="闆朵欢鍙�" prop="partNo"> - <el-input v-model="materialForm.partNo" placeholder="璇峰~鍐欓浂浠跺彿" - :disabled="operationType === 'review' || operationType === 'submit'"></el-input> + <el-select v-model="materialForm.partNo" placeholder="璇烽�夋嫨" clearable filterable + :disabled="operationType === 'review' || !materialForm.materialName || operationType === 'submit'" + style="width: 100%;"> + <el-option v-for="item in materialPartNoOption" :key="item.id" :label="item.partNo" :value="item.partNo"> + </el-option> + </el-select> </el-form-item> <!-- <el-form-item label="瀹℃牳浜�" prop="reviewerId"> <el-select v-model="proPlanForm.reviewerId" clearable filterable size="small" style="width: 50%;" @@ -159,6 +163,7 @@ tableData: [], typeOption: [], partNoOption: [], // 娣诲姞浜у搧鍨嬪彿閫夐」鏁版嵁 + materialPartNoOption:[], tableLoading: false, itemParameterData: { cascaderField: { @@ -470,19 +475,56 @@ } } else { this.materialDia = true - if (this.operationType === 'add') { - this.materialForm = { - id: '', - materialName: '', - partNo: '', - state: '', - reviewerId: '' + if (this.operationType === 'add') { + this.materialForm = { + id: '', + materialName: '', + partNo: '', + state: '', + reviewerId: '' + } + } else { + this.materialForm = { ...row } + // 缂栬緫鏃惰幏鍙栭�変腑鑺傜偣鐨処D骞跺姞杞界浉鍏虫暟鎹� + const selectedNode = this.findNodeById(this.itemParameterData.cascaderField.sample.tree, row.materialName) + if (selectedNode) { + this.getMaterialPartNoOptions(selectedNode.id) + } } - } else { - this.materialForm = { ...row } - } } }, + + //鍘熻緟鏉愰浂浠跺彿閫夋嫨 + handleMaterialNameChange(value) { + if (value) { + const selectedNode = this.findNodeById(this.itemParameterData.cascaderField.sample.tree, value) + if (selectedNode) { + this.getMaterialPartNoOptions(selectedNode.id) + } + } else { + this.materialPartNoOption = [] + this.materialForm.partNo = '' + } + }, + + // 鑾峰彇鍘熻緟鏉愰浂浠跺彿鍒楄〃 + getMaterialPartNoOptions(materialId) { + if (!materialId) { + this.materialPartNoOption = [] + return + } + getPartNoList({ productId: materialId }).then(res => { + if (res.code === 200) { + this.materialPartNoOption = res.data || [] + if (this.materialPartNoOption.length === 0) { + this.materialForm.partNo = '' + } + } + }).catch(() => { + this.materialPartNoOption = [] + this.materialForm.partNo = '' + }) + }, // 鎴愬搧淇℃伅鎻愪氦 submitProForm(state) { this.submitProLoading = true -- Gitblit v1.9.3