|
@@ -22,6 +22,7 @@ import com.fjhx.mes.entity.production.po.*;
|
|
import com.fjhx.mes.entity.production.vo.ProductionTaskDetailVo;
|
|
import com.fjhx.mes.entity.production.vo.ProductionTaskDetailVo;
|
|
import com.fjhx.mes.entity.production.vo.ProductionTaskVo;
|
|
import com.fjhx.mes.entity.production.vo.ProductionTaskVo;
|
|
import com.fjhx.mes.entity.task.po.TaskProgress;
|
|
import com.fjhx.mes.entity.task.po.TaskProgress;
|
|
|
|
+import com.fjhx.mes.entity.task.vo.TaskProgressVo;
|
|
import com.fjhx.mes.entity.technology.po.Technology;
|
|
import com.fjhx.mes.entity.technology.po.Technology;
|
|
import com.fjhx.mes.entity.technology.po.TechnologyProcessLine;
|
|
import com.fjhx.mes.entity.technology.po.TechnologyProcessLine;
|
|
import com.fjhx.mes.entity.work.po.WorkOrder;
|
|
import com.fjhx.mes.entity.work.po.WorkOrder;
|
|
@@ -111,7 +112,7 @@ public class ProductionTaskServiceImpl extends ServiceImpl<ProductionTaskMapper,
|
|
@Autowired
|
|
@Autowired
|
|
private WorkOrderProcessLineService workOrderProcessLineService;
|
|
private WorkOrderProcessLineService workOrderProcessLineService;
|
|
@Autowired
|
|
@Autowired
|
|
- private TaskProgressService taskProgressServices;
|
|
|
|
|
|
+ private TaskProgressService taskProgressService;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public Page<ProductionTaskVo> getPage(ProductionTaskSelectDto dto) {
|
|
public Page<ProductionTaskVo> getPage(ProductionTaskSelectDto dto) {
|
|
@@ -412,7 +413,7 @@ public class ProductionTaskServiceImpl extends ServiceImpl<ProductionTaskMapper,
|
|
taskProgressList.add(taskProgress);
|
|
taskProgressList.add(taskProgress);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- taskProgressServices.saveBatch(taskProgressList);
|
|
|
|
|
|
+ taskProgressService.saveBatch(taskProgressList);
|
|
|
|
|
|
|
|
|
|
//添加任务对每一个工序的用户绑定
|
|
//添加任务对每一个工序的用户绑定
|
|
@@ -454,18 +455,25 @@ public class ProductionTaskServiceImpl extends ServiceImpl<ProductionTaskMapper,
|
|
|
|
|
|
List<ProductionTaskDetail> list = productionTaskDetailService.list(q -> q.eq(ProductionTaskDetail::getProductionTaskId, id));
|
|
List<ProductionTaskDetail> list = productionTaskDetailService.list(q -> q.eq(ProductionTaskDetail::getProductionTaskId, id));
|
|
List<ProductionTaskDetailVo> productionTaskDetailVos = BeanUtil.copyToList(list, ProductionTaskDetailVo.class);
|
|
List<ProductionTaskDetailVo> productionTaskDetailVos = BeanUtil.copyToList(list, ProductionTaskDetailVo.class);
|
|
|
|
+
|
|
//赋值当前工序名称
|
|
//赋值当前工序名称
|
|
|
|
+ List<Long> ptdIds = productionTaskDetailVos.stream().map(ProductionTaskDetail::getId).collect(Collectors.toList());
|
|
|
|
+
|
|
|
|
+ List<TaskProgress> taskProgressList = taskProgressService.list(q -> q
|
|
|
|
+ .in(TaskProgress::getProductionTaskDetailId, ptdIds)
|
|
|
|
+ .ne(TaskProgress::getStatus,2)
|
|
|
|
+ );
|
|
|
|
+ List<TaskProgressVo> taskProgressVos = BeanUtil.copyToList(taskProgressList, TaskProgressVo.class);
|
|
|
|
+ UserUtil.assignmentNickName(taskProgressVos, TaskProgress::getPersonLiableId, TaskProgressVo::setPersonLiableName);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ Map<Long, String> gxmap = new HashMap<>();
|
|
|
|
+
|
|
WorkOrder workOrder = workOrderService.getById(productionPlan.getWorkOrderId());
|
|
WorkOrder workOrder = workOrderService.getById(productionPlan.getWorkOrderId());
|
|
//判断是否是定制工单 获取指定工序
|
|
//判断是否是定制工单 获取指定工序
|
|
if ("1".equals(workOrder.getIsCustomized())) {
|
|
if ("1".equals(workOrder.getIsCustomized())) {
|
|
//获取定制工序
|
|
//获取定制工序
|
|
- Map<Long, String> gxmap = workOrderProductionProcessesService.mapKV(WorkOrderProductionProcesses::getId, WorkOrderProductionProcesses::getName, q -> q.eq(WorkOrderProductionProcesses::getWorkOrderId, workOrder.getId()));
|
|
|
|
- if (ObjectUtil.isNotEmpty(gxmap)) {
|
|
|
|
- for (ProductionTaskDetailVo productionTaskDetail : productionTaskDetailVos) {
|
|
|
|
- String gxname = gxmap.get(productionTaskDetail.getProductionProcessesId());
|
|
|
|
- productionTaskDetail.setProductionProcessesName(gxname);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
|
|
+ gxmap = workOrderProductionProcessesService.mapKV(WorkOrderProductionProcesses::getId, WorkOrderProductionProcesses::getName, q -> q.eq(WorkOrderProductionProcesses::getWorkOrderId, workOrder.getId()));
|
|
} else {
|
|
} else {
|
|
//获取基本工序
|
|
//获取基本工序
|
|
ApplicableProducts applicableProducts = applicableProductsService.getOne(q -> q.eq(ApplicableProducts::getProductId, workOrder.getProductId()));
|
|
ApplicableProducts applicableProducts = applicableProductsService.getOne(q -> q.eq(ApplicableProducts::getProductId, workOrder.getProductId()));
|
|
@@ -475,15 +483,23 @@ public class ProductionTaskServiceImpl extends ServiceImpl<ProductionTaskMapper,
|
|
String processRoute = technology.getProcessRoute();
|
|
String processRoute = technology.getProcessRoute();
|
|
if (ObjectUtil.isNotEmpty(processRoute)) {
|
|
if (ObjectUtil.isNotEmpty(processRoute)) {
|
|
String[] split = processRoute.split(",");
|
|
String[] split = processRoute.split(",");
|
|
- Map<Long, String> gxmap = productionProcessesService.mapKV(ProductionProcesses::getId, ProductionProcesses::getName, q -> q.in(ProductionProcesses::getId, split));
|
|
|
|
- for (ProductionTaskDetailVo productionTaskDetail : productionTaskDetailVos) {
|
|
|
|
- String gxname = gxmap.get(productionTaskDetail.getProductionProcessesId());
|
|
|
|
- productionTaskDetail.setProductionProcessesName(gxname);
|
|
|
|
- }
|
|
|
|
|
|
+ gxmap = productionProcessesService.mapKV(ProductionProcesses::getId, ProductionProcesses::getName, q -> q.in(ProductionProcesses::getId, split));
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ if (ObjectUtil.isNotEmpty(gxmap)) {
|
|
|
|
+ for (TaskProgressVo taskProgressVo : taskProgressVos) {
|
|
|
|
+ taskProgressVo.setProcessesName(gxmap.getOrDefault(taskProgressVo.getProcessesId(),"未知工序"));
|
|
|
|
+ }
|
|
|
|
+ Map<Long, List<TaskProgressVo>> taskProgressMap = taskProgressVos.stream().collect(Collectors.groupingBy(TaskProgressVo::getProductionTaskDetailId));
|
|
|
|
+ for (ProductionTaskDetailVo productionTaskDetail : productionTaskDetailVos) {
|
|
|
|
+ List<TaskProgressVo> taskProgressVos1 = taskProgressMap.get(productionTaskDetail.getId());
|
|
|
|
+ productionTaskDetail.setTaskProgressList(taskProgressVos1);
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
//赋值累计耗时
|
|
//赋值累计耗时
|
|
for (ProductionTaskDetailVo productionTaskDetail : productionTaskDetailVos) {
|
|
for (ProductionTaskDetailVo productionTaskDetail : productionTaskDetailVos) {
|
|
long diff = new Date().getTime() - productionTaskDetail.getCreateTime().getTime();
|
|
long diff = new Date().getTime() - productionTaskDetail.getCreateTime().getTime();
|