jyy
2020-12-02 7efbe93bdb75762f50a1d2d104e05a9e4db49ea2
zq-erp/src/main/java/com/matrix/system/hiveErp/action/CustomerAnalysis.java
@@ -1,7 +1,14 @@
package com.matrix.system.hiveErp.action;
import com.matrix.core.constance.MatrixConstance;
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.tools.DateUtil;
import com.matrix.core.tools.WebUtil;
import com.matrix.system.common.bean.SysUsers;
import com.matrix.system.hive.bean.SysShopInfo;
import com.matrix.system.hive.dao.SysShopInfoDao;
import com.matrix.system.hive.service.SysShopInfoService;
import com.matrix.system.hiveErp.Vo.SeriesVo;
import com.matrix.system.hiveErp.Vo.StatisticsParamVo;
import com.matrix.system.hiveErp.Vo.StatisticsTimeDaoParam;
import com.matrix.system.hiveErp.dao.TjVipSumDao;
@@ -20,12 +27,17 @@
    @Autowired
    TjVipSumDao tjVipSumDao;
    @Autowired
    SysShopInfoDao shopInfoDao;
    /**
     * 到店次数趋势统计
     *
     * @return
     */
    @RequestMapping(value = "/vipVisitTendency ")
    @RequestMapping(value = "/vipVisitTendency")
    public @ResponseBody
    AjaxResult vipVisit(StatisticsParamVo statisticsParam) {
        AjaxResult result = new AjaxResult();
@@ -42,6 +54,38 @@
        result.setStatus(AjaxResult.STATUS_SUCCESS);
        return result;
    }
 */
    @RequestMapping(value = "vipVisitCompare")
    public @ResponseBody  AjaxResult vipVisitCompare(StatisticsParamVo statisticsParam) {
        SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
        AjaxResult result = new AjaxResult();
        //计算横坐标
        List<Date> xAxis = StatisticsTimeUtil.getTimeSpace(statisticsParam.getBeginTime(), statisticsParam.getEndTime(), statisticsParam.getStatisticsUnit());
        //获取所有门店
        List<SysShopInfo> shops= shopInfoDao.selectShopInfo(user.getCompanyId());
        List<SeriesVo> series=new ArrayList<>();
        String[]  legendData=new String[shops.size()];
        int i=0;
        for(SysShopInfo shop: shops){
            legendData[i++]=shop.getShopName();
            SeriesVo storeInfoSeries=new SeriesVo();
            storeInfoSeries.setName(shop.getShopName());
            Map<String, Integer> yAxisMap = tjVipSumDao.countVisitByTime(buidParam(xAxis),shop.getId());
            storeInfoSeries.setData(getSeries(yAxisMap));
            series.add(storeInfoSeries);
        }
        //构造返回对象
        Map<Object,Object> data=new HashMap<>();
        data.put("legendData",legendData);
        data.put("series",series);
        data.put("xAxis", getFormartDateList(xAxis,statisticsParam));
        result.setMapInfo(data);
        result.setStatus(AjaxResult.STATUS_SUCCESS);
        return result;
    }
    /**
     * 获取map中的值为数组