| | |
| | | package com.ruoyi.account.controller; |
| | | |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.ruoyi.account.api.model.UserAddress; |
| | | import com.ruoyi.account.service.UserAddressService; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.annotation.Resource; |
| | | import java.util.List; |
| | | import com.ruoyi.account.api.model.AppUser; |
| | | import com.ruoyi.account.api.model.UserAddress; |
| | | import com.ruoyi.account.service.UserAddressService; |
| | |
| | | @RestController |
| | | @RequestMapping("/user-address") |
| | | public class UserAddressController { |
| | | |
| | | @Resource |
| | | private UserAddressService userAddressService; |
| | | |
| | | @Resource |
| | | private TokenService tokenService; |
| | | |
| | | |
| | | /** |
| | | * 获取用户默认地址 |
| | | * @param userId |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @PostMapping("/getDefaultUserAddress") |
| | | public R<UserAddress> getDefaultUserAddress(@RequestParam("userId") Long userId){ |
| | | List<UserAddress> list = userAddressService.list(new LambdaQueryWrapper<UserAddress>().eq(UserAddress::getAppUserId, userId).eq(UserAddress::getDelFlag, 0)); |
| | | if(list.size() == 0){ |
| | | return R.ok(); |
| | | } |
| | | UserAddress userAddress = list.stream().filter(s -> s.getIsDefault() == 1).findFirst().get(); |
| | | if(null == userAddress){ |
| | | userAddress = list.get(0); |
| | | } |
| | | return R.ok(userAddress); |
| | | } |
| | | |
| | | @Resource |
| | | private TokenService tokenService; |
| | | @Resource |
| | | private UserAddressService userAddressService; |
| | | |
| | | @ResponseBody |
| | | @PostMapping("/add") |
| | | @ApiOperation(value = "添加", tags = {"小程序-个人中心首页-我的地址"}) |
| | | public R add(@RequestBody UserAddress userAddress){ |
| | | Long userId = tokenService.getLoginUserApplet().getUserId(); |
| | | public R<String> add(@RequestBody UserAddress userAddress){ |
| | | Long userId = tokenService.getLoginUserApplet().getUserid(); |
| | | if (userAddress.getIsDefault()==1){ |
| | | List<UserAddress> list = userAddressService.lambdaQuery().eq(UserAddress::getAppUserId, userId).list(); |
| | | for (UserAddress userAddress1 : list) { |
| | | userAddress1.setIsDefault(0); |
| | | } |
| | | userAddressService.updateBatchById(list); |
| | | } |
| | | userAddress.setAppUserId(userId); |
| | | userAddressService.save(userAddress); |
| | | return R.ok(); |
| | | return R.ok(userAddress.getId().toString()); |
| | | } |
| | | |
| | | @ResponseBody |
| | | @GetMapping("/list") |
| | | @ApiOperation(value = "列表", tags = {"小程序-个人中心首页-我的地址"}) |
| | | public R list(){ |
| | | Long userId = tokenService.getLoginUserApplet().getUserid(); |
| | | List<UserAddress> list = userAddressService.lambdaQuery().eq(UserAddress::getAppUserId, userId).orderByDesc(UserAddress::getIsDefault).list(); |
| | | for (UserAddress userAddress : list) { |
| | | userAddress.setIdStr(userAddress.getId().toString()); |
| | | userAddress.setUid(userAddress.getId().toString()); |
| | | } |
| | | return R.ok(list); |
| | | } |
| | | |
| | | @ResponseBody |
| | | @PostMapping("/edit") |
| | | @ApiOperation(value = "编辑", tags = {"小程序-个人中心首页-我的地址"}) |
| | | public R edit(@RequestBody UserAddress userAddress){ |
| | | Long userId = tokenService.getLoginUserApplet().getUserid(); |
| | | if (userAddress.getIsDefault()==1){ |
| | | List<UserAddress> list = userAddressService.lambdaQuery().eq(UserAddress::getAppUserId, userId).list(); |
| | | for (UserAddress userAddress1 : list) { |
| | | userAddress1.setIsDefault(0); |
| | | } |
| | | userAddressService.updateBatchById(list); |
| | | } |
| | | userAddressService.updateById(userAddress); |
| | | return R.ok(); |
| | | } |
| | | @ResponseBody |
| | | @PostMapping("/delete") |
| | | @GetMapping("/delete") |
| | | @ApiOperation(value = "删除", tags = {"小程序-个人中心首页-我的地址"}) |
| | | public R edit(@RequestParam Integer id){ |
| | | public R edit(@RequestParam String id){ |
| | | userAddressService.removeById(id); |
| | | return R.ok(); |
| | | } |
| | | |
| | | @ResponseBody |
| | | @PostMapping("/set") |
| | | @GetMapping("/set") |
| | | @ApiOperation(value = "设为默认", tags = {"小程序-个人中心首页-我的地址"}) |
| | | public R set(@RequestParam Integer id){ |
| | | Long userId = tokenService.getLoginUserApplet().getUserId(); |
| | | public R set(@RequestParam String id){ |
| | | Long userId = tokenService.getLoginUserApplet().getUserid(); |
| | | List<UserAddress> list = userAddressService.lambdaQuery().eq(UserAddress::getAppUserId, userId).list(); |
| | | for (UserAddress userAddress : list) { |
| | | userAddress.setIsDefault(0); |
| | |
| | | return R.ok(); |
| | | } |
| | | |
| | | /** |
| | | * 获取登录用户地址列表 |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @GetMapping("/getUserAddressList") |
| | | @ApiOperation(value = "获取登录用户地址列表", tags = {"小程序-个人中心首页-我的地址"}) |
| | | public R<List<UserAddress>> getUserAddressList(){ |
| | | Long userId = tokenService.getLoginUserApplet().getUserid(); |
| | | List<UserAddress> list = userAddressService.lambdaQuery().eq(UserAddress::getAppUserId, userId).list(); |
| | | for (UserAddress userAddress : list) { |
| | | userAddress.setIdStr(userAddress.getId().toString()); |
| | | } |
| | | return R.ok(list); |
| | | } |
| | | |
| | | /** |
| | | * 根据id获取用户地址信息 |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @ResponseBody |
| | | @PostMapping("/getUserAddressById") |
| | | public R<UserAddress> getUserAddressById(@RequestParam("id") Long id){ |
| | | UserAddress userAddress = userAddressService.getById(id); |
| | | return R.ok(userAddress); |
| | | } |
| | | |
| | | |
| | | |
| | | } |
| | | |