package com.leon.pojo.bo;/*** 用户新增或修改地址的BO*/
public class AddressBO {private String addressId;private String userId;private String receiver;private String mobile;private String province;private String city;private String district;private String detail;public String getAddressId() {return addressId;}public void setAddressId(String addressId) {this.addressId = addressId;}public String getUserId() {return userId;}public void setUserId(String userId) {this.userId = userId;}public String getReceiver() {return receiver;}public void setReceiver(String receiver) {this.receiver = receiver;}public String getMobile() {return mobile;}public void setMobile(String mobile) {this.mobile = mobile;}public String getProvince() {return province;}public void setProvince(String province) {this.province = province;}public String getCity() {return city;}public void setCity(String city) {this.city = city;}public String getDistrict() {return district;}public void setDistrict(String district) {this.district = district;}public String getDetail() {return detail;}public void setDetail(String detail) {this.detail = detail;}
}
/*** 用户新增地址* @param addressBO*/
public void addNewUserAddress(AddressBO addressBO);
@Transactional(propagation = Propagation.REQUIRED)
@Override
public void addNewUserAddress(AddressBO addressBO) {// 1. 判断当前用户是否存在地址,如果没有,则新增为‘默认地址’Integer isDefault = 0;List<UserAddress> addressList = this.queryAll(addressBO.getUserId());if (addressList == null || addressList.isEmpty() || addressList.size() == 0) {isDefault = 1;}String addressId = sid.nextShort();// 2. 保存地址到数据库UserAddress newAddress = new UserAddress();BeanUtils.copyProperties(addressBO, newAddress);newAddress.setId(addressId);newAddress.setIsDefault(isDefault);newAddress.setCreatedTime(new Date());newAddress.setUpdatedTime(new Date());userAddressMapper.insert(newAddress);
}
package com.leon.pojo;import javax.persistence.*;
import java.util.Date;@Table(name = "user_address")
public class UserAddress {/*** 地址主键id*/@Idprivate String id;/*** 关联用户id*/@Column(name = "user_id")private String userId;/*** 收件人姓名*/private String receiver;/*** 收件人手机号*/private String mobile;/*** 省份*/private String province;/*** 城市*/private String city;/*** 区县*/private String district;/*** 详细地址*/private String detail;/*** 扩展字段*/private String extand;/*** 是否默认地址*/@Column(name = "is_default")private Integer isDefault;/*** 创建时间*/@Column(name = "created_time")private Date createdTime;/*** 更新时间*/@Column(name = "updated_time")private Date updatedTime;/*** 获取地址主键id** @return id - 地址主键id*/public String getId() {return id;}/*** 设置地址主键id** @param id 地址主键id*/public void setId(String id) {this.id = id;}/*** 获取关联用户id** @return user_id - 关联用户id*/public String getUserId() {return userId;}/*** 设置关联用户id** @param userId 关联用户id*/public void setUserId(String userId) {this.userId = userId;}/*** 获取收件人姓名** @return receiver - 收件人姓名*/public String getReceiver() {return receiver;}/*** 设置收件人姓名** @param receiver 收件人姓名*/public void setReceiver(String receiver) {this.receiver = receiver;}/*** 获取收件人手机号** @return mobile - 收件人手机号*/public String getMobile() {return mobile;}/*** 设置收件人手机号** @param mobile 收件人手机号*/public void setMobile(String mobile) {this.mobile = mobile;}/*** 获取省份** @return province - 省份*/public String getProvince() {return province;}/*** 设置省份** @param province 省份*/public void setProvince(String province) {this.province = province;}/*** 获取城市** @return city - 城市*/public String getCity() {return city;}/*** 设置城市** @param city 城市*/public void setCity(String city) {this.city = city;}/*** 获取区县** @return district - 区县*/public String getDistrict() {return district;}/*** 设置区县** @param district 区县*/public void setDistrict(String district) {this.district = district;}/*** 获取详细地址** @return detail - 详细地址*/public String getDetail() {return detail;}/*** 设置详细地址** @param detail 详细地址*/public void setDetail(String detail) {this.detail = detail;}/*** 获取扩展字段** @return extand - 扩展字段*/public String getExtand() {return extand;}/*** 设置扩展字段** @param extand 扩展字段*/public void setExtand(String extand) {this.extand = extand;}/*** 获取是否默认地址** @return is_default - 是否默认地址*/public Integer getIsDefault() {return isDefault;}/*** 设置是否默认地址** @param isDefault 是否默认地址*/public void setIsDefault(Integer isDefault) {this.isDefault = isDefault;}/*** 获取创建时间** @return created_time - 创建时间*/public Date getCreatedTime() {return createdTime;}/*** 设置创建时间** @param createdTime 创建时间*/public void setCreatedTime(Date createdTime) {this.createdTime = createdTime;}/*** 获取更新时间** @return updated_time - 更新时间*/public Date getUpdatedTime() {return updatedTime;}/*** 设置更新时间** @param updatedTime 更新时间*/public void setUpdatedTime(Date updatedTime) {this.updatedTime = updatedTime;}
}
@ApiOperation(value = "用户新增地址", notes = "用户新增地址", httpMethod = "POST")
@PostMapping("/add")
public JSONResult add(@RequestBody AddressBO addressBO) {JSONResult checkRes = checkAddress(addressBO);if (checkRes.getStatus() != 200) {return checkRes;}addressService.addNewUserAddress(addressBO);return JSONResult.ok();
}
private JSONResult checkAddress(AddressBO addressBO) {String receiver = addressBO.getReceiver();if (StringUtils.isBlank(receiver)) {return JSONResult.errorMsg("收货人不能为空");}if (receiver.length() > 12) {return JSONResult.errorMsg("收货人姓名不能太长");}String mobile = addressBO.getMobile();if (StringUtils.isBlank(mobile)) {return JSONResult.errorMsg("收货人手机号不能为空");}if (mobile.length() != 11) {return JSONResult.errorMsg("收货人手机号长度不正确");}boolean isMobileOk = MobileEmailUtils.checkMobileIsOk(mobile);if (!isMobileOk) {return JSONResult.errorMsg("收货人手机号格式不正确");}String province = addressBO.getProvince();String city = addressBO.getCity();String district = addressBO.getDistrict();String detail = addressBO.getDetail();if (StringUtils.isBlank(province) ||StringUtils.isBlank(city) ||StringUtils.isBlank(district) ||StringUtils.isBlank(detail)) {return JSONResult.errorMsg("收货地址信息不能为空");}return JSONResult.ok();
}

收货地址 - 新增收货地址相关推荐

  1. 新增收货地址【项目 商城】

    新增收货地址[项目 商城] 新增收货地址 1 新增收货地址-数据表创建 2 新增收货地址-创建实体类 3 新增收货地址-持久层 3.1 各功能的开发顺序 3.2 规划需要执行的SQL语句 3.3 接口 ...

  2. SpringBoot+MyBatis+MYSQL项目实战六(新增收货地址)

    SpringBoot+MyBatis+MYSQL项目实战六(新增收货地址) 项目源码地址:电脑商城实战 点击新增收货地址 一:新增收货地址--数据表的创建 CREATE TABLE t_address ...

  3. 10天手敲一个SpringBoot网上商城项目(四)——新增收货地址功能、获取省市区列表及名称功能的实现

    静态资源及sql文件分享 链接:https://pan.baidu.com/s/1X-yjmQcPD3PqS21x0HplNA?pwd=23gr 提取码:23gr 文章目录 新增收货地址 1.创建数据 ...

  4. 谷粒商城---新增收货地址,设置默认地址实现

    今天实现了新增收货地址,设置默认地址的功能. 1.接收两个参数: @RequestMapping("/setdefualt") public R setdefualt(@Reque ...

  5. 【电商项目实战】新增收货地址(详细篇)

  6. UNIAPP实战项目笔记43 购物车页面修改收货地址和修改默认地址

    UNIAPP实战项目笔记43 购物车页面修改收货地址和修改默认地址 实际案例图片 修改收货地址和修改默认地址页面布局和功能 具体内容图片自己替换哈,随便找了个图片的做示例 用到了vuex的状态机,具体 ...

  7. 收货地址,模糊详细地址,自动转换成省市区街道,并保存到Excel工具

    收货地址,模糊详细地址,自动转换成省市区街道,并保存到Excel工具. 文件模板为: 地址自动转换成省市区街道并保存到Excel文件: 使用说明: 1.双击start.bat,打开工具,选择类似于&l ...

  8. 与我们生活息息的,不止“口红效应”,还有新“吃货效应”

    2020年全球经济发展面临较大的不确定,有一个经济学现象总是被提及:"口红效应". 所谓"口红效应",是指因经济萧条而导致口红热卖的一种有趣的经济现象,也叫&q ...

  9. 张朝阳直播做饭上演“吃播”,“Charles的好物分享”探索带货形式新边界

    8月6日下午,"Charles的好物分享"第三期开播,搜狐公司董事局主席兼首席执行官张朝阳在搜狐视频直播做饭,烹饪家常菜.现做拿手的西安家乡美食油泼辣子,同时推荐与"吃& ...

最新文章

  1. PyCharm 2019.1 EAP 5 发布,全新的 Jupyter Notebook
  2. golang database/sql包 简介
  3. 为了今年印象最深刻的唱片,转演唱会消息一个,虽然我去不了 55555
  4. Excel常见错误信息
  5. 在featureDataset和workspace下創建featureclass
  6. 实例讲解hadoop中的map/reduce查询(python语言实现)
  7. Dataset之Rotten Tomatoes:Rotten Tomatoes影评数据集简介、下载、使用方法之详细攻略
  8. 【干货】求之不得的 Java 文档教程大汇总!
  9. 如何构建行业知识图谱 (以医疗行业为例)
  10. python学习笔记(自定义库文件路径)
  11. rootfs 制作ubuntu_为n1制作aarcm64/arm64 ubuntu rootfs系统
  12. 线程中可以创建进程吗_Linux 进程线程是如何创建的?
  13. 背包问题学习笔记(二)
  14. .Net Core 商城微服务项目系列(十四):分布式部署携程Apollo构建配置中心
  15. word中如何优雅的显示代码
  16. Java框架之Hibernate(二)
  17. java基础学习的心得体会
  18. 计算机指令集编程教程,PLC编程语言入门,常用指令集汇总分享
  19. excel复选框_使用复选框更改Excel公式结果
  20. 我大学到研究生学过的计算机基础课程(数据结构、计算机网络、算法、操作系统),绝对推荐,全部在这里了!

热门文章

  1. 新手学做网站的建议教程
  2. 初级软件测试工程师工资(薪资待遇)一般是多少?
  3. TIA博途中FC功能块的介绍与管脚定义
  4. 用js将二维数组转为json格式字符串
  5. 在OpenCV里用fillPoly填充多边形
  6. iOS开发:关于UILabel、UIButton、UITextField文字下划线的设置方法(涉及到富文本的知识)
  7. c语言实现哥德巴赫猜想(函数版)
  8. 面试必备SQL调优方案
  9. vue 路由三种写法方式
  10. 【李佳辉_周报_2022.10.9】