From c65d1dcdc78bb3c4a278abe0d7295e864b0e5f8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=8F=B2=E8=8F=B2?= <12704587+yvwen@user.noreply.gitee.com> Date: Sun, 30 Mar 2025 18:25:29 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A5=BF=E8=8D=AF=E5=8F=91=E8=8D=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...WesternMedicineDispenseAppServiceImpl.java | 22 ++++++++++++++----- .../WesternMedicineDispenseController.java | 14 +++++------- .../web/pharmacymanage/dto/PageInitDto.java | 3 +++ .../dto/PrescriptionMedicineInfoDto.java | 7 ++++-- .../dto/PrescriptionPatientInfoDto.java | 2 +- .../WesternMedicineDispenseMapper.xml | 17 +++++++++----- 6 files changed, 42 insertions(+), 23 deletions(-) diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/IWesternMedicineDispenseAppServiceImpl.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/IWesternMedicineDispenseAppServiceImpl.java index 1652f1aa..bfcda523 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/IWesternMedicineDispenseAppServiceImpl.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/appservice/impl/IWesternMedicineDispenseAppServiceImpl.java @@ -95,11 +95,15 @@ public class IWesternMedicineDispenseAppServiceImpl implements IWesternMedicineD // 查询条件设定 String condition = encounterInfoSearchParam.getCondition(); + encounterInfoSearchParam.setCondition(null); if (StringUtils.isNotEmpty(condition)){ Pattern pattern = Pattern.compile(".*\\d.*"); - Matcher matcher = pattern.matcher(encounterInfoSearchParam.getCondition()); - encounterInfoSearchParam.setIdCard(matcher.find() ? condition:""); - encounterInfoSearchParam.setPatientName(!matcher.find() ? condition:""); + Matcher matcher = pattern.matcher(condition); + if (matcher.find()){ + encounterInfoSearchParam.setIdCard(condition); + } else{ + encounterInfoSearchParam.setPatientName(condition); + } } // 构建查询条件 @@ -110,6 +114,12 @@ public class IWesternMedicineDispenseAppServiceImpl implements IWesternMedicineD Page encounterInfoPageDto = westernMedicineDispenseMapper.selectEncounterInfoListPage( new Page<>(pageNo, pageSize), queryWrapper); + // 个别项目设定 + encounterInfoPageDto.getRecords().forEach(prescriptionPatientInfoDto -> { + // 性别 + prescriptionPatientInfoDto.setGenderEnum_enumText(EnumUtils.getInfoByValue(AdministrativeGender.class, + prescriptionPatientInfoDto.getGenderEnum())); + }); return R.ok(encounterInfoPageDto); } @@ -130,7 +140,7 @@ public class IWesternMedicineDispenseAppServiceImpl implements IWesternMedicineD prescriptionPatientInfoDto.setGenderEnum_enumText(EnumUtils.getInfoByValue(AdministrativeGender.class, prescriptionPatientInfoDto.getGenderEnum())); // 合同类型 - if (StringUtils.isNull(prescriptionPatientInfoDto.getCategoryEnum())){ + if (StringUtils.isNotNull(prescriptionPatientInfoDto.getCategoryEnum())){ prescriptionPatientInfoDto.setCategoryEnum_enumText(EnumUtils.getInfoByValue(FinCategory.class, prescriptionPatientInfoDto.getCategoryEnum())); } @@ -139,9 +149,9 @@ public class IWesternMedicineDispenseAppServiceImpl implements IWesternMedicineD selectPrescriptionMedicineInfoList(encounterId); // 计算合计金额 if(!prescriptionMedicineInfoList.isEmpty()) { - BigDecimal totalPrice = new BigDecimal(0); + double totalPrice = 0d; for (PrescriptionMedicineInfoDto item : prescriptionMedicineInfoList) { - totalPrice.add(item.getTotalPrice()); + totalPrice += item.getTotalPrice().doubleValue(); } prescriptionPatientInfoDto.setTotalPrice(totalPrice); } diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/controller/WesternMedicineDispenseController.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/controller/WesternMedicineDispenseController.java index db9063ac..d49aa2e8 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/controller/WesternMedicineDispenseController.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/controller/WesternMedicineDispenseController.java @@ -3,10 +3,7 @@ package com.openhis.web.pharmacymanage.controller; import javax.servlet.http.HttpServletRequest; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.core.common.core.domain.R; import com.openhis.web.pharmacymanage.appservice.IWesternMedicineDispenseAppService; @@ -74,7 +71,7 @@ public class WesternMedicineDispenseController { * * @param prescriptionNo 处方号 */ - @GetMapping("/medicine-dispense") + @PutMapping("/medicine-dispense") public R medicineDispense(@RequestParam(value = "prescriptionNo") String prescriptionNo) { return iWesternMedicineDispenseService.medicineDispense(prescriptionNo); } @@ -85,9 +82,10 @@ public class WesternMedicineDispenseController { * @param prescriptionNo 处方号 * @param notPerformedReasonEnum 未发药原因 */ - @GetMapping("/medicine-cancel") + @PutMapping("/medicine-cancel") public R medicineCancel(@RequestParam(value = "prescriptionNo") String prescriptionNo, - @RequestParam(value = "prescriptionNo") Integer notPerformedReasonEnum) { - return iWesternMedicineDispenseService.medicineCancel(prescriptionNo, notPerformedReasonEnum); + @RequestParam(value = "notPerformedReasonEnum") Integer notPerformedReasonEnum) { + //return iWesternMedicineDispenseService.medicineCancel(prescriptionNo, notPerformedReasonEnum); + return R.ok(); } } \ No newline at end of file diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/PageInitDto.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/PageInitDto.java index d5dd601a..5d47ceb3 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/PageInitDto.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/PageInitDto.java @@ -5,6 +5,8 @@ package com.openhis.web.pharmacymanage.dto; import java.util.List; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; +import com.fasterxml.jackson.databind.ser.std.ToStringSerializer; import lombok.Data; import lombok.experimental.Accessors; @@ -26,6 +28,7 @@ public class PageInitDto { @Data public static class DepartmentOption { + @JsonSerialize(using = ToStringSerializer.class) private Long value; private String label; diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/PrescriptionMedicineInfoDto.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/PrescriptionMedicineInfoDto.java index a7d59ad3..c0d03d42 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/PrescriptionMedicineInfoDto.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/PrescriptionMedicineInfoDto.java @@ -24,11 +24,14 @@ public class PrescriptionMedicineInfoDto implements Serializable { /** 科室 */ private String departmentName; + /** 开单医生 */ + private String doctorName; + /** 项目类型 */ private String itemType; - /** 开单医生 */ - private String doctorName; + /** 诊断名称 */ + private String conditionName; /** 处方号 */ private String prescriptionNo; diff --git a/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/PrescriptionPatientInfoDto.java b/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/PrescriptionPatientInfoDto.java index a6c83812..f21bfa4a 100644 --- a/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/PrescriptionPatientInfoDto.java +++ b/openhis-server/openhis-application/src/main/java/com/openhis/web/pharmacymanage/dto/PrescriptionPatientInfoDto.java @@ -49,5 +49,5 @@ public class PrescriptionPatientInfoDto implements Serializable { private String encounterDate; /** 总金额 */ - private BigDecimal totalPrice; + private double totalPrice; } \ No newline at end of file diff --git a/openhis-server/openhis-application/src/main/resources/mapper/pharmacymanage/WesternMedicineDispenseMapper.xml b/openhis-server/openhis-application/src/main/resources/mapper/pharmacymanage/WesternMedicineDispenseMapper.xml index 001b61c2..e3539018 100644 --- a/openhis-server/openhis-application/src/main/resources/mapper/pharmacymanage/WesternMedicineDispenseMapper.xml +++ b/openhis-server/openhis-application/src/main/resources/mapper/pharmacymanage/WesternMedicineDispenseMapper.xml @@ -75,8 +75,10 @@