|
@@ -1582,6 +1582,7 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService {
|
|
|
.chargeDate(new Date())
|
|
|
.receiptNo(newMzVisitTable.getReceiptNo())
|
|
|
.reqType(Tools.beforeAddZeroStr(mzPrescriptionVo.getReqType()))
|
|
|
+ .ghFeeFlag(Convert.toStr(mzPrescriptionVo.getGhFeeFlag(),"0"))
|
|
|
.build();
|
|
|
mzOrderDetailService.save(mzOrderDetail);
|
|
|
//保存处方锁信息
|
|
@@ -3878,7 +3879,14 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService {
|
|
|
if (mzVisitTable == null) {
|
|
|
throw new MzException("病人就诊记录不存在!");
|
|
|
}
|
|
|
+
|
|
|
+ //查询处方信息
|
|
|
+ MzOrderDetail mzOrderDetail = mzOrderDetailService.queryByPatientIdAndTimes(patientId, times);
|
|
|
+ if(mzOrderDetail != null){
|
|
|
+ mzPrescriptionVo.setGhFeeFlag(Convert.toStr(mzOrderDetail.getGhFeeFlag(),"0"));
|
|
|
+ }
|
|
|
mzPrescriptionVo.setVisitDeptCode(mzVisitTable.getVisitDeptCode());
|
|
|
+ mzPrescriptionVo.setDoctorCode(mzVisitTable.getDoctorCode());
|
|
|
MzBlRecord mzBlRecord = mzBlRecordMapper.selectMzBlRecordByPatientIdAndTimes(patientId, times);
|
|
|
if (mzBlRecord == null) {
|
|
|
//throw new MzException("病人门诊病历记录不存在!");
|
|
@@ -4021,6 +4029,16 @@ public class MzChargeDetailServiceImpl implements MzChargeDetailService {
|
|
|
if (supplyList != null && mzChargeDetailList != null) {
|
|
|
mzChargeDetailList.removeAll(supplyList);
|
|
|
}
|
|
|
+ //开出房挂号费 不会写到厨房页面
|
|
|
+ String doctorCode = StrUtil.isBlank(mzPrescriptionVo.getDoctorCode()) ? TokenUtil.getUser().getUserIdCode() : mzPrescriptionVo.getDoctorCode();
|
|
|
+ ZdChargeItem zdChargeItem = zdChargeItemService.queryZdChargeItemGhFeeByEmpCode(doctorCode);
|
|
|
+ if(zdChargeItem !=null && StrUtil.isNotBlank(zdChargeItem.getCode()) && CollUtil.isNotEmpty(mzChargeDetailList)){
|
|
|
+ BeanUtil.trimStrFields(zdChargeItem);
|
|
|
+ List<MzChargeDetail> autoGhCharge = mzChargeDetailList.stream().filter(item -> zdChargeItem.getCode().equals(item.getChargeItemCode())).collect(Collectors.toList());
|
|
|
+ if(CollUtil.isNotEmpty(autoGhCharge)){
|
|
|
+ mzChargeDetailList.removeAll(autoGhCharge);
|
|
|
+ }
|
|
|
+ }
|
|
|
mzPrescriptionVo.setMzChargeDetailList(mzChargeDetailList);
|
|
|
if (PayMarkEnum.CHARGED.code.equals(payMark)) {
|
|
|
MzYjReq mzYjReq = new MzYjReq(patientId, times);
|