外贸网站建设熊掌号,4s店网站模板,无锡seo关键词排名,wordpress自带水印文章目录项目介绍一、技术栈二、本项目分为前后台#xff0c;有管理员与用户两种角色#xff1b;1、管理员角色包含以下功能#xff1a;2、用户角色包含以下功能#xff1a;三、用户功能页面展示四、管理员功能页面展示五、部分代码展示六、获取整套项目源码项目介绍
一、…
文章目录项目介绍一、技术栈二、本项目分为前后台有管理员与用户两种角色1、管理员角色包含以下功能2、用户角色包含以下功能三、用户功能页面展示四、管理员功能页面展示五、部分代码展示六、获取整套项目源码项目介绍
一、技术栈
javajsp
技术栈SpringSpringMVCMybatis 二、本项目分为前后台有管理员与用户两种角色
1、管理员角色包含以下功能
六大功能模块类目管理、用户管理、商品管理、订单管理、公告管理、评论管理 2、用户角色包含以下功能
1、用户登录/注册 2、查看首页 3、查看商品详情 4、查看购物车 5、提交订单 6、修改个人信息 7、修改密码 8、查看我的订单 9、添加配送地址 10、查看收藏夹等功能 11、搜索商品 12、查看公告 13、评论留言 14、商品收藏
三、用户功能页面展示 四、管理员功能页面展示 五、部分代码展示
package com.javapandeng.controller;import com.alibaba.fastjson.JSONObject;
import com.javapandeng.po.Item;
import com.javapandeng.po.Car;
import com.javapandeng.service.ItemService;
import com.javapandeng.service.CarService;
import com.javapandeng.utils.Consts;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.math.RoundingMode;
import java.util.List;/*** 购物车*/
Controller
RequestMapping(/car)
public class CarController {Autowiredprivate CarService carService;Autowiredprivate ItemService itemService;RequestMapping(/exAdd)ResponseBodypublic String exAdd(Car car, HttpServletRequest request){JSONObject js new JSONObject();Object attribute request.getSession().getAttribute(Consts.USERID);if(attributenull){js.put(Consts.RES,0);return js.toJSONString();}//保存到购物车Integer userId Integer.valueOf(attribute.toString());car.setUserId(userId);Item item itemService.load(car.getItemId());String price item.getPrice();Double valueOf Double.valueOf(price);car.setPrice(valueOf);if(item.getZk()!null){valueOf valueOf*item.getZk()/10;BigDecimal bg new BigDecimal(valueOf).setScale(2, RoundingMode.UP);car.setPrice(bg.doubleValue());valueOf bg.doubleValue();}Integer num car.getNum();Double t valueOf*num;BigDecimal bg new BigDecimal(t).setScale(2, RoundingMode.UP);double doubleValue bg.doubleValue();car.setTotal(doubleValue);carService.insert(car);js.put(Consts.RES,1);return js.toJSONString();}/*** 转向我的购物车页面*/RequestMapping(/findBySql)public String findBySql(Model model,HttpServletRequest request){Object attribute request.getSession().getAttribute(Consts.USERID);if(attributenull){return redirect:/login/toLogin;}Integer userId Integer.valueOf(attribute.toString());String sql select * from car where user_iduserId order by id desc;ListCar list carService.listBySqlReturnEntity(sql);model.addAttribute(list,list);return car/car;}/*** 删除购物车*/RequestMapping(/delete)ResponseBodypublic String delete(Integer id){carService.deleteById(id);return success;}
}
package com.javapandeng.controller;import com.javapandeng.base.BaseController;
import com.javapandeng.po.Comment;
import com.javapandeng.service.CommentService;
import com.javapandeng.utils.Consts;
import com.javapandeng.utils.Pager;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;import javax.servlet.http.HttpServletRequest;
import java.util.Date;/*** 评论*/
Controller
RequestMapping(/comment)
public class CommentController extends BaseController {Autowiredprivate CommentService commentService;/*** 添加执行*/RequestMapping(/exAdd)public String exAdd(Comment comment, HttpServletRequest request){Object attribute request.getSession().getAttribute(Consts.USERID);if(attributenull){return redirect:/login/toLogin;}Integer userId Integer.valueOf(attribute.toString());comment.setAddTime(new Date());comment.setUserId(userId);commentService.insert(comment);return redirect:/itemOrder/my.action;}}
package com.javapandeng.controller;import com.alibaba.fastjson.JSONObject;
import com.javapandeng.base.BaseController;
import com.javapandeng.po.*;
import com.javapandeng.service.*;
import com.javapandeng.utils.Consts;
import com.javapandeng.utils.Pager;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;import javax.servlet.http.HttpServletRequest;
import java.math.BigDecimal;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;/*** 订单管理*/
Controller
RequestMapping(/itemOrder)
public class ItemOrderController extends BaseController {Autowiredprivate ItemOrderService itemOrderService;Autowiredprivate UserService userService;Autowiredprivate CarService carService;Autowiredprivate OrderDetailService orderDetailService;Autowiredprivate ItemService itemService;/*** 订单管理列表*/RequestMapping(/findBySql)public String findBySql(ItemOrder itemOrder, Model model){//分页查询String sql select * from item_order where 11 ;if(!(isEmpty(itemOrder.getCode()))){sql and code like %itemOrder.getCode()% ;}sql order by id desc;PagerItemOrder pagers itemOrderService.findBySqlRerturnEntity(sql);model.addAttribute(pagers,pagers);//存储查询条件model.addAttribute(obj,itemOrder);return itemOrder/itemOrder;}/*** 我的订单*/RequestMapping(/my)public String my(Model model, HttpServletRequest request){Object attribute request.getSession().getAttribute(Consts.USERID);if(attributenull){return redirect:/login/uLogin;}Integer userId Integer.valueOf(attribute.toString());//全部订单String sql select * from item_order where user_iduserId order by id desc;ListItemOrder all itemOrderService.listBySqlReturnEntity(sql);//待发货String sql2 select * from item_order where user_iduserId and status0 order by id desc;ListItemOrder dfh itemOrderService.listBySqlReturnEntity(sql2);//已取消String sql3 select * from item_order where user_iduserId and status1 order by id desc;ListItemOrder yqx itemOrderService.listBySqlReturnEntity(sql3);//已发货String sql4 select * from item_order where user_iduserId and status2 order by id desc;ListItemOrder dsh itemOrderService.listBySqlReturnEntity(sql4);//已收货String sql5 select * from item_order where user_iduserId and status3 order by id desc;ListItemOrder ysh itemOrderService.listBySqlReturnEntity(sql5);model.addAttribute(all,all);model.addAttribute(dfh,dfh);model.addAttribute(yqx,yqx);model.addAttribute(dsh,dsh);model.addAttribute(ysh,ysh);return itemOrder/my;}/*** 购物车结算提交*/RequestMapping(/exAdd)ResponseBodypublic String exAdd(RequestBody ListCarDto list,HttpServletRequest request){Object attribute request.getSession().getAttribute(Consts.USERID);JSONObject js new JSONObject();if(attributenull){js.put(Consts.RES,0);return js.toJSONString();}Integer userId Integer.valueOf(attribute.toString());User byId userService.getById(userId);if(StringUtils.isEmpty(byId.getAddress())){js.put(Consts.RES,2);return js.toJSONString();}ListInteger ids new ArrayList();BigDecimal to new BigDecimal(0);for(CarDto c:list){ids.add(c.getId());Car load carService.load(c.getId());to to.add(new BigDecimal(load.getPrice()).multiply(new BigDecimal(c.getNum())));}ItemOrder order new ItemOrder();order.setStatus(0);order.setCode(getOrderNo());order.setIsDelete(0);order.setTotal(to.setScale(2,BigDecimal.ROUND_HALF_UP).toString());order.setUserId(userId);order.setAddTime(new Date());itemOrderService.insert(order);//订单详情放入orderDetail删除购物车if(!CollectionUtils.isEmpty(ids)){for(CarDto c:list){Car load carService.load(c.getId());OrderDetail de new OrderDetail();de.setItemId(load.getItemId());de.setOrderId(order.getId());de.setStatus(0);de.setNum(c.getNum());de.setTotal(String.valueOf(c.getNum()*load.getPrice()));orderDetailService.insert(de);//修改成交数Item load2 itemService.load(load.getItemId());load2.setGmNum(load2.getGmNum()c.getNum());itemService.updateById(load2);//删除购物车carService.deleteById(c.getId());}}js.put(Consts.RES,1);return js.toJSONString();}private static String date;private static long orderNum 0L;public static synchronized String getOrderNo(){String str new SimpleDateFormat(yyyyMMddHHmm).format(new Date());if(datenull||!date.equals(str)){date str;orderNum 0L;}orderNum;long orderNO Long.parseLong(date)*10000;orderNO orderNum;return orderNO;}/*** 取消订单*/RequestMapping(/qx)public String qx(Integer id,Model model){ItemOrder obj itemOrderService.load(id);obj.setStatus(1);itemOrderService.updateById(obj);model.addAttribute(obj,obj);return redirect:/itemOrder/my;}/*** 后台发货*/RequestMapping(/fh)public String fh(Integer id,Model model){ItemOrder obj itemOrderService.load(id);obj.setStatus(2);itemOrderService.updateById(obj);model.addAttribute(obj,obj);return redirect:/itemOrder/findBySql;}/*** 用户收货*/RequestMapping(/sh)public String sh(Integer id,Model model){ItemOrder obj itemOrderService.load(id);obj.setStatus(3);itemOrderService.updateById(obj);model.addAttribute(obj,obj);return redirect:/itemOrder/my;}/*** 用户评价入口*/RequestMapping(/pj)public String pj(Integer id,Model model){model.addAttribute(id,id);return itemOrder/pj;}
}六、获取整套项目源码