关联关系问题修改

dev_unify
yewj 8 months ago
parent 2a4601b681
commit 6c541c8ab9

@ -109,5 +109,18 @@ public class IoCollectOrderCodeMan implements Serializable {
@TableField(exist = false)
private Integer remainCount;
/**
*
*/
@TableField(value = "parentCode")
private String parentCode;
/**
*
*/
@TableField(value = "grantPaCode")
private String grantPaCode;
private static final long serialVersionUID = 1L;
}

@ -20,6 +20,7 @@ import com.glxp.api.entity.basic.UdiEntity;
import com.glxp.api.entity.collect.IoCollectOrder;
import com.glxp.api.entity.collect.IoCollectOrderBiz;
import com.glxp.api.entity.collect.IoCollectOrderCodeMan;
import com.glxp.api.entity.collect.RelCodeDetail;
import com.glxp.api.entity.inout.IoCodeTempEntity;
import com.glxp.api.entity.inout.IoSplitCodeEntity;
import com.glxp.api.entity.inv.AnncmntProductEntity;
@ -30,6 +31,7 @@ import com.glxp.api.req.collect.CollectOrderCodeManRequest;
import com.glxp.api.req.inout.AddTagCodeReqeust;
import com.glxp.api.res.basic.UdiRelevanceResponse;
import com.glxp.api.res.collect.CollectOrderCodeManResponse;
import com.glxp.api.res.collect.RelCodeDetailResponse;
import com.glxp.api.service.auth.CustomerService;
import com.glxp.api.service.auth.InvWarehouseService;
import com.glxp.api.service.auth.SysWorkplaceService;
@ -153,9 +155,11 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
if (IntUtil.value(udiRelevanceResponse.getPackLevel()) < IntUtil.value(udiRelevanceResponse.getUseLevel())) {
throw new JsonException(500, "当前产品不支持采集该包装层级追溯码!");
}
if (udiRelevanceResponse.getUseMaxLevel() == null && IntUtil.value(udiRelevanceResponse.getPackLevel()) > 1) {
throw new JsonException(500, "当前产品不支持采集该包装层级追溯码!");
}
} else {
if (IntUtil.value(udiRelevanceResponse.getDistributeMaxLevel()) < IntUtil.value(udiRelevanceResponse.getPackLevel())) {
if (udiRelevanceResponse.getDistributeMaxLevel() != null && IntUtil.value(udiRelevanceResponse.getDistributeMaxLevel()) < IntUtil.value(udiRelevanceResponse.getPackLevel())) {
throw new JsonException(500, "当前产品不支持采集该包装层级追溯码!");
}
if (IntUtil.value(udiRelevanceResponse.getPackLevel()) < IntUtil.value(udiRelevanceResponse.getDistributeLevel())) {
@ -438,6 +442,9 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
exitCode.setBizIdFk(collectOrderBiz.getId());
this.updateById(exitCode);
} else {
if (isExitRel(code, collectOrder.getBillNo())) {
throw new JsonException(500, "当前追溯码已上传关联关系,请勿重复扫码!");
}
IoCollectOrderCodeMan collectOrderCodeMan =
IoCollectOrderCodeMan.builder()
.udiCode(code)
@ -458,6 +465,14 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
.isSplitCode(addTagCodeReqeust.getIsSplitCode())
.scanActCount(scanCount)
.build();
RelCodeDetailResponse codeRelEntity = relCodeDetailService.findByCode(code);
if (codeRelEntity != null) {
collectOrderCodeMan.setParentCode(codeRelEntity.getParentCode());
RelCodeDetail relCodeDetail = relCodeDetailService.getOneByCode(codeRelEntity.getParentCode());
if (relCodeDetail != null) {
collectOrderCodeMan.setGrantPaCode(relCodeDetail.getParentCode());
}
}
this.save(collectOrderCodeMan);
}
@ -467,6 +482,33 @@ public class IoCollectOrderCodeManService extends ServiceImpl<IoCollectOrderCode
}
@Resource
RelCodeDetailService relCodeDetailService;
public boolean isExitRel(String code, String orderId) {
boolean ret = false;
RelCodeDetailResponse relCodeDetail = relCodeDetailService.findByCode(code);
if (relCodeDetail != null) {
//判断是否存在关联关系1.先判断当前单号是否存在父码,若存在则表示存在关联关系重复扫码
if (StrUtil.isNotEmpty(relCodeDetail.getParentCode())) {
ret = collectOrderCodeManMapper.exists(new LambdaQueryWrapper<IoCollectOrderCodeMan>().eq(IoCollectOrderCodeMan::getOrderIdFk, orderId).eq(IoCollectOrderCodeMan::getUdiCode, relCodeDetail.getParentCode()));
if (!ret) {
relCodeDetail = relCodeDetailService.findByCode(relCodeDetail.getParentCode());
ret = collectOrderCodeManMapper.exists(new LambdaQueryWrapper<IoCollectOrderCodeMan>().eq(IoCollectOrderCodeMan::getOrderIdFk, orderId).eq(IoCollectOrderCodeMan::getUdiCode, relCodeDetail.getParentCode()));
}
}
if (ret)
return true;
//若父码不存在,判断当前单号是否存在当前码的子码,若存在则表示存在关联关系重复扫码
ret = collectOrderCodeManMapper.exists(new LambdaQueryWrapper<IoCollectOrderCodeMan>().eq(IoCollectOrderCodeMan::getOrderIdFk, orderId).eq(IoCollectOrderCodeMan::getParentCode, code));
if (!ret) {
ret = collectOrderCodeManMapper.exists(new LambdaQueryWrapper<IoCollectOrderCodeMan>().eq(IoCollectOrderCodeMan::getOrderIdFk, orderId).eq(IoCollectOrderCodeMan::getGrantPaCode, code));
}
}
return ret;
}
/**
*
*/

@ -72,6 +72,7 @@ public class IoSplitCodeService extends ServiceImpl<IoSplitCodeMapper, IoSplitCo
.eq(IoSplitCodeEntity::getRelId, relId)
.eq(StrUtil.isNotEmpty(batchNo), IoSplitCodeEntity::getBatchNo, batchNo)
.eq(workPlaceCode != null, IoSplitCodeEntity::getWorkPlaceCode, workPlaceCode)
.gt(IoSplitCodeEntity::getRemainCount, 0)
.in(IoSplitCodeEntity::getStatus, 1, 2).orderByAsc(IoSplitCodeEntity::getInBactchNo));
return ioSplitCodeEntities;
}

@ -4763,6 +4763,13 @@ CALL Pro_Temp_ColumnWork('io_code', 'parentCode',
CALL Pro_Temp_ColumnWork('io_code', 'grantPaCode',
' varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT ''爷级编码''',
1);
CALL Pro_Temp_ColumnWork('io_collect_order_code_man', 'parentCode',
' varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT ''父级编码''',
1);
CALL Pro_Temp_ColumnWork('io_collect_order_code_man', 'grantPaCode',
' varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT ''爷级编码''',
1);
CALL Pro_Temp_ColumnWork('rel_code_batch', 'curCode',

Loading…
Cancel
Save