TdCAcctPersonDao.java 3.07 KB
/**
 * 
 */
package com.zteits.pay.dao;

import java.util.List;

import com.github.pagehelper.PageInfo;
import com.zteits.clouds.api.dto.pay.AcctPersonDTO;
import com.zteits.clouds.api.dto.pay.account.dto.AccountInOutDetailForPageDTO;
import com.zteits.clouds.api.dto.pay.account.param.AccoutRecordDetailRequest;
import com.zteits.clouds.api.dto.pay.account.param.AcctInOutDetailForPageRequest;
import com.zteits.clouds.api.dto.pay.dto.AcctPersonForStoreCarDTO;
import com.zteits.clouds.api.dto.pay.param.*;
import com.zteits.pay.domain.TdCAcctPerson;

/**
 * @author hxz
 *
 */
public interface TdCAcctPersonDao {
	/**
	 * 插入
	 * @param acctPersonDo
	 * @return
     */
	Integer insertAcctPerson(TdCAcctPerson acctPersonDo);


	/**
	 * 修改账户信息
	 * @param acctPersonDo
	 * @return
     */
	Boolean updateAcctPerson(TdCAcctPerson acctPersonDo);

	/**
	 * 获取账户信息
	 * @param acctPersonDo
	 * @return
     */
	TdCAcctPerson getAcctPerson(TdCAcctPerson acctPersonDo);


	/**
	 * 通过custIdList 和账户类型查询个人账户信息.<br/>
	 * @param
	 * @return
	 * @Author: xiejianpeng
	 * @Date: 2018/9/14 14:51
	 *
	 */
	List<TdCAcctPerson> queryAcctPersonByCustIdAndAcctType(QueryAcctPersonByCustIdsAndAcctTypeReq request);

	/**
	 * 根据custId客户账户,组织Id分组
	 * @author wangbiao
	 * @date 2018/11/21 16:28
	 * @param [custId]
	 * @return java.util.List<com.zteits.pay.domain.TdCAcctPerson>
	 */
	List<AcctPersonDTO> getAcctPersonGroupByOrgId(QueryAcctPersonByCustIdsAndAcctTypeReq request);

	/**
	 * 根据 custId,orgId查询客户账户信息,账户类型分组
	 * @author wangbiao
	 * @date 2018/11/21 16:28
	 * @param [custId, orgId]
	 * @return java.util.List<com.zteits.pay.domain.TdCAcctPerson>
	 */
	List<TdCAcctPerson> getAcctPersonGroupByAcctType(QueryAcctPersonByCustIdsAndAcctTypeReq request);

	/**
	 * 根据类型(赠送金额,赠送代金券)增加个人对于账户金额
	 * @param custId
	 * @return
	 */
	TdCAcctPerson addFeeForCustPresentAcct(Long orgId,Long rechargeFee,int accType,String custId);

	/**
	 *
	 * @param
	 * @return
	 * @Author: xiejianpeng
	 * @Date: 2019/1/17 11:53
	 *
	 */
	PageInfo<AccountInOutDetailForPageDTO> queryAccountInOutDetailsForPage(AcctInOutDetailForPageRequest requestQ);

	/**
	 * 通过账户 ID 查询个人账户信息
	 * @Auther: wangfs
	 * @param
	 * @return
	 */
	TdCAcctPerson getAcctPersonByAcctId(String  acctId);

	/**
	 * 通过账户 ID 查询个人账户信息
	 * @Auther: wangfs
	 * @param
	 * @return
	 */
	TdCAcctPerson getAcctPersonByAcctIdAndAcctType(String  acctId,List<Integer> acctTypes);

	/**
	 * 个人账户金额加或者减操作
	 * @Auther: wangfs
	 * @param
	 * @retur
	 */
	Integer addOrsubAcctPersonFeeByAcctId(AddOrsubAcctPersonFeeByAcctIdReq req);

	/**
	 *
	 * @param 
	 * @return
	 * @Author: xiejianpeng
	 * @Date: 2019/12/19 18:30
	 *
	 */
    PageInfo<AcctPersonForStoreCarDTO> queryAcctPersonStoreCarForPage(QueryAcctPersonForPageReq request);

    /**根据订单编号查询详情*/
    List<AccountInOutDetailForPageDTO> queryAccountRecordDetails(AccoutRecordDetailRequest req);
}