参照重点关注人员模块(focuspersonnel),对见习人员模块(internshippersonnel)的两个前端Vue组件进行改造。
文件路径: src/views/internshippersonnel/components/InternshipPersonnelModal.vue
isDetailMode 和 currentRecord 状态变量isDetailMode 为 true 时,展示详情组件isDetailMode 为 false 时,展示表单组件detail 方法:独立入口,设置详情模式并传递 recordadd 方法:设置 isDetailMode = false,标题改为"新增见习人员"edit 方法:设置 isDetailMode = false,标题改为"编辑见习人员",通过 currentRecord 传递数据handleOk 方法:详情模式下直接关闭弹窗detail 方法暴露v-if="isDetailMode" 条件渲染InternshipPersonnelDetail 组件导入isDetailMode、currentRecord 响应式变量detail(record) 方法文件路径: src/views/internshippersonnel/InternshipPersonnelList.vue
useDict:从 /@/hooks/dictionary/useDict 导入,用于加载字典数据InternshipPersonnelServiceFollowList:服务跟进弹窗组件batchUpdateCustomTag:从 api 文件导入批量更新自定义标签接口computed、onMounted:从 vue 导入useDict(['internship_custom_tag']) 加载自定义标签字典customTagOptions 计算属性:提供标签下拉选项getTableAction:增加"查看"按钮(调用 handleDetail),保留"编辑"按钮getDropDownAction:增加"服务跟进"按钮(调用 handleServiceFollow),保留"删除"按钮handleDetail(record):调用 registerModal.value?.detail(record) 打开详情弹窗handleServiceFollow(record):打开服务跟进弹窗handleCustomTag():批量添加自定义标签(需先选中数据)closeBatchTagModal():关闭批量标签弹窗handleBatchTagSubmit():提交批量标签batchTagVisible:批量标签弹窗可见性batchTagSaving:批量标签保存中状态batchTagChecked:批量标签选中项serviceFollowVisible:服务跟进弹窗可见性serviceFollowRecord:服务跟进当前记录customTag 列的字典翻译显示(a-tag 标签展示).batch-tag-modal:批量标签弹窗样式(与重点关注人员模块一致)handleAdd:改为调用 registerModal.value?.add()(不再手动设置 disableSubmit)handleEdit:改为调用 registerModal.value?.edit(record)handleDetail:改为调用 registerModal.value?.detail(record)(selectedRowKeys.value = []) && reload() 改为正确的 selectedRowKeys.value = []; reload();src/views/internshippersonnel/components/InternshipPersonnelDetail.vue - 见习人员详情组件src/views/internshippersonnel/components/InternshipPersonnelServiceFollowList.vue - 服务跟进记录弹窗组件src/views/intshippersonnel/InternshipPersonnel.api.ts 已包含:
batchUpdateCustomTag - 批量更新自定义标签listCustomTags - 获取自定义标签列表queryDetailById - 查询详情listServiceFollow - 查询服务跟进记录addServiceFollow - 新增服务跟进editServiceFollow - 编辑服务跟进deleteServiceFollow - 删除服务跟进internship_custom_tag - 见习人员自定义标签字典(需在后端 DICTIONARY_ITEM 表中配置)参照重点关注人员模块(FocusPersonnel),补齐见习人员管理模块的功能,包括列表新增列、查询条件、按钮、表单字段、详情字段、权限控制等。
文件路径: src/views/internshippersonnel/InternshipPersonnel.data.ts
agehouseholdLocationcurrentResidencejobSeekerCategoryjobSearchStatusmajorTagminorTag文件路径: src/views/internshippersonnel/InternshipPersonnelList.vue
majorTagOptions(internship_major_tag 字典)minorTagOptions(internship_minor_tag 字典)handleMessagePushmajorTag 列:使用 getDictText('internship_major_tag', text) 翻译minorTag 列:使用 getDictText('internship_minor_tag', text) 翻译handleJobPushuseDict(['internship_custom_tag']) 改为 useDict(['internship_major_tag', 'internship_minor_tag', 'internship_custom_tag'])majorTagOptions 计算属性minorTagOptions 计算属性handleJobPush(record):岗位推送占位函数,提示"岗位推送功能待开发"handleMessagePush():推送消息占位函数,提示"推送消息功能待开发"queryParam.ageBegin 和 queryParam.ageEnd(年龄范围不在表单管控范围内)文件路径: src/views/internshippersonnel/components/InternshipPersonnelForm.vue
JDictSelectTag:从 /@/components/Form/src/jeecg/components/JDictSelectTag.vue 导入JDictSelectTag 组件,dictCode 为 internship_major_tagJDictSelectTag 组件,dictCode 为 internship_minor_taga-input 输入框majorTag: ''minorTag: ''customTag: ''文件路径: src/views/internshippersonnel/components/InternshipPersonnelDetail.vue
majorTag 标签显示:使用 getDictText('internship_major_tag', detailData.majorTag) 翻译,蓝色标签minorTag 标签显示:使用 getDictText('internship_minor_tag', detailData.minorTag) 翻译,绿色标签detailData.age + '岁'emailqqNumberwechatIdgetDictText('internship_major_tag', detailData.majorTag) 翻译,a-tag 展示getDictText('internship_minor_tag', detailData.minorTag) 翻译,a-tag 展示useDict(['internship_custom_tag']) 改为 useDict(['internship_major_tag', 'internship_minor_tag', 'internship_custom_tag'])文件路径: src/views/internshippersonnel/components/InternshipPersonnelServiceFollowList.vue
v-if="hasServiceFollowAuth" 条件,仅拥有权限的用户可见computed:从 vue 导入usePermissionStore:从 /@/store/modules/permission 导入permissionStore:使用 usePermissionStore() 获取权限 storehasServiceFollowAuth:计算属性,判断权限列表中是否包含 internship_personnel:serviceFollowinternship_major_tag - 见习人员大类标签字典(需在后端 DICTIONARY_ITEM 表中配置)internship_minor_tag - 见习人员小类标签字典(需在后端 DICTIONARY_ITEM 表中配置)internship_personnel:serviceFollow - 服务跟进新增权限(需在后端权限表中配置)