From aa85ef8670aba373bb21bd3bd362406e0922b6c8 Mon Sep 17 00:00:00 2001 From: jieyuu <645634619@qq.com> Date: Sun, 7 Jul 2024 17:23:08 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=A8=E6=88=B7=E5=9C=B0=E5=9D=80=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E6=A8=A1=E5=9D=97=E5=BC=80=E5=8F=91=E5=9F=BA=E6=9C=AC?= =?UTF-8?q?=E5=AE=8C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../net/jieyuu/enums/AddressStatusEnum.java | 23 ++++ .../java/net/jieyuu/enums/BizCodeEnum.java | 55 ++++++++- .../jieyuu/interceptor/LoginInterceptor.java | 15 +-- .../main/java/net/jieyuu/model/LoginUser.java | 2 + .../net/jieyuu/config/InterceptorConfig.java | 7 +- .../jieyuu/controller/AddressController.java | 43 +++++++- .../net/jieyuu/controller/UserController.java | 30 +++-- .../net/jieyuu/request/AddressAddRequest.java | 63 +++++++++++ .../net/jieyuu/service/AddressService.java | 35 +++++- .../java/net/jieyuu/service/UserService.java | 24 +++- .../service/impl/AddressServiceImpl.java | 104 +++++++++++++++++- .../jieyuu/service/impl/UserServiceImpl.java | 15 ++- .../main/java/net/jieyuu/vo/AddressVO.java | 53 +++++++++ .../src/main/java/net/jieyuu/vo/UserVO.java | 43 ++++++++ .../test/java/net/jieyuu/biz/AddressTest.java | 6 +- 15 files changed, 478 insertions(+), 40 deletions(-) create mode 100644 xdclass-common/src/main/java/net/jieyuu/enums/AddressStatusEnum.java create mode 100644 xdclass-user-service/src/main/java/net/jieyuu/request/AddressAddRequest.java create mode 100644 xdclass-user-service/src/main/java/net/jieyuu/vo/AddressVO.java create mode 100644 xdclass-user-service/src/main/java/net/jieyuu/vo/UserVO.java diff --git a/xdclass-common/src/main/java/net/jieyuu/enums/AddressStatusEnum.java b/xdclass-common/src/main/java/net/jieyuu/enums/AddressStatusEnum.java new file mode 100644 index 0000000..e6fd331 --- /dev/null +++ b/xdclass-common/src/main/java/net/jieyuu/enums/AddressStatusEnum.java @@ -0,0 +1,23 @@ +package net.jieyuu.enums; + +public enum AddressStatusEnum { + /** + * 是默认收货地址 + */ + DEFAULT_STATUS(1), + /** + * 是默认收货地址 + */ + COMMON_STATUS(0); + + + private int status; + + private AddressStatusEnum(int status) { + this.status = status; + } + + public int getStatus() { + return status; + } +} diff --git a/xdclass-common/src/main/java/net/jieyuu/enums/BizCodeEnum.java b/xdclass-common/src/main/java/net/jieyuu/enums/BizCodeEnum.java index fa39278..9773ff7 100644 --- a/xdclass-common/src/main/java/net/jieyuu/enums/BizCodeEnum.java +++ b/xdclass-common/src/main/java/net/jieyuu/enums/BizCodeEnum.java @@ -29,7 +29,60 @@ public enum BizCodeEnum { ACCOUNT_UNREGISTER(250002, "账号不存在"), ACCOUNT_PWD_ERROR(250003, "账号或者密码错误"), ACCOUNT_UNLOGIN(250004, "账号未登录"), - FILE_UPLOAD_USER_IMG_FAIL(600101, "用户头像文件上传失败"); + + /** + * 优惠券 + */ + COUPON_CONDITION_ERROR(270001,"优惠券条件错误"), + COUPON_UNAVAILABLE(270002,"没有可用的优惠券"), + COUPON_NO_EXITS(270003,"优惠券不存在"), + COUPON_NO_STOCK(270005,"优惠券库存不足"), + COUPON_OUT_OF_LIMIT(270006,"优惠券领取超过限制次数"), + COUPON_OUT_OF_TIME(270407,"优惠券不在领取时间范围"), + COUPON_GET_FAIL(270407,"优惠券领取失败"), + COUPON_RECORD_LOCK_FAIL(270409,"优惠券锁定失败"), + + /** + * 订单 + */ + ORDER_CONFIRM_COUPON_FAIL(280001,"创建订单-优惠券使用失败,不满足价格条件"), + ORDER_CONFIRM_PRICE_FAIL(280002,"创建订单-验价失败"), + ORDER_CONFIRM_LOCK_PRODUCT_FAIL(280003,"创建订单-商品库存不足锁定失败"), + ORDER_CONFIRM_ADD_STOCK_TASK_FAIL(280004,"创建订单-新增商品库存锁定任务"), + ORDER_CONFIRM_TOKEN_NOT_EXIST(280008,"订单令牌缺少"), + ORDER_CONFIRM_TOKEN_EQUAL_FAIL(280009,"订单令牌不正确"), + ORDER_CONFIRM_NOT_EXIST(280010,"订单不存在"), + ORDER_CONFIRM_CART_ITEM_NOT_EXIST(280011,"购物车商品项不存在"), + + /** + * 收货地址 + */ + ADDRESS_ADD_FAIL(290001,"新增收货地址失败"), + ADDRESS_DEL_FAIL(290002,"删除收货地址失败"), + ADDRESS_NO_EXITS(290003,"地址不存在"), + + /** + * 支付 + */ + PAY_ORDER_FAIL(300001,"创建支付订单失败"), + PAY_ORDER_CALLBACK_SIGN_FAIL(300002,"支付订单回调验证签失败"), + PAY_ORDER_CALLBACK_NOT_SUCCESS(300003,"创建支付订单失败"), + PAY_ORDER_NOT_EXIST(300005,"订单不存在"), + PAY_ORDER_STATE_ERROR(300006,"订单状态不正常"), + PAY_ORDER_PAY_TIMEOUT(300007,"订单支付超时"), + + /** + * 流控操作 + */ + + CONTROL_FLOW(500101,"限流控制"), + CONTROL_DEGRADE(500201,"降级控制"), + CONTROL_AUTH(500301,"认证控制"), + + /** + * 文件相关 + */ + FILE_UPLOAD_USER_IMG_FAIL(600101,"用户头像文件上传失败"); @Getter private int code; diff --git a/xdclass-common/src/main/java/net/jieyuu/interceptor/LoginInterceptor.java b/xdclass-common/src/main/java/net/jieyuu/interceptor/LoginInterceptor.java index 76c5a79..1e1d8b2 100644 --- a/xdclass-common/src/main/java/net/jieyuu/interceptor/LoginInterceptor.java +++ b/xdclass-common/src/main/java/net/jieyuu/interceptor/LoginInterceptor.java @@ -41,11 +41,14 @@ public class LoginInterceptor implements HandlerInterceptor { String name = (String) claims.get("name"); String mail = (String) claims.get("mail"); - LoginUser loginUser = new LoginUser(); - loginUser.setId(userId); - loginUser.setMail(mail); - loginUser.setHeadImg(headImg); - loginUser.setName(name); +// LoginUser loginUser = new LoginUser(); + + LoginUser loginUser = LoginUser.builder() + .headImg(headImg) + .id(userId) + .name(name) + .mail(mail) + .build(); //通过threadlocal传递用户信息 threadLocal.set(loginUser); @@ -58,11 +61,9 @@ public class LoginInterceptor implements HandlerInterceptor { @Override public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception { - HandlerInterceptor.super.postHandle(request, response, handler, modelAndView); } @Override public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception { - HandlerInterceptor.super.afterCompletion(request, response, handler, ex); } } diff --git a/xdclass-common/src/main/java/net/jieyuu/model/LoginUser.java b/xdclass-common/src/main/java/net/jieyuu/model/LoginUser.java index 5d337f2..4736f8b 100644 --- a/xdclass-common/src/main/java/net/jieyuu/model/LoginUser.java +++ b/xdclass-common/src/main/java/net/jieyuu/model/LoginUser.java @@ -2,9 +2,11 @@ package net.jieyuu.model; import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Builder; import lombok.Data; @Data +@Builder public class LoginUser { /** * 主键 diff --git a/xdclass-user-service/src/main/java/net/jieyuu/config/InterceptorConfig.java b/xdclass-user-service/src/main/java/net/jieyuu/config/InterceptorConfig.java index 8226b8f..ea1d39a 100644 --- a/xdclass-user-service/src/main/java/net/jieyuu/config/InterceptorConfig.java +++ b/xdclass-user-service/src/main/java/net/jieyuu/config/InterceptorConfig.java @@ -12,15 +12,10 @@ import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; @Slf4j public class InterceptorConfig implements WebMvcConfigurer { - @Bean - public LoginInterceptor loginInterceptor() { - return new LoginInterceptor(); - } - @Override public void addInterceptors(InterceptorRegistry registry) { registry - .addInterceptor(loginInterceptor()) + .addInterceptor(new LoginInterceptor()) //拦截的路径 .addPathPatterns("/api/user/*/**", "/api/address/*/**") //放行的路径 diff --git a/xdclass-user-service/src/main/java/net/jieyuu/controller/AddressController.java b/xdclass-user-service/src/main/java/net/jieyuu/controller/AddressController.java index 738cc7f..228585d 100644 --- a/xdclass-user-service/src/main/java/net/jieyuu/controller/AddressController.java +++ b/xdclass-user-service/src/main/java/net/jieyuu/controller/AddressController.java @@ -4,10 +4,16 @@ package net.jieyuu.controller; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; +import net.jieyuu.enums.BizCodeEnum; +import net.jieyuu.request.AddressAddRequest; import net.jieyuu.service.AddressService; +import net.jieyuu.utils.JsonData; +import net.jieyuu.vo.AddressVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; +import java.util.List; + /** *

* 电商-公司收发货地址表 前端控制器 @@ -18,19 +24,48 @@ import org.springframework.web.bind.annotation.*; */ @Api(tags = "收货地址模块") @RestController -@RequestMapping("/api/adderss/v1/") +@RequestMapping("/api/address/v1/") public class AddressController { @Autowired AddressService addressService; @ApiOperation("根据id查询地址详情") - @GetMapping("detail/{address_id}") - public Object detail( + @GetMapping("find/{address_id}") + public JsonData detail( @ApiParam(value = "地址", required = true) @PathVariable("address_id") long id) { - return addressService.detail(id); + AddressVO addressVO = addressService.detail(id); + return addressVO == null ? JsonData.buildResult(BizCodeEnum.ADDRESS_NO_EXITS) : JsonData.buildSuccess(addressVO); } + + @ApiOperation("新增收货地址") + @PostMapping("add") + public JsonData add(@ApiParam("地址对象") + @RequestBody AddressAddRequest addressAddRequest) { + addressService.add(addressAddRequest); + return JsonData.buildSuccess(); + } + + @ApiOperation("删除指定的收货地址") + @GetMapping("del/{address_id}") + public JsonData del( + @ApiParam(value = "地址", required = true) + @PathVariable("address_id") long id) { + int row = addressService.del(id); + + return row == 1 ? JsonData.buildSuccess() : JsonData.buildResult(BizCodeEnum.ADDRESS_DEL_FAIL); + } + + + @ApiOperation("查询用户全部收货地址") + @GetMapping("/list") + public JsonData findUserAllAddress(){ + List list= addressService.listUserAllAddress(); + return JsonData.buildSuccess(list); + } + + } diff --git a/xdclass-user-service/src/main/java/net/jieyuu/controller/UserController.java b/xdclass-user-service/src/main/java/net/jieyuu/controller/UserController.java index 9f877a7..6b19e6b 100644 --- a/xdclass-user-service/src/main/java/net/jieyuu/controller/UserController.java +++ b/xdclass-user-service/src/main/java/net/jieyuu/controller/UserController.java @@ -13,6 +13,7 @@ import net.jieyuu.service.NotifyService; import net.jieyuu.service.UserService; import net.jieyuu.utils.CommonUtil; import net.jieyuu.utils.JsonData; +import net.jieyuu.vo.UserVO; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.HttpRequest; import org.springframework.web.bind.annotation.*; @@ -97,15 +98,28 @@ public class UserController { } - @ApiOperation("刷新accessToken") - @PostMapping("refresh") - public JsonData getRefreshToken(Map param) { - //先从redis寻找refresh_token - //refresh_token存在, 解密accessToken - //重新调用JWTUtil 重新生成token +// @ApiOperation("刷新accessToken") +// @PostMapping("refresh") +// public JsonData getRefreshToken(Map param) { +// //先从redis寻找refresh_token +// //refresh_token存在, 解密accessToken +// //重新调用JWTUtil 重新生成token +// +// return null; +// //不存在 重新登录 +// } - return null; - //不存在 重新登录 + + /** + * 个人信息查询 + * @return + */ + @ApiOperation("获取用户信息") + @GetMapping("detail") + public JsonData getUserInfo() { + UserVO userVO = userService.findUserDetail(); + return JsonData.buildSuccess(userVO); } + } diff --git a/xdclass-user-service/src/main/java/net/jieyuu/request/AddressAddRequest.java b/xdclass-user-service/src/main/java/net/jieyuu/request/AddressAddRequest.java new file mode 100644 index 0000000..374e316 --- /dev/null +++ b/xdclass-user-service/src/main/java/net/jieyuu/request/AddressAddRequest.java @@ -0,0 +1,63 @@ +package net.jieyuu.request; + + +import com.fasterxml.jackson.annotation.JsonProperty; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +@Data +@ApiModel(value = "地址对象", description = "新增收货地址对象") +public class AddressAddRequest { + + /** + * 用户id + */ + private Long userId; + + /** + * 是否默认收货地址:0->否;1->是 + */ + @ApiModelProperty(value = "是否默认收货地址:0->否;1->是", example = "0") + @JsonProperty("default_status") + private Integer defaultStatus; + + /** + * 收发货人姓名 + */ + @ApiModelProperty(value = "收货人姓名", example = "桀杰捷") + @JsonProperty("receive_name") + private String receiveName; + + /** + * 收货人电话 + */ + @ApiModelProperty(value = "收货人电话", example = "12343211234") + private String phone; + + /** + * 省/直辖市 + */ + @ApiModelProperty(value = "省", example = "广东省") + private String province; + + /** + * 市 + */ + @ApiModelProperty(value = "城市", example = "湛江市") + private String city; + + /** + * 区 + */ + @ApiModelProperty(value = "区", example = "麻章区") + private String region; + + /** + * 详细地址 + */ + @ApiModelProperty(value = "详细地址", example = "") + @JsonProperty("detail_address") + private String detailAddress; + +} diff --git a/xdclass-user-service/src/main/java/net/jieyuu/service/AddressService.java b/xdclass-user-service/src/main/java/net/jieyuu/service/AddressService.java index 05b4cd1..094ec0d 100644 --- a/xdclass-user-service/src/main/java/net/jieyuu/service/AddressService.java +++ b/xdclass-user-service/src/main/java/net/jieyuu/service/AddressService.java @@ -1,9 +1,11 @@ package net.jieyuu.service; -import net.jieyuu.mapper.AddressMapper; import net.jieyuu.model.AddressDO; import com.baomidou.mybatisplus.extension.service.IService; -import org.springframework.beans.factory.annotation.Autowired; +import net.jieyuu.request.AddressAddRequest; +import net.jieyuu.vo.AddressVO; + +import java.util.List; /** *

@@ -14,7 +16,34 @@ import org.springframework.beans.factory.annotation.Autowired; * @since 2024-02-12 */ public interface AddressService extends IService { - public AddressDO detail(Long id); + + /** + * 查找详情 + * + * @param id + * @return + */ + public AddressVO detail(Long id); + /** + * 新增收货地址 + * + * @param addressAddRequest + */ + void add(AddressAddRequest addressAddRequest); + + + /** + * 根据id删除地址 + * @param addressId + * @return + */ + int del(long addressId); + + /** + * 查找用户全部收货地址 + * @return + */ + List listUserAllAddress(); } diff --git a/xdclass-user-service/src/main/java/net/jieyuu/service/UserService.java b/xdclass-user-service/src/main/java/net/jieyuu/service/UserService.java index c2c99f8..95c7b82 100644 --- a/xdclass-user-service/src/main/java/net/jieyuu/service/UserService.java +++ b/xdclass-user-service/src/main/java/net/jieyuu/service/UserService.java @@ -5,10 +5,11 @@ import com.baomidou.mybatisplus.extension.service.IService; import net.jieyuu.request.UserLoginRequest; import net.jieyuu.request.UserRegisterRequest; import net.jieyuu.utils.JsonData; +import net.jieyuu.vo.UserVO; /** *

- * 服务类 + * 服务类 *

* * @author jieyuu @@ -16,9 +17,26 @@ import net.jieyuu.utils.JsonData; */ public interface UserService extends IService { - //用户注册 + /** + * 用户注册 + * + * @param userRegisterRequest + * @return + */ JsonData register(UserRegisterRequest userRegisterRequest); - //用户登录 + /** + * 用户登录 + * + * @param loginRequest + * @return + */ JsonData login(UserLoginRequest loginRequest); + + /** + * 查看用户详情 + * + * @return + */ + UserVO findUserDetail(); } diff --git a/xdclass-user-service/src/main/java/net/jieyuu/service/impl/AddressServiceImpl.java b/xdclass-user-service/src/main/java/net/jieyuu/service/impl/AddressServiceImpl.java index 759b030..96868eb 100644 --- a/xdclass-user-service/src/main/java/net/jieyuu/service/impl/AddressServiceImpl.java +++ b/xdclass-user-service/src/main/java/net/jieyuu/service/impl/AddressServiceImpl.java @@ -1,12 +1,25 @@ package net.jieyuu.service.impl; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import lombok.extern.slf4j.Slf4j; +import net.jieyuu.enums.AddressStatusEnum; +import net.jieyuu.interceptor.LoginInterceptor; import net.jieyuu.model.AddressDO; import net.jieyuu.mapper.AddressMapper; +import net.jieyuu.model.LoginUser; +import net.jieyuu.request.AddressAddRequest; import net.jieyuu.service.AddressService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import net.jieyuu.vo.AddressVO; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; + +import java.util.Date; +import java.util.List; +import java.util.stream.Collectors; /** *

@@ -17,14 +30,97 @@ import org.springframework.stereotype.Service; * @since 2024-02-12 */ @Service +@Slf4j public class AddressServiceImpl extends ServiceImpl implements AddressService { @Autowired private AddressMapper addressMapper; @Override - public AddressDO detail(Long id) { - QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.eq("id", id); - return addressMapper.selectOne(queryWrapper); + public AddressVO detail(Long id) { + LoginUser loginUser = LoginInterceptor.threadLocal.get(); + + AddressDO addressDO = addressMapper.selectOne(new QueryWrapper() + .eq("id", id) + .eq("user_id", loginUser.getId())); + + if (addressDO == null) { + return null; + } + AddressVO addressVO = new AddressVO(); + BeanUtils.copyProperties(addressDO, addressVO); + + return addressVO; + } + + /** + * 新增收货地址 + * + * @param addressAddRequest + */ + @Override + @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRED) + public void add(AddressAddRequest addressAddRequest) { + LoginUser loginUser = LoginInterceptor.threadLocal.get(); + + AddressDO addressDO = new AddressDO(); + addressDO.setCreateTime(new Date()); + + BeanUtils.copyProperties(addressAddRequest, addressDO); + addressDO.setUserId(loginUser.getId()); + + //查询是否有默认地址 + if (addressDO.getDefaultStatus() == AddressStatusEnum.DEFAULT_STATUS.getStatus()) { + //查找数据库判断是否有默认地址 + AddressDO defaultAddressDO = addressMapper.selectOne(new QueryWrapper() + .eq("user_id", loginUser.getId()) + .eq("default_status", AddressStatusEnum.DEFAULT_STATUS.getStatus())); + + if (defaultAddressDO != null) { + //修改为非默认地址 + addressDO.setDefaultStatus(AddressStatusEnum.COMMON_STATUS.getStatus()); + addressMapper.update(defaultAddressDO, new QueryWrapper().eq("id", defaultAddressDO.getId())); + } + + } + + int row = addressMapper.insert(addressDO); + + //新增收货地址 + log.info("新增收货地址:row={},data={}", row, addressDO); + + } + + @Override + public int del(long addressId) { + LoginUser loginUser = LoginInterceptor.threadLocal.get(); + + int rows = addressMapper.delete( + new QueryWrapper() + .eq("id", addressId) + .eq("user_id", loginUser.getId()) + ); + + return rows; + + } + + @Override + public List listUserAllAddress() { + + LoginUser loginUser = LoginInterceptor.threadLocal.get(); + + List list = addressMapper.selectList( + new QueryWrapper() + .eq("user_id", loginUser.getId()) + ); + + //map映射 + List addressVOList = list.stream().map(obj -> { + AddressVO addressVO = new AddressVO(); + BeanUtils.copyProperties(obj, addressVO); + return addressVO; + }).collect(Collectors.toList()); + + return addressVOList; } } diff --git a/xdclass-user-service/src/main/java/net/jieyuu/service/impl/UserServiceImpl.java b/xdclass-user-service/src/main/java/net/jieyuu/service/impl/UserServiceImpl.java index 28ac379..c99ec4e 100644 --- a/xdclass-user-service/src/main/java/net/jieyuu/service/impl/UserServiceImpl.java +++ b/xdclass-user-service/src/main/java/net/jieyuu/service/impl/UserServiceImpl.java @@ -6,6 +6,7 @@ import io.swagger.annotations.ApiParam; import lombok.extern.slf4j.Slf4j; import net.jieyuu.enums.BizCodeEnum; import net.jieyuu.enums.SendCodeEnum; +import net.jieyuu.interceptor.LoginInterceptor; import net.jieyuu.model.LoginUser; import net.jieyuu.model.UserDO; import net.jieyuu.mapper.UserMapper; @@ -17,6 +18,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import net.jieyuu.utils.CommonUtil; import net.jieyuu.utils.JWTUtil; import net.jieyuu.utils.JsonData; +import net.jieyuu.vo.UserVO; import org.apache.commons.codec.digest.Md5Crypt; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.BeanUtils; @@ -148,7 +150,7 @@ public class UserServiceImpl extends ServiceImpl implements if (cryptPwd.equals(userDO.getPwd())) { //登陆成功 //生成token令牌并且返回 - LoginUser loginUser = new LoginUser(); + LoginUser loginUser = LoginUser.builder().build(); BeanUtils.copyProperties(userDO, loginUser); //accessToken String accessToken = JWTUtil.geneJsonWebToken(loginUser); @@ -170,5 +172,16 @@ public class UserServiceImpl extends ServiceImpl implements } } + @Override + public UserVO findUserDetail() { + LoginUser loginUser = LoginInterceptor.threadLocal.get(); + + UserDO userDO = userMapper.selectOne(new QueryWrapper().eq("id", loginUser.getId())); + + UserVO userVO = new UserVO(); + BeanUtils.copyProperties(userDO, userVO); + return userVO; + } + } diff --git a/xdclass-user-service/src/main/java/net/jieyuu/vo/AddressVO.java b/xdclass-user-service/src/main/java/net/jieyuu/vo/AddressVO.java new file mode 100644 index 0000000..ce99f0b --- /dev/null +++ b/xdclass-user-service/src/main/java/net/jieyuu/vo/AddressVO.java @@ -0,0 +1,53 @@ +package net.jieyuu.vo; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + + +@Data +public class AddressVO { + + private Long id; + + /** + * 用户id + */ + private Long userId; + + /** + * 是否默认收货地址:0->否;1->是 + */ + @JsonProperty("default_status") + private Integer defaultStatus; + + /** + * 收发货人姓名 + */ + @JsonProperty("receive_name") + private String receiveName; + + /** + * 收货人电话 + */ + private String phone; + + /** + * 省/直辖市 + */ + private String province; + + /** + * 市 + */ + private String city; + + /** + * 区 + */ + private String region; + + /** + * 详细地址 + */ + private String detailAddress; +} diff --git a/xdclass-user-service/src/main/java/net/jieyuu/vo/UserVO.java b/xdclass-user-service/src/main/java/net/jieyuu/vo/UserVO.java new file mode 100644 index 0000000..49c636c --- /dev/null +++ b/xdclass-user-service/src/main/java/net/jieyuu/vo/UserVO.java @@ -0,0 +1,43 @@ +package net.jieyuu.vo; + + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + + +@Data +public class UserVO { + private Long id; + + /** + * 昵称 + */ + private String name; + + /** + * 头像 + */ + @JsonProperty("head_img") + private String headImg; + + /** + * 用户签名 + */ + private String slogan; + + /** + * 0表示女,1表示男 + */ + private Integer sex; + + /** + * 积分 + */ + private Integer points; + + /** + * 邮箱 + */ + private String mail; + +} diff --git a/xdclass-user-service/src/test/java/net/jieyuu/biz/AddressTest.java b/xdclass-user-service/src/test/java/net/jieyuu/biz/AddressTest.java index a9ac6bb..85f898e 100644 --- a/xdclass-user-service/src/test/java/net/jieyuu/biz/AddressTest.java +++ b/xdclass-user-service/src/test/java/net/jieyuu/biz/AddressTest.java @@ -2,8 +2,8 @@ package net.jieyuu.biz; import lombok.extern.slf4j.Slf4j; import net.jieyuu.UserServiceApplication; -import net.jieyuu.model.AddressDO; import net.jieyuu.service.AddressService; +import net.jieyuu.vo.AddressVO; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; @@ -22,8 +22,8 @@ public class AddressTest { @Test public void testAddressDetail() { - AddressDO addressDO = addressService.detail(1L); - log.info(addressDO.toString()); + AddressVO addressVO = addressService.detail(1L); + log.info(addressVO.toString()); }