基于javaweb的会员卡积分管理系统(java+jsp+javascript+html+mysql)

基于javaweb的会员卡积分管理系统(java+jsp+javascript+html+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

20220819205451

20220819205452

20220819205453

20220819205454

20220819205455

20220819205456

基于javaweb+mysql的会员卡积分管理系统(java+JSP+JavaScript+HTML+Mysql)

项目介绍

管理员角色包含以下功能: 登录,系统用户管理,修改后台登录密码,会员管理,添加会员,注册用户管理,会员卡管理,添加会员卡,会员卡充值,商品管理,会员积分统计,留言管理,信息统计图,积分兑换商品等功能。

用户角色包含以下功能: 登录,登录后页面,修改密码,修改详细资料,留言板等功能。

环境需要

1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。 2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA; 3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可 4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;  5.数据库:MySql 5.7版本;

技术栈

HTML+CSS+JavaScript+jsp+mysql

使用说明

  1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/login.jsp 登录

后台用户管理控制器:

/**

  • 后台用户管理控制器

  • @author yy

*/

@RequestMapping(“/admin/user”)

@Controller

public class UserController {

@Autowired

private UserService userService;

@Autowired

private RoleService roleService;

@Autowired

private OperaterLogService operaterLogService;

/**

  • 用户列表页面

  • @param model

  • @param user

  • @param pageBean

  • @return

*/

@RequestMapping(value=“/list”)

public String list(Model model, User user, PageBean pageBean){

model.addAttribute(“title”, “用户列表”);

model.addAttribute(“username”, user.getUsername());

model.addAttribute(“pageBean”, userService.findList(user, pageBean));

return “admin/user/list”;

/**

  • 新增用户页面

  • @param model

  • @return

*/

@RequestMapping(value=“/add”,method=RequestMethod.GET)

public String add(Model model){

model.addAttribute(“roles”, roleService.findAll());

return “admin/user/add”;

/**

  • 用户添加表单提交处理

  • @param user

  • @return

*/

@RequestMapping(value=“/add”,method=RequestMethod.POST)

@ResponseBody

public Result add(User user){

//用统一验证实体方法验证是否合法

CodeMsg validate = ValidateEntityUtil.validate(user);

if(validate.getCode() != CodeMsg.SUCCESS.getCode()){

return Result.error(validate);

if(user.getRole() == null || user.getRole().getId() == null){

return Result.error(CodeMsg.ADMIN_USER_ROLE_EMPTY);

//判断用户名是否存在

if(userService.isExistUsername(user.getUsername(), 0l)){

return Result.error(CodeMsg.ADMIN_USERNAME_EXIST);

//到这说明一切符合条件,进行数据库新增

if(userService.save(user) == null){

return Result.error(CodeMsg.ADMIN_USE_ADD_ERROR);

operaterLogService.add(“添加用户,用户名:” + user.getUsername());

return Result.success(true);

/**

  • 用户编辑页面

  • @param model

  • @return

*/

@RequestMapping(value=“/edit”,method=RequestMethod.GET)

public String edit(Model model,@RequestParam(name=“id”,required=true)Long id){

model.addAttribute(“roles”, roleService.findAll());

model.addAttribute(“user”, userService.find(id));

return “admin/user/edit”;

/**

  • 编辑用户信息表单提交处理

  • @param user

  • @return

*/

@RequestMapping(value=“/edit”,method=RequestMethod.POST)

@ResponseBody

public Result edit(User user){

//用统一验证实体方法验证是否合法

CodeMsg validate = ValidateEntityUtil.validate(user);

if(validate.getCode() != CodeMsg.SUCCESS.getCode()){

return Result.error(validate);

if(user.getRole() == null || user.getRole().getId() == null){

return Result.error(CodeMsg.ADMIN_USER_ROLE_EMPTY);

if(user.getId() == null || user.getId().longValue() <= 0){

return Result.error(CodeMsg.ADMIN_USE_NO_EXIST);

if(userService.isExistUsername(user.getUsername(), user.getId())){

return Result.error(CodeMsg.ADMIN_USERNAME_EXIST);

//到这说明一切符合条件,进行数据库保存

User findById = userService.find(user.getId());

//讲提交的用户信息指定字段复制到已存在的user对象中,该方法会覆盖新字段内容

BeanUtils.copyProperties(user, findById, “id”,“createTime”,“updateTime”);

if(userService.save(findById) == null){

return Result.error(CodeMsg.ADMIN_USE_EDIT_ERROR);

operaterLogService.add(“编辑用户,用户名:” + user.getUsername());

return Result.success(true);

/**

  • 删除用户

  • @param id

  • @return

*/

@RequestMapping(value=“/delete”,method=RequestMethod.POST)

@ResponseBody

public Result delete(@RequestParam(name=“id”,required=true)Long id){

try {

userService.delete(id);

} catch (Exception e) {

return Result.error(CodeMsg.ADMIN_USE_DELETE_ERROR);

operaterLogService.add(“添加用户,用户ID:” + id);

return Result.success(true);

后台角色管理控制器:

/**

  • 后台角色管理控制器

  • @author yy

*/

@RequestMapping(“/admin/role”)

@Controller

public class RoleController {

private Logger log = LoggerFactory.getLogger(RoleController.class);

@Autowired

private MenuService menuService;

@Autowired

private OperaterLogService operaterLogService;

@Autowired

private RoleService roleService;

/**

  • 分页搜索角色列表

  • @param model

  • @param role

  • @param pageBean

  • @return

*/

@RequestMapping(value=“/list”)

public String list(Model model, Role role, PageBean pageBean){

model.addAttribute(“title”, “角色列表”);

model.addAttribute(“name”, role.getName());

model.addAttribute(“pageBean”, roleService.findByName(role, pageBean));

return “admin/role/list”;

/**

  • 角色添加页面

  • @param model

  • @return

*/

@RequestMapping(value=“/add”,method=RequestMethod.GET)

public String add(Model model){

List

findAll = menuService.findAll();

model.addAttribute(“topMenus”, MenuUtil.getTopMenus(findAll));

model.addAttribute(“secondMenus”,MenuUtil.getSecondMenus(findAll));

model.addAttribute(“thirdMenus”,MenuUtil.getThirdMenus(findAll));

return “admin/role/add”;

/**

  • 角色添加表单提交处理

  • @param role

  • @return

*/

@RequestMapping(value=“/add”,method=RequestMethod.POST)

@ResponseBody

public Result add(Role role){

//用统一验证实体方法验证是否合法

CodeMsg validate = ValidateEntityUtil.validate(role);

if(validate.getCode() != CodeMsg.SUCCESS.getCode()){

return Result.error(validate);

if(roleService.save(role) == null){

return Result.error(CodeMsg.ADMIN_ROLE_ADD_ERROR);

log.info(“添加角色【”+role+“】”);

operaterLogService.add(“添加角色【”+role.getName()+“】”);

return Result.success(true);

/**

  • 角色编辑页面

  • @param id

  • @param model

  • @return

*/

@RequestMapping(value=“/edit”,method=RequestMethod.GET)

public String edit(@RequestParam(name=“id”,required=true)Long id,Model model){

List

findAll = menuService.findAll();

model.addAttribute(“topMenus”,MenuUtil.getTopMenus(findAll));

model.addAttribute(“secondMenus”,MenuUtil.getSecondMenus(findAll));

model.addAttribute(“thirdMenus”,MenuUtil.getThirdMenus(findAll));

Role role = roleService.find(id);

model.addAttribute(“role”, role);

model.addAttribute(“authorities”,JSONArray.toJSON(role.getAuthorities()).toString());

return “admin/role/edit”;

/**

  • 角色修改表单提交处理

  • @param request

  • @param role

  • @return

*/

@RequestMapping(value=“/edit”,method=RequestMethod.POST)

@ResponseBody

public Result edit(Role role){

//用统一验证实体方法验证是否合法

CodeMsg validate = ValidateEntityUtil.validate(role);

if(validate.getCode() != CodeMsg.SUCCESS.getCode()){

return Result.error(validate);

Role existRole = roleService.find(role.getId());

if(existRole == null){

return Result.error(CodeMsg.ADMIN_ROLE_NO_EXIST);

existRole.setName(role.getName());

existRole.setRemark(role.getRemark());

existRole.setStatus(role.getStatus());

existRole.setAuthorities(role.getAuthorities());

if(roleService.save(existRole) == null){

return Result.error(CodeMsg.ADMIN_ROLE_EDIT_ERROR);

log.info(“编辑角色【”+role+“】”);

operaterLogService.add(“编辑角色【”+role.getName()+“】”);

return Result.success(true);

/**

  • 删除角色

  • @param request

  • @param id

  • @return

*/

@RequestMapping(value=“delete”,method=RequestMethod.POST)

@ResponseBody

public Result delete(@RequestParam(name=“id”,required=true)Long id){

try {

roleService.delete(id);

} catch (Exception e) {

// TODO: handle exception

return Result.error(CodeMsg.ADMIN_ROLE_DELETE_ERROR);

log.info(“编辑角色ID【”+id+“】”);

operaterLogService.add(“删除角色ID【”+id+“】”);

return Result.success(true);


首创的会员激励机制,超越传统会员管理系统被动的消费积分管理会员信息管理等事务性管理,利用会员销售提成、积分抽奖等激励手段,推动会员增长,推动销售飚升。 业务员发展1个种子会员,此会员介绍10-20个新会员;这10-20个新会员每人再介绍10-20个新会员。这样一级级地发展,仅仅只需要4级,会员就发展到十几万人。 主要功能介绍 会员管理 业务员发展种子会员,用提成奖励机制,促使会员进入自动繁殖式发展。 会员添加 记录会员的引荐人,该会员消费,给引荐人一定提成奖励。 记录会员姓名、会员卡号、手机号三个关键数据和会员联络信息。 手机号和会员卡号作为会员识别会员身份的标识。特别是本系统可以用手机号替代会员卡,省去了会员带卡出门的麻烦,为会员广泛欢迎。 会员消费 会员持手机或会员卡进行消费,记录会员消费积分。 消费收款和超市销售收款类似,可以现金支付、储值支付及其他手段支付,默认储值支付优先,可根据需要调整。支付后计算找零,打印消费小票等。 会员消费会记录销售人的业绩,一般情况默认会员推荐人为销售人,特殊情况可更改销售人。 计次消费 会员购买计次服务项目,一次性付款,不定时使用服务。计次服务享受消费积分,记录销售人业绩。 积分兑换 用消费积分兑换服务、商品。也可转换成会员储值,需要是再消费。 积分抽奖 用积分参加抽奖,获得奖金或奖品。奖金奖品的设置可设立大奖吸引会员参加。抽奖原理的彩票抽奖类似。 快速积分 根据需要给会员赠送积分。如会员参加活动、会员推荐新会员会员介绍业务等等,不发生消费也可获得积分积分设置 负责人可以设置积分比例,比如储值一元获得13积分,消费一元获得27积分,可根据需要设置积分比例。 会员储值 会员可以通过现金、转帐等方式,向个人帐户充值。充值消费获得双倍积分。充值是获得一次积分,用充值消费时又获得一次积分。充值消费避免找零的麻烦。 储值提现 储值余额若不再消费,可以通过提现的方式提出现金。量大也可以转帐提现。 储值明细 会员可以查询储值明细,查询帐户余额。 会员管理会员进行审核、对不遵守协议的会员可以锁定。修改、删除会员信息。需要注意的是,有消费信息的会员尽量不要删除,用锁定的方式保留会员消费信息。 会员提成 会员介绍推荐新会员入员,新会员消费,给推荐人一定比例的提成。激励会员推荐更多的新会员。当推荐的会员人数较多时,推荐人可得到一笔可观的收入。 会员也可在直接推荐消费,会员直接推荐消费,按业务员提成比例获得提成。 消费明细 会员可以查询所有消费明细、消费总额,打印消费清单。 会员排行榜 对会员消费、会员积分进行排行,激励会员消费。 业务管理 报表管理 短信管理 后台管理 实时交流
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值