|
@@ -3,6 +3,7 @@ package com.fdkankan.sale.service.impl;
|
|
import com.fdkankan.sale.mapper.DataCountMapper;
|
|
import com.fdkankan.sale.mapper.DataCountMapper;
|
|
import com.fdkankan.sale.service.IRepairService;
|
|
import com.fdkankan.sale.service.IRepairService;
|
|
import com.fdkankan.sale.util.DateUtil;
|
|
import com.fdkankan.sale.util.DateUtil;
|
|
|
|
+import com.fdkankan.sale.util.Dateutils;
|
|
import com.fdkankan.sale.vo.response.DataGroupByCount;
|
|
import com.fdkankan.sale.vo.response.DataGroupByCount;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.stereotype.Service;
|
|
import org.springframework.stereotype.Service;
|
|
@@ -22,19 +23,23 @@ public class DataCountService {
|
|
DataCountMapper dataCountMapper;
|
|
DataCountMapper dataCountMapper;
|
|
|
|
|
|
public Object repairAddTrend(Integer cameraType, Integer type, String startTime, String endTime) {
|
|
public Object repairAddTrend(Integer cameraType, Integer type, String startTime, String endTime) {
|
|
|
|
+ startTime = Dateutils.formatStartTime(startTime);
|
|
|
|
+ endTime = Dateutils.formatEndTime(endTime);
|
|
|
|
+
|
|
List<DataGroupByCount> dataList = new ArrayList<>();
|
|
List<DataGroupByCount> dataList = new ArrayList<>();
|
|
- int rule = DateUtil.DAY;
|
|
|
|
|
|
+ List<DataGroupByCount> result = new ArrayList<>();
|
|
|
|
+ int rule = Dateutils.DAY;
|
|
String tb ="t_repair";
|
|
String tb ="t_repair";
|
|
switch (type){
|
|
switch (type){
|
|
case 0 :
|
|
case 0 :
|
|
dataList = dataCountMapper.repairDataGroupBy(tb, dayFormat, cameraType,startTime, endTime);
|
|
dataList = dataCountMapper.repairDataGroupBy(tb, dayFormat, cameraType,startTime, endTime);
|
|
break;
|
|
break;
|
|
case 1 :
|
|
case 1 :
|
|
- rule = DateUtil.WEEK;
|
|
|
|
|
|
+ rule = Dateutils.WEEK;
|
|
dataList = dataCountMapper.repairDataGroupByWeek(tb,cameraType,startTime,endTime);
|
|
dataList = dataCountMapper.repairDataGroupByWeek(tb,cameraType,startTime,endTime);
|
|
break;
|
|
break;
|
|
case 2 :
|
|
case 2 :
|
|
- rule = DateUtil.MONTH;
|
|
|
|
|
|
+ rule = Dateutils.MONTH;
|
|
dataList = dataCountMapper.repairDataGroupBy(tb,mouthFormat,cameraType,startTime,endTime);
|
|
dataList = dataCountMapper.repairDataGroupBy(tb,mouthFormat,cameraType,startTime,endTime);
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
@@ -42,8 +47,41 @@ public class DataCountService {
|
|
//查询从开始时间到结束时间为止所有天数,月份,不存在结果补零
|
|
//查询从开始时间到结束时间为止所有天数,月份,不存在结果补零
|
|
HashMap<String,Long> map = new HashMap<>();
|
|
HashMap<String,Long> map = new HashMap<>();
|
|
dataList.forEach(entity -> map.put(entity.getGroupKey(),entity.getCount()));
|
|
dataList.forEach(entity -> map.put(entity.getGroupKey(),entity.getCount()));
|
|
- //List<String> dates = Dateutil.findDatesStr(Dateutils.getDate(startTime), Dateutils.getDate(endTime),rule );
|
|
|
|
- return null;
|
|
|
|
|
|
+ List<String> dates = Dateutils.findDatesStr(Dateutils.getDate(startTime), Dateutils.getDate(endTime),rule );
|
|
|
|
+ setListData(result,map,dates);
|
|
|
|
+ return result;
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ private void setListData(List<DataGroupByCount> kkList, HashMap<String, Long> kkMap, List<String> dates) {
|
|
|
|
+ for (String key : dates) {
|
|
|
|
+ DataGroupByCount newCount = new DataGroupByCount();
|
|
|
|
+ newCount.setGroupKey(key);
|
|
|
|
+ Long count = kkMap.get(key) == null ? 0L : kkMap.get(key);
|
|
|
|
+ newCount.setCount(count);
|
|
|
|
+ kkList.add(newCount);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ public Object faultCount(Integer cameraType, String startTime, String endTime) {
|
|
|
|
+ startTime = Dateutils.formatStartTime(startTime);
|
|
|
|
+ endTime = Dateutils.formatEndTime(endTime);
|
|
|
|
+
|
|
|
|
+ return dataCountMapper.faultCount( cameraType,startTime, endTime);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ public Object warrantyTypeCount(Integer cameraType, String startTime, String endTime) {
|
|
|
|
+ startTime = Dateutils.formatStartTime(startTime);
|
|
|
|
+ endTime = Dateutils.formatEndTime(endTime);
|
|
|
|
+ List<DataGroupByCount> list = dataCountMapper.warrantyTypeCount(cameraType, startTime, endTime);
|
|
|
|
+ for (DataGroupByCount dataGroupByCount : list) {
|
|
|
|
+ switch (dataGroupByCount.getGroupKey()){
|
|
|
|
+ case "0" : dataGroupByCount.setGroupKey2("保修期内"); break;
|
|
|
|
+ case "1" : dataGroupByCount.setGroupKey2("保修期外"); break;
|
|
|
|
+ case "2" : dataGroupByCount.setGroupKey2("非保修项目"); break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ return list;
|
|
|
|
+ }
|
|
}
|
|
}
|