From 6bf44f29ce0d7e6068da887990325d1b1a4dfe2c Mon Sep 17 00:00:00 2001 From: jiangs <373297395@qq.com> Date: Fri, 13 Mar 2026 11:03:55 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E5=8A=A9=E5=BC=80=E5=8D=95=E7=95=8C?= =?UTF-8?q?=E9=9D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../core/domain/entity/reg/RegApply.java | 3 +- .../domain/entity/reg/RegApplyDetail.java | 1 + .../mapper/RegApplyDetailMapper.java | 3 +- .../resources/mapper/RegApplyDetailMapper.xml | 6 ++ .../main/resources/mapper/RegApplyMapper.xml | 4 +- .../controller/RegRequestInfoController.java | 11 +++ .../service/RegRequestInfoService.java | 2 + .../impl/RegRequestInfoServiceImpl.java | 97 +++++++++++++++++-- .../resources/mapper/RegRequestInfoMapper.xml | 2 +- .../mapper/RegTransitSampleMapper.xml | 1 + 10 files changed, 118 insertions(+), 12 deletions(-) diff --git a/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegApply.java b/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegApply.java index e8c72a1..6dd66a3 100644 --- a/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegApply.java +++ b/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegApply.java @@ -52,8 +52,9 @@ public class RegApply { private String update_by; private Date update_time; /** - * 状态 0.正常,1 作废 + * 状态 0.正常,9 作废 */ private String Status; private String applyid; + private String reqDetailName; } diff --git a/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegApplyDetail.java b/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegApplyDetail.java index 4430eeb..87ba473 100644 --- a/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegApplyDetail.java +++ b/pf_common/src/main/java/com/transitPlatForm/common/core/domain/entity/reg/RegApplyDetail.java @@ -26,4 +26,5 @@ public class RegApplyDetail { private Date update_time; private String DataSource; private BigDecimal amount; + private String itemclass; } diff --git a/pf_interfaceCommon/src/main/java/com/transitPlatForm/interfaceCommon/mapper/RegApplyDetailMapper.java b/pf_interfaceCommon/src/main/java/com/transitPlatForm/interfaceCommon/mapper/RegApplyDetailMapper.java index 9220dfc..c9871b9 100644 --- a/pf_interfaceCommon/src/main/java/com/transitPlatForm/interfaceCommon/mapper/RegApplyDetailMapper.java +++ b/pf_interfaceCommon/src/main/java/com/transitPlatForm/interfaceCommon/mapper/RegApplyDetailMapper.java @@ -8,5 +8,6 @@ public interface RegApplyDetailMapper { void insert(RegApplyDetail regApplyDetail); List queryList(RegApplyDetail regApplyDetail); void update(RegApplyDetail regApplyDetail); - void delete(String applyid); + void delete(Long uid); + void deleteByapplyId(String applyId); } diff --git a/pf_interfaceCommon/src/main/resources/mapper/RegApplyDetailMapper.xml b/pf_interfaceCommon/src/main/resources/mapper/RegApplyDetailMapper.xml index 804a3e2..2b6d55e 100644 --- a/pf_interfaceCommon/src/main/resources/mapper/RegApplyDetailMapper.xml +++ b/pf_interfaceCommon/src/main/resources/mapper/RegApplyDetailMapper.xml @@ -26,6 +26,8 @@ select * from reg_apply_detail and applyid = #{applyid} + and uid = #{uid} + @@ -52,6 +54,10 @@ + delete from reg_apply_detail where uid = #{uid} + + + delete from reg_apply_detail where applyid = #{applyid} \ No newline at end of file diff --git a/pf_interfaceCommon/src/main/resources/mapper/RegApplyMapper.xml b/pf_interfaceCommon/src/main/resources/mapper/RegApplyMapper.xml index e8082ba..7bb9ab8 100644 --- a/pf_interfaceCommon/src/main/resources/mapper/RegApplyMapper.xml +++ b/pf_interfaceCommon/src/main/resources/mapper/RegApplyMapper.xml @@ -42,6 +42,7 @@ DataSource, applyid, Status, + reqDetailName, create_by,create_time ) values ( @@ -83,6 +84,7 @@ #{DataSource}, #{applyid}, #{Status}, + #{reqDetailName}, #{create_by},#{create_time} ) @@ -137,8 +139,8 @@ create_time = #{create_time}, update_by = #{update_by}, update_time = #{update_time}, - applyid = #{applyid}, Status = #{Status}, + reqDetailName = #{reqDetailName}, applyid = #{applyid} where applyid = #{applyid} diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/RegRequestInfoController.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/RegRequestInfoController.java index d060a2b..e1645a1 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/RegRequestInfoController.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/controller/RegRequestInfoController.java @@ -55,4 +55,15 @@ public class RegRequestInfoController extends BaseController { } + /** + * 打印条码 + * @return + */ + @ApiOperation("打印条码") + @GetMapping("/print") + public Result printBarCode(String applyId){ + return regRequestInfoService.printBarCode(applyId); + } + + } diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/RegRequestInfoService.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/RegRequestInfoService.java index 2ceb460..94266d8 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/RegRequestInfoService.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/RegRequestInfoService.java @@ -12,4 +12,6 @@ public interface RegRequestInfoService { Result getItemInfo(); Result saveReqInfo(ReqApplyInfoDTO reqApplyInfoDTO); + + Result printBarCode(String applyId); } diff --git a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegRequestInfoServiceImpl.java b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegRequestInfoServiceImpl.java index 6526bee..757658c 100644 --- a/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegRequestInfoServiceImpl.java +++ b/pf_transitPF/src/main/java/com/transitPlatForm/transitPF/service/impl/RegRequestInfoServiceImpl.java @@ -23,6 +23,8 @@ import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.*; +import java.util.stream.Collectors; +import java.util.stream.Stream; @Service @Slf4j @@ -62,8 +64,10 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { */ @Override public Result queryReqDetail(String applyId) { + RegApply regApply = regApplyMapper.queryOne(applyId); List regApplyDetailList = regRequestInfoMapper.queryReqDetail(applyId); - return new Result("0","查询成功!",regApplyDetailList); + ReqApplyInfoDTO reqApplyInfoDTO = new ReqApplyInfoDTO(regApply,regApplyDetailList); + return new Result("0","查询成功!",reqApplyInfoDTO); } @Override @@ -83,14 +87,20 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { List regApplyDetailList = reqApplyInfoDTO.getRegApplyDetailList(); String status = regApply.getStatus(); if(status == null) status = ""; + if(!status.equals("0") && !status.equals("")) return new Result("0","不是新增状态不能修改申请单!"); //修改数据 if(!status.equals("")){ + //保存条码信息 applicationContext.getBean(RegRequestInfoServiceImpl.class).updateApply(regApply,regApplyDetailList); + //删除条码信息 + applicationContext.getBean(RegRequestInfoServiceImpl.class).delSampleInfo(regApply.getApplyid()); + //重新生成条码信息 + createBarcode(regApply.getApplyid()); }else{ //申请单号 String applyId = "PT"+regApply.getSrcHospCode()+DateUtil.format(commonUtil.getCurrentTime(),"yyyyMMdd")+commonUtil.getNextSeq_pro("applyno",4); regApply.setApplyid(applyId); - regApply.setStatus("1"); + regApply.setStatus("0"); //申请单状态 0 正常,1 作废 regApply.setCreate_by(regApply.getUserCode()); regApply.setCreate_time(commonUtil.getCurrentTime()); regApply.setOrderTime(commonUtil.getCurrentTime()); @@ -98,10 +108,12 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { //病人生日 Date birthDayFromAge = LisUtil.getBirthDayFromAge(Integer.parseInt(regApply.getPatAge()), regApply.getAgeUnit()); regApply.setPatBirthday(birthDayFromAge); - + String xmmc = ""; for (RegApplyDetail regApplyDetail : regApplyDetailList) { regApplyDetail.setApplyid(applyId); + xmmc = xmmc + "," + regApplyDetail.getOrderItemName(); } + regApply.setReqDetailName(xmmc.substring(1)); //保存申请单信息 applicationContext.getBean(RegRequestInfoServiceImpl.class).saveReqInfo(regApply,regApplyDetailList); @@ -114,6 +126,32 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { return new Result("0","保存成功!"); } + /** + * 打印条码 + * @param applyId + * @return + */ + @Override + public Result printBarCode(String applyId) { + RegTransitSampleDetail regTransitSampleDetail = new RegTransitSampleDetail(); + regTransitSampleDetail.setApplyid(applyId); + List regTransitSampleDetailList = regTransitSampleMapper.getRegTransitSampleDetail(regTransitSampleDetail); + if(regTransitSampleDetailList.size() <= 0) return new Result("-1","没有找到对应的申请单信息!"); + List barcodeList = new ArrayList<>(); + for (RegTransitSampleDetail transitSampleDetail : regTransitSampleDetailList) { + if(barcodeList.contains(transitSampleDetail.getBarcode())) continue; + barcodeList.add(transitSampleDetail.getBarcode()); + } + for (String barCode: barcodeList) { + Result result = printBar(barCode); + if(!result.equals("0")) return result; + //修改状态 + applicationContext.getBean(RegRequestInfoServiceImpl.class).updateStatus(applyId,barCode); + + } + return new Result("0","打印成功!"); + } + @Transactional(rollbackFor = Exception.class) public void saveReqInfo(RegApply regApply,List regApplyDetailList){ regApplyMapper.insert(regApply); @@ -320,8 +358,6 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { return new Result("0","生成条码成功!"); - - } @Transactional(rollbackFor = Exception.class) @@ -337,12 +373,57 @@ public class RegRequestInfoServiceImpl implements RegRequestInfoService { @Transactional(rollbackFor = Exception.class) public void updateApply(RegApply regApply, List regApplyDetailList){ - regApplyMapper.delete(regApply.getApplyid()); - regApplyMapper.insert(regApply); + RegApplyDetail regApplyDetail1 = new RegApplyDetail(); + regApplyDetail1.setApplyid(regApply.getApplyid()); + String xmmc = ""; + regApplyDetailMapper.deleteByapplyId(regApply.getApplyid()); for (RegApplyDetail regApplyDetail : regApplyDetailList) { - regApplyDetailMapper.delete(regApplyDetail.getApplyid()); regApplyDetailMapper.insert(regApplyDetail); + //重新设置主表的项目信息 + xmmc = xmmc + "," + regApplyDetail.getOrderItemName(); + } + regApply.setReqDetailName(xmmc.substring(1)); + regApplyMapper.update(regApply); + + } + + /** + * 删除条码信息 + * @param applyId + */ + @Transactional(rollbackFor = Exception.class) + public void delSampleInfo(String applyId){ + RegTransitSampleDetail regTransitSampleDetail = new RegTransitSampleDetail(); + regTransitSampleDetail.setApplyid(applyId); + List regTransitSampleDetailList = regTransitSampleMapper.getRegTransitSampleDetail(regTransitSampleDetail); + for (RegTransitSampleDetail transitSampleDetail : regTransitSampleDetailList) { + regTransitSampleMapper.delRegTransitSampleDetail(transitSampleDetail.getBarcode()); + regTransitSampleMapper.delRegTransitSample(transitSampleDetail.getBarcode()); } } + /** + * 打印条码 + * @param barcode + */ + public Result printBar(String barcode){ + return null; + } + + + @Transactional(rollbackFor = Exception.class) + public void updateStatus(String applyId,String barCode){ + //修改申请单状态 + RegApply regApply = new RegApply(); + regApply.setStatus("1"); + regApply.setApplyid(applyId); + regApplyMapper.update(regApply); + + //条码状态 + RegTransitSample regTransitSample = new RegTransitSample(); + regTransitSample.setStatus("20"); + regTransitSample.setBarcode(barCode); + regTransitSampleMapper.updateRegTransitSample(regTransitSample); + } + } diff --git a/pf_transitPF/src/main/resources/mapper/RegRequestInfoMapper.xml b/pf_transitPF/src/main/resources/mapper/RegRequestInfoMapper.xml index 4e5b1ba..9db8695 100644 --- a/pf_transitPF/src/main/resources/mapper/RegRequestInfoMapper.xml +++ b/pf_transitPF/src/main/resources/mapper/RegRequestInfoMapper.xml @@ -11,7 +11,7 @@