|
@@ -68,29 +68,43 @@ public class DispensingSocketServiceImpl implements DispensingSocketService {
|
|
|
MzChargeDetail mzChargeDetail = new MzChargeDetail();
|
|
|
mzChargeDetail.setPatientId(patientId);
|
|
|
mzChargeDetail.setTimes(times);
|
|
|
- mzChargeDetail.setGroupNo("71");
|
|
|
- List<MzChargeDetail> chargeDetail = mzChargeDetailService.getMzChargeDetailList(mzChargeDetail);
|
|
|
- for (int i = 0; i < chargeDetail.size(); i++) {
|
|
|
- if(chargeDetail.get(i).getIsHide() == 1){
|
|
|
- chargeDetail.remove(i);
|
|
|
- i--;
|
|
|
+ List<MzChargeDetail> chargeDetails = mzChargeDetailService.getMzChargeDetailList(mzChargeDetail);
|
|
|
+ List<MzChargeDetail> xyChargeDetail = new ArrayList<>();
|
|
|
+ List<MzChargeDetail> ycChargeDetail = new ArrayList<>();
|
|
|
+ for (int i = 0; i < chargeDetails.size(); i++) {
|
|
|
+ MzChargeDetail chargeDetail = chargeDetails.get(i);
|
|
|
+ if(chargeDetail.getGroupNo().equals("71") && chargeDetail.getIsHide() != 1){
|
|
|
+ xyChargeDetail.add(chargeDetail);
|
|
|
+ }else if(chargeDetail.getGroupNo().equals("91")){
|
|
|
+ ycChargeDetail.add(chargeDetail);
|
|
|
}
|
|
|
}
|
|
|
- if(chargeDetail.size() > 0){
|
|
|
- Set<Integer> orderNos = chargeDetail.stream().map(MzChargeDetail::getOrderNo).collect(Collectors.toSet());
|
|
|
+ if(xyChargeDetail.size() > 0 || ycChargeDetail.size() > 0){
|
|
|
Map<String,Object> msgMap = new HashMap();
|
|
|
msgMap.put("patient_id",patientId);
|
|
|
MzPatientMi mzPatientMi = mzPatientMiService.queryByPatientId(patientId);
|
|
|
msgMap.put("name",mzPatientMi.getName());
|
|
|
msgMap.put("times",times);
|
|
|
- msgMap.put("orderNos",orderNos);
|
|
|
msgMap.put("type",SocketSenderTypeEnum.PAY.code);
|
|
|
- List<String> objTypes = new ArrayList<>();
|
|
|
- if(!chargeDetail.get(0).getWarnDept().equals("1020510")){
|
|
|
- objTypes.add(SocketSenderTypeEnum.CALL_NUMBER.code);
|
|
|
+ if(xyChargeDetail.size() > 0){
|
|
|
+ Set<Integer> orderNos = xyChargeDetail.stream().map(MzChargeDetail::getOrderNo).collect(Collectors.toSet());
|
|
|
+ msgMap.put("orderNos",orderNos);
|
|
|
+ msgMap.put("groupNo",xyChargeDetail.get(0).getGroupNo());
|
|
|
+ List<String> objTypes = new ArrayList<>();
|
|
|
+ if(!xyChargeDetail.get(0).getWarnDept().equals("1020510")){
|
|
|
+ objTypes.add(SocketSenderTypeEnum.CALL_NUMBER.code);
|
|
|
+ }
|
|
|
+ objTypes.add(SocketSenderTypeEnum.DISPENSING_MEDICINE.code);
|
|
|
+ prescriptionPrintSocket.sendMessage(msgMap,objTypes);
|
|
|
+ }
|
|
|
+ if(ycChargeDetail.size() > 0){
|
|
|
+ Set<Integer> orderNos = ycChargeDetail.stream().map(MzChargeDetail::getOrderNo).collect(Collectors.toSet());
|
|
|
+ msgMap.put("orderNos",orderNos);
|
|
|
+ msgMap.put("groupNo",ycChargeDetail.get(0).getGroupNo());
|
|
|
+ List<String> objTypes = new ArrayList<>();
|
|
|
+ objTypes.add(SocketSenderTypeEnum.DISPENSING_MEDICINE.code);
|
|
|
+ prescriptionPrintSocket.sendMessage(msgMap,objTypes);
|
|
|
}
|
|
|
- objTypes.add(SocketSenderTypeEnum.DISPENSING_MEDICINE.code);
|
|
|
- return prescriptionPrintSocket.sendMessage(msgMap,objTypes);
|
|
|
}
|
|
|
return 0;
|
|
|
}
|