| | |
| | | }); |
| | | }, |
| | | |
| | | // uploadReport: (params: object) => { |
| | | // return request({ |
| | | // url: import.meta.env.VITE_API_URL + '/report/update/report', |
| | | // method: 'post', |
| | | // data: params |
| | | // }); |
| | | // }, |
| | | uploadReport: (params: object) => { |
| | | return request({ |
| | | url: import.meta.env.VITE_API_URL + '/report/update/report', |
| | | url: import.meta.env.VITE_API_URL + '/report/update/reportNew', |
| | | method: 'post', |
| | | data: params |
| | | }); |
| | | }, |
| | | } |
| | | }; |
| | | } |
| | |
| | | <template> |
| | | <tr class="m-color b-font" style="text-align: center">主要危险源或有害因素</tr> |
| | | <tr class="m-color b-font required" style="text-align: center">主要危险源或有害因素</tr> |
| | | <tr> |
| | | <td class="w-20 m-color">序号</td> |
| | | <td class="w-20 m-color">危险源或有害因素</td> |
| | |
| | | const dangerSourceState = reactive<DangerSourceType>({ |
| | | disabled: false, |
| | | dangerList: [], |
| | | classifyList:[ |
| | | {id:1, name: '有机'}, |
| | | {id:2, name: '酸'}, |
| | | {id:3, name: '碱性'}, |
| | | {id:4, name: '固体废弃物'}, |
| | | {id:5, name: '医疗废弃物'}, |
| | | {id:6, name: '过期化学品'}, |
| | | {id:7, name: '其他'} |
| | | ], |
| | | wasteStorageList: [ |
| | | {id:1, name: '吨袋'}, |
| | | {id:2, name: '吨桶'}, |
| | | {id:3, name: '小桶'}, |
| | | {id:4, name: '托盘'}, |
| | | {id:5, name: '其他'}, |
| | | ] |
| | | }) |
| | | |
| | | watchEffect(() => { |
| | |
| | | &:last-of-type { |
| | | border-bottom: none; |
| | | } |
| | | |
| | | &.required { |
| | | &::before { |
| | | content: "*"; |
| | | display: inline-block; |
| | | color: red; |
| | | } |
| | | } |
| | | td { |
| | | border-right: 1px solid #ccc; |
| | | display: inline-block; |
| | |
| | | approveDesc: string |
| | | }, |
| | | rules:object, |
| | | isManage: boolean |
| | | isLeader: boolean |
| | | } |
| | |
| | | <!-- </el-table-column>--> |
| | | <el-table-column label="操作" width="250" fixed="right"> |
| | | <template #default="scope"> |
| | | <el-button size="small" text type="primary" v-if="(developState.isManage == true && !scope.row.person?.find(i=>i.approveIndex == 1))||(developState.isLeader == true && !scope.row.person?.find(i=>i.approveIndex == 2))" :icon="Edit" @click="openRiskDialog(scope.row)">审批</el-button> |
| | | <el-button size="small" text type="primary" v-if="developState.isLeader == true && (!scope.row.person||(scope.row.person && scope.row.person.length == 0))" :icon="Edit" @click="openRiskDialog(scope.row)">审批</el-button> |
| | | <el-button size="small" text type="primary" :icon="Edit" @click="openReportDialog('查看',scope.row)">查看评估报告</el-button> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | <el-radio :label="3">不通过</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <el-form-item label="意见填报" prop="approveDesc"> |
| | | <el-form-item label="主管部门意见" prop="approveDesc"> |
| | | <el-input v-model="developState.reviewForm.approveDesc" type="textarea" :autosize="{ minRows: 3 }" /> |
| | | </el-form-item> |
| | | </el-form> |
| | |
| | | approveStatus: null, |
| | | approveDesc: '' |
| | | }, |
| | | isManage: false, |
| | | isLeader: false, |
| | | rules: { |
| | | approveDesc: [{ required: true, message: '请输入审批意见', trigger: 'blur' }], |
| | |
| | | let res = await assessApplyApi().getRiskReportPage(developState.searchQuery); |
| | | if(res.data.code === 100){ |
| | | developState.developData = res.data.data; |
| | | console.log(developState.developData,'developState.developData') |
| | | developState.total = res.data.total; |
| | | }else{ |
| | | ElMessage({ |
| | |
| | | onMounted(() => { |
| | | getReportData() |
| | | getAllRoom() |
| | | if(userInfos.value.roles?.find(i=>i.roleId == '4')){ |
| | | developState.isManage = true |
| | | } |
| | | console.log(userInfos.value.roles,'roles') |
| | | if(userInfos.value.roles?.find(i=>i.roleId == '6')){ |
| | | developState.isLeader = true |
| | | } |
| | |
| | | </el-checkbox-group> |
| | | </td> |
| | | </tr> |
| | | |
| | | <select-danger ref="selectDangerRef" v-model:data="reportDialogState.reportForm.riskSource" v-model:disabled="reportDialogState.disabled"></select-danger> |
| | | |
| | | <!-- <tr class="m-color b-font required" style="text-align: center">安全风险分析(总结)</tr>--> |
| | | <!-- <tr>--> |
| | | <!-- <el-input type="textarea" :autosize="{ minRows: 3}" :disabled="reportDialogState.disabled" v-model="reportDialogState.reportForm.safeRiskAnalysis" placeholder="1.实验过程中是否有爆炸、火灾、腐蚀、中毒风险、产生危险废弃物等(根据危险源清单,分析实验过程中可能对人身安全、人体健康、实验室环境和周边环境等带来的负面影响)" />--> |
| | | <!-- </tr>--> |
| | | |
| | | <tr class="m-color b-font required" style="text-align: center">安全风险分析(总结)</tr> |
| | | <tr> |
| | | <el-input type="textarea" :autosize="{ minRows: 3}" :disabled="reportDialogState.disabled" v-model="reportDialogState.reportForm.safeRiskAnalysis" placeholder="1.实验过程中是否有爆炸、火灾、腐蚀、中毒风险、产生危险废弃物等(根据危险源清单,分析实验过程中可能对人身安全、人体健康、实验室环境和周边环境等带来的负面影响)" /> |
| | |
| | | // reportDialogState.reportForm[i] = value[i]; |
| | | // } |
| | | // } |
| | | reportDialogState.reportForm.riskSource = [] |
| | | setTimeout(()=>{ |
| | | selectDangerRef.value.dangerSourceState.dangerList = [] |
| | | },2000) |
| | | }else if(title === '修改'){ |
| | | reportDialogState.title = '修改报告'; |
| | | reportDialogState.disabled = false |
| | |
| | | // } |
| | | // } |
| | | } |
| | | console.log(reportDialogState.reportForm,'form') |
| | | }; |
| | | |
| | | const isValidKey = (key: string | number | symbol, object:object): key is keyof typeof object =>{ |
| | |
| | | const onSubmitProject = () => { |
| | | reportFormRef.value.validate(async(valid: boolean) => { |
| | | if(valid){ |
| | | const { id,assessPerson,safeRiskAnalysis,assessLevel,description } = reportDialogState.reportForm |
| | | const data = { id,assessPerson,safeRiskAnalysis,assessLevel,description } |
| | | reportDialogState.reportForm.riskSource = selectDangerRef.value.dangerSourceState.dangerList |
| | | const { id,assessPerson,riskSource,safeRiskAnalysis,assessLevel,description } = reportDialogState.reportForm |
| | | const data = { id,assessPerson,riskSource,safeRiskAnalysis,assessLevel,description } |
| | | if(reportDialogState.title === '提交报告'){ |
| | | for(let i in data.riskSource){ |
| | | riskSource[i].reportId = data.id |
| | | riskSource[i].riskSourceIndex = i + 1 |
| | | } |
| | | let res = await assessApplyApi().updateRiskReport(data); |
| | | if(res.data.code === 100){ |
| | | emit('refresh') |
| | |
| | | <template> |
| | | <tr class="m-color b-font" style="text-align: center">主要危险源或有害因素</tr> |
| | | <tr class="m-color b-font required" style="text-align: center">主要危险源或有害因素</tr> |
| | | <tr> |
| | | <td class="w-20 m-color">序号</td> |
| | | <td class="w-20 m-color">危险源或有害因素</td> |
| | | <td class="w-20 m-color">危险特性</td> |
| | | <td class="w-20 m-color">数量</td> |
| | | <td class="w-20 m-color">其他说明</td> |
| | | <!-- <td class="w-18 m-color">操作</td>--> |
| | | <td class="w-16 m-color">序号</td> |
| | | <td class="w-16 m-color">危险源或有害因素</td> |
| | | <td class="w-16 m-color">危险特性</td> |
| | | <td class="w-16 m-color">数量</td> |
| | | <td class="w-16 m-color">其他说明</td> |
| | | <td class="w-16 m-color">操作</td> |
| | | </tr> |
| | | <tr v-for="(item,index) in dangerSourceState.dangerList" :key="index"> |
| | | <td class="w-20"> |
| | | <td class="w-16"> |
| | | {{ index + 1 }} |
| | | </td> |
| | | <td class="w-20"> |
| | | <el-input disabled v-model="item.riskSource"></el-input> |
| | | <td class="w-16"> |
| | | <el-input :disabled="dangerSourceState.disabled" v-model="item.riskSource"></el-input> |
| | | </td> |
| | | <td class="w-20"> |
| | | <el-input disabled v-model="item.riskCharacteristic"></el-input> |
| | | <td class="w-16"> |
| | | <el-input :disabled="dangerSourceState.disabled" v-model="item.riskCharacteristic"></el-input> |
| | | </td> |
| | | <td class="w-20"> |
| | | <el-input disabled type="number" v-model="item.number"></el-input> |
| | | <td class="w-16"> |
| | | <el-input :disabled="dangerSourceState.disabled" type="number" v-model="item.number"></el-input> |
| | | </td> |
| | | <td class="w-20"> |
| | | <el-input disabled v-model="item.description"></el-input> |
| | | <td class="w-16"> |
| | | <el-input :disabled="dangerSourceState.disabled" v-model="item.description"></el-input> |
| | | </td> |
| | | <!-- <td class="w-18">--> |
| | | <!-- <el-button disabled type="danger" @click="deleteDangerItem(index)">删除</el-button>--> |
| | | <!-- </td>--> |
| | | <td class="w-16"> |
| | | <el-button :disabled="dangerSourceState.disabled" type="danger" @click="deleteDangerItem(index)">删除</el-button> |
| | | </td> |
| | | </tr> |
| | | <!-- <tr style="text-align: center">--> |
| | | <!-- <el-button :disabled="dangerSourceState.disabled" type="primary" shape="round" @click="addDangerItem()">--> |
| | | <!-- 添加行--> |
| | | <!-- </el-button>--> |
| | | <!-- </tr>--> |
| | | <tr style="text-align: center"> |
| | | <el-button :disabled="dangerSourceState.disabled" type="primary" shape="round" @click="addDangerItem()"> |
| | | 添加行 |
| | | </el-button> |
| | | </tr> |
| | | </template> |
| | | |
| | | <script setup lang="ts"> |
| | |
| | | |
| | | const dangerSourceState = reactive<DangerSourceType>({ |
| | | disabled: false, |
| | | dangerList: [], |
| | | classifyList:[ |
| | | {id:1, name: '有机'}, |
| | | {id:2, name: '酸'}, |
| | | {id:3, name: '碱性'}, |
| | | {id:4, name: '固体废弃物'}, |
| | | {id:5, name: '医疗废弃物'}, |
| | | {id:6, name: '过期化学品'}, |
| | | {id:7, name: '其他'} |
| | | ], |
| | | wasteStorageList: [ |
| | | {id:1, name: '吨袋'}, |
| | | {id:2, name: '吨桶'}, |
| | | {id:3, name: '小桶'}, |
| | | {id:4, name: '托盘'}, |
| | | {id:5, name: '其他'}, |
| | | ] |
| | | dangerList: [] |
| | | }) |
| | | |
| | | watchEffect(() => { |
| | |
| | | }); |
| | | |
| | | const addDangerItem = () => { |
| | | console.log(dangerSourceState.dangerList,'list') |
| | | dangerSourceState.dangerList.push({riskSource: '', riskCharacteristic: '', number: null, description: ''}); |
| | | }; |
| | | |
| | |
| | | } |
| | | |
| | | defineExpose({ |
| | | formatList, |
| | | dataList: dangerSourceState.dangerList, |
| | | dangerSourceState |
| | | }); |
| | | |
| | | </script> |
| | |
| | | &:last-of-type { |
| | | border-bottom: none; |
| | | } |
| | | |
| | | &.required { |
| | | &::before { |
| | | content: "*"; |
| | | display: inline-block; |
| | | color: red; |
| | | } |
| | | } |
| | | td { |
| | | border-right: 1px solid #ccc; |
| | | display: inline-block; |
| | |
| | | <el-input type="textarea" class="input-length" :autosize="{ minRows:2 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.evaluateDesc" placeholder="评价专家意见" clearable></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col style="display: flex;align-items: center" :xs="24" :sm="24" :md="24" :lg="24" :xl="24" class="mb20"> |
| | | <el-form-item label="安全风险分析" prop="evaluateDesc" style="width: 100% !important;"> |
| | | <el-input type="textarea" class="input-length" :autosize="{ minRows:2 }" :disabled="evaluateDialogState.disabled" v-model="evaluateDialogState.evaluateForm.safeRiskAnalysis" placeholder="安全风险分析" clearable></el-input> |
| | | </el-form-item> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | <el-dialog title="修改评价方法" v-model="evaluateDialogState.evaluateMethodVisible" width="30%"> |
| | |
| | | adviseEducationMeasure: '', |
| | | advisePersonalProtectionMeasure: '', |
| | | adviseEmergencyMeasure: '', |
| | | evaluateDesc: '' |
| | | evaluateDesc: '', |
| | | safeRiskAnalysis: '' |
| | | }, |
| | | evaluateFormRules: { |
| | | |
| | |
| | | adviseEducationMeasure: '', |
| | | advisePersonalProtectionMeasure: '', |
| | | adviseEmergencyMeasure: '', |
| | | evaluateDesc: '' |
| | | evaluateDesc: '', |
| | | safeRiskAnalysis: '' |
| | | }; |
| | | } |
| | | }else { |
| | |
| | | adviseEducationMeasure: string, |
| | | advisePersonalProtectionMeasure: string, |
| | | adviseEmergencyMeasure: string, |
| | | evaluateDesc: string |
| | | evaluateDesc: string, |
| | | safeRiskAnalysis: string |
| | | } |
| | | |
| | | declare interface EvaluateDialogType { |
| | |
| | | <td class="w-25 m-color required">负责人</td> |
| | | <td class="w-25 m-color"> |
| | | <el-form-item prop="liabilityUserId"> |
| | | <!-- <el-select style="width: 100%" v-model="projectDialogState.projectForm.liabilityUserId" clearable filterable @change="getLiabilityUserPhone($event)">--> |
| | | <!-- <el-option--> |
| | | <!-- v-for="item in projectDialogState.systemPersonList"--> |
| | | <!-- :key="item.id"--> |
| | | <!-- :value="item.id"--> |
| | | <!-- :label="item.realName"--> |
| | | <!-- ></el-option>--> |
| | | <!-- </el-select>--> |
| | | <el-select style="width: 100%" disabled v-model="projectDialogState.projectForm.liabilityUserId" clearable filterable> |
| | | <el-option :key="userInfos.uid" :value="userInfos.uid" :label="userInfos.userName"></el-option> |
| | | <el-select style="width: 100%" v-model="projectDialogState.projectForm.liabilityUserId" clearable filterable @change="getLiabilityUserPhone($event)"> |
| | | <el-option |
| | | v-for="item in projectDialogState.systemPersonList" |
| | | :key="item.id" |
| | | :value="item.id" |
| | | :label="item.realName" |
| | | ></el-option> |
| | | </el-select> |
| | | <!-- <el-select style="width: 100%" disabled v-model="projectDialogState.projectForm.liabilityUserId" clearable filterable>--> |
| | | <!-- <el-option :key="userInfos.uid" :value="userInfos.uid" :label="userInfos.userName"></el-option>--> |
| | | <!-- </el-select>--> |
| | | </el-form-item> |
| | | <!-- <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.liabilityUserId"/>--> |
| | | </td> |
| | |
| | | id: null, |
| | | experimentName: "", |
| | | experimentType: null, |
| | | liabilityUserId: Number(userInfos.value.uid), |
| | | liabilityUserId: null, |
| | | liabilityUserPhone: '', |
| | | safeLiabilityUser: '', |
| | | safeLiabilityUserPhone: '', |
| | |
| | | id: null, |
| | | experimentName: "", |
| | | experimentType: null, |
| | | liabilityUserId: Number(userInfos.value.uid), |
| | | liabilityUserId: null, |
| | | liabilityUserPhone: '', |
| | | safeLiabilityUser: '', |
| | | safeLiabilityUserPhone: '', |
| | |
| | | } |
| | | } |
| | | |
| | | const onSubmitProject = () => { |
| | | const onSubmitProject = async() => { |
| | | ProjectFormRef.value.validate(async(valid: boolean) => { |
| | | if(valid){ |
| | | if(projectDialogState.projectForm.timeout == 2){ |
| | |
| | | projectDialogState.projectForm.emergencyList = selectEmergencyRef.value.dataList |
| | | projectDialogState.projectForm.persons = selectPersonRef.value.dataList |
| | | projectDialogState.projectForm.hazardousWasteList = selectDangerRef.value.dataList |
| | | projectDialogState.projectForm.siteList = selectRoomRef.value.dataList.map(({siteId}) => ({siteId})) |
| | | const roomList = selectRoomRef.value.dataList |
| | | projectDialogState.projectForm.siteList = roomList.map(({siteId}) => ({siteId})) |
| | | projectDialogState.projectForm.stuffList = selectMaterialRef.value.dataList |
| | | projectDialogState.projectForm.deviceList = selectEquipmentRef.value.dataList |
| | | let res = await projectApi().addDevelop(projectDialogState.projectForm); |
| | |
| | | </el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="status" label="最近评估时间" show-overflow-tooltip> |
| | | <template #default="scope"> |
| | | <span>{{scope.row.experimentAssessLogs?scope.row.experimentAssessLogs.map(i=>i.assessEndTime.substring(0,16)).join(','): ''}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="assessLevel" label="风险等级"> |
| | | <template #default="scope"> |
| | | <el-tag :type="scope.row.assessLevel == 4?'danger':scope.row.assessLevel == 3 || scope.row.assessLevel == 2?'warning':''"> |
| | |
| | | <template #default="scope"> |
| | | <el-button size="small" text type="primary" :icon="View" @click="openProjectDialog('查看', scope.row)">查看</el-button> |
| | | <el-button size="small" text type="primary" :icon="View" v-if="scope.row.stage == 4" @click="openReportDialog('查看',scope.row)">查看评估报告</el-button> |
| | | <el-button size="small" :disabled="scope.row.status == 2 ? true : false" text type="primary" :icon="Edit" @click="applyAccess( scope.row)">申请评估</el-button> |
| | | <el-button size="small" :disabled="scope.row.stage == 2 ? true : false" text type="primary" :icon="Edit" @click="applyAccess( scope.row)">申请评估</el-button> |
| | | <el-button size="small" :disabled="(scope.row.status == 2 && scope.row.stage == 1) ? false : true" text type="warning" :icon="RefreshLeft" @click="cancelAccess( scope.row)">撤销评估</el-button> |
| | | <el-button size="small" type="warning" v-if="scope.row.rectifyStatus == 1" text :icon="Edit" @click="openProjectDialog('整改', scope.row)">整改</el-button> |
| | | </template> |
| | |
| | | <td class="w-25 m-color required">负责人</td> |
| | | <td class="w-25 m-color"> |
| | | <el-form-item prop="liabilityUserId"> |
| | | <!-- <el-select style="width: 100%" v-model="projectDialogState.projectForm.liabilityUserId" clearable filterable @change="getLiabilityUserPhone($event)">--> |
| | | <!-- <el-option--> |
| | | <!-- v-for="item in projectDialogState.systemPersonList"--> |
| | | <!-- :key="item.id"--> |
| | | <!-- :value="item.id"--> |
| | | <!-- :label="item.realName"--> |
| | | <!-- ></el-option>--> |
| | | <!-- </el-select>--> |
| | | <el-select style="width: 100%" disabled v-model="projectDialogState.projectForm.liabilityUserId" clearable filterable> |
| | | <el-option :key="userInfos.uid" :value="userInfos.uid" :label="userInfos.userName"></el-option> |
| | | <el-select style="width: 100%" v-model="projectDialogState.projectForm.liabilityUserId" clearable filterable @change="getLiabilityUserPhone($event)"> |
| | | <el-option |
| | | v-for="item in projectDialogState.systemPersonList" |
| | | :key="item.id" |
| | | :value="item.id" |
| | | :label="item.realName" |
| | | ></el-option> |
| | | </el-select> |
| | | <!-- <el-select style="width: 100%" disabled v-model="projectDialogState.projectForm.liabilityUserId" clearable filterable>--> |
| | | <!-- <el-option :key="userInfos.uid" :value="userInfos.uid" :label="userInfos.userName"></el-option>--> |
| | | <!-- </el-select>--> |
| | | </el-form-item> |
| | | <!-- <el-input :disabled="projectDialogState.disabled" v-model="projectDialogState.projectForm.liabilityUserId"/>--> |
| | | </td> |
| | |
| | | id: null, |
| | | experimentName: "", |
| | | experimentType: null, |
| | | liabilityUserId: Number(userInfos.value.uid), |
| | | liabilityUserId: null, |
| | | liabilityUserPhone: '', |
| | | safeLiabilityUser: '', |
| | | safeLiabilityUserPhone: '', |
| | |
| | | id: null, |
| | | experimentName: "", |
| | | experimentType: null, |
| | | liabilityUserId: Number(userInfos.value.uid), |
| | | liabilityUserId: null, |
| | | liabilityUserPhone: '', |
| | | safeLiabilityUser: '', |
| | | safeLiabilityUserPhone: '', |
| | |
| | | return key in object; |
| | | }; |
| | | |
| | | const onSubmitProject = () => { |
| | | const onSubmitProject = async() => { |
| | | ProjectFormRef.value.validate(async(valid: boolean) => { |
| | | if(valid){ |
| | | if(projectDialogState.projectForm.timeout === 2){ |
| | |
| | | } |
| | | projectDialogState.projectForm.emergencyList = selectEmergencyRef.value.dataList |
| | | projectDialogState.projectForm.persons = selectPersonRef.value.dataList |
| | | projectDialogState.projectForm.hazardousWasteList = selectDangerRef.value.dataList |
| | | // projectDialogState.projectForm.siteList = selectRoomRef.value.dataList.map(({siteId}) => ({siteId})) |
| | | projectDialogState.projectForm.siteList = selectRoomRef.value.dataList.map(obj => ({siteId:obj.siteId})) |
| | | const roomList = selectRoomRef.value.dataList |
| | | projectDialogState.projectForm.siteList = roomList.map(({siteId}) => ({siteId})) |
| | | projectDialogState.projectForm.stuffList = selectMaterialRef.value.dataList |
| | | projectDialogState.projectForm.deviceList = selectEquipmentRef.value.dataList |
| | | let res = await projectApi().addProject(projectDialogState.projectForm) |
| | |
| | | }; |
| | | |
| | | const formatList = (formatList: Array<roomListType>) => { |
| | | console.log(formatList,'formatList') |
| | | selectRoomState.roomList = formatList |
| | | }; |
| | | |
| | |
| | | </el-tag> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="status" label="最近评估时间" show-overflow-tooltip> |
| | | <template #default="scope"> |
| | | <span>{{scope.row.experimentAssessLogs?scope.row.experimentAssessLogs.map(i=>i.assessEndTime.substring(0,16)).join(','): ''}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="assessLevel" label="风险等级"> |
| | | <template #default="scope"> |
| | | <el-tag :type="scope.row.assessLevel == 4?'danger':scope.row.assessLevel == 3 || scope.row.assessLevel == 2?'warning':''"> |
| | |
| | | <el-button size="small" text type="primary" :icon="View" @click="openProjectDialog('查看', scope.row)">查看</el-button> |
| | | <el-button size="small" text type="primary" :icon="View" v-if="scope.row.stage == 4" @click="openReportDialog('查看',scope.row)">查看评估报告</el-button> |
| | | <el-button size="small" text type="primary" :icon="Edit" @click="applyStart('申请开展', scope.row)">转为已开展</el-button> |
| | | <el-button size="small" :disabled="scope.row.status == 2 ? true : false" text type="primary" :icon="Edit" @click="applyAccess( scope.row)">申请评估</el-button> |
| | | <el-button size="small" :disabled="scope.row.stage == 2 ? true : false" text type="primary" :icon="Edit" @click="applyAccess( scope.row)">申请评估</el-button> |
| | | <el-button size="small" type="warning" v-if="scope.row.rectifyStatus == 1" text :icon="Edit" @click="openProjectDialog('整改', scope.row)">整改</el-button> |
| | | <el-button size="small" text type="danger" :icon="Delete" :disabled="scope.row.stage !== 1" @click="onDelProject(scope.row)">删除</el-button> |
| | | </template> |
| | |
| | | <span>{{ scope.row.component }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="权限标识" show-overflow-tooltip> |
| | | <template #default="scope"> |
| | | <span>{{ scope.row.meta.roles.map(id => state.roleList.find(obj => obj.id === id)?.name).join(',') }}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <!-- <el-table-column label="权限标识" show-overflow-tooltip>--> |
| | | <!-- <template #default="scope">--> |
| | | <!-- <span>{{ scope.row.meta.roles.map(id => state.roleList.find(obj => obj.id === id)?.name).join(',') }}</span>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <el-table-column label="排序" show-overflow-tooltip width="80"> |
| | | <template #default="scope"> |
| | | {{ scope.$index }} |
| | |
| | | <el-upload accept="image/*" :action="uploadUrl" :headers="header" method="post" :data="{module: 'accountPath'}" :on-success="handleAvatarSuccess" :on-exceed="showTip" :on-preview="handlePictureCardPreview" :limit='imgLimit' v-model:file-list="fileList" list-type="picture-card" :before-upload="picSize" :on-remove="handleRemove" :before-remove="beforeRemove"> |
| | | <el-icon><Plus /></el-icon> |
| | | <template #tip> |
| | | <div class="el-upload__tip">上传jpg/png图片尺寸小于500KB,最多可上传1张</div> |
| | | <div class="el-upload__tip">上传jpg/png图片尺寸小于5M,最多可上传1张</div> |
| | | </template> |
| | | </el-upload> |
| | | </el-form-item> |