|
@@ -7,6 +7,7 @@ import cn.hutool.core.date.DateUtil;
|
|
|
import cn.hutool.json.JSONConfig;
|
|
|
import cn.hutool.json.JSONUtil;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.rongwei.bscommon.sys.dao.*;
|
|
@@ -66,6 +67,8 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
private ApsProcessOperationProcessEquBackupDao apsProcessOperationProcessEquBackupDao;
|
|
|
@Autowired
|
|
|
private ApsProductionOrderDao apsProcessOperationDao;
|
|
|
+ @Autowired
|
|
|
+ private ApsProductDetailService apsProductDetailService;
|
|
|
|
|
|
@Override
|
|
|
@Transactional(rollbackFor = Exception.class)
|
|
@@ -172,6 +175,8 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
public void apsReScheduling() throws Exception{
|
|
|
List<ApsBlankOrderVo> notLockOrders = apsBlankOrderDao.getNotLockOrders();
|
|
|
blankOrderAps(notLockOrders);
|
|
|
+ //更新生产状态为“待发布”(20)
|
|
|
+ updateProductStatusByOrderIds(notLockOrders.stream().map(ApsBlankOrderVo::getProductionorderid).collect(Collectors.toSet()));
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -190,6 +195,8 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
}
|
|
|
apsPlanVo.setApsBlankOrderDos(apsBlankOrders);
|
|
|
blankOrderAps(apsBlankOrders);
|
|
|
+ //更新生产状态为“待发布”(20)
|
|
|
+ updateProductStatusByOrderIds(apsBlankOrders.stream().map(ApsBlankOrderVo::getProductionorderid).collect(Collectors.toSet()));
|
|
|
}
|
|
|
|
|
|
/**
|
|
@@ -332,7 +339,7 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
*/
|
|
|
private void backupProcessOperation(List<ApsProcessOperationProcessEquDo> apsProcessOperationProcessEquDos,
|
|
|
List<ProductionProcesses> processes) {
|
|
|
-
|
|
|
+
|
|
|
|
|
|
// 工序作业明细ID
|
|
|
List<String> apsProcessOperationIds = processes.stream().map(ProductionProcesses::getId).distinct().collect(Collectors.toList());
|
|
@@ -784,4 +791,26 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
return processesList;
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 排程结束之后根据订单IDs修改生产状态
|
|
|
+ */
|
|
|
+ private void updateProductStatusByOrderIds(Set<String> orderIds) {
|
|
|
+ String idStrs = CollUtil.join(orderIds, "','");
|
|
|
+ idStrs = "'" + idStrs + "'";
|
|
|
+
|
|
|
+ //更新工序作业的生产状态为‘待发布’(20)
|
|
|
+ this.baseMapper.updateProcessOperationByOrderIds(idStrs);
|
|
|
+ //更新所有坯料计划的生产状态
|
|
|
+ ApsBlankOrderDo apsBlankOrderDo = new ApsBlankOrderDo();
|
|
|
+ apsBlankOrderDo.setProductstatus("20");
|
|
|
+ this.update(apsBlankOrderDo, new QueryWrapper<ApsBlankOrderDo>().lambda().in(ApsBlankOrderDo::getProductionorderid, orderIds));
|
|
|
+ //更新所有产品明细的生产状态
|
|
|
+ ApsProductDetailDo apsProductDetailDo = new ApsProductDetailDo();
|
|
|
+ apsBlankOrderDo.setProductstatus("20");
|
|
|
+ apsProductDetailService.update(apsProductDetailDo, new QueryWrapper<ApsProductDetailDo>().lambda().in(ApsProductDetailDo::getMainid, orderIds));
|
|
|
+ //更新订单的生产状态
|
|
|
+ ApsProductionOrderDo apsProductionOrderDo = new ApsProductionOrderDo();
|
|
|
+ apsProductionOrderDo.setProductionstatus("20");
|
|
|
+ apsProductionOrderService.update(apsProductionOrderDo, new QueryWrapper<ApsProductionOrderDo>().lambda().in(ApsProductionOrderDo::getId, orderIds));
|
|
|
+ }
|
|
|
}
|