华为商城网站设计,重庆制作网站公司简介,怎么自己制作小程序商城,重庆 手机网站制作#x1f34a;作者#xff1a;计算机编程-吉哥 #x1f34a;简介#xff1a;专业从事JavaWeb程序开发#xff0c;微信小程序开发#xff0c;定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事#xff0c;生活就是快乐的。 #x1f34a;心愿#xff1a;点… 作者计算机编程-吉哥 简介专业从事JavaWeb程序开发微信小程序开发定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事生活就是快乐的。 心愿点赞 收藏 ⭐评论 文末获取源码联系 精彩专栏推荐订阅 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型
2.数据库表结构
3.开发工具
4.功能
4.1【角色】
4.2【前台功能模块】
4.3【后台功能模块】
5.项目演示截图
5.1 首页
5.2 热卖酒水
5.3 登录
5.4 注册
5.5 个人中心
5.6 香型管理
5.7 热卖酒水管理
5.8 系统管理
5.9 在线客服
5.10 订单管理
6.数据库文件设计
7.核心代码
7.1 热卖酒水Controller
7.2 热卖酒水Service
7.3 热卖酒水ServiceImpl
7.4 热卖酒水DAO
8.参考文档 1.技术选型
springboot、mybatisplus、vue、elementui、html、css、js、mysql、jdk1.8
2.数据库表结构
13张
3.开发工具
idea、navicat
4.功能
4.1【角色】
管理员、用户
4.2【前台功能模块】
登录注册首页热卖酒水优惠资讯在线客服购物车个人中心后台管理
4.3【后台功能模块】
登录首页个人中心用户管理香型管理热卖酒水管理系统管理订单管理
5.项目演示截图
5.1 首页 5.2 热卖酒水 5.3 登录 5.4 注册 5.5 个人中心 5.6 香型管理 5.7 热卖酒水管理 5.8 系统管理 5.9 在线客服 5.10 订单管理 6.数据库文件设计 CREATE TABLE address (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,userid bigint(20) NOT NULL COMMENT 用户id,address varchar(200) NOT NULL COMMENT 地址,name varchar(200) NOT NULL COMMENT 收货人,phone varchar(200) NOT NULL COMMENT 电话,isdefault varchar(200) NOT NULL COMMENT 是否默认地址[是/否],PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT9 DEFAULT CHARSETutf8 COMMENT地址;CREATE TABLE cart (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,tablename varchar(200) DEFAULT remaijiushui COMMENT 商品表名,userid bigint(20) NOT NULL COMMENT 用户id,goodid bigint(20) NOT NULL COMMENT 商品id,goodname varchar(200) DEFAULT NULL COMMENT 商品名称,picture longtext COMMENT 图片,buynumber int(11) NOT NULL COMMENT 购买数量,price float DEFAULT NULL COMMENT 单价,discountprice float DEFAULT NULL COMMENT 会员价,goodtype varchar(200) DEFAULT NULL COMMENT 商品类型,PRIMARY KEY (id)
) ENGINEInnoDB DEFAULT CHARSETutf8 COMMENT购物车表;CREATE TABLE config (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,name varchar(100) NOT NULL COMMENT 配置参数名称,value varchar(100) DEFAULT NULL COMMENT 配置参数值,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT4 DEFAULT CHARSETutf8 COMMENT配置文件;CREATE TABLE discussremaijiushui (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,refid bigint(20) NOT NULL COMMENT 关联表id,userid bigint(20) NOT NULL COMMENT 用户id,avatarurl longtext COMMENT 头像,nickname varchar(200) DEFAULT NULL COMMENT 用户名,content longtext NOT NULL COMMENT 评论内容,reply longtext COMMENT 回复内容,PRIMARY KEY (id)
) ENGINEInnoDB DEFAULT CHARSETutf8 COMMENT热卖酒水评论表;CREATE TABLE leixing (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,jiushuileixing varchar(200) DEFAULT NULL COMMENT 酒水类型,PRIMARY KEY (id),UNIQUE KEY jiushuileixing (jiushuileixing)
) ENGINEInnoDB AUTO_INCREMENT29 DEFAULT CHARSETutf8 COMMENT类型;CREATE TABLE news (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,title varchar(200) NOT NULL COMMENT 标题,introduction longtext COMMENT 简介,picture longtext NOT NULL COMMENT 图片,content longtext NOT NULL COMMENT 内容,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT89 DEFAULT CHARSETutf8 COMMENT优惠资讯;CREATE TABLE remaijiushui (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,jiushuimingcheng varchar(200) DEFAULT NULL COMMENT 酒水名称,fengmian longtext COMMENT 封面,jiushuileixing varchar(200) DEFAULT NULL COMMENT 酒水类型,baozhuangxingshi varchar(200) DEFAULT NULL COMMENT 包装形式,pinpai varchar(200) DEFAULT NULL COMMENT 品牌,dushu varchar(200) DEFAULT NULL COMMENT 度数,chuzangfangfa varchar(200) DEFAULT NULL COMMENT 储藏方法,shengchannianfen varchar(200) DEFAULT NULL COMMENT 生产年份,chandi varchar(200) DEFAULT NULL COMMENT 产地,changming varchar(200) DEFAULT NULL COMMENT 厂名,shiyongchangjing varchar(200) DEFAULT NULL COMMENT 适用场景,shengchanxukezheng varchar(200) DEFAULT NULL COMMENT 生产许可证,jiushuixiangqing longtext COMMENT 酒水详情,onelimittimes int(11) DEFAULT NULL COMMENT 单限,alllimittimes int(11) DEFAULT NULL COMMENT 库存,thumbsupnum int(11) DEFAULT 0 COMMENT 赞,crazilynum int(11) DEFAULT 0 COMMENT 踩,clicktime datetime DEFAULT NULL COMMENT 最近点击时间,clicknum int(11) DEFAULT 0 COMMENT 点击次数,price float NOT NULL COMMENT 价格,PRIMARY KEY (id),UNIQUE KEY shengchanxukezheng (shengchanxukezheng)
) ENGINEInnoDB AUTO_INCREMENT39 DEFAULT CHARSETutf8 COMMENT热卖酒水;CREATE TABLE storeup (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,userid bigint(20) NOT NULL COMMENT 用户id,refid bigint(20) DEFAULT NULL COMMENT 商品id,tablename varchar(200) DEFAULT NULL COMMENT 表名,name varchar(200) NOT NULL COMMENT 名称,picture longtext NOT NULL COMMENT 图片,type varchar(200) DEFAULT 1 COMMENT 类型(1:收藏,21:赞,22:踩,31:竞拍参与,41:关注),inteltype varchar(200) DEFAULT NULL COMMENT 推荐类型,remark varchar(200) DEFAULT NULL COMMENT 备注,PRIMARY KEY (id)
) ENGINEInnoDB DEFAULT CHARSETutf8 COMMENT收藏表;CREATE TABLE systemintro (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,title varchar(200) NOT NULL COMMENT 标题,subtitle varchar(200) DEFAULT NULL COMMENT 副标题,content longtext NOT NULL COMMENT 内容,picture1 longtext COMMENT 图片1,picture2 longtext COMMENT 图片2,picture3 longtext COMMENT 图片3,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT2 DEFAULT CHARSETutf8 COMMENT关于我们;CREATE TABLE token (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,userid bigint(20) NOT NULL COMMENT 用户id,username varchar(100) NOT NULL COMMENT 用户名,tablename varchar(100) DEFAULT NULL COMMENT 表名,role varchar(100) DEFAULT NULL COMMENT 角色,token varchar(200) NOT NULL COMMENT 密码,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 新增时间,expiratedtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 过期时间,PRIMARY KEY (id)
) ENGINEInnoDB DEFAULT CHARSETutf8 COMMENTtoken表;CREATE TABLE users (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,username varchar(100) NOT NULL COMMENT 用户名,password varchar(100) NOT NULL COMMENT 密码,role varchar(100) DEFAULT 管理员 COMMENT 角色,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 新增时间,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT2 DEFAULT CHARSETutf8 COMMENT用户表;CREATE TABLE yonghu (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,addtime timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间,yonghuzhanghao varchar(200) DEFAULT NULL COMMENT 用户账号,mima varchar(200) NOT NULL COMMENT 密码,yonghuxingming varchar(200) DEFAULT NULL COMMENT 用户姓名,touxiang longtext COMMENT 头像,xingbie varchar(200) DEFAULT NULL COMMENT 性别,lianxifangshi varchar(200) DEFAULT NULL COMMENT 联系方式,money float DEFAULT 0 COMMENT 余额,PRIMARY KEY (id),UNIQUE KEY yonghuzhanghao (yonghuzhanghao)
) ENGINEInnoDB AUTO_INCREMENT19 DEFAULT CHARSETutf8 COMMENT用户;7.核心代码
7.1 热卖酒水Controller
package com.controller;/*** 热卖酒水* 后端接口* author 计算机编程-吉哥*/
RestController
RequestMapping(/remaijiushui)
public class RemaijiushuiController {Autowiredprivate RemaijiushuiService remaijiushuiService;Autowiredprivate StoreupService storeupService;Autowiredprivate OrdersService ordersService;/*** 后端列表*/RequestMapping(/page)public R page(RequestParam MapString, Object params,RemaijiushuiEntity remaijiushui,RequestParam(required false) Double pricestart,RequestParam(required false) Double priceend,HttpServletRequest request){EntityWrapperRemaijiushuiEntity ew new EntityWrapperRemaijiushuiEntity();if(pricestart!null) ew.ge(price, pricestart);if(priceend!null) ew.le(price, priceend);PageUtils page remaijiushuiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, remaijiushui), params), params));return R.ok().put(data, page);}/*** 前端列表*/IgnoreAuthRequestMapping(/list)public R list(RequestParam MapString, Object params,RemaijiushuiEntity remaijiushui, RequestParam(required false) Double pricestart,RequestParam(required false) Double priceend,HttpServletRequest request){EntityWrapperRemaijiushuiEntity ew new EntityWrapperRemaijiushuiEntity();if(pricestart!null) ew.ge(price, pricestart);if(priceend!null) ew.le(price, priceend);PageUtils page remaijiushuiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, remaijiushui), params), params));return R.ok().put(data, page);}/*** 列表*/RequestMapping(/lists)public R list( RemaijiushuiEntity remaijiushui){EntityWrapperRemaijiushuiEntity ew new EntityWrapperRemaijiushuiEntity();ew.allEq(MPUtil.allEQMapPre( remaijiushui, remaijiushui)); return R.ok().put(data, remaijiushuiService.selectListView(ew));}/*** 查询*/RequestMapping(/query)public R query(RemaijiushuiEntity remaijiushui){EntityWrapper RemaijiushuiEntity ew new EntityWrapper RemaijiushuiEntity();ew.allEq(MPUtil.allEQMapPre( remaijiushui, remaijiushui)); RemaijiushuiView remaijiushuiView remaijiushuiService.selectView(ew);return R.ok(查询热卖酒水成功).put(data, remaijiushuiView);}/*** 后端详情*/RequestMapping(/info/{id})public R info(PathVariable(id) Long id){RemaijiushuiEntity remaijiushui remaijiushuiService.selectById(id);remaijiushui.setClicknum(remaijiushui.getClicknum()1);remaijiushui.setClicktime(new Date());remaijiushuiService.updateById(remaijiushui);return R.ok().put(data, remaijiushui);}/*** 前端详情*/IgnoreAuthRequestMapping(/detail/{id})public R detail(PathVariable(id) Long id){RemaijiushuiEntity remaijiushui remaijiushuiService.selectById(id);remaijiushui.setClicknum(remaijiushui.getClicknum()1);remaijiushui.setClicktime(new Date());remaijiushuiService.updateById(remaijiushui);return R.ok().put(data, remaijiushui);}/*** 赞或踩*/RequestMapping(/thumbsup/{id})public R vote(PathVariable(id) String id,String type){RemaijiushuiEntity remaijiushui remaijiushuiService.selectById(id);if(type.equals(1)) {remaijiushui.setThumbsupnum(remaijiushui.getThumbsupnum()1);} else {remaijiushui.setCrazilynum(remaijiushui.getCrazilynum()1);}remaijiushuiService.updateById(remaijiushui);return R.ok(投票成功);}/*** 后端保存*/RequestMapping(/save)public R save(RequestBody RemaijiushuiEntity remaijiushui, HttpServletRequest request){remaijiushui.setId(new Date().getTime()new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(remaijiushui);remaijiushuiService.insert(remaijiushui);return R.ok();}/*** 前端保存*/RequestMapping(/add)public R add(RequestBody RemaijiushuiEntity remaijiushui, HttpServletRequest request){remaijiushui.setId(new Date().getTime()new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(remaijiushui);remaijiushuiService.insert(remaijiushui);return R.ok();}/*** 修改*/RequestMapping(/update)Transactionalpublic R update(RequestBody RemaijiushuiEntity remaijiushui, HttpServletRequest request){//ValidatorUtils.validateEntity(remaijiushui);remaijiushuiService.updateById(remaijiushui);//全部更新return R.ok();}/*** 删除*/RequestMapping(/delete)public R delete(RequestBody Long[] ids){remaijiushuiService.deleteBatchIds(Arrays.asList(ids));return R.ok();}/*** 提醒接口*/RequestMapping(/remind/{columnName}/{type})public R remindCount(PathVariable(columnName) String columnName, HttpServletRequest request, PathVariable(type) String type,RequestParam MapString, Object map) {map.put(column, columnName);map.put(type, type);if(type.equals(2)) {SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd);Calendar c Calendar.getInstance();Date remindStartDate null;Date remindEndDate null;if(map.get(remindstart)!null) {Integer remindStart Integer.parseInt(map.get(remindstart).toString());c.setTime(new Date()); c.add(Calendar.DAY_OF_MONTH,remindStart);remindStartDate c.getTime();map.put(remindstart, sdf.format(remindStartDate));}if(map.get(remindend)!null) {Integer remindEnd Integer.parseInt(map.get(remindend).toString());c.setTime(new Date());c.add(Calendar.DAY_OF_MONTH,remindEnd);remindEndDate c.getTime();map.put(remindend, sdf.format(remindEndDate));}}WrapperRemaijiushuiEntity wrapper new EntityWrapperRemaijiushuiEntity();if(map.get(remindstart)!null) {wrapper.ge(columnName, map.get(remindstart));}if(map.get(remindend)!null) {wrapper.le(columnName, map.get(remindend));}int count remaijiushuiService.selectCount(wrapper);return R.ok().put(count, count);}/*** 前端智能排序*/IgnoreAuthRequestMapping(/autoSort)public R autoSort(RequestParam MapString, Object params,RemaijiushuiEntity remaijiushui, HttpServletRequest request,String pre){EntityWrapperRemaijiushuiEntity ew new EntityWrapperRemaijiushuiEntity();MapString, Object newMap new HashMapString, Object();MapString, Object param new HashMapString, Object();IteratorMap.EntryString, Object it param.entrySet().iterator();while (it.hasNext()) {Map.EntryString, Object entry it.next();String key entry.getKey();String newKey entry.getKey();if (pre.endsWith(.)) {newMap.put(pre newKey, entry.getValue());} else if (StringUtils.isEmpty(pre)) {newMap.put(newKey, entry.getValue());} else {newMap.put(pre . newKey, entry.getValue());}}params.put(sort, clicknum);params.put(order, desc);PageUtils page remaijiushuiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, remaijiushui), params), params));return R.ok().put(data, page);}/*** 协同算法按用户购买推荐*/RequestMapping(/autoSort2)public R autoSort2(RequestParam MapString, Object params,RemaijiushuiEntity remaijiushui, HttpServletRequest request){String userId request.getSession().getAttribute(userId).toString();String goodtypeColumn jiushuileixing;ListOrdersEntity orders ordersService.selectList(new EntityWrapperOrdersEntity().eq(userid, userId).eq(tablename, remaijiushui).orderBy(addtime, false));ListString goodtypes new ArrayListString();Integer limit params.get(limit)null?10:Integer.parseInt(params.get(limit).toString());ListRemaijiushuiEntity remaijiushuiList new ArrayListRemaijiushuiEntity();//去重ListOrdersEntity ordersDist new ArrayListOrdersEntity();for(OrdersEntity o1 : orders) {boolean addFlag true;for(OrdersEntity o2 : ordersDist) {if(o1.getGoodid()o2.getGoodid() || o1.getGoodtype().equals(o2.getGoodtype())) {addFlag false;break;}}if(addFlag) ordersDist.add(o1);}if(ordersDist!null ordersDist.size()0) {for(OrdersEntity o : ordersDist) {remaijiushuiList.addAll(remaijiushuiService.selectList(new EntityWrapperRemaijiushuiEntity().eq(goodtypeColumn, o.getGoodtype())));}}EntityWrapperRemaijiushuiEntity ew new EntityWrapperRemaijiushuiEntity();params.put(sort, id);params.put(order, desc);PageUtils page remaijiushuiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, remaijiushui), params), params));ListRemaijiushuiEntity pageList (ListRemaijiushuiEntity)page.getList();if(remaijiushuiList.size()limit) {int toAddNum (limit-remaijiushuiList.size())pageList.size()?(limit-remaijiushuiList.size()):pageList.size();for(RemaijiushuiEntity o1 : pageList) {boolean addFlag true;for(RemaijiushuiEntity o2 : remaijiushuiList) {if(o1.getId().intValue()o2.getId().intValue()) {addFlag false;break;}}if(addFlag) {remaijiushuiList.add(o1);if(--toAddNum0) break;} }} else if(remaijiushuiList.size()limit) {remaijiushuiList remaijiushuiList.subList(0, limit);}page.setList(remaijiushuiList);return R.ok().put(data, page);}}7.2 热卖酒水Service
package com.service;/*** 热卖酒水** author 计算机编程-吉哥*/
public interface RemaijiushuiService extends IServiceRemaijiushuiEntity {PageUtils queryPage(MapString, Object params);ListRemaijiushuiVO selectListVO(WrapperRemaijiushuiEntity wrapper);RemaijiushuiVO selectVO(Param(ew) WrapperRemaijiushuiEntity wrapper);ListRemaijiushuiView selectListView(WrapperRemaijiushuiEntity wrapper);RemaijiushuiView selectView(Param(ew) WrapperRemaijiushuiEntity wrapper);PageUtils queryPage(MapString, Object params,WrapperRemaijiushuiEntity wrapper);}
7.3 热卖酒水ServiceImpl
package com.service.impl;Service(remaijiushuiService)
public class RemaijiushuiServiceImpl extends ServiceImplRemaijiushuiDao, RemaijiushuiEntity implements RemaijiushuiService {Overridepublic PageUtils queryPage(MapString, Object params) {PageRemaijiushuiEntity page this.selectPage(new QueryRemaijiushuiEntity(params).getPage(),new EntityWrapperRemaijiushuiEntity());return new PageUtils(page);}Overridepublic PageUtils queryPage(MapString, Object params, WrapperRemaijiushuiEntity wrapper) {PageRemaijiushuiView page new QueryRemaijiushuiView(params).getPage();page.setRecords(baseMapper.selectListView(page,wrapper));PageUtils pageUtil new PageUtils(page);return pageUtil;}Overridepublic ListRemaijiushuiVO selectListVO(WrapperRemaijiushuiEntity wrapper) {return baseMapper.selectListVO(wrapper);}Overridepublic RemaijiushuiVO selectVO(WrapperRemaijiushuiEntity wrapper) {return baseMapper.selectVO(wrapper);}Overridepublic ListRemaijiushuiView selectListView(WrapperRemaijiushuiEntity wrapper) {return baseMapper.selectListView(wrapper);}Overridepublic RemaijiushuiView selectView(WrapperRemaijiushuiEntity wrapper) {return baseMapper.selectView(wrapper);}}7.4 热卖酒水DAO
package com.dao;/*** 热卖酒水* * author 计算机编程-吉哥*/
public interface RemaijiushuiDao extends BaseMapperRemaijiushuiEntity {ListRemaijiushuiVO selectListVO(Param(ew) WrapperRemaijiushuiEntity wrapper);RemaijiushuiVO selectVO(Param(ew) WrapperRemaijiushuiEntity wrapper);ListRemaijiushuiView selectListView(Param(ew) WrapperRemaijiushuiEntity wrapper);ListRemaijiushuiView selectListView(Pagination page,Param(ew) WrapperRemaijiushuiEntity wrapper);RemaijiushuiView selectView(Param(ew) WrapperRemaijiushuiEntity wrapper);}8.参考文档 你可能还有感兴趣的项目 更多项目推荐:计算机毕业设计项目 如果大家有任何疑虑请在下方咨询或评论