收货地址列表展示【项目 商城】

简介: 收货地址列表展示【项目 商城】

收货地址列表展示

1.持久层

规划查询SQL语句

1.数据库数据的查询操作

select * from t_address where uid=? order by is_default DESC,created_time DESC

2.接口与抽象方法

  /**
     * 根据用户的id查询用户的收货地址数据
     * @param uid 用户id
     * @return 收货地址数据
     */
    List<Address> findByUid(Integer uid);

3.在.xml文件中添加对应的SQL语句映射。

  <select id="findByUid">
        select * from t_address where uid=#{uid} 
        order by is_default DESC,created_time DESC
    </select>

AddressMapper–findByUid


测试

4.完成单元测试方法。

    @Test
    public void findByUid(){
        List<Address> list = addressMapper.findByUid(8);
        System.out.println(list);
    }

2.业务层

1.不用抛出相关的异常,不用进行异常的设计

2.设计业务层的接口和抽象方法

    List<Address> getByUid(Integer uid);

3.需要在实现类中实现此方法的逻辑

public List<Address> getByUid(Integer uid) {
        List<Address> list = addressMapper.findByUid(uid);
        for (Address address : list) {
            address.setAid(null);
            address.setUid(null);
            address.setProvinceCode(null);
            address.setCityCode(null);
            address.setAreaCode(null);
            address.setZip(null);
            address.setTel(null);
            address.setIsDefault(null);
            address.setCreatedUser(null);
            address.setCreatedTime(null);
            address.setModifiedUser(null);
            address.setModifiedTime(null);
        }
        return list;
    }

AddressService–getByUid


测试

4.单元测试暂时省略。

实现抽象方法

3.控制器

1.请求设计

/address
HttpSession
GET
JsonResult<List<Address>>

2.实现请求方法的编写

  @RequestMapping({"","/"})
    public JsonResult<List<Address>> getByUid(HttpSession session){
        Integer uid = getuidFromSession(session);
        List<Address> data = addressService.getByUid(uid);
        return new JsonResult<>(OK,data);
    }

AddressController–getByUid


测试

3.先登录,再访问请求的地址进行数据的测试。


前端页面

address.html页面中编写查询用户收货地址数据的列表展示。

      // <!--showAddressList-->
      $(document).ready(function () {
        showAddressList();
      });
      function showAddressList() {
        $("#address-list").empty();
        $.ajax({
          url: "/address",
          type: "GET",
          dataType: "JSON",
          success: function (json) {
            if (json.state==200) {
              let list = json.data;
              for (let i = 0; i < list.length; i++) {
                console.log(list[i].name);
                let tr = '<tr>'
                    + '<td>#{tag}</td>'
                    + '<td>#{name}</td>'
                    + '<td>#{province}#{city}#{area}#{address}</td>'
                    + '<td>#{phone}</td>'
                    + '<td><a class="btn btn-xs btn-info"><span class="fa fa-edit"></span> 修改</a></td>'
                    + '<td><a οnclick="deleteByAid(#{aid})" class="btn btn-xs add-del btn-info"><span class="fa fa-trash-o"></span> 删除</a></td>'
                    + '<td><a οnclick="setDefault(#{aid})" class="btn btn-xs add-def btn-default">设为默认</a></td>'
                    + '</tr>';
                tr = tr.replace(/#{aid}/g, list[i].aid);
                tr = tr.replace(/#{tag}/g, list[i].tag);
                tr = tr.replace("#{name}", list[i].name);
                tr = tr.replace("#{province}", list[i].provinceName);
                tr = tr.replace("#{city}", list[i].cityName);
                tr = tr.replace("#{area}", list[i].areaName);
                tr = tr.replace("#{address}", list[i].address);
                tr = tr.replace("#{phone}", list[i].phone);
                $("#address-list").append(tr);
              }
              //将某个元素隐藏使用hide()
              $(".add-def:eq(0)").hide();
            }else{
              alert("用户收货地址加载失败")
            }
          }
        });
      }
      // <!--showAddressList-->

address.html–showAddressList

测试


README–收货地址列表展示

相关文章
|
26天前
|
前端开发 数据库 Python
Django项目之电商购物商城 -- 修改/删除收货地址/设置默认地址
Django项目之电商购物商城 -- 修改/删除收货地址/设置默认地址
|
7月前
|
JSON API 开发者
淘宝获取购物车的商品列表 API接口
淘宝提供了获取购物车商品列表 API 接口,允许开发者通过编程方式获取用户购物车中的商品列表。这个 API 接口可以帮助开发者更好地了解用户在购物车中添加了哪些商品,以及每个商品的基本信息,例如商品 ID、名称、价格、数量等。
|
26天前
|
前端开发 JavaScript Python
Django项目之电商购物商城 -- 新增收货地址
Django项目之电商购物商城 -- 新增收货地址
|
26天前
|
缓存 前端开发 数据库
Django项目之电商购物商城 -- 创建收货地址
Django项目之电商购物商城 -- 创建收货地址
|
9月前
|
开发者
【 uniapp - 黑马优购 | 购物车页面(1)】如何创建购物车编译模式、 商品列表区域实现
【 uniapp - 黑马优购 | 购物车页面(1)】如何创建购物车编译模式、 商品列表区域实现
162 0
|
11月前
|
SQL 前端开发
新增收货地址【项目 商城】
新增收货地址【项目 商城】
76 0
|
11月前
|
SQL 存储 前端开发
显示购物车列表【项目 商城】
显示购物车列表【项目 商城】
46 0
|
11月前
|
SQL 前端开发 测试技术
显示勾选的购物车数据【项目 商城】
显示勾选的购物车数据【项目 商城】
54 0
|
11月前
|
SQL 前端开发
创建订单【项目 商城】
创建订单【项目 商城】
39 0
|
8月前
|
JSON 缓存 API
如何使用商品详情API接口来获取想要的商品数据?
在这篇文章中,我将详细介绍如何使用商品详情API接口来获取想要的商品数据。首先,我们需要了解API接口的基本概念和使用方法。然后,我们将探讨如何通过API接口获取商品数据,并给出示例代码。最后,我们将讨论如何优化API接口的使用,以提高获取商品数据的效率。