太原高端网站建设,寻找电子商务网站建设,做App和网站 聚马,抖音带运营是怎么回事博主介绍#xff1a;✌从事软件开发10年之余#xff0c;专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ #x1f345;文末获取源码联系#x1f345; #x1f447;#x1f3fb; 精… 博主介绍✌从事软件开发10年之余专注于Java技术领域、Python人工智能及数据挖掘、小程序项目开发和Android项目开发等。CSDN、掘金、华为云、InfoQ、阿里云等平台优质作者✌ 文末获取源码联系 精彩专栏推荐订阅 不然下次找不到哟 ————————————————计算机毕业设计《1000套》✌ 目录
1、项目介绍及开发技术
1.1 项目介绍
1.2 开发技术
2、系统功能设计结构图
3、功能截图
3.1 前台功能
3.2 后台功能
4、数据库表结构设计
5、关键代码
5.1 家电Controller模块
5.2 家电Service模块
5.3 家电ServiceImpl模块
5.4 家电Dao模块
6、论文目录结构
7、源码获取 1、项目介绍及开发技术 1.1 项目介绍
在数字化时代电子商务已成为家电销售的重要渠道。消费者越来越倾向于通过在线平台浏览、比较和购买家电产品。为了满足市场需求提升用户体验我们设计并开发了一个家电销售展示平台旨在提供一个集商品展示、用户交流、信息反馈于一体的综合性服务平台。
背景 随着互联网技术的飞速发展传统的家电销售模式已经无法完全满足现代消费者的需求。消费者期望能够在网上方便地获取家电信息比较不同产品享受便捷的购物体验。此外随着市场竞争的加剧家电销售商也需要一个有效的平台来展示产品吸引和留住客户。
目的意义
1. 提升购物体验平台通过提供清晰的商品图片、详细的产品描述和用户评价帮助消费者做出更明智的购买决策。2. 增强用户互动通过论坛和留言反馈功能平台鼓励用户之间的交流和与商家的互动从而提升用户参与度和品牌忠诚度。3. 优化信息传递公告信息和轮播图信息管理功能使得商家能够及时发布促销活动和最新产品信息吸引用户关注。4. 提高管理效率后端管理系统为商家提供了商品管理、订单处理、用户反馈跟踪等工具提高了运营效率和服务质量。5. 数据分析与决策支持平台的数据分析功能为商家提供了用户行为分析和销售趋势预测支持商家制定更有效的市场策略。
综上所述家电销售展示平台的设计与实现不仅能够为消费者提供一个便捷、互动的购物环境还能够为家电销售商提供一个高效、智能的管理工具。通过技术手段优化家电销售流程该平台有望成为推动家电电子商务发展的重要力量为消费者和商家创造更大的价值。
1.2 开发技术
类别技术名称用途/描述开发语言Java一种广泛使用的面向对象编程语言。框架Spring Boot简化Spring应用的初始搭建以及开发过程。ORM工具MyBatis PlusMyBatis的增强工具简化CRUD操作。数据库MySQL流行的关系型数据库管理系统。构建工具Maven项目管理和理解工具。开发工具IDEA集成开发环境用于代码编写和调试。JDK版本JDK 1.8Java开发工具包提供运行Java程序所需的环境。前端框架Vue用于构建用户界面的渐进式JavaScript框架。UI框架Element UI基于Vue的桌面端组件库。前端技术HTML网页内容的标准标记语言。前端技术CSS描述HTML文档的样式。前端技术JS网页脚本语言用于实现网页的动态效果。 2、系统功能设计结构图 功能模块结构图 │ ├── 前端 │ ├── 登录 │ ├── 注册 │ ├── 论坛 │ ├── 商品 │ ├── 留言反馈 │ ├── 公告信息 │ ├── 个人中心 │ ├── 购物车 │ └── 后端 ├── 登录 ├── 首页 ├── 个人中心 ├── 管理员管理 ├── 基础数据管理 ├── 论坛管理 ├── 商品管理 ├── 留言反馈管理 ├── 公告信息管理 ├── 用户管理 └── 轮播图信息管理 系统MVC框架请求流程展示 3、功能截图 3.1 前台功能 3.2 后台功能 4、数据库表结构设计 CREATE TABLE dictionary (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,dic_code varchar(200) DEFAULT NULL COMMENT 字段,dic_name varchar(200) DEFAULT NULL COMMENT 字段名,code_index int(11) DEFAULT NULL COMMENT 编码,index_name varchar(200) DEFAULT NULL COMMENT 编码名字 Search111 ,super_id int(11) DEFAULT NULL COMMENT 父字段id,beizhu varchar(200) DEFAULT NULL COMMENT 备注,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT58 DEFAULT CHARSETutf8 COMMENT字典;CREATE TABLE forum (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,forum_name varchar(200) DEFAULT NULL COMMENT 帖子标题 Search111 ,yonghu_id int(11) DEFAULT NULL COMMENT 用户,users_id int(11) DEFAULT NULL COMMENT 管理员,forum_content longtext COMMENT 发布内容,super_ids int(11) DEFAULT NULL COMMENT 父id,forum_state_types int(11) DEFAULT NULL COMMENT 帖子状态,insert_time timestamp NULL DEFAULT NULL COMMENT 发帖时间,update_time timestamp NULL DEFAULT NULL COMMENT 修改时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show2,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT17 DEFAULT CHARSETutf8 COMMENT论坛;CREATE TABLE jiadian_commentback (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,jiadian_id int(11) DEFAULT NULL COMMENT 商品,yonghu_id int(11) DEFAULT NULL COMMENT 用户,jiadian_commentback_text longtext COMMENT 评价内容,insert_time timestamp NULL DEFAULT NULL COMMENT 评价时间,reply_text longtext COMMENT 回复内容,update_time timestamp NULL DEFAULT NULL COMMENT 回复时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show3 listShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT16 DEFAULT CHARSETutf8 COMMENT商品评价;CREATE TABLE jiadian_order (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,jiadian_order_uuid_number varchar(200) DEFAULT NULL COMMENT 订单号 Search111 ,address_id int(11) DEFAULT NULL COMMENT 收货地址 ,jiadian_id int(11) DEFAULT NULL COMMENT 商品,yonghu_id int(11) DEFAULT NULL COMMENT 用户,buy_number int(11) DEFAULT NULL COMMENT 购买数量,jiadian_order_true_price decimal(10,2) DEFAULT NULL COMMENT 实付价格,jiadian_order_courier_name varchar(200) DEFAULT NULL COMMENT 快递公司,jiadian_order_courier_number varchar(200) DEFAULT NULL COMMENT 订单快递单号,jiadian_order_types int(11) DEFAULT NULL COMMENT 订单类型 Search111 ,jiadian_order_payment_types int(11) DEFAULT NULL COMMENT 支付类型,insert_time timestamp NULL DEFAULT NULL COMMENT 订单创建时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show3 listShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT4 DEFAULT CHARSETutf8 COMMENT商品订单;CREATE TABLE liuyan (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键 ,yonghu_id int(11) DEFAULT NULL COMMENT 用户,liuyan_name varchar(200) DEFAULT NULL COMMENT 留言标题 Search111 ,liuyan_text longtext COMMENT 留言内容,insert_time timestamp NULL DEFAULT NULL COMMENT 留言时间,reply_text longtext COMMENT 回复内容,update_time timestamp NULL DEFAULT NULL COMMENT 回复时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show2 nameShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT16 DEFAULT CHARSETutf8 COMMENT留言反馈;DROP TABLE IF EXISTS news;CREATE TABLE news (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,news_name varchar(200) DEFAULT NULL COMMENT 公告标题 Search111 ,news_types int(11) DEFAULT NULL COMMENT 公告类型 Search111 ,news_photo varchar(200) DEFAULT NULL COMMENT 公告图片,insert_time timestamp NULL DEFAULT NULL COMMENT 添加时间,news_content longtext COMMENT 公告详情,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show1 show2 nameShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT15 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 AUTO_INCREMENT3 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 int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,username varchar(200) DEFAULT NULL COMMENT 账户,password varchar(200) DEFAULT NULL COMMENT 密码,yonghu_name varchar(200) DEFAULT NULL COMMENT 用户姓名 Search111 ,yonghu_phone varchar(200) DEFAULT NULL COMMENT 联系方式,yonghu_id_number varchar(200) DEFAULT NULL COMMENT 身份证号,yonghu_photo varchar(200) DEFAULT NULL COMMENT 用户头像,sex_types int(11) DEFAULT NULL COMMENT 性别 Search111,yonghu_email varchar(200) DEFAULT NULL COMMENT 电子邮箱,new_money decimal(10,2) DEFAULT NULL COMMENT 余额 ,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT4 DEFAULT CHARSETutf8 COMMENT用户; 5、关键代码 5.1 家电Controller模块
package com.controller;import java.io.File;
import java.math.BigDecimal;
import java.net.URL;
import java.text.SimpleDateFormat;
import com.alibaba.fastjson.JSONObject;
import java.util.*;
import org.springframework.beans.BeanUtils;
import javax.servlet.http.HttpServletRequest;
import org.springframework.web.context.ContextLoader;
import javax.servlet.ServletContext;
import com.service.TokenService;
import com.utils.*;
import java.lang.reflect.InvocationTargetException;import com.service.DictionaryService;
import org.apache.commons.lang3.StringUtils;
import com.annotation.IgnoreAuth;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.entity.*;
import com.entity.view.*;
import com.service.*;
import com.utils.PageUtils;
import com.utils.R;
import com.alibaba.fastjson.*;/*** 商品* 后端接口* author* email
*/
RestController
Controller
RequestMapping(/jiadian)
public class JiadianController {private static final Logger logger LoggerFactory.getLogger(JiadianController.class);private static final String TABLE_NAME jiadian;Autowiredprivate JiadianService jiadianService;Autowiredprivate TokenService tokenService;Autowiredprivate AddressService addressService;//收货地址Autowiredprivate CartService cartService;//购物车Autowiredprivate DictionaryService dictionaryService;//字典Autowiredprivate ForumService forumService;//论坛Autowiredprivate JiadianCollectionService jiadianCollectionService;//商品收藏Autowiredprivate JiadianCommentbackService jiadianCommentbackService;//商品评价Autowiredprivate JiadianOrderService jiadianOrderService;//商品订单Autowiredprivate LiuyanService liuyanService;//留言反馈Autowiredprivate NewsService newsService;//公告信息Autowiredprivate YonghuService yonghuService;//用户Autowiredprivate UsersService usersService;//管理员/*** 后端列表*/RequestMapping(/page)public R page(RequestParam MapString, Object params, HttpServletRequest request){logger.debug(page方法:,,Controller:{},,params:{},this.getClass().getName(),JSONObject.toJSONString(params));String role String.valueOf(request.getSession().getAttribute(role));if(false)return R.error(511,永不会进入);else if(用户.equals(role))params.put(yonghuId,request.getSession().getAttribute(userId));params.put(jiadianDeleteStart,1);params.put(jiadianDeleteEnd,1);CommonUtil.checkMap(params);PageUtils page jiadianService.queryPage(params);//字典表数据转换ListJiadianView list (ListJiadianView)page.getList();for(JiadianView c:list){//修改对应字典表字段dictionaryService.dictionaryConvert(c, request);}return R.ok().put(data, page);}/*** 后端详情*/RequestMapping(/info/{id})public R info(PathVariable(id) Long id, HttpServletRequest request){logger.debug(info方法:,,Controller:{},,id:{},this.getClass().getName(),id);JiadianEntity jiadian jiadianService.selectById(id);if(jiadian !null){//entity转viewJiadianView view new JiadianView();BeanUtils.copyProperties( jiadian , view );//把实体数据重构到view中//修改对应字典表字段dictionaryService.dictionaryConvert(view, request);return R.ok().put(data, view);}else {return R.error(511,查不到数据);}}/*** 后端保存*/RequestMapping(/save)public R save(RequestBody JiadianEntity jiadian, HttpServletRequest request){logger.debug(save方法:,,Controller:{},,jiadian:{},this.getClass().getName(),jiadian.toString());String role String.valueOf(request.getSession().getAttribute(role));if(false)return R.error(511,永远不会进入);WrapperJiadianEntity queryWrapper new EntityWrapperJiadianEntity().eq(jiadian_name, jiadian.getJiadianName()).eq(jiadian_types, jiadian.getJiadianTypes()).eq(jiadian_kucun_number, jiadian.getJiadianKucunNumber()).eq(shangxia_types, jiadian.getShangxiaTypes()).eq(jiadian_delete, 1);logger.info(sql语句:queryWrapper.getSqlSegment());JiadianEntity jiadianEntity jiadianService.selectOne(queryWrapper);if(jiadianEntitynull){jiadian.setJiadianClicknum(1);jiadian.setShangxiaTypes(1);jiadian.setJiadianDelete(1);jiadian.setInsertTime(new Date());jiadian.setCreateTime(new Date());jiadianService.insert(jiadian);return R.ok();}else {return R.error(511,表中有相同数据);}}/*** 后端修改*/RequestMapping(/update)public R update(RequestBody JiadianEntity jiadian, HttpServletRequest request) throws NoSuchFieldException, ClassNotFoundException, IllegalAccessException, InstantiationException {logger.debug(update方法:,,Controller:{},,jiadian:{},this.getClass().getName(),jiadian.toString());JiadianEntity oldJiadianEntity jiadianService.selectById(jiadian.getId());//查询原先数据String role String.valueOf(request.getSession().getAttribute(role));
// if(false)
// return R.error(511,永远不会进入);if(.equals(jiadian.getJiadianPhoto()) || null.equals(jiadian.getJiadianPhoto())){jiadian.setJiadianPhoto(null);}jiadianService.updateById(jiadian);//根据id更新return R.ok();}/*** 删除*/RequestMapping(/delete)public R delete(RequestBody Integer[] ids, HttpServletRequest request){logger.debug(delete:,,Controller:{},,ids:{},this.getClass().getName(),ids.toString());ListJiadianEntity oldJiadianList jiadianService.selectBatchIds(Arrays.asList(ids));//要删除的数据ArrayListJiadianEntity list new ArrayList();for(Integer id:ids){JiadianEntity jiadianEntity new JiadianEntity();jiadianEntity.setId(id);jiadianEntity.setJiadianDelete(2);list.add(jiadianEntity);}if(list ! null list.size() 0){jiadianService.updateBatchById(list);}return R.ok();}/*** 批量上传*/RequestMapping(/batchInsert)public R save( String fileName, HttpServletRequest request){logger.debug(batchInsert方法:,,Controller:{},,fileName:{},this.getClass().getName(),fileName);Integer yonghuId Integer.valueOf(String.valueOf(request.getSession().getAttribute(userId)));SimpleDateFormat sdf new SimpleDateFormat(yyyy-MM-dd HH:mm:ss);try {ListJiadianEntity jiadianList new ArrayList();//上传的东西MapString, ListString seachFields new HashMap();//要查询的字段Date date new Date();int lastIndexOf fileName.lastIndexOf(.);if(lastIndexOf -1){return R.error(511,该文件没有后缀);}else{String suffix fileName.substring(lastIndexOf);if(!.xls.equals(suffix)){return R.error(511,只支持后缀为xls的excel文件);}else{URL resource this.getClass().getClassLoader().getResource(static/upload/ fileName);//获取文件路径File file new File(resource.getFile());if(!file.exists()){return R.error(511,找不到上传文件请联系管理员);}else{ListListString dataList PoiUtil.poiImport(file.getPath());//读取xls文件dataList.remove(0);//删除第一行因为第一行是提示for(ListString data:dataList){//循环JiadianEntity jiadianEntity new JiadianEntity();
// jiadianEntity.setJiadianName(data.get(0)); //商品名称 要改的
// jiadianEntity.setJiadianUuidNumber(data.get(0)); //商品编号 要改的
// jiadianEntity.setJiadianPhoto();//详情和图片
// jiadianEntity.setJiadianTypes(Integer.valueOf(data.get(0))); //商品类型 要改的
// jiadianEntity.setJiadianKucunNumber(Integer.valueOf(data.get(0))); //商品库存 要改的
// jiadianEntity.setJiadianOldMoney(data.get(0)); //商品原价 要改的
// jiadianEntity.setJiadianNewMoney(data.get(0)); //现价 要改的
// jiadianEntity.setJiadianClicknum(Integer.valueOf(data.get(0))); //商品热度 要改的
// jiadianEntity.setJiadianContent();//详情和图片
// jiadianEntity.setShangxiaTypes(Integer.valueOf(data.get(0))); //是否上架 要改的
// jiadianEntity.setJiadianDelete(1);//逻辑删除字段
// jiadianEntity.setInsertTime(date);//时间
// jiadianEntity.setCreateTime(date);//时间jiadianList.add(jiadianEntity);//把要查询是否重复的字段放入map中//商品编号if(seachFields.containsKey(jiadianUuidNumber)){ListString jiadianUuidNumber seachFields.get(jiadianUuidNumber);jiadianUuidNumber.add(data.get(0));//要改的}else{ListString jiadianUuidNumber new ArrayList();jiadianUuidNumber.add(data.get(0));//要改的seachFields.put(jiadianUuidNumber,jiadianUuidNumber);}}//查询是否重复//商品编号ListJiadianEntity jiadianEntities_jiadianUuidNumber jiadianService.selectList(new EntityWrapperJiadianEntity().in(jiadian_uuid_number, seachFields.get(jiadianUuidNumber)).eq(jiadian_delete, 1));if(jiadianEntities_jiadianUuidNumber.size() 0 ){ArrayListString repeatFields new ArrayList();for(JiadianEntity s:jiadianEntities_jiadianUuidNumber){repeatFields.add(s.getJiadianUuidNumber());}return R.error(511,数据库的该表中的 [商品编号] 字段已经存在 存在数据为:repeatFields.toString());}jiadianService.insertBatch(jiadianList);return R.ok();}}}}catch (Exception e){e.printStackTrace();return R.error(511,批量插入数据异常请联系管理员);}}/*** 个性推荐*/IgnoreAuthRequestMapping(/gexingtuijian)public R gexingtuijian(RequestParam MapString, Object params, HttpServletRequest request){logger.debug(gexingtuijian方法:,,Controller:{},,params:{},this.getClass().getName(),JSONObject.toJSONString(params));CommonUtil.checkMap(params);ListJiadianView returnJiadianViewList new ArrayList();//查询订单MapString, Object params1 new HashMap(params);params1.put(sort,id);params1.put(yonghuId,request.getSession().getAttribute(userId));PageUtils pageUtils jiadianOrderService.queryPage(params1);ListJiadianOrderView orderViewsList (ListJiadianOrderView)pageUtils.getList();MapInteger,Integer typeMapnew HashMap();//购买的类型listfor(JiadianOrderView orderView:orderViewsList){Integer jiadianTypes orderView.getJiadianTypes();if(typeMap.containsKey(jiadianTypes)){typeMap.put(jiadianTypes,typeMap.get(jiadianTypes)1);}else{typeMap.put(jiadianTypes,1);}}ListInteger typeList new ArrayList();//排序后的有序的类型 按最多到最少typeMap.entrySet().stream().sorted((o1, o2) - o2.getValue() - o1.getValue()).forEach(e - typeList.add(e.getKey()));//排序Integer limit Integer.valueOf(String.valueOf(params.get(limit)));for(Integer type:typeList){MapString, Object params2 new HashMap(params);params2.put(jiadianTypes,type);PageUtils pageUtils1 jiadianService.queryPage(params2);ListJiadianView jiadianViewList (ListJiadianView)pageUtils1.getList();returnJiadianViewList.addAll(jiadianViewList);if(returnJiadianViewList.size() limit) break;//返回的推荐数量大于要的数量 跳出循环}//正常查询出来商品,用于补全推荐缺少的数据PageUtils page jiadianService.queryPage(params);if(returnJiadianViewList.size()limit){//返回数量还是小于要求数量int toAddNum limit - returnJiadianViewList.size();//要添加的数量ListJiadianView jiadianViewList (ListJiadianView)page.getList();for(JiadianView jiadianView:jiadianViewList){Boolean addFlag true;for(JiadianView returnJiadianView:returnJiadianViewList){if(returnJiadianView.getId().intValue() jiadianView.getId().intValue()) addFlagfalse;//返回的数据中已存在此商品}if(addFlag){toAddNumtoAddNum-1;returnJiadianViewList.add(jiadianView);if(toAddNum0) break;//够数量了}}}else {returnJiadianViewList returnJiadianViewList.subList(0, limit);}for(JiadianView c:returnJiadianViewList)dictionaryService.dictionaryConvert(c, request);page.setList(returnJiadianViewList);return R.ok().put(data, page);}/*** 前端列表*/IgnoreAuthRequestMapping(/list)public R list(RequestParam MapString, Object params, HttpServletRequest request){logger.debug(list方法:,,Controller:{},,params:{},this.getClass().getName(),JSONObject.toJSONString(params));CommonUtil.checkMap(params);PageUtils page jiadianService.queryPage(params);//字典表数据转换ListJiadianView list (ListJiadianView)page.getList();for(JiadianView c:list)dictionaryService.dictionaryConvert(c, request); //修改对应字典表字段return R.ok().put(data, page);}/*** 前端详情*/RequestMapping(/detail/{id})public R detail(PathVariable(id) Long id, HttpServletRequest request){logger.debug(detail方法:,,Controller:{},,id:{},this.getClass().getName(),id);JiadianEntity jiadian jiadianService.selectById(id);if(jiadian !null){//点击数量加1jiadian.setJiadianClicknum(jiadian.getJiadianClicknum()1);jiadianService.updateById(jiadian);//entity转viewJiadianView view new JiadianView();BeanUtils.copyProperties( jiadian , view );//把实体数据重构到view中//修改对应字典表字段dictionaryService.dictionaryConvert(view, request);return R.ok().put(data, view);}else {return R.error(511,查不到数据);}}/*** 前端保存*/RequestMapping(/add)public R add(RequestBody JiadianEntity jiadian, HttpServletRequest request){logger.debug(add方法:,,Controller:{},,jiadian:{},this.getClass().getName(),jiadian.toString());WrapperJiadianEntity queryWrapper new EntityWrapperJiadianEntity().eq(jiadian_name, jiadian.getJiadianName()).eq(jiadian_uuid_number, jiadian.getJiadianUuidNumber()).eq(jiadian_types, jiadian.getJiadianTypes()).eq(jiadian_kucun_number, jiadian.getJiadianKucunNumber()).eq(jiadian_clicknum, jiadian.getJiadianClicknum()).eq(shangxia_types, jiadian.getShangxiaTypes()).eq(jiadian_delete, jiadian.getJiadianDelete())
// .notIn(jiadian_types, new Integer[]{102});logger.info(sql语句:queryWrapper.getSqlSegment());JiadianEntity jiadianEntity jiadianService.selectOne(queryWrapper);if(jiadianEntitynull){jiadian.setJiadianClicknum(1);jiadian.setJiadianDelete(1);jiadian.setInsertTime(new Date());jiadian.setCreateTime(new Date());jiadianService.insert(jiadian);return R.ok();}else {return R.error(511,表中有相同数据);}}}
5.2 家电Service模块 package com.service;import com.baomidou.mybatisplus.service.IService;
import com.utils.PageUtils;
import com.entity.JiadianEntity;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.springframework.lang.Nullable;
import java.util.List;/*** 商品 服务类*/
public interface JiadianService extends IServiceJiadianEntity {/*** param params 查询参数* return 带分页的查询出来的数据*/PageUtils queryPage(MapString, Object params);}
5.3 家电ServiceImpl模块 package com.service.impl;import com.utils.StringUtil;
import com.service.DictionaryService;
import com.utils.ClazzDiff;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.lang.reflect.Field;
import java.util.*;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import org.springframework.transaction.annotation.Transactional;
import com.utils.PageUtils;
import com.utils.Query;
import org.springframework.web.context.ContextLoader;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import org.springframework.lang.Nullable;
import org.springframework.util.Assert;
import com.dao.JiadianDao;
import com.entity.JiadianEntity;
import com.service.JiadianService;
import com.entity.view.JiadianView;/*** 商品 服务实现类*/
Service(jiadianService)
Transactional
public class JiadianServiceImpl extends ServiceImplJiadianDao, JiadianEntity implements JiadianService {Overridepublic PageUtils queryPage(MapString,Object params) {PageJiadianView page new QueryJiadianView(params).getPage();page.setRecords(baseMapper.selectListView(page,params));return new PageUtils(page);}}5.4 家电Dao模块 package com.dao;import com.entity.JiadianEntity;
import com.baomidou.mybatisplus.mapper.BaseMapper;
import java.util.List;
import java.util.Map;
import com.baomidou.mybatisplus.plugins.pagination.Pagination;import org.apache.ibatis.annotations.Param;
import com.entity.view.JiadianView;/*** 商品 Dao 接口** author */
public interface JiadianDao extends BaseMapperJiadianEntity {ListJiadianView selectListView(Pagination page,Param(params)MapString,Object params);}6、论文目录结构 摘要... I
Abstract... II
1 绪论... 1 1.1 项目简介... 1 1.2 调查研究... 1 1.2.1 研究背景及意义... 1 1.2.2 国内外研究现状... 2 1.2.3 研究主要内容... 2 1.3 论文的章节安排... 3
2 系统相关技术介绍... 4 2.1 Java语言... 4 2.2 SpringBoot框架... 4 2.3 Vue框架... 4 2.4 MySQL数据库... 4
3 系统需求分析... 6 3.1 可行性分析... 6 3.1.1 技术可行性... 6 3.1.2 经济可行性... 6 3.1.3 操作可行性... 6 3.2 系统功能需求... 6 3.2.1 用户端功能需求... 6 3.2.2 XX端功能需求... 6 3.2.3 管理员端功能需求... 6 3.3 系统性能需求... 6
4 系统总体设计... 7 4.1 系统总体架构设计... 7 4.2 系统的功能设计... 7 4.3 数据库设计... 7 4.3.1 概念设计E-R图... 7 4.3.2 逻辑设计关系模式... 7 4.3.3 数据库物理设计... 7
5 系统详细实现... 14 5.1 系统实现环境... 14 5.2 用户端... 14 5.2.1 登录页面... 14 5.2.2 注册页面... 14 5.2.3 XXXX页面... 14 5.2.4 XXXX页面... 14 5.2.5 XXXX页面... 14 5.3 XXXX端... 15 5.3.1 XXXX页面... 15 5.3.2 XXXX页面... 15 5.3.3 XXXX页面... 15 5.3.4 XXXX页面... 15 5.4 管理端... 15 5.4.1 用户管理页面... 15 5.4.2 XXXX页面... 15 5.4.3 XXXX页面... 16 5.4.4 XXXX页面... 16
6 系统测试... 16 6.1 测试目的... 16 6.2 测试方法... 16 6.3 测试用例... 16 6.3.1 XXXX测试... 16 6.3.2 XXXX测试... 16 6.4 测试结果... 16
结论... 17
参考文献... 18
致谢... 19
更多源码
计算机毕业设计选题1000套等你来 7、源码获取 感谢大家的阅读如有不懂的问题可以评论区交流或私聊!
喜欢文章可以点赞、收藏、关注、评论啦
→下方联系方式获取源码←