package com.zksy.property.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zksy.property.domain.ARefund;
import com.zksy.property.domain.vo.ARefundVo;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

/**
* @author Administrator
* @description 针对表【a_refund(退款信息表)】的数据库操作Service
* @createDate 2025-07-29 15:30:56
*/
public interface ARefundService extends IService<ARefund> {
    Page<ARefund> findByPage(long pageNum, long pageSize, String unit,String tenant,String generationDate);
    List<ARefund> getARefundList(String unit, String tenant, String generationDate);

    boolean removeBatchByIdsWithUrl(List<String> list);

    Page<ARefundVo> findByPageWithContract(long pageNum, long pageSize, String unit, String tenant, String contractNumber);
    Map<String, BigDecimal> calculateMonthlyRefundStatistics(int year);
    Map<String, BigDecimal> calculateQuarterlyRefundStatistics(int year);
    Map<String, BigDecimal> calculateYearlyRefundStatistics();
    List<Integer> getExistingRefundYears();
}
