package com.doumee.cloud.admin;
|
|
import com.doumee.api.BaseController;
|
import com.doumee.config.annotation.CloudRequiredPermission;
|
import com.doumee.core.annotation.pr.PreventRepeat;
|
import com.doumee.core.model.ApiResponse;
|
import com.doumee.core.utils.Constants;
|
import com.doumee.dao.business.dto.YwConditionerReportQueryDTO;
|
import com.doumee.dao.business.dto.YwConditionerUsageReportPageDTO;
|
import com.doumee.service.business.YwConditionerReportService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiOperation;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import javax.servlet.http.HttpServletResponse;
|
import java.util.List;
|
import java.util.Map;
|
|
@Api(tags = "空调用量数据报表")
|
@RestController
|
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX + "/business/ywConditionerReport")
|
public class YwConditionerReportCloudController extends BaseController {
|
|
@Autowired
|
private YwConditionerReportService reportService;
|
|
@ApiOperation("透视分页查询")
|
@PostMapping("/page")
|
@CloudRequiredPermission("business:ywconditionerreport:query")
|
public ApiResponse<YwConditionerUsageReportPageDTO> findPage(@RequestBody YwConditionerReportQueryDTO query,
|
@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
|
return ApiResponse.success(reportService.findPage(query));
|
}
|
|
@PreventRepeat
|
@ApiOperation("同步用量")
|
@PostMapping("/syncUsage")
|
@CloudRequiredPermission("business:ywconditionerreport:sync")
|
public ApiResponse<String> syncUsage(@RequestBody YwConditionerReportQueryDTO query,
|
@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
|
return ApiResponse.success(reportService.syncUsage(query));
|
}
|
|
@ApiOperation("商户下拉")
|
@GetMapping("/merchantOptions")
|
@CloudRequiredPermission("business:ywconditionerreport:query")
|
public ApiResponse<List<Map<String, Object>>> merchantOptions(@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
|
return ApiResponse.success(reportService.merchantOptions());
|
}
|
|
@ApiOperation("导出Excel")
|
@PostMapping("/exportExcel")
|
@CloudRequiredPermission("business:ywconditionerreport:exportExcel")
|
public void exportExcel(@RequestBody YwConditionerReportQueryDTO query,
|
HttpServletResponse response,
|
@RequestHeader(Constants.HEADER_USER_TOKEN) String token) {
|
reportService.exportExcel(query, response);
|
}
|
}
|