|
|
|
@ -61,6 +61,7 @@ import java.util.ArrayList;
|
|
|
|
|
import java.util.Collections;
|
|
|
|
|
import java.util.Date;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
@Service
|
|
|
|
|
public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCodeManMapper, IoCollectOrderCodeMan> {
|
|
|
|
@ -116,14 +117,12 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public List<IoCollectOrderCodeMan> listByBillNo(String billNo) {
|
|
|
|
|
return collectOrderCodeManMapper.selectList(new LambdaQueryWrapper<IoCollectOrderCodeMan>()
|
|
|
|
|
.eq(IoCollectOrderCodeMan::getOrderIdFk, billNo));
|
|
|
|
|
return collectOrderCodeManMapper.selectList(new LambdaQueryWrapper<IoCollectOrderCodeMan>().eq(IoCollectOrderCodeMan::getOrderIdFk, billNo));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public IoCollectOrderCodeMan findByCode(String billNo, String code) {
|
|
|
|
|
return collectOrderCodeManMapper.selectOne(new LambdaQueryWrapper<IoCollectOrderCodeMan>().eq(IoCollectOrderCodeMan::getOrderIdFk, billNo)
|
|
|
|
|
.eq(IoCollectOrderCodeMan::getUdiCode, code).last("limit 1"));
|
|
|
|
|
return collectOrderCodeManMapper.selectOne(new LambdaQueryWrapper<IoCollectOrderCodeMan>().eq(IoCollectOrderCodeMan::getOrderIdFk, billNo).eq(IoCollectOrderCodeMan::getUdiCode, code).last("limit 1"));
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
@Resource
|
|
|
|
@ -141,18 +140,12 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
SysWorkplacePutRel sysWorkplacePutRel = workplacePutRelService.findPutWorkPlace(workPlace.getWorkplaceId(), null);
|
|
|
|
|
IoCollectSet collectSet = collectSetService.getSet();
|
|
|
|
|
Long putWorkPlaceCode = null;
|
|
|
|
|
if (sysWorkplacePutRel != null)
|
|
|
|
|
putWorkPlaceCode = sysWorkplacePutRel.getWorkPlaceCode();
|
|
|
|
|
if (sysWorkplacePutRel != null) putWorkPlaceCode = sysWorkplacePutRel.getWorkPlaceCode();
|
|
|
|
|
if (workPlace == null) throw new JsonException(500, "请先选择工位");
|
|
|
|
|
|
|
|
|
|
SysWorkplaceDocumentEntity sysWorkplaceDocumentEntity = sysWorkplaceDocumentService.findByWorkplaceCode(workPlace.getWorkplaceId(), addTagCodeReqeust.getBusType());
|
|
|
|
|
IoCollectOrderBiz collectOrderBiz = null;
|
|
|
|
|
IoCollectOrder collectOrder = null;
|
|
|
|
|
// try {
|
|
|
|
|
// Thread.sleep(3*1000);
|
|
|
|
|
// } catch (InterruptedException e) {
|
|
|
|
|
// throw new RuntimeException(e);
|
|
|
|
|
// }
|
|
|
|
|
//1.校验UDI码完整性
|
|
|
|
|
String code = addTagCodeReqeust.getCode();
|
|
|
|
|
if (StringUtils.isBlank(code)) throw new JsonException(ResultEnum.DATA_ERROR.getMessage());
|
|
|
|
@ -183,7 +176,6 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
if (udiRelevanceResponse.getDistributeMaxLevel() != null && IntUtil.value(udiRelevanceResponse.getDistributeMaxLevel()) < IntUtil.value(udiRelevanceResponse.getPackLevel())) {
|
|
|
|
|
throw new JsonException(500, "当前产品不支持采集该包装层级追溯码!");
|
|
|
|
@ -194,13 +186,13 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//如果是处方退药的码 要去校验是 否是 原始单据处方已完成的码
|
|
|
|
|
if (addTagCodeReqeust.getBusType().startsWith("YPCFTF")){
|
|
|
|
|
if (addTagCodeReqeust.getBusType().startsWith("YPCFTF")) {
|
|
|
|
|
collectOrder = collectOrderService.getByBillNo(addTagCodeReqeust.getBillNo());
|
|
|
|
|
IoCollectCodeRequest ioCollectCodeRequest = new IoCollectCodeRequest();
|
|
|
|
|
ioCollectCodeRequest.setBillNo(collectOrder.getRemark());
|
|
|
|
|
ioCollectCodeRequest.setCode(code);
|
|
|
|
|
List<IoCollectCodeResponse> ioCollectCodeResponses = ioCollectCodeBackService.filterList(ioCollectCodeRequest);
|
|
|
|
|
if (ioCollectCodeResponses.size() == 0){
|
|
|
|
|
if (ioCollectCodeResponses.size() == 0) {
|
|
|
|
|
throw new JsonException(500, "当前追溯码非原始处方追溯码");
|
|
|
|
|
}
|
|
|
|
|
IoCollectCodeResponse ioCollectCodeResponse = ioCollectCodeResponses.get(0);
|
|
|
|
@ -209,7 +201,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
// //这个为 退货的数量 如果退货数量 是
|
|
|
|
|
// Integer count = collectOrderBiz1.getCount();
|
|
|
|
|
// }
|
|
|
|
|
if (!ioCollectCodeResponse.getCode().equals(code)){
|
|
|
|
|
if (!ioCollectCodeResponse.getCode().equals(code)) {
|
|
|
|
|
throw new JsonException(500, "当前追溯码非原始处方追溯码");
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
@ -274,25 +266,18 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
IoSplitCodeEntity splitCodeEntity = splitCodeService.findByCode(code, putWorkPlaceCode);
|
|
|
|
|
List<IoCollectOrderBiz> collectOrderBizs = collectOrderBizService.listByBillNo(addTagCodeReqeust.getBillNo());
|
|
|
|
|
List<IoCollectOrderBiz> collectOrderBizs;
|
|
|
|
|
collectOrder = collectOrderService.getByBillNo(addTagCodeReqeust.getBillNo());
|
|
|
|
|
if (StrUtil.isNotEmpty(collectOrder.getSummaryNo())) {
|
|
|
|
|
collectOrderBizs = collectOrderService.getOrderBizs(collectOrder.getSummaryNo());
|
|
|
|
|
} else {
|
|
|
|
|
collectOrderBizs = collectOrderBizService.listByBillNo(addTagCodeReqeust.getBillNo());
|
|
|
|
|
}
|
|
|
|
|
//2.校验是否处方单UDI码
|
|
|
|
|
if (IntUtil.value(sysWorkplaceDocumentEntity.getScanType()) == WorkOperType.TYPE_GEN_ORDER) {
|
|
|
|
|
if (StrUtil.isEmpty(addTagCodeReqeust.getBillNo())) {
|
|
|
|
|
String orderNo = gennerOrderUtils.createWdOrderNo(new OrderNoTypeBean(Constant.SPLIT_ORDER, "yyyyMMdd"));
|
|
|
|
|
collectOrder = IoCollectOrder.builder()
|
|
|
|
|
.billNo(orderNo)
|
|
|
|
|
.busType(sysWorkplaceDocumentEntity.getDocumentTypeCode())
|
|
|
|
|
.fromCorp(addTagCodeReqeust.getFromCorp())
|
|
|
|
|
.fromCorpName(addTagCodeReqeust.getFromCorpName())
|
|
|
|
|
.billTime(new Date())
|
|
|
|
|
.workPlaceCode(workPlace.getWorkplaceId())
|
|
|
|
|
.createTime(new Date())
|
|
|
|
|
.createUser(userIds)
|
|
|
|
|
.shipper(addTagCodeReqeust.getInvCode())
|
|
|
|
|
.updateTime(new Date())
|
|
|
|
|
.orderCirType(sysWorkplaceDocumentEntity.getOrderCirType())
|
|
|
|
|
.tagStatus(1)
|
|
|
|
|
.build();
|
|
|
|
|
collectOrder = IoCollectOrder.builder().billNo(orderNo).busType(sysWorkplaceDocumentEntity.getDocumentTypeCode()).fromCorp(addTagCodeReqeust.getFromCorp()).fromCorpName(addTagCodeReqeust.getFromCorpName()).billTime(new Date()).workPlaceCode(workPlace.getWorkplaceId()).createTime(new Date()).createUser(userIds).shipper(addTagCodeReqeust.getInvCode()).updateTime(new Date()).orderCirType(sysWorkplaceDocumentEntity.getOrderCirType()).tagStatus(1).build();
|
|
|
|
|
if (StrUtil.isNotEmpty(addTagCodeReqeust.getShipper())) {
|
|
|
|
|
collectOrder.setShipper(addTagCodeReqeust.getShipper());
|
|
|
|
|
collectOrder.setShipperName(addTagCodeReqeust.getShipperName());
|
|
|
|
@ -300,8 +285,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
if (IntUtil.value(sysWorkplaceDocumentEntity.getIsMatching()) == 1) {
|
|
|
|
|
collectOrder.setFromType("药械追溯管理系统");
|
|
|
|
|
} else {
|
|
|
|
|
ThrBusTypeOriginEntity one = thrBusTypeOriginService.getOne(new LambdaQueryWrapper<ThrBusTypeOriginEntity>()
|
|
|
|
|
.eq(ThrBusTypeOriginEntity::getAction, sysWorkplaceDocumentEntity.getDocumentTypeCode()));
|
|
|
|
|
ThrBusTypeOriginEntity one = thrBusTypeOriginService.getOne(new LambdaQueryWrapper<ThrBusTypeOriginEntity>().eq(ThrBusTypeOriginEntity::getAction, sysWorkplaceDocumentEntity.getDocumentTypeCode()));
|
|
|
|
|
if (one != null) {
|
|
|
|
|
ThrSystemEntity thrSystemEntity = thrSystemService.getOne(new LambdaQueryWrapper<ThrSystemEntity>().eq(ThrSystemEntity::getThirdId, one.getThirdSys()));
|
|
|
|
|
if (thrSystemEntity != null) {
|
|
|
|
@ -321,8 +305,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
} else if (IntUtil.value(sysWorkplaceDocumentEntity.getScanType()) == WorkOperType.TYPE_VAIL_BATCH) {
|
|
|
|
|
collectOrder = collectOrderService.getByBillNo(addTagCodeReqeust.getBillNo());
|
|
|
|
|
collectOrder.setWorkPlaceCode(addTagCodeReqeust.getWorkPlaceCode());
|
|
|
|
|
if (collectOrder == null)
|
|
|
|
|
throw new JsonException(500, "单据不存在!");
|
|
|
|
|
if (collectOrder == null) throw new JsonException(500, "单据不存在!");
|
|
|
|
|
if (splitCodeEntity != null && StrUtil.isNotEmpty(splitCodeEntity.getSerialNo())) {
|
|
|
|
|
if (IntUtil.value(splitCodeEntity.getRemainCount()) < 1) {
|
|
|
|
|
throw new JsonException(500, "当前追溯码已被拆零!");
|
|
|
|
@ -364,8 +347,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case 2: //不插入
|
|
|
|
|
if (collectOrderBiz == null)
|
|
|
|
|
throw new JsonException(500, "非此单据追溯码!");
|
|
|
|
|
if (collectOrderBiz == null) throw new JsonException(500, "非此单据追溯码!");
|
|
|
|
|
int count = IntUtil.value(collectOrderBiz.getScanCount()) + 1;
|
|
|
|
|
|
|
|
|
|
int actCount = 0;
|
|
|
|
@ -430,8 +412,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
} else if (IntUtil.value(sysWorkplaceDocumentEntity.getScanType()) == WorkOperType.TYPE_UNVAIL_BATCH) {
|
|
|
|
|
collectOrder = collectOrderService.getByBillNo(addTagCodeReqeust.getBillNo());
|
|
|
|
|
collectOrder.setWorkPlaceCode(addTagCodeReqeust.getWorkPlaceCode());
|
|
|
|
|
if (collectOrder == null)
|
|
|
|
|
throw new JsonException(500, "单据不存在!");
|
|
|
|
|
if (collectOrder == null) throw new JsonException(500, "单据不存在!");
|
|
|
|
|
//按单不校验三期
|
|
|
|
|
collectOrderBiz = vailNoBatchNo(udiRelevanceResponses, collectOrderBizs, udiEntity);
|
|
|
|
|
|
|
|
|
@ -443,7 +424,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
throw new JsonException(500, "当前追溯码已被其他单据关联!");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (!addTagCodeReqeust.getBusType().startsWith("YPCFTF")){
|
|
|
|
|
if (!addTagCodeReqeust.getBusType().startsWith("YPCFTF")) {
|
|
|
|
|
if (splitCodeEntity != null && StrUtil.isNotEmpty(splitCodeEntity.getSerialNo())) {
|
|
|
|
|
if (IntUtil.value(splitCodeEntity.getRemainCount()) < 1) {
|
|
|
|
|
throw new JsonException(500, "当前追溯码已被拆零!");
|
|
|
|
@ -470,8 +451,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case 2: //不插入
|
|
|
|
|
if (collectOrderBiz == null)
|
|
|
|
|
throw new JsonException(500, "非此单据追溯码!");
|
|
|
|
|
if (collectOrderBiz == null) throw new JsonException(500, "非此单据追溯码!");
|
|
|
|
|
int count = IntUtil.value(collectOrderBiz.getScanCount()) + 1;
|
|
|
|
|
int actCount = 0;
|
|
|
|
|
actCount = IntUtil.value(collectOrderBiz.getScanActCount()) + scanCount;
|
|
|
|
@ -496,7 +476,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
int count1 = IntUtil.value(collectOrderBiz.getScanCount()) + 1;
|
|
|
|
|
int actCount1 = 0;
|
|
|
|
|
actCount1 = IntUtil.value(collectOrderBiz.getScanActCount()) + scanCount;
|
|
|
|
|
if (!addTagCodeReqeust.getBusType().startsWith("YPCFTF")){
|
|
|
|
|
if (!addTagCodeReqeust.getBusType().startsWith("YPCFTF")) {
|
|
|
|
|
if (actCount1 > IntUtil.value(collectOrderBiz.getCount())) {
|
|
|
|
|
int needCount = IntUtil.value(collectOrderBiz.getCount()) - IntUtil.value(collectOrderBiz.getScanActCount());
|
|
|
|
|
if (needCount > 0) {
|
|
|
|
@ -546,26 +526,11 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
if (isExitRel(code, collectOrder.getBillNo())) {
|
|
|
|
|
throw new JsonException(500, "当前追溯码已上传关联关系,请勿重复扫码!");
|
|
|
|
|
}
|
|
|
|
|
IoCollectOrderCodeMan collectOrderCodeMan =
|
|
|
|
|
IoCollectOrderCodeMan.builder()
|
|
|
|
|
.udiCode(code)
|
|
|
|
|
.orderIdFk(collectOrder.getBillNo())
|
|
|
|
|
.bizIdFk(collectOrderBiz.getId())
|
|
|
|
|
.relId(collectOrderBiz.getRelId())
|
|
|
|
|
.nameCode(udiEntity.getUdi())
|
|
|
|
|
.batchNo(udiEntity.getBatchNo() == null ? collectOrderBiz.getBatchNo() : udiEntity.getBatchNo())
|
|
|
|
|
.serialNo(udiEntity.getSerialNo())
|
|
|
|
|
.productDate(udiEntity.getProduceDate() == null ? collectOrderBiz.getProductDate() : udiEntity.getProduceDate())
|
|
|
|
|
.expireDate(udiEntity.getExpireDate() == null ? collectOrderBiz.getExpireDate() : udiEntity.getExpireDate())
|
|
|
|
|
.createTime(new Date())
|
|
|
|
|
.createUser(userId)
|
|
|
|
|
.updateTime(new Date())
|
|
|
|
|
.updateUser(userId)
|
|
|
|
|
.scanCount(count + 1)
|
|
|
|
|
IoCollectOrderCodeMan collectOrderCodeMan = IoCollectOrderCodeMan.builder().udiCode(code)
|
|
|
|
|
.orderIdFk(collectOrderBiz.getOrderIdFk())
|
|
|
|
|
.bizIdFk(collectOrderBiz.getId()).relId(collectOrderBiz.getRelId()).nameCode(udiEntity.getUdi()).batchNo(udiEntity.getBatchNo() == null ? collectOrderBiz.getBatchNo() : udiEntity.getBatchNo()).serialNo(udiEntity.getSerialNo()).productDate(udiEntity.getProduceDate() == null ? collectOrderBiz.getProductDate() : udiEntity.getProduceDate()).expireDate(udiEntity.getExpireDate() == null ? collectOrderBiz.getExpireDate() : udiEntity.getExpireDate()).createTime(new Date()).createUser(userId).updateTime(new Date()).updateUser(userId).scanCount(count + 1)
|
|
|
|
|
// .scanCount(scanCount)
|
|
|
|
|
.isSplitCode(addTagCodeReqeust.getIsSplitCode())
|
|
|
|
|
.scanActCount(scanCount)
|
|
|
|
|
.build();
|
|
|
|
|
.isSplitCode(addTagCodeReqeust.getIsSplitCode()).scanActCount(scanCount).build();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
RelCodeDetailResponse codeRelEntity = relCodeDetailService.findByCode(code);
|
|
|
|
@ -604,8 +569,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
ret = collectOrderCodeManMapper.exists(new LambdaQueryWrapper<IoCollectOrderCodeMan>().eq(IoCollectOrderCodeMan::getOrderIdFk, orderId).eq(IoCollectOrderCodeMan::getUdiCode, relCodeDetail.getParentCode()));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
if (ret)
|
|
|
|
|
return true;
|
|
|
|
|
if (ret) return true;
|
|
|
|
|
//若父码不存在,判断当前单号是否存在当前码的子码,若存在则表示存在关联关系重复扫码
|
|
|
|
|
ret = collectOrderCodeManMapper.exists(new LambdaQueryWrapper<IoCollectOrderCodeMan>().eq(IoCollectOrderCodeMan::getOrderIdFk, orderId).eq(IoCollectOrderCodeMan::getParentCode, code));
|
|
|
|
|
if (!ret) {
|
|
|
|
@ -632,9 +596,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
public IoCollectOrderBiz scanGenOrder(List<UdiRelevanceResponse> udiRelevanceResponses, List<IoCollectOrderBiz> collectOrderBizs, UdiEntity udiEntity, IoCollectOrder collectOrder) {
|
|
|
|
|
for (UdiRelevanceResponse udiRelevanceResponse : udiRelevanceResponses) {
|
|
|
|
|
for (IoCollectOrderBiz collectOrderBiz : collectOrderBizs) {
|
|
|
|
|
if (udiRelevanceResponse.getId().equals(collectOrderBiz.getRelId()) &&
|
|
|
|
|
(StrUtil.trimToEmpty(collectOrderBiz.getBatchNo()).equals(StrUtil.trimToEmpty(udiEntity.getBatchNo())))
|
|
|
|
|
) {
|
|
|
|
|
if (udiRelevanceResponse.getId().equals(collectOrderBiz.getRelId()) && (StrUtil.trimToEmpty(collectOrderBiz.getBatchNo()).equals(StrUtil.trimToEmpty(udiEntity.getBatchNo())))) {
|
|
|
|
|
int actCount = 0;
|
|
|
|
|
if (IntUtil.value(collectOrder.getOrderCirType()) == 1) {
|
|
|
|
|
actCount = +calCountUtil.getCirActCount(udiRelevanceResponse);
|
|
|
|
@ -659,30 +621,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
} else {
|
|
|
|
|
actCount = calCountUtil.getUseActCount(udiRelevanceResponse);
|
|
|
|
|
}
|
|
|
|
|
return IoCollectOrderBiz.builder()
|
|
|
|
|
.id(IdUtil.getSnowflakeNextId())
|
|
|
|
|
.relId(udiRelevanceResponse.getId())
|
|
|
|
|
.thrCode(udiRelevanceResponse.getMainId())
|
|
|
|
|
.ybbm(udiRelevanceResponse.getYbbm())
|
|
|
|
|
.payFeeCode(udiRelevanceResponse.getPayFeeCode())
|
|
|
|
|
.cpmctymc(udiRelevanceResponse.getCpmctymc())
|
|
|
|
|
.nameCode(udiEntity.getUdi())
|
|
|
|
|
.ggxh(StrUtil.isNotEmpty(udiRelevanceResponse.getGgxh()) ? udiRelevanceResponse.getGgxh() : udiRelevanceResponse.getBzgg())
|
|
|
|
|
.batchNo(udiEntity.getBatchNo())
|
|
|
|
|
.productDate(udiEntity.getProduceDate())
|
|
|
|
|
.expireDate(udiEntity.getExpireDate())
|
|
|
|
|
.count(1)
|
|
|
|
|
.addCount(1)
|
|
|
|
|
.actCount(actCount)
|
|
|
|
|
.addActCount(actCount)
|
|
|
|
|
.scanCount(1)
|
|
|
|
|
.addScanCount(1)
|
|
|
|
|
.scanActCount(actCount)
|
|
|
|
|
.addScanActCount(actCount)
|
|
|
|
|
.measureUnit(udiRelevanceResponse.getMeasname())
|
|
|
|
|
.createTime(new Date())
|
|
|
|
|
.updateTime(new Date())
|
|
|
|
|
.build();
|
|
|
|
|
return IoCollectOrderBiz.builder().id(IdUtil.getSnowflakeNextId()).relId(udiRelevanceResponse.getId()).thrCode(udiRelevanceResponse.getMainId()).ybbm(udiRelevanceResponse.getYbbm()).payFeeCode(udiRelevanceResponse.getPayFeeCode()).cpmctymc(udiRelevanceResponse.getCpmctymc()).nameCode(udiEntity.getUdi()).ggxh(StrUtil.isNotEmpty(udiRelevanceResponse.getGgxh()) ? udiRelevanceResponse.getGgxh() : udiRelevanceResponse.getBzgg()).batchNo(udiEntity.getBatchNo()).productDate(udiEntity.getProduceDate()).expireDate(udiEntity.getExpireDate()).count(1).addCount(1).actCount(actCount).addActCount(actCount).scanCount(1).addScanCount(1).scanActCount(actCount).addScanActCount(actCount).measureUnit(udiRelevanceResponse.getMeasname()).createTime(new Date()).updateTime(new Date()).build();
|
|
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
@ -694,8 +633,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
// 增加医保编码/组套编码等校验
|
|
|
|
|
if (StrUtil.isNotEmpty(collectOrderBiz.getCheckCode())) {
|
|
|
|
|
|
|
|
|
|
if ((StrUtil.emptyIfNull(collectOrderBiz.getBatchNo()).equals(StrUtil.emptyIfNull(udiEntity.getBatchNo())))
|
|
|
|
|
&& (StrUtil.emptyIfNull(collectOrderBiz.getCheckCode()).contains(StrUtil.emptyIfNull(udiRelevanceResponse.getYbbm())))) {
|
|
|
|
|
if ((StrUtil.emptyIfNull(collectOrderBiz.getBatchNo()).equals(StrUtil.emptyIfNull(udiEntity.getBatchNo()))) && (StrUtil.emptyIfNull(collectOrderBiz.getCheckCode()).contains(StrUtil.emptyIfNull(udiRelevanceResponse.getYbbm())))) {
|
|
|
|
|
collectOrderBiz.setRelId(udiRelevanceResponse.getId());
|
|
|
|
|
return collectOrderBiz;
|
|
|
|
|
}
|
|
|
|
@ -757,13 +695,10 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
public BaseResponse CheckCode(CollectOrderCodeManRequest request) {
|
|
|
|
|
String orderId = request.getOrderIdFk();
|
|
|
|
|
IoCollectOrder ioCollectOrder = collectOrderService.getByBillNo(orderId);
|
|
|
|
|
if (ioCollectOrder == null)
|
|
|
|
|
return ResultVOUtils.error(500, "单据不存在");
|
|
|
|
|
if (ioCollectOrder == null) return ResultVOUtils.error(500, "单据不存在");
|
|
|
|
|
//判断
|
|
|
|
|
if (StrUtil.isNotEmpty(request.getUdiCode())) {
|
|
|
|
|
IoCollectOrderCodeMan ioCollectOrderCodeMan = collectOrderCodeManMapper.selectOne(new LambdaQueryWrapper<IoCollectOrderCodeMan>()
|
|
|
|
|
.eq(IoCollectOrderCodeMan::getOrderIdFk, request.getOrderIdFk())
|
|
|
|
|
.eq(IoCollectOrderCodeMan::getUdiCode, request.getUdiCode()));
|
|
|
|
|
IoCollectOrderCodeMan ioCollectOrderCodeMan = collectOrderCodeManMapper.selectOne(new LambdaQueryWrapper<IoCollectOrderCodeMan>().eq(IoCollectOrderCodeMan::getOrderIdFk, request.getOrderIdFk()).eq(IoCollectOrderCodeMan::getUdiCode, request.getUdiCode()));
|
|
|
|
|
if (ioCollectOrderCodeMan == null) {
|
|
|
|
|
BaseResponse response = new BaseResponse();
|
|
|
|
|
response.setData(request.getUdiCode());
|
|
|
|
@ -782,9 +717,7 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
} else {
|
|
|
|
|
List<VailCodeResultResponse> vailCodeResultResponses = new ArrayList<>();
|
|
|
|
|
for (String code : request.getUdiCodeList()) {
|
|
|
|
|
IoCollectOrderCodeMan ioCollectOrderCodeMan = collectOrderCodeManMapper.selectOne(new LambdaQueryWrapper<IoCollectOrderCodeMan>()
|
|
|
|
|
.eq(IoCollectOrderCodeMan::getOrderIdFk, request.getOrderIdFk())
|
|
|
|
|
.eq(IoCollectOrderCodeMan::getUdiCode, code));
|
|
|
|
|
IoCollectOrderCodeMan ioCollectOrderCodeMan = collectOrderCodeManMapper.selectOne(new LambdaQueryWrapper<IoCollectOrderCodeMan>().eq(IoCollectOrderCodeMan::getOrderIdFk, request.getOrderIdFk()).eq(IoCollectOrderCodeMan::getUdiCode, code));
|
|
|
|
|
VailCodeResultResponse vailCodeResultResponse = new VailCodeResultResponse();
|
|
|
|
|
if (ioCollectOrderCodeMan != null) {
|
|
|
|
|
vailCodeResultResponse.setStatus(1);
|
|
|
|
@ -823,13 +756,11 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
|
|
|
|
|
/**
|
|
|
|
|
* @param purType 1:入账库;2:预验收库;3:寄售库
|
|
|
|
|
*/
|
|
|
|
|
public boolean checkDiAttribute(BasicBussinessTypeEntity bussinessTypeEntity, UdiRelevanceResponse
|
|
|
|
|
udiRelevanceEntity, Integer purType) {
|
|
|
|
|
public boolean checkDiAttribute(BasicBussinessTypeEntity bussinessTypeEntity, UdiRelevanceResponse udiRelevanceEntity, Integer purType) {
|
|
|
|
|
if (bussinessTypeEntity.getUseDyCount() == 2) {
|
|
|
|
|
if (IntUtil.value(udiRelevanceEntity.getPurType()) == IntUtil.value(purType)) {
|
|
|
|
|
return true;
|
|
|
|
|
} else
|
|
|
|
|
return false;
|
|
|
|
|
} else return false;
|
|
|
|
|
}
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|