package cn.hnthyy.thmz.service.his.mz;

import cn.hnthyy.thmz.entity.his.mz.MzDepositFile;

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

public interface MzDepositFileService {
    /**
     * 新增缴费方式记录
     * @param mzDepositFile
     * @return
     */
    int saveMzDepositFile(MzDepositFile mzDepositFile);


    /**
     * 批量保存缴费方式记录
     *
     * @param mzDepositFileList
     * @return
     */
    int batchSaveMzDepositFile(List<MzDepositFile> mzDepositFileList);

    /**
     * 根据病人就诊次数和编号查询缴费方式明细
     * @param mzDepositFile
     * @return
     */
    List<MzDepositFile> queryMzDepositFile(MzDepositFile mzDepositFile);

    /**
     * 判断手机自助缴费平台对应的流水号有无成功缴费
     * @param psordnum
     * @param agtordnum
     * @return
     */
    MzDepositFile queryMzDepositFileByAgtordnum(String psordnum,String agtordnum,String tableName);


    /**
     * 根据日期统计当天的收费总额
     * @param beginDate
     * @param endDate
     * @return
     */
    BigDecimal queryAmount(Date beginDate, Date endDate);


    /**
     * 按照日期分组查询收费数与金额
     * @param beginDate
     * @param endDate
     * @param payMark
     * @return
     */
    List<Map<String, Object>> countAndAmount(Date beginDate, Date endDate, String payMark);


    /**
     * 查询手机自助缴费的订单信息
     * @param mzDepositFile
     * @return
     */
    List<Map<String, Object>> queryMzDepositFileForZZ(MzDepositFile mzDepositFile);

}
