diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCarCmdLogMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCarCmdLogMapper.java index 563feb4ce..c9d913946 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCarCmdLogMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCarCmdLogMapper.java @@ -8,6 +8,9 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +/** + * @author gongbiao + */ public interface WxCarCmdLogMapper extends CommonMapper { List findList(WxCarCmdLog wxCarCmdLog); @@ -17,4 +20,7 @@ public interface WxCarCmdLogMapper extends CommonMapper { List> queryTodayCar(HashMap params); List queryForSceneRepotyHistoryCar(HashMap params); + + List> queryPlateNumberList(Map carParams); + } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java index 054076563..09b844637 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java @@ -611,32 +611,49 @@ public class DataTowerServiceImpl implements DataTowerService { datamap.put("lastdaycardata", lastdaytreemap); - //绑定车牌 + //目前为止总车牌数 + WxCUserCar wxCUserCar = new WxCUserCar(); + wxCUserCar.setTenantId(tenantId); + List plateNumberTotalList = wxCUserCarMapper.findList(wxCUserCar).stream() + .map(WxCUserCar::getCarNumber).distinct().collect(Collectors.toList()); + //今日车牌 Map carParams = new HashMap<>(); carParams.put("tenantId", tenantId); carParams.put("startdate", DateUtils.getSystemTime("yyyy-MM-dd 00:00:00")); carParams.put("enddate", DateUtils.getSystemTime("yyyy-MM-dd HH:mm:ss")); - long todaybindcar = wxCUserCarMapper.queryCarCount(carParams); + List plateNumberTodayList = wxCarCmdLogMapper.queryPlateNumberList(carParams).stream(). + map(c -> c.get("plateNumber").toString()).collect(Collectors.toList()); + //今日绑定车牌 + plateNumberTodayList.retainAll(plateNumberTotalList); + long todaybindcar = plateNumberTodayList.size(); + //昨日车牌 carParams.put("startdate", yesterday + " 00:00:00"); carParams.put("enddate", yesterday + " 23:59:59"); - long yesterdaybindcar = wxCUserCarMapper.queryCarCount(carParams); + List plateNumberYesterdayList = wxCarCmdLogMapper.queryPlateNumberList(carParams).stream(). + map(c -> c.get("plateNumber").toString()).collect(Collectors.toList()); + //昨日绑定车牌 + plateNumberYesterdayList.retainAll(plateNumberTotalList); + long yesterdaybindcar = plateNumberYesterdayList.size(); + //上周车牌 carParams.put("startdate", lastweek + " 00:00:00"); carParams.put("enddate", lastweek + " 23:59:59"); - long lastweekbindcar = wxCUserCarMapper.queryCarCount(carParams); + List plateNumberLastweekList = wxCarCmdLogMapper.queryPlateNumberList(carParams).stream(). + map(c -> c.get("plateNumber").toString()).collect(Collectors.toList()); + plateNumberLastweekList.retainAll(plateNumberTotalList); + long lastweekbindcar = plateNumberLastweekList.size(); + //今日绑定车牌数 datamap.put("todaybindcar", todaybindcar); - //datamap.put("yesterdaybindcar",yesterdaybindcar); - //datamap.put("lastweekbindcar",lastweekbindcar); - + //绑定车牌数日环比 if (yesterdaybindcar > 0) { - double yesterdaybinddhb = (double) (todaycar - yesterdaybindcar) / yesterdaybindcar * 100; + double yesterdaybinddhb = (double) (todaybindcar - yesterdaybindcar) / yesterdaybindcar * 100; double yesterdaybindhb = new BigDecimal(yesterdaybinddhb).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); datamap.put("yesterdaybindhb", yesterdaybindhb); } else { datamap.put("yesterdaybindhb", "--"); } - + //绑定车牌数周同比 if (lastweekbindcar > 0) { - double lastweekbinddhb = (double) (todaycar - lastweekbindcar) / lastweekbindcar * 100; + double lastweekbinddhb = (double) (todaybindcar - lastweekbindcar) / lastweekbindcar * 100; double lastweekbindhb = new BigDecimal(lastweekbinddhb).setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue(); datamap.put("lastweekbindhb", lastweekbindhb); } else { diff --git a/mallinkService/src/main/resources/mapper/WxCarCmdLogMapper.xml b/mallinkService/src/main/resources/mapper/WxCarCmdLogMapper.xml index dbcdf25f2..c8218729f 100644 --- a/mallinkService/src/main/resources/mapper/WxCarCmdLogMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxCarCmdLogMapper.xml @@ -95,6 +95,16 @@ + + +