|
@@ -74,8 +74,8 @@ public class DataService implements IDataService {
|
|
|
|
|
|
@Override
|
|
|
public List<DataGroupByCount> userTrend(Integer type,Integer dataType,String startTime,String endTime) {
|
|
|
- startTime = Dateutils.formatStartTime(startTime,type);
|
|
|
- endTime = Dateutils.formatEndTime(endTime,type);
|
|
|
+ startTime = Dateutils.formatStartTime(startTime);
|
|
|
+ endTime = Dateutils.formatEndTime(endTime);
|
|
|
|
|
|
List<DataGroupByCount> dataList = new ArrayList<>();
|
|
|
List<DataGroupByCount> result = new ArrayList<>();
|
|
@@ -115,8 +115,9 @@ public class DataService implements IDataService {
|
|
|
|
|
|
@Override
|
|
|
public HashMap<String, Object> orderTrend(Integer type,Integer dataType,String startTime,String endTime) {
|
|
|
- startTime = Dateutils.formatStartTime(startTime,type);
|
|
|
- endTime = Dateutils.formatEndTime(endTime,type);
|
|
|
+ startTime = Dateutils.formatStartTime(startTime);
|
|
|
+ endTime = Dateutils.formatEndTime(endTime);
|
|
|
+
|
|
|
HashMap<String,Object> map = new HashMap<>();
|
|
|
if(dataType == 1){
|
|
|
return getAmountSumOrder(map,type,startTime,endTime);
|
|
@@ -220,8 +221,8 @@ public class DataService implements IDataService {
|
|
|
|
|
|
@Override
|
|
|
public HashMap<String, List<DataGroupByCount>> sceneTrend(Integer type,Integer dataType,String startTime,String endTime) {
|
|
|
- startTime = Dateutils.formatStartTime(startTime,type);
|
|
|
- endTime = Dateutils.formatEndTime(endTime,type);
|
|
|
+ startTime = Dateutils.formatStartTime(startTime);
|
|
|
+ endTime = Dateutils.formatEndTime(endTime);
|
|
|
|
|
|
HashMap<String,List<DataGroupByCount>> map = new HashMap<>();
|
|
|
List<DataGroupByCount> kkList = new ArrayList<>();
|
|
@@ -310,4 +311,62 @@ public class DataService implements IDataService {
|
|
|
kkList.add(newCount);
|
|
|
}
|
|
|
}
|
|
|
+ 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);
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public HashMap<String, Object> cameraTrend(Integer type, String startTime, String endTime) {
|
|
|
+ startTime = Dateutils.formatStartTime(startTime);
|
|
|
+ endTime = Dateutils.formatEndTime(endTime);
|
|
|
+
|
|
|
+ HashMap<String,Object> map = new HashMap<>();
|
|
|
+ List<DataGroupByCount> allList = new ArrayList<>();
|
|
|
+ List<DataGroupByCount> kkList = new ArrayList<>();
|
|
|
+ List<DataGroupByCount> kjList = new ArrayList<>();
|
|
|
+ List<DataGroupByCount> ssList = new ArrayList<>();
|
|
|
+ int rule = Dateutils.DAY;
|
|
|
+ switch (type){
|
|
|
+ case 0 :
|
|
|
+ allList = dataMapper.sceneGroupBy("t_camera_detail",dayFormat,startTime,endTime);
|
|
|
+ break;
|
|
|
+ case 1 :
|
|
|
+ rule = Dateutils.WEEK;
|
|
|
+ allList = dataMapper.sceneGroupByWeek("t_camera_detail",startTime,endTime);
|
|
|
+ break;
|
|
|
+ case 2 :
|
|
|
+ rule = Dateutils.MONTH;
|
|
|
+ allList = dataMapper.sceneGroupBy("t_camera_detail",mouthFormat,startTime,endTime);
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ HashMap<String, Long> kkMap = new HashMap<>();
|
|
|
+ HashMap<String, Long> kjMap = new HashMap<>();
|
|
|
+ HashMap<String, Long> ssMap = new HashMap<>();
|
|
|
+ for (DataGroupByCount dataGroupByCount : allList) {
|
|
|
+ if(dataGroupByCount.getGroupKey2().equals("9")){ //看见
|
|
|
+ kjMap.merge(dataGroupByCount.getGroupKey(),dataGroupByCount.getCount(), Long:: sum);
|
|
|
+ }
|
|
|
+ if(dataGroupByCount.getGroupKey2().equals("10")){ //深时
|
|
|
+ ssMap.merge(dataGroupByCount.getGroupKey(),dataGroupByCount.getCount(), Long:: sum);
|
|
|
+ }
|
|
|
+ if(Arrays.asList("0","1","2","5").contains(dataGroupByCount.getGroupKey2())){ //看看
|
|
|
+ kkMap.merge(dataGroupByCount.getGroupKey(),dataGroupByCount.getCount(), Long:: sum);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ List<String> dates = Dateutils.findDatesStr(Dateutils.getDate(startTime), Dateutils.getDate(endTime),rule );
|
|
|
+ setListData(kkList,kkMap,dates);
|
|
|
+ setListData(kjList,kjMap,dates);
|
|
|
+ setListData(ssList,ssMap,dates);
|
|
|
+
|
|
|
+ map.put("kkList",kkList);
|
|
|
+ map.put("kjList",kjList);
|
|
|
+ map.put("ssList",ssList);
|
|
|
+ return map;
|
|
|
+ }
|
|
|
}
|