| 
					
				 | 
			
			
				@@ -139,10 +139,81 @@ public class TWhgenlegServiceImpl implements ITWhgenlegService { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String frontday = format.format(c.getTime()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         // 当前日期 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         String nowadays=DateUtils.getDate(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				- 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         Map<String, Object> map = new HashMap<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         map.put("frontday", frontday); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         map.put("nowadays", nowadays); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-        return tWhgenlegMapper.selectDateFQtyblcListList(map); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Map<String, Object>>  list= tWhgenlegMapper.selectDateFQtyblcListList(map); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 对比 日期 为空入库赋值0 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ArrayList<String> pastDaysList=dayList(8); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for(String day:pastDaysList){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if(!day.equals(nowadays)){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                Map<String, Object> map1 = new HashMap<String, Object>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                map1.put("fOriginalbilldate",day); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                map1.put("fQtyblc",0); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                list.add(map1); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Map<String,Object>> countList = combineMap("fOriginalbilldate", list); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return countList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param combineField 根据该字段进行合并 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param dataList 原始数据 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static List<Map<String, Object>> combineMap(String combineField, List<Map<String, Object>> dataList){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        //用于存放最后的结果 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Map<String, Object>> countList = new ArrayList<Map<String,Object>>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (int i = 0; i < dataList.size(); i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            String oldCombineField = String.valueOf(dataList.get(i).get(combineField)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            int flag = 0;//0为新增数据,1为增加count 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            for (int j = 0; j < countList.size(); j++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                String newCombineField = String.valueOf(countList.get(j).get(combineField)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                if (oldCombineField.equals(newCombineField)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    //做累加的操作 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    Integer afterSaleProfit = Integer.parseInt(String.valueOf(dataList.get(i).get("fQtyblc"))) + Integer.parseInt(String.valueOf(countList.get(j).get("fQtyblc"))); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    countList.get(j).put("fQtyblc", afterSaleProfit); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    flag = 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    break; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            if (flag == 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                countList.add(dataList.get(i)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return countList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取过去 任意天内的日期数组 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param intervals      intervals天内 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return              日期数组 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static ArrayList<String> dayList(int intervals ) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ArrayList<String> pastDaysList = new ArrayList<>(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        for (int i = 0; i <intervals; i++) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            pastDaysList.add(getPastDate(i)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return pastDaysList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 获取过去第几天的日期 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @param past 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     * @return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public static String getPastDate(int past) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Calendar calendar = Calendar.getInstance(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        calendar.set(Calendar.DAY_OF_YEAR, calendar.get(Calendar.DAY_OF_YEAR) - past); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Date today = calendar.getTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        String result = format.format(today); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |