From 9d6c723c7b096ab9d3344605787ed991870f897a Mon Sep 17 00:00:00 2001 From: jiangs <373297395@qq.com> Date: Tue, 18 Aug 2026 18:01:34 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=B4=E5=BA=8A=E5=8F=91=E8=A1=80=EF=BC=8C?= =?UTF-8?q?=E6=89=93=E5=8D=B0,=E5=A4=9A=E6=AC=A1=E5=8F=91=E8=A1=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/BloodOutController.java | 26 +++++ .../busBloodbank/mapper/BloodOutMapper.java | 5 + .../busBloodbank/pojo/DTO/BloodOutDTO.java | 1 + .../pojo/VO/BloodOutMoreQueryVO.java | 17 +++ .../busBloodbank/pojo/VO/BloodOutQueryVO.java | 24 +++++ .../busBloodbank/service/BloodOutService.java | 5 + .../service/impl/BloodOutServiceImpl.java | 45 +++++++- .../main/resources/mapper/BloodOutMapper.xml | 102 ++++++++++++++++++ 8 files changed, 224 insertions(+), 1 deletion(-) create mode 100644 blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/pojo/VO/BloodOutMoreQueryVO.java create mode 100644 blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/pojo/VO/BloodOutQueryVO.java diff --git a/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/controller/BloodOutController.java b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/controller/BloodOutController.java index 4a47895..93a99d9 100644 --- a/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/controller/BloodOutController.java +++ b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/controller/BloodOutController.java @@ -4,6 +4,8 @@ package com.czblood.busBloodbank.controller; import com.czblood.bus.constants.BloodSysLogConstants; import com.czblood.busBloodbank.pojo.VO.BloodOutAuditVO; import com.czblood.busBloodbank.pojo.VO.BloodOutInfoVO; +import com.czblood.busBloodbank.pojo.VO.BloodOutMoreQueryVO; +import com.czblood.busBloodbank.pojo.VO.BloodOutQueryVO; import com.czblood.busBloodbank.service.BloodOutService; import com.czblood.common.annotation.Log; import com.czblood.common.core.controller.BaseController; @@ -73,4 +75,28 @@ public class BloodOutController extends BaseController { return bloodOutService.printReport(billNo, templateName); } + @ApiOperation("查询发血单数据列表") + @PostMapping("/queryList") + public Result queryList(@RequestBody BloodOutQueryVO bloodOutQueryVO){ + return bloodOutService.queryList(bloodOutQueryVO); + } + + @ApiOperation("查询单条发血单数据") + @GetMapping("/queryInfo") + public Result queryInfo(String billNo){ + return bloodOutService.queryInfo(billNo); + } + + @ApiOperation("多次发血") + @GetMapping("/moreBloodOut") + public Result moreBloodOut(){ + return null; + } + + @ApiOperation("查询多次发血单数据列表") + @GetMapping("/queryMoreBloodOutList") + public Result queryMoreBloodOutList(BloodOutMoreQueryVO bloodOutMoreQueryVO){ + return bloodOutService.queryMoreBloodOutList(bloodOutMoreQueryVO); + } + } diff --git a/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/mapper/BloodOutMapper.java b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/mapper/BloodOutMapper.java index 82b259c..b315b93 100644 --- a/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/mapper/BloodOutMapper.java +++ b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/mapper/BloodOutMapper.java @@ -1,6 +1,8 @@ package com.czblood.busBloodbank.mapper; import com.czblood.bus.pojo.*; +import com.czblood.busBloodbank.pojo.VO.BloodOutMoreQueryVO; +import com.czblood.busBloodbank.pojo.VO.BloodOutQueryVO; import org.apache.ibatis.annotations.Param; import java.util.Date; @@ -19,5 +21,8 @@ public interface BloodOutMapper { String queryMaxCheckNo(String applyNo); Date querySampleMaxPickDate(String applyNo); List queryCheckBloodtype(String applyNo); + List> queryList(BloodOutQueryVO bloodOutQueryVO); + List> queryStockInfo(String billNo); + List> queryMoreBloodOutList(BloodOutMoreQueryVO bloodOutMoreQueryVO); } diff --git a/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/pojo/DTO/BloodOutDTO.java b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/pojo/DTO/BloodOutDTO.java index b79e7f1..35d3822 100644 --- a/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/pojo/DTO/BloodOutDTO.java +++ b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/pojo/DTO/BloodOutDTO.java @@ -14,4 +14,5 @@ import java.util.Map; public class BloodOutDTO { List> applyInfoList; List xkTransfuseApplyBloodbreedList; + List> stockInfoList; } diff --git a/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/pojo/VO/BloodOutMoreQueryVO.java b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/pojo/VO/BloodOutMoreQueryVO.java new file mode 100644 index 0000000..b125d6c --- /dev/null +++ b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/pojo/VO/BloodOutMoreQueryVO.java @@ -0,0 +1,17 @@ +package com.czblood.busBloodbank.pojo.VO; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class BloodOutMoreQueryVO { + private String stime; + private String etime; + private String dept; + private String bed; + private String beinhos_id; + private String patientName; +} diff --git a/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/pojo/VO/BloodOutQueryVO.java b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/pojo/VO/BloodOutQueryVO.java new file mode 100644 index 0000000..6f9b913 --- /dev/null +++ b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/pojo/VO/BloodOutQueryVO.java @@ -0,0 +1,24 @@ +package com.czblood.busBloodbank.pojo.VO; + +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class BloodOutQueryVO { + private String stime; + private String etime; + private String beinhos_id; + @ApiModelProperty("临床发血单编号") + private String billNo; + @ApiModelProperty("审核标志") + private String checkSign; + @ApiModelProperty("发血人") + private String sendPerson; + @ApiModelProperty("血液流水号") + private String bloodNo; + private String dept; +} diff --git a/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/service/BloodOutService.java b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/service/BloodOutService.java index 4565f6e..89064c1 100644 --- a/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/service/BloodOutService.java +++ b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/service/BloodOutService.java @@ -2,6 +2,8 @@ package com.czblood.busBloodbank.service; import com.czblood.busBloodbank.pojo.VO.BloodOutAuditVO; import com.czblood.busBloodbank.pojo.VO.BloodOutInfoVO; +import com.czblood.busBloodbank.pojo.VO.BloodOutMoreQueryVO; +import com.czblood.busBloodbank.pojo.VO.BloodOutQueryVO; import com.czblood.common.core.domain.Result; public interface BloodOutService { @@ -12,4 +14,7 @@ public interface BloodOutService { Result bloodOutAudit(BloodOutAuditVO bloodOutAuditVO); Result notifyMessage(String billNo); Result printReport(String billNo, String templateName); + Result queryList(BloodOutQueryVO bloodOutQueryVO); + Result queryInfo(String billNo); + Result queryMoreBloodOutList(BloodOutMoreQueryVO bloodOutMoreQueryVO); } diff --git a/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/service/impl/BloodOutServiceImpl.java b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/service/impl/BloodOutServiceImpl.java index 3ebf475..b34ae6f 100644 --- a/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/service/impl/BloodOutServiceImpl.java +++ b/blood_bus_bloodbank/src/main/java/com/czblood/busBloodbank/service/impl/BloodOutServiceImpl.java @@ -1,17 +1,21 @@ package com.czblood.busBloodbank.service.impl; import cn.hutool.core.date.DateUtil; +import com.czblood.bus.constants.BloodPrintTypeConstants; import com.czblood.bus.mapper.*; import com.czblood.bus.pojo.*; import com.czblood.bus.pojo.inter.BloodOutAuditRequest; import com.czblood.bus.pojo.xtwh.XkBloodBreed; import com.czblood.bus.utils.BloodBankUtil; import com.czblood.bus.utils.BloodInterfaceUtil; +import com.czblood.bus.utils.ReportUtil; import com.czblood.busBloodbank.mapper.BloodOutMapper; import com.czblood.busBloodbank.pojo.DTO.BloodOutDTO; import com.czblood.busBloodbank.pojo.DTO.BloodOutInfoDTO; import com.czblood.busBloodbank.pojo.VO.BloodOutAuditVO; import com.czblood.busBloodbank.pojo.VO.BloodOutInfoVO; +import com.czblood.busBloodbank.pojo.VO.BloodOutMoreQueryVO; +import com.czblood.busBloodbank.pojo.VO.BloodOutQueryVO; import com.czblood.busBloodbank.service.BloodOutService; import com.czblood.busBloodbank.utils.BloodOutUtil; import com.czblood.busBloodbank.utils.MatchBloodUtil; @@ -49,6 +53,8 @@ public class BloodOutServiceImpl implements BloodOutService { BloodOutUtil bloodOutUtil; @Resource XkOutDetailMapper xkOutDetailMapper; + @Resource + ReportUtil reportUtil; @@ -261,7 +267,44 @@ public class BloodOutServiceImpl implements BloodOutService { @Override public Result printReport(String billNo, String templateName) { - return null; + XkOutMain xkOutMain = xkOutMainMapper.queryOne(billNo); + if(xkOutMain == null) return new Result("-1","该单据不存在!"); + String checkSign = BloodBankUtil.isBank(xkOutMain.getCheck_sign()); + if(!checkSign.equals("Y")) return new Result("-1","该单据没有审核,不能打印!"); + ReportParam reportParam = new ReportParam(); + reportParam.setBillNo(billNo); + switch (templateName){ + case BloodPrintTypeConstants.BLOOD_OUT: //临床发血单 + return reportUtil.printToPdf(BloodPrintTypeConstants.BLOOD_OUT, reportParam, true); + } + return new Result("-1","打印模板不存在!"); + } + + @Override + public Result queryList(BloodOutQueryVO bloodOutQueryVO) { + List> mapList = bloodOutMapper.queryList(bloodOutQueryVO); + return new Result("0","查询成功",mapList); + } + + @Override + public Result queryInfo(String billNo) { + XkOutMain xkOutMain = xkOutMainMapper.queryOne(billNo); + if(xkOutMain == null) return new Result("-1","该单据不存在!"); + String applyNo = xkOutMain.getApply_no(); + List> applyInfoList = bloodOutMapper.queryApplyInfo(applyNo); + BloodOutDTO bloodOutDTO = new BloodOutDTO(); + bloodOutDTO.setApplyInfoList(applyInfoList); + List xkTransfuseApplyBloodbreedList = xkTransfuseApplyBloodbreedMapper.queryOne(applyNo); + bloodOutDTO.setXkTransfuseApplyBloodbreedList(xkTransfuseApplyBloodbreedList); + List> queryStockInfoList = bloodOutMapper.queryStockInfo(applyNo); + bloodOutDTO.setStockInfoList(queryStockInfoList); + return new Result("0","查询成功",bloodOutDTO); + } + + @Override + public Result queryMoreBloodOutList(BloodOutMoreQueryVO bloodOutMoreQueryVO) { + List> mapList = bloodOutMapper.queryMoreBloodOutList(bloodOutMoreQueryVO); + return new Result("0","查询成功",mapList); } diff --git a/blood_bus_bloodbank/src/main/resources/mapper/BloodOutMapper.xml b/blood_bus_bloodbank/src/main/resources/mapper/BloodOutMapper.xml index 294b500..f1891eb 100644 --- a/blood_bus_bloodbank/src/main/resources/mapper/BloodOutMapper.xml +++ b/blood_bus_bloodbank/src/main/resources/mapper/BloodOutMapper.xml @@ -168,4 +168,106 @@ SELECT * FROM xk_check_bloodtype Where apply_no = #{applyNo} And ( bill_status ='A' OR bill_status ='B' ) + + + \ No newline at end of file