/*
* 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);
}
分享到:
相关推荐
通过对PetShop 4.0源码的深入研究,开发者可以更好地理解.NET Web应用程序的开发流程,掌握常用的设计模式和技术,并为实际项目提供借鉴。尽管该项目已经有些年份,但其核心理念和设计原则在现代Web开发中仍然具有很...
"【WordPress主题】2022年最新版完整功能demo+插件v4.0 Bijoux - Handmade Crafts Jewelry WooCommerce Shop Bijoux - 手工制作工艺品珠宝Woocommerce Shop" ---------- 泰森云每天更新发布最新WordPress主题、HTML...
javashop3.0版本Mysql数据库源码
.NET Pet Shop 4.0 是一个经典的开源项目,旨在演示如何使用Microsoft的.NET框架和C#语言来构建一个完整的电子商务网站。这个项目不仅为开发者提供了一个学习.NET平台和C#编程的实际示例,而且展示了ASP.NET、ADO...
《深入剖析.NET Pet Shop 4.0项目源码》 .NET Pet Shop 4.0是一个经典的开源项目,它为开发者提供了深入理解.NET框架和Web应用程序开发的宝贵资源。这个项目旨在展示如何使用.NET Framework 4.0进行企业级应用开发...
《Pet Shop 4.0详解及C#源码解析》 Pet Shop 4.0是一个经典的应用程序示例,主要用于展示Microsoft .NET Framework的技术特性和最佳实践。这个项目以其清晰的架构、良好的代码组织和丰富的功能,成为了学习C#编程和...
《.NET Pet Shop 4.0源代码深度解析》 .NET Pet Shop 4.0是一个经典的学习和示例项目,它展示了如何使用Microsoft的.NET框架进行Web应用程序开发。这个项目在2008年推出,利用了Visual Studio 2008(VS2008)的强大...
【微软PetShop4.0源码加详解】是微软为开发者提供的一款开源示例应用,旨在展示如何使用ASP.NET技术构建一个完整的电子商务平台。PetShop4.0是这个项目的第四代版本,它不仅包含了源代码,还提供了详细的文档,帮助...
采用 Vite4.0 作为项目开发、打包工具(配置 Gzip 打包、TSX 语法、跨域代理……) 使用 Prettier 统一格式化代码,集成 Eslint、Stylelint 代码校验规范 使用 husky、lint-staged、commitlint、commitizen、cz-git ...
通过学习PetShop 4.0源码,开发者不仅可以掌握Java EE的基本技术,还能了解到如何将这些技术整合到一个实际项目中,从而提升自己的实战能力。同时,提供的学习资料可以作为理论指导,辅助理解源码背后的原理和设计...
《.NET Framework 2.0 分层架构:深入解析PetShop 4.0源码》 在.NET技术栈中,.NET Framework 2.0是一个里程碑版本,它为开发者提供了强大的开发工具和丰富的类库,使得构建高效、可扩展的应用程序成为可能。...
PetShop4.0源代码+详解 .NET Pet Shop4 应用程序的设计说明了构建企业 n 层 .NET 2.0 应用程序的最佳做法,这种应用程序可能需要支持各种数据库平台和部署方案。 .NET Pet Shop 4 项目的目标是: 工作效率:减少了...
Pet Shop 4.0源码提供了全面的示例代码,涵盖了多种编程技术,包括ASP.NET、ADO.NET以及业务逻辑层和数据访问层的设计。 1. ASP.NET:Pet Shop 4.0利用ASP.NET技术构建用户界面,展示了如何创建动态网页和交互式...
7. **源码分析**:通过研究Pet Shop的源码,开发者可以学习到如何组织项目的层次结构,如何编写高效且易于测试的代码,以及如何使用版本控制系统(如Git)进行协作开发。 8. **部署与安装**:提供的".NET Pet Shop ...
1. **ASP.NET Web Forms**:Pet Shop 4.0主要基于ASP.NET Web Forms框架构建,这是一种用于创建交互式Web应用程序的技术。它允许开发者通过拖放控件和事件驱动编程模型来构建页面,简化了UI设计和业务逻辑的集成。 ...
.NET Pet Shop 4.0是微软发布的一个经典示例应用,旨在展示.NET Framework 4.0及相关的开发技术。这个项目作为一个学习资源,为开发者提供了深入理解如何在.NET平台上构建可扩展、安全且高效的电子商务网站的机会。...
《.NET Pet Shop 4.0:一个深度剖析的.NET网站开发典范》 .NET Pet Shop 4.0是一个经典的开源项目,它为开发者提供了一个深入理解.NET Framework和Web应用程序开发的绝佳实例。这个项目旨在展示如何高效地构建、...
《Pet Shop 4.0安装程序及详解》 Pet Shop 4.0是一款经典的.NET Framework应用示例,它展示了如何构建一个完整的电子商务网站,包括购物车、产品展示、用户管理等多个功能模块。这个项目旨在教育开发者如何利用微软...