西安营销型网站建设公司,河北省电力建设第一工程公司网站,区块链网站建设方案,网站优化注意事项#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 商品兑换管理
6.数据库文件设计
7.核心代码
7.1 笔记Controller
7.2 笔记Service
7.3 笔记ServicesImpl
7.4 笔记DAO
8.参考文档 1.技术选型
springboot、mybatisplus、vue、elementui、html、css、js、mysql、jdk1.8
2.数据库表结构
18张
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 商品兑换管理 6.数据库文件设计 CREATE TABLE address (id int(20) NOT NULL AUTO_INCREMENT COMMENT 主键 ,yonghu_id int(20) NOT NULL COMMENT 创建用户,address_name varchar(200) NOT NULL COMMENT 收货人 ,address_phone varchar(200) NOT NULL COMMENT 电话 ,address_dizhi varchar(200) NOT NULL COMMENT 地址 ,isdefault_types int(11) NOT NULL COMMENT 是否默认地址 ,insert_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 添加时间,update_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 修改时间,create_time timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 创建时间 show3,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT16 DEFAULT CHARSETutf8 COMMENT收货地址;CREATE TABLE biji (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键 ,yonghu_id int(11) DEFAULT NULL COMMENT 用户,biji_name varchar(200) DEFAULT NULL COMMENT 笔记名称 Search111 ,biji_uuid_number varchar(200) DEFAULT NULL COMMENT 笔记编号,biji_photo varchar(200) DEFAULT NULL COMMENT 笔记照片,zan_number int(11) DEFAULT NULL COMMENT 赞,cai_number int(11) DEFAULT NULL COMMENT 踩,biji_types int(11) DEFAULT NULL COMMENT 笔记类型 Search111,biji_content longtext COMMENT 笔记内容,insert_time timestamp NULL DEFAULT NULL COMMENT 发布时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show1 show2 photoShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT17 DEFAULT CHARSETutf8 COMMENT笔记广场;CREATE TABLE biji_collection (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,biji_id int(11) DEFAULT NULL COMMENT 笔记,yonghu_id int(11) DEFAULT NULL COMMENT 用户,biji_collection_types int(11) DEFAULT NULL COMMENT 类型,insert_time timestamp NULL DEFAULT NULL COMMENT 收藏时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show3 photoShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT21 DEFAULT CHARSETutf8 COMMENT笔记收藏;CREATE TABLE biji_liuyan (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,biji_id int(11) DEFAULT NULL COMMENT 笔记,yonghu_id int(11) DEFAULT NULL COMMENT 用户,biji_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 创建时间,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT16 DEFAULT CHARSETutf8 COMMENT笔记留言;CREATE TABLE cart (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,yonghu_id int(11) DEFAULT NULL COMMENT 所属用户,shangpin_id int(11) DEFAULT NULL COMMENT 商品,buy_number int(11) DEFAULT NULL COMMENT 购买数量,create_time timestamp NULL DEFAULT NULL COMMENT 添加时间,update_time timestamp NULL DEFAULT NULL COMMENT 更新时间,insert_time timestamp NULL DEFAULT NULL COMMENT 创建时间,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT5 DEFAULT CHARSETutf8 COMMENT购物车;CREATE TABLE config (id bigint(20) NOT NULL AUTO_INCREMENT COMMENT 主键,name varchar(100) DEFAULT NULL COMMENT 配置参数名称,value varchar(100) DEFAULT NULL COMMENT 配置参数值,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT4 DEFAULT CHARSETutf8 COMMENT配置文件;CREATE TABLE dictionary (id int(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 gonggao (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键 ,gonggao_name varchar(200) DEFAULT NULL COMMENT 公告名称 Search111 ,gonggao_photo varchar(200) DEFAULT NULL COMMENT 公告图片 ,gonggao_types int(11) NOT NULL COMMENT 公告类型 Search111 ,insert_time timestamp NULL DEFAULT NULL COMMENT 发布时间,gonggao_content longtext COMMENT 公告详情 ,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show1 show2 nameShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT15 DEFAULT CHARSETutf8 COMMENT公告信息;CREATE TABLE guanzhu (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键 ,yonghu_id int(11) DEFAULT NULL COMMENT 用户,guanzhu_uuid_number varchar(200) DEFAULT NULL COMMENT 关注编号,guanzhu_kucun_number 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_INCREMENT21 DEFAULT CHARSETutf8 COMMENT我的关注;CREATE TABLE richangrenwu (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键 ,richangrenwu_uuid_number varchar(200) DEFAULT NULL COMMENT 日常任务编号,richangrenwu_name varchar(200) DEFAULT NULL COMMENT 日常任务标题 Search111 ,richangrenwu_types int(11) DEFAULT NULL COMMENT 日常任务类型 Search111,richangrenwu_jifen decimal(10,2) DEFAULT NULL COMMENT 任务积分,richangrenwu_content longtext COMMENT 任务内容,richangrenwu_wancheng_content longtext COMMENT 完成标准,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show3 listShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT15 DEFAULT CHARSETutf8 COMMENT日常任务;CREATE TABLE richangrenwu_lingqu (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键 ,richangrenwu_id int(11) DEFAULT NULL COMMENT 日常任务,yonghu_id int(11) DEFAULT NULL COMMENT 用户,richangrenwu_lingqu_uuid_number varchar(200) DEFAULT NULL COMMENT 领取任务编号,richangrenwu_lingqu_time date DEFAULT NULL COMMENT 所属日期,insert_time timestamp NULL DEFAULT NULL COMMENT 领取时间,richangrenwu_lingqu_types int(11) DEFAULT NULL COMMENT 任务状态 Search111,richangrenwu_lingqu_yesno_types int(11) DEFAULT NULL COMMENT 审核状态 Search111,richangrenwu_lingqu_yesno_text longtext COMMENT 审核回复,richangrenwu_lingqu_shenhe_time timestamp NULL DEFAULT NULL COMMENT 审核时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show3 listShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT23 DEFAULT CHARSETutf8 COMMENT领取任务;CREATE TABLE shangpin (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键 ,shangpin_name varchar(200) DEFAULT NULL COMMENT 商品名称 Search111 ,shangpin_uuid_number varchar(200) DEFAULT NULL COMMENT 商品编号,shangpin_photo varchar(200) DEFAULT NULL COMMENT 商品照片,zan_number int(11) DEFAULT NULL COMMENT 赞,cai_number int(11) DEFAULT NULL COMMENT 踩,shangpin_types int(11) DEFAULT NULL COMMENT 商品类型 Search111,shangpin_kucun_number int(11) DEFAULT NULL COMMENT 商品库存,shangpin_new_money decimal(10,2) DEFAULT NULL COMMENT 所需积分,shangpin_cangku varchar(200) DEFAULT NULL COMMENT 所属仓库 Search111,shangpin_clicknum int(11) DEFAULT NULL COMMENT 商品热度,shangpin_content longtext COMMENT 商品介绍 ,shangxia_types int(11) DEFAULT NULL COMMENT 是否上架 ,shangpin_delete int(11) DEFAULT NULL COMMENT 逻辑删除,insert_time timestamp NULL DEFAULT NULL COMMENT 录入时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show1 show2 photoShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT15 DEFAULT CHARSETutf8 COMMENT商品;CREATE TABLE shangpin_collection (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,shangpin_id int(11) DEFAULT NULL COMMENT 商品,yonghu_id int(11) DEFAULT NULL COMMENT 用户,shangpin_collection_types int(11) DEFAULT NULL COMMENT 类型,insert_time timestamp NULL DEFAULT NULL COMMENT 收藏时间,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show3 photoShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT16 DEFAULT CHARSETutf8 COMMENT商品收藏;CREATE TABLE shangpin_commentback (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,shangpin_id int(11) DEFAULT NULL COMMENT 商品,yonghu_id int(11) DEFAULT NULL COMMENT 用户,shangpin_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 创建时间,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT16 DEFAULT CHARSETutf8 COMMENT商品评价;CREATE TABLE shangpin_order (id int(11) NOT NULL AUTO_INCREMENT COMMENT 主键,shangpin_order_uuid_number varchar(200) DEFAULT NULL COMMENT 订单编号 Search111 ,address_id int(11) DEFAULT NULL COMMENT 收货地址 ,shangpin_id int(11) DEFAULT NULL COMMENT 商品,yonghu_id int(11) DEFAULT NULL COMMENT 用户,buy_number int(11) DEFAULT NULL COMMENT 兑换数量,shangpin_order_true_price decimal(10,2) DEFAULT NULL COMMENT 花费积分,shangpin_order_courier_name varchar(200) DEFAULT NULL COMMENT 快递公司,shangpin_order_courier_number varchar(200) DEFAULT NULL COMMENT 快递单号,shangpin_order_types int(11) DEFAULT NULL COMMENT 订单类型 Search111 ,shangpin_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_INCREMENT7 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_INCREMENT4 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 性别,yonghu_email varchar(200) DEFAULT NULL COMMENT 用户邮箱,new_money decimal(10,2) DEFAULT NULL COMMENT 积分,yonghu_content longtext COMMENT 用户介绍,jinyong_types int(11) DEFAULT NULL COMMENT 账户状态 Search111 ,create_time timestamp NULL DEFAULT NULL COMMENT 创建时间 show1 show2 photoShow,PRIMARY KEY (id)
) ENGINEInnoDB AUTO_INCREMENT5 DEFAULT CHARSETutf8 COMMENT用户;
7.核心代码
7.1 笔记Controller
package com.controller;/*** 笔记广场* 后端接口* author 计算机编程-吉哥* email
*/
RestController
Controller
RequestMapping(/biji)
public class BijiController {private static final Logger logger LoggerFactory.getLogger(BijiController.class);private static final String TABLE_NAME biji;Autowiredprivate BijiService bijiService;Autowiredprivate TokenService tokenService;Autowiredprivate AddressService addressService;//收货地址Autowiredprivate BijiCollectionService bijiCollectionService;//笔记收藏Autowiredprivate BijiLiuyanService bijiLiuyanService;//笔记留言Autowiredprivate CartService cartService;//购物车Autowiredprivate DictionaryService dictionaryService;//字典表Autowiredprivate GonggaoService gonggaoService;//公告信息Autowiredprivate GuanzhuService guanzhuService;//我的关注Autowiredprivate RichangrenwuService richangrenwuService;//日常任务Autowiredprivate RichangrenwuLingquService richangrenwuLingquService;//领取任务Autowiredprivate ShangpinService shangpinService;//商品Autowiredprivate ShangpinCollectionService shangpinCollectionService;//商品收藏Autowiredprivate ShangpinCommentbackService shangpinCommentbackService;//商品评价Autowiredprivate ShangpinOrderService shangpinOrderService;//商品兑换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));CommonUtil.checkMap(params);PageUtils page bijiService.queryPage(params);//字典表数据转换ListBijiView list (ListBijiView)page.getList();for(BijiView 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);BijiEntity biji bijiService.selectById(id);if(biji !null){//entity转viewBijiView view new BijiView();BeanUtils.copyProperties( biji , view );//把实体数据重构到view中//级联表 用户//级联表YonghuEntity yonghu yonghuService.selectById(biji.getYonghuId());if(yonghu ! null){BeanUtils.copyProperties( yonghu , view ,new String[]{ id, createTime, insertTime, updateTime, username, password, newMoney, yonghuId});//把级联的数据添加到view中,并排除id和创建时间字段,当前表的级联注册表view.setYonghuId(yonghu.getId());}//修改对应字典表字段dictionaryService.dictionaryConvert(view, request);return R.ok().put(data, view);}else {return R.error(511,查不到数据);}}/*** 后端保存*/RequestMapping(/save)public R save(RequestBody BijiEntity biji, HttpServletRequest request){logger.debug(save方法:,,Controller:{},,biji:{},this.getClass().getName(),biji.toString());String role String.valueOf(request.getSession().getAttribute(role));if(false)return R.error(511,永远不会进入);else if(用户.equals(role))biji.setYonghuId(Integer.valueOf(String.valueOf(request.getSession().getAttribute(userId))));WrapperBijiEntity queryWrapper new EntityWrapperBijiEntity().eq(yonghu_id, biji.getYonghuId()).eq(biji_name, biji.getBijiName()).eq(zan_number, biji.getZanNumber()).eq(cai_number, biji.getCaiNumber()).eq(biji_types, biji.getBijiTypes());logger.info(sql语句:queryWrapper.getSqlSegment());BijiEntity bijiEntity bijiService.selectOne(queryWrapper);if(bijiEntitynull){biji.setZanNumber(1);biji.setCaiNumber(1);biji.setInsertTime(new Date());biji.setCreateTime(new Date());bijiService.insert(biji);return R.ok();}else {return R.error(511,表中有相同数据);}}/*** 后端修改*/RequestMapping(/update)public R update(RequestBody BijiEntity biji, HttpServletRequest request) throws NoSuchFieldException, ClassNotFoundException, IllegalAccessException, InstantiationException {logger.debug(update方法:,,Controller:{},,biji:{},this.getClass().getName(),biji.toString());BijiEntity oldBijiEntity bijiService.selectById(biji.getId());//查询原先数据String role String.valueOf(request.getSession().getAttribute(role));
biji.setYonghuId(Integer.valueOf(String.valueOf(request.getSession().getAttribute(userId))));if(.equals(biji.getBijiPhoto()) || null.equals(biji.getBijiPhoto())){biji.setBijiPhoto(null);}if(.equals(biji.getBijiContent()) || null.equals(biji.getBijiContent())){biji.setBijiContent(null);}bijiService.updateById(biji);//根据id更新return R.ok();}/*** 删除*/RequestMapping(/delete)public R delete(RequestBody Integer[] ids, HttpServletRequest request){logger.debug(delete:,,Controller:{},,ids:{},this.getClass().getName(),ids.toString());ListBijiEntity oldBijiList bijiService.selectBatchIds(Arrays.asList(ids));//要删除的数据bijiService.deleteBatchIds(Arrays.asList(ids));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);//.eq(time, new SimpleDateFormat(yyyy-MM-dd).format(new Date()))try {ListBijiEntity bijiList 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){//循环BijiEntity bijiEntity new BijiEntity();bijiList.add(bijiEntity);//把要查询是否重复的字段放入map中//笔记编号if(seachFields.containsKey(bijiUuidNumber)){ListString bijiUuidNumber seachFields.get(bijiUuidNumber);bijiUuidNumber.add(data.get(0));//要改的}else{ListString bijiUuidNumber new ArrayList();bijiUuidNumber.add(data.get(0));//要改的seachFields.put(bijiUuidNumber,bijiUuidNumber);}}//查询是否重复//笔记编号ListBijiEntity bijiEntities_bijiUuidNumber bijiService.selectList(new EntityWrapperBijiEntity().in(biji_uuid_number, seachFields.get(bijiUuidNumber)));if(bijiEntities_bijiUuidNumber.size() 0 ){ArrayListString repeatFields new ArrayList();for(BijiEntity s:bijiEntities_bijiUuidNumber){repeatFields.add(s.getBijiUuidNumber());}return R.error(511,数据库的该表中的 [笔记编号] 字段已经存在 存在数据为:repeatFields.toString());}bijiService.insertBatch(bijiList);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);ListBijiView returnBijiViewList new ArrayList();//查看收藏MapString, Object params1 new HashMap(params);params1.put(sort,id);params1.put(yonghuId,request.getSession().getAttribute(userId));params1.put(shangxiaTypes,1);params1.put(bijiYesnoTypes,2);PageUtils pageUtils bijiCollectionService.queryPage(params1);ListBijiCollectionView collectionViewsList (ListBijiCollectionView)pageUtils.getList();MapInteger,Integer typeMapnew HashMap();//购买的类型listfor(BijiCollectionView collectionView:collectionViewsList){Integer bijiTypes collectionView.getBijiTypes();if(typeMap.containsKey(bijiTypes)){typeMap.put(bijiTypes,typeMap.get(bijiTypes)1);}else{typeMap.put(bijiTypes,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(bijiTypes,type);params2.put(shangxiaTypes,1);params2.put(bijiYesnoTypes,2);PageUtils pageUtils1 bijiService.queryPage(params2);ListBijiView bijiViewList (ListBijiView)pageUtils1.getList();returnBijiViewList.addAll(bijiViewList);if(returnBijiViewList.size() limit) break;//返回的推荐数量大于要的数量 跳出循环}params.put(shangxiaTypes,1);params.put(bijiYesnoTypes,2);//正常查询出来商品,用于补全推荐缺少的数据PageUtils page bijiService.queryPage(params);if(returnBijiViewList.size()limit){//返回数量还是小于要求数量int toAddNum limit - returnBijiViewList.size();//要添加的数量ListBijiView bijiViewList (ListBijiView)page.getList();for(BijiView bijiView:bijiViewList){Boolean addFlag true;for(BijiView returnBijiView:returnBijiViewList){if(returnBijiView.getId().intValue() bijiView.getId().intValue()) addFlagfalse;//返回的数据中已存在此商品}if(addFlag){toAddNumtoAddNum-1;returnBijiViewList.add(bijiView);if(toAddNum0) break;//够数量了}}}else {returnBijiViewList returnBijiViewList.subList(0, limit);}for(BijiView c:returnBijiViewList)dictionaryService.dictionaryConvert(c, request);page.setList(returnBijiViewList);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 bijiService.queryPage(params);//字典表数据转换ListBijiView list (ListBijiView)page.getList();for(BijiView c:list)dictionaryService.dictionaryConvert(c, request); //修改对应字典表字段return R.ok().put(data, page);}/*** 前端详情*/RequestMapping(/detail/{id})public R detail(PathVariable(id) Integer id, HttpServletRequest request){logger.debug(detail方法:,,Controller:{},,id:{},this.getClass().getName(),id);BijiEntity biji bijiService.selectById(id);if(biji !null){//entity转viewBijiView view new BijiView();BeanUtils.copyProperties( biji , view );//把实体数据重构到view中//级联表YonghuEntity yonghu yonghuService.selectById(biji.getYonghuId());if(yonghu ! null){BeanUtils.copyProperties( yonghu , view ,new String[]{ id, createTime, insertTime, updateTime, username, password, newMoney, yonghuId});//把级联的数据添加到view中,并排除id和创建时间字段view.setYonghuId(yonghu.getId());}//修改对应字典表字段dictionaryService.dictionaryConvert(view, request);return R.ok().put(data, view);}else {return R.error(511,查不到数据);}}/*** 前端保存*/RequestMapping(/add)public R add(RequestBody BijiEntity biji, HttpServletRequest request){logger.debug(add方法:,,Controller:{},,biji:{},this.getClass().getName(),biji.toString());WrapperBijiEntity queryWrapper new EntityWrapperBijiEntity().eq(yonghu_id, biji.getYonghuId()).eq(biji_name, biji.getBijiName()).eq(biji_uuid_number, biji.getBijiUuidNumber()).eq(zan_number, biji.getZanNumber()).eq(cai_number, biji.getCaiNumber()).eq(biji_types, biji.getBijiTypes());logger.info(sql语句:queryWrapper.getSqlSegment());BijiEntity bijiEntity bijiService.selectOne(queryWrapper);if(bijiEntitynull){biji.setZanNumber(1);biji.setCaiNumber(1);biji.setInsertTime(new Date());biji.setCreateTime(new Date());bijiService.insert(biji);return R.ok();}else {return R.error(511,表中有相同数据);}}}
7.2 笔记Service
package com.service;import com.baomidou.mybatisplus.service.IService;
import com.utils.PageUtils;
import com.entity.BijiEntity;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import org.springframework.lang.Nullable;
import java.util.List;/*** 笔记广场 服务类*/
public interface BijiService extends IServiceBijiEntity {/*** param params 查询参数* return 带分页的查询出来的数据*/PageUtils queryPage(MapString, Object params);}
7.3 笔记ServicesImpl
package com.service.impl;/*** 笔记广场 服务实现类*/
Service(bijiService)
Transactional
public class BijiServiceImpl extends ServiceImplBijiDao, BijiEntity implements BijiService {Overridepublic PageUtils queryPage(MapString,Object params) {PageBijiView page new QueryBijiView(params).getPage();page.setRecords(baseMapper.selectListView(page,params));return new PageUtils(page);}}7.4 笔记DAO
package com.dao;import com.entity.BijiEntity;
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.BijiView;/*** 笔记广场 Dao 接口** author */
public interface BijiDao extends BaseMapperBijiEntity {ListBijiView selectListView(Pagination page,Param(params)MapString,Object params);}8.参考文档 你可能还有感兴趣的项目 更多项目推荐:计算机毕业设计项目 如果大家有任何疑虑请在下方咨询或评论