📋个人简介
🎅 作者简介:大家好,我是莫子莫✌️
🌝 支持一下:点赞👍+收藏🌟+留言📪
📣 系列专栏:毕业设计参考案例🍁
✉️格言:没有复杂的系统💻只有复杂的灵魂!🌞
🍅源码可私聊🍅
一.前言
水果店销售商城是一种线上水果销售平台,它结合了电子商务和移动支付的优势,为消费者提供了一个购买新鲜水果的便捷途径。然而,在设计和实现水果店销售商城时,需要充分考虑用户需求、购物流程、支付安全等因素,以确保用户能够享受到优质、高效的购物体验。
SpringBoot和Vue作为当前主流的技术框架,具有开发效率高、安全性强、用户体验良好等优点。利用这些技术,我们可以快速构建一个功能完善、性能优良的水果店销售商城,满足用户对新鲜水果的购买需求。同时,该商城具备良好的可扩展性和可维护性,有助于企业降低运营成本,提高市场竞争力。
二.技术环境
jdk版本:1.8 及以上
ide工具:Eclipse或者 IDEA
数据库: mysql5.7 (必须5.7)
编程语言: Java
java框架:SpringBoot
maven: 3.6.1
详细技术:HTML+CSS+JAVA+SpringBoot+MYSQL+VUE+MAVEN
三.功能设计
根据本基于水果店销售商城系统的功能需求,进行系统设计。
基本实现了水果店销售商城系统应有的主要功能模块,
- 用户注册和登录模块:用户可以通过注册和登录功能,创建和管理自己的账户,以便在商城中进行购物。
- 商品展示模块:商城展示了各种新鲜水果的商品信息,包括品种、价格、图片等,方便用户浏览和选择。
- 购物车模块:用户可以将选中的水果商品加入购物车,并随时查看购物车中的商品信息,包括数量、总价等。
- 订单生成模块:用户可以在购物车中结算商品,生成订单,并填写收货地址等相关信息。
- 订单管理模块:用户可以查看和管理自己的订单信息,包括订单状态、支付方式、配送信息等。
- 后台管理模块:商城管理员可以通过后台管理界面,对商品信息、订单信息、用户信息等进行管理和维护。
这些功能模块是水果店销售商城系统的重要组成部分,它们可以帮助用户方便地购买新鲜水果,同时也为商城管理员提供了管理和维护商城的便利手段。希望这些信息对您有所帮助。
四.数据设计
概念模型的设计是为了抽象真实世界的信息,并对信息世界进行建模。它是数据库设计的强大工具。数据库概念模型设计可以通过E-R图描述现实世界的概念模型。系统的E-R图显示了系统中实体之间的链接。而且Mysql数据库是自我保护能力比较强的数据库,下图主要是对数据库实体的E-R图。
五.部分效果展示
管理员输入个人的用户名、密码、角色登录系统,这时候系统的数据库就会在进行查找相关的信息,如果我们输入的用户名、密码、角色不正确,数据库就会提示出错误的信息提示,同时会提示管理员重新输入自己的用户名、密码、角色,直到用户名、密码输入成功后,会提登录成功的信息。管理员登录效果图如图5-1所示:
在用户登录后进入首页,首页水果推荐信息板块中,将点击率最高的水果排名靠前,首页界面如下所示:
商品详情页面,展示商品的详细数据,具体介绍,当前价格,和促销等:
个人信息模块:
管理员可以对所有商家信息进行管理,包括增删改查等操作,商家管理界面如下所示:
图标统计销售额展示:
部分代码
登录验证功能:
public BusInfo login(String username, String password) {
BusInfo busInfo = busInfoDao.findByUsername(username);
if (busInfo == null) {
throw new CustomException(ResultCode.USER_ACCOUNT_ERROR);
}
if (!SecureUtil.md5(password).equalsIgnoreCase(busInfo.getPassword())) {
throw new CustomException(ResultCode.USER_ACCOUNT_ERROR);
}
return busInfo;
}
注册功能:
public UserInfo add(UserInfo userInfo) {
// 唯一校验
int count = userInfoDao.checkRepeat("name", userInfo.getName(), null);
if (count > 0) {
throw new CustomException("1001", "用户名\"" + userInfo.getName() + "\"已存在");
}
if (StringUtils.isEmpty(userInfo.getPassword())) {
// 默认密码123456
userInfo.setPassword(SecureUtil.md5("123456"));
} else {
userInfo.setPassword(SecureUtil.md5(userInfo.getPassword()));
}
userInfoDao.insertSelective(userInfo);
return userInfo;
}
获取图表展示数据:
@GetMapping("/getTotal")
Result getTotal() {
Map<String, Object> map = new HashMap<>(4);
// 获取用户总数
map.put("totalUser", getUserCount() == null ? 0 : getUserCount());
// 获取评论总数
//map.put("totalComment", commentInfoDao.count() == null ? 0 : commentInfoDao.count());
// 获取总销售额
map.put("totalPrice", orderInfoDao.totalPrice() == null ? 0 : orderInfoDao.totalPrice());
// 获取总销量
map.put("totalShopping", orderGoodsRelDao.totalShopping() == null ? 0 : orderGoodsRelDao.totalShopping());
return Result.success(map);
}
🍅源码可私聊🍅