标本接收

This commit is contained in:
jiangs 2026-07-30 10:10:26 +08:00
parent 30ba8485f8
commit c6de39e994
6 changed files with 90 additions and 1 deletions

View File

@ -11,4 +11,5 @@ public class BloodSysLogConstants {
public static final String LOG_TYPE_TRANSFUSE_APPLY_APPROVAL = "输血审批";
public static final String LOG_TYPE_SAMPLE_INFO = "样本信息";
public static final String LOG_TYPE_SEARCH_TRANSFUSEBILL_INFO = "申请单扫描登记";
public static final String LOG_TYPE_ACCEPT_SAMPLE_INFO = "标本接收";
}

View File

@ -74,7 +74,8 @@
<if test="send_Nurse != null ">send_Nurse = #{send_Nurse},</if>
<if test="send_Date != null ">send_Date = #{send_Date},</if>
<if test="takeOver_Man != null ">takeOver_Man = #{takeOver_Man},</if>
<if test="takeOver_Date != null ">takeOver_Date = #{takeOver_Date},</if>
<if test="takeOver_Date != null and takeOver_Date != '1900-01-01' ">takeOver_Date = #{takeOver_Date},</if>
<if test="takeOver_Date != null and takeOver_Date == '1900-01-01' ">takeOver_Date = null,</if>
<if test="overdue_Flag != null ">overdue_Flag = #{overdue_Flag},</if>
<if test="exp1 != null ">exp1 = #{exp1},</if>
<if test="exp2 != null ">exp2 = #{exp2},</if>

View File

@ -1,11 +1,14 @@
package com.czblood.busBloodbank.controller;
import com.czblood.bus.constants.BloodSysLogConstants;
import com.czblood.bus.pojo.XkSampleInfo;
import com.czblood.busBloodbank.pojo.VO.AcceptSampleInfoQueryVO;
import com.czblood.busBloodbank.service.AcceptSampleInfoService;
import com.czblood.common.annotation.Log;
import com.czblood.common.core.controller.BaseController;
import com.czblood.common.core.domain.Result;
import com.czblood.common.core.page.TableDataInfo;
import com.czblood.common.enums.BusinessType;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.GetMapping;
@ -32,9 +35,31 @@ public class AcceptSampleInfoController extends BaseController {
return getDataTable(list);
}
@Log(title = BloodSysLogConstants.LOG_TYPE_ACCEPT_SAMPLE_INFO, businessType = BusinessType.INSERT)
@ApiOperation("标本接收")
@PostMapping("/acceptSampleInfo")
public Result acceptSampleInfo(XkSampleInfo xKSampleInfo){
return acceptSampleInfoService.acceptSampleInfo(xKSampleInfo);
}
@ApiOperation("查询单个标本信息")
@GetMapping("/queryOne")
public Result queryOne(String sampleNo){
return acceptSampleInfoService.queryOne(sampleNo);
}
@Log(title = BloodSysLogConstants.LOG_TYPE_ACCEPT_SAMPLE_INFO, businessType = BusinessType.DELETE)
@ApiOperation("取消标本接收")
@PostMapping("/cancelSampleInfo")
public Result cancelSampleInfo(String sampleNo){
return acceptSampleInfoService.cancelSampleInfo(sampleNo);
}
@Log(title = BloodSysLogConstants.LOG_TYPE_ACCEPT_SAMPLE_INFO, businessType = BusinessType.DELETE_VS)
@ApiOperation("标本退回")
@PostMapping("/backSampleInfo")
public Result backSampleInfo(AcceptSampleInfoQueryVO acceptSampleInfoQueryVO){
return acceptSampleInfoService.backSampleInfo(acceptSampleInfoQueryVO);
}
}

View File

@ -1,9 +1,12 @@
package com.czblood.busBloodbank.pojo.VO;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.util.Date;
@Data
@AllArgsConstructor
@NoArgsConstructor
@ -13,4 +16,11 @@ public class AcceptSampleInfoQueryVO {
private String dept;
private String sampleNo;
private String status;
@ApiModelProperty("退回人")
private String discard_person;
@ApiModelProperty("退回日期")
private Date discard_date;
@ApiModelProperty("退回原因")
private String discard_reason;
}

View File

@ -10,4 +10,7 @@ import java.util.Map;
public interface AcceptSampleInfoService {
List<Map<String, Object>> queryList(AcceptSampleInfoQueryVO acceptSampleInfoQueryVO);
Result acceptSampleInfo(XkSampleInfo xKSampleInfo);
Result queryOne(String sampleNo);
Result cancelSampleInfo(String sampleNo);
Result backSampleInfo(AcceptSampleInfoQueryVO acceptSampleInfoQueryVO);
}

View File

@ -1,5 +1,6 @@
package com.czblood.busBloodbank.service.impl;
import cn.hutool.core.date.DateUtil;
import com.czblood.bus.mapper.XkSampleInfoMapper;
import com.czblood.bus.mapper.XkTransfuseApplyMapper;
import com.czblood.bus.pojo.XkSampleInfo;
@ -61,6 +62,54 @@ public class AcceptSampleInfoServiceImpl implements AcceptSampleInfoService {
return new Result("0","接收样本信息成功!");
}
@Override
public Result queryOne(String sampleNo) {
XkSampleInfo xkSampleInfo = xkSampleInfoMapper.queryOne(sampleNo);
return new Result("0","获取数据成功!",xkSampleInfo);
}
/**
* 取消标本签收
* @param sampleNo
* @return
*/
@Override
public Result cancelSampleInfo(String sampleNo) {
XkSampleInfo xkSampleInfo = xkSampleInfoMapper.queryOne(sampleNo);
if(xkSampleInfo == null) return new Result("-1","没有找到对应的样本信息!");
XkSampleInfo xkSampleInfoTemp = new XkSampleInfo();
xkSampleInfoTemp.setSample_No(xkSampleInfo.getSample_No());
xkSampleInfoTemp.setTakeOver_Date(DateUtil.parse("1900-01-01","yyyy-MM-dd"));
xkSampleInfoTemp.setTakeOver_Man("");
xkSampleInfoTemp.setSendperson("");
xkSampleInfoMapper.update(xkSampleInfoTemp);
return new Result("0","取消接收样本信息成功!");
}
/**
* 样本退回
* @param acceptSampleInfoQueryVO
* @return
*/
@Override
public Result backSampleInfo(AcceptSampleInfoQueryVO acceptSampleInfoQueryVO) {
String discardPerson = BloodBankUtil.isBank(acceptSampleInfoQueryVO.getDiscard_person());
if(discardPerson.equals("")) return new Result("-1","退回人不能为空!");
Date currentTimeDate = bloodBankUtil.getCurrentTimeDate();
String discardReason = BloodBankUtil.isBank(acceptSampleInfoQueryVO.getDiscard_reason());
if(discardReason.equals("")) return new Result("-1","退回原因不能为空!");
String sampleNo = acceptSampleInfoQueryVO.getSampleNo();
XkSampleInfo xkSampleInfo = xkSampleInfoMapper.queryOne(sampleNo);
if(xkSampleInfo == null) return new Result("-1","没有找到对应的样本信息!");
XkSampleInfo xkSampleInfoTemp = new XkSampleInfo();
xkSampleInfoTemp.setSample_No(xkSampleInfo.getSample_No());
xkSampleInfoTemp.setDiscard_person(discardPerson);
xkSampleInfoTemp.setDiscard_date(currentTimeDate);
xkSampleInfoTemp.setDiscard_reason(discardReason);
xkSampleInfoMapper.update(xkSampleInfoTemp);
return new Result("0","样本退回成功!");
}
@Transactional(rollbackFor = Exception.class)
public void updateData(XkSampleInfo xkSampleInfo, XkTransfuseApply xkTransfuseApply) {
xkSampleInfoMapper.update(xkSampleInfo);