From ba0afee077b738f1585b05771c5d5d3865eed930 Mon Sep 17 00:00:00 2001
From: zhouwx <1175765986@qq.com>
Date: Wed, 09 Jul 2025 08:38:25 +0800
Subject: [PATCH] 修改
---
src/views/build/conpanyFunctionConsult/orgStructure/departManage/index.vue | 45 ++++++++++++++++++++++++++++++++++++---------
1 files changed, 36 insertions(+), 9 deletions(-)
diff --git a/src/views/build/conpanyFunctionConsult/orgStructure/departManage/index.vue b/src/views/build/conpanyFunctionConsult/orgStructure/departManage/index.vue
index f66da1c..6117899 100644
--- a/src/views/build/conpanyFunctionConsult/orgStructure/departManage/index.vue
+++ b/src/views/build/conpanyFunctionConsult/orgStructure/departManage/index.vue
@@ -27,14 +27,16 @@
<el-table-column label="序号" type="index" align="center" width="80" />
<el-table-column label="部门名称" prop="deptName" align="center" />
<el-table-column label="负责人" prop="leaderName" align="center" />
- <el-table-column label="主要负责部门" prop="parentName" align="center"/>
+ <el-table-column label="主要负责部门" prop="parentName" align="center">
+ <template #default="scope">
+ <span>
+ {{scope.row.sysDeptManageVoList?.map(i=>i.subDeptName).join('、')}}
+ </span>
+ </template>
+ </el-table-column>
<el-table-column label="部门涉及条款" prop="userTypeName" align="center" width="150">
<template #default="scope">
- <div v-if="scope.row.caluseVO1List">
- <div v-for="(item,index) in scope.row.caluseVO1List" :key="index">
- {{ item.clauseNum + ' ' + item.content}}
- </div>
- </div>
+ {{sortVersionNumbers(scope.row.caluseVO1List?.map(i=>i.clauseNum)).join('、')}}
</template>
</el-table-column>
<el-table-column label="部门职责表" prop="userTypeName" align="center" width="150">
@@ -66,7 +68,14 @@
<script setup>
import {getCurrentInstance, onMounted, onUnmounted, reactive, ref, toRefs} from "vue";
import {ElMessage, ElMessageBox} from "element-plus";
-import {getDepart, delDepart, getCompany, getDeptInfo, initDistribution} from "@/api/orgStructure/depart";
+import {
+ getDepart,
+ delDepart,
+ getCompany,
+ getDeptInfo,
+ initDistribution,
+ getDepartByPage
+} from "@/api/orgStructure/depart";
import departDialog from './components/departDialog.vue'
import dutyDialog from './components/dutyDialog.vue'
import {generateWordDocument} from "./components/exportWord.js";
@@ -117,9 +126,9 @@
const getList = async () => {
loading.value = true
- const res = await getDepart(data.queryParams)
+ const res = await getDepartByPage(data.queryParams)
if(res.code == 200){
- data.dataList = res.data || []
+ data.dataList = res.data.list || []
data.total = res.data.total
}else{
ElMessage.warning(res.message)
@@ -128,6 +137,9 @@
}
const initDistribute = async ()=>{
+ if(!data.queryParams.companyId){
+ ElMessage.warning('请先选择要生成的企业')
+ }
ElMessageBox.confirm(
'重新生成将重置原有分配信息,是否继续?',
'提示',
@@ -246,7 +258,22 @@
ElMessage.warning(res.message)
}
}
+const sortVersionNumbers = (versions) => {
+ return versions.sort((a, b) => {
+ const partsA = a.split('.').map(Number);
+ const partsB = b.split('.').map(Number);
+ const maxLength = Math.max(partsA.length, partsB.length)
+ for (let i = 0; i < maxLength; i++) {
+ const numA = partsA[i] || 0
+ const numB = partsB[i] || 0
+ if (numA !== numB) {
+ return numA - numB
+ }
+ }
+ return 0
+ });
+}
const sortResponsibilities = (list) => {
// 提取firstFive和lastTwo的clauseNum作为排序依据
const firstFiveClauses = data.firstFive.map(item => item.clauseNum)
--
Gitblit v1.9.2