diff --git a/mallinkSchedule/src/main/java/com/iformall/schedule/ChartDataSchedule.java b/mallinkSchedule/src/main/java/com/iformall/schedule/ChartDataSchedule.java index 22de28532..d6357774e 100644 --- a/mallinkSchedule/src/main/java/com/iformall/schedule/ChartDataSchedule.java +++ b/mallinkSchedule/src/main/java/com/iformall/schedule/ChartDataSchedule.java @@ -1,10 +1,24 @@ package com.iformall.schedule; +import com.iformall.domain.dto.WxCUserBasicInfoDto; +import com.iformall.domain.po.WxMall; +import com.iformall.enums.EnumCarCmd; +import com.iformall.mapper.WxCUserCarMapper; +import com.iformall.mapper.WxCarCmdLogMapper; +import com.iformall.mapper.WxMallMapper; +import com.iformall.utils.DateUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; +import java.math.BigDecimal; +import java.util.Date; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + /** * @author gongbiao */ @@ -13,13 +27,62 @@ public class ChartDataSchedule { private final Logger logger = LoggerFactory.getLogger(this.getClass()); + @Autowired + WxCarCmdLogMapper wxCarCmdLogMapper; + + @Autowired + WxMallMapper wxMallMapper; + + @Autowired + WxCUserCarMapper wxCUserCarMapper; + /** * 车流数据 每天9点执行 */ @Scheduled(cron = "0 0 9 * * ?") - public void createCarData() { + public void createCarData() { + createCarPayFeeCountData(); } + /** + * 出场车辆、缴费车辆、缴费金额、新增会员、新增停车会员、已绑车辆 + */ + public void createCarPayFeeCountData() { + HashMap params = new HashMap<>(); + params.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PARK_OUT.getCode()); + String startdate = DateUtils.getTimeBefore(1, new Date()); + String showdate = startdate.substring(5).replace("-", "/"); + Date date = DateUtils.stringToDate(startdate); + long time = date.getTime(); + params.put("startdate", startdate + " 00:00:00"); + params.put("enddate", startdate + " 23:59:59"); + List wxMalls = wxMallMapper.selectAll(); + for (WxMall wxMall : wxMalls) { + String tenantId = wxMall.getTenantId(); + params.put("tenantId", tenantId); + //出场车数 + List> historylist = wxCarCmdLogMapper.queryHistory(params); + Long carOutCount = historylist.isEmpty() ? 0L : (Long) historylist.get(0).get("carcount"); + params.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PAY_MANUAL.getCode()); + //缴费车辆 + Long carPayFeeCount = wxCarCmdLogMapper.queryWeekCarPayCount(params); + //缴费金额 + List> weekCarPayHistoryList = wxCarCmdLogMapper.queryWeekCarPay(params); + BigDecimal fee = weekCarPayHistoryList.isEmpty() ? new BigDecimal(0) : (BigDecimal) weekCarPayHistoryList.get(0).get("fee"); + //新增会员 + List> carCountHistory = wxCUserCarMapper.queryCarCountHistory(params); + Long userCount = carCountHistory.isEmpty() ? 0L : (Long) carCountHistory.get(0).get("count"); + //新增停车会员 + WxCUserBasicInfoDto wxCUserBasicInfoDto = new WxCUserBasicInfoDto(); + wxCUserBasicInfoDto.setTenantId(tenantId); + wxCUserBasicInfoDto.setStartTime(date); + wxCUserBasicInfoDto.setEndTime(date); + Integer carUserCount = wxCUserCarMapper.countUser(wxCUserBasicInfoDto); + //已绑车辆 + Long todaybindcar = wxCUserCarMapper.queryCarCount(params); + + } + } } \ No newline at end of file diff --git a/mallinkService/src/main/java/com/iformall/mapper/WxCarCmdLogMapper.java b/mallinkService/src/main/java/com/iformall/mapper/WxCarCmdLogMapper.java index a25b72fb7..4ebc69474 100644 --- a/mallinkService/src/main/java/com/iformall/mapper/WxCarCmdLogMapper.java +++ b/mallinkService/src/main/java/com/iformall/mapper/WxCarCmdLogMapper.java @@ -14,9 +14,9 @@ public interface WxCarCmdLogMapper extends CommonMapper { List findList(WxCarCmdLog wxCarCmdLog); - List> queryHistory(HashMap params); + List> queryHistory(HashMap params); - List> queryTodayCar(HashMap params); + List> queryTodayCar(HashMap params); List> queryWeekCarPay(HashMap params); 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 4d60a1fb2..73b4a895d 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/DataTowerServiceImpl.java @@ -177,7 +177,7 @@ public class DataTowerServiceImpl implements DataTowerService { //今日车流量*********************************************** private Map carRunning(String tenantId) { HashMap carMap = new HashMap<>(); - HashMap paramsCar = new HashMap<>(); + HashMap paramsCar = new HashMap<>(); paramsCar.put("tenantId", tenantId); paramsCar.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PARK_OUT.getCode()); String startdate = DateUtils.getTimeBefore(30, new Date()); @@ -477,7 +477,7 @@ public class DataTowerServiceImpl implements DataTowerService { @Override public Map queryCar(String tenantId) { - HashMap params = new HashMap<>(); + HashMap params = new HashMap<>(); params.put("tenantId", tenantId); params.put("cmdType", EnumCarCmd.CAR_ETCP_CALLBACK_PARK_OUT.getCode()); String startdate = DateUtils.getTimeBefore(30, new Date());