lyhzzz 9 月之前
父节点
当前提交
396ea690d4

+ 4 - 0
src/main/java/com/fdkankan/manage/mapper/IJyUserMapper.java

@@ -2,8 +2,11 @@ package com.fdkankan.manage.mapper;
 
 import com.fdkankan.manage.entity.JyUser;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.fdkankan.manage.vo.request.UserParam;
 import org.apache.ibatis.annotations.Mapper;
 
+import java.util.List;
+
 /**
  * <p>
  *  Mapper 接口
@@ -15,4 +18,5 @@ import org.apache.ibatis.annotations.Mapper;
 @Mapper
 public interface IJyUserMapper extends BaseMapper<JyUser> {
 
+    List<JyUser> getByAddParam(UserParam param);
 }

+ 3 - 0
src/main/java/com/fdkankan/manage/service/IJyUserService.java

@@ -2,6 +2,7 @@ package com.fdkankan.manage.service;
 
 import com.fdkankan.manage.entity.JyUser;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.fdkankan.manage.vo.request.UserParam;
 
 import java.util.HashMap;
 import java.util.List;
@@ -45,4 +46,6 @@ public interface IJyUserService extends IService<JyUser> {
     void del(Integer id);
 
     JyUser getByNickName(String name);
+
+    List<JyUser> getByAddParam(UserParam param);
 }

+ 6 - 0
src/main/java/com/fdkankan/manage/service/impl/JyUserServiceImpl.java

@@ -8,6 +8,7 @@ import com.fdkankan.manage.exception.BusinessException;
 import com.fdkankan.manage.mapper.IJyUserMapper;
 import com.fdkankan.manage.service.IJyUserService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.fdkankan.manage.vo.request.UserParam;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
 
@@ -157,4 +158,9 @@ public class JyUserServiceImpl extends ServiceImpl<IJyUserMapper, JyUser> implem
         }
         return list.get(0);
     }
+
+    @Override
+    public List<JyUser> getByAddParam(UserParam param) {
+        return this.getBaseMapper().getByAddParam(param);
+    }
 }

+ 12 - 14
src/main/java/com/fdkankan/manage/service/impl/UserServiceImpl.java

@@ -188,25 +188,23 @@ public class UserServiceImpl extends ServiceImpl<IUserMapper, User> implements I
 
         JyUser jyUser = jyUserService.getByRyId(param.getRyId());
 
-        JyUser jyUser2 = jyUserService.getByRyNo(param.getRyNo());
-
-        if(StringUtils.isNotBlank(param.getIdCard())){
-            JyUser byIdCard = jyUserService.getByIdCard(param.getIdCard());
-            if(jyUser == null && byIdCard!= null){
-                throw new BusinessException(ResultCode.ID_CARD_EXIT);
+        List<JyUser> jyUserList = jyUserService.getByAddParam(param);
+        if(!jyUserList.isEmpty()){
+            List<String> ryNos = jyUserList.stream().map(JyUser::getRyNo).collect(Collectors.toList());
+            List<String> phones = jyUserList.stream().map(JyUser::getPhone).collect(Collectors.toList());
+            List<String> idCards = jyUserList.stream().map(JyUser::getIdCard).collect(Collectors.toList());
+
+            if(StringUtils.isNotBlank(param.getRyNo()) && ryNos.contains(param.getRyNo())){
+                throw new BusinessException(ResultCode.RYNO_EXITS);
+            }
+            if(StringUtils.isNotBlank(param.getPhone()) && phones.contains(param.getPhone())){
+                throw new BusinessException(ResultCode.PHONE_EXIT);
             }
-            if(jyUser != null  && byIdCard != null && !jyUser.getId().equals(byIdCard.getId())){
+            if(StringUtils.isNotBlank(param.getIdCard()) && idCards.contains(param.getIdCard())){
                 throw new BusinessException(ResultCode.ID_CARD_EXIT);
             }
         }
 
-        if(jyUser == null && jyUser2!=null){
-            throw new BusinessException(ResultCode.RYNO_EXITS);
-        }
-        if(jyUser != null && jyUser2 != null && !jyUser2.getId().equals(jyUser.getId())){
-            throw new BusinessException(ResultCode.RYNO_EXITS);
-        }
-
         boolean init = false;
         if(jyUser == null){
             jyUser = new JyUser();

+ 16 - 0
src/main/resources/mapper/manage/JyUserMapper.xml

@@ -2,4 +2,20 @@
 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.fdkankan.manage.mapper.IJyUserMapper">
 
+    <select id="getByAddParam" resultType="com.fdkankan.manage.entity.JyUser">
+        select  * from jy_user where  rec_status = 'A'
+        <if test="param.ryId!=null and param.ryId!=''">
+            and ry_id != #{param.ryId}
+        </if>
+        <if test="param.ryNo!=null and param.ryNo!=''">
+            and ( ry_no = #{param.ryNo}
+        </if>
+        <if test="param.idCard!=null and param.idCard!=''">
+            or id_card = #{param.idCard}
+        </if>
+        <if test="param.phone!=null and param.phone!=''">
+            or phone = #{param.phone}
+        </if>
+        )
+    </select>
 </mapper>