|
|
@@ -23,6 +23,8 @@ import com.hz.pm.api.projectlib.model.vo.ProjectStoppedDetailVO; |
|
|
|
import com.hz.pm.api.projectlib.service.IProjectInstService; |
|
|
|
import com.hz.pm.api.projectlib.service.IProjectService; |
|
|
|
import com.hz.pm.api.sys.manage.ProcessModelManage; |
|
|
|
import com.hz.pm.api.user.helper.MhUnitQueryAuthHelper; |
|
|
|
import com.hz.pm.api.user.helper.MhUnitQueryAuthHelper.UnitQueryState; |
|
|
|
import com.hz.pm.api.user.security.model.UserInfoDetails; |
|
|
|
import com.hz.pm.api.user.util.LoginUserUtil; |
|
|
|
import com.ningdatech.basic.model.PageVo; |
|
|
@@ -63,6 +65,7 @@ public class ProjectStoppedManage { |
|
|
|
private final ProcessModelManage processModelManage; |
|
|
|
private final DeclaredProjectHelper declaredProjectHelper; |
|
|
|
private final ProjectChangeStopHelper projectChangeStopHelper; |
|
|
|
private final MhUnitQueryAuthHelper mhUnitQueryAuthHelper; |
|
|
|
|
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public synchronized void submitProjectStoppedApply(SubmitProjectStoppedApplyReq req) { |
|
|
@@ -95,10 +98,19 @@ public class ProjectStoppedManage { |
|
|
|
} |
|
|
|
|
|
|
|
public PageVo<ProjectLibListItemVO> page(ProjectListReq req) { |
|
|
|
Long buildOrgCode = req.clearBuildOrgCode(); |
|
|
|
UnitQueryState unitQueryState = mhUnitQueryAuthHelper.listCanViewUnitIds(buildOrgCode); |
|
|
|
if (!unitQueryState.isState()) { |
|
|
|
return PageVo.empty(); |
|
|
|
} |
|
|
|
LambdaQueryWrapper<Project> query = ProjectManageUtil.projectQuery(req); |
|
|
|
query.eq(Project::getNewest, Boolean.TRUE) |
|
|
|
.orderByDesc(Project::getUpdateOn) |
|
|
|
.isNotNull(Project::getStoppedStatus); |
|
|
|
BizUtils.notEmpty(unitQueryState.getUnitIds(), w -> { |
|
|
|
List<String> buildOrgCodeStrList = CollUtils.convert(w, String::valueOf); |
|
|
|
query.in(Project::getBuildOrgCode, buildOrgCodeStrList); |
|
|
|
}); |
|
|
|
Page<Project> page = req.page(); |
|
|
|
projectService.page(page, query); |
|
|
|
List<Project> records = page.getRecords(); |
|
|
@@ -133,13 +145,21 @@ public class ProjectStoppedManage { |
|
|
|
} |
|
|
|
|
|
|
|
public List<ProjectLibListItemVO> options() { |
|
|
|
UnitQueryState unitQueryState = mhUnitQueryAuthHelper.listCanViewUnitIds(null); |
|
|
|
if (!unitQueryState.isState()) { |
|
|
|
return Collections.emptyList(); |
|
|
|
} |
|
|
|
LambdaQueryWrapper<Project> query = Wrappers.lambdaQuery(Project.class) |
|
|
|
.select(Project::getId, Project::getProjectCode, Project::getProjectName) |
|
|
|
.eq(Project::getNewest, Boolean.TRUE) |
|
|
|
.orderByDesc(Project::getCreateOn) |
|
|
|
.notIn(Project::getStatus, ProjectStatus.STOPPED_PASSED.getCode(), |
|
|
|
ProjectStatus.ON_STOPPED_APPLY.getCode()); |
|
|
|
UserInfoDetails userDetail = LoginUserUtil.userDetail(); |
|
|
|
BizUtils.notEmpty(unitQueryState.getUnitIds(), w -> { |
|
|
|
List<String> buildOrgCodeStrList = CollUtils.convert(w, String::valueOf); |
|
|
|
query.in(Project::getBuildOrgCode, buildOrgCodeStrList); |
|
|
|
}); |
|
|
|
UserInfoDetails userDetail = LoginUserUtil.userDetailNotNull(); |
|
|
|
if (!userDetail.hasSuperAdmin()) { |
|
|
|
query.eq(Project::getBuildOrgCode, userDetail.getMhUnitIdStr()); |
|
|
|
} |
|
|
|