系统功能:
用户端:

  • 登录注册
  • 首页浏览
  • 乐器信息
  • 发表评论
  • 分类筛选
  • 乐器查询
  • 乐器资讯
  • 在线客服
  • 加入购物车
  • 乐器收藏
  • 提交订单
  • 地址管理
  • 个人中心
  • 收藏管理
  • 订单管理
  • 退出登录

管理员端:

  • 系统登录
  • 个人中心
  • 用户管理
  • 乐器分类管理
  • 乐器信息管理
  • 订单评价管理
  • 订单管理
  • 系统管理(轮播图管理、乐器资讯管理、在线客服管理)
  • 退出登录

页面效果:










核心代码:

package com.controller;import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.ShangpinxinxiEntity;
import com.entity.view.ShangpinxinxiView;import com.service.ShangpinxinxiService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;/*** 飞机信息* 后端接口* @author* @email*/
@RestController
@RequestMapping("/shangpinxinxi")
public class ShangpinxinxiController {@Autowiredprivate ShangpinxinxiService shangpinxinxiService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,ShangpinxinxiEntity shangpinxinxi,HttpServletRequest request){EntityWrapper<ShangpinxinxiEntity> ew = new EntityWrapper<ShangpinxinxiEntity>();PageUtils page = shangpinxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpinxinxi), params), params));return R.ok().put("data", page);}/*** 前端列表*/@IgnoreAuth@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,ShangpinxinxiEntity shangpinxinxi, HttpServletRequest request){EntityWrapper<ShangpinxinxiEntity> ew = new EntityWrapper<ShangpinxinxiEntity>();PageUtils page = shangpinxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpinxinxi), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( ShangpinxinxiEntity shangpinxinxi){EntityWrapper<ShangpinxinxiEntity> ew = new EntityWrapper<ShangpinxinxiEntity>();ew.allEq(MPUtil.allEQMapPre( shangpinxinxi, "shangpinxinxi"));return R.ok().put("data", shangpinxinxiService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(ShangpinxinxiEntity shangpinxinxi){EntityWrapper< ShangpinxinxiEntity> ew = new EntityWrapper< ShangpinxinxiEntity>();ew.allEq(MPUtil.allEQMapPre( shangpinxinxi, "shangpinxinxi"));ShangpinxinxiView shangpinxinxiView =  shangpinxinxiService.selectView(ew);return R.ok("查询飞机信息成功").put("data", shangpinxinxiView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){ShangpinxinxiEntity shangpinxinxi = shangpinxinxiService.selectById(id);shangpinxinxi.setClicknum(shangpinxinxi.getClicknum()+1);shangpinxinxi.setClicktime(new Date());shangpinxinxiService.updateById(shangpinxinxi);return R.ok().put("data", shangpinxinxi);}/*** 前端详情*/@IgnoreAuth@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){ShangpinxinxiEntity shangpinxinxi = shangpinxinxiService.selectById(id);shangpinxinxi.setClicknum(shangpinxinxi.getClicknum()+1);shangpinxinxi.setClicktime(new Date());shangpinxinxiService.updateById(shangpinxinxi);return R.ok().put("data", shangpinxinxi);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody ShangpinxinxiEntity shangpinxinxi, HttpServletRequest request){shangpinxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(shangpinxinxi);shangpinxinxiService.insert(shangpinxinxi);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody ShangpinxinxiEntity shangpinxinxi, HttpServletRequest request){shangpinxinxi.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(shangpinxinxi);shangpinxinxiService.insert(shangpinxinxi);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody ShangpinxinxiEntity shangpinxinxi, HttpServletRequest request){//ValidatorUtils.validateEntity(shangpinxinxi);shangpinxinxiService.updateById(shangpinxinxi);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){shangpinxinxiService.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 Map<String, 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));}}Wrapper<ShangpinxinxiEntity> wrapper = new EntityWrapper<ShangpinxinxiEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}int count = shangpinxinxiService.selectCount(wrapper);return R.ok().put("count", count);}/*** 前端智能排序*/@IgnoreAuth@RequestMapping("/autoSort")public R autoSort(@RequestParam Map<String, Object> params,ShangpinxinxiEntity shangpinxinxi, HttpServletRequest request,String pre){EntityWrapper<ShangpinxinxiEntity> ew = new EntityWrapper<ShangpinxinxiEntity>();Map<String, Object> newMap = new HashMap<String, Object>();Map<String, Object> param = new HashMap<String, Object>();Iterator<Map.Entry<String, Object>> it = param.entrySet().iterator();while (it.hasNext()) {Map.Entry<String, 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 = shangpinxinxiService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpinxinxi), params), params));return R.ok().put("data", page);}}package com.service.impl;import org.springframework.stereotype.Service;
import java.util.Map;
import java.util.List;import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.utils.PageUtils;
import com.utils.Query;import com.dao.ShangpinxinxiDao;
import com.entity.ShangpinxinxiEntity;
import com.service.ShangpinxinxiService;
import com.entity.vo.ShangpinxinxiVO;
import com.entity.view.ShangpinxinxiView;@Service("shangpinxinxiService")
public class ShangpinxinxiServiceImpl extends ServiceImpl<ShangpinxinxiDao, ShangpinxinxiEntity> implements ShangpinxinxiService {@Overridepublic PageUtils queryPage(Map<String, Object> params) {Page<ShangpinxinxiEntity> page = this.selectPage(new Query<ShangpinxinxiEntity>(params).getPage(),new EntityWrapper<ShangpinxinxiEntity>());return new PageUtils(page);}@Overridepublic PageUtils queryPage(Map<String, Object> params, Wrapper<ShangpinxinxiEntity> wrapper) {Page<ShangpinxinxiView> page =new Query<ShangpinxinxiView>(params).getPage();page.setRecords(baseMapper.selectListView(page,wrapper));PageUtils pageUtil = new PageUtils(page);return pageUtil;}@Overridepublic List<ShangpinxinxiVO> selectListVO(Wrapper<ShangpinxinxiEntity> wrapper) {return baseMapper.selectListVO(wrapper);}@Overridepublic ShangpinxinxiVO selectVO(Wrapper<ShangpinxinxiEntity> wrapper) {return baseMapper.selectVO(wrapper);}@Overridepublic List<ShangpinxinxiView> selectListView(Wrapper<ShangpinxinxiEntity> wrapper) {return baseMapper.selectListView(wrapper);}@Overridepublic ShangpinxinxiView selectView(Wrapper<ShangpinxinxiEntity> wrapper) {return baseMapper.selectView(wrapper);}}package com.dao;import com.entity.ShangpinxinxiEntity;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import java.util.List;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.pagination.Pagination;import org.apache.ibatis.annotations.Param;
import com.entity.vo.ShangpinxinxiVO;
import com.entity.view.ShangpinxinxiView;/*** 飞机信息** @author* @email*/
public interface ShangpinxinxiDao extends BaseMapper<ShangpinxinxiEntity> {List<ShangpinxinxiVO> selectListVO(@Param("ew") Wrapper<ShangpinxinxiEntity> wrapper);ShangpinxinxiVO selectVO(@Param("ew") Wrapper<ShangpinxinxiEntity> wrapper);List<ShangpinxinxiView> selectListView(@Param("ew") Wrapper<ShangpinxinxiEntity> wrapper);List<ShangpinxinxiView> selectListView(Pagination page,@Param("ew") Wrapper<ShangpinxinxiEntity> wrapper);ShangpinxinxiView selectView(@Param("ew") Wrapper<ShangpinxinxiEntity> wrapper);}package com.entity;import com.baomidou.mybatisplus.annotations.TableId;
import com.baomidou.mybatisplus.annotations.TableName;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import java.lang.reflect.InvocationTargetException;import java.io.Serializable;
import java.util.Date;
import java.util.List;import org.springframework.format.annotation.DateTimeFormat;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.beanutils.BeanUtils;
import com.baomidou.mybatisplus.annotations.TableField;
import com.baomidou.mybatisplus.enums.FieldFill;
import com.baomidou.mybatisplus.enums.IdType;/*** 飞机信息* 数据库通用操作实体类(普通增删改查)* @author* @email*/
@TableName("shangpinxinxi")
public class ShangpinxinxiEntity<T> implements Serializable {private static final long serialVersionUID = 1L;public ShangpinxinxiEntity() {}public ShangpinxinxiEntity(T t) {try {BeanUtils.copyProperties(this, t);} catch (IllegalAccessException | InvocationTargetException e) {// TODO Auto-generated catch blocke.printStackTrace();}}/*** 主键id*/@TableIdprivate Long id;/*** 飞机名称*/private String shangpinmingcheng;/*** 飞机舱位*/private String shangpinfenlei;/*** 图片*/private String tupian;/*** 起点*/private String pinpai;/*** 评分*/private String guige;/*** 飞机详情*/private String shangpinxiangqing;/*** 最近点击时间*/@JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")@DateTimeFormatprivate Date clicktime;/*** 点击次数*/private Integer clicknum;/*** 价格*/private Float price;@JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd HH:mm:ss")@DateTimeFormatprivate Date addtime;public Date getAddtime() {return addtime;}public void setAddtime(Date addtime) {this.addtime = addtime;}private String startdate;public String getStartdate() {return startdate;}public void setStartdate(String startdate) {this.startdate = startdate;}public Long getId() {return id;}public void setId(Long id) {this.id = id;}/*** 设置:飞机名称*/public void setShangpinmingcheng(String shangpinmingcheng) {this.shangpinmingcheng = shangpinmingcheng;}/*** 获取:飞机名称*/public String getShangpinmingcheng() {return shangpinmingcheng;}/*** 设置:飞机舱位*/public void setShangpinfenlei(String shangpinfenlei) {this.shangpinfenlei = shangpinfenlei;}/*** 获取:飞机舱位*/public String getShangpinfenlei() {return shangpinfenlei;}/*** 设置:图片*/public void setTupian(String tupian) {this.tupian = tupian;}/*** 获取:图片*/public String getTupian() {return tupian;}/*** 设置:起点*/public void setPinpai(String pinpai) {this.pinpai = pinpai;}/*** 获取:起点*/public String getPinpai() {return pinpai;}/*** 设置:评分*/public void setGuige(String guige) {this.guige = guige;}/*** 获取:评分*/public String getGuige() {return guige;}/*** 设置:飞机详情*/public void setShangpinxiangqing(String shangpinxiangqing) {this.shangpinxiangqing = shangpinxiangqing;}/*** 获取:飞机详情*/public String getShangpinxiangqing() {return shangpinxiangqing;}/*** 设置:最近点击时间*/public void setClicktime(Date clicktime) {this.clicktime = clicktime;}/*** 获取:最近点击时间*/public Date getClicktime() {return clicktime;}/*** 设置:点击次数*/public void setClicknum(Integer clicknum) {this.clicknum = clicknum;}/*** 获取:点击次数*/public Integer getClicknum() {return clicknum;}/*** 设置:价格*/public void setPrice(Float price) {this.price = price;}/*** 获取:价格*/public Float getPrice() {return price;}}

基于java+springboot+mybatis+vue+elementui的乐器购物商城相关推荐

  1. 基于java+springboot+mybatis+vue+elementui的灯具购物商城网站

    项目介绍 近年来,随着Internet的迅速崛起,互联网技术得到前所未有的发展,成为收集.提供信息的最佳渠道,并逐步进入传统的流通领域.电子商铺也悄然兴起,它的出现及发展,不仅是市场经济以及相应技术发 ...

  2. 基于java+springboot+mybatis+vue+elementui的B2C购物电商平台设计与实现

    项目介绍 随着信息科技的发展,电子商务已经存在了我们生活的每一个角落,通过网络购物可以给人们的生活带来极大的便利,人们只需通过PC或者手机下单自己所需的商品,物流就会将购买的商品送到客户的手上,这极大 ...

  3. 基于java+springboot+mybatis+vue+elementui的门窗销售商城系统

    项目介绍 随着网络的普及,各行各业都已经越来越离不开网络了,在电子商务发展比较前沿的江浙沿海地区,已经有很多公司把铝合金门窗搬到了互联网上,也取得了一定的效果和受到了消费者的广大认同. 门窗行业新兴的 ...

  4. 基于java+springboot+mybatis+vue+elementui的口红电子购物商城

    项目介绍 当前我国口红主要销售渠道为电商平台,据悉受到直播电商崛起.新零售模式的影响,中国口红消费者的消费频次呈现逐年上升趋势.以天猫为例,仅2018年中国口红消费者的平均购买数量为3.3支,其中30 ...

  5. 基于java+springboot+mybatis+vue+elementui的农机机械设备租赁平台

    项目介绍 我国是一个农业大国,全国有大部分人是农民,作为农民最需要是的就是掌握最新的农业资讯,通过网络和世界同步,让自己在辛苦劳作的同时能够更好的创收,从而提高全国国名经济. 现如今,农机租赁平台是当 ...

  6. 基于java+springboot+mybatis+vue+elementui的小区停车位租赁网站

    项目介绍 自从改革开放以来,我国的经济建设的步伐和科学发展水平在不停的提高,与此同时人们的生活水平也在飞速的提升.相比15年前,现在的家庭私家车的保有量可以说是翻了几倍,私家车的大量普及也带来了许许多 ...

  7. 基于java+springboot+mybatis+vue+elementui的网上书籍购买商城

    项目介绍 网上书籍购买商城可以实现人们远程逛逛书店和购买图书的愿望.本系统主的功能是帮助经营实物书店的人们扩大市场和增加知名度.基本功能包括用户注册会员.登录.图书展示.图书查询.在线浏览图书.远程购 ...

  8. 基于java+springboot+mybatis+vue+elementui的古玩玉器交易系统

    项目介绍 随着中国互联网的发展.上网的网民越来越多.拥有网络购物习惯的网民也越来越多.网上购物平台纷拥而出.如淘宝网.京东商城.拉手网等众多购物平台. 古玩玉器行业龙头公司也纷纷踏足网络购物平台.利用 ...

  9. 基于java+springboot+mybatis+vue+elementui的准妈妈孕期交流平台

    项目介绍 随着科学技术的飞速发展,社会的方方面面.各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,准妈妈孕期交流平台当然也不能排除在外.准妈妈孕期交流平台是以实际运用为开发背景,运 ...

最新文章

  1. PHP面试MySQL数据库的索引
  2. queueing 优化_简单聊聊网页的资源加载优化
  3. 【7.19 graphshortestpath graphallshortestpaths函数】matlab 求最短路径函数总结
  4. 单片机large模式_对单片机存储分配新的认识
  5. 1.2 Java类的定义
  6. (Java常用类)日期时间类
  7. OpenCV+python调用本地摄像头并录制视频
  8. HTML css嵌套的一个例子
  9. __attribute__((always_inline))
  10. oracle 客户端连接数_转载:查看Oracle连接数
  11. 深入理解javascript中的焦点管理
  12. linux启动python项目_java项目部署Linux服务器几种启动方式总结经验
  13. html本地修改浏览器自动更新,更改html代码后网页不更新
  14. C++三种方法求解两个数最大公因数和最小公倍数
  15. 通过修改程序解决win7下应用程序兼容性助手弹出
  16. 杨世忠:“周转”知识终圆航天梦
  17. 计算机游戏制作零基础教程,一个人、零基础,一天内学会独立开发出电脑和手机游戏?视频教学...
  18. 超市进销存管理系统软件(JFrame简版)
  19. js 拖曳功能--代码解析
  20. 参数方法,半参数方法,非参数方法

热门文章

  1. 一些关于c语言if语句的练习
  2. 如何让自己的U盘加上logo
  3. 使用最大堆和最小堆实现中位数的查找
  4. MacBook OS Air密码忘了,苹果电脑密码忘了怎么办,密码恢复
  5. python画熊猫代码_超清字符画——Python代码
  6. 工作,你需要注意的20个规则
  7. CSP小明种苹果(C语言)
  8. LinearLayer
  9. 25岁的年轻人,要想清两件事
  10. SpringBoot + Flyway 发版再也不怕忘执行 SQL了