From 64f549744f33fb80e70ad63b369cc0939d263f86 Mon Sep 17 00:00:00 2001
From: BianLzhaoMin <11485688+bianliangzhaomin123@user.noreply.gitee.com>
Date: Thu, 14 Aug 2025 17:16:31 +0800
Subject: [PATCH] =?UTF-8?q?=E5=9F=BA=E7=A1=80=E7=AE=A1=E7=90=86-=E9=A1=B9?=
=?UTF-8?q?=E7=9B=AE=E7=AE=A1=E7=90=86=E6=95=B4=E4=BD=93=E5=AE=8C=E5=96=84?=
=?UTF-8?q?=EF=BC=8C=E4=BC=98=E5=8C=96?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../project-manage/dept-project.js | 24 +-
src/api/common.js | 17 ++
src/store/modules/common.js | 12 +-
src/utils/getCommonData.js | 35 ++-
.../project-manage/all-project/index.vue | 36 ++-
.../project-manage/dept-project/config.js | 30 +--
.../project-manage/dept-project/index.vue | 244 ++++++++++--------
.../lot-project/add-or-edit-form.vue | 67 ++++-
.../project-manage/lot-project/config.js | 25 +-
.../project-manage/lot-project/index.vue | 46 +++-
10 files changed, 367 insertions(+), 169 deletions(-)
diff --git a/src/api/basic-manage/project-manage/dept-project.js b/src/api/basic-manage/project-manage/dept-project.js
index f47a2c5..d924ea6 100644
--- a/src/api/basic-manage/project-manage/dept-project.js
+++ b/src/api/basic-manage/project-manage/dept-project.js
@@ -1,35 +1,27 @@
import request from '@/utils/request'
-// 新增项目部
-export const addDeptProjectAPI = (data) => {
+// 新增和修改项目部
+export const addAndEditDeptProjectAPI = (data) => {
return request({
- url: '/project/***',
- method: 'POST',
- data,
- })
-}
-
-// 修改项目部
-export const editDeptProjectAPI = (data) => {
- return request({
- url: '/project/***',
+ url: '/bmw/pmOrg/addOrUpdatePmOrg',
method: 'POST',
data,
})
}
// 删除项目部
-export const deleteDeptProjectAPI = (id) => {
+export const deleteDeptProjectAPI = (data) => {
return request({
- url: `/project/****/${id}`,
- method: 'DELETE',
+ url: '/bmw/pmOrg/delPmOrg',
+ method: 'POST',
+ data,
})
}
// 获取项目部列表
export const getDeptProjectListAPI = (data) => {
return request({
- url: '/project/***',
+ url: '/bmw/pmOrg/list',
method: 'GET',
params: data,
})
diff --git a/src/api/common.js b/src/api/common.js
index 1513364..acd540f 100644
--- a/src/api/common.js
+++ b/src/api/common.js
@@ -9,6 +9,7 @@ export function getCompanySelectListAPI() {
method: 'get',
})
}
+
// 获取总包工程列表
export function getMainProjectListAllAPI() {
return request({
@@ -16,3 +17,19 @@ export function getMainProjectListAllAPI() {
method: 'get',
})
}
+
+// 获取分公司下拉列表
+export function getSubCompanySelectListAPI() {
+ return request({
+ url: '/bmw/subCompany/listAll',
+ method: 'get',
+ })
+}
+
+// 获取标段工程下拉列表
+export function getLotProjectSelectListAPI() {
+ return request({
+ url: '/bmw/pmProject/listAll',
+ method: 'get',
+ })
+}
diff --git a/src/store/modules/common.js b/src/store/modules/common.js
index 74a9c0a..2168e35 100644
--- a/src/store/modules/common.js
+++ b/src/store/modules/common.js
@@ -4,16 +4,24 @@ const common = {
companySelectList: [],
// 总包工程列表
mainProjectList: [],
+ // 分公司下拉列表
+ subCompanySelectList: [],
+ // 标段工程下拉列表
+ lotProjectSelectList: [],
},
mutations: {
SET_COMPANY_SELECT_LIST(state, companySelectList) {
state.companySelectList = companySelectList
},
SET_MAIN_PROJECT_LIST(state, mainProjectList) {
- console.log(mainProjectList, 'mainProjectList--store')
-
state.mainProjectList = mainProjectList
},
+ SET_SUB_COMPANY_SELECT_LIST(state, subCompanySelectList) {
+ state.subCompanySelectList = subCompanySelectList
+ },
+ SET_LOT_PROJECT_SELECT_LIST(state, lotProjectSelectList) {
+ state.lotProjectSelectList = lotProjectSelectList
+ },
},
}
diff --git a/src/utils/getCommonData.js b/src/utils/getCommonData.js
index a1f1efa..a784882 100644
--- a/src/utils/getCommonData.js
+++ b/src/utils/getCommonData.js
@@ -1,5 +1,10 @@
import store from '@/store'
-import { getCompanySelectListAPI, getMainProjectListAllAPI } from '@/api/common'
+import {
+ getCompanySelectListAPI,
+ getMainProjectListAllAPI,
+ getSubCompanySelectListAPI,
+ getLotProjectSelectListAPI,
+} from '@/api/common'
// 获取公司下拉列表
export async function getCompanySelectListCommonFun() {
@@ -30,3 +35,31 @@ export async function getMainProjectListCommonFun() {
}
return []
}
+
+// 获取分公司下拉列表
+export async function getSubCompanySelectListCommonFun() {
+ const { subCompanySelectList } = store.state.common
+ if (subCompanySelectList.length > 0) {
+ return subCompanySelectList
+ }
+ const res = await getSubCompanySelectListAPI()
+ if (res.code === 200) {
+ store.commit('SET_SUB_COMPANY_SELECT_LIST', res.rows)
+ return res.rows
+ }
+ return []
+}
+
+// 获取标段工程下拉列表
+export async function getLotProjectSelectListCommonFun() {
+ const { lotProjectSelectList } = store.state.common
+ if (lotProjectSelectList.length > 0) {
+ return lotProjectSelectList
+ }
+ const res = await getLotProjectSelectListAPI()
+ if (res.code === 200) {
+ store.commit('SET_LOT_PROJECT_SELECT_LIST', res.rows)
+ return res.rows
+ }
+ return []
+}
diff --git a/src/views/basic-manage/project-manage/all-project/index.vue b/src/views/basic-manage/project-manage/all-project/index.vue
index 90f96fa..c5da3b8 100644
--- a/src/views/basic-manage/project-manage/all-project/index.vue
+++ b/src/views/basic-manage/project-manage/all-project/index.vue
@@ -146,11 +146,13 @@
label="子项目名称"
prop="proName"
/>
-
+
+
+
+ {{ initProType(row.proType) }}
+
+
+
- {{ row.proStatus }}
+ {{ initProStatus(row.proStatus) }}
@@ -195,7 +197,7 @@ import {
} from '@/api/basic-manage/project-manage/all-project'
export default {
name: 'AllProject',
- dicts: ['voltage_level'],
+ dicts: ['voltage_level', 'project_type', 'project_status'],
components: {
TableModel,
DialogModel,
@@ -356,6 +358,26 @@ export default {
}
this.dialogConfig.outerVisible = false
},
+
+ initProType(data) {
+ if (typeof data === 'string') {
+ return this.dict.type.project_type.find(
+ (item) => item.value == data,
+ ).label
+ }
+
+ return data || ''
+ },
+
+ initProStatus(data) {
+ if (typeof data === 'string') {
+ return this.dict.type.project_status.find(
+ (item) => item.value == data,
+ ).label
+ }
+
+ return data || ''
+ },
},
}
diff --git a/src/views/basic-manage/project-manage/dept-project/config.js b/src/views/basic-manage/project-manage/dept-project/config.js
index ea3d574..7a4edce 100644
--- a/src/views/basic-manage/project-manage/dept-project/config.js
+++ b/src/views/basic-manage/project-manage/dept-project/config.js
@@ -8,42 +8,20 @@ export const formLabel = [
]
export const columnsList = [
- { t_props: 'projectName', t_label: '分公司' },
- { t_props: 'level', t_label: '项目部名称' },
+ { t_props: 'subComName', t_label: '分公司' },
+ { t_props: 'orgName', t_label: '项目部名称' },
{
- t_props: 'count',
t_label: '项目部工程数量',
t_slot: 'count',
},
- { t_props: 'status', t_label: '状态' },
-]
-
-export const testTableList = [
- {
- projectName: '总工程名称',
- level: '电压等级',
- status: '在建',
- count: '6',
- },
- {
- projectName: '总工程名称2',
- level: '电压等级',
- status: '停工',
- count: '5',
- },
- {
- projectName: '总工程名称3',
- level: '电压等级',
- status: '筹建',
- count: '10',
- },
+ { t_slot: 'isEnable', t_label: '状态' },
]
export const dialogConfig = {
outerVisible: false,
outerTitle: '',
- outerWidth: '50%',
+ outerWidth: '40%',
minHeight: '',
maxHeight: '',
}
diff --git a/src/views/basic-manage/project-manage/dept-project/index.vue b/src/views/basic-manage/project-manage/dept-project/index.vue
index 3c438c9..e04dd2f 100644
--- a/src/views/basic-manage/project-manage/dept-project/index.vue
+++ b/src/views/basic-manage/project-manage/dept-project/index.vue
@@ -5,9 +5,8 @@
:formLabel="formLabel"
:showOperation="true"
:showRightTools="true"
- ref="allProjectTableRef"
+ ref="deptProjectTableRef"
:columnsList="columnsList"
- :testTableList="testTableList"
:request-api="getDeptProjectListAPI"
>
@@ -16,7 +15,7 @@
size="mini"
type="success"
icon="el-icon-download"
- @click="onHandleExportAllProject(queryParams)"
+ @click="onHandleExportDeptProject(queryParams)"
>
导出
@@ -26,7 +25,8 @@
size="mini"
type="primary"
icon="el-icon-plus"
- @click="onHandleAddOrEditAllProject(1, null)"
+ v-hasPermi="['dept:project:add']"
+ @click="onHandleAddOrEditDeptProject(1, null)"
>
新增
@@ -35,17 +35,27 @@
- {{ data.count }}
+ {{ data.pmProjectVoList.length }}
+
+
+ {{ data.isEnable === 1 ? '启用' : '解散' }}
+
+
+
修改
@@ -53,7 +63,8 @@
size="mini"
type="danger"
icon="el-icon-delete"
- @click="onHandleDeleteAllProject(data)"
+ v-hasPermi="['dept:project:delete']"
+ @click="onHandleDeleteDeptProject(data)"
>
删除
@@ -75,38 +86,42 @@
:model="addOrEditForm"
:rules="addOrEditFormRules"
>
-
+
-
+
-
+
-
-
+
+ 启用
+
+
+ 解散
+
@@ -140,33 +155,41 @@
-
+
+
+
+ {{ initProType(row.proType) }}
+
+
+
+ prop="proStatus"
+ >
+
+
+ {{ initProStatus(row.proStatus) }}
+
+
+
@@ -177,15 +200,16 @@
diff --git a/src/views/basic-manage/project-manage/lot-project/add-or-edit-form.vue b/src/views/basic-manage/project-manage/lot-project/add-or-edit-form.vue
index 1305674..7f474cd 100644
--- a/src/views/basic-manage/project-manage/lot-project/add-or-edit-form.vue
+++ b/src/views/basic-manage/project-manage/lot-project/add-or-edit-form.vue
@@ -28,7 +28,7 @@
-
-
+ -->
+
+
@@ -193,10 +207,16 @@