|
@@ -504,22 +504,24 @@ public class ApsBlankOrderServiceImpl extends ServiceImpl<ApsBlankOrderDao, ApsB
|
|
|
}
|
|
|
// 作业明细锁定
|
|
|
if (orderLockVo.getId() != null && orderLockVo.getId().size() > 0) {
|
|
|
- //校验工序作业状态
|
|
|
- List<ApsProcessOperationDo> apsProcessOperationDos = new ArrayList<>(apsProcessOperationService.listByIds(orderLockVo.getId()));
|
|
|
- //解锁的情况下校验 工序作业对应的生产状态
|
|
|
- boolean b = apsProcessOperationDos.stream().allMatch(info -> COMPLETED.equals(info.getProcessstatus()) ||
|
|
|
- PROCESSING.equals(info.getProcessstatus()));
|
|
|
- if (b) {
|
|
|
- return R.error("所选作业都已开工,不可以解锁,不能锁定");
|
|
|
- }
|
|
|
- apsProcessOperationProcessEquService.update(new LambdaUpdateWrapper<ApsProcessOperationProcessEquDo>()
|
|
|
- .in(ApsProcessOperationProcessEquDo::getId, orderLockVo.getId())
|
|
|
- .set(ApsProcessOperationProcessEquDo::getLockmarkdetail, lockMark));
|
|
|
// 查询作业明细的所属作业ID
|
|
|
List<ApsProcessOperationProcessEquDo> apsProcessOperationProcessEquDos = (List<ApsProcessOperationProcessEquDo>) apsProcessOperationProcessEquService.listByIds(orderLockVo.getId());
|
|
|
// 所有作业ID
|
|
|
List<String> proids = apsProcessOperationProcessEquDos.stream().map(ApsProcessOperationProcessEquDo::getProcessid).collect(Collectors.toList());
|
|
|
proids = proids.stream().distinct().collect(Collectors.toList());
|
|
|
+ //校验工序作业状态
|
|
|
+ List<ApsProcessOperationDo> apsProcessOperationDos = new ArrayList<>(apsProcessOperationService.listByIds(proids));
|
|
|
+ if (!apsProcessOperationDos.isEmpty()){
|
|
|
+ //解锁的情况下校验 工序作业对应的生产状态
|
|
|
+ boolean b = apsProcessOperationDos.stream().allMatch(info -> COMPLETED.equals(info.getProcessstatus()) ||
|
|
|
+ PROCESSING.equals(info.getProcessstatus()));
|
|
|
+ if (b) {
|
|
|
+ return R.error("所选作业都已开工,不可以解锁,不能锁定");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ apsProcessOperationProcessEquService.update(new LambdaUpdateWrapper<ApsProcessOperationProcessEquDo>()
|
|
|
+ .in(ApsProcessOperationProcessEquDo::getId, orderLockVo.getId())
|
|
|
+ .set(ApsProcessOperationProcessEquDo::getLockmarkdetail, lockMark));
|
|
|
// 查询存在未锁定作业明细的作业ID
|
|
|
List<ApsProcessOperationProcessEquDo> popes = apsProcessOperationProcessEquService.list(new LambdaQueryWrapper<ApsProcessOperationProcessEquDo>().in(ApsProcessOperationProcessEquDo::getProcessid, proids)
|
|
|
.eq(ApsProcessOperationProcessEquDo::getLockmarkdetail, LOCKMARK_N));
|