mirror of
https://gitee.com/dolphinscheduler/DolphinScheduler.git
synced 2024-12-04 13:17:50 +08:00
Merge pull request #1607 from samz406/1227-token
project checkResult may NPE
This commit is contained in:
commit
49181fd08e
@ -41,7 +41,7 @@ import static org.apache.dolphinscheduler.api.utils.CheckUtils.checkDesc;
|
||||
/**
|
||||
* project service
|
||||
*HttpTask./
|
||||
**/
|
||||
**/
|
||||
@Service
|
||||
public class ProjectService extends BaseService{
|
||||
|
||||
@ -121,7 +121,7 @@ public class ProjectService extends BaseService{
|
||||
* @param loginUser login user
|
||||
* @param project project
|
||||
* @param projectName project name
|
||||
* @return true if the login user havve permission to see the project
|
||||
* @return true if the login user have permission to see the project
|
||||
*/
|
||||
public Map<String, Object> checkProjectAndAuth(User loginUser, Project project, String projectName) {
|
||||
|
||||
@ -143,7 +143,7 @@ public class ProjectService extends BaseService{
|
||||
public boolean hasProjectAndPerm(User loginUser, Project project, Map<String, Object> result) {
|
||||
boolean checkResult = false;
|
||||
if (project == null) {
|
||||
putMsg(result, Status.PROJECT_NOT_FOUNT, project.getName());
|
||||
putMsg(result, Status.PROJECT_NOT_FOUNT, "");
|
||||
} else if (!checkReadPermission(loginUser, project)) {
|
||||
putMsg(result, Status.USER_NO_OPERATION_PROJECT_PERM, loginUser.getUserName(), project.getName());
|
||||
} else {
|
||||
@ -199,13 +199,14 @@ public class ProjectService extends BaseService{
|
||||
if (checkResult != null) {
|
||||
return checkResult;
|
||||
}
|
||||
List<ProcessDefinition> processDefinitionList = processDefinitionMapper.queryAllDefinitionList(projectId);
|
||||
|
||||
if (!hasPerm(loginUser, project.getUserId())) {
|
||||
putMsg(result, Status.USER_NO_OPERATION_PERM);
|
||||
return result;
|
||||
}
|
||||
|
||||
List<ProcessDefinition> processDefinitionList = processDefinitionMapper.queryAllDefinitionList(projectId);
|
||||
|
||||
if(processDefinitionList.size() > 0){
|
||||
putMsg(result, Status.DELETE_PROJECT_ERROR_DEFINES_NOT_NULL);
|
||||
return result;
|
||||
@ -227,7 +228,8 @@ public class ProjectService extends BaseService{
|
||||
* @return check result
|
||||
*/
|
||||
private Map<String, Object> getCheckResult(User loginUser, Project project) {
|
||||
Map<String, Object> checkResult = checkProjectAndAuth(loginUser, project, project.getName());
|
||||
String projectName = project == null ? null:project.getName();
|
||||
Map<String, Object> checkResult = checkProjectAndAuth(loginUser, project, projectName);
|
||||
Status status = (Status) checkResult.get(Constants.STATUS);
|
||||
if (status != Status.SUCCESS) {
|
||||
return checkResult;
|
||||
@ -247,6 +249,11 @@ public class ProjectService extends BaseService{
|
||||
public Map<String, Object> update(User loginUser, Integer projectId, String projectName, String desc) {
|
||||
Map<String, Object> result = new HashMap<>(5);
|
||||
|
||||
Map<String, Object> descCheck = checkDesc(desc);
|
||||
if (descCheck.get(Constants.STATUS) != Status.SUCCESS) {
|
||||
return descCheck;
|
||||
}
|
||||
|
||||
Project project = projectMapper.selectById(projectId);
|
||||
boolean hasProjectAndPerm = hasProjectAndPerm(loginUser, project, result);
|
||||
if (!hasProjectAndPerm) {
|
||||
|
Loading…
Reference in New Issue
Block a user