diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/repository/UserRepository.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/repository/UserRepository.java index 1eed83d9..5ff7e137 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/repository/UserRepository.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/repository/UserRepository.java @@ -281,11 +281,11 @@ public interface UserRepository extends JpaRepository, JpaSpecificat /** * 根据手机号查询 * - * @param jobNumber 手机号 + * @param jobNumber 工号 * @return / */ - @Query(value = "select id from User where jobNumber = ?1") - Long findByJobNumber(String jobNumber); + @Query(value = "select id from User where jobNumber like %?1%") + List findByJobNumberLike(String jobNumber); /** * 用户id查找管理员id diff --git a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/UserServiceImpl.java b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/UserServiceImpl.java index 97b62008..2ae69516 100644 --- a/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/UserServiceImpl.java +++ b/ad-platform-manage/ad-platform-management/src/main/java/com/baiye/modules/system/service/impl/UserServiceImpl.java @@ -24,7 +24,6 @@ import cn.hutool.core.text.StrPool; import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.NumberUtil; import cn.hutool.core.util.ObjectUtil; -import com.baiye.component.LoginUser; import com.baiye.config.BusinessConfig; import com.baiye.config.properties.FileProperties; import com.baiye.constant.DefaultNumberConstants; @@ -54,11 +53,11 @@ import com.baiye.modules.system.service.UserService; import com.baiye.modules.telemarkting.service.ExtensionNumberService; import com.baiye.util.*; import com.google.common.collect.ImmutableMap; +import com.google.common.collect.Lists; import com.google.common.collect.Sets; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; -import org.springframework.cache.Cache; import org.springframework.cache.CacheManager; import org.springframework.cache.annotation.CacheConfig; import org.springframework.cache.annotation.CacheEvict; @@ -533,11 +532,20 @@ public class UserServiceImpl implements UserService { public void updateCenter(User resources) { User user = userRepository.findById(resources.getId()).orElseGet(User::new); User user1 = userRepository.findByPhone(resources.getPhone()); + + List userJobNumbers = Lists.newArrayList(); if (user1 != null && !user.getId().equals(user1.getId())) { throw new EntityExistException(User.class, "phone", resources.getPhone()); } + // 删除新旧缓存 if (StringUtils.isNotBlank(resources.getJobNumber())) { - redisUtils.del(CacheKey.USER_JOB_NUMBER_CACHE + user.getJobNumber()); + userJobNumbers.addAll(Lists.newArrayList(resources.getJobNumber().split(StrPool.COMMA))); + } + if (StringUtils.isNotBlank(user.getJobNumber())) { + userJobNumbers.addAll(Lists.newArrayList(user.getJobNumber().split(StrPool.COMMA))); + } + for (String jobNumber : userJobNumbers) { + redisUtils.del(CacheKey.USER_JOB_NUMBER_CACHE + jobNumber); } user.setJobNumber(resources.getJobNumber()); user.setNickName(resources.getNickName()); @@ -854,7 +862,11 @@ public class UserServiceImpl implements UserService { @Override @Cacheable(value = "UserJobNumberCache", key = "#jobNumber") public Long findByJobNumber(String jobNumber) { - return userRepository.findByJobNumber(jobNumber); + List byJobNumberLike = userRepository.findByJobNumberLike(jobNumber); + if (CollUtil.isNotEmpty(byJobNumberLike)) { + return byJobNumberLike.get(DefaultNumberConstants.ZERO_NUMBER); + } + return (long) DefaultNumberConstants.ZERO_NUMBER; } } diff --git a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/AbMessageServiceImpl.java b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/AbMessageServiceImpl.java index d8a0bd77..c9ad4e74 100644 --- a/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/AbMessageServiceImpl.java +++ b/ad-platform-services/ad-platform-source/src/main/java/com/baiye/module/service/impl/AbMessageServiceImpl.java @@ -50,7 +50,7 @@ public class AbMessageServiceImpl implements AbMessageService { return Boolean.FALSE; } Long userId = userClient.findByJobNumber(jobNumber, SecurityConstants.FROM_IN); - if (ObjectUtil.isNull(userId)) { + if (ObjectUtil.isNull(userId) || userId == DefaultNumberConstants.ZERO_NUMBER) { return Boolean.FALSE; }