From 1c7e22837254781947366d09282d48a45347d0e5 Mon Sep 17 00:00:00 2001
From: huliguo <2023611923@qq.com>
Date: 星期三, 06 八月 2025 10:20:45 +0800
Subject: [PATCH] 发送小程序订单数量
---
pt-errand/src/main/java/com/ruoyi/errand/service/impl/AddressBookServiceImpl.java | 69 +++++++++++++++++++++++++---------
1 files changed, 50 insertions(+), 19 deletions(-)
diff --git a/pt-errand/src/main/java/com/ruoyi/errand/service/impl/AddressBookServiceImpl.java b/pt-errand/src/main/java/com/ruoyi/errand/service/impl/AddressBookServiceImpl.java
index 8e730c5..3816234 100644
--- a/pt-errand/src/main/java/com/ruoyi/errand/service/impl/AddressBookServiceImpl.java
+++ b/pt-errand/src/main/java/com/ruoyi/errand/service/impl/AddressBookServiceImpl.java
@@ -9,8 +9,10 @@
import com.ruoyi.errand.domain.AddressBook;
import com.ruoyi.errand.domain.AppUser;
import com.ruoyi.errand.domain.Community;
+import com.ruoyi.errand.domain.Region;
import com.ruoyi.errand.mapper.AddressBookMapper;
import com.ruoyi.errand.mapper.CommunityMapper;
+import com.ruoyi.errand.mapper.RegionMapper;
import com.ruoyi.errand.object.dto.app.AddAddressBookDTO;
import com.ruoyi.errand.object.dto.app.UpdateAddressBookDTO;
import com.ruoyi.errand.object.vo.app.AddressBookByCommunityIdVO;
@@ -27,6 +29,8 @@
public class AddressBookServiceImpl extends ServiceImpl<AddressBookMapper, AddressBook> implements AddressBookService {
@Resource
private CommunityMapper communityMapper;
+ @Resource
+ private RegionMapper regionMapper;
@Override
public List<AddressBookByCommunityIdVO> addressBookByCommunityId(Integer communityId) {
@@ -42,38 +46,64 @@
@Override
public List<AddressBookListVO> addressBookList() {
AppUser appuser = (AppUser) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
- return this.getBaseMapper().addressBookList(appuser.getId());
+ List<AddressBookListVO> voList = this.getBaseMapper().addressBookList(appuser.getId());
+ voList.forEach(vo->{
+ String regionFullName = getRegionFullName(vo.getRegionId());
+ vo.setRegionName(regionFullName);
+ });
+ return voList;
}
+ /**
+ * 根据区ID查询完整的省市区名称
+ */
+ public String getRegionFullName(Integer districtId) {
+ Region district = regionMapper.selectById(districtId);
+ if (district == null) {
+ return "";
+ }
+
+ Region city = regionMapper.selectById(district.getParentId());
+ if (city == null) {
+ return district.getName();
+ }
+
+ Region province = regionMapper.selectById(city.getParentId());
+ if (province == null) {
+ return city.getName() + district.getName();
+ }
+
+ return province.getName() + city.getName() + district.getName();
+ }
@Override
public void setDefaultAddress(Integer id) {
AppUser appuser = (AppUser) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
//查询这个默认地址
AddressBook addressBook = this.getById(id);
- if (null==addressBook||addressBook.getDel_flag().equals(DelFlagConstant.DELETE)) {
+ if (null==addressBook||addressBook.getDelFlag().equals(DelFlagConstant.DELETE)) {
throw new ServiceException("该地址不存在");
}
//查看原本小区内是否有默认地址
List<AddressBook> addressBooks = this.getBaseMapper().selectList(new LambdaUpdateWrapper<AddressBook>()
.eq(AddressBook::getCommunityId, addressBook.getCommunityId())
- .eq(AddressBook::getApp_user_id, appuser.getId())
- .eq(AddressBook::getDel_flag, DelFlagConstant.UNDELETE)
- .eq(AddressBook::getIs_default, IsDefaultConstant.TRUE)
+ .eq(AddressBook::getAppUserId, appuser.getId())
+ .eq(AddressBook::getDelFlag, DelFlagConstant.UNDELETE)
+ .eq(AddressBook::getIsDefault, IsDefaultConstant.TRUE)
);
//将原本地址修改掉
addressBooks.forEach(x->{
- x.setIs_default(IsDefaultConstant.FALSE);
- x.setUpdate_time(LocalDateTime.now());
+ x.setIsDefault(IsDefaultConstant.FALSE);
+ x.setUpdateTime(LocalDateTime.now());
this.getBaseMapper().updateById(x);}
);
//将新地址设置为默认地址
- addressBook.setIs_default(IsDefaultConstant.TRUE);
- addressBook.setUpdate_time(LocalDateTime.now());
+ addressBook.setIsDefault(IsDefaultConstant.TRUE);
+ addressBook.setUpdateTime(LocalDateTime.now());
this.getBaseMapper().updateById(addressBook);
}
@Override
- public void add(AddAddressBookDTO addAddressBookDTO) {
+ public Integer add(AddAddressBookDTO addAddressBookDTO) {
AppUser appuser = (AppUser) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
//判断小区是否存在
Community community = communityMapper.selectById(addAddressBookDTO.getCommunityId());
@@ -82,10 +112,11 @@
}
AddressBook addressBook = new AddressBook();
BeanUtils.copyProperties(addAddressBookDTO,addressBook);
- addressBook.setIs_default(IsDefaultConstant.FALSE);
- addressBook.setCreate_time(LocalDateTime.now());
- addressBook.setApp_user_id(appuser.getId());
+ addressBook.setIsDefault(IsDefaultConstant.FALSE);
+ addressBook.setCreateTime(LocalDateTime.now());
+ addressBook.setAppUserId(appuser.getId());
this.save(addressBook);
+ return addressBook.getId();
}
@Override
@@ -98,15 +129,15 @@
}
//判断地址是否存在
AddressBook addressBook = this.getById(updateAddressBookDTO.getId());
- if (null==addressBook||addressBook.getDel_flag().equals(DelFlagConstant.DELETE)) {
+ if (null==addressBook||addressBook.getDelFlag().equals(DelFlagConstant.DELETE)) {
throw new ServiceException("地址不存在");
}
//判断用户是否同一个
- if (!appuser.getId().equals(addressBook.getApp_user_id())) {
+ if (!appuser.getId().equals(addressBook.getAppUserId())) {
throw new ServiceException("该地址不属于您");
}
BeanUtils.copyProperties(updateAddressBookDTO,addressBook);
- addressBook.setUpdate_time(LocalDateTime.now());
+ addressBook.setUpdateTime(LocalDateTime.now());
this.updateById(addressBook);
}
@@ -116,15 +147,15 @@
AppUser appuser = (AppUser) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
//查看该地址是否存在
AddressBook addressBook = this.getById(id);
- if (null==addressBook||addressBook.getDel_flag().equals(DelFlagConstant.DELETE)) {
+ if (null==addressBook||addressBook.getDelFlag().equals(DelFlagConstant.DELETE)) {
throw new ServiceException("该地址不存在");
}
//判断用户是否同一个
- if (!appuser.getId().equals(addressBook.getApp_user_id())) {
+ if (!appuser.getId().equals(addressBook.getAppUserId())) {
throw new ServiceException("该地址不属于您");
}
- addressBook.setDel_flag(DelFlagConstant.DELETE);
+ addressBook.setDelFlag(DelFlagConstant.DELETE);
this.updateById(addressBook);
}
}
\ No newline at end of file
--
Gitblit v1.7.1