From 32b84d837d3e662dc5b5a05419d53748ed712595 Mon Sep 17 00:00:00 2001 From: "1378012178@qq.com" <1378012178@qq.com> Date: Mon, 22 Sep 2025 16:56:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E5=AE=B6=E5=B1=9E=E4=BF=A1?= =?UTF-8?q?=E6=81=AF=E3=80=81=E9=95=BF=E8=80=85=E4=BF=A1=E6=81=AF=E5=B1=95?= =?UTF-8?q?=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/elder/elderinfo/ElderInfo.api.ts | 72 ++++ src/views/elder/elderinfo/ElderInfo.data.ts | 66 ++++ src/views/elder/elderinfo/ElderInfoList.vue | 214 ++++++++++++ .../elderinfo/components/ElderInfoForm.vue | 310 ++++++++++++++++++ .../elderinfo/components/ElderInfoModal.vue | 84 +++++ .../elder/familymember/FamilyMember.api.ts | 72 ++++ .../elder/familymember/FamilyMember.data.ts | 48 +++ .../elder/familymember/FamilyMemberList.vue | 234 +++++++++++++ .../components/FamilyMemberForm.vue | 175 ++++++++++ .../components/FamilyMemberModal.vue | 77 +++++ 10 files changed, 1352 insertions(+) create mode 100644 src/views/elder/elderinfo/ElderInfo.api.ts create mode 100644 src/views/elder/elderinfo/ElderInfo.data.ts create mode 100644 src/views/elder/elderinfo/ElderInfoList.vue create mode 100644 src/views/elder/elderinfo/components/ElderInfoForm.vue create mode 100644 src/views/elder/elderinfo/components/ElderInfoModal.vue create mode 100644 src/views/elder/familymember/FamilyMember.api.ts create mode 100644 src/views/elder/familymember/FamilyMember.data.ts create mode 100644 src/views/elder/familymember/FamilyMemberList.vue create mode 100644 src/views/elder/familymember/components/FamilyMemberForm.vue create mode 100644 src/views/elder/familymember/components/FamilyMemberModal.vue diff --git a/src/views/elder/elderinfo/ElderInfo.api.ts b/src/views/elder/elderinfo/ElderInfo.api.ts new file mode 100644 index 0000000..f22b63d --- /dev/null +++ b/src/views/elder/elderinfo/ElderInfo.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/elderInfo/list', + save='/admin/elderInfo/add', + edit='/admin/elderInfo/edit', + deleteOne = '/admin/elderInfo/delete', + deleteBatch = '/admin/elderInfo/deleteBatch', + importExcel = '/admin/elderInfo/importExcel', + exportXls = '/admin/elderInfo/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/elder/elderinfo/ElderInfo.data.ts b/src/views/elder/elderinfo/ElderInfo.data.ts new file mode 100644 index 0000000..f1bda2d --- /dev/null +++ b/src/views/elder/elderinfo/ElderInfo.data.ts @@ -0,0 +1,66 @@ +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: 'nuId', + }, + { + title: '长者姓名', + align: 'center', + dataIndex: 'name', + }, + { + title: '性别', + align: 'center', + dataIndex: 'sex', + }, + { + title: '年龄', + align: 'center', + dataIndex: 'age', + }, + { + title: '监护人姓名', + align: 'center', + dataIndex: 'guardianName', + }, + { + title: '关系', + align: 'center', + dataIndex: 'relationship', + }, + { + title: '监护人电话', + align: 'center', + dataIndex: 'guardianPhone', + }, +]; + +// 高级查询数据 +export const superQuerySchema = { + nuId: { title: '护理单元', order: 0, view: 'text', type: 'string' }, + name: { title: '姓名', order: 1, view: 'text', type: 'string' }, + sex: { title: '性别', order: 2, view: 'text', type: 'string' }, + age: { title: '年龄', order: 3, view: 'text', type: 'string' }, + idCard: { title: '身份证号码', order: 4, view: 'text', type: 'string' }, + dateOfBirth: { title: '出生日期', order: 5, view: 'datetime', type: 'string' }, + national: { title: '民族', order: 6, view: 'text', type: 'string' }, + houseAddress: { title: '户籍所在地', order: 7, view: 'textarea', type: 'string' }, + idCardPositive: { title: '身份证正面', order: 8, view: 'image', type: 'string' }, + idCardNegative: { title: '身份证反面', order: 9, view: 'image', type: 'string' }, + guardianName: { title: '监护人姓名', order: 10, view: 'text', type: 'string' }, + relationship: { title: '关系', order: 11, view: 'text', type: 'string' }, + guardianIdCard: { title: '监护人身份证号', order: 12, view: 'text', type: 'string' }, + guardianPhone: { title: '联系电话', order: 13, view: 'text', type: 'string' }, + guardianHomeAddress: { title: '监护人家庭住址', order: 14, view: 'text', type: 'string' }, + guardianWorkUnit: { title: '监护人工作单位', order: 15, view: 'text', type: 'string' }, + issuingAuthority: { title: '签发机关', order: 16, view: 'text', type: 'string' }, + startTime: { title: '有效开始日期', order: 17, view: 'datetime', type: 'string' }, + endTime: { title: '有效结束日期', order: 18, view: 'datetime', type: 'string' }, +}; diff --git a/src/views/elder/elderinfo/ElderInfoList.vue b/src/views/elder/elderinfo/ElderInfoList.vue new file mode 100644 index 0000000..1f83f0b --- /dev/null +++ b/src/views/elder/elderinfo/ElderInfoList.vue @@ -0,0 +1,214 @@ + + + + + diff --git a/src/views/elder/elderinfo/components/ElderInfoForm.vue b/src/views/elder/elderinfo/components/ElderInfoForm.vue new file mode 100644 index 0000000..3931da5 --- /dev/null +++ b/src/views/elder/elderinfo/components/ElderInfoForm.vue @@ -0,0 +1,310 @@ + + + + + diff --git a/src/views/elder/elderinfo/components/ElderInfoModal.vue b/src/views/elder/elderinfo/components/ElderInfoModal.vue new file mode 100644 index 0000000..7b19039 --- /dev/null +++ b/src/views/elder/elderinfo/components/ElderInfoModal.vue @@ -0,0 +1,84 @@ + + + + + + diff --git a/src/views/elder/familymember/FamilyMember.api.ts b/src/views/elder/familymember/FamilyMember.api.ts new file mode 100644 index 0000000..d5b2734 --- /dev/null +++ b/src/views/elder/familymember/FamilyMember.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/elder/familyMember/list', + save='/elder/familyMember/add', + edit='/elder/familyMember/edit', + deleteOne = '/elder/familyMember/delete', + deleteBatch = '/elder/familyMember/deleteBatch', + importExcel = '/elder/familyMember/importExcel', + exportXls = '/elder/familyMember/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/elder/familymember/FamilyMember.data.ts b/src/views/elder/familymember/FamilyMember.data.ts new file mode 100644 index 0000000..622a736 --- /dev/null +++ b/src/views/elder/familymember/FamilyMember.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: 'tel' + }, + { + title: '身份证号', + align: "center", + dataIndex: 'idCard' + }, + { + title: '家庭住址', + align: "center", + dataIndex: 'homeAddress' + }, + { + title: '工作单位', + align: "center", + dataIndex: 'workUnit' + }, + { + title: '创建日期', + align: "center", + dataIndex: 'createTime' + }, +]; + +// 高级查询数据 +export const superQuerySchema = { + name: {title: '咨询人姓名',order: 0,view: 'text', type: 'string',}, + tel: {title: '联系电话',order: 1,view: 'text', type: 'string',}, + createTime: {title: '创建日期',order: 2,view: 'datetime', type: 'string',}, + idCard: {title: '身份证号',order: 3,view: 'text', type: 'string',}, + homeAddress: {title: '家庭住址',order: 4,view: 'textarea', type: 'string',}, + workUnit: {title: '工作单位',order: 5,view: 'textarea', type: 'string',}, +}; diff --git a/src/views/elder/familymember/FamilyMemberList.vue b/src/views/elder/familymember/FamilyMemberList.vue new file mode 100644 index 0000000..45f19fe --- /dev/null +++ b/src/views/elder/familymember/FamilyMemberList.vue @@ -0,0 +1,234 @@ + + + + + diff --git a/src/views/elder/familymember/components/FamilyMemberForm.vue b/src/views/elder/familymember/components/FamilyMemberForm.vue new file mode 100644 index 0000000..b9c0d9b --- /dev/null +++ b/src/views/elder/familymember/components/FamilyMemberForm.vue @@ -0,0 +1,175 @@ + + + + + diff --git a/src/views/elder/familymember/components/FamilyMemberModal.vue b/src/views/elder/familymember/components/FamilyMemberModal.vue new file mode 100644 index 0000000..d4437a0 --- /dev/null +++ b/src/views/elder/familymember/components/FamilyMemberModal.vue @@ -0,0 +1,77 @@ + + + + + +