- 增加:增加 rest api(用户地址)
This commit is contained in:
@@ -0,0 +1,80 @@
|
||||
package cn.iocoder.mall.user.rest.controller.user;
|
||||
|
||||
import cn.iocoder.common.framework.vo.CommonResult;
|
||||
import cn.iocoder.mall.security.core.context.UserSecurityContextHolder;
|
||||
import cn.iocoder.mall.user.biz.dto.user.UserAddressAddDTO;
|
||||
import cn.iocoder.mall.user.biz.dto.user.UserAddressUpdateDTO;
|
||||
import cn.iocoder.mall.user.biz.service.user.UserAddressService;
|
||||
import cn.iocoder.mall.user.rest.convert.UserAddressConvert;
|
||||
import cn.iocoder.mall.user.rest.request.UserAddressAddRequest;
|
||||
import cn.iocoder.mall.user.rest.request.UserAddressUpdateRequest;
|
||||
import cn.iocoder.mall.user.rest.response.UserAddressResponse;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 用户地址(user API)
|
||||
*
|
||||
* author: sin
|
||||
* time: 2020/5/8 9:50
|
||||
*/
|
||||
@RestController
|
||||
@Api(tags = "用户地址(user API)")
|
||||
@RequestMapping("/users/user-address")
|
||||
public class UsersUserAddressController {
|
||||
|
||||
@Autowired
|
||||
private UserAddressService userAddressService;
|
||||
|
||||
@GetMapping("list-address")
|
||||
@ApiOperation("获取 - 地址列表(all)")
|
||||
public CommonResult<List<UserAddressResponse>> listAddress() {
|
||||
Integer userId = UserSecurityContextHolder.getContext().getUserId();
|
||||
return CommonResult.success(UserAddressConvert.INSTANCE.convert(userAddressService.listAddress(userId)));
|
||||
}
|
||||
|
||||
@GetMapping("{addressId}")
|
||||
@ApiOperation("获取 - 根据id获取")
|
||||
public CommonResult<UserAddressResponse> getAddress(@PathVariable("addressId") Integer addressId) {
|
||||
return CommonResult.success(UserAddressConvert.INSTANCE.convert(userAddressService.getAddress(addressId)));
|
||||
}
|
||||
|
||||
@GetMapping("default")
|
||||
@ApiOperation("获取 - 获取默认地址")
|
||||
public CommonResult<UserAddressResponse> getDefaultAddress() {
|
||||
Integer userId = UserSecurityContextHolder.getContext().getUserId();
|
||||
return CommonResult.success(UserAddressConvert.INSTANCE.convert(userAddressService.getDefaultAddress(userId)));
|
||||
}
|
||||
|
||||
@DeleteMapping("/{addressId}/remove")
|
||||
@ApiOperation("删除 - 根据id删除")
|
||||
public CommonResult<UserAddressResponse> getDefaultAddress(@PathVariable("addressId") Integer addressId) {
|
||||
Integer userId = UserSecurityContextHolder.getContext().getUserId();
|
||||
userAddressService.removeAddress(userId, addressId);
|
||||
return CommonResult.success(null);
|
||||
}
|
||||
|
||||
@PostMapping("/add-address")
|
||||
@ApiOperation("添加地址")
|
||||
public CommonResult<UserAddressResponse> addAddress(@RequestBody UserAddressAddRequest userAddressAddRequest) {
|
||||
Integer userId = UserSecurityContextHolder.getContext().getUserId();
|
||||
UserAddressAddDTO userAddressAddDTO = UserAddressConvert.INSTANCE.convert(userAddressAddRequest);
|
||||
userAddressAddDTO.setUserId(userId);
|
||||
userAddressService.addAddress(userAddressAddDTO);
|
||||
return CommonResult.success(null);
|
||||
}
|
||||
|
||||
@PutMapping("/update-address")
|
||||
@ApiOperation("更新地址")
|
||||
public CommonResult<UserAddressResponse> updateAddress(@RequestBody UserAddressUpdateRequest userAddressAddRequest) {
|
||||
Integer userId = UserSecurityContextHolder.getContext().getUserId();
|
||||
UserAddressUpdateDTO userAddressAddDTO = UserAddressConvert.INSTANCE.convert(userAddressAddRequest);
|
||||
userAddressAddDTO.setUserId(userId);
|
||||
userAddressService.updateAddress(userAddressAddDTO);
|
||||
return CommonResult.success(null);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package cn.iocoder.mall.user.rest.convert;
|
||||
|
||||
import cn.iocoder.mall.user.biz.bo.user.UserAddressBO;
|
||||
import cn.iocoder.mall.user.biz.dto.user.UserAddressAddDTO;
|
||||
import cn.iocoder.mall.user.biz.dto.user.UserAddressUpdateDTO;
|
||||
import cn.iocoder.mall.user.rest.request.UserAddressAddRequest;
|
||||
import cn.iocoder.mall.user.rest.request.UserAddressUpdateRequest;
|
||||
import cn.iocoder.mall.user.rest.response.UserAddressResponse;
|
||||
import org.mapstruct.Mapper;
|
||||
import org.mapstruct.Mappings;
|
||||
import org.mapstruct.factory.Mappers;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 用户地址 convert
|
||||
*
|
||||
* author: sin
|
||||
* time: 2020/5/8 10:01
|
||||
*/
|
||||
@Mapper
|
||||
public interface UserAddressConvert {
|
||||
|
||||
UserAddressConvert INSTANCE = Mappers.getMapper(UserAddressConvert.class);
|
||||
|
||||
@Mappings({})
|
||||
List<UserAddressResponse> convert(List<UserAddressBO> userAddressBOList);
|
||||
|
||||
@Mappings({})
|
||||
UserAddressResponse convert(UserAddressBO userAddressBO);
|
||||
|
||||
@Mappings({})
|
||||
UserAddressAddDTO convert(UserAddressAddRequest userAddressAddRequest);
|
||||
|
||||
@Mappings({})
|
||||
UserAddressUpdateDTO convert(UserAddressUpdateRequest userAddressUpdateRequest);
|
||||
}
|
||||
@@ -0,0 +1,41 @@
|
||||
package cn.iocoder.mall.user.rest.request;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 用户地址 add
|
||||
*
|
||||
* @author Sin
|
||||
* @time 2019-04-06 13:25
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@ApiModel("用户地址(添加)")
|
||||
public class UserAddressAddRequest implements Serializable {
|
||||
|
||||
@NotNull
|
||||
@ApiModelProperty("收件区域编号")
|
||||
private String areaNo;
|
||||
|
||||
@NotNull
|
||||
@ApiModelProperty("收件人名称")
|
||||
private String name;
|
||||
|
||||
@NotNull
|
||||
@ApiModelProperty("收件手机号")
|
||||
private String mobile;
|
||||
|
||||
@NotNull
|
||||
@ApiModelProperty("收件详细地址")
|
||||
private String address;
|
||||
|
||||
@NotNull
|
||||
@ApiModelProperty("是否默认 1 不是 2 是")
|
||||
private Integer hasDefault;
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
package cn.iocoder.mall.user.rest.request;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 用户地址 更新
|
||||
*
|
||||
* @author Sin
|
||||
* @time 2019-04-06 13:28
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@ApiModel("用户地址(更新)")
|
||||
public class UserAddressUpdateRequest implements Serializable {
|
||||
|
||||
@NotNull
|
||||
@ApiModelProperty("编号")
|
||||
private Integer id;
|
||||
|
||||
@NotNull
|
||||
@ApiModelProperty("收件区域编号")
|
||||
private String areaNo;
|
||||
|
||||
@NotNull
|
||||
@ApiModelProperty("收件人名称")
|
||||
private String name;
|
||||
|
||||
@NotNull
|
||||
@ApiModelProperty("收件手机号")
|
||||
private String mobile;
|
||||
|
||||
@NotNull
|
||||
@ApiModelProperty("收件详细地址")
|
||||
private String address;
|
||||
|
||||
@NotNull
|
||||
@ApiModelProperty("是否默认地址")
|
||||
private Integer hasDefault;
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
/**
|
||||
* author: sin
|
||||
* time: 2020/5/8 9:57
|
||||
*/
|
||||
package cn.iocoder.mall.user.rest.request;
|
||||
@@ -0,0 +1,41 @@
|
||||
package cn.iocoder.mall.user.rest.response;
|
||||
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import lombok.experimental.Accessors;
|
||||
|
||||
import java.io.Serializable;
|
||||
|
||||
/**
|
||||
* 用户地址
|
||||
*
|
||||
* @author Sin
|
||||
* @time 2019-04-06 13:28
|
||||
*/
|
||||
@Data
|
||||
@Accessors(chain = true)
|
||||
@ApiModel(value = "用户地址")
|
||||
public class UserAddressResponse implements Serializable {
|
||||
|
||||
@ApiModelProperty("编号")
|
||||
private Integer id;
|
||||
|
||||
@ApiModelProperty("用户编号")
|
||||
private Integer userId;
|
||||
|
||||
@ApiModelProperty("收件区域编号")
|
||||
private String areaNo;
|
||||
|
||||
@ApiModelProperty("收件人名称")
|
||||
private String name;
|
||||
|
||||
@ApiModelProperty("收件手机号")
|
||||
private String mobile;
|
||||
|
||||
@ApiModelProperty("收件详细地址")
|
||||
private String address;
|
||||
|
||||
@ApiModelProperty("是否默认")
|
||||
private Integer hasDefault;
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
/**
|
||||
* author: sin
|
||||
* time: 2020/5/8 9:57
|
||||
*/
|
||||
package cn.iocoder.mall.user.rest.response;
|
||||
Reference in New Issue
Block a user