wzy
2020-12-29 b90fe56ef4ac2f7f2645511eb9f06aa21bd9c7e3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package com.matrix.system.app.action;
 
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.pojo.PaginationVO;
import com.matrix.system.app.dto.BusinessesDto;
import com.matrix.system.app.vo.BusinessesDataShowVo;
import com.matrix.system.hive.action.util.QueryUtil;
import com.matrix.system.hive.bean.SysBusinessData;
import com.matrix.system.hive.dao.SysBusinessDataDao;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
/**
 * @author wzy
 * @date 2020-12-28
 **/
@Api(value = "ApiStatisticsAction", tags = "报表接口类")
@RestController
@RequestMapping(value = "/api/statistics")
public class ApiStatisticsAction {
 
    @Autowired
    private SysBusinessDataDao sysBusinessDataDao;
 
    @ApiOperation(value = "公司经营报表/门店经营报表")
    @ApiResponses({
            @ApiResponse(code = 200, message = "ok", response = BusinessesDataShowVo.class)
    })
    @PostMapping(value = "/findShopBusinessesData")
    public AjaxResult findShopBusinessesData(@RequestBody BusinessesDto businessesDto) {
        SysBusinessData sysBusinessData = new SysBusinessData();
        // 若shopId为空,则查询门店经营报表
        if (businessesDto.getShopId() == null) {
            sysBusinessData.setShopId(businessesDto.getShopId());
        }
        QueryUtil.setQueryLimitCom(sysBusinessData);
 
        if (BusinessesDto.DAY.equals(businessesDto.getType())) {
            sysBusinessData.setT1("%Y-%m-%d");
        } else {
            sysBusinessData.setT1("%Y-%m");
        }
        PaginationVO pageVo = new PaginationVO();
        pageVo.setOffset((businessesDto.getPageNum() - 1) * businessesDto.getPageSize());
        pageVo.setLimit(businessesDto.getPageSize());
 
        return AjaxResult.buildSuccessInstance(sysBusinessDataDao.selectApiBusinessDataInPage(sysBusinessData, pageVo), sysBusinessDataDao.selectApiBusinessDataTotal(sysBusinessData));
    }
}