ssm宠物商城管理系统源码
关键代码:
- package com.controller;
-
- import java.util.Objects;
-
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpSession;
-
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.stereotype.Controller;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.bind.annotation.ResponseBody;
- import org.springframework.web.multipart.MultipartFile;
-
- import com.entity.Admins;
- import com.entity.Goods;
- import com.entity.Tops;
- import com.entity.Types;
- import com.entity.Users;
- import com.service.AdminService;
- import com.service.GoodService;
- import com.service.OrderService;
- import com.service.TopService;
- import com.service.TypeService;
- import com.service.UserService;
- import com.util.PageUtil;
- import com.util.SafeUtil;
- import com.util.UploadUtil;
-
- /**
- * 后台相关接口
- */
- @Controller
- @RequestMapping("/admin")
- public class AdminController {
-
- private static final int rows = 10;
-
- @Autowired
- private AdminService adminService;
- @Autowired
- private OrderService orderService;
- @Autowired
- private UserService userService;
- @Autowired
- private GoodService goodService;
- @Autowired
- private TopService topService;
- @Autowired
- private TypeService typeService;
-
- /**
- * 管理员登录
- * @return
- */
- @RequestMapping("/login")
- public String login(Admins admin, HttpServletRequest request, HttpSession session) {
- if (adminService.checkUser(admin.getUsername(), admin.getPassword())) {
- session.setAttribute("username", admin.getUsername());
- return "redirect:index";
- }
- request.setAttribute("msg", "用户名或密码错误!");
- return "/admin/login.jsp";
- }
-
- /**
- * 退出
- * @return
- */
- @RequestMapping("/logout")
- public String logout(HttpSession session) {
- session.removeAttribute("admin");
- return "/admin/login.jsp";
- }
-
- /**
- * 后台首页
- * @return
- */
- @RequestMapping("/index")
- public String index(HttpServletRequest request) {
- request.setAttribute("msg", "恭喜你! 登录成功了");
- return "/admin/index.jsp";
- }
-
- /**
- * 订单列表
- *
- * @return
- */
- @RequestMapping("/orderList")
- public String orderList(@RequestParam(required=false, defaultValue="0")byte status, HttpServletRequest request,
- @RequestParam(required=false, defaultValue="1") int page) {
- request.setAttribute("flag", 1);
- request.setAttribute("status", status);
- request.setAttribute("orderList", orderService.getList(status, page, rows));
- request.setAttribute("pageTool", PageUtil.getPageTool(request, orderService.getTotal(status), page, rows));
- return "/admin/order_list.jsp";
- }
-
- /**
- * 订单发货
- *
- * @return
- */
- @RequestMapping("/orderDispose")
- public String orderDispose(int id, byte status,
- @RequestParam(required=false, defaultValue="1") int page) {
- orderService.dispose(id);
- return "redirect:orderList?flag=1&status="+status+"&page="+page;
- }
-
- /**
- * 订单完成
- *
- * @return
- */
- @RequestMapping("/orderFinish")
- public String orderFinish(int id, byte status,
- @RequestParam(required=false, defaultValue="1") int page) {
- orderService.finish(id);
- return "redirect:orderList?flag=1&status="+status+"&page="+page;
- }
-
- /**
- * 订单删除
- *
- * @return
- */
- @RequestMapping("/orderDelete")
- public String orderDelete(int id, byte status,
- @RequestParam(required=false, defaultValue="1") int page) {
- orderService.delete(id);
- return "redirect:orderList?flag=1&status="+status+"&page="+page;
- }
-
- /**
- * 顾客管理
- *
- * @return
- */
- @RequestMapping("/userList")
- public String userList(HttpServletRequest request,
- @RequestParam(required=false, defaultValue="1") int page) {
- request.setAttribute("flag", 2);
- request.setAttribute("userList", userService.getList(page, rows));
- request.setAttribute("pageTool", PageUtil.getPageTool(request, userService.getTotal(), page, rows));
- return "/admin/user_list.jsp";
- }
-
- /**
- * 顾客添加
- *
- * @return
- */
- @RequestMapping("/userAdd")
- public String userAdd(HttpServletRequest request) {
- request.setAttribute("flag", 2);
- return "/admin/user_add.jsp";
- }
-
- /**
- * 顾客添加
- *
- * @return
- */
- @RequestMapping("/userSave")
- public String userSave(Users user, HttpServletRequest request,
- @RequestParam(required=false, defaultValue="1") int page) {
- if (userService.isExist(user.getUsername())) {
- request.setAttribute("msg", "用户名已存在!");
- return "/admin/user_add.jsp";
- }
- userService.add(user);
- return "redirect:userList?flag=2&page="+page;
- }
-
- /**
- * 顾客密码重置页面
- *
- * @return
- */
- @RequestMapping("/userRe")
- public String userRe(int id, HttpServletRequest request) {
- request.setAttribute("flag", 2);
- request.setAttribute("user", userService.get(id));
- return "/admin/user_reset.jsp";
- }
-
- /**
- * 顾客密码重置
- *
- * @return
- */
- @RequestMapping("/userReset")
- public String userReset(Users user,
- @RequestParam(required=false, defaultValue="1") int page) {
- String password = SafeUtil.encode(user.getPassword());
- user = userService.get(user.getId());
- user.setPassword(password);
- userService.update(user);
- return "redirect:userList?flag=2&page="+page;
- }
-
- /**
- * 顾客更新
- *
- * @return
- */
- @RequestMapping("/userEdit")
- public String userEdit(int id, HttpServletRequest request) {
- request.setAttribute("flag", 2);
- request.setAttribute("user", userService.get(id));
- return "/admin/user_edit.jsp";
- }
-
- /**
- * 顾客更新
- *
- * @return
- */
- @RequestMapping("/userUpdate")
- public String userUpdate(Users user,
- @RequestParam(required=false, defaultValue="1") int page) {
- userService.update(user);
- return "redirect:userList?flag=2&page="+page;
- }
-
- /**
- * 顾客删除
- *
- * @return
- */
- @RequestMapping("/userDelete")
- public String userDelete(Users user,
- @RequestParam(required=false, defaultValue="1") int page) {
- userService.delete(user);
- return "redirect:userList?flag=2&page="+page;
- }
-
- /**
- * 产品列表
- *
- * @return
- */
- @RequestMapping("/goodList")
- public String goodList(@RequestParam(required=false, defaultValue="0")byte status, HttpServletRequest request,
- @RequestParam(required=false, defaultValue="1") int page) {
- request.setAttribute("flag", 3);
- request.setAttribute("page", page);
- request.setAttribute("status", status);
- request.setAttribute("goodList", goodService.getList(status, page, rows));
- request.setAttribute("pageTool", PageUtil.getPageTool(request, goodService.getTotal(status), page, rows));
- return "/admin/good_list.jsp";
- }
-
- /**
- * 产品添加
- *
- * @return
- */
- @RequestMapping("/goodAdd")
- public String goodAdd(HttpServletRequest request) {
- request.setAttribute("flag", 3);
- request.setAttribute("typeList", typeService.getList());
- return "/admin/good_add.jsp";
- }
-
- /**
- * 产品添加
- *
- * @return
- * @throws Exception
- */
- @RequestMapping("/goodSave")
- public String goodSave(String name, int price, String intro, int stock, int typeId,
- MultipartFile cover, MultipartFile image1, MultipartFile image2,
- @RequestParam(required=false, defaultValue="1") int page) throws Exception {
- Goods good = new Goods();
- good.setName(name);
- good.setPrice(price);
- good.setIntro(intro);
- good.setStock(stock);
- good.setTypeId(typeId);
- good.setCover(UploadUtil.fileUpload(cover));
- good.setImage1(UploadUtil.fileUpload(image1));
- good.setImage2(UploadUtil.fileUpload(image2));
- goodService.add(good);
- return "redirect:goodList?flag=3&page="+page;
- }
-
- /**
- * 产品更新
- *
- * @return
- */
- @RequestMapping("/goodEdit")
- public String goodEdit(int id, HttpServletRequest request) {
- request.setAttribute("flag", 3);
- request.setAttribute("typeList", typeService.getList());
- request.setAttribute("good", goodService.get(id));
- return "/admin/good_edit.jsp";
- }
-
- /**
- * 产品更新
- *
- * @return
- * @throws Exception
- */
- @RequestMapping("/goodUpdate")
- public String goodUpdate(int id, String name, int price, String intro, int stock, int typeId,
- MultipartFile cover, MultipartFile image1, MultipartFile image2,
- @RequestParam(required=false, defaultValue="1") int page) throws Exception {
- Goods good = goodService.get(id);
- good.setName(name);
- good.setPrice(price);
- good.setIntro(intro);
- good.setStock(stock);
- good.setTypeId(typeId);
- if (Objects.nonNull(cover) && !cover.isEmpty()) {
- good.setCover(UploadUtil.fileUpload(cover));
- }
- if (Objects.nonNull(image1) && !image1.isEmpty()) {
- good.setImage1(UploadUtil.fileUpload(image1));
- }
- if (Objects.nonNull(image2) && !image2.isEmpty()) {
- good.setImage2(UploadUtil.fileUpload(image2));
- }
- goodService.update(good);
- return "redirect:goodList?flag=3&page="+page;
- }
-
- /**
- * 产品删除
- *
- * @return
- */
- @RequestMapping("/goodDelete")
- public String goodDelete(int id,
- @RequestParam(required=false, defaultValue="1") int page) {
- goodService.delete(id);
- return "redirect:goodList?flag=3&page="+page;
- }
-
- /**
- * 添加推荐
- * @return
- */
- @RequestMapping("/topSave")
- public @ResponseBody String topSave(Tops tops,
- @RequestParam(required=false, defaultValue="0")byte status,
- @RequestParam(required=false, defaultValue="1") int page) {
- int id = topService.add(tops);
- return id > 0 ? "ok" : null;
- }
-
- /**
- * 删除推荐
- * @return
- */
- @RequestMapping("/topDelete")
- public @ResponseBody String topDelete(Tops tops,
- @RequestParam(required=false, defaultValue="0")byte status,
- @RequestParam(required=false, defaultValue="1") int page) {
- boolean flag = topService.delete(tops);
- return flag ? "ok" : null;
- }
-
- /**
- * 类目列表
- *
- * @return
- */
- @RequestMapping("/typeList")
- public String typeList(HttpServletRequest request) {
- request.setAttribute("flag", 4);
- request.setAttribute("typeList", typeService.getList());
- return "/admin/type_list.jsp";
- }
-
- /**
- * 类目添加
- *
- * @return
- */
- @RequestMapping("/typeSave")
- public String typeSave(Types type,
- @RequestParam(required=false, defaultValue="1") int page) {
- typeService.add(type);
- return "redirect:typeList?flag=4&page="+page;
- }
-
- /**
- * 类目更新
- *
- * @return
- */
- @RequestMapping("/typeEdit")
- public String typeUp(int id, HttpServletRequest request) {
- request.setAttribute("flag", 4);
- request.setAttribute("type", typeService.get(id));
- return "/admin/type_edit.jsp";
- }
-
- /**
- * 类目更新
- *
- * @return
- */
- @RequestMapping("/typeUpdate")
- public String typeUpdate(Types type,
- @RequestParam(required=false, defaultValue="1") int page) {
- typeService.update(type);
- return "redirect:typeList?flag=4&page="+page;
- }
-
- /**
- * 类目删除
- *
- * @return
- */
- @RequestMapping("/typeDelete")
- public String typeDelete(Types type,
- @RequestParam(required=false, defaultValue="1") int page) {
- typeService.delete(type);
- return "redirect:typeList?flag=4&page="+page;
- }
-
- /**
- * 管理员列表
- *
- * @return
- */
- @RequestMapping("/adminList")
- public String adminList(HttpServletRequest request,
- @RequestParam(required=false, defaultValue="1") int page) {
- request.setAttribute("flag", 5);
- request.setAttribute("adminList", adminService.getList(page, rows));
- request.setAttribute("pageTool", PageUtil.getPageTool(request, adminService.getTotal(), page, rows));
- return "/admin/admin_list.jsp";
- }
-
- /**
- * 管理员修改自己密码
- *
- * @return
- */
- @RequestMapping("/adminRe")
- public String adminRe(HttpServletRequest request, HttpSession session) {
- request.setAttribute("flag", 5);
- request.setAttribute("admin", adminService.getByUsername(String.valueOf(session.getAttribute("username"))));
- return "/admin/admin_reset.jsp";
- }
-
- /**
- * 管理员修改自己密码
- *
- * @return
- */
- @RequestMapping("/adminReset")
- public String adminReset(Admins admin, HttpServletRequest request) {
- request.setAttribute("flag", 5);
- if (adminService.get(admin.getId()).getPassword().equals(SafeUtil.encode(admin.getPassword()))) {
- admin.setPassword(SafeUtil.encode(admin.getPasswordNew()));
- adminService.update(admin);
- request.setAttribute("admin", admin);
- request.setAttribute("msg", "修改成功!");
- }else {
- request.setAttribute("msg", "原密码错误!");
- }
- return "/admin/admin_reset.jsp";
- }
-
- /**
- * 管理员添加
- *
- * @return
- */
- @RequestMapping("/adminSave")
- public String adminSave(Admins admin, HttpServletRequest request,
- @RequestParam(required=false, defaultValue="1") int page) {
- if (adminService.isExist(admin.getUsername())) {
- request.setAttribute("msg", "用户名已存在!");
- return "/admin/admin_add.jsp";
- }
- adminService.add(admin);
- return "redirect:adminList?flag=5&page="+page;
- }
-
- /**
- * 管理员修改
- *
- * @return
- */
- @RequestMapping("/adminEdit")
- public String adminEdit(int id, HttpServletRequest request) {
- request.setAttribute("flag", 5);
- request.setAttribute("admin", adminService.get(id));
- return "/admin/admin_edit.jsp";
- }
-
- /**
- * 管理员更新
- *
- * @return
- */
- @RequestMapping("/adminUpdate")
- public String adminUpdate(Admins admin,
- @RequestParam(required=false, defaultValue="1") int page) {
- admin.setPassword(SafeUtil.encode(admin.getPassword()));
- adminService.update(admin);
- return "redirect:adminList?flag=5&page="+page;
- }
-
- /**
- * 管理员删除
- *
- * @return
- */
- @RequestMapping("/adminDelete")
- public String adminDelete(Admins admin,
- @RequestParam(required=false, defaultValue="1") int page) {
- adminService.delete(admin);
- return "redirect:adminList?flag=5&page="+page;
- }
-
- }
- package com.controller;
-
- import java.util.List;
- import java.util.Objects;
-
- import javax.annotation.Resource;
- import javax.servlet.ServletRequest;
- import javax.servlet.http.HttpSession;
-
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.bind.annotation.ResponseBody;
-
- import com.entity.Goods;
- import com.entity.Items;
- import com.entity.Orders;
- import com.entity.Users;
- import com.service.GoodService;
- import com.service.OrderService;
- import com.service.TypeService;
- import com.service.UserService;
- import com.util.SafeUtil;
-
- /**
- * 用户相关接口
- */
- @Controller
- @RequestMapping("/index")
- public class UserController{
-
- private static final String INDENT_KEY = "order";
-
- @Resource
- private UserService userService;
- @Resource
- private OrderService orderService;
- @Resource
- private GoodService goodService;
- @Resource
- private TypeService typeService;
-
-
- /**
- * 注册用户
- * @return
- */
- @RequestMapping("/register")
- public String register(@RequestParam(required=false, defaultValue="0")int flag, Users user, Model model){
- model.addAttribute("typeList", typeService.getList());
- if(flag==-1) {
- model.addAttribute("flag", 5); // 注册页面
- return "/index/register.jsp";
- }
- if (user.getUsername().isEmpty()) {
- model.addAttribute("msg", "用户名不能为空!");
- return "/index/register.jsp";
- }else if (userService.isExist(user.getUsername())) {
- model.addAttribute("msg", "用户名已存在!");
- return "/index/register.jsp";
- }else {
- String password = user.getPassword();
- userService.add(user);
- user.setPassword(password);
- return "redirect:login?flag=-1"; // 注册成功后转去登录
- }
- }
-
- /**
- * 用户登录
- * @return
- */
- @RequestMapping("/login")
- public String login(@RequestParam(required=false, defaultValue="0")int flag, Users user, HttpSession session, Model model) {
- model.addAttribute("typeList", typeService.getList());
- if(flag==-1) {
- flag = 6; // 登录页面
- return "/index/login.jsp";
- }
- if(userService.checkUser(user.getUsername(), user.getPassword())){
- session.setAttribute("user", userService.get(user.getUsername()));
- return "redirect:index";
- } else {
- model.addAttribute("msg", "用户名或密码错误!");
- return "/index/login.jsp";
- }
- }
-
- /**
- * 注销登录
- * @return
- */
- @RequestMapping("/logout")
- public String logout(HttpSession session) {
- session.removeAttribute("user");
- session.removeAttribute("order");
- return "/index/login.jsp";
- }
-
- /**
- * 查看购物车
- * @return
- */
- @RequestMapping("/cart")
- public String cart(Model model) {
- model.addAttribute("typeList", typeService.getList());
- return "/index/cart.jsp";
- }
-
- /**
- * 购买
- * @return
- */
- @RequestMapping("/buy")
- public @ResponseBody String buy(int goodid, HttpSession session){
- Goods goods = goodService.get(goodid);
- if (goods .getStock() <= 0) { // 库存不足
- return "empty";
- }
- Orders order = (Orders) session.getAttribute(INDENT_KEY);
- if (order==null) {
- session.setAttribute(INDENT_KEY, orderService.add(goods));
- }else {
- session.setAttribute(INDENT_KEY, orderService.addOrderItem(order, goods));
- }
- return "ok";
- }
-
- /**
- * 减少
- */
- @RequestMapping("/lessen")
- public @ResponseBody String lessen(int goodid, HttpSession session){
- Orders order = (Orders) session.getAttribute(INDENT_KEY);
- if (order != null) {
- session.setAttribute(INDENT_KEY, orderService.lessenIndentItem(order, goodService.get(goodid)));
- }
- return "ok";
- }
-
- /**
- * 删除
- */
- @RequestMapping("/delete")
- public @ResponseBody String delete(int goodid, HttpSession session){
- Orders order = (Orders) session.getAttribute(INDENT_KEY);
- if (order != null) {
- session.setAttribute(INDENT_KEY, orderService.deleteIndentItem(order, goodService.get(goodid)));
- }
- return "ok";
- }
-
-
- /**
- * 提交订单
- * @return
- */
- @RequestMapping("/save")
- public String save(ServletRequest request, HttpSession session, Model model){
- model.addAttribute("typeList", typeService.getList());
- Users user = (Users) session.getAttribute("user");
- if (user == null) {
- request.setAttribute("msg", "请登录后提交订单!");
- return "/index/login.jsp";
- }
- Orders sessionOrder = (Orders) session.getAttribute(INDENT_KEY);
- if (sessionOrder != null) {
- if (sessionOrder != null) {
- for(Items item : sessionOrder.getItemList()){ // 检测商品库存(防止库存不足)
- Goods product = goodService.get(item.getGoodId());
- if(item.getAmount() > product.getStock()){
- request.setAttribute("msg", "商品 ["+product.getName()+"] 库存不足! 当前库存数量: "+product.getStock());
- return "/index/cart.jsp";
- }
- }
- }
- sessionOrder.setUserId(user.getId());
- sessionOrder.setUser(userService.get(user.getId()));
- int orderid = orderService.save(sessionOrder); // 保存订单
- session.removeAttribute(INDENT_KEY); // 清除购物车
- return "redirect:topay?orderid="+orderid;
- }
- request.setAttribute("msg", "处理失败!");
- return "/index/cart.jsp";
- }
-
- /**
- * 支付页面
- * @return
- */
- @RequestMapping("/topay")
- public String topay(int orderid, ServletRequest request, Model model) {
- model.addAttribute("typeList", typeService.getList());
- request.setAttribute("order", orderService.get(orderid));
- return "/index/pay.jsp";
- }
-
- /**
- * 支付(模拟)
- * @return
- */
- @RequestMapping("/pay")
- public String pay(Orders order, Model model) {
- model.addAttribute("typeList", typeService.getList());
- orderService.pay(order);
- return "redirect:payok?orderid="+order.getId();
- }
-
- /**
- * 支付成功
- * @return
- */
- @RequestMapping("/payok")
- public String payok(int orderid, ServletRequest request, Model model) {
- model.addAttribute("typeList", typeService.getList());
- Orders order = orderService.get(orderid);
- int paytype = order.getPaytype();
- if(paytype == Orders.PAYTYPE_WECHAT || paytype == Orders.PAYTYPE_ALIPAY) {
- request.setAttribute("msg", "订单["+orderid+"]支付成功");
- }else {
- request.setAttribute("msg", "订单["+orderid+"]货到付款");
- }
- return "/index/payok.jsp";
- }
-
- /**
- * 查看订单
- * @return
- */
- @RequestMapping("/order")
- public String order(HttpSession session, Model model){
- model.addAttribute("flag", 3);
- model.addAttribute("typeList", typeService.getList());
- Users user = (Users) session.getAttribute("user");
- if (user == null) {
- model.addAttribute("msg", "请登录后查看订单!");
- return "/index/login.jsp";
- }
- List<Orders> orderList = orderService.getListByUserid(user.getId());
- if (orderList!=null && !orderList.isEmpty()) {
- for(Orders order : orderList){
- order.setItemList(orderService.getItemList(order.getId()));
- }
- }
- model.addAttribute("orderList", orderList);
- return "/index/order.jsp";
- }
-
-
- /**
- * 个人信息
- * @return
- */
- @RequestMapping("/my")
- public String my(Users user, HttpSession session, Model model){
- model.addAttribute("flag", 4);
- model.addAttribute("typeList", typeService.getList());
- Users userLogin = (Users) session.getAttribute("user");
- if (userLogin == null) {
- model.addAttribute("msg", "请先登录!");
- return "/index/login.jsp";
- }
- // 进入个人中心
- if (Objects.isNull(user) || Objects.isNull(user.getId())) {
- return "/index/my.jsp";
- }
- Users u = userService.get(user.getId());
- // 修改资料
- u.setName(user.getName());
- u.setPhone(user.getPhone());
- u.setAddress(user.getAddress());
- userService.update(u); // 更新数据库
- session.setAttribute("user", u); // 更新session
- model.addAttribute("msg", "信息修改成功!");
- // 修改密码
- if(user.getPasswordNew()!=null && !user.getPasswordNew().trim().isEmpty()) {
- if (user.getPassword()!=null && !user.getPassword().trim().isEmpty()
- && SafeUtil.encode(user.getPassword()).equals(u.getPassword())) {
- if (user.getPasswordNew()!=null && !user.getPasswordNew().trim().isEmpty()) {
- u.setPassword(SafeUtil.encode(user.getPasswordNew()));
- }
- userService.update(u); // 更新数据库
- session.setAttribute("user", u); // 更新session
- model.addAttribute("msg", "密码修改成功!");
- }else {
- model.addAttribute("msg", "原密码错误!");
- }
- }
- return "/index/my.jsp";
- }
-
- }