package com.crm.ucard.service;

import com.crm.rely.backend.core.entity.custom.info.*;
import com.crm.rely.backend.exception.ServiceException;

import java.math.BigDecimal;

/**
 * @program: crm-backend
 * @description:
 * @author: houn
 * @create: 2019-07-25 16:12
 */
public interface CustomInfoService {

    /**
     * 用户登录
     *
     * @param entity
     * @return
     * @throws ServiceException
     */
    InfoEntity login(CustomInfoLoginEntity entity) throws ServiceException;

    /**
     * 未登录修改密码发送邮件
     */
    void updatePasswordSendEmail(CustomUpdatePasswordSendEmailEntity entity) throws ServiceException;

    /**
     * 未登录根据邮件修改密码
     */
    void updatePassword(CustomUpdateEmailPasswordEntity entity) throws ServiceException;

    BigDecimal getBalance(Long id) throws ServiceException;

    /**
     * 登录状态下修改密码
     *
     * @param entity
     * @throws ServiceException
     */
    void updatePassword(CustomUpdateLoginPasswordEntity entity) throws ServiceException;

    int getApplyReductionNum(Long customId) throws ServiceException;

}
