日期: 2026-06-04
个人标签库模块(personalTag)用于管理个人标签信息,支持省一体化平台回流和本地自定义两种来源的标签,并提供标签的启用/停用状态管理。该模块采用 JeecgBoot 的前后端分离架构,前端基于 Vue3 + Ant Design Vue,后端基于 Spring Boot + MyBatis-Plus。
tag_id + personal_id 两个字段,联合主键。| 文件 | 用途 |
|---|---|
PersonalTagList.vue |
个人标签列表页面,提供查询、新增、编辑、详情、删除、批量删除、批量启用/停用、导入导出、高级查询等功能 |
PersonalTag.api.ts |
个人标签 API 封装 |
PersonalTag.data.ts |
列表页表格列配置(9列)与高级查询字段定义(8个查询字段) |
components/PersonalTagForm.vue |
个人标签新增/编辑/详情表单组件 |
components/PersonalTagModal.vue |
个人标签弹窗组件,包裹 PersonalTagForm,全屏模式 |
components/PersonalTagPersonalModal.vue |
关联人员列表弹窗组件,点击"本地关联人数"时弹出 |
| 层次 | 文件 |
|---|---|
| Controller | controller/PersonalTagController.java |
| Entity | entity/PersonalTag.java |
| Service | service/IPersonalTagService.java |
| Service Impl | service/impl/PersonalTagServiceImpl.java |
| Mapper | mapper/PersonalTagMapper.java |
| Mapper XML | mapper/xml/PersonalTagMapper.xml |
| 功能 | 说明 |
|---|---|
| 分页列表查询 | 支持按标签名称、所属一级分类、所属二级分类、启用状态、数据来源等条件查询,9 列展示(含本地关联人数) |
| 新增 | 全屏表单,支持 8 个标签字段录入 |
| 编辑 | 复用新增表单,预填充已有数据 |
| 详情 | 表单禁用模式查看标签全部信息 |
| 删除 / 批量删除 | 支持单条删除和批量删除,删除前弹窗确认 |
| 批量启用/停用 | 支持选中多条标签后批量修改启用状态 |
| 导入 / 导出 Excel | 基于 Jeecg 标准 Excel 导出导入功能,导出使用 VO 含本地关联人数 |
| 高级查询 | 8 个查询字段,支持灵活的筛选条件 |
| 标签名称唯一性校验 | 新增/编辑时后端校验标签名称不可重复 |
共 3 个必填字段:标签名称、启用状态、数据来源。
| 日期 | 内容 | 涉及文件 | 说明 |
|---|---|---|---|
| 2026-06-02 | 个人标签模块初始构建 | 前端 5 个文件 + 后端 6 个文件 | 完成个人标签管理的基础 CRUD 功能,含 Excel 导入导出、批量启用/停用、标签名称唯一性校验 |
| 2026-06-05 | 本地关联人数可点击查看人员列表 | 后端 1 文件 + 前端 3 文件 | 关联人数列变为可点击链接,弹窗展示标签关联的人员列表,支持搜索和查看详情 |
| 分类 | 字段 | 说明 |
|---|---|---|
| 基础信息 | provinceStandardCode | 省标编码 |
| tagCode | 标签编码 | |
| tagName | 标签名称(必填) | |
| firstCategory | 所属一级分类 | |
| secondCategory | 所属二级分类 | |
| tagDescription | 标签说明 | |
| 状态 | tagStatus | 启用状态(必填,1启用/0停用) |
| dataSource | 数据来源(必填,1省一体化平台回流/2本地自定义) | |
| 系统字段 | id / createBy / createTime / updateBy / updateTime / sysOrgCode | 系统内置字段 |
| 列 | 对应字段 | 说明 |
|---|---|---|
| 序号 | index | 自定义列,customRender 显示行索引 |
| 省标编码 | provinceStandardCode | 原"省标标码"更名 |
| 标签名称 | tagName | — |
| 所属一级分类 | firstCategory | — |
| 所属二级分类 | secondCategory | — |
| 标签说明 | tagDescription | — |
| 启用状态 | tagStatus | customRender 翻译为"启用"/"停用" |
| 本地关联人数 | relationCount | 关联中间表 COUNT(DISTINCT personal_id) 计算 |
| 数据来源 | dataSource | customRender 翻译为"省一体化平台回流"/"本地自定义" |
标签名称、所属一级分类、所属二级分类、启用状态(下拉选择)、数据来源(下拉选择)
需求描述: 构建个人标签管理模块,实现标签的基础 CRUD、Excel 导入导出功能,支持批量启用/停用状态管理,新增/编辑时后端校验标签名称唯一性。
涉及文件:
| 文件 | 操作 | 原因 |
|---|---|---|
jeecgboot-vue3/src/views/recruitment/personalTag/PersonalTagList.vue |
新增 | 个人标签列表页,含查询区域(3个条件)、表格(9列)、操作栏、导入导出和批量操作按钮 |
jeecgboot-vue3/src/views/recruitment/personalTag/PersonalTag.api.ts |
新增 | 封装个人标签 CRUD、导入导出、批量更新状态 API 接口 |
jeecgboot-vue3/src/views/recruitment/personalTag/PersonalTag.data.ts |
新增 | 定义 9 列表格列配置与 8 个高级查询字段 |
jeecgboot-vue3/src/views/recruitment/personalTag/components/PersonalTagForm.vue |
新增 | 个人标签表单,含 3 个必填字段校验,8 个字段录入 |
jeecgboot-vue3/src/views/recruitment/personalTag/components/PersonalTagModal.vue |
新增 | 全屏弹窗包裹 PersonalTagForm,提供新增/编辑/详情入口 |
jeecg-boot/.../tag/controller/PersonalTagController.java |
新增 | 个人标签 REST 控制器,提供 CRUD + 导出导入 + 批量修改状态接口 |
jeecg-boot/.../tag/entity/PersonalTag.java |
新增 | 个人标签实体,映射 personal_tag 表 |
jeecg-boot/.../tag/service/IPersonalTagService.java |
新增 | 服务接口,定义 batchUpdateStatus 和 checkTagNameUnique 方法 |
jeecg-boot/.../tag/service/impl/PersonalTagServiceImpl.java |
新增 | 服务实现,批量修改状态使用 AssertUtils 校验参数合法性;标签名称唯一性校验排除自身ID |
jeecg-boot/.../tag/mapper/PersonalTagMapper.java |
新增 | Mapper 接口,继承 BaseMapper |
jeecg-boot/.../tag/mapper/xml/PersonalTagMapper.xml |
新增 | MyBatis XML 映射骨架 |
企业标签库模块(enterpriseTag)用于管理企业标签信息,功能与个人标签库对称,支持省一体化平台回流和本地自定义两种来源的标签,并提供标签的启用/停用状态管理。
tag_id + enterprise_id 两个字段,联合主键。| 文件 | 用途 |
|---|---|
EnterpriseTagList.vue |
企业标签列表页面,提供查询、新增、编辑、详情、删除、批量删除、批量启用/停用、导入导出等功能 |
EnterpriseTag.api.ts |
企业标签 API 封装 |
EnterpriseTag.data.ts |
列表页表格列配置(9列)与高级查询字段定义(8个查询字段) |
components/EnterpriseTagForm.vue |
企业标签新增/编辑/详情表单组件 |
components/EnterpriseTagModal.vue |
企业标签弹窗组件,包裹 EnterpriseTagForm,全屏模式 |
| 层次 | 文件 |
|---|---|
| Controller | controller/EnterpriseTagController.java |
| Entity | entity/EnterpriseTag.java |
| Service | service/IEnterpriseTagService.java |
| Service Impl | service/impl/EnterpriseTagServiceImpl.java |
| Mapper | mapper/EnterpriseTagMapper.java |
| Mapper XML | mapper/xml/EnterpriseTagMapper.xml |
| 功能 | 说明 |
|---|---|
| 分页列表查询 | 支持按标签名称、所属一级分类、所属二级分类、启用状态、数据来源等条件查询,9 列展示(含本地关联人数) |
| 新增 | 全屏表单,支持 8 个标签字段录入 |
| 编辑 | 复用新增表单,预填充已有数据 |
| 详情 | 表单禁用模式查看标签全部信息 |
| 删除 / 批量删除 | 支持单条删除和批量删除,删除前弹窗确认 |
| 批量启用/停用 | 支持选中多条标签后批量修改启用状态 |
| 导入 / 导出 Excel | 基于 Jeecg 标准 Excel 导出导入功能,导出使用 VO 含本地关联人数 |
| 高级查询 | 已定义 superQuerySchema(8个查询字段),前端列表页中高级查询按钮已注释 |
| 标签名称唯一性校验 | 新增/编辑时后端校验标签名称不可重复 |
共 3 个必填字段:标签名称、启用状态、数据来源。
| 日期 | 内容 | 涉及文件 | 说明 |
|---|---|---|---|
| 2026-06-02 | 企业标签模块初始构建 | 前端 5 个文件 + 后端 6 个文件 | 完成企业标签管理的基础 CRUD 功能,含 Excel 导入导出、批量启用/停用、标签名称唯一性校验 |
| 分类 | 字段 | 说明 |
|---|---|---|
| 基础信息 | provinceStandardCode | 省标编码 |
| tagCode | 标签编码 | |
| tagName | 标签名称(必填) | |
| firstCategory | 所属一级分类 | |
| secondCategory | 所属二级分类 | |
| tagDescription | 标签说明 | |
| 状态 | tagStatus | 启用状态(必填,1启用/0停用) |
| dataSource | 数据来源(必填,1省一体化平台回流/2本地自定义) | |
| 系统字段 | id / createBy / createTime / updateBy / updateTime / sysOrgCode | 系统内置字段 |
与个人标签库完全对称:
| 列 | 对应字段 | 说明 |
|---|---|---|
| 序号 | index | 自定义列,customRender 显示行索引 |
| 省标编码 | provinceStandardCode | 原"省标标码"更名 |
| 标签名称 | tagName | — |
| 所属一级分类 | firstCategory | — |
| 所属二级分类 | secondCategory | — |
| 标签说明 | tagDescription | — |
| 启用状态 | tagStatus | customRender 翻译为"启用"/"停用" |
| 本地关联人数 | relationCount | 关联中间表 COUNT(DISTINCT enterprise_id) 计算 |
| 数据来源 | dataSource | customRender 翻译为"省一体化平台回流"/"本地自定义" |
标签名称、所属一级分类、所属二级分类、启用状态(下拉选择)、数据来源(下拉选择)
需求描述: 构建企业标签管理模块,实现标签的基础 CRUD、Excel 导入导出功能,支持批量启用/停用状态管理,新增/编辑时后端校验标签名称唯一性。功能与个人标签库完全对称。
涉及文件:
| 文件 | 操作 | 原因 |
|---|---|---|
jeecgboot-vue3/src/views/recruitment/enterpriseTag/EnterpriseTagList.vue |
新增 | 企业标签列表页,含查询区域(3个条件)、表格(9列)、操作栏、导入导出和批量操作按钮(高级查询按钮已注释) |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/EnterpriseTag.api.ts |
新增 | 封装企业标签 CRUD、导入导出、批量更新状态 API 接口 |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/EnterpriseTag.data.ts |
新增 | 定义 9 列表格列配置与 8 个高级查询字段 |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/components/EnterpriseTagForm.vue |
新增 | 企业标签表单,含 3 个必填字段校验,8 个字段录入 |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/components/EnterpriseTagModal.vue |
新增 | 全屏弹窗包裹 EnterpriseTagForm,提供新增/编辑/详情入口 |
jeecg-boot/.../tag/controller/EnterpriseTagController.java |
新增 | 企业标签 REST 控制器,提供 CRUD + 导出导入 + 批量修改状态接口 |
jeecg-boot/.../tag/entity/EnterpriseTag.java |
新增 | 企业标签实体,映射 enterprise_tag 表 |
jeecg-boot/.../tag/service/IEnterpriseTagService.java |
新增 | 服务接口,定义 batchUpdateStatus 和 checkTagNameUnique 方法 |
jeecg-boot/.../tag/service/impl/EnterpriseTagServiceImpl.java |
新增 | 服务实现,批量修改状态使用 AssertUtils 校验参数合法性;标签名称唯一性校验排除自身ID |
jeecg-boot/.../tag/mapper/EnterpriseTagMapper.java |
新增 | Mapper 接口,继承 BaseMapper |
jeecg-boot/.../tag/mapper/xml/EnterpriseTagMapper.xml |
新增 | MyBatis XML 映射骨架 |
为支持标签库与业务信息的多对多关联,建立两个关联中间表。
tag_id + personal_id 建立多对多关系。tag_id + enterprise_id 建立多对多关系。两个表均只有两个字段(标签ID + 业务实体ID),并使用联合主键。
| 层次 | 文件 |
|---|---|
| Entity | entity/PersonalTagRelation.java |
| Entity | entity/EnterpriseTagRelation.java |
| Mapper | mapper/PersonalTagRelationMapper.java |
| Mapper | mapper/EnterpriseTagRelationMapper.java |
| Mapper XML | mapper/xml/PersonalTagRelationMapper.xml |
| Mapper XML | mapper/xml/EnterpriseTagRelationMapper.xml |
| 文件 | 操作 | 说明 |
|---|---|---|
.docs/sql/标签库信息.sql |
新增 | 在个人标签表和企业标签表之后追加 PERSONAL_TAG_RELATION 和 ENTERPRISE_TAG_RELATION 两张关联中间表的建表语句 |
| 字段 | 类型 | 说明 | 约束 |
|---|---|---|---|
| tag_id | VARCHAR(36) | 标签ID(关联PERSONAL_TAG.ID) | NOT NULL,联合主键 |
| personal_id | VARCHAR(36) | 个人ID(关联PERSONAL_INFO.ID) | NOT NULL,联合主键 |
| 字段 | 类型 | 说明 | 约束 |
|---|---|---|---|
| tag_id | VARCHAR(36) | 标签ID(关联ENTERPRISE_TAG.ID) | NOT NULL,联合主键 |
| enterprise_id | VARCHAR(36) | 企业ID(关联ENTERPRISE_INFO.ID) | NOT NULL,联合主键 |
需求描述: 为标签库与业务信息建立多对多关联关系,创建两张中间表,两个中间表均只包含标签ID + 业务实体ID两个字段,使用联合主键。
涉及文件:
| 文件 | 操作 | 原因 |
|---|---|---|
.docs/sql/标签库信息.sql |
修改 | 新增 PERSONAL_TAG_RELATION 和 ENTERPRISE_TAG_RELATION 两张关联中间表的建表语句,含表注释和字段注释 |
jeecg-boot/.../tag/entity/PersonalTagRelation.java |
新增 | 个人标签关联实体,映射 personal_tag_relation 表,仅含 tagId + personalId 两个字段 |
jeecg-boot/.../tag/entity/EnterpriseTagRelation.java |
新增 | 企业标签关联实体,映射 enterprise_tag_relation 表,仅含 tagId + enterpriseId 两个字段 |
jeecg-boot/.../tag/mapper/PersonalTagRelationMapper.java |
新增 | 个人标签关联 Mapper 接口,继承 BaseMapper |
jeecg-boot/.../tag/mapper/EnterpriseTagRelationMapper.java |
新增 | 企业标签关联 Mapper 接口,继承 BaseMapper |
jeecg-boot/.../tag/mapper/xml/PersonalTagRelationMapper.xml |
新增 | MyBatis XML 映射骨架 |
jeecg-boot/.../tag/mapper/xml/EnterpriseTagRelationMapper.xml |
新增 | MyBatis XML 映射骨架 |
需求描述: 调整个人标签库和企业标签库的查询字段与展示字段,增加"本地关联人数"列,通过关联中间表计算每个标签关联的不重复个人/企业数量;创建 VO 类承载分页列表导出数据,后端分页查询和导出接口改为 VO 映射。
查询字段调整(从3个改为5个):
| 新查询字段 | 对应字段 | 说明 |
|---|---|---|
| 标签名称 | tagName | 保留 |
| 所属一级分类 | firstCategory | 新增查询字段 |
| 所属二级分类 | secondCategory | 新增查询字段 |
| 启用状态 | tagStatus | 原"标签状态"改名为"启用状态" |
| 数据来源 | dataSource | 保留 |
删除的查询字段: 无(原有标签状态改为启用状态)
表格列调整(9列):
| 新列 | 对应字段 | 说明 |
|---|---|---|
| 序号 | index | 保留 |
| 省标编码 | provinceStandardCode | 原"省标标码"改名,取消标签编码列 |
| 标签名称 | tagName | 保留 |
| 所属一级分类 | firstCategory | 保留 |
| 所属二级分类 | secondCategory | 保留 |
| 标签说明 | tagDescription | 保留 |
| 启用状态 | tagStatus | 原"标签启用状态"改名 |
| 本地关联人数 | relationCount | 新增,关联中间表 COUNT(DISTINCT) 计算 |
| 数据来源 | dataSource | 保留 |
删除的列: 标签编码
涉及文件:
| 文件 | 操作 | 原因 |
|---|---|---|
jeecg-boot/.../tag/vo/PersonalTagVo.java |
新增 | 个人标签 VO,含 entity 所有字段 + relationCount,标注 @Excel 用于导出 |
jeecg-boot/.../tag/vo/EnterpriseTagVo.java |
新增 | 企业标签 VO,含 entity 所有字段 + relationCount,标注 @Excel 用于导出 |
jeecg-boot/.../tag/mapper/xml/PersonalTagMapper.xml |
修改 | 新增 queryPageListWithRelationCount 和 queryListWithRelationCount 两个 SQL 查询,通过子查询 LEFT JOIN PERSONAL_TAG_RELATION 计算 COUNT(DISTINCT PERSONAL_ID) 并应用 ${ew.customSqlSegment} 条件过滤 |
jeecg-boot/.../tag/mapper/xml/EnterpriseTagMapper.xml |
修改 | 同上,LEFT JOIN ENTERPRISE_TAG_RELATION 计算 COUNT(DISTINCT ENTERPRISE_ID) |
jeecg-boot/.../tag/mapper/PersonalTagMapper.java |
修改 | 新增两个 VO 查询方法声明 |
jeecg-boot/.../tag/mapper/EnterpriseTagMapper.java |
修改 | 新增两个 VO 查询方法声明 |
jeecg-boot/.../tag/service/IPersonalTagService.java |
修改 | 新增 queryPageListWithRelationCount 和 queryListWithRelationCount 方法声明 |
jeecg-boot/.../tag/service/IEnterpriseTagService.java |
修改 | 新增 queryPageListWithRelationCount 和 queryListWithRelationCount 方法声明 |
jeecg-boot/.../tag/service/impl/PersonalTagServiceImpl.java |
修改 | 实现两个 VO 查询方法;queryListWithRelationCount 中处理导出 selections 选中记录筛选 |
jeecg-boot/.../tag/service/impl/EnterpriseTagServiceImpl.java |
修改 | 同上 |
jeecg-boot/.../tag/controller/PersonalTagController.java |
修改 | list 接口返回类型改为 IPage<PersonalTagVo>,委托 Service 的 VO 查询方法;exportXls 改写为使用 JeecgEntityExcelView + PersonalTagVo.class + queryListWithRelationCount 导出 VO 列表 |
jeecg-boot/.../tag/controller/EnterpriseTagController.java |
修改 | 同上,使用 EnterpriseTagVo |
jeecgboot-vue3/src/views/recruitment/personalTag/PersonalTagList.vue |
修改 | 查询表单从 3 个字段改为 5 个(新增所属一级分类、所属二级分类,标签状态改为启用状态),布局调整为 5+1 按钮每行 |
jeecgboot-vue3/src/views/recruitment/personalTag/PersonalTag.data.ts |
修改 | 表格列去掉标签编码,省标标码改名为省标编码,标签启用状态改名为启用状态,新增本地关联人数列 |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/EnterpriseTagList.vue |
修改 | 同上 |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/EnterpriseTag.data.ts |
修改 | 同上 |
需求描述: 将个人标签库和企业标签库的前端 dataSource 字段从硬编码 <a-select-option> 改为通过 useDict 字典工具从后端批量接口加载字典数据,遵循项目现有字典实现规范。
涉及文件:
| 文件 | 操作 | 原因 |
|---|---|---|
jeecgboot-vue3/src/views/recruitment/personalTag/PersonalTagList.vue |
修改 | 查询表单 dataSource 的 <a-select> 从硬编码 <a-select-option> 改为 :options="dataSourceOptions" 绑定字典选项;bodyCell 插槽新增 getDictText('DataSource', text) 翻译渲染;脚本区导入 useDict、computed,设置 getDictOptions 和 dataSourceOptions |
jeecgboot-vue3/src/views/recruitment/personalTag/PersonalTag.data.ts |
修改 | 移除 dataSource 列的硬编码 customRender(改为由 bodyCell 统一翻译) |
jeecgboot-vue3/src/views/recruitment/personalTag/components/PersonalTagForm.vue |
修改 | 表单 dataSource 从硬编码 <a-select-option> 改为 :options="dataSourceOptions" 绑定字典选项;脚本区导入 useDict,设置 getDictOptions 和 dataSourceOptions |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/EnterpriseTagList.vue |
修改 | 同上 PersonalTagList.vue 改动 |
需求描述: 企业标签列表的"本地关联企业数"列改为可点击链接,点击后弹出弹窗展示该标签关联的企业列表。弹窗内包含企业查询表单和数据表格,支持按单位名称、统一信用代码、单位类型、所属行业、数据来源等条件搜索,并可点击"详情"打开企业信息详情弹窗。
后端改动:
| 文件 | 操作 | 原因 |
|---|---|---|
jeecg-boot/.../tag/controller/EnterpriseTagController.java |
修改 | 新增 EnterpriseInfoService 和 EnterpriseTagRelationMapper 注入;新增 GET /tag/enterpriseTag/queryEnterpriseList 端点,根据 tagId 从关联表查出企业ID列表,结合前端搜索条件分页查询企业信息(含岗位数) |
前端改动:
| 文件 | 操作 | 原因 |
|---|---|---|
jeecgboot-vue3/src/views/recruitment/enterpriseTag/EnterpriseTag.api.ts |
修改 | 新增 queryEnterpriseList API 枚举和导出函数 |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/components/EnterpriseTagEnterpriseModal.vue |
新增 | 企业关联列表弹窗组件,仿照 EnterprisePostListModal.vue 模式实现:包含5个查询条件的搜索表单、企业信息数据表格(9列)、操作栏"详情"按钮调用 EnterpriseInfoDetailModal |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/EnterpriseTagList.vue |
修改 | 在 bodyCell 插槽中新增 relationCount 列处理,渲染为可点击蓝色下划线数字;新增 handleViewEnterpriseList 方法打开企业列表弹窗;新增 .link-count 样式;引入并注册 EnterpriseTagEnterpriseModal 弹窗组件 |
需求描述: 个人标签列表的"本地关联人数"列改为可点击链接,点击后弹出弹窗展示该标签关联的人员列表。弹窗内包含人员查询表单和数据表格,支持按姓名、证件号码、联系电话、求职状态、数据来源等条件搜索,并可点击"详情"打开人员信息详情弹窗。
后端改动:
| 文件 | 操作 | 原因 |
|---|---|---|
jeecg-boot/.../tag/controller/PersonalTagController.java |
修改 | 新增 IPersonalInfoService 和 PersonalTagRelationMapper 注入;新增 GET /tag/personalTag/queryPersonalList 端点,根据 tagId 从关联表查出个人ID列表,结合前端搜索条件分页查询个人信息 |
前端改动:
| 文件 | 操作 | 原因 |
|---|---|---|
jeecgboot-vue3/src/views/recruitment/personalTag/PersonalTag.api.ts |
修改 | 新增 queryPersonalList API 枚举和导出函数 |
jeecgboot-vue3/src/views/recruitment/personalTag/components/PersonalTagPersonalModal.vue |
新增 | 个人关联列表弹窗组件,仿照 EnterpriseTagEnterpriseModal.vue 模式实现:包含5个查询条件的搜索表单(姓名、证件号码、联系电话、求职状态、数据来源)、人员信息数据表格(8列:序号/姓名/证件类型/证件号码/性别/联系电话/求职状态/数据来源)、操作栏"详情"按钮调用 PersonalInfoDetailModal |
jeecgboot-vue3/src/views/recruitment/personalTag/PersonalTagList.vue |
修改 | 在 bodyCell 插槽中新增 relationCount 列处理,渲染为可点击蓝色下划线数字;新增 handleViewPersonalList 方法打开人员列表弹窗;新增 .link-count 样式;引入并注册 PersonalTagPersonalModal 弹窗组件 |
需求描述: 批量删除和批量启用/停用按钮始终显示在页面上,不随选中行数变化而显示/隐藏。当未选中任何数据行时按钮处于禁用(disabled)状态,选中数据行后按钮变为可用状态。
涉及文件:
| 文件 | 操作 | 原因 |
|---|---|---|
jeecgboot-vue3/src/views/recruitment/personalTag/PersonalTagList.vue |
修改 | 批量操作 <a-dropdown> 的 v-if="selectedRowKeys.length > 0" 改为始终渲染,使用 :disabled="selectedRowKeys.length === 0" 控制禁用状态 |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/EnterpriseTagList.vue |
修改 | 同上 PersonalTagList.vue 改动 |
需求描述: 优化标签新增表单体验:新增时标签状态默认启用,数据来源默认为市系统并禁止编辑,省标编码禁止编辑,标签编码改为后端自动生成流水号(个人标签格式 ZJGR+三位流水,企业标签格式 ZJQY+三位流水)。
后端改动:
| 文件 | 操作 | 原因 |
|---|---|---|
jeecg-boot/.../tag/service/IPersonalTagService.java |
修改 | 新增 generateTagCode() 方法声明 |
jeecg-boot/.../tag/service/IEnterpriseTagService.java |
修改 | 新增 generateTagCode() 方法声明 |
jeecg-boot/.../tag/service/impl/PersonalTagServiceImpl.java |
修改 | 实现 generateTagCode():查询 tag_code LIKE 'ZJGR%' 取最大流水号 +1,格式 ZJGR%03d |
jeecg-boot/.../tag/service/impl/EnterpriseTagServiceImpl.java |
修改 | 同上,前缀 ZJQY |
jeecg-boot/.../tag/controller/PersonalTagController.java |
修改 | 新增 GET /generateTagCode 接口 |
jeecg-boot/.../tag/controller/EnterpriseTagController.java |
修改 | 同上 |
前端改动:
| 文件 | 操作 | 原因 |
|---|---|---|
jeecgboot-vue3/src/views/recruitment/personalTag/PersonalTag.api.ts |
修改 | 新增 generateTagCode() API 调用,使用 isTransformResponse: false 跳过消息提示 |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/EnterpriseTag.api.ts |
修改 | 同上 |
jeecgboot-vue3/src/views/recruitment/personalTag/components/PersonalTagForm.vue |
修改 | 省标编码 disabled 占位"系统自动生成";标签编码 disabled 占位"系统自动生成",新增时调用后端生成流水号填充;数据来源 disabled |
jeecgboot-vue3/src/views/recruitment/personalTag/components/PersonalTagForm.vue(personaltag 小写目录) |
修改 | 同上 |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/components/EnterpriseTagForm.vue |
修改 | 同 PersonalTagForm 改动;另将 tagStatus 默认值从 '' 改为 '1'(启用),dataSource 默认值从 '' 改为 '2'(市系统) |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/components/EnterpriseTagForm.vue(enterprisetag 小写目录) |
修改 | 同上 |
需求描述: dataSource为'1'(省一体化平台回流)的标签属于省系统数据,不允许编辑和删除,只允许修改启用状态。单条记录的操作栏中编辑和删除按钮保持显示但置灰不可点击;批量删除时自动过滤掉省系统标签。
涉及文件:
| 文件 | 操作 | 原因 |
|---|---|---|
jeecgboot-vue3/src/views/recruitment/personalTag/PersonalTagList.vue |
修改 | getTableAction 中编辑按钮增加 disabled: record.dataSource === '1';getDropDownAction 中删除按钮增加 disabled: record.dataSource === '1';batchHandleDelete 增加省系统数据过滤逻辑,选中省系统标签时弹出警告并自动跳过 |
jeecgboot-vue3/src/views/recruitment/enterpriseTag/EnterpriseTagList.vue |
修改 | 同上 PersonalTagList.vue 改动 |