血型复核功能开发
This commit is contained in:
parent
1977834940
commit
dce2bb18b1
@ -0,0 +1,5 @@
|
||||
package com.czblood.bus.mapper;
|
||||
|
||||
public interface XkChargeDetailMapper {
|
||||
void deleteByBillNo(String bill_no);
|
||||
}
|
||||
@ -0,0 +1,11 @@
|
||||
package com.czblood.bus.mapper;
|
||||
|
||||
|
||||
import com.czblood.bus.pojo.XkChargeMain;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface XkChargeMainMapper {
|
||||
void deleteByBillNo(String bill_no);
|
||||
List<XkChargeMain> queryList(XkChargeMain xkChargeMain);
|
||||
}
|
||||
@ -7,5 +7,7 @@ import java.util.List;
|
||||
public interface XkCheckBloodtypeMapper {
|
||||
List<XkCheckBloodtype> queryList(XkCheckBloodtype xkCheckBloodtype);
|
||||
void insert(XkCheckBloodtype xkCheckBloodtype);
|
||||
XkCheckBloodtype queryOne(String billNo);
|
||||
void delete(String billNo);
|
||||
|
||||
}
|
||||
|
||||
@ -0,0 +1,8 @@
|
||||
package com.czblood.bus.mapper;
|
||||
|
||||
import com.czblood.bus.pojo.XkOutMain;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
public interface XkOutMainMapper {
|
||||
XkOutMain queryOne(@Param("billNo") String billNo);
|
||||
}
|
||||
@ -0,0 +1,29 @@
|
||||
package com.czblood.bus.pojo;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@ApiModel("收费明细")
|
||||
public class XkChargeDetail {
|
||||
private String bill_no;
|
||||
private Integer sid;
|
||||
private String serial_number;
|
||||
private BigDecimal price;
|
||||
private Integer number;
|
||||
private BigDecimal sum;
|
||||
private String remark;
|
||||
private String item_name;
|
||||
private String spec;
|
||||
private String charge_type;
|
||||
private String unit;
|
||||
private String charge_flag;
|
||||
private String blood_no;
|
||||
private String product_no;
|
||||
}
|
||||
@ -0,0 +1,33 @@
|
||||
package com.czblood.bus.pojo;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@ApiModel("收费主表")
|
||||
public class XkChargeMain {
|
||||
private String bill_no;
|
||||
private String beinhos_id;
|
||||
@ApiModelProperty("收费日期")
|
||||
private Date occur_date;
|
||||
@ApiModelProperty("收费人")
|
||||
private String handle_person;
|
||||
@ApiModelProperty("申请单号")
|
||||
private String relative_billno;
|
||||
private String remark;
|
||||
private String send_flag;
|
||||
@ApiModelProperty("收费标志,Y收费,N未收费")
|
||||
private String check_sign;
|
||||
private Date last_modified;
|
||||
private Date send_time;
|
||||
private Date read_time;
|
||||
private String read_flag;
|
||||
private String nbsfbz;
|
||||
}
|
||||
@ -1,5 +1,6 @@
|
||||
package com.czblood.bus.pojo;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.AllArgsConstructor;
|
||||
@ -11,7 +12,7 @@ import java.util.Date;
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@ApiOperation("血型复核")
|
||||
@ApiModel("血型复核")
|
||||
public class XkCheckBloodtype {
|
||||
@ApiModelProperty("单据编号")
|
||||
private String bill_no;
|
||||
|
||||
@ -1,6 +1,6 @@
|
||||
package com.czblood.bus.pojo;
|
||||
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Data;
|
||||
@ -11,7 +11,7 @@ import java.util.Date;
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Api(tags = "样本信息")
|
||||
@ApiModel("样本信息")
|
||||
public class XkSampleInfo {
|
||||
@ApiModelProperty("样本号")
|
||||
private String sample_No;
|
||||
|
||||
@ -1,5 +1,6 @@
|
||||
package com.czblood.bus.pojo;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.AllArgsConstructor;
|
||||
@ -11,7 +12,7 @@ import java.util.Date;
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@ApiOperation("申请单扫描登记")
|
||||
@ApiModel("申请单扫描登记")
|
||||
public class XkSearchTransfuseBill {
|
||||
private String bill_no;
|
||||
private Integer sid;
|
||||
|
||||
@ -71,7 +71,7 @@ public class XkTransfuseApply {
|
||||
private String check_sign;
|
||||
@ApiModelProperty("审核意见")
|
||||
private String check_explain;
|
||||
@ApiModelProperty("状态(A=未审核、B=已审核、C=已配血、D=已发血、Z=作废、BD=未补录、W=已补录、F=已复核血型、S=已追加配血、N=审核未通过)")
|
||||
@ApiModelProperty("状态(A=未审核、B=已审核、C=已配血、D=已发血、Z=作废、BD=未补录、W=已补录、F=已复核血型、S=已追加配血、N=审核未通过、SF=追加血型复核)")
|
||||
private String bill_stasus;
|
||||
private String bill_type;
|
||||
@ApiModelProperty("申请医生")
|
||||
|
||||
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.czblood.bus.mapper.XkChargeDetailMapper">
|
||||
|
||||
<delete id="deleteByBillNo">
|
||||
delete from xk_charge_detail where bill_no = #{bill_no}
|
||||
</delete>
|
||||
</mapper>
|
||||
17
blood_bus/src/main/resources/mapper/XkChargeMainMapper.xml
Normal file
17
blood_bus/src/main/resources/mapper/XkChargeMainMapper.xml
Normal file
@ -0,0 +1,17 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.czblood.bus.mapper.XkChargeMainMapper">
|
||||
|
||||
<delete id="deleteByBillNo">
|
||||
delete from xk_charge_main where bill_no = #{bill_no}
|
||||
</delete>
|
||||
<select id="queryList" resultType="com.czblood.bus.pojo.XkChargeMain">
|
||||
select * from xk_charge_main
|
||||
<where>
|
||||
<if test="bill_no != null">and bill_no = #{bill_no}</if>
|
||||
<if test="send_flag != null">and send_flag = #{send_flag}</if>
|
||||
<if test="relative_billno != null">and relative_billno = #{relative_billno}</if>
|
||||
</where>
|
||||
</select>
|
||||
</mapper>
|
||||
@ -44,6 +44,9 @@
|
||||
<if test="bz1 != null">#{bz1},</if>
|
||||
#{hos_id},#{bill_no},#{apply_no},#{beinhos_id},#{patient_name},#{dept_id},#{check_abo},#{check_fabo},#{affirm_abo})
|
||||
</insert>
|
||||
<delete id="delete">
|
||||
delete from xk_check_bloodtype where bill_no = #{billNo}
|
||||
</delete>
|
||||
|
||||
<select id="queryList" resultType="com.czblood.bus.pojo.XkCheckBloodtype">
|
||||
select * from xk_check_bloodtype where hos_id = #{hos_id}
|
||||
@ -51,4 +54,7 @@
|
||||
<if test="apply_no != null and apply_no != ''">and apply_no = #{apply_no}</if>
|
||||
<if test="beinhos_id != null and beinhos_id != ''">and beinhos_id = #{beinhos_id}</if>
|
||||
</select>
|
||||
<select id="queryOne" resultType="com.czblood.bus.pojo.XkCheckBloodtype">
|
||||
select * from xk_check_bloodtype where bill_no = #{billNo}
|
||||
</select>
|
||||
</mapper>
|
||||
9
blood_bus/src/main/resources/mapper/XkOutMainMapper.xml
Normal file
9
blood_bus/src/main/resources/mapper/XkOutMainMapper.xml
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8" ?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||
"http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
|
||||
<mapper namespace="com.czblood.bus.mapper.XkOutMainMapper">
|
||||
|
||||
<select id="queryOne" resultType="com.czblood.bus.pojo.XkOutMain">
|
||||
select * from xk_out_main where bill_no = #{billNo}
|
||||
</select>
|
||||
</mapper>
|
||||
@ -35,6 +35,12 @@ public class CheckBloodTypeController {
|
||||
return checkBloodTypeService.saveData(xkCheckBloodtype);
|
||||
}
|
||||
|
||||
@ApiOperation("删除数据")
|
||||
@GetMapping("/delCheckBloodTypeInfo")
|
||||
public Result delCheckBloodTypeInfo(String billNo){
|
||||
return checkBloodTypeService.delCheckBloodTypeInfo(billNo);
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
@ -7,4 +7,5 @@ public interface CheckBloodTypeMapper {
|
||||
List<Map<String,Object>> queryWaitInfo(String bbjszhxxfh);
|
||||
int checkMatchedBloodNotOut(String billNo);
|
||||
List<Map<String,Object>> queryOne(String billNo);
|
||||
int queryOutMainCount(String billNo);
|
||||
}
|
||||
|
||||
@ -7,4 +7,6 @@ public interface CheckBloodTypeService {
|
||||
Result queryWaitInfo();
|
||||
Result queryOne(String billNo);
|
||||
Result saveData(XkCheckBloodtype xkCheckBloodtype);
|
||||
|
||||
Result delCheckBloodTypeInfo(String billNo);
|
||||
}
|
||||
|
||||
@ -1,11 +1,10 @@
|
||||
package com.czblood.busBloodbank.service.impl;
|
||||
|
||||
import com.czblood.bus.mapper.XkChargeMainMapper;
|
||||
import com.czblood.bus.mapper.XkCheckBloodtypeMapper;
|
||||
import com.czblood.bus.mapper.XkTransfuseApplyBloodbreedMapper;
|
||||
import com.czblood.bus.mapper.XkTransfuseApplyMapper;
|
||||
import com.czblood.bus.pojo.XkCheckBloodtype;
|
||||
import com.czblood.bus.pojo.XkTransfuseApply;
|
||||
import com.czblood.bus.pojo.XkTransfuseApplyBloodbreed;
|
||||
import com.czblood.bus.pojo.*;
|
||||
import com.czblood.bus.pojo.inter.CheckBloodTypeRequest;
|
||||
import com.czblood.bus.utils.BloodBankUtil;
|
||||
import com.czblood.bus.utils.BloodInterfaceUtil;
|
||||
@ -35,6 +34,8 @@ public class CheckBloodTypeServiceImpl implements CheckBloodTypeService {
|
||||
XkTransfuseApplyMapper xkTransfuseApplyMapper;
|
||||
@Resource
|
||||
XkCheckBloodtypeMapper xkCheckBloodtypeMapper;
|
||||
@Resource
|
||||
XkChargeMainMapper xkChargeMainMapper;
|
||||
|
||||
|
||||
@Override
|
||||
@ -77,6 +78,7 @@ public class CheckBloodTypeServiceImpl implements CheckBloodTypeService {
|
||||
if(billStatus.equals("C")) return new Result("0","该申请单的血型复核单已发血,不可修改!");
|
||||
}
|
||||
String billSort = xkTransfuseApply.getBill_sort();
|
||||
//是否需要配血
|
||||
if(billSort.equals("B")){
|
||||
xkCheckBloodtype.setBill_status("Y");
|
||||
}else{
|
||||
@ -89,13 +91,51 @@ public class CheckBloodTypeServiceImpl implements CheckBloodTypeService {
|
||||
xkTransfuseApplyTemp.setBill_stasus("F");
|
||||
xkTransfuseApplyTemp.setNotify_sign("Y");
|
||||
|
||||
//当血型复核的结果和申请单之前的接口不一致的时候,需要更新申请单的血型,以及病人基本信息的血型 TODO
|
||||
//当血型复核的结果和申请单之前的结果不一致的时候,需要更新申请单的血型,以及病人基本信息的血型
|
||||
xkTransfuseApplyTemp.setAbo_type(xkCheckBloodtype.getAffirm_abo());
|
||||
xkTransfuseApplyTemp.setRh_type(xkCheckBloodtype.getCheck_rh());
|
||||
|
||||
checkBloodTypeUtil.saveData(xkCheckBloodtype,xkTransfuseApplyTemp);
|
||||
XkPatientInfo xkPatientInfoTemp = new XkPatientInfo();
|
||||
xkPatientInfoTemp.setAbo(xkCheckBloodtype.getAffirm_abo());
|
||||
xkPatientInfoTemp.setRh(xkCheckBloodtype.getCheck_rh());
|
||||
xkPatientInfoTemp.setBeinhos_id(xkCheckBloodtype.getBeinhos_id());
|
||||
|
||||
checkBloodTypeUtil.saveData(xkCheckBloodtype,xkTransfuseApplyTemp,xkPatientInfoTemp);
|
||||
//调用外部接口
|
||||
CheckBloodTypeRequest checkBloodTypeRequest = new CheckBloodTypeRequest();
|
||||
Result result = BloodInterfaceUtil.invokeBloodInterface(checkBloodTypeRequest);
|
||||
if(!result.getCode().equals("0")) return result;
|
||||
return new Result("0","保存数据成功!",newBillNo);
|
||||
}
|
||||
|
||||
@Override
|
||||
public Result delCheckBloodTypeInfo(String billNo) {
|
||||
XkCheckBloodtype xkCheckBloodtype = xkCheckBloodtypeMapper.queryOne(billNo);
|
||||
if(xkCheckBloodtype == null) return new Result("-1","该血型复核单不存在!");
|
||||
String billStatus = xkCheckBloodtype.getBill_status();
|
||||
String applyNo = xkCheckBloodtype.getApply_no();
|
||||
if(billStatus.equals("B")) return new Result("-1","该单据对应的申请单已经配血,不能删除!");
|
||||
if(billStatus.equals("C")) return new Result("-1","该单据对应的申请单已经发血,不能删除!");
|
||||
int i = checkBloodTypeMapper.checkMatchedBloodNotOut(billNo);
|
||||
if(i > 0 ) return new Result("-1","该血型复核单对应的发血单已经登记发血,不能删除!");
|
||||
|
||||
//修改状态
|
||||
XkTransfuseApply xkTransfuseApplyTemp = new XkTransfuseApply();
|
||||
xkTransfuseApplyTemp.setBill_no(applyNo);
|
||||
xkTransfuseApplyTemp.setBill_stasus("F");
|
||||
|
||||
XkChargeMain xkChargeMain = new XkChargeMain();
|
||||
xkChargeMain.setRelative_billno(applyNo);
|
||||
xkChargeMain.setSend_flag("N");
|
||||
List<XkChargeMain> xkChargeMainList = xkChargeMainMapper.queryList(xkChargeMain);
|
||||
String chargeBillNo = "";
|
||||
if(!xkChargeMainList.isEmpty()){
|
||||
chargeBillNo = xkChargeMainList.get(0).getBill_no();
|
||||
}
|
||||
checkBloodTypeUtil.deleteData(xkTransfuseApplyTemp,chargeBillNo,billNo);
|
||||
|
||||
//调用外部接口 TODO
|
||||
|
||||
return new Result("0","删除成功!");
|
||||
}
|
||||
}
|
||||
|
||||
@ -1,8 +1,8 @@
|
||||
package com.czblood.busBloodbank.utils;
|
||||
|
||||
import com.czblood.bus.mapper.XkCheckBloodtypeMapper;
|
||||
import com.czblood.bus.mapper.XkTransfuseApplyMapper;
|
||||
import com.czblood.bus.mapper.*;
|
||||
import com.czblood.bus.pojo.XkCheckBloodtype;
|
||||
import com.czblood.bus.pojo.XkPatientInfo;
|
||||
import com.czblood.bus.pojo.XkTransfuseApply;
|
||||
import com.czblood.busBloodbank.mapper.CheckBloodTypeMapper;
|
||||
import com.czblood.common.core.domain.Result;
|
||||
@ -20,6 +20,12 @@ public class CheckBloodTypeUtil {
|
||||
CheckBloodTypeMapper checkBloodTypeMapper;
|
||||
@Resource
|
||||
XkCheckBloodtypeMapper xkCheckBloodtypeMapper;
|
||||
@Resource
|
||||
XkPatientInfoMapper xkPatientInfoMapper;
|
||||
@Resource
|
||||
XkChargeMainMapper xkChargeMainMapper;
|
||||
@Resource
|
||||
XkChargeDetailMapper xkChargeDetailMapper;
|
||||
|
||||
/**
|
||||
* 校验申请单是否有效
|
||||
@ -58,8 +64,23 @@ public class CheckBloodTypeUtil {
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void saveData(XkCheckBloodtype xkCheckBloodtype,XkTransfuseApply xkTransfuseApply){
|
||||
public void saveData(XkCheckBloodtype xkCheckBloodtype, XkTransfuseApply xkTransfuseApply, XkPatientInfo xkPatientInfo){
|
||||
xkCheckBloodtypeMapper.insert(xkCheckBloodtype);
|
||||
xkTransfuseApplyMapper.update(xkTransfuseApply);
|
||||
if(xkPatientInfo != null){
|
||||
xkPatientInfoMapper.updateXkPatientInfo(xkPatientInfo);
|
||||
}
|
||||
}
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void deleteData(XkTransfuseApply xkTransfuseApply,String chargeBillNo,String checkBillNo){
|
||||
xkCheckBloodtypeMapper.delete(checkBillNo);
|
||||
xkTransfuseApplyMapper.update(xkTransfuseApply);
|
||||
//删除血型复核收费数据
|
||||
if(chargeBillNo != null && !chargeBillNo.equals("")){
|
||||
xkChargeMainMapper.deleteByBillNo(chargeBillNo);
|
||||
xkChargeDetailMapper.deleteByBillNo(chargeBillNo);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -62,4 +62,7 @@
|
||||
FROM xk_patient_info RIGHT OUTER JOIN xk_transfuse_apply ON xk_patient_info.beinhos_id = xk_transfuse_apply.beinhos_id
|
||||
WHERE xk_transfuse_apply.bill_no = #{billNo}
|
||||
</select>
|
||||
<select id="queryOutMainCount" resultType="java.lang.Integer">
|
||||
Select count (*) From xk_out_main where check_no = #{billNo} and check_sign ='N';
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
x
Reference in New Issue
Block a user