Просмотр исходного кода

[车流数据][修改][已绑定车牌数据]

release_toaliyun_real
gongbiao 7 лет назад
Родитель
Сommit
98c48856e6
3 измененных файлов: 43 добавлений и 10 удалений
  1. +6
    -0
      mallinkService/src/main/java/com/iformall/mapper/WxCarCmdLogMapper.java
  2. +27
    -10
      mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java
  3. +10
    -0
      mallinkService/src/main/resources/mapper/WxCarCmdLogMapper.xml

+ 6
- 0
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<WxCarCmdLog, Long> {

List<WxCarCmdLog> findList(WxCarCmdLog wxCarCmdLog);
@@ -17,4 +20,7 @@ public interface WxCarCmdLogMapper extends CommonMapper<WxCarCmdLog, Long> {
List<Map<String, Object>> queryTodayCar(HashMap<Object,Object> params);

List<MarkingSceneDataVo> queryForSceneRepotyHistoryCar(HashMap<String,Object> params);

List<Map<String,Object>> queryPlateNumberList(Map<String,Object> carParams);

}

+ 27
- 10
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<String> plateNumberTotalList = wxCUserCarMapper.findList(wxCUserCar).stream()
.map(WxCUserCar::getCarNumber).distinct().collect(Collectors.toList());
//今日车牌
Map<String, Object> 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<String> 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<String> 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<String> 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 {


+ 10
- 0
mallinkService/src/main/resources/mapper/WxCarCmdLogMapper.xml Просмотреть файл

@@ -95,6 +95,16 @@
</select>
<select id="queryPlateNumberList" parameterType="hashmap" resultType="hashmap">
select json_unquote(JSON_EXTRACT(cmd_json,'$.plateNumber')) plateNumber from wx_car_cmd_log where tenant_id=#{tenantId}
<if test=" null != startdate and null != enddate">
and create_date BETWEEN #{startdate} and #{enddate}
</if>
and json_unquote(JSON_EXTRACT(cmd_json,'$.plateNumber')) is not null
group by plateNumber
</select>

</mapper>

Загрузка…
Отмена
Сохранить