package com.opentravelsoft.providers; import java.math.BigDecimal; import java.util.Date; import java.util.List; import com.opentravelsoft.util.LabelValueBean; import com.opentravelsoft.EbizException; import com.opentravelsoft.entity.Booking; import com.opentravelsoft.entity.Customer; import com.opentravelsoft.entity.TblUserPayOL; import com.opentravelsoft.entity.finance.Income; import com.opentravelsoft.entity.product.Remind; import com.opentravelsoft.entity.product.Warrant; public interface IncomeDao extends GenericDao<Income, Integer> { /** * 取得客户应收帐款 * * @param customerId * @return */ public List<Booking> getIncomeBookings(int customerId); /** * 未付清款的订单 * * @param proCd * @param cityId * @param stDate * @param endDate * @return */ public List<Booking> searchIncome(String proCd, String cityId, Integer customerId, Date stDate, Date endDate); /** * 保存收款单 * * @param gathering * @return */ public int saveIncome(Income gathering); /** * 查询收款账单 * * @param teamId 产品所属部门 * @param customerId 客户ID * @param startDate 收款日期开始 * @param endDate 收款日期截止 * @param startMon * @param endMon * @return */ public List<Income> findIncome(Integer teamId, String customerId, Date startDate, Date endDate, double startMon, double endMon); /** * 查询客户付款历史<br> * [tourismwork-search] * * @param customerId * @param paymentDateStart * @param paymentDateEnd * @param payGatherStart * @param payGatherEnd * @return */ public List<Income> getGatheringList(Integer customerId, Date paymentDateStart, Date paymentDateEnd, double payGatherStart, double payGatherEnd); /** * 取消收款单 * * @param incomeId * @return */ public int cancelIncome(int incomeId); /** * 取得收款信息<br> * [tourismwork-search] * * @param incomeId * @return */ public Income getGathering(int incomeId); /** * 更新收款信息 * * @param gather * @return */ public int updateIncome(Income gather); /** * 取得收款账对应订单信息 * * @param incomeId * @return */ public List<Booking> getUnpayList(int incomeId); // ------------------------------------------------------------------------- /** * 国内应收 团出发前n天 未收款客户提醒 * * @param daynum * @return */ public List<Remind> getIncomeInBand(int daynum); /** * 查询该团所有供应商 * * @param TourNo * @return */ public List<Customer> getCusByTour(String TourNo); /** * 设置订单担保 * * @param customerId 客户ID * @param tourNo 团号NO * @param warrant 担保单 * @return */ public int warrantSubmit(int customerId, String tourNo, Warrant warrant); /** * 取得订单的客户付款记录 * * @param bookingNo 订单No * @return */ public List<Income> getPayments(String bookingNo); /** * 付款方式 * * @return */ public List<LabelValueBean> getPaymentTypes(); /** * 网上支付 * * @param orderId 订单号 * @param paymentMode 付款方式 * @param amount 金额 * @param moneyType 币种 * @param paymentNo 付款单号 * @param inverceNo 发票号 * @return * @throws EbizException */ public int netPay(String orderId, String paymentMode, BigDecimal amount, String moneyType, String paymentNo, String inverceNo) throws EbizException; int insertPayer(TblUserPayOL payer); }