From b926804c218e5600a57b2cba7a445cdceeea3f79 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BA=84=E9=94=90=E6=B3=A2?= <10549902+zhuangruibo@user.noreply.gitee.com> Date: Fri, 8 May 2026 19:00:04 +0800 Subject: [PATCH] =?UTF-8?q?=E8=99=9A=E6=8B=9F=E5=8D=95=E4=BD=8D=E9=87=8D?= =?UTF-8?q?=E7=BB=84=E5=8A=9F=E8=83=BD=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/庄锐波-工作周报.md | 101 ++++++++++++++++++ .../011-重建虚拟单位树.sql | 41 +++---- .../domain/EfcodeVirtualUnit.java | 22 ++-- .../domain/bo/EfcodeVirtualUnitBo.java | 26 ++--- .../domain/vo/EfcodeVirtualUnitVo.java | 32 +++--- .../impl/EfcodeVirtualUnitServiceImpl.java | 6 +- .../views/efcode/virtualUnit/unitBuilder.vue | 11 ++ .../service/test/InitVirtualUnitTest.java | 11 +- 8 files changed, 186 insertions(+), 64 deletions(-) create mode 100644 doc/庄锐波-工作周报.md create mode 100644 zdxt-web-client/zdxt-admin-plus-ui/src/views/efcode/virtualUnit/unitBuilder.vue diff --git a/doc/庄锐波-工作周报.md b/doc/庄锐波-工作周报.md new file mode 100644 index 00000000..5cba4e6a --- /dev/null +++ b/doc/庄锐波-工作周报.md @@ -0,0 +1,101 @@ +# 庄锐波-工作周报 + +## 时间:2026-04-01 至 2026-04-03 + +**本周工作:** + +* 了解一期工程的架构,后端升级的框架,jdk升级到17,spring-boot升级为3.5.12,spring-cloud升级为:2025.0.0,若依升级为:RuoYi-Vue-Plus5.6.0前后端分离版本 +* 了解一期工程的架构,前端升级的框架,监督端改为vue,typescript,vite,主要是为了配合RuoYi-Vue-Plus的前端工程 +* 基于一期的数据库,整理sql的升级脚本,后续二期的数据库基于sql进行升级,整理了部分 +* 建立开发的工程,并根据一期的情况进行部分调整。代码已经迁入git仓库 +* 修改RuoYi-Vue-Plus的某些功能以符合一期的功能需要。二期继续沿用 + +## 时间:2026-04-04 至 2026-04-10 + +**本周工作:** + +* 继续基于一期的数据库,整理sql的升级脚本,后续二期的数据库基于sql进行升级 +* 尝试将1期的代码迁移到新搭建的二期工程中,考虑到迁移工作量较大,并且后边还是得重写一期的功能代码,放弃迁移一期代码的方案,直接开始重写一期的业务功能后台代码 +* 理解一期相关的功能代码 +* 送码入企的功能开发(下周进行测试) + +## 时间:2026-04-11 至 2026-04-17 + +**本周工作:** + +* 继续基于一期的数据库,整理sql的升级脚本,后续二期的数据库基于sql进行升级 +* 制作编译打包脚本,分别将代码编译打包成zdxt-gateway-web-server.jar,zdxt-enf-ep.jar,zdxt-ent-ep.jar,zdxt-sup-ep.jar,zdxt-enf-app,zdxt-ent-app,zdxt-sup-app,zdxt-sup-web +* 重新梳理企业端的代码,从前端工程到后端的业务接口。完成部分 +* 送码入期和富文本编辑的开发协助 + +## 时间:2026-04-18 至 2026-04-24 + +**本周工作:** + +* 继续基于一期的数据库,整理sql的升级脚本,后续二期的数据库基于sql进行升级 +* 基于二期的开发框架,完成企业端的部分功能(登陆,主页,亮码,历史执法信息),ui暂时没怎么处理,后续暂时移交给甘浩,需要注意与深i企重新整合的开发需要参考一期的实现方式 +* 基于二期的开发框架,完成执法端的部分功能(登陆,主页,扫码),ui暂时没怎么处理,后续暂时移交给甘浩,需要注意与深政易重新整合的开发需要参考一期的实现方式。扫码时需要注意进行降级处理:1)与深政易整合的情况下;2)手机直接打开的情况下;3)pc上测试时直接打开的情况下。现在已经做了部分降级处理,但是还没有与深政易完成整合,后续可能还有修改 +* 编辑二期初步的网络架构和部署图,后续讨论 +* 了解数据权限的相关问题,初步构思处理方案 +* 与其他技术人员交流了二期的开发框架 + +## 时间:2026-04-25 至 2026-04-30 + +**本周工作:** + +* 协助处理送码入企的上线部署工作 +* 沟通系统数据查看,统计权限的实现方式 + * 把一期现有的数据统计和查看,基于监督码需要的单位,重新整合为一个树.权限逻辑统一为上级看下级和一个特殊看全部的权限. + 例如: + - A单位----里边的人可以看和统计自己的和下级的, + - ->A1子单位(查询) + - ->A2子单位(统计) + - ->A3子单位(查询/统计) + - 表述的意思就是, + - A查询数据范围=自己单位的+A1单位的+A3单位的 + - A统计数据范围=自己单位的+A2单位的+A3单位的, + - 统计类型的:只能出现一次.避免数据被多次统计 + - 查询类型的:可以出现多次. +* 协助处理一期中导入EXCEL数据没有权限控制的问题 + +
+ +## 时间:2026-05-06 至 2026-05-10 + +**本周工作:** + +* 清理sys_dept和sys_user中的无效字段 +* 基于若依整理二期系统的后台管理功能,并进行补充和开发,初步功能菜单确认为以下,后续逐步完成一下菜单中的功能,有部分功能属于若伊本身自带的,不过在还没有梳理完成前,暂时标记为❌ +```text + 后台管理 + ├── [❌] 系统设置 + │ ├── [❌] 菜单管理 + │ ├── [❌] 数据字典 + │ ├── [❌] 参数设置 + │ ├── [❌] 文件管理 + │ └── [❌] 客户端管理 + ├── [✅] 机构与权限管理 + │ ├── [✅] 市认证单位与人员 + │ ├── [🟡] 执法码单位与人员 + │ │ ├── [🟡] 执法单位设置 + │ │ └── [❌] 执法人员设置 + │ └── [❌] 角色设置 + ├── [❌] 日志管理 + │ ├── [❌] 操作日志 + │ └── [❌] 登陆日志 + ├── [❌] 系统工具 + │ └── [❌] 代码生成 + ├── [❌] 系统监控 + │ ├── [❌] 任务调度 + │ ├── [❌] 缓存监控 + │ ├── [❌] 在线认证用户 + │ └── [❌] 在线企业用户 + ├── [❌] 系统对接 + │ ├── [❌] 密钥管理 + │ ├── [❌] 接口管理 + │ ├── [❌] 前置库 + │ └── [❌] DataX任务备注 + └── [❌] 系统集成模拟 + ├── [❌] 深i企模拟集成 + └── [❌] 深政易模拟集成 +``` diff --git a/script/sql/zfjd-refactoring-v1/011-重建虚拟单位树.sql b/script/sql/zfjd-refactoring-v1/011-重建虚拟单位树.sql index d437cd37..a5651e9e 100644 --- a/script/sql/zfjd-refactoring-v1/011-重建虚拟单位树.sql +++ b/script/sql/zfjd-refactoring-v1/011-重建虚拟单位树.sql @@ -1,23 +1,24 @@ create table efcode_virtual_unit ( - vir_id varchar(100) not null comment '虚拟单位ID' primary key, - vir_is_virtual varchar(20) null comment '是否是虚拟节点', - vir_parent_id varchar(100) default '0' null comment '父部门id', - vir_name varchar(100) null comment '名称', - vir_zone tinyint null comment '类型', - vir_ancestors varchar(500) default '' null comment '虚拟单位祖级ID列表:包含自身', - vir_display_path varchar(1000) null comment '虚拟单位节点的单位路径:包含自身', - vir_include_type varchar(20) null comment '包含类型:查询/统计,查询,统计', - vir_domain varchar(40) null comment '域', - vir_status varchar(40) null comment '状态', - vir_show_at_business varchar(40) null comment '是否在业务中显示', - vir_remark varchar(500) null comment '备注', - sys_dept_id varchar(100) null comment '部门id', - srz_organization_id varchar(100) null comment '市认证的组织ID', - order_num int default 0 null comment '显示顺序', - create_dept varchar(100) null comment '创建部门', - create_by bigint null comment '创建者', - create_time datetime null comment '创建时间', - update_by bigint null comment '更新者', - update_time datetime null comment '更新时间' + vir_id varchar(100) not null comment '虚拟单位ID' primary key, + vir_is_virtual varchar(20) null comment '是否是虚拟节点', + vir_parent_id varchar(100) default '0' null comment '父部门id', + vir_name varchar(100) null comment '名称', + vir_zone tinyint null comment '类型', + vir_ancestors varchar(500) default '' null comment '虚拟单位祖级ID列表:包含自身', + vir_display_path varchar(1000) null comment '虚拟单位节点的单位路径:包含自身', + vir_include_statistics varchar(20) null default '否' comment '包含统计', + vir_include_search varchar(20) null default '是' comment '包含查询', + vir_show_at_business varchar(40) null comment '是否在业务中显示', + vir_domain varchar(40) null comment '域', + vir_status varchar(40) null comment '状态', + vir_remark varchar(500) null comment '备注', + sys_dept_id varchar(100) null comment '部门id', + srz_organization_id varchar(100) null comment '市认证的组织ID', + order_num int default 0 null comment '显示顺序', + create_dept varchar(100) null comment '创建部门', + create_by bigint null comment '创建者', + create_time datetime null comment '创建时间', + update_by bigint null comment '更新者', + update_time datetime null comment '更新时间' ) comment '虚拟单位树' row_format = DYNAMIC; diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EfcodeVirtualUnit.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EfcodeVirtualUnit.java index f2e8c7e2..c18bfbf8 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EfcodeVirtualUnit.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/EfcodeVirtualUnit.java @@ -11,7 +11,7 @@ import java.io.Serial; * 虚拟单位树对象 efcode_virtual_unit * * @author Lion Li - * @date 2026-05-07 + * @date 2026-05-08 */ @Data @EqualsAndHashCode(callSuper = true) @@ -32,7 +32,6 @@ public class EfcodeVirtualUnit extends BaseEntity { */ private String virIsVirtual; - /** * 父部门id */ @@ -59,9 +58,19 @@ public class EfcodeVirtualUnit extends BaseEntity { private String virDisplayPath; /** - * 包含类型:查询/统计,查询,统计 + * 包含统计 + */ + private String virIncludeStatistics; + + /** + * 包含查询 + */ + private String virIncludeSearch; + + /** + * 是否在业务中显示 */ - private String virIncludeType; + private String virShowAtBusiness; /** * 域 @@ -73,11 +82,6 @@ public class EfcodeVirtualUnit extends BaseEntity { */ private String virStatus; - /** - * 是否在业务中显示 - */ - private String virShowAtBusiness; - /** * 备注 */ diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EfcodeVirtualUnitBo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EfcodeVirtualUnitBo.java index cb45d666..c385c67b 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EfcodeVirtualUnitBo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EfcodeVirtualUnitBo.java @@ -13,7 +13,7 @@ import jakarta.validation.constraints.*; * 虚拟单位树业务对象 efcode_virtual_unit * * @author Lion Li - * @date 2026-05-07 + * @date 2026-05-08 */ @Data @EqualsAndHashCode(callSuper = true) @@ -31,11 +31,6 @@ public class EfcodeVirtualUnitBo extends BaseEntity { */ private String virIsVirtual; - /** - * 租户编号 - */ - private String virTenantId; - /** * 父部门id */ @@ -62,9 +57,19 @@ public class EfcodeVirtualUnitBo extends BaseEntity { private String virDisplayPath; /** - * 包含类型:查询/统计,查询,统计 + * 包含统计 + */ + private String virIncludeStatistics; + + /** + * 包含查询 + */ + private String virIncludeSearch; + + /** + * 是否在业务中显示 */ - private String virIncludeType; + private String virShowAtBusiness; /** * 域 @@ -76,11 +81,6 @@ public class EfcodeVirtualUnitBo extends BaseEntity { */ private String virStatus; - /** - * 是否在业务中显示 - */ - private String virShowAtBusiness; - /** * 备注 */ diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EfcodeVirtualUnitVo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EfcodeVirtualUnitVo.java index 707c5c14..2a523b7d 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EfcodeVirtualUnitVo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EfcodeVirtualUnitVo.java @@ -18,7 +18,7 @@ import java.util.Date; * 虚拟单位树视图对象 efcode_virtual_unit * * @author Lion Li - * @date 2026-05-07 + * @date 2026-05-08 */ @Data @ExcelIgnoreUnannotated @@ -40,12 +40,6 @@ public class EfcodeVirtualUnitVo implements Serializable { @ExcelProperty(value = "是否是虚拟节点") private String virIsVirtual; - /** - * 租户编号 - */ - @ExcelProperty(value = "租户编号") - private String virTenantId; - /** * 父部门id */ @@ -77,10 +71,22 @@ public class EfcodeVirtualUnitVo implements Serializable { private String virDisplayPath; /** - * 包含类型:查询/统计,查询,统计 + * 包含统计 + */ + @ExcelProperty(value = "包含统计") + private String virIncludeStatistics; + + /** + * 包含查询 + */ + @ExcelProperty(value = "包含查询") + private String virIncludeSearch; + + /** + * 是否在业务中显示 */ - @ExcelProperty(value = "包含类型:查询/统计,查询,统计") - private String virIncludeType; + @ExcelProperty(value = "是否在业务中显示") + private String virShowAtBusiness; /** * 域 @@ -94,12 +100,6 @@ public class EfcodeVirtualUnitVo implements Serializable { @ExcelProperty(value = "状态") private String virStatus; - /** - * 是否在业务中显示 - */ - @ExcelProperty(value = "是否在业务中显示") - private String virShowAtBusiness; - /** * 备注 */ diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EfcodeVirtualUnitServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EfcodeVirtualUnitServiceImpl.java index 9a55b7a3..7dca5653 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EfcodeVirtualUnitServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EfcodeVirtualUnitServiceImpl.java @@ -76,13 +76,15 @@ public class EfcodeVirtualUnitServiceImpl implements IEfcodeVirtualUnitService { lqw.orderByAsc(EfcodeVirtualUnit::getVirId); lqw.eq(StringUtils.isNotBlank(bo.getVirIsVirtual()), EfcodeVirtualUnit::getVirIsVirtual, bo.getVirIsVirtual()); lqw.eq(StringUtils.isNotBlank(bo.getVirParentId()), EfcodeVirtualUnit::getVirParentId, bo.getVirParentId()); + lqw.like(StringUtils.isNotBlank(bo.getVirName()), EfcodeVirtualUnit::getVirName, bo.getVirName()); lqw.eq(bo.getVirZone() != null, EfcodeVirtualUnit::getVirZone, bo.getVirZone()); lqw.eq(StringUtils.isNotBlank(bo.getVirAncestors()), EfcodeVirtualUnit::getVirAncestors, bo.getVirAncestors()); lqw.eq(StringUtils.isNotBlank(bo.getVirDisplayPath()), EfcodeVirtualUnit::getVirDisplayPath, bo.getVirDisplayPath()); - lqw.eq(StringUtils.isNotBlank(bo.getVirIncludeType()), EfcodeVirtualUnit::getVirIncludeType, bo.getVirIncludeType()); + lqw.eq(StringUtils.isNotBlank(bo.getVirIncludeStatistics()), EfcodeVirtualUnit::getVirIncludeStatistics, bo.getVirIncludeStatistics()); + lqw.eq(StringUtils.isNotBlank(bo.getVirIncludeSearch()), EfcodeVirtualUnit::getVirIncludeSearch, bo.getVirIncludeSearch()); + lqw.eq(StringUtils.isNotBlank(bo.getVirShowAtBusiness()), EfcodeVirtualUnit::getVirShowAtBusiness, bo.getVirShowAtBusiness()); lqw.eq(StringUtils.isNotBlank(bo.getVirDomain()), EfcodeVirtualUnit::getVirDomain, bo.getVirDomain()); lqw.eq(StringUtils.isNotBlank(bo.getVirStatus()), EfcodeVirtualUnit::getVirStatus, bo.getVirStatus()); - lqw.eq(StringUtils.isNotBlank(bo.getVirShowAtBusiness()), EfcodeVirtualUnit::getVirShowAtBusiness, bo.getVirShowAtBusiness()); lqw.eq(StringUtils.isNotBlank(bo.getVirRemark()), EfcodeVirtualUnit::getVirRemark, bo.getVirRemark()); lqw.eq(StringUtils.isNotBlank(bo.getSysDeptId()), EfcodeVirtualUnit::getSysDeptId, bo.getSysDeptId()); lqw.eq(StringUtils.isNotBlank(bo.getSrzOrganizationId()), EfcodeVirtualUnit::getSrzOrganizationId, bo.getSrzOrganizationId()); diff --git a/zdxt-web-client/zdxt-admin-plus-ui/src/views/efcode/virtualUnit/unitBuilder.vue b/zdxt-web-client/zdxt-admin-plus-ui/src/views/efcode/virtualUnit/unitBuilder.vue new file mode 100644 index 00000000..63cf316b --- /dev/null +++ b/zdxt-web-client/zdxt-admin-plus-ui/src/views/efcode/virtualUnit/unitBuilder.vue @@ -0,0 +1,11 @@ + + + + + + + diff --git a/zdxt-web-server/zdxt-admin-web-server/src/test/java/com/zdxt/service/test/InitVirtualUnitTest.java b/zdxt-web-server/zdxt-admin-web-server/src/test/java/com/zdxt/service/test/InitVirtualUnitTest.java index 9d3654fc..e9bacdd5 100644 --- a/zdxt-web-server/zdxt-admin-web-server/src/test/java/com/zdxt/service/test/InitVirtualUnitTest.java +++ b/zdxt-web-server/zdxt-admin-web-server/src/test/java/com/zdxt/service/test/InitVirtualUnitTest.java @@ -180,10 +180,11 @@ public class InitVirtualUnitTest { // 6. 为每个区创建 "区直" 虚拟节点,并将 zone=3/5/6 的部门挂到对应区直下 districtMap.forEach((pid, districtName) -> { - EfcodeVirtualUnit quzhiUnit = buildVirtualUnit(pid, "区直", null, 0L); + String quzhiName = districtName + "区直"; + EfcodeVirtualUnit quzhiUnit = buildVirtualUnit(pid, quzhiName, null, 0L); String quzhiId = quzhiUnit.getVirId(); allUnits.add(quzhiUnit); - idNameMap.put(quzhiId, "区直"); + idNameMap.put(quzhiId, quzhiName); for (SysDeptVo dept : depts) { if (Objects.equals(dept.getZone(), 3) || Objects.equals(dept.getZone(), 6) || Objects.equals(dept.getZone(), 5)) { @@ -265,7 +266,8 @@ public class InitVirtualUnitTest { unit.setVirName(dept.getDeptName()); unit.setVirZone(dept.getZone() != null ? Long.valueOf(dept.getZone()) : null); unit.setVirStatus("启用"); - unit.setVirIncludeType("全部"); + unit.setVirIncludeStatistics("是"); + unit.setVirIncludeSearch("是"); unit.setVirShowAtBusiness("是"); unit.setSysDeptId(dept.getDeptId()); unit.setSrzOrganizationId(deptOrgIdMap.getOrDefault(dept.getDeptId(), "")); @@ -334,7 +336,8 @@ public class InitVirtualUnitTest { unit.setVirName(name); unit.setVirZone(zone); unit.setVirStatus("启用"); - unit.setVirIncludeType("全部"); + unit.setVirIncludeStatistics("是"); + unit.setVirIncludeSearch("是"); unit.setVirShowAtBusiness("是"); unit.setSysDeptId(null); unit.setSrzOrganizationId(null);