diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/WesternMedicineDispenseAppServiceImpl.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/WesternMedicineDispenseAppServiceImpl.java
index ab4f4edb..fd11e97f 100644
--- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/WesternMedicineDispenseAppServiceImpl.java
+++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/WesternMedicineDispenseAppServiceImpl.java
@@ -236,6 +236,11 @@ public class WesternMedicineDispenseAppServiceImpl implements IWesternMedicineDi
EnumUtils.getInfoByValue(DispenseStatus.class, medicineDispenseOrder.getStatusEnum()));
// 设置所在表名
medicineDispenseOrder.setItemTable(CommonConstants.TableName.MED_MEDICATION_DEFINITION);
+ // 处方类型(发药类型:门诊/住院等)
+ if (medicineDispenseOrder.getDispenseEnum() != null) {
+ medicineDispenseOrder.setDispenseEnum_enumText(
+ EnumUtils.getInfoByValue(EncounterClass.class, medicineDispenseOrder.getDispenseEnum()));
+ }
});
return R.ok(medicineDispenseOrderPage);
}
diff --git a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/ItemDispenseOrderDto.java b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/ItemDispenseOrderDto.java
index 2759e116..910243f4 100644
--- a/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/ItemDispenseOrderDto.java
+++ b/openhis-server-new/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/ItemDispenseOrderDto.java
@@ -271,6 +271,12 @@ public class ItemDispenseOrderDto {
private String medTypeCode;
private String medTypeCode_dictText;
+ /**
+ * 发药类型(处方类型:门诊/住院等)
+ */
+ private Integer dispenseEnum;
+ private String dispenseEnum_enumText;
+
/**
* 输液标志
*/
diff --git a/openhis-server-new/openhis-application/src/main/resources/mapper/pharmacymanage/WesternMedicineDispenseMapper.xml b/openhis-server-new/openhis-application/src/main/resources/mapper/pharmacymanage/WesternMedicineDispenseMapper.xml
index cf4e2a22..f61bb8f2 100644
--- a/openhis-server-new/openhis-application/src/main/resources/mapper/pharmacymanage/WesternMedicineDispenseMapper.xml
+++ b/openhis-server-new/openhis-application/src/main/resources/mapper/pharmacymanage/WesternMedicineDispenseMapper.xml
@@ -41,6 +41,7 @@
+
@@ -169,7 +170,8 @@
ii.inventory_quantity,
ii.inventory_lot_number,
ii.expiration_date,
- ii.med_type_code
+ ii.med_type_code,
+ ii.dispense_enum
FROM ( SELECT T8."name" AS department_name,
T9.id AS doctor_id,
T9."name" AS doctor_name,
@@ -188,7 +190,7 @@
T1.status_enum,
T2.rate_code,
T1.location_id,
- T1.method_code,
+ T2.method_code,
T1.lot_number,
T2.dose_unit_code,
T2.dispense_per_quantity,
@@ -216,7 +218,8 @@
T14.quantity AS inventory_quantity,
T14.lot_number AS inventory_lot_number,
T14.expiration_date,
- T15.med_type_code
+ T15.med_type_code,
+ T1.dispense_enum
FROM med_medication_dispense AS T1
LEFT JOIN med_medication_request AS T2
ON T1.med_req_id = T2.id
@@ -252,7 +255,7 @@
ON T1.location_id = T13.id
AND T13.delete_flag = '0'
LEFT JOIN wor_inventory_item AS T14
- ON T2.medication_id = T14.item_id
+ ON T1.medication_id = T14.item_id
AND T1.location_id = T14.location_id
AND T14.delete_flag = '0'
LEFT JOIN adm_encounter_diagnosis AS T15
diff --git a/openhis-ui-vue3/src/views/pharmacymanagement/westernmedicine/index.vue b/openhis-ui-vue3/src/views/pharmacymanagement/westernmedicine/index.vue
index d5f94e95..80135112 100644
--- a/openhis-ui-vue3/src/views/pharmacymanagement/westernmedicine/index.vue
+++ b/openhis-ui-vue3/src/views/pharmacymanagement/westernmedicine/index.vue
@@ -239,7 +239,7 @@
-
+
@@ -836,7 +836,7 @@ function getRowMarkers(groupCounts, data) {
function spanMethod({row, column, rowIndex, columnIndex}) {
// 定义需要合并的列范围(前6列,包括selection列)
- const columnsToMerge = [1, 2, 3, 17]; // 假设selection列是第0列,其他列依次是1, 2, 3, 4, 5
+ const columnsToMerge = [1, 2, 3]; // 假设selection列是第0列,其他列依次是1, 2, 3, 4, 5
// 检查当前列是否在需要合并的列范围内
if (row.prescriptionNo) {
if (columnsToMerge.includes(columnIndex)) {