交叉配血修改作废问题

This commit is contained in:
jiangs 2026-09-15 16:58:33 +08:00
parent 60e244bca9
commit f22d0b1382
5 changed files with 29 additions and 1 deletions

View File

@ -0,0 +1,15 @@
package com.czblood.bus.pojo.DTO;
import com.czblood.bus.pojo.XkBloodInfo;
import com.czblood.bus.pojo.xtwh.XkBloodBreed;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@AllArgsConstructor
@NoArgsConstructor
public class BloodInfoDTO {
private XkBloodInfo xkBloodInfo;
private XkBloodBreed xkBloodBreed;
}

View File

@ -5,6 +5,7 @@ import cn.hutool.core.date.DateUtil;
import com.czblood.bus.cache.DmzdCache;
import com.czblood.bus.cache.OptionCache;
import com.czblood.bus.mapper.*;
import com.czblood.bus.pojo.DTO.BloodInfoDTO;
import com.czblood.bus.pojo.XkBloodInfo;
import com.czblood.bus.pojo.XkCheckBloodtype;
import com.czblood.bus.pojo.XkMatchDetail;
@ -240,4 +241,12 @@ public class BloodBankUtil {
return new Result("0","校验通过");
}
public BloodInfoDTO queryBloodInfoDTO(String bloodNo,String productNo){
XkBloodInfo xkBloodInfo = xkBloodInfoMapper.queryOne(bloodNo, productNo);
XkBloodBreed xkBloodBreed = xkBloodBreedMapper.queryOne(xkBloodInfo.getBlood_breed());
BloodInfoDTO bloodInfoDTO = new BloodInfoDTO();
bloodInfoDTO.setXkBloodInfo(xkBloodInfo);
bloodInfoDTO.setXkBloodBreed(xkBloodBreed);
return bloodInfoDTO;
}
}

View File

@ -222,6 +222,7 @@ public class MatchBloodServiceImpl implements MatchBloodService {
if(xkMatchMain == null) return new Result("-1","该配血单不存在!");
String billStatus = BloodBankUtil.isBank(xkMatchMain.getBill_status());
if(billStatus.equals("B")) return new Result("-1","该配血单已发血,不可作废!");
if(billStatus.equals("ZF")) return new Result("-1","该配血单已作废,不可作废!");
String chargeMainBillNo = BloodBankUtil.isBank(matchBloodMapper.queryChargeMainBillNo(billNo));
String checkNo = BloodBankUtil.isBank(xkMatchMain.getCheck_no());
XkCheckBloodtype xkCheckBloodtypeTemp = null;

View File

@ -171,9 +171,10 @@
space(4) as match_delay,
space(4) as choose
FROM xk_blood_info
left join xk_match_detail on (xk_blood_info.blood_no = xk_match_detail.blood_no and xk_match_detail.product_no = xk_blood_info.product_no)
left join xk_match_detail on (xk_blood_info.blood_no = xk_match_detail.blood_no and xk_match_detail.product_no = xk_blood_info.product_no),xk_match_main
WHERE ( xk_blood_info.blood_status = '1' ) AND
( xk_blood_info.blood_sort In ('C','W') OR ISNULL(xk_blood_info.blood_sort,'') = '')
<![CDATA[and xk_match_main.bill_no = xk_match_detail.bill_no and isnull(xk_match_main.bill_status,'') <> 'ZF']]>
<if test="bloodNo != null and bloodNo!= ''">AND xk_blood_info.blood_no = #{bloodNo}</if>
</select>

View File

@ -92,6 +92,8 @@ public class RecycleBagServiceImpl implements RecycleBagService {
if(xkBloodInfo == null) return new Result("-1","血液信息"+bloodNo+"_"+productNo+"不存在");
String bloodStatus = xkBloodInfo.getBlood_status();
if(!bloodStatus.equals("4")) return new Result("-1","该血液"+bloodNo+"_"+productNo+"尚未出库!");
String recycleSign = BloodBankUtil.isBank(xkBloodInfo.getRecycle_sign());
if(recycleSign.equals("Y")) return new Result("-1","该血袋"+bloodNo+"_"+productNo+"已经回收,请重新检索数据!");
}
Date currentTimeDate = bloodBankUtil.getCurrentTimeDate();