|
@@ -3,6 +3,7 @@ package com.steerinfo.dil.service.impl;
|
|
|
import com.steerinfo.dil.mapper.StatisticalReportMapper;
|
|
|
import com.steerinfo.dil.service.IStatisticalReportService;
|
|
|
import com.steerinfo.dil.util.DataChange;
|
|
|
+import com.steerinfo.dil.util.PageListAdd;
|
|
|
import oracle.sql.DATE;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
@@ -251,9 +252,150 @@ public class StatisticalReportImpl implements IStatisticalReportService {
|
|
|
@Override
|
|
|
public List<Map<String, Object>> getSaleSteelReport(Map<String, Object> mapValue) {
|
|
|
List<Map<String, Object>> saleSteelReport = statisticalReportMapper.getSaleSteelReport(mapValue);
|
|
|
+ HashSet set = new HashSet<>();
|
|
|
+ HashSet<Map<String,Object>> filterConsigneeList = new HashSet<>();
|
|
|
+ HashSet<Map<String,Object>> filterCarrierList = new HashSet<>();
|
|
|
+ HashSet<Map<String,Object>> filterCapacityList = new HashSet<>();
|
|
|
+ HashSet<Map<String,Object>> filtermaterialNameList = new HashSet<>();
|
|
|
+ HashSet<Map<String,Object>> filterorderStatus = new HashSet<>();
|
|
|
+ HashSet<Map<String,Object>> filteraddressPlace = new HashSet<>();
|
|
|
+ HashSet<Map<String,Object>> filtermaterialSpe = new HashSet<>();
|
|
|
+ HashSet<Map<String,Object>> filterSaleRemark = new HashSet<>();
|
|
|
+ int totalNumber = 0;
|
|
|
+ for (int j = 0; j < saleSteelReport.size();j++) {
|
|
|
+ Map<String,Object> stringObjectMap = saleSteelReport.get(j);
|
|
|
+ stringObjectMap.put("rowKey",j + 1);
|
|
|
+ if(j == 0) {
|
|
|
+ stringObjectMap.put("group",j);
|
|
|
+ }else{
|
|
|
+ if((saleSteelReport.get(j-1).get("saleOrderMaterialId")).equals(stringObjectMap.get("saleOrderMaterialId"))){
|
|
|
+ stringObjectMap.put("group",saleSteelReport.get(j-1).get("group"));
|
|
|
+ }else{
|
|
|
+ stringObjectMap.put("group",Integer.parseInt(saleSteelReport.get(j-1).get("group").toString()) + 1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if( !"取消".equals(stringObjectMap.get("capacityNo")) && !"反审批".equals(stringObjectMap.get("saleOrderStatus")) &&
|
|
|
+ !"已关闭".equals(stringObjectMap.get("orderStatus"))) {
|
|
|
+ set.add(stringObjectMap.get("saleOrderMaterialId"));
|
|
|
+ }
|
|
|
+ calculateDifferenceTime(stringObjectMap);
|
|
|
+
|
|
|
+ Map<String, Object> filterConsigneeMap = new HashMap<>();
|
|
|
+ filterConsigneeMap.put("text",stringObjectMap.get("consigneeName"));
|
|
|
+ filterConsigneeMap.put("value",stringObjectMap.get("consigneeName"));
|
|
|
+ filterConsigneeList.add(filterConsigneeMap);
|
|
|
+
|
|
|
+ Map<String,Object> filterCarrierMap = new HashMap<>();
|
|
|
+ filterCarrierMap.put("text",stringObjectMap.get("carrierName"));
|
|
|
+ filterCarrierMap.put("value",stringObjectMap.get("carrierName"));
|
|
|
+ filterCarrierList.add(filterCarrierMap);
|
|
|
+
|
|
|
+ Map<String,Object> filterCapacityMap = new HashMap<>();
|
|
|
+ filterCapacityMap.put("text",stringObjectMap.get("newCapacityNo"));
|
|
|
+ filterCapacityMap.put("value",stringObjectMap.get("newCapacityNo"));
|
|
|
+ filterCapacityList.add(filterCapacityMap);
|
|
|
+
|
|
|
+ Map<String,Object> filtermaterialNameMap = new HashMap<>();
|
|
|
+ filtermaterialNameMap.put("text",stringObjectMap.get("materialName"));
|
|
|
+ filtermaterialNameMap.put("value",stringObjectMap.get("materialName"));
|
|
|
+ filtermaterialNameList.add(filtermaterialNameMap);
|
|
|
+
|
|
|
+ Map<String,Object> filterorderStatusMap = new HashMap<>();
|
|
|
+ filterorderStatusMap.put("text",stringObjectMap.get("orderStatus"));
|
|
|
+ filterorderStatusMap.put("value",stringObjectMap.get("orderStatus"));
|
|
|
+ filterorderStatus.add(filterorderStatusMap);
|
|
|
+
|
|
|
+ Map<String,Object> filteraddressPlaceMap = new HashMap<>();
|
|
|
+ filteraddressPlaceMap.put("text",stringObjectMap.get("addressPlace"));
|
|
|
+ filteraddressPlaceMap.put("value",stringObjectMap.get("addressPlace"));
|
|
|
+ filteraddressPlace.add(filteraddressPlaceMap);
|
|
|
+
|
|
|
+ Map<String,Object> filtermaterialSpeMap = new HashMap<>();
|
|
|
+ filtermaterialSpeMap.put("text",stringObjectMap.get("materialSpe"));
|
|
|
+ filtermaterialSpeMap.put("value",stringObjectMap.get("materialSpe"));
|
|
|
+ filtermaterialSpe.add(filtermaterialSpeMap);
|
|
|
+
|
|
|
+ Map<String,Object> filterSaleRemarkMap = new HashMap<>();
|
|
|
+ filterSaleRemarkMap.put("text",stringObjectMap.get("saleRemark"));
|
|
|
+ filterSaleRemarkMap.put("value",stringObjectMap.get("saleRemark"));
|
|
|
+ filterSaleRemark.add(filterSaleRemarkMap);
|
|
|
+ totalNumber += Integer.parseInt(stringObjectMap.get("materialNum").toString());
|
|
|
+ String capacityNumbers= (String) stringObjectMap.get("capacityNumbers");
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ if (capacityNumbers!=null &&!("".equals(capacityNumbers))){
|
|
|
+ String[] split = capacityNumbers.split(",");
|
|
|
+ String capacityNumber="";
|
|
|
+ int flag=0;
|
|
|
+ for (String s : split) {
|
|
|
+ flag++;
|
|
|
+ String s1 = getcapacityNumber(DataChange.dataToBigDecimal(s));
|
|
|
+ if (flag==1){
|
|
|
+ capacityNumber+="旧车号:"+s1+",";
|
|
|
+ }else if (flag==2){
|
|
|
+ capacityNumber+="新车号:"+s1;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ stringObjectMap.put("capacityNo",capacityNumber);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if(saleSteelReport.size() > 0 && saleSteelReport.get(0) != null){
|
|
|
+ saleSteelReport.get(0).put("totalCapacity",set.size() + 1);
|
|
|
+ saleSteelReport.get(0).put("totalNumber",totalNumber);
|
|
|
+ saleSteelReport.get(0).put("filterConsigneeList",filterConsigneeList);
|
|
|
+ saleSteelReport.get(0).put("filtermaterialNameList",filtermaterialNameList);
|
|
|
+ saleSteelReport.get(0).put("filterorderStatus",filterorderStatus);
|
|
|
+ saleSteelReport.get(0).put("filteraddressPlace",filteraddressPlace);
|
|
|
+ saleSteelReport.get(0).put("filtermaterialSpe",filtermaterialSpe);
|
|
|
+ saleSteelReport.get(0).put("filterCapacityList",filterCapacityList);
|
|
|
+ saleSteelReport.get(0).put("filterCarrierList",filterCarrierList);
|
|
|
+ saleSteelReport.get(0).put("filterSaleRemark",filterSaleRemark);
|
|
|
+
|
|
|
+ }
|
|
|
return saleSteelReport;
|
|
|
}
|
|
|
|
|
|
+ private Set<Map<String, Object>> setListMap(List<Map<String, Object>> list, String name) {
|
|
|
+ Set<Map<String, Object>> setString = new HashSet<>();
|
|
|
+ for (Map<String, Object> map : list) {
|
|
|
+ Map<String, Object> map1 = new HashMap<>();
|
|
|
+
|
|
|
+ map1.put("text", map.get(name));
|
|
|
+ if (map.get(name) != null) {
|
|
|
+ map1.put("value", map.get(name));
|
|
|
+ setString.add(map1);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return setString;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
@Override
|
|
|
public List<Map<String, Object>> getSaleSteelSpellingReport(Map<String, Object> mapValue) {
|
|
|
List<Map<String, Object>> saleSteelReport = statisticalReportMapper.getSaleSteelSpellingReport(mapValue);
|