|
|
|
|
@ -167,6 +167,34 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
|
public boolean inBatches(Long oldWoId, InBatchesDTO inBatchesDTO, Long userId) { |
|
|
|
|
WorkOrder oldWo = this.getById(oldWoId); |
|
|
|
|
WorkOrder newWo = this.addWorkOrderAndYieldOrder(oldWo,inBatchesDTO); |
|
|
|
|
List<WorkPlan> oldList = workPlanService.list(Wrappers.lambdaQuery(WorkPlan.class).eq(WorkPlan::getWoId, oldWoId)); |
|
|
|
|
//保存作业计划
|
|
|
|
|
List<WorkPlan> wpList = this.saveWorkPlan(oldList, newWo, oldWoId); |
|
|
|
|
|
|
|
|
|
//产生车间运行记录信息
|
|
|
|
|
WorkOrderRun oldRun = workOrderRunService.getById(oldWo.getWorId()); |
|
|
|
|
WorkOrderRun wr = new WorkOrderRun(); |
|
|
|
|
wr.setWoId(newWo.getId()); |
|
|
|
|
wr.setWoCode(newWo.getWoCode()); |
|
|
|
|
wr.setRunType(WorkOrderRun.RUN_TYPE_2); |
|
|
|
|
wr.setInTeam(oldRun != null ? oldRun.getInTeam() : null); |
|
|
|
|
wr.setMemo("分批(厂内)"); |
|
|
|
|
wr.setApprovalMan(userId); |
|
|
|
|
wr.setSystemData("1"); |
|
|
|
|
wr.setCollaborate(newWo.getCollaborate()); |
|
|
|
|
wr.setRunStatus(WorkOrderRun.RUN_STATUS_ISSUED); |
|
|
|
|
wr.setBatchReason(inBatchesDTO.getBatchReason()); |
|
|
|
|
workOrderRunService.save(wr); |
|
|
|
|
newWo.setWorId(wr.getId()); |
|
|
|
|
//保存作业计划
|
|
|
|
|
this.calculationWp(newWo, wpList); |
|
|
|
|
// 转存工序的加工信息
|
|
|
|
|
this.saveProcessMarkRec(oldList, wpList); |
|
|
|
|
return true; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
private WorkOrder addWorkOrderAndYieldOrder(WorkOrder oldWo, InBatchesDTO inBatchesDTO) { |
|
|
|
|
WorkOrder newWo = new WorkOrder(); |
|
|
|
|
YieldOrder newYie = new YieldOrder(); |
|
|
|
|
YieldOrder oldYie = yieldOrderService.getById(oldWo.getYoId()); |
|
|
|
|
@ -194,9 +222,10 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
oldWo.setMakeQty(oldWo.getMakeQty() - newWo.getMakeQty()); |
|
|
|
|
|
|
|
|
|
this.addWorkOrder(newWo); |
|
|
|
|
return newWo; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//保存作业计划
|
|
|
|
|
List<WorkPlan> oldList = workPlanService.list(Wrappers.lambdaQuery(WorkPlan.class).eq(WorkPlan::getWoId, oldWoId)); |
|
|
|
|
private List<WorkPlan> saveWorkPlan(List<WorkPlan> oldList, WorkOrder newWo, Long oldWoId) { |
|
|
|
|
List<WorkPlan> wpList = new ArrayList<>(oldList.size()); |
|
|
|
|
for (WorkPlan oldWp : oldList) { |
|
|
|
|
WorkPlan wp = new WorkPlan(); |
|
|
|
|
@ -222,27 +251,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
wp.setInspectionTask(iInspectionTaskService.getPrWorkCheckByWpId(oldWp.getId())); |
|
|
|
|
wpList.add(wp); |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
//产生车间运行记录信息
|
|
|
|
|
WorkOrderRun oldRun = workOrderRunService.getById(oldWo.getWorId()); |
|
|
|
|
WorkOrderRun wr = new WorkOrderRun(); |
|
|
|
|
wr.setWoId(newWo.getId()); |
|
|
|
|
wr.setWoCode(newWo.getWoCode()); |
|
|
|
|
wr.setRunType(WorkOrderRun.RUN_TYPE_2); |
|
|
|
|
wr.setInTeam(oldRun != null ? oldRun.getInTeam() : null); |
|
|
|
|
wr.setMemo("分批(厂内)"); |
|
|
|
|
wr.setApprovalMan(userId); |
|
|
|
|
wr.setSystemData("1"); |
|
|
|
|
wr.setCollaborate(newWo.getCollaborate()); |
|
|
|
|
wr.setRunStatus(WorkOrderRun.RUN_STATUS_ISSUED); |
|
|
|
|
wr.setBatchReason(inBatchesDTO.getBatchReason()); |
|
|
|
|
workOrderRunService.save(wr); |
|
|
|
|
newWo.setWorId(wr.getId()); |
|
|
|
|
//保存作业计划
|
|
|
|
|
this.calculationWp(newWo, wpList); |
|
|
|
|
// 转存工序的加工信息
|
|
|
|
|
this.saveProcessMarkRec(oldList, wpList); |
|
|
|
|
return true; |
|
|
|
|
return wpList; |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
@ -1456,6 +1465,7 @@ public class WorkOrderServiceImpl extends BaseServiceImpl<WorkOrderMapper, WorkO |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
|
public boolean workPlanReceive(Long wpId) { |
|
|
|
|
WorkPlan workPlan = workPlanService.getById(wpId); |
|
|
|
|
WorkPlan frontWorkPlan = workPlanService.getById(workPlan.getFrontWpId()); |
|
|
|
|
|