feat: 药品关联关系是否存在

dev_unify
chenhc 9 months ago
parent 4f1258572d
commit e2ba897fc3

@ -2,6 +2,7 @@ package com.glxp.api.controller.inout;
import cn.hutool.Hutool; import cn.hutool.Hutool;
import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.thread.ThreadUtil;
import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
@ -39,6 +40,7 @@ import com.glxp.api.res.inout.AddCodeResult;
import com.glxp.api.res.inout.IoCodeTempResponse; import com.glxp.api.res.inout.IoCodeTempResponse;
import com.glxp.api.service.auth.InvWarehouseService; import com.glxp.api.service.auth.InvWarehouseService;
import com.glxp.api.service.basic.*; import com.glxp.api.service.basic.*;
import com.glxp.api.service.collect.RelCodeBatchService;
import com.glxp.api.service.inout.*; import com.glxp.api.service.inout.*;
import com.glxp.api.service.inout.impl.IoCodeService; import com.glxp.api.service.inout.impl.IoCodeService;
import com.glxp.api.service.inv.*; import com.glxp.api.service.inv.*;
@ -896,6 +898,9 @@ public class IoCodeTempController extends BaseController {
} }
@Resource
RelCodeBatchService relCodeBatchService;
//前端扫码提交(药品) //前端扫码提交(药品)
@AuthRuleAnnotation("") @AuthRuleAnnotation("")
@PostMapping("warehouse/inout/drug/addOrderWeb") @PostMapping("warehouse/inout/drug/addOrderWeb")
@ -1077,6 +1082,10 @@ public class IoCodeTempController extends BaseController {
codeEnttity.setCount(1); codeEnttity.setCount(1);
codeEnttity.setProductType(2); codeEnttity.setProductType(2);
String unitFk = null; String unitFk = null;
// TODO: 2024/10/17 异步调用 查询是否存在药品关联信息 后将结果更新至 temp表
ThreadUtil.execAsync(() -> {
relCodeBatchService.threadUpdateIoCodeTempEntity(codeEnttity);
});
if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) { if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_OUT) {
unitFk = addOrderRequest.getFromCorp(); unitFk = addOrderRequest.getFromCorp();
} }

@ -153,6 +153,13 @@ public class IoCodeTempEntity {
private String mySupId; //更新供应商 private String mySupId; //更新供应商
/**
* 0 1
*/
@TableField(value = "drugLink")
private Integer drugLink;
/** /**
* 1:;2: * 1:;2:
*/ */

@ -15,12 +15,14 @@ import com.glxp.api.common.res.BaseResponse;
import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.common.util.ResultVOUtils;
import com.glxp.api.dao.basic.BasicProductsDao; import com.glxp.api.dao.basic.BasicProductsDao;
import com.glxp.api.dao.collect.RelCodeBatchMapper; import com.glxp.api.dao.collect.RelCodeBatchMapper;
import com.glxp.api.dao.inout.IoCodeTempDao;
import com.glxp.api.entity.auth.AuthAdmin; import com.glxp.api.entity.auth.AuthAdmin;
import com.glxp.api.entity.basic.BasicProductsEntity; import com.glxp.api.entity.basic.BasicProductsEntity;
import com.glxp.api.entity.basic.ProductInfoEntity; import com.glxp.api.entity.basic.ProductInfoEntity;
import com.glxp.api.entity.basic.UdiEntity; import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.collect.RelCodeBatch; import com.glxp.api.entity.collect.RelCodeBatch;
import com.glxp.api.entity.collect.RelCodeDetail; import com.glxp.api.entity.collect.RelCodeDetail;
import com.glxp.api.entity.inout.IoCodeTempEntity;
import com.glxp.api.exception.JsonException; import com.glxp.api.exception.JsonException;
import com.glxp.api.req.collect.RelCodeBatchRequest; import com.glxp.api.req.collect.RelCodeBatchRequest;
import com.glxp.api.req.collect.RelCodeDetailRequest; import com.glxp.api.req.collect.RelCodeDetailRequest;
@ -28,6 +30,7 @@ import com.glxp.api.res.collect.RelCodeBatchResponse;
import com.glxp.api.res.collect.RelCodeDetailByParentCodeResponse; import com.glxp.api.res.collect.RelCodeDetailByParentCodeResponse;
import com.glxp.api.service.auth.CustomerService; import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.basic.ProductInfoService; import com.glxp.api.service.basic.ProductInfoService;
import com.glxp.api.service.inout.IoCodeTempService;
import com.glxp.api.util.HttpClient; import com.glxp.api.util.HttpClient;
import com.glxp.api.util.udi.FilterUdiUtils; import com.glxp.api.util.udi.FilterUdiUtils;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
@ -412,4 +415,31 @@ public class RelCodeBatchService extends ServiceImpl<RelCodeBatchMapper, RelCode
} }
} }
@Resource
IoCodeTempDao ioCodeTempDao;
public void threadUpdateIoCodeTempEntity(IoCodeTempEntity codeTempEntity){
String parentCode = codeTempEntity.getCode();
List<IoCodeTempEntity> ioCodeTempEntities = ioCodeTempDao.selectList(new LambdaQueryWrapper<IoCodeTempEntity>().eq(IoCodeTempEntity::getCode, parentCode));
if (CollUtil.isNotEmpty(ioCodeTempEntities)){
if (this.batchExist(parentCode)){
//打上匹配到了药品关联关系的标记
for (int i = 0; i < ioCodeTempEntities.size(); i++) {
IoCodeTempEntity ioCodeTempEntity = ioCodeTempEntities.get(i);
ioCodeTempEntity.setDrugLink(1);
ioCodeTempDao.updateById(ioCodeTempEntity);
}
}else {
//打上匹配不到了药品关联关系的标记
for (int i = 0; i < ioCodeTempEntities.size(); i++) {
IoCodeTempEntity ioCodeTempEntity = ioCodeTempEntities.get(i);
ioCodeTempEntity.setDrugLink(0);
ioCodeTempDao.updateById(ioCodeTempEntity);
}
}
}
}
} }

@ -1015,3 +1015,8 @@ CALL Pro_Temp_ColumnWork('basic_products', 'xjdw', ' varchar(60) CHARACTER SET u
CALL Pro_Temp_ColumnWork('basic_bussiness_type', 'productType', CALL Pro_Temp_ColumnWork('basic_bussiness_type', 'productType',
' tinyint NULL DEFAULT NULL COMMENT ''单据类型; 1:器械单据 2:药品单据''', ' tinyint NULL DEFAULT NULL COMMENT ''单据类型; 1:器械单据 2:药品单据''',
1); 1);
CALL Pro_Temp_ColumnWork('io_code_temp', 'drugLink',
' tinyint NULL DEFAULT b''0''COMMENT ''药品关联关系是否存在 0不存在 1存在''',
1);
Loading…
Cancel
Save