springboot商城含支付宝沙箱支付源码

【211】springboot商城含支付宝沙箱支付

 开发工具:idea 
 数据库mysql5.7+
 数据库链接工具:navcat,小海豚等
  技术:springboot

package com.scut.mall.controller.adminUser;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import com.scut.mall.entity.AdminUser;
import com.scut.mall.entity.pojo.ResultBean;
import com.scut.mall.service.AdminUserService;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import java.util.Map;

@Controller
@RequestMapping("/admin")
public class AdminController {
    @Autowired
    private AdminUserService adminUserService;

    /**
     * 访问首页
     *
     * @return
     */
    @RequestMapping("/toIndex.html")
    public String toIndex() {
        return "/admin/index";
    }

    /**
     * 访问登录页面
     *
     * @return
     */
    @RequestMapping("/toLogin.html")
    public String toLogin() {
        return "admin/login";
    }

    /**
     * 添加管理员页面
     * @return
     */
    @RequestMapping("/admin/toAdd.html")
    public String toAdd(){return "admin/adminUser/add";}



    /**
     * 登录请求
     *
     * @param username
     * @param password
     */
    @RequestMapping(method = RequestMethod.POST, value = "/login.do")
    public void login(String username, String password, HttpServletRequest request, HttpServletResponse response) throws IOException {
        AdminUser adminUser = adminUserService.checkLogin(request, username, password);
        response.sendRedirect("/mall/admin/toIndex.html");
    }

    /**
     * 退出登录
     * @param request
     * @param response
     * @throws IOException
     */
    @RequestMapping("/logout.do")
    public void logout(HttpServletRequest request, HttpServletResponse response) throws IOException {
        request.getSession().removeAttribute("login_user");
        response.sendRedirect("toLogin.html");
    }
    /**
     * create by: Kobe
     * description:业务员信息界面
     * create time: 12:28 2021/4/30
     *
     * @return
     */
    @RequestMapping("admin/toList.html")
    public  String toAdminList(){
        return "/admin/adminUser/list";
    }
    //跳转到错误页面
    @RequestMapping("admin/toError.html")
    public  String toError(){
        return "/admin/adminUser/error";
    }
    /**
     * 获取所有订单的总数
     * @return
     */
    @ResponseBody
    @RequestMapping("admin/getTotal.do")
    public ResultBean<Integer> getTotal() {
        Pageable pageable =PageRequest.of(1, 15, Sort.by(Sort.Direction.ASC,"id"));
        int total = (int) adminUserService.findAll(pageable).getTotalElements();
        return new ResultBean<>(total);
    }
    @RequestMapping("/toEdit.html")
    public String toEdit(int id, Map<String, Object> map) {
        AdminUser adminUser = adminUserService.findById(id);
        map.put("adminUser", adminUser);
        return "admin/adminUser/edit";
    }
    /**
     * create by: Kobe
     * description:超级管理员查看业务员信息
     * create time: 12:33 2021/4/30
     * @return
     */

    @ResponseBody
    @RequestMapping("admin/list.do")
    public ResultBean<List<AdminUser>> findAllUser(int pageindex,
                                                   @RequestParam(value = "pageSize", defaultValue = "15") int pageSize){
        Pageable pageable =PageRequest.of(pageindex, pageSize, Sort.by(Sort.Direction.ASC,"id"));
        List<AdminUser> adminUsers=adminUserService.findAll(pageable).getContent();
        return new ResultBean<>(adminUsers);
    }

    /**
     * 验证用户名是否唯一
     * @param userName
     * @return
     */
    @ResponseBody
    @RequestMapping("/admin/checkUsername.do")
    public ResultBean<Boolean> checkUsername(String userName){
        List<AdminUser> adminUsers = adminUserService.findByUserName(userName);
        if (adminUsers==null||adminUsers.isEmpty()){
            return new ResultBean<>(true);
        }
        return new ResultBean<>(false);
    }


    @ResponseBody
    @RequestMapping(method = RequestMethod.POST,value="/admin/addAdmin.do")
    public void addAdmin(String userName,String password,
                         HttpServletRequest request,
                         HttpServletResponse response) throws ServletException, IOException {
        AdminUser adminUser=new AdminUser();
        adminUser.setUserName(userName);
        adminUser.setPassword(password);
        adminUser.setIsSaleMan(1);
        int id=adminUserService.create(adminUser);if (id <= 0) {
            request.setAttribute("message", "添加失败!");
            request.getRequestDispatcher("toAdd.html").forward(request,response);
        } else {
            request.setAttribute("message", "添加成功!");
            request.getRequestDispatcher("toList.html").forward(request, response);
        }
    }

    @ResponseBody
    @RequestMapping("admin/del.do")
    public ResultBean<Boolean> delAdmin(Integer id){
        adminUserService.delById(id);
        return  new ResultBean<>(true);
    }

    @ResponseBody
    @RequestMapping(method = RequestMethod.POST, value = "/update.do")
    public ResultBean<Boolean> update(int id,String userName,
                                      String password, Integer isSaleMan,HttpServletRequest request,
                                      HttpServletResponse response) throws Exception {
        // 更新前先查询
        AdminUser adminUser = adminUserService.findById(id);
        adminUser.setId(id);
        adminUser.setUserName( userName );
        adminUser.setPassword(password);
        adminUser.setIsSaleMan(isSaleMan);
        adminUserService.update(adminUser);
        return new ResultBean<>(true);
    }

}
package com.scut.mall.controller.user;

import com.scut.mall.entity.*;
import com.scut.mall.entity.pojo.ResultBean;
import com.scut.mall.service.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * @ Author     :java
 * @ Date       :2021/4/28 23:46
 * @ Description:产品控制层类
 * @ Modified By:
 */

@Controller
@RequestMapping("/product")
public class ProductController {
    @Autowired
    private ProductService productService;
    @Autowired
    private ProductCategoryService productCategoryService;
    @Autowired
    private ShopCartService shopCartService;
    @Autowired
    private AddressService addressService;
    @Autowired
    private MessageService messageService;
    /**
     * create by: java
     * description: 获取商品信息
     * create time: 2021/4/29 10:58
     * @param id
     * @return 
     */
    @RequestMapping("/get.do")
    public ResultBean<Product> getProduct(int id) {
        Product product = productService.findById(id);
        return new ResultBean<>(product);
    }


    /**
     * create by: java
     * description: 打开商品详情页面
     * create time: 2021/4/29 11:01
     * @param id
     * @param map
     * @return 
     */
    @RequestMapping("/get.html")
    public String toProductPage(int id, Map<String, Object> map) {
        Product product = productService.findById(id);
        map.put("product", product);

        List<Message> messageList = messageService.findByMessage(product.getId());

        map.put("messageList", messageList);
        return "mall/product/info";
    }
    
    /**
     * create by: java
     * description: 查找热门商品
     * create time: 2021/4/29 11:01
     * @Param: null
     * @return 
     */
    @ResponseBody
    @RequestMapping("/hot.do")
    public ResultBean<List<Product>> getHotProduct() {
        List<Product> products = productService.findHotProduct();
        return new ResultBean<>(products);
    }

    @RequestMapping("/search.do")
    @ResponseBody
    public ResultBean<List<Product>> toSearchPage(String keyword,Map<String, Object> map,HttpServletRequest request) {
        String serchname = (String) request.getSession().getAttribute("serchname");
        List<Product> products = productService.findAll();
        List<Product> list = new ArrayList<>();
        for (Product product:products) {
            if(product.getTitle().contains(serchname)){
                list.add(product);
            }
        }
        map.put("products", list);
        return new ResultBean<>(list);
    }


    /**
     * 关键字搜索
     *
     * @return
     */
    @RequestMapping("/serchPro.html")
    public String serchPro(String serchname,HttpServletRequest request) {
        request.getSession().setAttribute("serchname",serchname);
        return "mall/product/product";
    }

    /**
     * create by: java
     * description:
     * create time: 2021/4/29 11:02
     * @param pageNo
     * @param pageSize
     * @return
     */
    @ResponseBody
    @RequestMapping("/new.do")
    public ResultBean<List<Product>> getNewProduct(int pageNo, int pageSize) {
        Pageable pageable = new PageRequest(pageNo, pageSize);
        List<Product> products = productService.findNewProduct(pageable);
        return new ResultBean<>(products);
    }

    /**
     * create by: java
     * description: 打开分类查看商品页面
     * create time: 2021/4/29 11:02
     * @Param: null
     * @return
     */
    @RequestMapping("/category.html")
    public String toCatePage(int cid, Map<String, Object> map) {
        ProductCategory productCategory = productCategoryService.findById(cid);
        map.put("category", productCategory);
        return "mall/product/category";
    }

    @RequestMapping("/toCart.html")
    public String toCart(){
        return "mall/product/cart";
    }

    /**
     * create by: java
     * description: 根据一级分类查找商品
     * create time: 2021/4/29 11:03
     * @param cid
     * @param pageNo
     * @param pageSize
     * @return
     */
    @ResponseBody
    @RequestMapping("/category.do")
    public ResultBean<List<Product>> getCategoryProduct(int cid, int pageNo, int pageSize) {
        Pageable pageable =PageRequest.of(pageNo, pageSize, Sort.by(Sort.Direction.ASC,"id"));
        List<Product> products = productService.findByProductCategoryId(cid, pageable);
        return new ResultBean<>(products);
    }

    /**
     * create by: java
     * description: 按二级分类查找商品
     * create time: 2021/4/5 19:23
     * @param csId
     * @param pageNo
     * @param pageSize
     * @return 
     */
    @ResponseBody
    @RequestMapping("/categorySec.do")
    public ResultBean<List<Product>> getCategorySecProduct(int csId, int pageNo, int pageSize) {
        Pageable pageable =PageRequest.of(pageNo, pageSize, Sort.by(Sort.Direction.ASC,"id"));
        List<Product> products = productService.findByProductCategorySecondId(csId, pageable);
        return new ResultBean<>(products);
    }

    /**
     * 根据一级分类查询它所有的二级分类
     * @param cid
     * @return
     */
    @ResponseBody
    @RequestMapping("/getCategorySec.do")
    public ResultBean<List<ProductCategory>> getCategorySec(int cid){
        List<ProductCategory> list = productCategoryService.findByParentId(cid);
        return new ResultBean<>(list);
    }
    
    /**
     * create by: java
     * description: 加购物车
     * create time: 2021/4/29 11:04
     * @param productId
     * @param request
     * @return
     */
    @ResponseBody
    @RequestMapping("/addCart.do")
    public ResultBean<Boolean> addToCart(int productId, HttpServletRequest request) throws Exception {
        shopCartService.addCart(productId, request);
        return new ResultBean<>(true);
    }

    /**
     * create by: java
     * description: 移除购物车
     * create time: 2021/4/29 11:04
     * @param productId
     * @param request
     * @return
     */
    @ResponseBody
    @RequestMapping("/delCart.do")
    public ResultBean<Boolean> delToCart(int productId, HttpServletRequest request) throws Exception {
        shopCartService.remove(productId, request);
        return new ResultBean<>(true);
    }

    /**
     * create by: java
     * description: 查看购物车商品
     * create time: 2021/4/29 11:05
     * @Param: request
     * @return
     */
    @ResponseBody
    @RequestMapping("/listCart.do")
    public ResultBean<List<OrderItem>> listCart(HttpServletRequest request) throws Exception {
        List<OrderItem> orderItems = shopCartService.listCart(request);
        return new ResultBean<>(orderItems);
    }
    /**
     * create by: Cillivian
     * description:加载地址信息
     * create time: 15:14 2021/4/11 0011
     *
      * @Param: request
     * @return
     */
    @ResponseBody
    @RequestMapping("/listAddress.do")
    public ResultBean<List<Address>> listAddress(HttpServletRequest request) throws Exception {
       List<Address> addresses=addressService.findByUserId(request );
        return new ResultBean<>(addresses);
    }


    @RequestMapping(method = RequestMethod.POST, value = "/addmessage.do")
    @ResponseBody
    public String add(String content, int proid, String proname, HttpServletRequest request)  {
        Message message = new Message();
        SimpleDateFormat sf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String datetime = sf.format(new Date());
        User user = (User) request.getSession().getAttribute("user");

        message.setContent(content);
        message.setProid(proid);
        if(user!=null){
            message.setUsername(user.getUserName());
        }else{
            message.setUsername("游客");
        }

        message.setProname(proname);
        message.setCreatetime(datetime);
        int id = messageService.create(message);
        if(id==0){
            return "error";
        }
        return "success";
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值