From 5d20fd26697e3720a7a57e6fcfa208c8ab57442d Mon Sep 17 00:00:00 2001 From: "1378012178@qq.com" <1378012178@qq.com> Date: Tue, 9 Sep 2025 16:37:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=91=98=E5=B7=A5=E7=94=B3=E8=AF=B7=E5=8A=A0?= =?UTF-8?q?=E5=85=A5=E6=9C=BA=E6=9E=84=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../SectionDivider/SectionDivider.vue | 75 ++ src/components/SectionDivider/section.svg | 1 + src/components/registerGlobComp.ts | 5 + src/utils/common/renderUtils.ts | 4 +- .../NuEmployeesAdvisoryInfo.api.ts | 72 ++ .../NuEmployeesAdvisoryInfo.data.ts | 159 ++++ .../NuEmployeesAdvisoryInfoList.vue | 250 ++++++ .../NuEmployeesAdvisoryInfoForm.vue | 352 ++++++++ .../NuEmployeesAdvisoryInfoModal.vue | 83 ++ .../employeesapply/EmployeesApply.api.ts | 72 ++ .../employeesapply/EmployeesApply.data.ts | 48 ++ .../employeesapply/EmployeesApplyList.vue | 213 +++++ .../components/EmployeesApplyForm.vue | 466 ++++++++++ .../components/EmployeesApplyFormbk_.vue | 373 ++++++++ .../components/EmployeesApplyModal.vue | 83 ++ .../components/BizEmployeesInfoForm copy.vue | 380 +++++++++ .../components/BizEmployeesInfoForm.vue | 800 ++++++++++-------- .../components/BizEmployeesInfoModal.vue | 138 +-- .../ConfigServiceDirectiveList.vue | 5 + 19 files changed, 3151 insertions(+), 428 deletions(-) create mode 100644 src/components/SectionDivider/SectionDivider.vue create mode 100644 src/components/SectionDivider/section.svg create mode 100644 src/views/admin/employeesadvisoryinfo/NuEmployeesAdvisoryInfo.api.ts create mode 100644 src/views/admin/employeesadvisoryinfo/NuEmployeesAdvisoryInfo.data.ts create mode 100644 src/views/admin/employeesadvisoryinfo/NuEmployeesAdvisoryInfoList.vue create mode 100644 src/views/admin/employeesadvisoryinfo/components/NuEmployeesAdvisoryInfoForm.vue create mode 100644 src/views/admin/employeesadvisoryinfo/components/NuEmployeesAdvisoryInfoModal.vue create mode 100644 src/views/admin/employeesapply/EmployeesApply.api.ts create mode 100644 src/views/admin/employeesapply/EmployeesApply.data.ts create mode 100644 src/views/admin/employeesapply/EmployeesApplyList.vue create mode 100644 src/views/admin/employeesapply/components/EmployeesApplyForm.vue create mode 100644 src/views/admin/employeesapply/components/EmployeesApplyFormbk_.vue create mode 100644 src/views/admin/employeesapply/components/EmployeesApplyModal.vue create mode 100644 src/views/biz/bizEmployeesInfo/components/BizEmployeesInfoForm copy.vue diff --git a/src/components/SectionDivider/SectionDivider.vue b/src/components/SectionDivider/SectionDivider.vue new file mode 100644 index 0000000..b1a2c39 --- /dev/null +++ b/src/components/SectionDivider/SectionDivider.vue @@ -0,0 +1,75 @@ + + + \ No newline at end of file diff --git a/src/components/SectionDivider/section.svg b/src/components/SectionDivider/section.svg new file mode 100644 index 0000000..717b1af --- /dev/null +++ b/src/components/SectionDivider/section.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/src/components/registerGlobComp.ts b/src/components/registerGlobComp.ts index 471f1f7..a234b1f 100644 --- a/src/components/registerGlobComp.ts +++ b/src/components/registerGlobComp.ts @@ -6,6 +6,9 @@ import AIcon from '/@/components/jeecg/AIcon.vue'; import { Button, JUploadButton } from './Button'; +// 表单分栏标题组件 +import SectionDivider from '/@/components/SectionDivider/SectionDivider.vue'; + // 按需注册antd的组件 import { // Need @@ -69,6 +72,8 @@ export function registerGlobComp(app: App) { //仪表盘依赖Tinymce,需要提前加载(没办法按需加载了) app.component(Editor.name, Editor); + //表单分栏标题组件 + app.component('SectionDivider',SectionDivider); // update-begin--author:liaozhiyang---date:20240308---for:【QQYUN-8241】Tinymce异步加载 // app.component( // 'Tinymce', diff --git a/src/utils/common/renderUtils.ts b/src/utils/common/renderUtils.ts index 87889a8..bba8aef 100644 --- a/src/utils/common/renderUtils.ts +++ b/src/utils/common/renderUtils.ts @@ -62,7 +62,7 @@ const render = { renderImage: ({ text }) => { if (!text) { return h(Image, { - width: 30, + width: 'auto', height: 30, src: '', fallback: @@ -75,7 +75,7 @@ const render = { avatarList.map((item) => { return h(Image, { src: getFileAccessHttpUrl(item), - width: 30, + width: 'auto', height: 30, style: { marginRight: '5px' }, previewMask: () => { diff --git a/src/views/admin/employeesadvisoryinfo/NuEmployeesAdvisoryInfo.api.ts b/src/views/admin/employeesadvisoryinfo/NuEmployeesAdvisoryInfo.api.ts new file mode 100644 index 0000000..349e0a9 --- /dev/null +++ b/src/views/admin/employeesadvisoryinfo/NuEmployeesAdvisoryInfo.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from '/@/hooks/web/useMessage'; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/admin/employeesAdvisoryInfo/list', + save = '/admin/employeesAdvisoryInfo/add', + edit = '/admin/employeesAdvisoryInfo/edit', + deleteOne = '/admin/employeesAdvisoryInfo/delete', + deleteBatch = '/admin/employeesAdvisoryInfo/deleteBatch', + importExcel = '/admin/employeesAdvisoryInfo/importExcel', + exportXls = '/admin/employeesAdvisoryInfo/exportXls', +} + +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; + +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; + +/** + * 列表接口 + * @param params + */ +export const list = (params) => defHttp.get({ url: Api.list, params }); + +/** + * 删除单个 + * @param params + * @param handleSuccess + */ +export const deleteOne = (params, handleSuccess) => { + return defHttp.delete({ url: Api.deleteOne, params }, { joinParamsToUrl: true }).then(() => { + handleSuccess(); + }); +}; + +/** + * 批量删除 + * @param params + * @param handleSuccess + */ +export const batchDelete = (params, handleSuccess) => { + createConfirm({ + iconType: 'warning', + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({ url: Api.deleteBatch, data: params }, { joinParamsToUrl: true }).then(() => { + handleSuccess(); + }); + }, + }); +}; + +/** + * 保存或者更新 + * @param params + * @param isUpdate + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({ url: url, params }, { isTransformResponse: false }); +}; diff --git a/src/views/admin/employeesadvisoryinfo/NuEmployeesAdvisoryInfo.data.ts b/src/views/admin/employeesadvisoryinfo/NuEmployeesAdvisoryInfo.data.ts new file mode 100644 index 0000000..31c9e3e --- /dev/null +++ b/src/views/admin/employeesadvisoryinfo/NuEmployeesAdvisoryInfo.data.ts @@ -0,0 +1,159 @@ +import { BasicColumn } from '/@/components/Table'; +import { FormSchema } from '/@/components/Table'; +import { rules } from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +import { getWeekMonthQuarterYear } from '/@/utils'; +import { JVxeTypes, JVxeColumn, JVxeTableInstance } from '/@/components/jeecg/JVxeTable/types'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '姓名', + align: 'center', + dataIndex: 'name', + }, + { + title: '联系电话', + align: 'center', + dataIndex: 'tel', + }, + { + title: '入驻时间', + align: 'center', + dataIndex: 'createTime', + }, + { + title: '性别', + align: 'center', + dataIndex: 'sex', + }, + { + title: '民族', + align: 'center', + dataIndex: 'national', + defaultHidden: true, + }, + { + title: '出生日期', + align: 'center', + dataIndex: 'birthDate', + customRender: ({ text }) => { + text = !text ? '' : text.length > 10 ? text.substr(0, 10) : text; + return text; + }, + defaultHidden: true, + }, + { + title: '住址', + align: 'center', + dataIndex: 'idCardAddress', + defaultHidden: true, + }, + { + title: '身份证号', + align: 'center', + dataIndex: 'idCard', + }, + { + title: '婚否', + align: 'center', + dataIndex: 'maritalStatus', + defaultHidden: true, + }, + { + title: '身高', + align: 'center', + dataIndex: 'height', + defaultHidden: true, + }, + { + title: '体重', + align: 'center', + dataIndex: 'weight', + defaultHidden: true, + }, + { + title: '健康状况', + align: 'center', + dataIndex: 'healthStatus', + }, + { + title: '政治面貌', + align: 'center', + dataIndex: 'politicalAppearance', + defaultHidden: true, + }, + { + title: '紧急联系人姓名', + align: 'center', + dataIndex: 'contactName', + }, + { + title: '紧急联系人电话', + align: 'center', + dataIndex: 'contactTel', + }, + { + title: '健康证正面', + align: 'center', + dataIndex: 'healthZmPath', + customRender: render.renderImage, + defaultHidden: true, + }, + { + title: '健康证反面', + align: 'center', + dataIndex: 'healthFmPath', + customRender: render.renderImage, + defaultHidden: true, + }, + { + title: '资质证', + align: 'center', + dataIndex: 'qualificationPath', + customRender: render.renderImage, + defaultHidden: true, + }, + { + title: '无犯罪正面', + align: 'center', + dataIndex: 'noCrimeCertificate', + customRender: render.renderImage, + defaultHidden: true, + }, +]; + +// 高级查询数据 +export const superQuerySchema = { + tel: { title: '联系电话', order: 0, view: 'text', type: 'string' }, + status: { title: '状态', order: 1, view: 'text', type: 'string' }, + content: { title: '审核备注', order: 2, view: 'text', type: 'string' }, + izEntry: { title: '机构是否入驻', order: 3, view: 'text', type: 'string' }, + name: { title: '咨询人姓名', order: 4, view: 'text', type: 'string' }, + sex: { title: '性别', order: 5, view: 'text', type: 'string' }, + national: { title: '民族', order: 6, view: 'text', type: 'string' }, + birthDate: { title: '出生日期', order: 7, view: 'date', type: 'string' }, + idCardAddress: { title: '住址', order: 8, view: 'text', type: 'string' }, + idCard: { title: '身份证号', order: 9, view: 'text', type: 'string' }, + issuingAuthority: { title: '签发机关', order: 10, view: 'text', type: 'string' }, + startTime: { title: '有效开始日期', order: 11, view: 'date', type: 'string' }, + endTime: { title: '有效结束日期', order: 12, view: 'date', type: 'string' }, + cardZmPath: { title: '身份证正面', order: 13, view: 'image', type: 'string' }, + cardFmPath: { title: '身份证反面', order: 14, view: 'image', type: 'string' }, + maritalStatus: { title: '婚否', order: 15, view: 'text', type: 'string' }, + height: { title: '身高', order: 16, view: 'text', type: 'string' }, + weight: { title: '体重', order: 17, view: 'text', type: 'string' }, + healthStatus: { title: '健康状况', order: 18, view: 'text', type: 'string' }, + politicalAppearance: { title: '政治面貌', order: 19, view: 'text', type: 'string' }, + contactName: { title: '紧急联系人姓名', order: 20, view: 'text', type: 'string' }, + contactTel: { title: '紧急联系人电话', order: 21, view: 'text', type: 'string' }, + contactRelationship: { title: '紧急联系人与本人关系', order: 22, view: 'text', type: 'string' }, + hukouType: { title: '户口性质', order: 23, view: 'text', type: 'string' }, + bankZmPath: { title: '银行卡正面', order: 24, view: 'image', type: 'string' }, + bankFmPath: { title: '银行卡反面', order: 25, view: 'image', type: 'string' }, + openingBank: { title: '开户行', order: 26, view: 'text', type: 'string' }, + bankCard: { title: '银行卡号', order: 27, view: 'text', type: 'string' }, + healthZmPath: { title: '健康证正面', order: 28, view: 'image', type: 'string' }, + healthFmPath: { title: '健康证反面', order: 29, view: 'image', type: 'string' }, + qualificationPath: { title: '资质证(可多张)', order: 30, view: 'image', type: 'string' }, + noCrimeCertificate: { title: '无犯罪正面', order: 31, view: 'image', type: 'string' }, +}; diff --git a/src/views/admin/employeesadvisoryinfo/NuEmployeesAdvisoryInfoList.vue b/src/views/admin/employeesadvisoryinfo/NuEmployeesAdvisoryInfoList.vue new file mode 100644 index 0000000..56052ac --- /dev/null +++ b/src/views/admin/employeesadvisoryinfo/NuEmployeesAdvisoryInfoList.vue @@ -0,0 +1,250 @@ + + + + + diff --git a/src/views/admin/employeesadvisoryinfo/components/NuEmployeesAdvisoryInfoForm.vue b/src/views/admin/employeesadvisoryinfo/components/NuEmployeesAdvisoryInfoForm.vue new file mode 100644 index 0000000..99fc5ba --- /dev/null +++ b/src/views/admin/employeesadvisoryinfo/components/NuEmployeesAdvisoryInfoForm.vue @@ -0,0 +1,352 @@ + + + + + diff --git a/src/views/admin/employeesadvisoryinfo/components/NuEmployeesAdvisoryInfoModal.vue b/src/views/admin/employeesadvisoryinfo/components/NuEmployeesAdvisoryInfoModal.vue new file mode 100644 index 0000000..312d5fd --- /dev/null +++ b/src/views/admin/employeesadvisoryinfo/components/NuEmployeesAdvisoryInfoModal.vue @@ -0,0 +1,83 @@ + + + + + + diff --git a/src/views/admin/employeesapply/EmployeesApply.api.ts b/src/views/admin/employeesapply/EmployeesApply.api.ts new file mode 100644 index 0000000..129cecc --- /dev/null +++ b/src/views/admin/employeesapply/EmployeesApply.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from '/@/hooks/web/useMessage'; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/admin/employeesapply/list', + save = '/admin/employeesapply/add', + edit = '/admin/employeesapply/edit', + deleteOne = '/admin/employeesapply/delete', + deleteBatch = '/admin/employeesapply/deleteBatch', + importExcel = '/admin/employeesapply/importExcel', + exportXls = '/admin/employeesapply/exportXls', +} + +/** + * 导出api + * @param params + */ +export const getExportUrl = Api.exportXls; + +/** + * 导入api + */ +export const getImportUrl = Api.importExcel; + +/** + * 列表接口 + * @param params + */ +export const list = (params) => defHttp.get({ url: Api.list, params }); + +/** + * 删除单个 + * @param params + * @param handleSuccess + */ +export const deleteOne = (params, handleSuccess) => { + return defHttp.delete({ url: Api.deleteOne, params }, { joinParamsToUrl: true }).then(() => { + handleSuccess(); + }); +}; + +/** + * 批量删除 + * @param params + * @param handleSuccess + */ +export const batchDelete = (params, handleSuccess) => { + createConfirm({ + iconType: 'warning', + title: '确认删除', + content: '是否删除选中数据', + okText: '确认', + cancelText: '取消', + onOk: () => { + return defHttp.delete({ url: Api.deleteBatch, data: params }, { joinParamsToUrl: true }).then(() => { + handleSuccess(); + }); + }, + }); +}; + +/** + * 保存或者更新 + * @param params + * @param isUpdate + */ +export const saveOrUpdate = (params, isUpdate) => { + let url = isUpdate ? Api.edit : Api.save; + return defHttp.post({ url: url, params }, { isTransformResponse: false }); +}; diff --git a/src/views/admin/employeesapply/EmployeesApply.data.ts b/src/views/admin/employeesapply/EmployeesApply.data.ts new file mode 100644 index 0000000..b1c24ac --- /dev/null +++ b/src/views/admin/employeesapply/EmployeesApply.data.ts @@ -0,0 +1,48 @@ +import {BasicColumn} from '/@/components/Table'; +import {FormSchema} from '/@/components/Table'; +import { rules} from '/@/utils/helper/validator'; +import { render } from '/@/utils/common/renderUtils'; +import { getWeekMonthQuarterYear } from '/@/utils'; +//列表数据 +export const columns: BasicColumn[] = [ + { + title: '姓名', + align: "center", + dataIndex: 'name' + }, + { + title: '性别', + align: "center", + dataIndex: 'sex' + }, + { + title: '联系电话', + align: "center", + dataIndex: 'tel' + }, + { + title: '申请日期', + align: "center", + dataIndex: 'createTime' + }, + { + title: '审核状态', + align: "center", + dataIndex: 'status_dictText' + }, + // { + // title: '审核备注', + // align: "center", + // dataIndex: 'auditContent' + // }, +]; + +// 高级查询数据 +export const superQuerySchema = { + name: {title: '姓名',order: 0,view: 'text', type: 'string',}, + sex: {title: '性别',order: 1,view: 'radio', type: 'string',dictCode: '',}, + tel: {title: '联系电话',order: 4,view: 'text', type: 'string',}, + createTime: {title: '申请日期',order: 27,view: 'datetime', type: 'string',}, + status: {title: '申请状态 0历史 1申请中 2通过 3驳回',order: 28,view: 'text', type: 'string',}, + auditContent: {title: '审核备注',order: 29,view: 'text', type: 'string',}, +}; diff --git a/src/views/admin/employeesapply/EmployeesApplyList.vue b/src/views/admin/employeesapply/EmployeesApplyList.vue new file mode 100644 index 0000000..25a4159 --- /dev/null +++ b/src/views/admin/employeesapply/EmployeesApplyList.vue @@ -0,0 +1,213 @@ + + + + + diff --git a/src/views/admin/employeesapply/components/EmployeesApplyForm.vue b/src/views/admin/employeesapply/components/EmployeesApplyForm.vue new file mode 100644 index 0000000..9b4c05e --- /dev/null +++ b/src/views/admin/employeesapply/components/EmployeesApplyForm.vue @@ -0,0 +1,466 @@ + + + + + diff --git a/src/views/admin/employeesapply/components/EmployeesApplyFormbk_.vue b/src/views/admin/employeesapply/components/EmployeesApplyFormbk_.vue new file mode 100644 index 0000000..4b4adfb --- /dev/null +++ b/src/views/admin/employeesapply/components/EmployeesApplyFormbk_.vue @@ -0,0 +1,373 @@ + + + + + diff --git a/src/views/admin/employeesapply/components/EmployeesApplyModal.vue b/src/views/admin/employeesapply/components/EmployeesApplyModal.vue new file mode 100644 index 0000000..1905100 --- /dev/null +++ b/src/views/admin/employeesapply/components/EmployeesApplyModal.vue @@ -0,0 +1,83 @@ + + + + + + diff --git a/src/views/biz/bizEmployeesInfo/components/BizEmployeesInfoForm copy.vue b/src/views/biz/bizEmployeesInfo/components/BizEmployeesInfoForm copy.vue new file mode 100644 index 0000000..949418a --- /dev/null +++ b/src/views/biz/bizEmployeesInfo/components/BizEmployeesInfoForm copy.vue @@ -0,0 +1,380 @@ + + + + + diff --git a/src/views/biz/bizEmployeesInfo/components/BizEmployeesInfoForm.vue b/src/views/biz/bizEmployeesInfo/components/BizEmployeesInfoForm.vue index 949418a..e2bd822 100644 --- a/src/views/biz/bizEmployeesInfo/components/BizEmployeesInfoForm.vue +++ b/src/views/biz/bizEmployeesInfo/components/BizEmployeesInfoForm.vue @@ -1,380 +1,456 @@ diff --git a/src/views/biz/bizEmployeesInfo/components/BizEmployeesInfoModal.vue b/src/views/biz/bizEmployeesInfo/components/BizEmployeesInfoModal.vue index a21000a..b4e990e 100644 --- a/src/views/biz/bizEmployeesInfo/components/BizEmployeesInfoModal.vue +++ b/src/views/biz/bizEmployeesInfo/components/BizEmployeesInfoModal.vue @@ -1,77 +1,87 @@ diff --git a/src/views/services/serviceDirective/ConfigServiceDirectiveList.vue b/src/views/services/serviceDirective/ConfigServiceDirectiveList.vue index e9b9bb5..68d7608 100644 --- a/src/views/services/serviceDirective/ConfigServiceDirectiveList.vue +++ b/src/views/services/serviceDirective/ConfigServiceDirectiveList.vue @@ -337,6 +337,11 @@ 无文件 播放 + +