package com.dy.pipIrrStatistics.card; import com.dy.common.aop.SsoAop; import com.dy.common.webUtil.BaseResponse; import com.dy.common.webUtil.BaseResponseUtils; import com.dy.common.webUtil.QueryResultVo; import com.dy.pipIrrGlobal.voSt.VoClientStatistics; import com.dy.pipIrrStatistics.card.qo.CommonQO; import com.dy.pipIrrStatistics.card.qo.StartStopDateQO; import com.dy.pipIrrStatistics.card.qo.TotalRechargeQO; import jakarta.validation.Valid; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springframework.validation.BindingResult; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.List; import java.util.Objects; /** * @author ZhuBaoMin * @date 2024-08-08 9:13 * @LastEditTime 2024-08-08 9:13 * @Description */ @Slf4j @RestController @RequestMapping(path="virtual-card") @RequiredArgsConstructor public class VirtualCardCtrl { private final VirtualCardSv virtualCardSv; /** * 指定时间段内注册虚拟卡的农户 * @param qo * @param bindingResult * @return */ @GetMapping(path = "/getRegisterVcClients") @SsoAop() public BaseResponse>> getRegisterVcClients(@Valid CommonQO qo, BindingResult bindingResult) { if(bindingResult != null && bindingResult.hasErrors()){ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } try { return BaseResponseUtils.buildSuccess(virtualCardSv.getRegisterVcClients(qo)); } catch (Exception e) { log.error("获取开卡记录异常", e); return BaseResponseUtils.buildException(e.getMessage()) ; } } /** * 指定时间段内注册总数量 * @param qo * @param bindingResult * @return */ @GetMapping(path = "/getRegisterCount") @SsoAop() public BaseResponse getRegisterCount(@Valid StartStopDateQO qo, BindingResult bindingResult) { if(bindingResult != null && bindingResult.hasErrors()){ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } try { return BaseResponseUtils.buildSuccess(virtualCardSv.getRegisterCount(qo)); } catch (Exception e) { log.error("获取开卡记录异常", e); return BaseResponseUtils.buildException(e.getMessage()) ; } } /** * 指定时间段充值总数量 * @param qo * @param bindingResult * @return */ @GetMapping(path = "/getRechargeCount") @SsoAop() public BaseResponse getRechargeCount(@Valid StartStopDateQO qo, BindingResult bindingResult) { if(bindingResult != null && bindingResult.hasErrors()){ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } try { return BaseResponseUtils.buildSuccess(virtualCardSv.getRechargeCount(qo)); } catch (Exception e) { log.error("获取开卡记录异常", e); return BaseResponseUtils.buildException(e.getMessage()) ; } } /** * 当前余额总量 * @return */ @GetMapping(path = "/getTotalBalance") @SsoAop() public BaseResponse getTotalBalance() { try { return BaseResponseUtils.buildSuccess(virtualCardSv.getTotalBalance()); } catch (Exception e) { log.error("获取开卡记录异常", e); return BaseResponseUtils.buildException(e.getMessage()) ; } } /** * 指定时间段内虚拟卡充值金额超过指定值的农户 * @param qo * @param bindingResult * @return */ @GetMapping(path = "/getLargeRechargeClients") @SsoAop() public BaseResponse>> getLargeRechargeClients(@Valid TotalRechargeQO qo, BindingResult bindingResult) { if(bindingResult != null && bindingResult.hasErrors()){ return BaseResponseUtils.buildFail(Objects.requireNonNull(bindingResult.getFieldError()).getDefaultMessage()); } try { return BaseResponseUtils.buildSuccess(virtualCardSv.getLargeRechargeClients(qo)); } catch (Exception e) { log.error("获取开卡记录异常", e); return BaseResponseUtils.buildException(e.getMessage()) ; } } }