123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204 |
- package com.steerinfo.dil.controller;
- import com.steerinfo.dil.service.impl.ShipDynamicsServiceImpl;
- import com.steerinfo.dil.util.BaseRESTfulController;
- import com.steerinfo.framework.controller.RESTfulResult;
- import io.swagger.annotations.ApiOperation;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.web.bind.annotation.PostMapping;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RestController;
- import java.util.ArrayList;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- @RestController
- @RequestMapping("/${api.version}/shipdynamics")
- public class ShipDynamicsController extends BaseRESTfulController {
- @Autowired
- ShipDynamicsServiceImpl iShipDynamicsService;
- @ApiOperation(value="查询所有的船舶动态信息")
- @PostMapping("/selectAll")
- public RESTfulResult selectAll() {
- //返回值mapList
- //获取视图里的所有外轮船名,物资名称
- List<Map<String, Object>> list = iShipDynamicsService.selectAll();
- List<Map<String, Object>> mapList=new ArrayList<>(list.size());
- //小计,没一个批次进行完小计后清空
- Double capacityNumberSum1 = 0.0;
- Double capacityNumberSum2 = 0.0;
- Double capacityNumberSum3 = 0.0;
- Double capacityNumberSum4 = 0.0;
- //获取下游港口吨位的总和
- Double tonnageSum=0.0;
- //1:未到闸船舶2:等闸船舶3:已过闸船舶4:到港待卸船舶的和
- Double capacityNumberAllSum1=0.0;
- Double capacityNumberAllSum2=0.0;
- Double capacityNumberAllSum3=0.0;
- Double capacityNumberAllSum4=0.0;
- for (int i = 0; i <= list.size()-1; i++) {
- if(i>0&&!list.get(i).get("batchId").equals(list.get(i-1).get("batchId"))){
- Map<String,Object> map=new HashMap<>();
- map.put("batchId",list.get(i-1).get("batchId"));
- map.put("pm",list.get(i-1).get("shipName").toString()+
- list.get(i-1).get("materialName").toString()+
- list.get(i-1).get("dateOfLoans").toString().substring(0, 10)+"放货"+
- list.get(i-1).get("numberOfLoans").toString());
- map.put("tonnage",list.get(i-1).get("tonnage"));
- tonnageSum+=Double.parseDouble(list.get(i-1).get("tonnage").toString());
- map.put("capacity1","小计");
- map.put("capacity2","小计");
- map.put("capacity3","小计");
- map.put("capacity4","小计");
- map.put("capacityNumber1",capacityNumberSum1);
- map.put("capacityNumber2",capacityNumberSum2);
- map.put("capacityNumber3",capacityNumberSum3);
- map.put("capacityNumber4",capacityNumberSum4);
- mapList.add(map);
- Map<String,Object> map2=new HashMap<>();
- map2.put("batchId",list.get(i-1).get("batchId"));
- map2.put("pm",list.get(i-1).get("shipName").toString()+
- list.get(i-1).get("materialName").toString()+
- list.get(i-1).get("dateOfLoans").toString().substring(0, 10)+"放货"+
- list.get(i-1).get("numberOfLoans").toString());
- map2.put("tonnage",list.get(i-1).get("tonnage"));
- map2.put("capacity1",capacityNumberSum1+capacityNumberSum2+capacityNumberSum3+capacityNumberSum4);
- map2.put("type",1);
- mapList.add(map2);
- capacityNumberSum1 = 0.0;
- capacityNumberSum2 = 0.0;
- capacityNumberSum3 = 0.0;
- capacityNumberSum4 = 0.0;
- }
- Map<String, Object> map = new HashMap<>();
- map.put("batchId",list.get(i).get("batchId"));
- list.get(i).get("shipName").toString();
- list.get(i).get("materialName").toString();
- list.get(i).get("dateOfLoans").toString().substring(0, 10);
- list.get(i).get("numberOfLoans").toString();
- String pm=list.get(i).get("shipName").toString()+
- list.get(i).get("materialName").toString()+
- list.get(i).get("dateOfLoans").toString().substring(0, 10)+"放货"+
- list.get(i).get("numberOfLoans").toString();
- map.put("pm",pm);
- map.put("tonnage",list.get(i).get("tonnage"));
- //1:未到闸船舶2:等闸船舶3:已过闸船舶4:到港待卸船舶
- String capacity1=null;
- String capacity2=null;
- String capacity3=null;
- String capacity4=null;
- String capacityNumber1=null;
- String capacityNumber2=null;
- String capacityNumber3=null;
- String capacityNumber4=null;
- String outPortTime1=null;
- String outPortTime2=null;
- String outPortTime3=null;
- String outPortTime4=null;
- String locationValue1=null;
- String locationValue2=null;
- String locationValue3=null;
- String locationValue4=null;
- String locationStatus = list.get(i).get("locationStatus").toString();
- if ("未到闸船舶".equals(locationStatus)) {
- capacity1 = list.get(i).get("capacity").toString();
- capacityNumber1 = list.get(i).get("capacityNumber").toString();
- outPortTime1 = list.get(i).get("outPortTime").toString().substring(0, 10);
- locationValue1 = list.get(i).get("locationValue").toString();
- capacityNumberSum1 += Double.valueOf(capacityNumber1);
- capacityNumberAllSum1+=Double.valueOf(capacityNumber1);
- } else if ("等闸船舶".equals(locationStatus)) {
- capacity2 = list.get(i).get("capacity").toString();
- capacityNumber2 = list.get(i).get("capacityNumber").toString();
- outPortTime2 = list.get(i).get("outPortTime").toString().substring(0, 10);
- locationValue2 = list.get(i).get("locationValue").toString();
- capacityNumberSum2 += Double.valueOf(capacityNumber2);
- capacityNumberAllSum2+=Double.valueOf(capacityNumber2);
- } else if ("已过闸船舶".equals(locationStatus)) {
- capacity3 = list.get(i).get("capacity").toString();
- capacityNumber3 = list.get(i).get("capacityNumber").toString();
- outPortTime3 = list.get(i).get("outPortTime").toString().substring(0, 10);
- locationValue3 = list.get(i).get("locationValue").toString();
- capacityNumberSum3 += Double.valueOf(capacityNumber3);
- capacityNumberAllSum3+=Double.valueOf(capacityNumber3);
- } else if ("到港待卸船舶".equals(locationStatus)) {
- capacity4 = list.get(i).get("capacity").toString();
- capacityNumber4 = list.get(i).get("capacityNumber").toString();
- outPortTime4 = list.get(i).get("outPortTime").toString().substring(0, 10);
- locationValue4 = list.get(i).get("locationValue").toString();
- capacityNumberSum4 += Double.valueOf(capacityNumber4);
- capacityNumberAllSum4+=Double.valueOf(capacityNumber4);
- }
- map.put("capacity1",capacity1);
- map.put("capacityNumber1",capacityNumber1);
- map.put("locationValue1",locationValue1);
- map.put("outPortTime1",outPortTime1);
- map.put("capacity2",capacity2);
- map.put("capacityNumber2",capacityNumber2);
- map.put("locationValue2",locationValue2);
- map.put("outPortTime2",outPortTime2);
- map.put("capacity3",capacity3);
- map.put("capacityNumber3",capacityNumber3);
- map.put("locationValue3",locationValue3);
- map.put("outPortTime3",outPortTime3);
- map.put("capacity4",capacity4);
- map.put("capacityNumber4",capacityNumber4);
- map.put("locationValue4",locationValue4);
- map.put("outPortTime4",outPortTime4);
- mapList.add(map);
- }
- Map<String,Object> map=new HashMap<>();
- map.put("batchId",list.get(list.size()-1).get("batchId"));
- map.put("pm",list.get(list.size()-1).get("shipName").toString()+
- list.get(list.size()-1).get("materialName").toString()+
- list.get(list.size()-1).get("dateOfLoans").toString().substring(0, 10)+"放货"+
- list.get(list.size()-1).get("numberOfLoans").toString());
- map.put("tonnage",list.get(list.size()-1).get("tonnage"));
- tonnageSum+=Double.parseDouble(list.get(list.size()-1).get("tonnage").toString());
- map.put("capacity1","小计");
- map.put("capacity2","小计");
- map.put("capacity3","小计");
- map.put("capacity4","小计");
- map.put("capacityNumber1",capacityNumberSum1);
- map.put("capacityNumber2",capacityNumberSum2);
- map.put("capacityNumber3",capacityNumberSum3);
- map.put("capacityNumber4",capacityNumberSum4);
- mapList.add(map);
- Map<String,Object> map2=new HashMap<>();
- map2.put("batchId",list.get(list.size()-1).get("batchId"));
- map2.put("pm",list.get(list.size()-1).get("shipName").toString()+
- list.get(list.size()-1).get("materialName").toString()+
- list.get(list.size()-1).get("dateOfLoans").toString().substring(0, 10)+"放货"+
- list.get(list.size()-1).get("numberOfLoans").toString());
- map2.put("tonnage",list.get(list.size()-1).get("tonnage"));
- map2.put("capacity1",capacityNumberSum1+capacityNumberSum2+capacityNumberSum3+capacityNumberSum4);
- map2.put("type",1);
- mapList.add(map2);
- //最下方的两行
- //第一行
- Map<String,Object> map3=new HashMap<>();
- map3.put("batchId",Integer.parseInt(list.get(list.size()-1).get("batchId").toString())+1);
- map3.put("tonnage",tonnageSum);
- map3.put("pm","合计");
- map3.put("capacityNumber1",capacityNumberAllSum1);
- map3.put("capacityNumber2",capacityNumberAllSum2);
- map3.put("capacityNumber3",capacityNumberAllSum3);
- map3.put("capacityNumber4",capacityNumberAllSum4);
- mapList.add(map3);
- //第二行
- Map<String,Object> map4=new HashMap<>();
- map4.put("batchId",Integer.parseInt(list.get(list.size()-1).get("batchId").toString())+1);
- map4.put("tonnage",tonnageSum);
- map4.put("pm","合计");
- map4.put("capacity1",capacityNumberAllSum1+capacityNumberAllSum2+capacityNumberAllSum3+capacityNumberAllSum4);
- map4.put("type",1);
- mapList.add(map4);
- return success(mapList);
- }
- }
|