package com.jsowell.pile.service;

import com.jsowell.pile.domain.AdapayMemberAccount;

import java.util.List;

public interface AdapayMemberAccountService {

    int insert(AdapayMemberAccount record);

    int insertOrUpdate(AdapayMemberAccount record);

    int insertOrUpdateSelective(AdapayMemberAccount record);

    int insertSelective(AdapayMemberAccount record);

    AdapayMemberAccount selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(AdapayMemberAccount record);

    int updateByPrimaryKey(AdapayMemberAccount record);

    int updateBatch(List<AdapayMemberAccount> list);

    int batchInsert(List<AdapayMemberAccount> list);


    /**
     * 查询【请填写功能名称】列表
     *
     * @param adapayMemberAccount 【请填写功能名称】
     * @return 【请填写功能名称】集合
     */
    List<AdapayMemberAccount> selectAdapayMemberAccountList(AdapayMemberAccount adapayMemberAccount);

    List<AdapayMemberAccount> selectAdapayMemberAccountList(String merchantId);

    /**
     * 新增【请填写功能名称】
     *
     * @param adapayMemberAccount 【请填写功能名称】
     * @return 结果
     */
    int insertAdapayMemberAccount(AdapayMemberAccount adapayMemberAccount);

    /**
     * 修改【请填写功能名称】
     *
     * @param adapayMemberAccount 【请填写功能名称】
     * @return 结果
     */
    int updateAdapayMemberAccount(AdapayMemberAccount adapayMemberAccount);

    /**
     * 批量删除【请填写功能名称】
     *
     * @param ids 需要删除的【请填写功能名称】主键集合
     * @return 结果
     */
    int deleteAdapayMemberAccountByIds(List<String> ids);

    AdapayMemberAccount selectByMerchantId(String merchantId);

    AdapayMemberAccount selectByMemberId(String memberId);


    void updateAdapayMemberAccountByMemberId(AdapayMemberAccount adapayMemberAccount);

    AdapayMemberAccount getDefault();

    /**
     * 根据运营商id逻辑删除审核未通过的汇付会员账户
     * @param merchantId
     * @return
     */
    int deleteAuditFailed(String merchantId);

}
