From 1de218de1a08c74e1402af853f7e0d91116d7001 Mon Sep 17 00:00:00 2001 From: gaoxq <376340421@qq.com> Date: Fri, 27 Mar 2026 12:27:01 +0800 Subject: [PATCH] =?UTF-8?q?=E9=A1=B9=E7=9B=AE=E5=88=9D=E5=A7=8B=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/biz/entity/MyProjectInfo.java | 4 +- .../analysis/components/ProjectInfo.vue | 63 ++- .../layouts/views/desktop/analysis/index.vue | 19 +- .../desktop/workbench/components/NoteInfo.vue | 524 ++++++++++++++++++ .../layouts/views/desktop/workbench/index.vue | 38 +- 5 files changed, 605 insertions(+), 43 deletions(-) create mode 100644 web-vue/packages/core/layouts/views/desktop/workbench/components/NoteInfo.vue diff --git a/web-api/src/main/java/com/jeesite/modules/biz/entity/MyProjectInfo.java b/web-api/src/main/java/com/jeesite/modules/biz/entity/MyProjectInfo.java index 2a5c598..f58e23e 100644 --- a/web-api/src/main/java/com/jeesite/modules/biz/entity/MyProjectInfo.java +++ b/web-api/src/main/java/com/jeesite/modules/biz/entity/MyProjectInfo.java @@ -100,9 +100,9 @@ public class MyProjectInfo extends DataEntity implements Serializ @ExcelField(title = "预计结束日期", attrName = "endDate", align = Align.CENTER, sort = 100, dataFormat = "yyyy-MM-dd hh:mm"), @ExcelField(title = "实际结束日期", attrName = "actualEndDate", align = Align.CENTER, sort = 110, dataFormat = "yyyy-MM-dd hh:mm"), @ExcelField(title = "项目预算", attrName = "budget", align = Align.CENTER, sort = 120), - @ExcelField(title = "项目类型", attrName = "projectType", align = Align.CENTER, sort = 130), + @ExcelField(title = "项目类型", attrName = "projectType", dictType = "project_type", align = Align.CENTER, sort = 130), @ExcelField(title = "级别", attrName = "priority", dictType = "biz_priority", align = Align.CENTER, sort = 135), - @ExcelField(title = "项目状态", attrName = "projectStatus", align = Align.CENTER, sort = 140), + @ExcelField(title = "项目状态", attrName = "projectStatus", dictType = "project_status",align = Align.CENTER, sort = 140), @ExcelField(title = "更新时间", attrName = "updateTime", align = Align.CENTER, sort = 150, dataFormat = "yyyy-MM-dd hh:mm"), }) public MyProjectInfo() { diff --git a/web-vue/packages/core/layouts/views/desktop/analysis/components/ProjectInfo.vue b/web-vue/packages/core/layouts/views/desktop/analysis/components/ProjectInfo.vue index 358f696..d7e2ed8 100644 --- a/web-vue/packages/core/layouts/views/desktop/analysis/components/ProjectInfo.vue +++ b/web-vue/packages/core/layouts/views/desktop/analysis/components/ProjectInfo.vue @@ -11,16 +11,22 @@ - - - - + - - + @@ -43,10 +49,22 @@ > - - - - + + + + + + + + + + @@ -59,7 +77,6 @@ :total="total" :page-sizes="[10, 20, 50, 99]" layout="total, sizes, prev, pager, next, jumper" - size="small" @size-change="handleSizeChange" @current-change="handleCurrentChange" background @@ -77,7 +94,11 @@ import { MyProjectInfo, myProjectInfoPageList } from '@jeesite/biz/api/biz/myProjectInfo'; import { DictData, dictDataListData } from '@jeesite/core/api/sys/dictData'; + const priorityDict = ref([]); + const projectTypeDict = ref([]); + const projectStatusDict = ref([]); const sourceData = ref([]); + const loading = ref(false); const searchForm = reactive({ @@ -116,6 +137,25 @@ getList(); }; + async function getDict() { + try { + priorityDict.value = await dictDataListData({ dictType: 'biz_priority' }); + projectTypeDict.value = await dictDataListData({ dictType: 'project_type' }); + projectStatusDict.value = await dictDataListData({ dictType: 'project_status' }); + } catch (error) { + priorityDict.value = []; + projectTypeDict.value = []; + projectStatusDict.value = []; + console.error('获取数据字典失败:', error); + } + } + + function getDictLabel(dictList: DictData[] | undefined, value?: string) { + if (!value) return '-'; + const target = dictList?.find((item) => item.dictValue === value); + return target?.dictLabelRaw || value; + } + async function getList() { loading.value = true; try { @@ -138,6 +178,7 @@ onMounted(() => { getList(); + getDict(); }); function getSummaries({ columns, data }: { columns: TableColumnCtx[]; data: MyProjectInfo[] }) { diff --git a/web-vue/packages/core/layouts/views/desktop/analysis/index.vue b/web-vue/packages/core/layouts/views/desktop/analysis/index.vue index 0d1641e..693f607 100644 --- a/web-vue/packages/core/layouts/views/desktop/analysis/index.vue +++ b/web-vue/packages/core/layouts/views/desktop/analysis/index.vue @@ -17,15 +17,15 @@
- -
+ +
- -
+ +
- -
+ +
@@ -34,13 +34,12 @@ diff --git a/web-vue/packages/core/layouts/views/desktop/workbench/index.vue b/web-vue/packages/core/layouts/views/desktop/workbench/index.vue index 46495ef..be8e0c5 100644 --- a/web-vue/packages/core/layouts/views/desktop/workbench/index.vue +++ b/web-vue/packages/core/layouts/views/desktop/workbench/index.vue @@ -1,18 +1,19 @@