From d5bd0e88c1eec6bb2947d2bfa57348d89edbc1c3 Mon Sep 17 00:00:00 2001 From: zhouwx <1175765986@qq.com> Date: 星期五, 18 七月 2025 16:20:45 +0800 Subject: [PATCH] 修改 --- src/views/build/conpanyFunctionConsult/digitalFileDep/manageType/qualityManual/index.vue | 45 +++++++++++++++++++++++++++++++++++---------- 1 files changed, 35 insertions(+), 10 deletions(-) diff --git a/src/views/build/conpanyFunctionConsult/digitalFileDep/manageType/qualityManual/index.vue b/src/views/build/conpanyFunctionConsult/digitalFileDep/manageType/qualityManual/index.vue index 745679e..e71360a 100644 --- a/src/views/build/conpanyFunctionConsult/digitalFileDep/manageType/qualityManual/index.vue +++ b/src/views/build/conpanyFunctionConsult/digitalFileDep/manageType/qualityManual/index.vue @@ -80,7 +80,7 @@ getStandardDetail, getStandardQuality } from "@/api/standardSys/standardSys"; -import {getDepart, getDistribution, getSysClause} from "@/api/orgStructure/depart"; +import {getDepart, getDistribution, getFunctionalRemarkList, getSysClause} from "@/api/orgStructure/depart"; const userStore = useUserStore() const { proxy } = getCurrentInstance(); @@ -183,7 +183,7 @@ const getDeptList = async (val) => { const res = await getDepart({responsType: 1, companyId: val.companyId}) if(res.code == 200){ - data.originDeptList = res.data + data.originDeptList = JSON.parse(JSON.stringify(res.data)) data.deptList.deptName = val.companyName data.deptList.children = proxy.handleTree(res.data, "deptId") }else{ @@ -229,12 +229,14 @@ if(res.code === 200){ if(!res.data || (res.data.companyIndustryTemplates.length == 0 && res.data.companyQualityPolicies.length == 0 && res.data.companySummaries.length == 0 && res.data.sysFunctionalDistributions .length == 0 && res.data.treeSelects.length == 0)){ - return Promise.reject(new Error('该企业暂无质量数据')); + loading.value = false + return Promise.reject(new Error('该企业暂无质量数据')) } data.companyInfo.summaries = res.data.companySummaries ? res.data.companySummaries[0]?.companySummary : [] data.companyInfo.policies = res.data.companyQualityPolicies ? res.data.companyQualityPolicies[0]?.policy : [] const duties = transToTableData(res.data.sysFunctionalDistributions,data.originDeptList) - data.companyInfo.allDeptNames = duties.allDeptNames + data.companyInfo.allDepts = duties.allDepts + console.log(data.companyInfo.allDepts,'all') data.companyInfo.clauses = duties.clauses data.companyInfo.temps = res.data.companyIndustryTemplates?.map((item,index)=>{ return { @@ -247,10 +249,28 @@ } } +const getRemarksList = async (companyId)=> { + const res = await getFunctionalRemarkList({companyId: companyId}) + if(res.code == 200){ + const originRemark = res.data + for(let item of originRemark){ + const foundObj = data.caluseList.find(i=>i.clauseNum == item.clauseNum) + if(foundObj){ + foundObj.remark = item.remark + } + } + data.companyInfo.remarks = originRemark.map(i=>{ + return `${i.clauseNum}:${i.remark}` + }).join(';') + }else{ + ElMessage.warning(res.message) + } +} + const transToTableData=(duties,deptList)=>{ // 步骤1:获取所有唯一的部门和条款编号 // const allDeptNames = [...new Set(duties.map(item => item.deptName))]; - const allDeptNames = deptList ? deptList.map(item => item.deptName) : [...new Set(duties.map(item => item.deptName))] + const allDepts = deptList const allClauseNums = [...new Set([ ...data.caluseList.map(c => c.clauseNum), ...duties.map(d => d.clauseNum) @@ -261,11 +281,15 @@ const processedClauses = allClauseNums.map(clauseNum => { const clauseContent = data.caluseList.find(c => c.clauseNum === clauseNum)?.content || ""; // 为当前条款生成所有部门的数据(确保每个部门都有值) - const deptValues = allDeptNames.map(deptName => { + const deptValues = allDepts.map(dept => { const matchedDept = duties.find( - item => item.clauseNum === clauseNum && item.deptName === deptName - ); - return matchedDept ? (matchedDept.chooseLab==1?'●':'○' ): '○' + item => item.clauseNum === clauseNum && item.deptId === dept.deptId + ) + if(dept.deptType == '0'){ + return matchedDept ? (matchedDept.chooseLab==1?'●':'○' ): '○' + }else{ + return matchedDept ? (matchedDept.chooseLab==1?'▲':'○' ): '○' + } }); return { clauseNum, @@ -276,7 +300,7 @@ // 最终数据结构 return { clauses: processedClauses, - allDeptNames // 用于生成表头 + allDepts // 用于生成表头 }; } @@ -289,6 +313,7 @@ try { await getDeptList(val) await getInfo(val) + await getRemarksList(val.companyId) // 2. 等待DOM更新完成 await nextTick(); -- Gitblit v1.9.2