shop++4.0源码

/*
* Copyright 2005-2015 shopxx.net. All rights reserved.
* Support: http://www.shopxx.net
* License: http://www.shopxx.net/license
*/
package net.shopxx.service;

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

import net.shopxx.Page;
import net.shopxx.Pageable;
import net.shopxx.entity.Admin;
import net.shopxx.entity.DepositLog;
import net.shopxx.entity.Member;
import net.shopxx.entity.PointLog;

/**
* Service - 会员
*
* @author SHOP++ Team
* @version 4.0
*/
public interface MemberService extends BaseService<Member, Long> {

/**
* 判断用户名是否存在
*
* @param username
*            用户名(忽略大小写)
* @return 用户名是否存在
*/
boolean usernameExists(String username);

/**
* 判断用户名是否禁用
*
* @param username
*            用户名(忽略大小写)
* @return 用户名是否禁用
*/
boolean usernameDisabled(String username);

/**
* 判断E-mail是否存在
*
* @param email
*            E-mail(忽略大小写)
* @return E-mail是否存在
*/
boolean emailExists(String email);

/**
* 判断E-mail是否唯一
*
* @param previousEmail
*            修改前E-mail(忽略大小写)
* @param currentEmail
*            当前E-mail(忽略大小写)
* @return E-mail是否唯一
*/
boolean emailUnique(String previousEmail, String currentEmail);

/**
* 查找会员
*
* @param loginPluginId
*            登录插件ID
* @param openId
*            openID
* @return 会员,若不存在则返回null
*/
Member find(String loginPluginId, String openId);

/**
* 根据用户名查找会员
*
* @param username
*            用户名(忽略大小写)
* @return 会员,若不存在则返回null
*/
Member findByUsername(String username);

/**
* 根据E-mail查找会员
*
* @param email
*            E-mail(忽略大小写)
* @return 会员,若不存在则返回null
*/
List<Member> findListByEmail(String email);

/**
* 查找会员分页
*
* @param rankingType
*            排名类型
* @param pageable
*            分页信息
* @return 会员分页
*/
Page<Member> findPage(Member.RankingType rankingType, Pageable pageable);

/**
* 判断会员是否登录
*
* @return 会员是否登录
*/
boolean isAuthenticated();

/**
* 获取当前登录会员
*
* @return 当前登录会员,若不存在则返回null
*/
Member getCurrent();

/**
* 获取当前登录会员
*
* @param lock
*            是否锁定
* @return 当前登录会员,若不存在则返回null
*/
Member getCurrent(boolean lock);

/**
* 获取当前登录用户名
*
* @return 当前登录用户名,若不存在则返回null
*/
String getCurrentUsername();

/**
* 增加余额
*
* @param member
*            会员
* @param amount
*            值
* @param type
*            类型
* @param operator
*            操作员
* @param memo
*            备注
*/
void addBalance(Member member, BigDecimal amount, DepositLog.Type type, Admin operator, String memo);

/**
* 增加积分
*
* @param member
*            会员
* @param amount
*            值
* @param type
*            类型
* @param operator
*            操作员
* @param memo
*            备注
*/
void addPoint(Member member, long amount, PointLog.Type type, Admin operator, String memo);

/**
* 增加消费金额
*
* @param member
*            会员
* @param amount
*            值
*/
void addAmount(Member member, BigDecimal amount);

}

猜你喜欢

转载自incle67.iteye.com/blog/2249848