| | |
| | | params: params |
| | | }) |
| | | } |
| | | //复制计划 |
| | | export function copyAnnualVerificationPlan(data) { |
| | | return request({ |
| | | url: '/system/annualVerificationPlan/copyAnnualVerificationPlan', |
| | | method: 'get', |
| | | params: data |
| | | }) |
| | | } |
| | | |
| | | //复制校准确认 |
| | | export function copyCalibrationMonitoringEquipment(data) { |
| | | return request({ |
| | | url: '/system/calibrationMonitoringEquipment/copyCalibrationMonitoringEquipment', |
| | | method: 'get', |
| | | params: data |
| | | }) |
| | | } |
| | |
| | | <el-dialog |
| | | v-model="dialogVisible" |
| | | :title="title" |
| | | width="900px" |
| | | width="1250px" |
| | | :before-close="handleClose" |
| | | :close-on-press-escape="false" |
| | | :close-on-click-modal="false" |
| | |
| | | <el-table :data="state.form.expectContents" :border="true" > |
| | | <el-table-column type="index" label="序号" align="center"></el-table-column> |
| | | <el-table-column label="相关方" prop="stakeholder" align="center" width="150"/> |
| | | <el-table-column label="期望或要求" prop="message" align="center" width="150"> |
| | | <el-table-column label="期望或要求" prop="message" align="center" > |
| | | <template #default="{row,$index}"> |
| | | <div v-for="(i,index) in row.expectContentMesses" :key="index"> |
| | | <!-- <span>{{ i.expectation }}</span>--> |
| | | <el-input style="margin-bottom: 15px" disabled type="textarea" :rows="4" v-model="i.expectation"></el-input> |
| | | <el-input style="margin-bottom: 15px" disabled type="textarea" :rows="6" v-model="i.expectation"></el-input> |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | <template #default="{row,$index}"> |
| | | <div v-for="(i,index) in row.expectContentMesses" :key="index"> |
| | | <!-- <span>{{ i.solutions }}</span>--> |
| | | <el-input disabled style="margin-bottom: 15px" type="textarea" :rows="4" v-model="i.solutions"></el-input> |
| | | <el-input disabled style="margin-bottom: 15px" type="textarea" :rows="6" v-model="i.solutions"></el-input> |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="评价结果" prop="review" align="center" > |
| | | <el-table-column label="评价结果" prop="review" align="center" width="130"> |
| | | <template #default="{row,$index}"> |
| | | <div v-for="(i,index) in row.expectContentMesses" :key="index"> |
| | | <el-form-item :prop="'expectContents.' + '[' + $index + '].' +'expectContentMesses.' + '[' + index + ']' + '.review'" :rules="state.rules.review"> |
| | | <el-input style="margin-bottom: 15px" :disabled="title === '查看'" type="textarea" :rows="4" v-model="i.review" placeholder="请输入"></el-input> |
| | | <el-input style="margin-bottom: 15px" :disabled="title === '查看'" type="textarea" :rows="6" v-model="i.review" placeholder="请输入"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | </template> |
| | |
| | | <el-dialog |
| | | v-model="dialogVisible" |
| | | :title="title" |
| | | width="900px" |
| | | width="1250px" |
| | | :before-close="handleClose" |
| | | :close-on-press-escape="false" |
| | | :close-on-click-modal="false" |
| | |
| | | <el-table-column label="相关方" prop="stakeholder" align="center" width="150"> |
| | | <template #default="{row,$index}"> |
| | | <el-form-item :prop="'expectContents.' + '[' + $index + ']' + '.stakeholder'" :rules="state.rules.stakeholder"> |
| | | <el-input style="margin-top: 10px" :disabled="title === '查看'" :rows="4" type="textarea" v-model="row.stakeholder" placeholder="请输入"></el-input> |
| | | <el-input style="margin-top: 10px" :disabled="title === '查看'" :rows="6" type="textarea" v-model="row.stakeholder" placeholder="请输入"></el-input> |
| | | </el-form-item> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="期望或要求" prop="expectation" align="center" width="150"> |
| | | <el-table-column label="期望或要求" prop="expectation" align="center"> |
| | | <template #default="{row,$index}"> |
| | | <div v-for="(i,index) in row.expectContentMesses" :key="index"> |
| | | <el-form-item :prop="'expectContents.' + '[' + $index + '].' +'expectContentMesses.' + '[' + index + ']' + '.expectation'" :rules="state.rules.expectation"> |
| | | <el-input style="margin-top: 10px" :disabled="title === '查看'" type="textarea" :rows="4" v-model="i.expectation" placeholder="请输入"></el-input> |
| | | <el-input style="margin-top: 10px" :disabled="title === '查看'" type="textarea" :rows="6" v-model="i.expectation" placeholder="请输入"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="应对措施" prop="solutions" align="center" width="150"> |
| | | <el-table-column label="应对措施" prop="solutions" align="center" > |
| | | <template #default="{row,$index}"> |
| | | <div v-for="(i,index) in row.expectContentMesses" :key="index"> |
| | | <el-form-item :prop="'expectContents.' + '[' + $index + '].' +'expectContentMesses.' + '[' + index + ']' + '.solutions'" :rules="state.rules.solutions"> |
| | | <el-input style="margin-top: 10px" :disabled="title === '查看'" type="textarea" :rows="4" v-model="i.solutions" placeholder="请输入"></el-input> |
| | | <el-input style="margin-top: 10px" :disabled="title === '查看'" type="textarea" :rows="6" v-model="i.solutions" placeholder="请输入"></el-input> |
| | | </el-form-item> |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="操作" align="center" v-if="title !== '查看'" > |
| | | <el-table-column label="操作" align="center" v-if="title !== '查看'" width="120"> |
| | | <template #default="scope"> |
| | | <el-button link type="primary" @click="addObject(scope.row,scope.$index)" >添加</el-button> |
| | | <el-button link type="danger" @click="delObject(scope.row,scope.$index)" >删除</el-button> |
| | |
| | | <el-form-item > |
| | | <el-button type="primary" @click="getList">查询</el-button> |
| | | <el-button type="primary" plain @click="reset">重置</el-button> |
| | | <el-button type="primary" plain @click="openDialog('edit',dataList)" v-if="data.hasInfo" v-hasPermi="['annualVerificationPlan:list:edit']">编辑</el-button> |
| | | <el-button type="primary" @click="openDialog('edit',dataList)" v-if="data.hasInfo" v-hasPermi="['annualVerificationPlan:list:edit']">编辑</el-button> |
| | | <el-button type="primary" plain @click="downloadFile()" v-if="data.hasInfo">导出</el-button> |
| | | <el-button type="primary" plain @click="copy">复制</el-button> |
| | | <!-- <el-button type="primary">导出</el-button>--> |
| | | </el-form-item> |
| | | </el-form> |
| | |
| | | <!-- />--> |
| | | |
| | | <edit-dialog ref="dialogRef" @getList=getList></edit-dialog> |
| | | <el-dialog |
| | | v-model="copyVisible" |
| | | width="500px" |
| | | :before-close="handleCloseCopy" |
| | | :close-on-press-escape="false" |
| | | :close-on-click-modal="false" |
| | | > |
| | | <div v-if="data.isAdmin"> |
| | | <span style="display:block;margin-bottom: 8px">单位名称:</span> |
| | | <el-select |
| | | v-model="queryParams.companyId" |
| | | filterable |
| | | style="width: 100%;margin-bottom: 8px" |
| | | > |
| | | <el-option |
| | | v-for="item in data.companyList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | /> |
| | | </el-select> |
| | | </div> |
| | | <span style="display:block;margin-bottom: 8px">将以下年份数据:</span> |
| | | <el-date-picker |
| | | v-model="data.sourceYear" |
| | | type="year" |
| | | value-format="YYYY" |
| | | style="margin-bottom: 8px;width: 100%;" |
| | | placeholder="请选择" |
| | | /> |
| | | <span style="display:block;margin-bottom: 8px">复制到:</span> |
| | | <el-date-picker |
| | | v-model="data.targetYear" |
| | | type="year" |
| | | value-format="YYYY" |
| | | style="margin-bottom: 8px;width: 100%" |
| | | placeholder="请选择" |
| | | /> |
| | | <div class="dialog-footer" style="display: flex;justify-content: right"> |
| | | <el-button @click="handleCloseCopy" size="default">取 消</el-button> |
| | | <el-button type="primary" @click="onSubmitCopy" size="default" v-preReClick>确认</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | getMaintenanceEvaluateList |
| | | } from "@/api/infrastructureMng/ledger"; |
| | | import { |
| | | copyAnnualVerificationPlan, |
| | | delAnnualVerificationPlan, |
| | | getAnnualVerificationPlanDetail, |
| | | getAnnualVerificationPlanList |
| | | } from "@/api/assetManage/assetMng"; |
| | | import {copyControl} from "@/api/environment/factors"; |
| | | |
| | | |
| | | const userStore = useUserStore() |
| | |
| | | companyList: [], |
| | | isAdmin: false, |
| | | baseUrl: import.meta.env.VITE_APP_BASE_API, |
| | | hasInfo: false |
| | | hasInfo: false, |
| | | copyVisible:false, |
| | | targetYear:'', |
| | | sourceYear:'', |
| | | }); |
| | | |
| | | const { queryParams, total, dataList,companyList, isAdmin } = toRefs(data); |
| | | const { queryParams, total, dataList,companyList, isAdmin, copyVisible } = toRefs(data); |
| | | const userInfo = ref() |
| | | onMounted(async ()=>{ |
| | | data.queryParams.year = new Date().getFullYear().toString() |
| | |
| | | } |
| | | }) |
| | | } |
| | | const copy = () => { |
| | | |
| | | data.copyVisible = true |
| | | } |
| | | const onSubmitCopy = async () => { |
| | | if(data.isAdmin && !data.queryParams.companyId){ |
| | | ElMessage.warning('请先选择单位') |
| | | return |
| | | } |
| | | if(!data.sourceYear){ |
| | | ElMessage.warning('请先选择要复制的年份') |
| | | return |
| | | } |
| | | if(!data.targetYear){ |
| | | ElMessage.warning('请选择目标年份') |
| | | return |
| | | } |
| | | ElMessageBox.confirm( |
| | | '该操作将覆盖目标年份的数据,是否继续?', |
| | | '提示', |
| | | { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning', |
| | | }) |
| | | .then( async() => { |
| | | const param = { |
| | | companyId: data.queryParams.companyId, |
| | | sourceYear: data.sourceYear, |
| | | targetYear: data.targetYear |
| | | } |
| | | const res = await copyAnnualVerificationPlan(param); |
| | | if(res.code === 200){ |
| | | ElMessage({ |
| | | type: 'success', |
| | | message: res.data |
| | | }); |
| | | await handleCloseCopy() |
| | | await getList(); |
| | | |
| | | }else{ |
| | | ElMessage.warning(res.message) |
| | | } |
| | | }).catch(err => { |
| | | }) |
| | | } |
| | | const handleCloseCopy = () => { |
| | | data.targetYear='' |
| | | data.sourceYear='' |
| | | data.copyVisible = false |
| | | } |
| | | |
| | | </script> |
| | |
| | | <el-form-item > |
| | | <el-button type="primary" @click="getList">查询</el-button> |
| | | <el-button type="primary" plain @click="reset">重置</el-button> |
| | | <el-button type="primary" plain @click="copy">复制</el-button> |
| | | <!-- <el-button type="primary">导出</el-button>--> |
| | | </el-form-item> |
| | | </el-form> |
| | |
| | | @pagination="getList" |
| | | /> |
| | | <edit-dialog ref="dialogRef" @getList=getList></edit-dialog> |
| | | <el-dialog |
| | | v-model="copyVisible" |
| | | width="500px" |
| | | :before-close="handleCloseCopy" |
| | | :close-on-press-escape="false" |
| | | :close-on-click-modal="false" |
| | | > |
| | | <div v-if="data.isAdmin"> |
| | | <span style="display:block;margin-bottom: 8px">单位名称:</span> |
| | | <el-select |
| | | v-model="queryParams.companyId" |
| | | filterable |
| | | style="width: 100%;margin-bottom: 8px" |
| | | > |
| | | <el-option |
| | | v-for="item in data.companyList" |
| | | :key="item.id" |
| | | :label="item.name" |
| | | :value="item.id" |
| | | /> |
| | | </el-select> |
| | | </div> |
| | | <span style="display:block;margin-bottom: 8px">将以下年份数据:</span> |
| | | <el-date-picker |
| | | v-model="data.sourceYear" |
| | | type="year" |
| | | value-format="YYYY" |
| | | style="margin-bottom: 8px;width: 100%;" |
| | | placeholder="请选择" |
| | | /> |
| | | <span style="display:block;margin-bottom: 8px">复制到:</span> |
| | | <el-date-picker |
| | | v-model="data.targetYear" |
| | | type="year" |
| | | value-format="YYYY" |
| | | style="margin-bottom: 8px;width: 100%" |
| | | placeholder="请选择" |
| | | /> |
| | | <div class="dialog-footer" style="display: flex;justify-content: right"> |
| | | <el-button @click="handleCloseCopy" size="default">取 消</el-button> |
| | | <el-button type="primary" @click="onSubmitCopy" size="default" v-preReClick>确认</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | getMaintenanceRecordList |
| | | } from "@/api/infrastructureMng/ledger"; |
| | | import {getInternalAuditCheckInfo} from "@/api/innerReview/meetingReview"; |
| | | import {delCalibrationMonitoringEquipment, getCalibrationMonitoringEquipmentList} from "@/api/assetManage/assetMng"; |
| | | import { |
| | | copyCalibrationMonitoringEquipment, |
| | | delCalibrationMonitoringEquipment, |
| | | getCalibrationMonitoringEquipmentList |
| | | } from "@/api/assetManage/assetMng"; |
| | | |
| | | |
| | | const userStore = useUserStore() |
| | |
| | | dataList: [], |
| | | companyList: [], |
| | | expertData: [], |
| | | isAdmin: false |
| | | isAdmin: false, |
| | | copyVisible:false, |
| | | targetYear:'', |
| | | sourceYear:'', |
| | | }); |
| | | const fields = ref({ |
| | | '序号':'index', |
| | |
| | | '使用地点':'duty', |
| | | '使用情况':'phone' |
| | | }); |
| | | const { queryParams, total, dataList,companyList, isAdmin, expertData } = toRefs(data); |
| | | const { queryParams, total, dataList,companyList, isAdmin, expertData, copyVisible } = toRefs(data); |
| | | const userInfo = ref() |
| | | onMounted(async ()=>{ |
| | | if(userStore.roles.includes('admin')){ |
| | |
| | | } |
| | | }) |
| | | } |
| | | const copy = () => { |
| | | |
| | | data.copyVisible = true |
| | | } |
| | | const onSubmitCopy = async () => { |
| | | if(data.isAdmin && !data.queryParams.companyId){ |
| | | ElMessage.warning('请先选择单位') |
| | | return |
| | | } |
| | | if(!data.sourceYear){ |
| | | ElMessage.warning('请先选择要复制的年份') |
| | | return |
| | | } |
| | | if(!data.targetYear){ |
| | | ElMessage.warning('请选择目标年份') |
| | | return |
| | | } |
| | | ElMessageBox.confirm( |
| | | '该操作将覆盖目标年份的数据,是否继续?', |
| | | '提示', |
| | | { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning', |
| | | }) |
| | | .then( async() => { |
| | | const param = { |
| | | companyId: data.queryParams.companyId, |
| | | sourceYear: data.sourceYear, |
| | | targetYear: data.targetYear |
| | | } |
| | | const res = await copyCalibrationMonitoringEquipment(param); |
| | | if(res.code === 200){ |
| | | ElMessage({ |
| | | type: 'success', |
| | | message: res.data |
| | | }); |
| | | await handleCloseCopy() |
| | | await getList(); |
| | | |
| | | }else{ |
| | | ElMessage.warning(res.message) |
| | | } |
| | | }).catch(err => { |
| | | }) |
| | | } |
| | | const handleCloseCopy = () => { |
| | | data.targetYear='' |
| | | data.sourceYear='' |
| | | data.copyVisible = false |
| | | } |
| | | |
| | | </script> |