电商系统——订单页面展示

电商系统——订单页面展示,第1张

两张订单表:1. order :主要存储用户与订单之间的关系 ,2.order_item:存储订单与商品信息,

利用第一张表获取该用户所有订单列表,然后利用第二张表获取该订单所有商品信息。

Html+SpringBoot+Mysql 电商用户订单页展示 一、数据库表
  1. order表

     

  2. order_item表

     

二、SpringBoot代码
  1. xml文件

    • order

        
        

    • orderItem

       

  2. DAO接口

    1. OrderDAO

      • package com.cy.stores.dao;
        ​
        import com.cy.stores.model.Order;
        import com.cy.stores.model.OrderExample;
        import java.util.List;
        import org.apache.ibatis.annotations.Param;
        import org.springframework.stereotype.Repository;
        ​
        @Repository
        public interface OrderDAO {
            List selectByExample(OrderExample example);
        ​
            Order selectByPrimaryKey(Long oid);
        }

    2. OrderItemDAO

      • package com.cy.stores.dao;
        ​
        import com.cy.stores.model.OrderItem;
        import com.cy.stores.model.OrderItemExample;
        import java.util.List;
        import org.apache.ibatis.annotations.Param;
        import org.springframework.stereotype.Repository;
        ​
        @Repository
        public interface OrderItemDAO { 
          List selectProductByOid(Long oid);
          }

  3. IOrderService接口

    package com.cy.stores.service;
    ​
    import com.cy.stores.model.Order;
    import com.cy.stores.vo.OrderItemVo;
    import com.cy.stores.vo.OrderVo;
    import java.util.List;
    ​
    public interface IOrderService {
    ​
          /**
         * 查询出当前订单的商品
         * @param oid
         * @return
         */
        List  selectProductByOid(Long oid);
    ​
        /**
         * 查询用户订单
         */
        List selectOrderByUid(Integer uid);
    ​
    }
    ​

  4. OrderServiceImpl类

    package com.cy.stores.service.impl;
    ​
    import com.cy.stores.dao.OrderDAO;
    import com.cy.stores.dao.OrderItemDAO;
    import com.cy.stores.model.*;
    import com.cy.stores.service.IAddressService;
    import com.cy.stores.service.ICartService;
    import com.cy.stores.service.IOrderService;
    import com.cy.stores.service.IProductService;
    import com.cy.stores.service.ex.*;
    import com.cy.stores.util.IdWorker;
    import com.cy.stores.vo.CartProductVO;
    import com.cy.stores.vo.OrderItemVo;
    import com.cy.stores.vo.OrderVo;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Service;
    ​
    import java.util.ArrayList;
    import java.util.Date;
    import java.util.List;
    ​
    /**
     * 订单业务层实现类
     *
     */
    //将当前类的对象交给Spring处理
    @Service
    public class OrderServiceImpl implements IOrderService {
    ​
        @Autowired
        private OrderDAO orderDAO;
        @Autowired
        private OrderItemDAO orderItemDAD;
        @Autowired
        
        @Override
        public List selectProductByOid(Long oid) {
            //1.查询订单商品数据
            List orderItems = orderItemDAD.selectProductByOid(oid);
            Order order = orderDAO.selectByPrimaryKey(oid);
            //2.封装成前端需要订单商品信息
            List list=new ArrayList<>();
            for (OrderItem e:orderItems) {
                OrderItemVo orderItemVo = new OrderItemVo();
                orderItemVo.setPid(e.getPid());
                orderItemVo.setTitle(e.getTitle());
                orderItemVo.setPrice(e.getPrice());
                orderItemVo.setStatus(e.getStatus());
                orderItemVo.setItemTotalPrice(e.getPrice()*e.getNum());
                orderItemVo.setNum(e.getNum());
                orderItemVo.setImage(e.getImage());
                list.add(orderItemVo);
            }
            //3.返回数据
            return list;
        }
    ​
        @Override
        public List selectOrderByUid(Integer uid) {
            OrderExample orderExample=new OrderExample();
            orderExample.createCriteria().andUidEqualTo(uid);
            List orders = orderDAO.selectByExample(orderExample);
            List orderVos=new ArrayList<>();
            for (Order o:orders)
            {
                OrderVo orderVo = new OrderVo();
                //订单ID、收货人、订单时间、总价
                orderVo.setOid(o.getOid().toString());
                orderVo.setTotalPrice(o.getTotalPrice());
                orderVo.setRecvName(o.getRecvName());
                orderVo.setOrderTime(o.getOrderTime());
                orderVos.add(orderVo);
            }
            return orderVos;
        }
    }

  5. OrderCtroller类

    package com.cy.stores.controller;
    ​
    import com.cy.stores.model.Order;
    import com.cy.stores.model.OrderItem;
    import com.cy.stores.service.ICartService;
    import com.cy.stores.service.IOrderService;
    import com.cy.stores.service.ex.CartException;
    import com.cy.stores.service.ex.InsertException;
    import com.cy.stores.util.JsonResult;
    import com.cy.stores.vo.OrderItemVo;
    import com.cy.stores.vo.OrderVo;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.CrossOrigin;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestParam;
    import org.springframework.web.bind.annotation.RestController;
    ​
    import javax.servlet.http.HttpSession;
    import javax.smartcardio.CardException;
    import java.net.HttpCookie;
    import java.util.List;
    ​
    //@CrossOrigin解决跨域问题
    @CrossOrigin
    @RestController
    @RequestMapping("orders")
    public class OrderController extends BaseController{
    ​
        @Autowired
        private IOrderService orderService;
    ​
        @RequestMapping("orderProductInfo")
        public JsonResult> findOrderItemInfo(@RequestParam("oid") String oid)
        {
            List orderItemVos = orderService.selectProductByOid(new Long(oid));
            return new JsonResult<>(OK,orderItemVos);
        }
    ​
        @RequestMapping("order")
        public JsonResult>findOrder(HttpSession session)
        {
            Integer uid = getuidFromSession(session);
            List orderVos = orderService.selectOrderByUid(uid);
            return new JsonResult<>(OK,orderVos);
        }
    ​
    }
    ​
三、前端代码
  1. 主要代码

            

  2. 全部代码

    
    
    
    	
    		
    		
    		
    		
    		
    		电脑商城
    		
    		
    		
    		
    		
    		
    		
    		
    		
    		
    			
    			
    				
    					
    						
    					
    				
    				
    				
    					
      用户:用户
    •  收藏
    • |
    •  订单
    • |
    •  购物车
    • |
      • 修改密码
      • 个人资料
      • 上传头像
      • 收货管理
    • |
    •  登录
    • 秒杀
    • 优惠券
    • 电脑VIP
    • 外卖
    • 超市

    我的订单

    全部订单 待付款 待收货 待评价 退货退款

    资料修改

    修改密码 个人资料 上传头像 收货管理 订单号:1101000301,支付金额¥5298,TUST电脑商城
    商品 单价 数量 小计 售后 状态 *** 作
    联想(Lenovo)小新Air13 Pro 13.3英寸14.8mm超轻薄笔记本电脑 ¥5298 1件 ¥5298 申请售后 已发货 订单详情 确认收货
    戴尔(DELL)XPS13-9360-R1609 13.3 ¥4696 2件 ¥9392 申请售后 已发货 订单详情 确认收货
    戴尔(DELL)魔方15MF Pro-R2505TSS灵越 ¥5999 1件 ¥5999 申请售后 已发货 订单详情 确认收货
    订单总金额:¥20689

    品质保障

    私人订制

    学生特供

    专属特权

    • 买家帮助

    • 新手指南
    • 服务保障
    • 常见问题
    • 商家帮助

    • 商家入驻
    • 商家后台
    • 关于我们

    • 关于圆心
    • 联系我们

    电脑商城客户端

    Copyright © 2022 dnsc.cn All Rights Reserved 京ICP备08963888号-45 天津科技大学 版权所有

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/725316.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-26
下一篇 2022-04-26

发表评论

登录后才能评论

评论列表(0条)

保存