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

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 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");
@Override
public void generateCustomPlateNo(OrderDO orderDO, List<PlateDO> plateDOList) {
public void generateCustomPlateNo(OrderDO orderDO, List<PlateDO> plateDOList, boolean newOrder) {
Long orderId = orderDO.getId();
// 1、获取生产配置
CustomPlateNoGenerateConfigVO generateConfig = getGenerateConfig(orderId);
@@ -84,12 +84,12 @@ public class CustomPlateNoGenerateServiceImpl implements CustomPlateNoGenerateSe
// 3、保存生产单序号json、设置生产单所用配置id
OrderCustomPlateNoSeqVO orderCustomPlateNoSeqVO = generateConfig.getOrderCustomPlateNoSeqVO();
if (ObjectUtil.isNotNull(orderDO)) {
// 已有生产单更新序号
orderMapper.update(new LambdaUpdateWrapper<OrderDO>().eq(OrderDO::getId, orderId).set(OrderDO::getCustomPlatenoSeq, JsonUtils.zipString(JSON.toJSONString(orderCustomPlateNoSeqVO))));
} else {
if (newOrder) {
orderDO.setCustomPlatenoSeq(JSON.toJSONString(orderCustomPlateNoSeqVO));
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();
@@ -415,7 +415,7 @@ public class OrderServiceImpl implements OrderService {
// 配件信息
List<PartsDO> partsDOS = getPartsGoods(partsDO);
customPlateNoGenerateService.generateCustomPlateNo(order, plateDO);
customPlateNoGenerateService.generateCustomPlateNo(order, plateDO, false);
orderMapper.insert(order);
orderInputProcessor.batchInsert(rawGoodsDO, bodyDO, groupDO, partsDO, plateDO, itemDO, goodsDO, plateGoodDOS, partsDOS);
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);
orderInputProcessor.batchInsert(rawGoodsDO, bodyDO, groupDO, partsDO, plateDO, itemDO, goodsDO, plateGoodDOS, partsDOList);