From 56ac91c4afadf7735343c8a1eb316d94f748843e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E7=90=A6?= Date: Mon, 18 May 2026 09:13:49 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E5=AF=B9=E8=B4=A6=E5=8D=95=E3=80=81?= =?UTF-8?q?=E8=AE=A2=E5=8D=95=E7=9A=84=E6=94=B9=E8=89=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/views/doctor/doctor/api/index.ts | 10 ++ .../doctor/components/BindSubjectsModal.vue | 100 ++++++++++++++++++ .../src/views/doctor/doctor/config/table.ts | 8 +- .../src/views/doctor/doctor/index.vue | 24 +++++ .../finance/charge-cash-pay-record/index.vue | 2 +- 5 files changed, 142 insertions(+), 2 deletions(-) create mode 100644 apps/web-antd/src/views/doctor/doctor/components/BindSubjectsModal.vue diff --git a/apps/web-antd/src/views/doctor/doctor/api/index.ts b/apps/web-antd/src/views/doctor/doctor/api/index.ts index b563bcf7..f9f3e58e 100644 --- a/apps/web-antd/src/views/doctor/doctor/api/index.ts +++ b/apps/web-antd/src/views/doctor/doctor/api/index.ts @@ -15,6 +15,11 @@ export async function getDoctorList(data: any) { export async function getDepartOptionApi() { return requestClient.get(`${prefix}depart-option`); } + +/** 诊疗科目下拉(互联网医院组包 subjects_id) */ +export async function getSubjectsOptionApi() { + return requestClient.get(`${prefix}subjects-option`); +} /** * 分页查询用户列表 * @param data @@ -56,6 +61,11 @@ export async function updateDoctorStoreBindApi(data: Record) { return requestClient.post(`${prefix}update-store-bind`, data); } +/** doctor_id 为 su_id,与 update-store-bind 一致 */ +export async function updateDoctorSubjectsBindApi(data: Record) { + return requestClient.post(`${prefix}update-subjects-bind`, data); +} + /** * 新增医生 * @param data diff --git a/apps/web-antd/src/views/doctor/doctor/components/BindSubjectsModal.vue b/apps/web-antd/src/views/doctor/doctor/components/BindSubjectsModal.vue new file mode 100644 index 00000000..722c0d51 --- /dev/null +++ b/apps/web-antd/src/views/doctor/doctor/components/BindSubjectsModal.vue @@ -0,0 +1,100 @@ + + + diff --git a/apps/web-antd/src/views/doctor/doctor/config/table.ts b/apps/web-antd/src/views/doctor/doctor/config/table.ts index f25e28ba..0b778eda 100644 --- a/apps/web-antd/src/views/doctor/doctor/config/table.ts +++ b/apps/web-antd/src/views/doctor/doctor/config/table.ts @@ -41,9 +41,15 @@ export const gridOptions: VxeGridProps = { }, { field: 'su_id', title: 'wxID' }, { field: 'stores', title: '所属诊所', slots: { default: 'stores' } }, + { + field: 'subjects', + title: '诊疗科目', + slots: { default: 'subjects' }, + minWidth: 120, + }, { field: 'service_user', title: '审核状态', slots: { default: 'service-user' } }, { field: 'created_at', title: '注册时间' }, - { type: 'html', title: '操作', width: 250, slots: { default: 'action' } }, + { type: 'html', title: '操作', width: 340, slots: { default: 'action' } }, ], keepSource: true, pagerConfig: {}, diff --git a/apps/web-antd/src/views/doctor/doctor/index.vue b/apps/web-antd/src/views/doctor/doctor/index.vue index 897bae27..230beba3 100644 --- a/apps/web-antd/src/views/doctor/doctor/index.vue +++ b/apps/web-antd/src/views/doctor/doctor/index.vue @@ -12,6 +12,7 @@ import { TableAction } from '#/components/table-action'; import { auditApi, openPcWindowsApi, refuseApi } from './api'; import BindStore from './components/BindStoreModal.vue'; +import BindSubjects from './components/BindSubjectsModal.vue'; import FormModalDemo from './components/modal.vue'; import { formOptions } from './config/search'; import { gridOptions } from './config/table'; @@ -45,6 +46,10 @@ const [BindStoreModal, BindStoreModalApi] = useVbenModal({ connectedComponent: BindStore, }); +const [BindSubjectsModal, BindSubjectsModalApi] = useVbenModal({ + connectedComponent: BindSubjects, +}); + const showModal = (data = {}, isUpdate = false) => { formModalApi.setData({ // 表单值 @@ -64,6 +69,14 @@ const showBindStoreModal = (data: number) => { BindStoreModalApi.open(); }; +const showBindSubjectsModal = (row: Record) => { + BindSubjectsModalApi.setData({ + values: row, + gridApi, + }); + BindSubjectsModalApi.open(); +}; + const openPcWindows = (id: number) => { openPcWindowsApi(id).then(() => { message.success('开通成功!'); @@ -90,6 +103,7 @@ const refuse = (id: number) => { + +