|
@@ -78,27 +78,33 @@ public class GanttServiceImpl implements GanttService {
|
|
|
processVo.setPlanstartdate(processs.get(0).getPlanstartdate());
|
|
|
processVo.setPlanenddate(processs.get(0).getPlanenddate());
|
|
|
processVo.setProcessids(processs.stream().map(GanttVos::getProcessid).distinct().collect(Collectors.joining(",")));
|
|
|
- processVo.setProcessdetailids(processs.stream().map(GanttVos::getId).collect(Collectors.joining(",")));
|
|
|
- // 按照工序作业明细ID 进行分组
|
|
|
- LinkedHashMap<String, List<GanttVos>> collect = processs.stream().collect(Collectors.groupingBy(GanttVos::getId, LinkedHashMap::new, Collectors.toList()));
|
|
|
- String itemName = collect.values().stream().map(info -> {
|
|
|
- String prefix = info.stream().map(data -> String.format(GANTT_ITEM_NAME_PREFIX, data.getCustomerabbreviation(), data.getProductname()))
|
|
|
- .collect(Collectors.joining(","));
|
|
|
- return String.format(GANTT_ITEM_NAME, prefix, info.get(0).getPlanprocessrall(), info.get(0).getDeliverydate());
|
|
|
- }).collect(Collectors.joining("</br>"));
|
|
|
+ processVo.setProcessdetailids(processs.stream().map(GanttVos::getId).distinct().collect(Collectors.joining(",")));
|
|
|
+
|
|
|
+ List<String> itemNames=new ArrayList<>();
|
|
|
+ // 按照工序作业ID分组
|
|
|
+ LinkedHashMap<String, List<GanttVos>> groupByProcessId = processs.stream().collect(Collectors.groupingBy(GanttVos::getProcessid, LinkedHashMap::new, Collectors.toList()));
|
|
|
+ groupByProcessId.forEach((processId,data2)->{
|
|
|
+ // 按照工序作业明细ID 进行分组
|
|
|
+ LinkedHashMap<String, List<GanttVos>> collect = data2.stream().collect(Collectors.groupingBy(GanttVos::getId, LinkedHashMap::new, Collectors.toList()));
|
|
|
+ String itemName = collect.values().stream().map(info -> {
|
|
|
+ String prefix = info.stream().map(data -> String.format(GANTT_ITEM_NAME_PREFIX, data.getCustomerabbreviation(), data.getProductname()))
|
|
|
+ .collect(Collectors.joining(","));
|
|
|
+ return String.format(GANTT_ITEM_NAME, prefix, info.get(0).getPlanprocessrall(), info.get(0).getDeliverydate());
|
|
|
+ }).collect(Collectors.joining("</br>"));
|
|
|
+ itemNames.add(itemName);
|
|
|
+ });
|
|
|
String itemPrefix=String.format(GANTT_DESC_PREFIX,
|
|
|
dateFormat(processs.get(0).getPlanstartdate()),
|
|
|
dateFormat(processs.get(0).getPlanenddate()),
|
|
|
dateFormat(processs.get(0).getActualstartdate()),
|
|
|
dateFormat(processs.get(0).getActualfinishdate()),
|
|
|
-
|
|
|
processs.get(0).getProcessworkshop(),processs.get(0).getProcessdevice());
|
|
|
- String itemDesc= processs.stream().map(info->{
|
|
|
+ String itemDesc= processs.stream().map(info->{
|
|
|
return String.format(GANTT_DESC, info.getProductname(),info.getDeliverydate(),
|
|
|
info.getProcessname(),info.getPlanprocessrall(),info.getStartingroll(),info.getReportroll(),
|
|
|
info.getCheckoutroll(),info.getUnfinishroll(),info.getWorkstatus() );
|
|
|
}).collect(Collectors.joining("</br>"));
|
|
|
- processVo.setItemname(itemName);
|
|
|
+ processVo.setItemname(StringUtils.join(itemNames,"</br>"));
|
|
|
processVo.setItemdesc(itemPrefix+itemDesc);
|
|
|
processVos.add(processVo);
|
|
|
});
|