管理地址时,更新默认地址
This commit is contained in:
@@ -8,6 +8,7 @@ import com.peanut.modules.book.service.UserAddressService;
|
|||||||
import com.peanut.modules.book.vo.UserAddressVo;
|
import com.peanut.modules.book.vo.UserAddressVo;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
@@ -43,9 +44,8 @@ public class UserAddressController {
|
|||||||
*/
|
*/
|
||||||
@RequestMapping("/save")
|
@RequestMapping("/save")
|
||||||
public R save(@RequestBody UserAddress userAddress) {
|
public R save(@RequestBody UserAddress userAddress) {
|
||||||
// 判断是否已经有默认的地址了
|
if (userAddress.getIsDefault()==1){
|
||||||
if ((userAddressService.getUserDefaultAddressCount(userAddress.getUserId()) >= 1) && userAddress.getIsDefault() == 1) {
|
userAddressService.clearUserDefaultAddress(userAddress.getUserId());
|
||||||
return R.error("已经存在默认地址");
|
|
||||||
}
|
}
|
||||||
if(userAddress.getRegionCode()==null||userAddress.getRegionCode().equals("")){
|
if(userAddress.getRegionCode()==null||userAddress.getRegionCode().equals("")){
|
||||||
return R.error("地址异常添加失败!");
|
return R.error("地址异常添加失败!");
|
||||||
@@ -59,9 +59,10 @@ public class UserAddressController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@RequestMapping("/update")
|
@RequestMapping("/update")
|
||||||
|
@Transactional
|
||||||
public R update(@RequestBody UserAddress userAddress) {
|
public R update(@RequestBody UserAddress userAddress) {
|
||||||
if ((userAddressService.getUserDefaultAddressCount(userAddress.getUserId()) >= 1) && userAddress.getIsDefault() == 1) {
|
if (userAddress.getIsDefault()==1){
|
||||||
return R.error("已经存在默认地址");
|
userAddressService.clearUserDefaultAddress(userAddress.getUserId());
|
||||||
}
|
}
|
||||||
String str = userAddress.getConsigneeName()+userAddress.getConsigneePhone()+userAddress.getDetailAddress();
|
String str = userAddress.getConsigneeName()+userAddress.getConsigneePhone()+userAddress.getDetailAddress();
|
||||||
if(str.contains("+")||str.contains("&")){
|
if(str.contains("+")||str.contains("&")){
|
||||||
|
|||||||
@@ -19,5 +19,7 @@ public interface UserAddressService extends IService<UserAddress> {
|
|||||||
UserAddressVo getAddressName(UserAddressVo vo, String regionCode);
|
UserAddressVo getAddressName(UserAddressVo vo, String regionCode);
|
||||||
|
|
||||||
int getUserDefaultAddressCount(Integer userId);
|
int getUserDefaultAddressCount(Integer userId);
|
||||||
|
|
||||||
|
void clearUserDefaultAddress(Integer userId);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -88,4 +88,15 @@ public class UserAddressServiceImpl extends ServiceImpl<UserAddressDao, UserAddr
|
|||||||
queryWrapper.eq("is_default", 1);
|
queryWrapper.eq("is_default", 1);
|
||||||
return this.count(queryWrapper);
|
return this.count(queryWrapper);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void clearUserDefaultAddress(Integer userId) {
|
||||||
|
QueryWrapper<UserAddress> queryWrapper = new QueryWrapper<>();
|
||||||
|
queryWrapper.eq("user_id", userId);
|
||||||
|
queryWrapper.eq("is_default", 1);
|
||||||
|
UserAddress userAddress = this.getOne(queryWrapper);
|
||||||
|
if (userAddress != null) {
|
||||||
|
userAddress.setIsDefault(0);
|
||||||
|
this.updateById(userAddress);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user