hongchuangyanfa преди 2 години
родител
ревизия
f653130749
променени са 1 файла, в които са добавени 13 реда и са изтрити 5 реда
  1. 13 5
      blade-service/blade-manager/src/main/java/org/springblade/manager/feign/SaveUserInfoByProjectClientImpl.java

+ 13 - 5
blade-service/blade-manager/src/main/java/org/springblade/manager/feign/SaveUserInfoByProjectClientImpl.java

@@ -55,11 +55,19 @@ public class SaveUserInfoByProjectClientImpl implements SaveUserInfoByProjectCli
         obj.setRoleId(String.valueOf(roleId));
         obj.setStatus(1);
 
-        saveUserInfoByProjectService.getBaseMapper().delete(Wrappers.<SaveUserInfoByProjectDTO>query().lambda()
-                        .eq(SaveUserInfoByProjectDTO::getUserId, userId)
-                        .eq(SaveUserInfoByProjectDTO::getRoleId, roleId)
-                        .eq(SaveUserInfoByProjectDTO::getContractId, contractId));
-        saveUserInfoByProjectService.save(obj);
+        List<SaveUserInfoByProjectDTO> saveUserInfozList = saveUserInfoByProjectService.getBaseMapper().selectList(Wrappers.<SaveUserInfoByProjectDTO>query().lambda()
+                .eq(SaveUserInfoByProjectDTO::getUserId, userId)
+                .isNull(SaveUserInfoByProjectDTO::getPostId)
+                .eq(SaveUserInfoByProjectDTO::getContractId, contractId));
+
+        if(saveUserInfozList ==null && saveUserInfozList.size()==0){
+            saveUserInfoByProjectService.getBaseMapper().delete(Wrappers.<SaveUserInfoByProjectDTO>query().lambda()
+                    .eq(SaveUserInfoByProjectDTO::getUserId, userId)
+                    .isNull(SaveUserInfoByProjectDTO::getPostId)
+                    .eq(SaveUserInfoByProjectDTO::getContractId, contractId));
+            saveUserInfoByProjectService.save(obj);
+        }
+
     }