• 售前

  • 售后

热门帖子
入门百科

喝不起奶茶,咱就为奶茶店开发个会员积分收银系统

[复制链接]
令狐佳人 显示全部楼层 发表于 2022-1-12 12:16:05 |阅读模式 打印 上一主题 下一主题
 项目编号:BS-XX-011
本系统基于SSM框架开发实现,前端使用easyui开发实现,功能强大,界面美观,数据库使用mysql数据库,开发工具采用idea。
系统部分功能展示如下:
系统管理员登陆: admin /admin
http://localhost/login


登陆后主界面:


用户管理

角色管理

资源管理

地区管理

奶茶管理==类目管理

点击购买==输入会员卡进行购买

消费积分管理


日志管理


以上是奶茶店会员管理系统的部分功能展示,本项目功能完整,运行无误,适合做毕业设计使用。

  1. package SystemManage.ConsumeManage.service;
  2. import SystemManage.Common.until.PageInfo;
  3. import SystemManage.ConsumeManage.dao.ConsumeMapper;
  4. import SystemManage.ConsumeManage.entity.Consume;
  5. import SystemManage.ConsumeManage.entity.ConsumeVo;
  6. import SystemManage.IntegralDetialManage.service.IntegralDetialService;
  7. import SystemManage.IntegralManage.service.IntegralService;
  8. import SystemManage.MilkManage.entity.MilkConsumeVo;
  9. import com.github.pagehelper.Page;
  10. import com.github.pagehelper.PageHelper;
  11. import org.springframework.beans.factory.annotation.Autowired;
  12. import org.springframework.stereotype.Service;
  13. import org.springframework.transaction.annotation.Transactional;
  14. import java.util.Date;
  15. import java.util.Map;
  16. /**
  17. * 消费奶茶记录
  18. */
  19. @Service
  20. @Transactional
  21. public class ConsumeService {
  22.     @Autowired
  23.     private ConsumeMapper consumeMapper;
  24.     @Autowired
  25.     private IntegralService integralService;
  26.     @Autowired
  27.     private IntegralDetialService integralDetialService;
  28.     /**
  29.      * 更新消费记录
  30.      *
  31.      * @param vo
  32.      * @return
  33.      */
  34.     public int add(MilkConsumeVo vo) {
  35.         Consume record = new Consume();
  36.         record.setConsumeDate(new Date());
  37.         record.setConsumeMilkId(vo.getMilkId());
  38.         record.setConsumeUserId(vo.getUserId());
  39.         int insert = consumeMapper.insert(record);
  40.         // 消费记录成功,进行积分的更细和积分详细表的更新,否则都不更细
  41.         if (insert > 0) {
  42.             //先更新总积分
  43.             int add = integralService.add(vo);
  44.             //再更新积分详情表
  45.             if (add > 0) {
  46.                 return integralDetialService.add(vo, record.getId());
  47.             }
  48.         }
  49.         return 0;
  50.     }
  51.     @SuppressWarnings("all")
  52.     public PageInfo list(String milkName,Long userId, PageInfo info) {
  53.         PageHelper.startPage(info.getNowpage(), info.getPagesize());
  54.         Page<ConsumeVo> milks = consumeMapper.list(userId,milkName);
  55.         info.setRows(milks.getResult());
  56.         info.setTotal((int) milks.getTotal());
  57.         return info;
  58.     }
  59. }
复制代码

  1. package SystemManage.IntegralManage.service;
  2. import SystemManage.IntegralManage.dao.IntegralMapper;
  3. import SystemManage.IntegralManage.entity.Integral;
  4. import SystemManage.IntegralManage.entity.IntegralExample;
  5. import SystemManage.MilkManage.entity.MilkConsumeVo;
  6. import org.springframework.beans.factory.annotation.Autowired;
  7. import org.springframework.stereotype.Service;
  8. import org.springframework.transaction.annotation.Transactional;
  9. import java.util.Date;
  10. import java.util.List;
  11. /**
  12. * 用户消费总积分
  13. */
  14. @Service
  15. @Transactional
  16. @SuppressWarnings("all")
  17. public class IntegralService {
  18.     @Autowired
  19.     private IntegralMapper integralMapper;
  20.     /**
  21.      * 根据用户ID查询用户积分
  22.      *
  23.      * @param userId
  24.      * @return
  25.      */
  26.     public Double findIntegralInfoByUserId(Long userId) {
  27.         if (userId == null) {
  28.             throw new RuntimeException("用户ID不能为空");
  29.         }
  30.         IntegralExample example = new IntegralExample();
  31.         IntegralExample.Criteria criteria = example.createCriteria();
  32.         criteria.andIntegralUserIdEqualTo(Integer.parseInt(String.valueOf(userId)));
  33.         List<Integral> integrals = integralMapper.selectByExample(example);
  34.         if (integrals != null && integrals.size() > 0) {
  35.             Integral integral = integrals.get(0);
  36.             return integral.getIntegralSum();
  37.         }
  38.         return 0d;
  39.     }
  40.     /**
  41.      * 更新总积分系统
  42.      *
  43.      * @param vo
  44.      * @return
  45.      */
  46.     public int add(MilkConsumeVo vo) {
  47.         // 判断是否有总积分,没有就直接添加即可
  48.         Integral integral = integralMapper.selectByUserId(vo.getUserId());
  49.         // 证明是第一次添加
  50.         if (integral == null || integral.getIntegralConsume() == 0.0) {
  51.             Integral record = new Integral();
  52.             record.setIntegralTieme(new Date());
  53.             record.setIntegralUserId(vo.getUserId());
  54.             // 价格就是积分,1元钱1积分
  55.             record.setIntegralConsume(vo.getMilkPrice());
  56.             record.setIntegralSum(vo.getMilkPrice());
  57.             int insert = integralMapper.insert(record);
  58.             return insert;
  59.         } else {
  60.             // 积分很多,需要加上价格减去抵扣的积分进行累计增加
  61.             integral.setIntegralSum(integral.getIntegralSum() + vo.getMilkPrice() - vo.getIntegralCount());
  62.             integral.setIntegralConsume((vo.getMilkPrice() - vo.getIntegralCount()) + integral.getIntegralConsume());
  63.             int insert = integralMapper.updateByPrimaryKey(integral);
  64.             return insert;
  65.         }
  66.     }
  67. }
复制代码
  1. package SystemManage.LogManage.service;
  2. import SystemManage.Common.until.PageInfo;
  3. import SystemManage.LogManage.dao.LogDao;
  4. import SystemManage.LogManage.entity.Log;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.stereotype.Service;
  7. import java.util.List;
  8. @Service
  9. public class LogService {
  10.     @Autowired
  11.     private LogDao logDao;
  12.     public void insertLog(Log sysLog) {
  13.         logDao.insert(sysLog);
  14.     }
  15.     public void findDataGrid(PageInfo pageInfo) {
  16.         pageInfo.setRows(logDao.findDataGrid(pageInfo));
  17.         pageInfo.setTotal(logDao.findDataGridCount(pageInfo));
  18.     }
  19.     public void batchDelete(List ids){
  20.         logDao.batchDelete(ids) ;
  21.     }
  22.     public Log selectById(Long id){
  23.         return logDao.selectById(id) ;
  24.     }
  25.     public int delByDate(String date){
  26.         int count = logDao.delLogCount(date);
  27.         logDao.delByDate(date);
  28.         return count ;
  29.     }
  30. }
复制代码

  
  1. package SystemManage.MilkManage.service;
  2. import SystemManage.Common.until.PageInfo;
  3. import SystemManage.MilkManage.dao.MilkMapper;
  4. import SystemManage.MilkManage.entity.Milk;
  5. import SystemManage.MilkManage.entity.MilkExample;
  6. import com.github.pagehelper.Page;
  7. import com.github.pagehelper.PageHelper;
  8. import org.springframework.beans.factory.annotation.Autowired;
  9. import org.springframework.stereotype.Service;
  10. import org.springframework.transaction.annotation.Transactional;
  11. import java.util.Date;
  12. /**
  13. * 奶茶管理业务层
  14. *
  15. */
  16. @Service
  17. @Transactional
  18. public class MilkService {
  19.     @Autowired
  20.     private MilkMapper milkMapper;
  21.     public PageInfo list(PageInfo info,Milk milk) {
  22.         MilkExample milkExample = new MilkExample();
  23.         MilkExample.Criteria criteria = milkExample.createCriteria();
  24.         // 条件查询
  25.         if(milk != null && milk.getMilkCode() != null && milk.getMilkCode() != ""){
  26.             criteria.andMilkCodeEqualTo(milk.getMilkCode());
  27.         }
  28.         if(milk != null && milk.getMilkName() != null && milk.getMilkName() != ""){
  29.             criteria.andMilkNameLike("%" + milk.getMilkName() + "%");
  30.         }
  31.         PageHelper.startPage(info.getNowpage(),info.getPagesize());
  32.         Page<Milk> milks = (Page<Milk>) milkMapper.selectByExample(milkExample);
  33.         info.setRows(milks.getResult());
  34.         info.setTotal((int)milks.getTotal());
  35.         return info;
  36.     }
  37.     public int add(Milk milk) {
  38.         int insert = milkMapper.insert(milk);
  39.         return insert;
  40.     }
  41.     public int delete(Integer id) {
  42.        return milkMapper.deleteByPrimaryKey(id);
  43.     }
  44.     public Milk findOne(Integer id) {
  45.         return milkMapper.selectByPrimaryKey(id);
  46.     }
  47.     public int update(Milk milk) {
  48.         milk.setMilkDate(new Date());
  49.         return milkMapper.updateByPrimaryKey(milk);
  50.     }
  51. }
复制代码

  1. package SystemManage.OrganizationManage.service;
  2. import SystemManage.Common.entity.Tree;
  3. import SystemManage.Common.until.PageInfo;
  4. import SystemManage.OrganizationManage.dao.OrganizationDao;
  5. import SystemManage.OrganizationManage.entity.Organization;
  6. import com.google.common.collect.Lists;
  7. import org.springframework.beans.factory.annotation.Autowired;
  8. import org.springframework.stereotype.Service;
  9. import java.util.ArrayList;
  10. import java.util.List;
  11. @Service
  12. public class OrganizationService {
  13.     @Autowired
  14.     private OrganizationDao organizationDao ;
  15.     /**
  16.      * @description
  17.      * 查找用户管理中组织机构的资源树
  18.      * 第一步: 先加载父资源
  19.      * 第二步: 通过父资源的 id 查询子资源
  20.      * 加入到 实体层中
  21.      * @return
  22.      */
  23.     public List<Tree> findTree(){
  24.         List<Tree> trees = new ArrayList<Tree>();
  25.         // 查找父资源的信息 ;
  26.         List<Organization> organizationFather = organizationDao.findOrganizationAllByPidNull();
  27.         if (organizationFather != null){
  28.             for (Organization organizationOne : organizationFather){
  29.                 Tree treeOne = new Tree();
  30.                 treeOne.setId(organizationOne.getId());
  31.                 treeOne.setText(organizationOne.getName());
  32.                 treeOne.setIconCls(organizationOne.getIcon());
  33.                 List<Organization> organizationSon = organizationDao.findOrganizationAllByPid(organizationOne.getId());
  34.                 if (organizationSon != null){
  35.                     List<Tree> tree = new ArrayList<Tree>();
  36.                     for (Organization organizationTwo : organizationSon ){
  37.                         Tree treeTwo = new Tree();
  38.                         treeTwo.setId(organizationTwo.getId());
  39.                         treeTwo.setText(organizationTwo.getName());
  40.                         treeTwo.setIconCls(organizationTwo.getIcon());
  41.                         tree.add(treeTwo);
  42.                     }
  43.                     treeOne.setChildren(tree);
  44.                 } else {
  45.                     treeOne.setState("closed");
  46.                 }
  47.                 trees.add(treeOne);
  48.             }
  49.         }
  50.         return trees ;
  51.     }
  52.     public List<Organization> findTreeGrid() {
  53.         return organizationDao.findOrganizationAll();
  54.     }
  55.     public void addOrganization(Organization organization) {
  56.         organizationDao.insert(organization);
  57.     }
  58.     public Organization findOrganizationById(Long id) {
  59.         return organizationDao.findOrganizationById(id);
  60.     }
  61.     public void updateOrganization(Organization organization) {
  62.         organizationDao.updateOrganization(organization);
  63.     }
  64.     public void deleteOrganizationById(Long id) {
  65.         organizationDao.deleteOrganizationById(id);
  66.     }
  67. }
复制代码



来源:https://blog.caogenba.net/whirlwind526/article/details/122417497
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作