|
@@ -9,6 +9,7 @@ import com.jjt.vms.service.IWmsService;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import javax.annotation.Resource;
|
|
import javax.annotation.Resource;
|
|
|
|
+import java.math.BigDecimal;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDate;
|
|
import java.time.LocalDateTime;
|
|
import java.time.LocalDateTime;
|
|
import java.util.*;
|
|
import java.util.*;
|
|
@@ -34,6 +35,7 @@ public class WmsServiceImpl implements IWmsService {
|
|
//减少7个小时,班组统计时间
|
|
//减少7个小时,班组统计时间
|
|
LocalDate localDate = LocalDateTime.now().minusHours(7).toLocalDate();
|
|
LocalDate localDate = LocalDateTime.now().minusHours(7).toLocalDate();
|
|
List<MesStock> list = MssqlUtil.mesStock(localDate);
|
|
List<MesStock> list = MssqlUtil.mesStock(localDate);
|
|
|
|
+ List<MesStock> wmsOutTargetList = MssqlUtil.wmsOutTarget(localDate);
|
|
Map<String, Double> currStock = MssqlUtil.currStock();
|
|
Map<String, Double> currStock = MssqlUtil.currStock();
|
|
HashMap<String, Object> initMap = new HashMap<>(16);
|
|
HashMap<String, Object> initMap = new HashMap<>(16);
|
|
initMap.put("d-in", 0L);
|
|
initMap.put("d-in", 0L);
|
|
@@ -45,17 +47,29 @@ public class WmsServiceImpl implements IWmsService {
|
|
mapping.put("WH03", "pt");
|
|
mapping.put("WH03", "pt");
|
|
mapping.put("WH04", "bpb");
|
|
mapping.put("WH04", "bpb");
|
|
mapping.put("WH08", "cp");
|
|
mapping.put("WH08", "cp");
|
|
|
|
+ Map<String, Double> lineMap = new HashMap<>(16);
|
|
Map<String, Object> result = new HashMap<>(16);
|
|
Map<String, Object> result = new HashMap<>(16);
|
|
result.put("ycl", initMap.clone());
|
|
result.put("ycl", initMap.clone());
|
|
result.put("cp", initMap.clone());
|
|
result.put("cp", initMap.clone());
|
|
result.put("bpb", initMap.clone());
|
|
result.put("bpb", initMap.clone());
|
|
result.put("pt", initMap.clone());
|
|
result.put("pt", initMap.clone());
|
|
|
|
+ result.put("out-rz-line", lineMap);
|
|
|
|
|
|
for (String key : currStock.keySet()) {
|
|
for (String key : currStock.keySet()) {
|
|
HashMap<String, Object> map = (HashMap<String, Object>) result.get(key);
|
|
HashMap<String, Object> map = (HashMap<String, Object>) result.get(key);
|
|
- map.put("curr", currStock.get(key));
|
|
|
|
|
|
+ map.put("curr", BigDecimal.valueOf(currStock.get(key)).longValue());
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ //按目标产线分组
|
|
|
|
+ Map<String, List<MesStock>> bpTargetMap = wmsOutTargetList.stream().collect(Collectors.groupingBy(MesStock::getTarget));
|
|
|
|
+ bpTargetMap.forEach((target, targetList) -> {
|
|
|
|
+ //统计出库总量
|
|
|
|
+ double sum = targetList.stream().mapToDouble(MesStock::getTotal).sum();
|
|
|
|
+ //“染整白坯7#上料点”,解析产线
|
|
|
|
+ String line = target.replace("染整白坯", "").replace("#上料点", "");
|
|
|
|
+ lineMap.put(line, sum);
|
|
|
|
+ });
|
|
|
|
+
|
|
//先按仓库分组
|
|
//先按仓库分组
|
|
Map<String, List<MesStock>> codeMap = list.stream().collect(Collectors.groupingBy(MesStock::getCode));
|
|
Map<String, List<MesStock>> codeMap = list.stream().collect(Collectors.groupingBy(MesStock::getCode));
|
|
|
|
|
|
@@ -85,6 +99,7 @@ public class WmsServiceImpl implements IWmsService {
|
|
calc.setOutNum(outNum);
|
|
calc.setOutNum(outNum);
|
|
calcList.add(calc);
|
|
calcList.add(calc);
|
|
if (localDate.isEqual(date)) {
|
|
if (localDate.isEqual(date)) {
|
|
|
|
+ //如果是当天数据
|
|
dIn.addAndGet(inNum);
|
|
dIn.addAndGet(inNum);
|
|
dOut.addAndGet(outNum);
|
|
dOut.addAndGet(outNum);
|
|
map.put("in", inList);
|
|
map.put("in", inList);
|