opt:每周出入库的数量趋势默认每天为0
This commit is contained in:
@@ -24,13 +24,15 @@ public class TaskInfo {
|
|||||||
private String task_type;
|
private String task_type;
|
||||||
private String material_name;
|
private String material_name;
|
||||||
private String material_code;
|
private String material_code;
|
||||||
|
private String material_spec;
|
||||||
private BigDecimal assign_qty;
|
private BigDecimal assign_qty;
|
||||||
private BigDecimal single_weight;
|
private BigDecimal single_weight;
|
||||||
//理论数量
|
//理论数量
|
||||||
private BigDecimal theory_qty=BigDecimal.ZERO;
|
private BigDecimal theory_qty;
|
||||||
//称重
|
//称重
|
||||||
private BigDecimal actual_weight=BigDecimal.valueOf(200L);
|
private BigDecimal actual_weight=BigDecimal.ZERO;
|
||||||
private BigDecimal remaining_qty=BigDecimal.ZERO;
|
//剩余数量
|
||||||
|
private BigDecimal remaining_qty;
|
||||||
private String form_data;
|
private String form_data;
|
||||||
private String product_area;
|
private String product_area;
|
||||||
}
|
}
|
||||||
@@ -273,18 +273,11 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
List<TaskInfo> stockList3 = result.stream().filter(r -> "30".equals(r.getTask_type()) && "FStockPallet".equals(r.getStor_code())).collect(Collectors.toList());
|
List<TaskInfo> stockList3 = result.stream().filter(r -> "30".equals(r.getTask_type()) && "FStockPallet".equals(r.getStor_code())).collect(Collectors.toList());
|
||||||
//托盘库出库
|
//托盘库出库
|
||||||
List<TaskInfo> stockList4 = result.stream().filter(r -> "40".equals(r.getTask_type()) && "FStockPallet".equals(r.getStor_code())).collect(Collectors.toList());
|
List<TaskInfo> stockList4 = result.stream().filter(r -> "40".equals(r.getTask_type()) && "FStockPallet".equals(r.getStor_code())).collect(Collectors.toList());
|
||||||
if (ObjectUtil.isNotEmpty(stockList1)) {
|
//计算每天的数量
|
||||||
getWeekWorkStatistics(stockList1, lx_in_default, "in", 7);
|
getWeekWorkStatistics(stockList1, lx_in_default, 7);
|
||||||
}
|
getWeekWorkStatistics(stockList2, lx_out_default, 7);
|
||||||
if (ObjectUtil.isNotEmpty(stockList2)) {
|
getWeekWorkStatistics(stockList3, tp_in_default, 7);
|
||||||
getWeekWorkStatistics(stockList2, lx_out_default, "out", 7);
|
getWeekWorkStatistics(stockList4, tp_out_default, 7);
|
||||||
}
|
|
||||||
if (ObjectUtil.isNotEmpty(stockList3)) {
|
|
||||||
getWeekWorkStatistics(stockList3, tp_in_default, "in", 7);
|
|
||||||
}
|
|
||||||
if (ObjectUtil.isNotEmpty(stockList4)) {
|
|
||||||
getWeekWorkStatistics(stockList4, tp_out_default, "out", 7);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
jsonObject.put("lx_in_week", lx_in_default);
|
jsonObject.put("lx_in_week", lx_in_default);
|
||||||
jsonObject.put("lx_out_week", lx_out_default);
|
jsonObject.put("lx_out_week", lx_out_default);
|
||||||
@@ -321,18 +314,21 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
r.setProduct_area(pointInfo.getProduct_area());
|
r.setProduct_area(pointInfo.getProduct_area());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
BigDecimal theoryQty = BigDecimal.ZERO;
|
||||||
//根据称重信息计算理论数量
|
//根据称重信息计算理论数量
|
||||||
if (r.getActual_weight().compareTo(BigDecimal.ZERO) > 0) {
|
if (r.getActual_weight().compareTo(BigDecimal.ZERO) > 0) {
|
||||||
//计算理论重量与剩余数量
|
//计算理论重量
|
||||||
BigDecimal theory_qty = r.getActual_weight().divide(r.getSingle_weight(), 0, RoundingMode.DOWN);
|
theoryQty = r.getActual_weight().divide(r.getSingle_weight(), 0, RoundingMode.DOWN);
|
||||||
BigDecimal remaining_qty = r.getQty().subtract(theory_qty).max(BigDecimal.ZERO).setScale(0, RoundingMode.DOWN);
|
|
||||||
r.setTheory_qty(theory_qty);
|
|
||||||
r.setRemaining_qty(remaining_qty);
|
|
||||||
r.setQty(r.getQty().setScale(0, RoundingMode.DOWN));
|
|
||||||
r.setAssign_qty(r.getAssign_qty().setScale(0, RoundingMode.DOWN));
|
|
||||||
r.setSingle_weight(r.getSingle_weight().setScale(2, RoundingMode.DOWN));
|
|
||||||
r.setActual_weight(r.getActual_weight().setScale(2, RoundingMode.DOWN));
|
r.setActual_weight(r.getActual_weight().setScale(2, RoundingMode.DOWN));
|
||||||
}
|
}
|
||||||
|
r.setTheory_qty(theoryQty);
|
||||||
|
//计算剩余数量
|
||||||
|
BigDecimal remaining_qty = r.getQty().subtract(theoryQty).max(BigDecimal.ZERO).setScale(0, RoundingMode.DOWN);
|
||||||
|
r.setRemaining_qty(remaining_qty);
|
||||||
|
//小数点
|
||||||
|
r.setSingle_weight(r.getSingle_weight().setScale(2, RoundingMode.DOWN));
|
||||||
|
r.setAssign_qty(r.getAssign_qty().setScale(0, RoundingMode.DOWN));
|
||||||
|
r.setQty(r.getQty().setScale(0, RoundingMode.DOWN));
|
||||||
});
|
});
|
||||||
return taskList;
|
return taskList;
|
||||||
}
|
}
|
||||||
@@ -420,13 +416,14 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private void getWeekWorkStatistics(List<TaskInfo> real_qty, List<Map<String, Object>> real_qty_default, String stor_code, Integer days) {
|
private void getWeekWorkStatistics(List<TaskInfo> real_qty, List<Map<String, Object>> real_qty_default, Integer days) {
|
||||||
for (int i = 0; i < days; i++) {
|
for (int i = 0; i < days; i++) {
|
||||||
Map<String, Object> item = new HashMap<>();
|
Map<String, Object> item = new HashMap<>();
|
||||||
item.put("total_qty", "0");
|
item.put("total_qty", "0");
|
||||||
item.put("date", today.minusDays(i).format(formatter));
|
item.put("date", today.minusDays(i).format(formatter));
|
||||||
real_qty_default.add(item);
|
real_qty_default.add(item);
|
||||||
}
|
}
|
||||||
|
if (ObjectUtil.isNotEmpty(real_qty)) {
|
||||||
Map<String, BigDecimal> ghRealQtyMap = real_qty.stream()
|
Map<String, BigDecimal> ghRealQtyMap = real_qty.stream()
|
||||||
.collect(Collectors.toMap(
|
.collect(Collectors.toMap(
|
||||||
TaskInfo::getCreate_time,
|
TaskInfo::getCreate_time,
|
||||||
@@ -439,6 +436,7 @@ public class CockpitServiceImpl implements CockpitService {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -53,7 +53,7 @@
|
|||||||
p.`code` as task_type,
|
p.`code` as task_type,
|
||||||
d.vehicle_code,
|
d.vehicle_code,
|
||||||
m.material_name,
|
m.material_name,
|
||||||
m.material_code,
|
m.material_spec,
|
||||||
d.qty,
|
d.qty,
|
||||||
d.assign_qty,
|
d.assign_qty,
|
||||||
m.single_weight,
|
m.single_weight,
|
||||||
|
|||||||
Reference in New Issue
Block a user