|
@@ -49,7 +49,19 @@ public class ShipDynamicsController extends BaseRESTfulController {
|
|
Double capacityNumberAllSum2=0.0;
|
|
Double capacityNumberAllSum2=0.0;
|
|
Double capacityNumberAllSum3=0.0;
|
|
Double capacityNumberAllSum3=0.0;
|
|
Double capacityNumberAllSum4=0.0;
|
|
Double capacityNumberAllSum4=0.0;
|
|
|
|
+
|
|
|
|
+ //物资大类小计,每一个批次进行完小计后清空
|
|
|
|
+ // 1:未到闸船舶2:等闸船舶3:已过闸船舶4:到港待卸船舶的和
|
|
|
|
+ Double materialNumberSum1 = 0.0;
|
|
|
|
+ Double materialNumberSum2 = 0.0;
|
|
|
|
+ Double materialNumberSum3 = 0.0;
|
|
|
|
+ Double materialNumberSum4 = 0.0;
|
|
|
|
+ //物资大类下游港口吨位的求和
|
|
|
|
+ Double materialTonnageSum=0.0;
|
|
|
|
+ //物资总小计
|
|
|
|
+ Double materialNumberAllSum=0.0;
|
|
for (int i = 0; i <= list.size()-1; i++) {
|
|
for (int i = 0; i <= list.size()-1; i++) {
|
|
|
|
+ //处理船舶合计
|
|
if(i>0&&!list.get(i).get("batchInfacoryId").equals(list.get(i-1).get("batchInfacoryId"))){
|
|
if(i>0&&!list.get(i).get("batchInfacoryId").equals(list.get(i-1).get("batchInfacoryId"))){
|
|
Map<String,Object> map=new LinkedHashMap<>();
|
|
Map<String,Object> map=new LinkedHashMap<>();
|
|
map.put("batchInfacoryId",list.get(i-1).get("batchInfacoryId"));
|
|
map.put("batchInfacoryId",list.get(i-1).get("batchInfacoryId"));
|
|
@@ -97,6 +109,48 @@ public class ShipDynamicsController extends BaseRESTfulController {
|
|
capacityNumberSum3 = 0.0;
|
|
capacityNumberSum3 = 0.0;
|
|
capacityNumberSum4 = 0.0;
|
|
capacityNumberSum4 = 0.0;
|
|
}
|
|
}
|
|
|
|
+ //处理物资合计
|
|
|
|
+ if(i>0&&!list.get(i).get("materialTypeName").equals(list.get(i-1).get("materialTypeName"))){
|
|
|
|
+ //如果和上一个物资名不一样,则统计清零
|
|
|
|
+ //四小合计
|
|
|
|
+ Map<String,Object> map=new LinkedHashMap<>();
|
|
|
|
+ map.put("materialType",list.get(i-1).get("materialTypeName"));
|
|
|
|
+ map.put("batchInfacoryId","不合并第二行");
|
|
|
|
+ map.put("batchId",list.get(i-1).get("batchId"));
|
|
|
|
+ map.put("pm","物资合计");
|
|
|
|
+ map.put("tonnage",materialTonnageSum);
|
|
|
|
+ map.put("capacity1","物资小计");
|
|
|
|
+ map.put("capacity2","物资小计");
|
|
|
|
+ map.put("capacity3" ,"物资小计");
|
|
|
|
+ map.put("capacity4","物资小计");
|
|
|
|
+ map.put("capacityNumber1",materialNumberSum1);
|
|
|
|
+ map.put("capacityNumber2",materialNumberSum2);
|
|
|
|
+ map.put("capacityNumber3",materialNumberSum3);
|
|
|
|
+ map.put("capacityNumber4",materialNumberSum4);
|
|
|
|
+ mapList.add(map);
|
|
|
|
+ //总合计
|
|
|
|
+ Map<String,Object> map2=new HashMap<>();
|
|
|
|
+ map2.put("materialType",list.get(i-1).get("materialTypeName"));
|
|
|
|
+ map2.put("batchInfacoryId","不合并第二行");
|
|
|
|
+ map2.put("pm","物资合计");
|
|
|
|
+ map2.put("tonnage",materialTonnageSum);
|
|
|
|
+ map2.put("batchId",list.get(i-1).get("batchId"));
|
|
|
|
+ map2.put("capacity1", list.get(i-1).get("materialTypeName") + ":" +
|
|
|
|
+ new BigDecimal(materialNumberSum1+materialNumberSum2+materialNumberSum3+materialNumberSum4).setScale(2,BigDecimal.ROUND_HALF_UP));
|
|
|
|
+ map2.put("type",1);
|
|
|
|
+ map2.put("aaaaa", 2);
|
|
|
|
+ mapList.add(map2);
|
|
|
|
+ materialNumberSum1 = 0.0;
|
|
|
|
+ materialNumberSum2 = 0.0;
|
|
|
|
+ materialNumberSum3 = 0.0;
|
|
|
|
+ materialNumberSum4 = 0.0;
|
|
|
|
+ materialTonnageSum=0.0;
|
|
|
|
+ materialNumberAllSum=0.0;
|
|
|
|
+ }
|
|
|
|
+ if(i==0 || !list.get(i).get("batchInfacoryId").equals(list.get(i-1).get("batchInfacoryId"))){
|
|
|
|
+ //物资大类的下游港口总和
|
|
|
|
+ materialTonnageSum=new BigDecimal(materialTonnageSum+Double.valueOf(list.get(i).get("tonnage").toString())).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
|
|
+ }
|
|
Map<String, Object> map = new HashMap<>();
|
|
Map<String, Object> map = new HashMap<>();
|
|
map.put("batchInfacoryId",list.get(i).get("batchInfacoryId"));
|
|
map.put("batchInfacoryId",list.get(i).get("batchInfacoryId"));
|
|
map.put("batchId",list.get(i).get("batchId"));
|
|
map.put("batchId",list.get(i).get("batchId"));
|
|
@@ -134,6 +188,8 @@ public class ShipDynamicsController extends BaseRESTfulController {
|
|
String locationValue4=null;
|
|
String locationValue4=null;
|
|
String dgsj=null;
|
|
String dgsj=null;
|
|
String locationStatus = list.get(i).get("locationStatus").toString();
|
|
String locationStatus = list.get(i).get("locationStatus").toString();
|
|
|
|
+ //物资大类总小计
|
|
|
|
+ materialNumberAllSum=new BigDecimal(materialNumberAllSum+Double.valueOf(list.get(i).get("capacityNumber").toString())).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
if ("未到闸船舶".equals(locationStatus)) {
|
|
if ("未到闸船舶".equals(locationStatus)) {
|
|
capacity1 = list.get(i).get("capacity").toString();
|
|
capacity1 = list.get(i).get("capacity").toString();
|
|
capacityNumber1 = list.get(i).get("capacityNumber").toString();
|
|
capacityNumber1 = list.get(i).get("capacityNumber").toString();
|
|
@@ -143,6 +199,8 @@ public class ShipDynamicsController extends BaseRESTfulController {
|
|
capacityNumberAllSum1+=Double.valueOf(capacityNumber1);
|
|
capacityNumberAllSum1+=Double.valueOf(capacityNumber1);
|
|
capacityNumberSum1 = new BigDecimal(capacityNumberSum1).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
capacityNumberSum1 = new BigDecimal(capacityNumberSum1).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
capacityNumberAllSum1 = new BigDecimal(capacityNumberAllSum1).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
capacityNumberAllSum1 = new BigDecimal(capacityNumberAllSum1).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
|
|
+ //物资分类
|
|
|
|
+ materialNumberSum1 = new BigDecimal(materialNumberSum1+Double.valueOf(capacityNumber1)).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
} else if ("等闸船舶".equals(locationStatus)) {
|
|
} else if ("等闸船舶".equals(locationStatus)) {
|
|
capacity2 = list.get(i).get("capacity").toString();
|
|
capacity2 = list.get(i).get("capacity").toString();
|
|
capacityNumber2 = list.get(i).get("capacityNumber").toString();
|
|
capacityNumber2 = list.get(i).get("capacityNumber").toString();
|
|
@@ -152,6 +210,8 @@ public class ShipDynamicsController extends BaseRESTfulController {
|
|
capacityNumberAllSum2+=Double.valueOf(capacityNumber2);
|
|
capacityNumberAllSum2+=Double.valueOf(capacityNumber2);
|
|
capacityNumberSum2 = new BigDecimal(capacityNumberSum2).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
capacityNumberSum2 = new BigDecimal(capacityNumberSum2).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
capacityNumberAllSum2 = new BigDecimal(capacityNumberAllSum2).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
capacityNumberAllSum2 = new BigDecimal(capacityNumberAllSum2).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
|
|
+ //物资分类
|
|
|
|
+ materialNumberSum2 = new BigDecimal(materialNumberSum2+Double.valueOf(capacityNumber2)).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
} else if ("已过闸船舶".equals(locationStatus)) {
|
|
} else if ("已过闸船舶".equals(locationStatus)) {
|
|
capacity3 = list.get(i).get("capacity").toString();
|
|
capacity3 = list.get(i).get("capacity").toString();
|
|
capacityNumber3 = list.get(i).get("capacityNumber").toString();
|
|
capacityNumber3 = list.get(i).get("capacityNumber").toString();
|
|
@@ -161,6 +221,8 @@ public class ShipDynamicsController extends BaseRESTfulController {
|
|
capacityNumberAllSum3+=Double.valueOf(capacityNumber3);
|
|
capacityNumberAllSum3+=Double.valueOf(capacityNumber3);
|
|
capacityNumberSum3 = new BigDecimal(capacityNumberSum3).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
capacityNumberSum3 = new BigDecimal(capacityNumberSum3).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
capacityNumberAllSum3 = new BigDecimal(capacityNumberAllSum3).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
capacityNumberAllSum3 = new BigDecimal(capacityNumberAllSum3).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
|
|
+ //物资分类
|
|
|
|
+ materialNumberSum3 = new BigDecimal(materialNumberSum3+Double.valueOf(capacityNumber3)).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
} else if ("到港待卸船舶".equals(locationStatus)) {
|
|
} else if ("到港待卸船舶".equals(locationStatus)) {
|
|
capacity4 = list.get(i).get("capacity").toString();
|
|
capacity4 = list.get(i).get("capacity").toString();
|
|
capacityNumber4 = list.get(i).get("capacityNumber").toString();
|
|
capacityNumber4 = list.get(i).get("capacityNumber").toString();
|
|
@@ -171,6 +233,8 @@ public class ShipDynamicsController extends BaseRESTfulController {
|
|
capacityNumberAllSum4+=Double.valueOf(capacityNumber4);
|
|
capacityNumberAllSum4+=Double.valueOf(capacityNumber4);
|
|
capacityNumberSum4 = new BigDecimal(capacityNumberSum4).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
capacityNumberSum4 = new BigDecimal(capacityNumberSum4).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
capacityNumberAllSum4 = new BigDecimal(capacityNumberAllSum4).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
capacityNumberAllSum4 = new BigDecimal(capacityNumberAllSum4).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
|
|
+ //物资分类
|
|
|
|
+ materialNumberSum4 = new BigDecimal(materialNumberSum4+Double.valueOf(capacityNumber4)).setScale(2,BigDecimal.ROUND_HALF_UP).doubleValue();
|
|
}
|
|
}
|
|
map.put("capacity1",capacity1);
|
|
map.put("capacity1",capacity1);
|
|
map.put("capacityNumber1",capacityNumber1);
|
|
map.put("capacityNumber1",capacityNumber1);
|
|
@@ -193,6 +257,7 @@ public class ShipDynamicsController extends BaseRESTfulController {
|
|
map.put("portName", list.get(i).get("portName"));
|
|
map.put("portName", list.get(i).get("portName"));
|
|
mapList.add(map);
|
|
mapList.add(map);
|
|
}
|
|
}
|
|
|
|
+ //船舶合计处理最后一行
|
|
Map<String,Object> map=new HashMap<>();
|
|
Map<String,Object> map=new HashMap<>();
|
|
map.put("batchInfacoryId",list.get(list.size() - 1).get("batchInfacoryId"));
|
|
map.put("batchInfacoryId",list.get(list.size() - 1).get("batchInfacoryId"));
|
|
map.put("batchId",list.get(list.size() -1 ).get("batchId"));
|
|
map.put("batchId",list.get(list.size() -1 ).get("batchId"));
|
|
@@ -234,18 +299,48 @@ public class ShipDynamicsController extends BaseRESTfulController {
|
|
map2.put("type",1);
|
|
map2.put("type",1);
|
|
map2.put("eeeeee", 12);
|
|
map2.put("eeeeee", 12);
|
|
mapList.add(map2);
|
|
mapList.add(map2);
|
|
|
|
+ //物资合计处理最后一行
|
|
|
|
+ //四小合计
|
|
|
|
+ Map<String,Object> map11=new LinkedHashMap<>();
|
|
|
|
+ map11.put("materialType",list.get(list.size() - 1).get("materialTypeName"));
|
|
|
|
+ map11.put("batchInfacoryId","不合并第二行");
|
|
|
|
+ map11.put("pm","物资合计");
|
|
|
|
+ map11.put("tonnage",materialTonnageSum);
|
|
|
|
+ map11.put("batchId",list.get(list.size() -1).get("batchId"));
|
|
|
|
+ map11.put("capacity1","物资小计");
|
|
|
|
+ map11.put("capacity2","物资小计");
|
|
|
|
+ map11.put("capacity3" ,"物资小计");
|
|
|
|
+ map11.put("capacity4","物资小计");
|
|
|
|
+ map11.put("capacityNumber1",materialNumberSum1);
|
|
|
|
+ map11.put("capacityNumber2",materialNumberSum2);
|
|
|
|
+ map11.put("capacityNumber3",materialNumberSum3);
|
|
|
|
+ map11.put("capacityNumber4",materialNumberSum4);
|
|
|
|
+
|
|
|
|
+ mapList.add(map11);
|
|
|
|
+ //总合计
|
|
|
|
+ Map<String,Object> map22=new HashMap<>();
|
|
|
|
+ map22.put("materialType",list.get(list.size() -1).get("materialTypeName"));
|
|
|
|
+ map22.put("batchInfacoryId","不合并第二行");
|
|
|
|
+ map22.put("pm","物资合计");
|
|
|
|
+ map22.put("tonnage",materialTonnageSum);
|
|
|
|
+ map22.put("batchId",list.get(list.size() -1).get("batchId"));
|
|
|
|
+ map22.put("capacity1", list.get(list.size() -1).get("materialTypeName") + ":" +
|
|
|
|
+ new BigDecimal(materialNumberSum1+materialNumberSum2+materialNumberSum3+materialNumberSum4).setScale(2,BigDecimal.ROUND_HALF_UP));
|
|
|
|
+ map22.put("type",1);
|
|
|
|
+ map22.put("aaaaa", 2);
|
|
|
|
+ mapList.add(map22);
|
|
//有下游吨位无江船的
|
|
//有下游吨位无江船的
|
|
- List<Map<String,Object>> unloads=iShipDynamicsService.selectAllUnload(mapVal);
|
|
|
|
- for (Map<String,Object> temp:unloads){
|
|
|
|
- String pm= temp.get("materialName").toString() +"\n\n\n\n\n"+
|
|
|
|
- "\""+temp.get("shipName").toString()+"\""+"\n\n\n\n\n"+
|
|
|
|
- temp.get("dateOfLoans").toString().substring(0, 10)+"\n\n\n\n\n"+"放"+
|
|
|
|
- temp.get("numberOfLoans").toString()+"吨";
|
|
|
|
- temp.put("pm",pm);
|
|
|
|
- temp.put("materialType",temp.get("materialTypeName"));
|
|
|
|
- tonnageSum+=Double.parseDouble(temp.get("tonnage").toString());
|
|
|
|
- }
|
|
|
|
- mapList.addAll(unloads);
|
|
|
|
|
|
+// List<Map<String,Object>> unloads=iShipDynamicsService.selectAllUnload(mapVal);
|
|
|
|
+// for (Map<String,Object> temp:unloads){
|
|
|
|
+// String pm= temp.get("materialName").toString() +"\n\n\n\n\n"+
|
|
|
|
+// "\""+temp.get("shipName").toString()+"\""+"\n\n\n\n\n"+
|
|
|
|
+// temp.get("dateOfLoans").toString().substring(0, 10)+"\n\n\n\n\n"+"放"+
|
|
|
|
+// temp.get("numberOfLoans").toString()+"吨";
|
|
|
|
+// temp.put("pm",pm);
|
|
|
|
+// temp.put("materialType",temp.get("materialTypeName"));
|
|
|
|
+// tonnageSum+=Double.parseDouble(temp.get("tonnage").toString());
|
|
|
|
+// }
|
|
|
|
+// mapList.addAll(unloads);
|
|
//最下方的两行
|
|
//最下方的两行
|
|
//第一行
|
|
//第一行
|
|
Map<String,Object> map3=new HashMap<>();
|
|
Map<String,Object> map3=new HashMap<>();
|