自定义板编号导入适配同单补板序号同步

This commit is contained in:
gaoqr
2024-12-03 16:13:05 +08:00
parent 19f6ca5bbe
commit 501d27a42a
3 changed files with 9 additions and 8 deletions
@@ -17,6 +17,7 @@ public interface CustomPlateNoGenerateService {
* *
* @param orderDO 生产单号 * @param orderDO 生产单号
* @param plateDOList 板件列表 * @param plateDOList 板件列表
* @param newOrder 是否新单,否:向已有生产单导入新板
*/ */
void generateCustomPlateNo(OrderDO orderDO, List<PlateDO> plateDOList); void generateCustomPlateNo(OrderDO orderDO, List<PlateDO> plateDOList, boolean newOrder);
} }
@@ -60,7 +60,7 @@ public class CustomPlateNoGenerateServiceImpl implements CustomPlateNoGenerateSe
private static final DateTimeFormatter DAY_FORMATTER = DateTimeFormatter.ofPattern("yyyyMMdd"); private static final DateTimeFormatter DAY_FORMATTER = DateTimeFormatter.ofPattern("yyyyMMdd");
@Override @Override
public void generateCustomPlateNo(OrderDO orderDO, List<PlateDO> plateDOList) { public void generateCustomPlateNo(OrderDO orderDO, List<PlateDO> plateDOList, boolean newOrder) {
Long orderId = orderDO.getId(); Long orderId = orderDO.getId();
// 1、获取生产配置 // 1、获取生产配置
CustomPlateNoGenerateConfigVO generateConfig = getGenerateConfig(orderId); CustomPlateNoGenerateConfigVO generateConfig = getGenerateConfig(orderId);
@@ -84,12 +84,12 @@ public class CustomPlateNoGenerateServiceImpl implements CustomPlateNoGenerateSe
// 3、保存生产单序号json、设置生产单所用配置id // 3、保存生产单序号json、设置生产单所用配置id
OrderCustomPlateNoSeqVO orderCustomPlateNoSeqVO = generateConfig.getOrderCustomPlateNoSeqVO(); OrderCustomPlateNoSeqVO orderCustomPlateNoSeqVO = generateConfig.getOrderCustomPlateNoSeqVO();
if (ObjectUtil.isNotNull(orderDO)) { if (newOrder) {
// 已有生产单更新序号
orderMapper.update(new LambdaUpdateWrapper<OrderDO>().eq(OrderDO::getId, orderId).set(OrderDO::getCustomPlatenoSeq, JsonUtils.zipString(JSON.toJSONString(orderCustomPlateNoSeqVO))));
} else {
orderDO.setCustomPlatenoSeq(JSON.toJSONString(orderCustomPlateNoSeqVO)); orderDO.setCustomPlatenoSeq(JSON.toJSONString(orderCustomPlateNoSeqVO));
orderDO.setCustomPlatenoConfigId(orgCustomPlateNoConfigId); orderDO.setCustomPlatenoConfigId(orgCustomPlateNoConfigId);
} else {
// 已有生产单更新序号
orderMapper.update(new LambdaUpdateWrapper<OrderDO>().eq(OrderDO::getId, orderId).set(OrderDO::getCustomPlatenoSeq, JsonUtils.zipString(JSON.toJSONString(orderCustomPlateNoSeqVO))));
} }
// 机构下序号配置同步 // 机构下序号配置同步
CustomPlateNoSeqDTO orgCustomPlateNoSeqRespDTO = generateConfig.getOrgCustomPlateNoSeqRespDTO(); CustomPlateNoSeqDTO orgCustomPlateNoSeqRespDTO = generateConfig.getOrgCustomPlateNoSeqRespDTO();
@@ -415,7 +415,7 @@ public class OrderServiceImpl implements OrderService {
// 配件信息 // 配件信息
List<PartsDO> partsDOS = getPartsGoods(partsDO); List<PartsDO> partsDOS = getPartsGoods(partsDO);
customPlateNoGenerateService.generateCustomPlateNo(order, plateDO); customPlateNoGenerateService.generateCustomPlateNo(order, plateDO, false);
orderMapper.insert(order); orderMapper.insert(order);
orderInputProcessor.batchInsert(rawGoodsDO, bodyDO, groupDO, partsDO, plateDO, itemDO, goodsDO, plateGoodDOS, partsDOS); orderInputProcessor.batchInsert(rawGoodsDO, bodyDO, groupDO, partsDO, plateDO, itemDO, goodsDO, plateGoodDOS, partsDOS);
List<OrderModelDO> orderModelDOs = BeanUtils.toBean(plateDetail, OrderModelDO.class); List<OrderModelDO> orderModelDOs = BeanUtils.toBean(plateDetail, OrderModelDO.class);
@@ -488,7 +488,7 @@ public class OrderServiceImpl implements OrderService {
} }
} }
customPlateNoGenerateService.generateCustomPlateNo(orderDO, plateDO); customPlateNoGenerateService.generateCustomPlateNo(orderDO, plateDO, index == 0);
insertOrder(orderDO, index); insertOrder(orderDO, index);
orderInputProcessor.batchInsert(rawGoodsDO, bodyDO, groupDO, partsDO, plateDO, itemDO, goodsDO, plateGoodDOS, partsDOList); orderInputProcessor.batchInsert(rawGoodsDO, bodyDO, groupDO, partsDO, plateDO, itemDO, goodsDO, plateGoodDOS, partsDOList);