产品网站建设必要性,多种郑州网站建设,湖南seo网站设计,电影网站建设费用文章目录项目介绍一、项目功能介绍1、用户模块主要功能包括#xff1a;2、商家模块主要功能包括#xff1a;3、管理员模块主要功能包括#xff1a;二、部分页面展示1、用户模块部分功能页面展示2、商家模块部分功能页面展示3、管理员模块部分功能页面展示三、部分源码四、底…
文章目录项目介绍一、项目功能介绍1、用户模块主要功能包括2、商家模块主要功能包括3、管理员模块主要功能包括二、部分页面展示1、用户模块部分功能页面展示2、商家模块部分功能页面展示3、管理员模块部分功能页面展示三、部分源码四、底部获取全部源码项目介绍
基于SpringBoot和Mybatis的农产品销售系统/商城 一、项目功能介绍
本系统分为用户、店家和管理员三种角色
1、用户模块主要功能包括
1、登录/注册2、主页浏览3、商家店铺浏览4、评论浏览5、发表评论6、农产品浏览7、自然风光介绍8、修改个人信息9、查看农产品介绍10、修改个人资料11、查看订单12、编辑收获地址13、收藏农产品和查看收藏14、购买农产品15、查看购物车16、申请退货17、查看农业扶贫信息18、爱心捐赠
2、商家模块主要功能包括
1、修改密码2、修改商家信息3、商品管理4、商品分类管理5、生成地分类管理6、贫困店家申请管理7、订单管理
3、管理员模块主要功能包括
1、修改密码和个人2、用户管理新增用户和删除用户3、商家管理新增商家和删除商家4、店铺管理5、商品管理6、商品分类管理7、生产产地分类管理8、爱心捐赠管理9、贫困店家申请管理10、贫困店家信息管理11、爱心箱管理12、退款申请管理13、轮播图管理14、自然风光管理15、全部订单管理
二、部分页面展示
1、用户模块部分功能页面展示 2、商家模块部分功能页面展示 3、管理员模块部分功能页面展示 三、部分源码
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.DianjiaEntity;
import com.entity.view.DianjiaView;import com.service.DianjiaService;
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 * date 2021-04-18 15:18:17*/
RestController
RequestMapping(/dianjia)
public class DianjiaController {Autowiredprivate DianjiaService dianjiaService;Autowiredprivate TokenService tokenService;/*** 登录*/IgnoreAuthRequestMapping(value /login)public R login(String username, String password, String captcha, HttpServletRequest request) {DianjiaEntity user dianjiaService.selectOne(new EntityWrapperDianjiaEntity().eq(dianjiaming, username));if(usernull || !user.getMima().equals(password)) {return R.error(账号或密码不正确);}String token tokenService.generateToken(user.getId(), username,dianjia, 管理员 );return R.ok().put(token, token);}/*** 注册*/IgnoreAuthRequestMapping(/register)public R register(RequestBody DianjiaEntity dianjia){//ValidatorUtils.validateEntity(dianjia);DianjiaEntity user dianjiaService.selectOne(new EntityWrapperDianjiaEntity().eq(dianjiaming, dianjia.getDianjiaming()));if(user!null) {return R.error(注册用户已存在);}Long uId new Date().getTime();dianjia.setId(uId);dianjiaService.insert(dianjia);return R.ok();}/*** 退出*/RequestMapping(/logout)public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok(退出成功);}/*** 获取用户的session用户信息*/RequestMapping(/session)public R getCurrUser(HttpServletRequest request){Long id (Long)request.getSession().getAttribute(userId);DianjiaEntity user dianjiaService.selectById(id);return R.ok().put(data, user);}/*** 密码重置*/IgnoreAuthRequestMapping(value /resetPass)public R resetPass(String username, HttpServletRequest request){DianjiaEntity user dianjiaService.selectOne(new EntityWrapperDianjiaEntity().eq(dianjiaming, username));if(usernull) {return R.error(账号不存在);}user.setMima(123456);dianjiaService.updateById(user);return R.ok(密码已重置为123456);}/*** 后端列表*/RequestMapping(/page)public R page(RequestParam MapString, Object params,DianjiaEntity dianjia,HttpServletRequest request){EntityWrapperDianjiaEntity ew new EntityWrapperDianjiaEntity();PageUtils page dianjiaService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, dianjia), params), params));return R.ok().put(data, page);}/*** 前端列表*/RequestMapping(/list)public R list(RequestParam MapString, Object params,DianjiaEntity dianjia, HttpServletRequest request){EntityWrapperDianjiaEntity ew new EntityWrapperDianjiaEntity();PageUtils page dianjiaService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, dianjia), params), params));return R.ok().put(data, page);}/*** 列表*/RequestMapping(/lists)public R list( DianjiaEntity dianjia){EntityWrapperDianjiaEntity ew new EntityWrapperDianjiaEntity();ew.allEq(MPUtil.allEQMapPre( dianjia, dianjia)); return R.ok().put(data, dianjiaService.selectListView(ew));}/*** 查询*/RequestMapping(/query)public R query(DianjiaEntity dianjia){EntityWrapper DianjiaEntity ew new EntityWrapper DianjiaEntity();ew.allEq(MPUtil.allEQMapPre( dianjia, dianjia)); DianjiaView dianjiaView dianjiaService.selectView(ew);return R.ok(查询店家成功).put(data, dianjiaView);}/*** 后端详情*/RequestMapping(/info/{id})public R info(PathVariable(id) Long id){DianjiaEntity dianjia dianjiaService.selectById(id);return R.ok().put(data, dianjia);}/*** 前端详情*/RequestMapping(/detail/{id})public R detail(PathVariable(id) Long id){DianjiaEntity dianjia dianjiaService.selectById(id);return R.ok().put(data, dianjia);}/*** 后端保存*/RequestMapping(/save)public R save(RequestBody DianjiaEntity dianjia, HttpServletRequest request){dianjia.setId(new Date().getTime()new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(dianjia);DianjiaEntity user dianjiaService.selectOne(new EntityWrapperDianjiaEntity().eq(dianjiaming, dianjia.getDianjiaming()));if(user!null) {return R.error(用户已存在);}dianjia.setId(new Date().getTime());dianjiaService.insert(dianjia);return R.ok();}/*** 前端保存*/RequestMapping(/add)public R add(RequestBody DianjiaEntity dianjia, HttpServletRequest request){dianjia.setId(new Date().getTime()new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(dianjia);DianjiaEntity user dianjiaService.selectOne(new EntityWrapperDianjiaEntity().eq(dianjiaming, dianjia.getDianjiaming()));if(user!null) {return R.error(用户已存在);}dianjia.setId(new Date().getTime());dianjiaService.insert(dianjia);return R.ok();}/*** 修改*/RequestMapping(/update)public R update(RequestBody DianjiaEntity dianjia, HttpServletRequest request){//ValidatorUtils.validateEntity(dianjia);dianjiaService.updateById(dianjia);//全部更新return R.ok();}/*** 删除*/RequestMapping(/delete)public R delete(RequestBody Long[] ids){dianjiaService.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));}}WrapperDianjiaEntity wrapper new EntityWrapperDianjiaEntity();if(map.get(remindstart)!null) {wrapper.ge(columnName, map.get(remindstart));}if(map.get(remindend)!null) {wrapper.le(columnName, map.get(remindend));}int count dianjiaService.selectCount(wrapper);return R.ok().put(count, count);}}
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.OrdersEntity;
import com.entity.view.OrdersView;import com.service.OrdersService;
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 * date 2021-04-18 15:18:17*/
RestController
RequestMapping(/orders)
public class OrdersController {Autowiredprivate OrdersService ordersService;/*** 后端列表*/RequestMapping(/page)public R page(RequestParam MapString, Object params,OrdersEntity orders,HttpServletRequest request){if(!request.getSession().getAttribute(role).toString().equals(管理员)) {orders.setUserid((Long)request.getSession().getAttribute(userId));}EntityWrapperOrdersEntity ew new EntityWrapperOrdersEntity();PageUtils page ordersService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, orders), params), params));return R.ok().put(data, page);}/*** 前端列表*/RequestMapping(/list)public R list(RequestParam MapString, Object params,OrdersEntity orders, HttpServletRequest request){EntityWrapperOrdersEntity ew new EntityWrapperOrdersEntity();PageUtils page ordersService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, orders), params), params));return R.ok().put(data, page);}/*** 列表*/RequestMapping(/lists)public R list( OrdersEntity orders){EntityWrapperOrdersEntity ew new EntityWrapperOrdersEntity();ew.allEq(MPUtil.allEQMapPre( orders, orders)); return R.ok().put(data, ordersService.selectListView(ew));}/*** 查询*/RequestMapping(/query)public R query(OrdersEntity orders){EntityWrapper OrdersEntity ew new EntityWrapper OrdersEntity();ew.allEq(MPUtil.allEQMapPre( orders, orders)); OrdersView ordersView ordersService.selectView(ew);return R.ok(查询订单成功).put(data, ordersView);}/*** 后端详情*/RequestMapping(/info/{id})public R info(PathVariable(id) Long id){OrdersEntity orders ordersService.selectById(id);return R.ok().put(data, orders);}/*** 前端详情*/RequestMapping(/detail/{id})public R detail(PathVariable(id) Long id){OrdersEntity orders ordersService.selectById(id);return R.ok().put(data, orders);}/*** 后端保存*/RequestMapping(/save)public R save(RequestBody OrdersEntity orders, HttpServletRequest request){orders.setId(new Date().getTime()new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(orders);orders.setUserid((Long)request.getSession().getAttribute(userId));ordersService.insert(orders);return R.ok();}/*** 前端保存*/RequestMapping(/add)public R add(RequestBody OrdersEntity orders, HttpServletRequest request){orders.setId(new Date().getTime()new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(orders);ordersService.insert(orders);return R.ok();}/*** 修改*/RequestMapping(/update)public R update(RequestBody OrdersEntity orders, HttpServletRequest request){//ValidatorUtils.validateEntity(orders);ordersService.updateById(orders);//全部更新return R.ok();}/*** 删除*/RequestMapping(/delete)public R delete(RequestBody Long[] ids){ordersService.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));}}WrapperOrdersEntity wrapper new EntityWrapperOrdersEntity();if(map.get(remindstart)!null) {wrapper.ge(columnName, map.get(remindstart));}if(map.get(remindend)!null) {wrapper.le(columnName, map.get(remindend));}if(!request.getSession().getAttribute(role).toString().equals(管理员)) {wrapper.eq(userid, (Long)request.getSession().getAttribute(userId));}int count ordersService.selectCount(wrapper);return R.ok().put(count, count);}}
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.ShangpinEntity;
import com.entity.view.ShangpinView;import com.service.ShangpinService;
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 * date 2021-04-18 15:18:17*/
RestController
RequestMapping(/shangpin)
public class ShangpinController {Autowiredprivate ShangpinService shangpinService;/*** 后端列表*/RequestMapping(/page)public R page(RequestParam MapString, Object params,ShangpinEntity shangpin,HttpServletRequest request){String tableName request.getSession().getAttribute(tableName).toString();if(tableName.equals(dianjia)) {shangpin.setDianjiaming((String)request.getSession().getAttribute(username));}EntityWrapperShangpinEntity ew new EntityWrapperShangpinEntity();PageUtils page shangpinService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpin), params), params));return R.ok().put(data, page);}/*** 前端列表*/IgnoreAuthRequestMapping(/list)public R list(RequestParam MapString, Object params,ShangpinEntity shangpin, HttpServletRequest request){EntityWrapperShangpinEntity ew new EntityWrapperShangpinEntity();PageUtils page shangpinService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpin), params), params));return R.ok().put(data, page);}/*** 列表*/RequestMapping(/lists)public R list( ShangpinEntity shangpin){EntityWrapperShangpinEntity ew new EntityWrapperShangpinEntity();ew.allEq(MPUtil.allEQMapPre( shangpin, shangpin)); return R.ok().put(data, shangpinService.selectListView(ew));}/*** 查询*/RequestMapping(/query)public R query(ShangpinEntity shangpin){EntityWrapper ShangpinEntity ew new EntityWrapper ShangpinEntity();ew.allEq(MPUtil.allEQMapPre( shangpin, shangpin)); ShangpinView shangpinView shangpinService.selectView(ew);return R.ok(查询商品成功).put(data, shangpinView);}/*** 后端详情*/RequestMapping(/info/{id})public R info(PathVariable(id) Long id){ShangpinEntity shangpin shangpinService.selectById(id);shangpin.setClicktime(new Date());shangpinService.updateById(shangpin);return R.ok().put(data, shangpin);}/*** 前端详情*/RequestMapping(/detail/{id})public R detail(PathVariable(id) Long id){ShangpinEntity shangpin shangpinService.selectById(id);shangpin.setClicktime(new Date());shangpinService.updateById(shangpin);return R.ok().put(data, shangpin);}/*** 赞或踩*/RequestMapping(/thumbsup/{id})public R vote(PathVariable(id) String id,String type){ShangpinEntity shangpin shangpinService.selectById(id);if(type.equals(1)) {shangpin.setThumbsupnum(shangpin.getThumbsupnum()1);} else {shangpin.setCrazilynum(shangpin.getCrazilynum()1);}shangpinService.updateById(shangpin);return R.ok(投票成功);}/*** 后端保存*/RequestMapping(/save)public R save(RequestBody ShangpinEntity shangpin, HttpServletRequest request){shangpin.setId(new Date().getTime()new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(shangpin);shangpinService.insert(shangpin);return R.ok();}/*** 前端保存*/RequestMapping(/add)public R add(RequestBody ShangpinEntity shangpin, HttpServletRequest request){shangpin.setId(new Date().getTime()new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(shangpin);shangpinService.insert(shangpin);return R.ok();}/*** 修改*/RequestMapping(/update)public R update(RequestBody ShangpinEntity shangpin, HttpServletRequest request){//ValidatorUtils.validateEntity(shangpin);shangpinService.updateById(shangpin);//全部更新return R.ok();}/*** 删除*/RequestMapping(/delete)public R delete(RequestBody Long[] ids){shangpinService.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));}}WrapperShangpinEntity wrapper new EntityWrapperShangpinEntity();if(map.get(remindstart)!null) {wrapper.ge(columnName, map.get(remindstart));}if(map.get(remindend)!null) {wrapper.le(columnName, map.get(remindend));}String tableName request.getSession().getAttribute(tableName).toString();if(tableName.equals(dianjia)) {wrapper.eq(dianjiaming, (String)request.getSession().getAttribute(username));}int count shangpinService.selectCount(wrapper);return R.ok().put(count, count);}/*** 前端智能排序*/IgnoreAuthRequestMapping(/autoSort)public R autoSort(RequestParam MapString, Object params,ShangpinEntity shangpin, HttpServletRequest request,String pre){EntityWrapperShangpinEntity ew new EntityWrapperShangpinEntity();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, clicktime);params.put(order, desc);PageUtils page shangpinService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, shangpin), params), params));return R.ok().put(data, page);}}
四、底部获取全部源码