|
|
@@ -16,6 +16,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
|
|
|
import com.hz.pm.api.common.exception.ReturnException; |
|
|
|
import com.hz.pm.api.common.helper.RegionCacheHelper; |
|
|
|
import com.hz.pm.api.common.model.constant.BizConst; |
|
|
|
import com.hz.pm.api.common.model.constant.ExistsSqlConst; |
|
|
|
import com.hz.pm.api.common.model.constant.MhUnitConst; |
|
|
|
import com.hz.pm.api.common.statemachine.util.ProjectStateMachineUtil; |
|
|
|
import com.hz.pm.api.common.util.BizUtils; |
|
|
@@ -46,9 +47,11 @@ import com.hz.pm.api.meta.helper.TagCache; |
|
|
|
import com.hz.pm.api.open.model.vo.ExpertInfoVO; |
|
|
|
import com.hz.pm.api.open.model.vo.MeetingExpertToMhDTO; |
|
|
|
import com.hz.pm.api.organization.service.IDingOrganizationService; |
|
|
|
import com.hz.pm.api.projectdeclared.utils.ProjectIdCodeCacheUtil; |
|
|
|
import com.hz.pm.api.projectlib.helper.ProjectManageUtil; |
|
|
|
import com.hz.pm.api.projectlib.model.entity.Project; |
|
|
|
import com.hz.pm.api.projectlib.model.enumeration.status.ProjectStatus; |
|
|
|
import com.hz.pm.api.projectlib.service.IProjectInstService; |
|
|
|
import com.hz.pm.api.projectlib.service.IProjectService; |
|
|
|
import com.hz.pm.api.scheduler.listener.event.MhTodoSendEvent; |
|
|
|
import com.hz.pm.api.sys.model.dto.RegionDTO; |
|
|
@@ -119,6 +122,7 @@ public class MeetingManage { |
|
|
|
private final MhUnitCache mhUnitCache; |
|
|
|
private final ProjectStateMachineUtil projectStateMachineUtil; |
|
|
|
private final IMsgCallRecordService msgCallRecordService; |
|
|
|
private final IProjectInstService projectInstService; |
|
|
|
|
|
|
|
private static final String INVITED_RULE_CREATE = "INVITED_RULE_CREATE:"; |
|
|
|
|
|
|
@@ -1074,11 +1078,14 @@ public class MeetingManage { |
|
|
|
} |
|
|
|
|
|
|
|
public ProjectReviewResultDTO projectReviewDetail(Long projectId, MeetingReviewTypeEnum type) { |
|
|
|
Wrapper<MeetingInnerProject> query = Wrappers.lambdaQuery(MeetingInnerProject.class) |
|
|
|
LambdaQueryWrapper<MeetingInnerProject> query = Wrappers.lambdaQuery(MeetingInnerProject.class) |
|
|
|
.orderByDesc(MeetingInnerProject::getUpdateOn) |
|
|
|
.exists("select 1 from meeting m where m.id = meeting_inner_project.meeting_id " + |
|
|
|
"and project_id = {0} and type = {1}", projectId, type) |
|
|
|
.eq(MeetingInnerProject::getProjectCode, ProjectIdCodeCacheUtil.get(projectId)) |
|
|
|
.last(BizConst.LIMIT_1); |
|
|
|
if (type != null) { |
|
|
|
query.exists(ExistsSqlConst.MEETING_INNER_PROJECT_EXISTS_MEETING + |
|
|
|
"and type = {0}", type.getCode()); |
|
|
|
} |
|
|
|
MeetingInnerProject projectReview = meetingInnerProjectService.getOne(query); |
|
|
|
if (projectReview == null) { |
|
|
|
return null; |
|
|
|