From 78fd4dbdbcd909e07d24fdd2583f366b8f714b04 Mon Sep 17 00:00:00 2001 From: "1378012178@qq.com" <1378012178@qq.com> Date: Tue, 3 Mar 2026 08:40:36 +0800 Subject: [PATCH 1/2] =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E6=8C=87=E4=BB=A4?= =?UTF-8?q?=E8=80=83=E6=A0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/appraisal/DirectiveAppraisal.api.ts | 82 +++ .../appraisal/DirectiveAppraisal.data.ts | 88 ++++ .../appraisal/DirectiveAppraisalList.vue | 324 ++++++++++++ .../DirectiveAppraisalForm copy.vue | 332 ++++++++++++ .../components/DirectiveAppraisalForm.vue | 494 ++++++++++++++++++ .../components/DirectiveAppraisalModal.vue | 83 +++ 6 files changed, 1403 insertions(+) create mode 100644 src/views/appraisal/DirectiveAppraisal.api.ts create mode 100644 src/views/appraisal/DirectiveAppraisal.data.ts create mode 100644 src/views/appraisal/DirectiveAppraisalList.vue create mode 100644 src/views/appraisal/components/DirectiveAppraisalForm copy.vue create mode 100644 src/views/appraisal/components/DirectiveAppraisalForm.vue create mode 100644 src/views/appraisal/components/DirectiveAppraisalModal.vue diff --git a/src/views/appraisal/DirectiveAppraisal.api.ts b/src/views/appraisal/DirectiveAppraisal.api.ts new file mode 100644 index 0000000..2455b69 --- /dev/null +++ b/src/views/appraisal/DirectiveAppraisal.api.ts @@ -0,0 +1,82 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from '/@/hooks/web/useMessage'; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/appraisal/directiveAppraisal/list', + save = '/appraisal/directiveAppraisal/add', + edit = '/appraisal/directiveAppraisal/edit', + deleteOne = '/appraisal/directiveAppraisal/delete', + deleteBatch = '/appraisal/directiveAppraisal/deleteBatch', + importExcel = '/appraisal/directiveAppraisal/importExcel', + exportXls = '/appraisal/directiveAppraisal/exportXls', + revocation = '/appraisal/directiveAppraisal/revocation', +} + +/** + * 导出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 }); +}; + +/** + * 撤回 + * @param params + * @returns + */ +export const handleRevocation = (params) => { + return defHttp.post({ url: Api.revocation, params }, { isTransformResponse: false }); +}; diff --git a/src/views/appraisal/DirectiveAppraisal.data.ts b/src/views/appraisal/DirectiveAppraisal.data.ts new file mode 100644 index 0000000..a6bef35 --- /dev/null +++ b/src/views/appraisal/DirectiveAppraisal.data.ts @@ -0,0 +1,88 @@ +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: 'optNames', + }, + { + title: '区域名称', + align: 'center', + dataIndex: 'nuName', + }, + { + title: '分类标签', + align: 'center', + dataIndex: 'instructionTagName', + }, + { + title: '服务类别', + align: 'center', + dataIndex: 'categoryName', + }, + { + title: '服务类型', + align: 'center', + dataIndex: 'typeName', + }, + { + title: '服务指令', + align: 'center', + dataIndex: 'directiveName', + }, + { + title: '指令日期', + align: 'center', + dataIndex: 'startTime', + customRender: ({ text }) => { + text = !text ? '' : text.length > 10 ? text.substr(0, 10) : text; + return text; + }, + }, + { + title: '执行状态', + align: 'center', + dataIndex: 'optStatus_dictText', + }, + { + title: '审核状态', + align: 'center', + dataIndex: 'status_dictText', + }, + // { + // title: '驳回原因', + // align: "center", + // dataIndex: 'content' + // }, + // { + // title: '撤回人(汉字)', + // align: "center", + // dataIndex: 'revocation' + // }, + // { + // title: '撤回时间', + // align: "center", + // dataIndex: 'revocationTime' + // }, +]; + +// 高级查询数据 +export const superQuerySchema = { + nuName: { title: '护理单元名称', order: 1, view: 'text', type: 'string' }, + instructionTagName: { title: '分类标签名称', order: 4, view: 'text', type: 'string' }, + categoryName: { title: '服务类别名称', order: 6, view: 'text', type: 'string' }, + directiveName: { title: '服务指令名称', order: 10, view: 'text', type: 'string' }, + startTime: { title: '开始时间', order: 20, view: 'date', type: 'string' }, + optType: { title: '执行类型 1单人 2协助 3转单', order: 29, view: 'list', type: 'string', dictCode: 'directive_order_opt_type' }, + optStatus: { title: '执行状态 1正常 2未执行 3超时', order: 30, view: 'list', type: 'string', dictCode: 'directive_order_opt_status' }, + optNames: { title: '实际执行人名称(多个); 主要执行人+协助人', order: 31, view: 'text', type: 'string' }, + status: { title: '审核状态 0待审核 1通过 2未通过', order: 32, view: 'list', type: 'string', dictCode: 'appraisal_status' }, + content: { title: '驳回原因', order: 33, view: 'textarea', type: 'string' }, + revocation: { title: '撤回人(汉字)', order: 34, view: 'text', type: 'string' }, + revocationTime: { title: '撤回时间', order: 35, view: 'datetime', type: 'string' }, +}; diff --git a/src/views/appraisal/DirectiveAppraisalList.vue b/src/views/appraisal/DirectiveAppraisalList.vue new file mode 100644 index 0000000..654013c --- /dev/null +++ b/src/views/appraisal/DirectiveAppraisalList.vue @@ -0,0 +1,324 @@ + + + + + diff --git a/src/views/appraisal/components/DirectiveAppraisalForm copy.vue b/src/views/appraisal/components/DirectiveAppraisalForm copy.vue new file mode 100644 index 0000000..a333c36 --- /dev/null +++ b/src/views/appraisal/components/DirectiveAppraisalForm copy.vue @@ -0,0 +1,332 @@ + + + + + diff --git a/src/views/appraisal/components/DirectiveAppraisalForm.vue b/src/views/appraisal/components/DirectiveAppraisalForm.vue new file mode 100644 index 0000000..d788918 --- /dev/null +++ b/src/views/appraisal/components/DirectiveAppraisalForm.vue @@ -0,0 +1,494 @@ + + + + + diff --git a/src/views/appraisal/components/DirectiveAppraisalModal.vue b/src/views/appraisal/components/DirectiveAppraisalModal.vue new file mode 100644 index 0000000..9375982 --- /dev/null +++ b/src/views/appraisal/components/DirectiveAppraisalModal.vue @@ -0,0 +1,83 @@ + + + + + + From 075f67891eaaf576cfe68f7d2aebc0861cd700f0 Mon Sep 17 00:00:00 2001 From: "1378012178@qq.com" <1378012178@qq.com> Date: Tue, 3 Mar 2026 10:57:10 +0800 Subject: [PATCH 2/2] =?UTF-8?q?1=E3=80=81=E6=9C=8D=E5=8A=A1=E6=8C=87?= =?UTF-8?q?=E4=BB=A4=E5=A2=9E=E5=8A=A0=E6=9C=8D=E5=8A=A1=E5=B1=9E=E6=80=A7?= =?UTF-8?q?=EF=BC=88=E5=AE=9A=E6=97=B6=E3=80=81=E8=AE=A1=E6=97=B6=EF=BC=89?= =?UTF-8?q?=202=E3=80=81=E6=9C=8D=E5=8A=A1=E6=8C=87=E4=BB=A4=E8=AF=A6?= =?UTF-8?q?=E6=83=85/=E6=96=B0=E5=A2=9E/=E7=BC=96=E8=BE=91=E5=B0=86?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E6=8C=87=E4=BB=A4=E5=9B=BE=E6=A0=87=E3=80=81?= =?UTF-8?q?=E7=84=A6=E7=82=B9=E6=8C=87=E4=BB=A4=E5=9B=BE=E6=A0=87=E6=8C=AA?= =?UTF-8?q?=E5=88=B0=E6=9C=8D=E5=8A=A1=E6=8C=87=E4=BB=A4=E6=8F=8F=E8=BF=B0?= =?UTF-8?q?=E5=89=8D=203=E3=80=81=E6=9C=8D=E5=8A=A1=E6=8C=87=E4=BB=A4?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E9=A1=B5=E5=9B=9E=E6=98=BE=E6=9C=8D=E5=8A=A1?= =?UTF-8?q?=E5=B1=9E=E6=80=A7=EF=BC=9B=E8=AF=A6=E6=83=85=E3=80=81=E7=BC=96?= =?UTF-8?q?=E8=BE=91=E5=9B=9E=E6=98=BE=E6=9C=8D=E5=8A=A1=E5=B1=9E=E6=80=A7?= =?UTF-8?q?=204=E3=80=81=E6=9C=8D=E5=8A=A1=E6=8C=87=E4=BB=A4=E6=96=B0?= =?UTF-8?q?=E5=A2=9E=E3=80=81=E7=BC=96=E8=BE=91=E6=97=B6=EF=BC=8C=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E5=B9=B3=E5=8F=B0=E7=9A=84=E6=93=8D=E4=BD=9C=E6=97=A5?= =?UTF-8?q?=E5=BF=97=E7=9B=B8=E5=85=B3=E5=86=85=E5=AE=B9=E5=AD=98=E5=82=A8?= =?UTF-8?q?=205=E3=80=81=E6=9C=8D=E5=8A=A1=E6=8C=87=E4=BB=A4=E5=BA=93?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=9C=8D=E5=8A=A1=E5=B1=9E=E6=80=A7=E5=9B=9E?= =?UTF-8?q?=E6=98=BE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ConfigServiceDirective.data.ts | 5 ++ .../components/ConfigServiceDirective.data.ts | 5 ++ .../components/ConfigServiceDirectiveForm.vue | 65 ++++++++++++++----- .../components/DirectiveRadioCom.vue | 3 +- 4 files changed, 61 insertions(+), 17 deletions(-) diff --git a/src/views/services/serviceDirective/ConfigServiceDirective.data.ts b/src/views/services/serviceDirective/ConfigServiceDirective.data.ts index aa25681..1323f25 100644 --- a/src/views/services/serviceDirective/ConfigServiceDirective.data.ts +++ b/src/views/services/serviceDirective/ConfigServiceDirective.data.ts @@ -39,6 +39,11 @@ export const columns: BasicColumn[] = [ align: 'center', dataIndex: 'directiveName', }, + { + title: '服务属性', + align: 'center', + dataIndex: 'serviceAttribute_dictText', + }, // { // title: '体型标签', // align: 'center', diff --git a/src/views/services/serviceDirective/components/ConfigServiceDirective.data.ts b/src/views/services/serviceDirective/components/ConfigServiceDirective.data.ts index 0ff1834..e0904c8 100644 --- a/src/views/services/serviceDirective/components/ConfigServiceDirective.data.ts +++ b/src/views/services/serviceDirective/components/ConfigServiceDirective.data.ts @@ -38,6 +38,11 @@ export const columns: BasicColumn[] = [ align: 'center', dataIndex: 'directiveName', }, + { + title: '服务属性', + align: 'center', + dataIndex: 'serviceAttribute_dictText', + }, // { // title: '体型标签', // align: 'center', diff --git a/src/views/services/serviceDirective/components/ConfigServiceDirectiveForm.vue b/src/views/services/serviceDirective/components/ConfigServiceDirectiveForm.vue index efc2b64..a2396fa 100644 --- a/src/views/services/serviceDirective/components/ConfigServiceDirectiveForm.vue +++ b/src/views/services/serviceDirective/components/ConfigServiceDirectiveForm.vue @@ -72,10 +72,10 @@ - - + + @@ -85,6 +85,13 @@ :max="99999.99" :precision="2" @keydown="onPriceKeydown" :disabled="disabled" /> + + + + + - + @@ -113,12 +120,34 @@ placeholder="请选择是否启用"  allowClear :disabled="disabled" /> + + + + + + + + + + + + + + + + - - + @@ -131,7 +160,8 @@ + :value="!!formData.previewFile ? formData.previewFile : defaultPrePic" maxCount="1" + :disabled="disabled" /> @@ -151,7 +181,7 @@ - +