本文主要是介绍瑞吉外卖实战学习-17、用户地址簿相关功能,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
用户地址簿相关功能
- 效果图
- 1、根据规则创建相关文件
- 2、新增收货地址接口
- 3、列表查询页面以及设置默认地址
效果图
1、根据规则创建相关文件
2、新增收货地址接口
获取到传入的数据然后将id添加进去,然后存储到数据库
3、列表查询页面以及设置默认地址
list接口:是通过用户id来进行查询到相关的数据
default接口:通过id拿到相关数据,然后将默认地址的参数iddefault全部赋值成0,再将需要设置的默认地址附为1
package com.example.ruiji_demo.controller;import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper;
import com.example.ruiji_demo.common.BaseContext;
import com.example.ruiji_demo.common.R;
import com.example.ruiji_demo.entity.AddressBook;
import com.example.ruiji_demo.service.AddressBookService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;import java.util.List;/*** @author jitwxs* @date 2024年04月07日 22:11*/
@RestController
@RequestMapping("/addressBook")
@Slf4j
public class AddressBookController {@Autowiredprivate AddressBookService addressBookService;/*** 添加地址簿* @param addressBook* @return*/@PostMappingpublic R<AddressBook> save(@RequestBody AddressBook addressBook){
// 通过BaseContext.getCurrentid()获取用户idaddressBook.setUserId(BaseContext.getCurrentid());addressBookService.save(addressBook);return R.success(addressBook);}/*** 通过账户id查询地址数据* @return*/@GetMapping("list")public R<List> list(){
// 创建构造器LambdaQueryWrapper<AddressBook> queryWrapper = new LambdaQueryWrapper<>();
// 为构造器添加条件queryWrapper.like(AddressBook::getUserId,BaseContext.getCurrentid());List<AddressBook> list = addressBookService.list(queryWrapper);return R.success(list);}/*** 根据id修改状态* @param addressBook* @return*/@PutMapping("/default")public R<String> setDefault(@RequestBody AddressBook addressBook){LambdaUpdateWrapper<AddressBook> wrapper = new LambdaUpdateWrapper<>();wrapper.eq(AddressBook::getUserId,BaseContext.getCurrentid());wrapper.set(AddressBook::getIsDefault,0);addressBookService.update(wrapper);addressBook.setIsDefault(1);addressBookService.updateById((addressBook));return R.success("默认地址设置成功");}}
这篇关于瑞吉外卖实战学习-17、用户地址簿相关功能的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!