From f1f40e9a28fafab5d884630b8900b11060ebe9fc Mon Sep 17 00:00:00 2001 From: 马宇豪 <978517621@qq.com> Date: 星期二, 31 十月 2023 08:53:35 +0800 Subject: [PATCH] 修改 --- src/views/analyse/assessApply/components/riskUnitDialog.vue | 84 ++++++++++++++++++++++-------------------- 1 files changed, 44 insertions(+), 40 deletions(-) diff --git a/src/views/analyse/assessApply/components/riskUnitDialog.vue b/src/views/analyse/assessApply/components/riskUnitDialog.vue index fe72aae..edf1305 100644 --- a/src/views/analyse/assessApply/components/riskUnitDialog.vue +++ b/src/views/analyse/assessApply/components/riskUnitDialog.vue @@ -5,43 +5,43 @@ <el-row :gutter="35"> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="风险单元编号" prop="riskCode"> - <el-input v-model="riskUnitDialogState.riskUnitForm.riskCode" placeholder="风险单元编号" clearable class="input-length"></el-input> + <el-input v-model="riskUnitDialogState.riskUnitForm.riskCode" :disabled="riskUnitDialogState.disabled" placeholder="风险单元编号" clearable class="input-length"></el-input> </el-form-item> </el-col> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="风险单元名称" prop="riskName"> - <el-input v-model="riskUnitDialogState.riskUnitForm.riskName" placeholder="风险单元名称" clearable class="input-length"></el-input> + <el-input v-model="riskUnitDialogState.riskUnitForm.riskName" :disabled="riskUnitDialogState.disabled" placeholder="风险单元名称" clearable class="input-length"></el-input> </el-form-item> </el-col> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="风险单元类型" prop="riskUnitTypeId"> - <el-select v-model="riskUnitDialogState.riskUnitForm.riskUnitTypeId" placeholder="风险单元类型" clearable class="input-length"> + <el-select v-model="riskUnitDialogState.riskUnitForm.riskUnitTypeId" :disabled="riskUnitDialogState.disabled" placeholder="风险单元类型" clearable class="input-length"> <el-option v-for="item in riskUnitDialogState.riskTypeList" :key="item.id" :label="item.riskType" :value="item.id"></el-option> </el-select> </el-form-item> </el-col> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="负责人" prop="liabilityUserId"> - <el-select v-model="riskUnitDialogState.riskUnitForm.liabilityUserId" placeholder="负责人" clearable class="input-length"> + <el-select v-model="riskUnitDialogState.riskUnitForm.liabilityUserId" :disabled="riskUnitDialogState.disabled" placeholder="负责人" clearable class="input-length"> <el-option v-for="item in riskUnitDialogState.allPersonList" :key="item.id" :label="item.personName" :value="item.id"></el-option> </el-select> </el-form-item> </el-col> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="负责部门" prop="liabilityDep"> - <el-input v-model="riskUnitDialogState.riskUnitForm.liabilityDep" placeholder="负责部门" clearable class="input-length"></el-input> + <el-input v-model="riskUnitDialogState.riskUnitForm.liabilityDep" :disabled="riskUnitDialogState.disabled" placeholder="负责部门" clearable class="input-length"></el-input> </el-form-item> </el-col> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20" v-if="riskUnitDialogState.experimentType === 1"> <el-form-item label="基础风险单元" prop="basicRiskUnitId"> - <el-select v-model="riskUnitDialogState.riskUnitForm.basicRiskUnitId" placeholder="基础风险单元" clearable class="input-length"> + <el-select v-model="riskUnitDialogState.riskUnitForm.basicRiskUnitId" :disabled="riskUnitDialogState.disabled" placeholder="基础风险单元" clearable class="input-length"> <el-option v-for="item in riskUnitDialogState.basicUnitList" :key="item.id" :label="item.riskName" :value="item.id"></el-option> </el-select> </el-form-item> </el-col> <el-col :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> <el-form-item label="风险单元描述"> - <el-input type="textarea" :rows="3" v-model="riskUnitDialogState.riskUnitForm.description" placeholder="风险单元描述" clearable class="input-length"></el-input> + <el-input type="textarea" :rows="3" v-model="riskUnitDialogState.riskUnitForm.description" :disabled="riskUnitDialogState.disabled" placeholder="风险单元描述" clearable class="input-length"></el-input> </el-form-item> </el-col> </el-row> @@ -49,7 +49,7 @@ <template #footer> <span class="dialog-footer"> <el-button @click="riskUnitDialogState.riskUnitDialogVisible = !riskUnitDialogState.riskUnitDialogVisible" size="default">取 消</el-button> - <el-button type="primary" @click="onSubmitRiskUnit" size="default">确定</el-button> + <el-button type="primary" @click="onSubmitRiskUnit" v-if="!riskUnitDialogState.disabled" size="default">确定</el-button> </span> </template> </el-dialog> @@ -65,10 +65,12 @@ const riskUnitFormRef = ref() const riskUnitDialogState = reactive<RiskUnitDialogType>({ - title: '新增', + title: '', experimentType: 2, + disabled: false, riskUnitDialogVisible: false, riskUnitForm: { + id: null, experimentId: null, riskCode: '', riskName: '', @@ -101,49 +103,51 @@ ], }) -const showRiskUnitDialog = (id: number, liabilityUserId: number, basicUnitList: UnitType [], allPersonList: AllPersonListType [], allRiskTypeList: RiskType []) => { - +const showRiskUnitDialog = (title: string, val, id: number, basicUnitList: UnitType [], allPersonList: AllPersonListType [], allRiskTypeList: RiskType []) => { riskUnitDialogState.riskUnitDialogVisible = true; riskUnitDialogState.basicUnitList = basicUnitList riskUnitDialogState.allPersonList = allPersonList riskUnitDialogState.riskTypeList = allRiskTypeList + riskUnitDialogState.disabled = false setTimeout(() => { riskUnitFormRef.value.clearValidate(); }); - riskUnitDialogState.riskUnitForm = { - experimentId: id, - riskCode: '', - riskName: '', - riskUnitTypeId: null, - liabilityUserId: liabilityUserId, - liabilityDep: '', - description: '', - basicRiskUnitId: null, - }; + if(title === '新增'){ + riskUnitDialogState.title = '新增'; + riskUnitDialogState.riskUnitForm = { + id: null, + experimentId: id, + riskCode: '', + riskName: '', + riskUnitTypeId: null, + liabilityUserId: null, + liabilityDep: '', + description: '', + basicRiskUnitId: null, + }; + }else if(title === '查看'){ + riskUnitDialogState.title = '查看'; + riskUnitDialogState.disabled = true + for(let i in riskUnitDialogState.riskUnitForm){ + if(isValidKey(i, riskUnitDialogState.riskUnitForm)){ + riskUnitDialogState.riskUnitForm[i] = val[i]; + } + } + }else{ + riskUnitDialogState.title = '编辑'; + for(let i in riskUnitDialogState.riskUnitForm){ + if(isValidKey(i, riskUnitDialogState.riskUnitForm)){ + riskUnitDialogState.riskUnitForm[i] = val[i]; + } + } + } }; const onSubmitRiskUnit = () => { riskUnitFormRef.value.validate(async(valid: boolean) => { if(valid){ - if(riskUnitDialogState.title === '新增' && riskUnitDialogState.experimentType === 1){ - let { experimentId,basicRiskUnitId} = riskUnitDialogState.riskUnitForm - let query = { experimentId,basicRiskUnitId } - let res = await riskUnitApi().addBasicRiskUnit(query); - if(res.data.code === 100){ - emit('refresh') - riskUnitDialogState.riskUnitDialogVisible = false; - ElMessage({ - type: 'success', - message: '新增成功' - }) - }else{ - ElMessage({ - type: 'warning', - message: res.data.msg, - }); - } - }else if(riskUnitDialogState.title === '新增' && riskUnitDialogState.experimentType === 2){ - let { basicRiskUnitId, ...query} = riskUnitDialogState.riskUnitForm + if(riskUnitDialogState.title === '新增'){ + let { id, basicRiskUnitId, ...query} = riskUnitDialogState.riskUnitForm let res = await riskUnitApi().addRiskUnit(query); if(res.data.code === 100){ emit('refresh') -- Gitblit v1.9.2