diff --git a/common/src/main/java/com/ccsens/common/bean/dto/CProjectDto.java b/common/src/main/java/com/ccsens/common/bean/dto/CProjectDto.java index 5063c1ab..af80dceb 100644 --- a/common/src/main/java/com/ccsens/common/bean/dto/CProjectDto.java +++ b/common/src/main/java/com/ccsens/common/bean/dto/CProjectDto.java @@ -16,6 +16,7 @@ public class CProjectDto { @NotNull(message = "请选择项目") @ApiModelProperty("项目id") private Long projectId; + private Long userId; } @Data diff --git a/common/src/main/java/com/ccsens/common/service/ProjectService.java b/common/src/main/java/com/ccsens/common/service/ProjectService.java index 92fa356d..049f0e9e 100644 --- a/common/src/main/java/com/ccsens/common/service/ProjectService.java +++ b/common/src/main/java/com/ccsens/common/service/ProjectService.java @@ -474,6 +474,12 @@ public class ProjectService implements IProjectService{ if (ObjectUtil.isNull(project)) { throw new BaseException(CommonCodeError.PROJECT_NOT_FOUND); } + //判断权限 + Integer pm = roleDao.isPmByUserId(param.getUserId(), project.getId()); + //只有负责人或者是项目经理才能操作任务的状态 + if (pm == null || pm < 1) { + throw new BaseException(CommonCodeError.NOT_PERMISSION); + } //删除项目详情 删除项目相关 Long projectId = project.getId(); project.setRecStatus((byte)2); diff --git a/signin/src/main/java/com/ccsens/signin/bean/dto/ProjectDto.java b/signin/src/main/java/com/ccsens/signin/bean/dto/ProjectDto.java index c7da2b02..87fb7617 100644 --- a/signin/src/main/java/com/ccsens/signin/bean/dto/ProjectDto.java +++ b/signin/src/main/java/com/ccsens/signin/bean/dto/ProjectDto.java @@ -105,6 +105,7 @@ public class ProjectDto { @NotNull(message = "请输入项目id") @ApiModelProperty("项目id") private Long projectId; + private Long userId; } } diff --git a/signin/src/main/java/com/ccsens/signin/service/ProjectService.java b/signin/src/main/java/com/ccsens/signin/service/ProjectService.java index f15e12c1..c84a7a75 100644 --- a/signin/src/main/java/com/ccsens/signin/service/ProjectService.java +++ b/signin/src/main/java/com/ccsens/signin/service/ProjectService.java @@ -302,9 +302,22 @@ public class ProjectService implements IProjectService{ //TODO 删除成员项目关联表 projectDao.delUserProjectByProjectId(param.getProjectId()); //调用业务系统删除项目 + param.setUserId(userId); String url = projectList.getUrl() + "/project/tallDelProject"; - log.info("调用业务系统的接口合并用户:{}--{}",url,param); - RestTemplateUtil.postBody(url, param); + try { + log.info("调用业务系统的接口合并用户:{}--{}",url,param); + String postBody = RestTemplateUtil.postBody(url, param); + System.out.println(postBody); + JSONObject jsonObject = JSONObject.parseObject(postBody); + + Integer code = jsonObject.getInteger("code"); + if(code == null || code != 200){ + throw new BaseException(jsonObject.getString("date")); + } + }catch (Exception e){ + log.error("接口调用异常",e); + throw new BaseException(CodeEnum.DELETE_PROJECT_ERROR); + } } } diff --git a/util/src/main/java/com/ccsens/util/CodeEnum.java b/util/src/main/java/com/ccsens/util/CodeEnum.java index 0aa89f23..09ed0e70 100644 --- a/util/src/main/java/com/ccsens/util/CodeEnum.java +++ b/util/src/main/java/com/ccsens/util/CodeEnum.java @@ -223,6 +223,7 @@ public enum CodeEnum { NO_POWER(182,"权限不足",true), DATA_DECRYPTION(183,"解密失败,数据可能遭受到破坏,操作取消。",true), NOT_TEMPLATE(183,"找不到对应的模板信息",true), + DELETE_PROJECT_ERROR(184,"删除项目失败",true), ;