diff --git a/add_practitioner_id_field.sql b/add_practitioner_id_field.sql new file mode 100644 index 00000000..bb60b97e --- /dev/null +++ b/add_practitioner_id_field.sql @@ -0,0 +1,9 @@ +-- 为adm_healthcare_service表添加practitionerId字段 +-- 执行时间:2024年 +-- 描述:添加出诊医生ID字段以支持挂号费管理中的出诊医生功能 + +ALTER TABLE "public"."adm_healthcare_service" +ADD COLUMN "practitioner_id" int8; + +-- 为新字段添加注释 +COMMENT ON COLUMN "public"."adm_healthcare_service"."practitioner_id" IS '出诊医生ID'; \ No newline at end of file diff --git a/openhis-server-new/com/openhis/tool/DatabaseFieldAdder.java b/openhis-server-new/com/openhis/tool/DatabaseFieldAdder.java new file mode 100644 index 00000000..25c5b8aa --- /dev/null +++ b/openhis-server-new/com/openhis/tool/DatabaseFieldAdder.java @@ -0,0 +1,45 @@ +package com.openhis.tool; + +import java.sql.Connection; +import java.sql.DriverManager; +import java.sql.Statement; + +/** + * Database field adder tool + */ +public class DatabaseFieldAdder { + public static void main(String[] args) { + String url = "jdbc:postgresql://192.168.110.252:15432/postgresql?currentSchema=public"; + String username = "postgresql"; + String password = "Jchl1528"; + + try (Connection conn = DriverManager.getConnection(url, username, password); + Statement stmt = conn.createStatement()) { + + // Check if field exists + String checkSql = "SELECT column_name FROM information_schema.columns " + + "WHERE table_name = 'adm_healthcare_service' AND column_name = 'practitioner_id'"; + + boolean fieldExists = stmt.executeQuery(checkSql).next(); + + if (!fieldExists) { + // Add field + String addSql = "ALTER TABLE \"public\".\"adm_healthcare_service\" " + + "ADD COLUMN \"practitioner_id\" int8"; + stmt.execute(addSql); + + // Add comment + String commentSql = "COMMENT ON COLUMN \"public\".\"adm_healthcare_service\".\"practitioner_id\" IS 'practitioner_id'"; + stmt.execute(commentSql); + + System.out.println("Successfully added practitioner_id field to adm_healthcare_service table"); + } else { + System.out.println("practitioner_id field already exists"); + } + + } catch (Exception e) { + System.err.println("Error executing SQL: " + e.getMessage()); + e.printStackTrace(); + } + } +} \ No newline at end of file diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basicservice/dto/HealthcareServiceDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basicservice/dto/HealthcareServiceDto.java index 1a3c0003..e624ca08 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basicservice/dto/HealthcareServiceDto.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basicservice/dto/HealthcareServiceDto.java @@ -90,6 +90,14 @@ public class HealthcareServiceDto { private Integer appointmentRequiredFlag; private String appointmentRequiredFlag_enumText; + /** + * 出诊医生ID + */ + @Dict(dictTable = "adm_practitioner", dictCode = "id", dictText = "name") + @JsonSerialize(using = ToStringSerializer.class) + private Long practitionerId; + private String practitionerId_dictText; + /** * 费用定价ID */ diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basicservice/dto/HealthcareServiceFormData.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basicservice/dto/HealthcareServiceFormData.java index ddd23701..e25438f6 100644 --- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basicservice/dto/HealthcareServiceFormData.java +++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/basicservice/dto/HealthcareServiceFormData.java @@ -82,6 +82,11 @@ public class HealthcareServiceFormData { @NotBlank(message = "预约要求不能为空") private Integer appointmentRequiredFlag; + /** + * 出诊医生ID + */ + private Long practitionerId; + /** 医保编码 */ private String ybNo; diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/basicservice/HealthcareServiceBizMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/basicservice/HealthcareServiceBizMapper.xml index 1217860a..dad680e8 100644 --- a/openhis-server-new/openhis-application/src/main/resources/mapper/basicservice/HealthcareServiceBizMapper.xml +++ b/openhis-server-new/openhis-application/src/main/resources/mapper/basicservice/HealthcareServiceBizMapper.xml @@ -18,6 +18,7 @@ T3.extra_details, T3.contact, T3.appointment_required_flag, + T3.practitioner_id, T3.definition_id, T3.charge_name, T3.price, @@ -36,6 +37,7 @@ T1.extra_details, T1.contact, T1.appointment_required_flag, + T1.practitioner_id, T2.ID AS definition_id, T2.charge_name, T2.price, diff --git a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/domain/HealthcareService.java b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/domain/HealthcareService.java index e051a7cf..4febb00c 100644 --- a/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/domain/HealthcareService.java +++ b/openhis-server-new/openhis-domain/src/main/java/com/openhis/administration/domain/HealthcareService.java @@ -60,6 +60,9 @@ public class HealthcareService extends HisBaseEntity { /** 预约要求 */ private Integer appointmentRequiredFlag; + /** 出诊医生ID */ + private Long practitionerId; + /** 医保编码 */ private String ybNo; diff --git a/openhis-ui-vue3/src/views/basicservices/registrationfee/index.vue b/openhis-ui-vue3/src/views/basicservices/registrationfee/index.vue index fa5d3395..51c62c63 100644 --- a/openhis-ui-vue3/src/views/basicservices/registrationfee/index.vue +++ b/openhis-ui-vue3/src/views/basicservices/registrationfee/index.vue @@ -281,7 +281,7 @@ - + { ybType, title, comment, + practitionerId, } = form.value; return { @@ -771,6 +772,7 @@ const transformFormData = (form) => { appointmentRequiredFlag, extraDetails, comment, + practitionerId, }, chargeItemDefinitionFormData: { id, @@ -807,6 +809,7 @@ const transformFormEditData = (form) => { ybType, title, comment, + practitionerId, } = form.value; return { @@ -823,6 +826,7 @@ const transformFormEditData = (form) => { appointmentRequiredFlag, extraDetails, comment, + practitionerId, }, }; };