package com.tofly.xrtygis.custom.controller;

import com.tofly.common.core.entity.ResultRespone;
import com.tofly.xrtygis.custom.service.LscreenService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * 智慧营销接口
 */
@RestController
@RequestMapping("/Lscreen")
@AllArgsConstructor
@Api(tags = "大屏展示_智慧营销接口")
public class LscreenController {

    private final LscreenService lscreenService;


//    @GetMapping("/GetUseWater")
//    @ApiOperation("用户统计")
//    public ResultRespone getUseWater(){
//        return ResultRespone.success(lscreenService.getUseWater());
//    }
//
//    @GetMapping("/GetUserCount")
//    @ApiOperation("近12月用户总数和增长数")
//    @ApiImplicitParams({
//            @ApiImplicitParam(name = "startMonth",value = "开始月份yyyyMM",required = false,dataType = "String"),
//            @ApiImplicitParam(name = "endMonth",value = "结束月份yyyyMM",required = false,dataType = "String")
//    })
//    public ResultRespone getUserCountByMonth(String startMonth,String endMonth){
//        return ResultRespone.success(lscreenService.getUserCount(startMonth,endMonth));
//    }
//
//
//
//    @GetMapping("/GetNearNumber")
//    @ApiOperation("售水量统计")
//    public ResultRespone getNearNumber(){
//
//        return ResultRespone.success(lscreenService.getNearNumber());
//    }
//
//    @GetMapping("/GetLargeUseWater")
//    @ApiOperation("大用户用水排名统计")
//    @ApiImplicitParams({
//            @ApiImplicitParam(name = "topNum",value = "大用户用水前几名，默认取前10名",required = false,dataType = "INTEGER")
//    })
//    public ResultRespone getLargeUseWater(Integer topNum){
//       if(topNum==null){
//            topNum=10;
//        }
//        return ResultRespone.success(lscreenService.getLargeUseWater(topNum));
//    }
//
//
//
//   /* @GetMapping("/GetUserYsXzAndMoney")
//    @ApiOperation("上月用水性质、多种分类的收费数据统计")
//    public ResultRespone getUserYsXzAndMoney(){
//        return ResultRespone.success(lscreenService.getUserYsXzAndMoney());
//    }*/
//
//    @GetMapping("/GetUserYsXzAndMoney")
//    @ApiOperation("用水性质、多种分类的收费数据统计，按照月份")
//    @ApiImplicitParams({
//            @ApiImplicitParam(name = "startMonth",value = "开始月份yyyyMM",required = false,dataType = "String"),
//            @ApiImplicitParam(name = "endMonth",value = "结束月份yyyyMM",required = false,dataType = "String"),
//    })
//    public ResultRespone GetUserYsXzAndMoney(String startMonth,String endMonth){
//        if(!StringUtil.isNotEmpty(startMonth) && !StringUtil.isNotEmpty(endMonth)){
//            Calendar calendar=Calendar.getInstance();
//            calendar.add(Calendar.MONTH, -1);
//            startMonth=CalendarHelper.getFormatDate(calendar.getTime(),"yyyyMM");
//            endMonth=CalendarHelper.getFormatDate(calendar.getTime(),"yyyyMM");
//        }
//        return ResultRespone.success(lscreenService.getUserYsXzAndMoney(startMonth,endMonth));
//    }
//
//
//
//   /* @GetMapping("/GetQf3Data")
//    @ApiOperation("欠费超过3个月数据统计")
//    public ResultRespone getQf3Data(){
//
//        return ResultRespone.success(lscreenService.getQf3Data());
//    }*/
//
//
//    @GetMapping("/GetQf3Data")
//    @ApiOperation("欠费统计统计，根据月份查询")
//    @ApiImplicitParams({
//            @ApiImplicitParam(name = "startMonth",value = "开始月份yyyyMM",required = false,dataType = "String"),
//            @ApiImplicitParam(name = "endMonth",value = "结束月份yyyyMM",required = false,dataType = "String"),
//    })
//    public ResultRespone getQf3Data(String startMonth,String endMonth){
//
//        return ResultRespone.success(lscreenService.getQfData(startMonth,endMonth));
//    }
//
//    @GetMapping("/GetLastSfQf")
//    @ApiOperation("上月收费，欠费统计")
//    public ResultRespone getLastSfQf(){
//        return ResultRespone.success(lscreenService.getLastSfQf());
//    }
//
//    @GetMapping("/MeterReadingRate")
//    @ApiOperation("抄表率统计")
//    @ApiImplicitParams({
//            @ApiImplicitParam(name = "startMonth",value = "开始月份yyyyMM",required = false,dataType = "String"),
//            @ApiImplicitParam(name = "endMonth",value = "结束月份yyyyMM",required = false,dataType = "String"),
//    })
//    public ResultRespone GetMeterReadingRate(String startMonth,String endMonth){
//
//        return ResultRespone.success(lscreenService.GetMeterReadingRate(startMonth,endMonth));
//    }
//
//
//
//    @GetMapping("/GetCollectionRate")
//    @ApiOperation("今年，去年，回款率统计")
//    public ResultRespone GetCollectionRate(){
//
//        return ResultRespone.success(lscreenService.GetCollectionRate());
//    }
//
//
//    @GetMapping("/GetNearPay")
//    @ApiOperation("今年，去年，收费金额统计")
//    public ResultRespone getNearPay(){
//
//        return ResultRespone.success(lscreenService.getNearPay());
//    }
//
//    @GetMapping("/GetqdPay")
//    @ApiOperation("近多少月收费方式")
//    @ApiImplicitParams({
//            @ApiImplicitParam(name = "startMonth",value = "开始月份yyyyMM",required = false,dataType = "String"),
//            @ApiImplicitParam(name = "endMonth",value = "结束月份yyyyMM",required = false,dataType = "String"),
//    })
//    public ResultRespone getqdPay(String startMonth,String endMonth){
//
//        return ResultRespone.success(lscreenService.getqdPay(startMonth,endMonth));
//    }
//
//    @PostMapping("/saveCustomerData")
//    @ApiOperation("按照年月同步营销有效用户总数")
//    @ApiImplicitParams({
//            @ApiImplicitParam(name = "recordMonth",value = "同步年月，yyyyMM格式，多个逗号分离",required = true,dataType = "String")
//    })
//    public ResultRespone saveCustomerData(String  recordMonth){
//        return ResultRespone.success(lscreenService.saveCustomerData(recordMonth));
//    }
//
//
//    @GetMapping("/userWaterType")
//    @ApiOperation("领导驾驶舱_用水类型占比统计")
//    public ResultRespone getUserWaterType(){
//        return ResultRespone.success(lscreenService.getUserWaterType());
//    }
//
//
//    @GetMapping("/salesWaterTotal")
//    @ApiOperation("智慧决策_售水量构成统计")
//    @ApiImplicitParams({
//            @ApiImplicitParam(name = "startMonth",value = "开始月份yyyyMM",required = false,dataType = "String"),
//            @ApiImplicitParam(name = "endMonth",value = "结束月份yyyyMM",required = false,dataType = "String"),
//    })
//    public ResultRespone getSalesWaterTotal(String startMonth,String endMonth){
//        return ResultRespone.success(lscreenService.getSalesWaterTotal(startMonth,endMonth));
//    }
//
//    @GetMapping("/getPayInfo")
//    @ApiOperation("智慧决策_今年收费数据展示")
//    public ResultRespone getPayInfo(){
//        return ResultRespone.success(lscreenService.getPayInfo());
//    }
//
//    @GetMapping("/getPayMoneyInfo")
//    @ApiOperation("智慧决策_年度同期收费情况")
//    public ResultRespone getPayMoneyInfo(){
//        return ResultRespone.success(lscreenService.getPayMoneyInfo());
//    }
//
//
//    @GetMapping("/getPayUserInfo")
//    @ApiOperation("智慧决策_年度同期用户收费情况")
//    public ResultRespone getPayUserInfo(){
//        return ResultRespone.success(lscreenService.getPayUserInfo());
//    }
//
//    @GetMapping("/getWaterType")
//    @ApiOperation("智慧运营_用户水表类型占比统计")
//    public ResultRespone getWaterType(){
//        return ResultRespone.success(lscreenService.getWaterType());
//    }
//
//    @GetMapping("/getSalesWaterCount")
//    @ApiOperation("慧决策_近12月生产销售水量")
//    @ApiImplicitParams({
//            @ApiImplicitParam(name = "startMonth",value = "开始月份yyyyMM",required = false,dataType = "String"),
//            @ApiImplicitParam(name = "endMonth",value = "结束月份yyyyMM",required = false,dataType = "String"),
//    })
//    public ResultRespone getSalesWaterCount(String  startMonth,String endMonth){
//
//        return ResultRespone.success(lscreenService.getSalesWaterCount(startMonth,endMonth));
//    }
//
//    @GetMapping("/getLastMonthSalesWater")
//    @ApiOperation("慧决策_上月生产销售水量")
//    public ResultRespone getLastMonthSalesWater(){
//        return ResultRespone.success(lscreenService.getLastMonthSalesWater());
//    }

    @GetMapping("/getUserAndMoneyReport")
    @ApiOperation("领导驾驶舱_今年/去年同期营收总额；当前/去年同期用户数量，水厂数量")
    public ResultRespone getUserAndMoneyReport(){
        return ResultRespone.success(lscreenService.getUserAndMoneyReport());
    }

}
