@@ -9,7 +9,10 @@ import com.ningdatech.basic.model.PageVo; | |||||
import com.ningdatech.basic.util.NdDateUtils; | import com.ningdatech.basic.util.NdDateUtils; | ||||
import com.ningdatech.pmapi.common.constant.BizConst; | import com.ningdatech.pmapi.common.constant.BizConst; | ||||
import com.ningdatech.pmapi.common.constant.CommonConst; | import com.ningdatech.pmapi.common.constant.CommonConst; | ||||
import com.ningdatech.pmapi.common.constant.RegionConst; | |||||
import com.ningdatech.pmapi.common.enumeration.CommonEnum; | |||||
import com.ningdatech.pmapi.common.enumeration.ProjectProcessStageEnum; | import com.ningdatech.pmapi.common.enumeration.ProjectProcessStageEnum; | ||||
import com.ningdatech.pmapi.common.helper.RegionCacheHelper; | |||||
import com.ningdatech.pmapi.common.helper.UserInfoHelper; | import com.ningdatech.pmapi.common.helper.UserInfoHelper; | ||||
import com.ningdatech.pmapi.common.statemachine.util.StateMachineUtils; | import com.ningdatech.pmapi.common.statemachine.util.StateMachineUtils; | ||||
import com.ningdatech.pmapi.common.util.ExcelDownUtil; | import com.ningdatech.pmapi.common.util.ExcelDownUtil; | ||||
@@ -68,23 +71,16 @@ import java.util.stream.Collectors; | |||||
public class ConstructionPlanManage { | public class ConstructionPlanManage { | ||||
private final IProjectService projectService; | private final IProjectService projectService; | ||||
private final ProcessInstanceService processService; | private final ProcessInstanceService processService; | ||||
private final ProcessModelService processModelService; | private final ProcessModelService processModelService; | ||||
private final StateMachineUtils stateMachineUtils; | private final StateMachineUtils stateMachineUtils; | ||||
private final IProjectInstService projectInstService; | private final IProjectInstService projectInstService; | ||||
private final ProjectLibManage projectLibManage; | private final ProjectLibManage projectLibManage; | ||||
private final UserInfoHelper userInfoHelper; | private final UserInfoHelper userInfoHelper; | ||||
private final DefaultDeclaredProjectManage declaredProjectManage; | private final DefaultDeclaredProjectManage declaredProjectManage; | ||||
private final DefaultDeclaredProjectManage defaultDeclaredProjectManage; | private final DefaultDeclaredProjectManage defaultDeclaredProjectManage; | ||||
private final NoticeManage noticeManage; | private final NoticeManage noticeManage; | ||||
private final RegionCacheHelper regionCacheHelper; | |||||
/** | /** | ||||
* 建设方案 | * 建设方案 | ||||
@@ -99,16 +95,37 @@ public class ConstructionPlanManage { | |||||
VUtils.isTrue(Objects.isNull(user) || Objects.isNull(employeeCode)) | VUtils.isTrue(Objects.isNull(user) || Objects.isNull(employeeCode)) | ||||
.throwMessage("获取登录用户失败!"); | .throwMessage("获取登录用户失败!"); | ||||
ProjectDTO projectDto = dto.getProjectInfo(); | |||||
VUtils.isTrue(Objects.isNull(projectDto.getId())).throwMessage("提交失败 缺少项目ID!"); | |||||
Project projectInfo = projectService.getNewProject(projectDto.getId()); | |||||
VUtils.isTrue(Objects.isNull(projectInfo)).throwMessage("提交失败 此项目不存在!"); | |||||
VUtils.isTrue(StringUtils.isBlank(projectDto.getConstructionPlanFile())).throwMessage("提交失败 请提交建设方案!"); | |||||
ProjectDTO projectInfo = dto.getProjectInfo(); | |||||
if(StringUtils.isNotBlank(user.getRegionCode())){ | |||||
projectInfo.setAreaCode(user.getRegionCode()); | |||||
projectInfo.setArea(regionCacheHelper.getRegionName(user.getRegionCode(), RegionConst.RL_COUNTY)); | |||||
} | |||||
projectInfo.setBuildOrgCode(user.getEmpPosUnitCode()); | |||||
projectInfo.setBuildOrgName(user.getEmpPosUnitName()); | |||||
// 项目名称去重 | |||||
defaultDeclaredProjectManage.checkDuplication(projectInfo); | |||||
//判断申报金额 是否等于总的 判断年度支付金额 是否等于总金额 | |||||
defaultDeclaredProjectManage.checkAmount(projectInfo); | |||||
String regionCode = projectInfo.getAreaCode(); | |||||
//如果主管单位没有 那么主管单位就是自己 | |||||
if(CommonEnum.NO.getCode().equals(projectInfo.getIsSuperOrg())){ | |||||
projectInfo.setSuperOrgCode(user.getEmpPosUnitCode()); | |||||
projectInfo.setSuperOrg(user.getEmpPosUnitName()); | |||||
} | |||||
//如果是重新提交的话 判断下 项目是否存在 | |||||
if(Objects.nonNull(projectInfo.getId())){ | |||||
//新申报的项目不允许带项目id | |||||
projectInfo.setId(null); | |||||
} | |||||
//放入文件 | |||||
projectInfo.setConstructionPlanFile(projectDto.getConstructionPlanFile()); | |||||
Project constructProject = new Project(); | |||||
BeanUtils.copyProperties(projectInfo,constructProject); | |||||
String regionCode = user.getRegionCode(); | |||||
WflowModels model = processModelService.getOne(Wrappers.lambdaQuery(WflowModels.class) | WflowModels model = processModelService.getOne(Wrappers.lambdaQuery(WflowModels.class) | ||||
.eq(WflowModels::getRegionCode, regionCode) | .eq(WflowModels::getRegionCode, regionCode) | ||||
@@ -123,16 +140,16 @@ public class ConstructionPlanManage { | |||||
//如果被禁用了的话 直接跳过 进入到下一个状态 | //如果被禁用了的话 直接跳过 进入到下一个状态 | ||||
if(model.getIsStop()){ | if(model.getIsStop()){ | ||||
//被禁用了 调2次状态机 | //被禁用了 调2次状态机 | ||||
stateMachineUtils.pass(projectInfo); | |||||
stateMachineUtils.pass(projectInfo); | |||||
projectInfo.setUpdateOn(LocalDateTime.now()); | |||||
projectService.updateById(projectInfo); | |||||
stateMachineUtils.pass(constructProject); | |||||
stateMachineUtils.pass(constructProject); | |||||
constructProject.setUpdateOn(LocalDateTime.now()); | |||||
projectService.updateById(constructProject); | |||||
return "因为建设方案流程被禁用了 直接跳过!"; | return "因为建设方案流程被禁用了 直接跳过!"; | ||||
} | } | ||||
//首先要判断 项目当前状态 是不是 方案待申报 | |||||
VUtils.isTrue(!ProjectStatusEnum.PLAN_TO_BE_DECLARED.getCode().equals(projectInfo.getStatus()) || | |||||
!ProjectStatusEnum.NOT_APPROVED.getCode().equals(projectInfo.getStage())) | |||||
// 判断 项目当前状态 是不是 方案待申报 | |||||
VUtils.isTrue(!ProjectStatusEnum.PLAN_TO_BE_DECLARED.getCode().equals(constructProject.getStatus()) || | |||||
!ProjectStatusEnum.NOT_APPROVED.getCode().equals(constructProject.getStage())) | |||||
.throwMessage("提交失败 该项目不是 方案待申报状态或者未立项阶段"); | .throwMessage("提交失败 该项目不是 方案待申报状态或者未立项阶段"); | ||||
ProcessStartParamsVo params = new ProcessStartParamsVo(); | ProcessStartParamsVo params = new ProcessStartParamsVo(); | ||||
@@ -142,20 +159,15 @@ public class ConstructionPlanManage { | |||||
//把条件值给放入工作流 | //把条件值给放入工作流 | ||||
defaultDeclaredProjectManage.buildCondition(params, dto); | defaultDeclaredProjectManage.buildCondition(params, dto); | ||||
// 获取发起单位、发起单位主管单位、发起单位上级条线主管单位信息 | // 获取发起单位、发起单位主管单位、发起单位上级条线主管单位信息 | ||||
Map<String, OrgInfoDTO> orgModelMap = defaultDeclaredProjectManage.buildOrgModelMap(employeeCode, projectInfo); | |||||
Map<String, OrgInfoDTO> orgModelMap = defaultDeclaredProjectManage.buildOrgModelMap(employeeCode, constructProject); | |||||
String instanceId = processService.newStartProcess(model.getProcessDefId(), model.getFormId(), params, orgModelMap); | String instanceId = processService.newStartProcess(model.getProcessDefId(), model.getFormId(), params, orgModelMap); | ||||
log.info("建设方案项目申报成功 【{}】", instanceId); | log.info("建设方案项目申报成功 【{}】", instanceId); | ||||
//保存建设项目 | |||||
if(dto.getRestart()){ | |||||
modifyProject(projectInfo, instanceId, projectInfo.getConstructionPlanFile()); | |||||
}else{ | |||||
//生成新版本 并且进入下一状态 | |||||
projectInfo = projectLibManage.saveProjectWithVersionAndPass(projectInfo,instanceId,InstTypeEnum.CONSTRUCTION_PLAN_REVIEW.getCode()); | |||||
} | |||||
// 保存建设项目相关 | |||||
Project buildProject = projectLibManage.saveConstructProjectInDeclared(projectInfo,instanceId,employeeCode); | |||||
//发送给第一个审批人消息 | //发送给第一个审批人消息 | ||||
noticeManage.sendFirtUser(projectInfo,model.getFormName(),instanceId, | |||||
noticeManage.sendFirtUser(buildProject,model.getFormName(),instanceId, | |||||
WorkNoticeConstant.PASS_MSG_TEMPLATE, MsgTypeEnum.PROJECT_REVIEW); | WorkNoticeConstant.PASS_MSG_TEMPLATE, MsgTypeEnum.PROJECT_REVIEW); | ||||
return instanceId; | return instanceId; | ||||
@@ -201,6 +201,28 @@ public class ProjectLibManage { | |||||
return project; | return project; | ||||
} | } | ||||
/** | |||||
* 建设方案申报项目时 保存项目信息和其它相关联的信息 | |||||
* @param projectDto | |||||
* @param instanceId | |||||
* @param employeeCode | |||||
* @return | |||||
*/ | |||||
public Project saveConstructProjectInDeclared(ProjectDTO projectDto, String instanceId, | |||||
String employeeCode) { | |||||
Project project = saveConstructProjectNewVersion(projectDto,instanceId,employeeCode); | |||||
//保存项目和实例的关系 | |||||
ProjectInst projectInst = new ProjectInst(); | |||||
projectInst.setProjectId(project.getId()); | |||||
projectInst.setInstCode(instanceId); | |||||
projectInst.setCreatOn(LocalDateTime.now()); | |||||
projectInst.setUpdateOn(LocalDateTime.now()); | |||||
projectInst.setInstType(ProjectProcessStageEnum.CONSTRUCTION_PROJECT_APPROVAL_PROCESS.getCode()); | |||||
projectInstService.save(projectInst); | |||||
return project; | |||||
} | |||||
/** | /** | ||||
* 申报新项目时 保存项目信息和其它相关联的信息 | * 申报新项目时 保存项目信息和其它相关联的信息 | ||||
* @param projectDto | * @param projectDto | ||||
@@ -265,6 +287,72 @@ public class ProjectLibManage { | |||||
} | } | ||||
/** | /** | ||||
* 建设方案申报项目时 保存项目信息和其它相关联的信息 | |||||
* @param projectDto | |||||
* @param instanceId | |||||
* @param employeeCode | |||||
* @return | |||||
*/ | |||||
public Project saveConstructProjectNewVersion(ProjectDTO projectDto, String instanceId, | |||||
String employeeCode) { | |||||
//流程启动之后 入库项目 重要业务信息 用于列表查询 展示 | |||||
try { | |||||
Project project = new Project(); | |||||
//为空 代表是新申报的 | |||||
if(Objects.isNull(projectDto.getId())){ | |||||
BeanUtils.copyProperties(projectDto, project); | |||||
project.setCreateOn(LocalDateTime.now()); | |||||
project.setUpdateOn(LocalDateTime.now()); | |||||
project.setStage(ProjectStatusEnum.NOT_APPROVED.getCode()); | |||||
project.setStatus(ProjectStatusEnum.SCHEME_UNDER_REVIEW.getCode()); | |||||
project.setInstCode(instanceId); | |||||
project.setSponsor(employeeCode); | |||||
String projectCode = generateProjectCodeUtil.generateProjectCode(projectDto); | |||||
project.setProjectCode(projectCode); | |||||
// 标记为建设方案申报 | |||||
project.setIsConstruct(Boolean.TRUE); | |||||
projectService.save(project); | |||||
}else{ | |||||
//否则是重新提交的 新生成一个新版本的项目 | |||||
project = newProjectWithVersion(projectDto); | |||||
if(Objects.nonNull(project)){ | |||||
project.setInstCode(instanceId); | |||||
project.setSponsor(employeeCode); | |||||
projectService.updateById(project); | |||||
} | |||||
} | |||||
//保存项目应用 | |||||
Boolean isApp = Objects.nonNull(projectDto.getIncludeApplication()) && CommonEnum.YES.getCode().equals(projectDto.getIncludeApplication()) | |||||
? Boolean.TRUE : Boolean.FALSE; | |||||
//采取批量删除 批量添加的方式 | |||||
projectApplicationService.remove(Wrappers.lambdaQuery(ProjectApplication.class) | |||||
.eq(ProjectApplication::getProjectId,project.getId())); | |||||
projectApplicationService.remove(Wrappers.lambdaQuery(ProjectApplication.class) | |||||
.eq(ProjectApplication::getProjectCode,project.getProjectCode())); | |||||
if (isApp && CollUtil.isNotEmpty(projectDto.getApplicationList())) { | |||||
Project finalProject = project; | |||||
List<ProjectApplication> applications = projectDto.getApplicationList().stream().map(application -> { | |||||
ProjectApplication projectApplication = new ProjectApplication(); | |||||
BeanUtils.copyProperties(application, projectApplication); | |||||
projectApplication.setId(null); | |||||
projectApplication.setProjectId(finalProject.getId()); | |||||
projectApplication.setProjectCode(finalProject.getProjectCode()); | |||||
projectApplication.setBuildOrgCode(finalProject.getBuildOrgCode()); | |||||
projectApplication.setBuildOrgName(finalProject.getBuildOrgName()); | |||||
return projectApplication; | |||||
}).collect(Collectors.toList()); | |||||
projectApplicationService.saveOrUpdateBatch(applications); | |||||
} | |||||
return project; | |||||
} catch (Exception e) { | |||||
log.error("项目信息入库错误 " + e); | |||||
throw new BusinessException("项目信息入库错误 :" + e); | |||||
} | |||||
} | |||||
/** | |||||
* 在其它项目阶段 保存项目信息和其它相关联的信息 | * 在其它项目阶段 保存项目信息和其它相关联的信息 | ||||
* @param projectDto | * @param projectDto | ||||
* @return | * @return | ||||
@@ -501,6 +589,40 @@ public class ProjectLibManage { | |||||
return project; | return project; | ||||
} | } | ||||
public Project saveConstructProjectWithVersionAndPass(Project oldProject,String instanceId,Integer instType){ | |||||
Project project = new Project(); | |||||
VUtils.isTrue(Objects.isNull(oldProject)) | |||||
.throwMessage("项目不存在!"); | |||||
BeanUtil.copyProperties(oldProject,project, CopyOptions.create() | |||||
.setIgnoreError(Boolean.TRUE).setIgnoreNullValue(Boolean.TRUE)); | |||||
project.setVersion(oldProject.getVersion() + 1); | |||||
project.setId(null); | |||||
project.setInstCode(instanceId); | |||||
project.setCreateOn(LocalDateTime.now()); | |||||
project.setUpdateOn(LocalDateTime.now()); | |||||
// 标识保存的项目信息是否为建设方案申报项目 | |||||
project.setIsConstruct(Boolean.TRUE); | |||||
stateMachineUtils.pass(project); | |||||
if(projectService.save(project)){ | |||||
//保存项目和实例的关系 | |||||
ProjectInst projectInst = new ProjectInst(); | |||||
projectInst.setProjectId(project.getId()); | |||||
projectInst.setInstCode(instanceId); | |||||
projectInst.setCreatOn(LocalDateTime.now()); | |||||
projectInst.setUpdateOn(LocalDateTime.now()); | |||||
projectInst.setInstType(instType); | |||||
projectInstService.save(projectInst); | |||||
projectService.update(Wrappers.lambdaUpdate(Project.class) | |||||
.set(Project::getNewest,Boolean.FALSE) | |||||
.ne(Project::getId,project.getId()) | |||||
.eq(Project::getProjectCode,project.getProjectCode())); | |||||
} | |||||
return project; | |||||
} | |||||
/** | /** | ||||
* @param projectId 项目详情 | * @param projectId 项目详情 | ||||
* @return com.ningdatech.pmapi.projectlib.model.entity.vo.ProjectDetailVO | * @return com.ningdatech.pmapi.projectlib.model.entity.vo.ProjectDetailVO | ||||
@@ -15,6 +15,7 @@ import cn.hutool.core.map.MapUtil; | |||||
import cn.hutool.core.util.ObjectUtil; | import cn.hutool.core.util.ObjectUtil; | ||||
import com.ningdatech.basic.exception.BizException; | import com.ningdatech.basic.exception.BizException; | ||||
import com.ningdatech.pmapi.common.constant.RegionConst; | import com.ningdatech.pmapi.common.constant.RegionConst; | ||||
import com.ningdatech.pmapi.common.enumeration.CommonEnum; | |||||
import com.ningdatech.pmapi.projectlib.enumeration.*; | import com.ningdatech.pmapi.projectlib.enumeration.*; | ||||
import com.ningdatech.pmapi.sys.model.entity.Region; | import com.ningdatech.pmapi.sys.model.entity.Region; | ||||
import com.ningdatech.pmapi.sys.service.IRegionService; | import com.ningdatech.pmapi.sys.service.IRegionService; | ||||
@@ -24,6 +25,7 @@ import com.ningdatech.pmapi.todocenter.handle.WithDrawHandle; | |||||
import com.ningdatech.pmapi.todocenter.model.dto.*; | import com.ningdatech.pmapi.todocenter.model.dto.*; | ||||
import com.ningdatech.pmapi.todocenter.model.vo.TodoNumVO; | import com.ningdatech.pmapi.todocenter.model.vo.TodoNumVO; | ||||
import com.wflow.contants.HisProInsEndActId; | import com.wflow.contants.HisProInsEndActId; | ||||
import com.wflow.workflow.bean.process.ProcessComment; | |||||
import com.wflow.workflow.utils.ProcessTaskUtils; | import com.wflow.workflow.utils.ProcessTaskUtils; | ||||
import org.apache.commons.io.FileUtils; | import org.apache.commons.io.FileUtils; | ||||
import org.apache.commons.lang3.StringUtils; | import org.apache.commons.lang3.StringUtils; | ||||
@@ -36,6 +38,7 @@ import org.flowable.engine.HistoryService; | |||||
import org.flowable.engine.RepositoryService; | import org.flowable.engine.RepositoryService; | ||||
import org.flowable.engine.TaskService; | import org.flowable.engine.TaskService; | ||||
import org.flowable.engine.history.HistoricProcessInstance; | import org.flowable.engine.history.HistoricProcessInstance; | ||||
import org.flowable.engine.task.Comment; | |||||
import org.flowable.task.api.Task; | import org.flowable.task.api.Task; | ||||
import org.flowable.task.api.history.HistoricTaskInstance; | import org.flowable.task.api.history.HistoricTaskInstance; | ||||
import org.flowable.variable.api.history.HistoricVariableInstance; | import org.flowable.variable.api.history.HistoricVariableInstance; | ||||
@@ -1285,8 +1288,14 @@ public class TodoCenterManage { | |||||
} | } | ||||
public Long getSealedPdf(SealInfoDTO req) { | public Long getSealedPdf(SealInfoDTO req) { | ||||
UserFullInfoDTO user = userInfoHelper.getUserFullInfo(LoginUserUtil.getUserId()); | |||||
String empPosUnitCode = user.getEmpPosUnitCode(); | |||||
Long projectId = req.getProjectId(); | Long projectId = req.getProjectId(); | ||||
// 盖章审核意见 | |||||
String auditOpinion = req.getAuditOpinion(); | |||||
String auditDate = NdDateUtils.format(LocalDateTime.now(), NdDateUtils.DEFAULT_DATE_TIME_FORMAT); | |||||
Project declaredProject = projectService.getById(projectId); | Project declaredProject = projectService.getById(projectId); | ||||
String buildOrgCode = declaredProject.getBuildOrgCode(); | |||||
String instanceId = declaredProject.getInstCode(); | String instanceId = declaredProject.getInstCode(); | ||||
ProjectInst projectInst = projectInstService.getOne(Wrappers.lambdaQuery(ProjectInst.class) | ProjectInst projectInst = projectInstService.getOne(Wrappers.lambdaQuery(ProjectInst.class) | ||||
.eq(ProjectInst::getInstCode, instanceId)); | .eq(ProjectInst::getInstCode, instanceId)); | ||||
@@ -1301,26 +1310,51 @@ public class TodoCenterManage { | |||||
throw new BizException("项目所属区域不存在!"); | throw new BizException("项目所属区域不存在!"); | ||||
} | } | ||||
Integer regionLevel = region.getRegionLevel(); | Integer regionLevel = region.getRegionLevel(); | ||||
// 获取项目申报时是否选择了主管单位和上级条线主管单位 | |||||
// 主管单位信息 | |||||
Integer isSuperOrg = declaredProject.getIsSuperOrg(); | |||||
String superOrgCode = declaredProject.getSuperOrgCode(); | |||||
// 上级条线主管单位信息 | |||||
Integer isHigherSuperOrg = declaredProject.getIsHigherSuperOrg(); | |||||
String higherSuperOrgCode = declaredProject.getHigherSuperOrgCode(); | |||||
switch (regionLevel) { | switch (regionLevel) { | ||||
// 市级预审 | // 市级预审 | ||||
case RegionConst.RL_CITY: | case RegionConst.RL_CITY: | ||||
String cityTemplateName = TodoCenterConstant.SealTemplate.CITY_TEMPLATE; | String cityTemplateName = TodoCenterConstant.SealTemplate.CITY_TEMPLATE; | ||||
// 设置pdf模板参数 | // 设置pdf模板参数 | ||||
JSONObject cityParamsMap = assemblyPdfParams(declaredProject, cityTemplateName); | JSONObject cityParamsMap = assemblyPdfParams(declaredProject, cityTemplateName); | ||||
// TODO 根据当前盖章单位设置对应的盖章意见与盖章日期 | |||||
cityParamsMap.put("superOrgOpinion",null); | |||||
cityParamsMap.put("superOrgAuditDate",null); | |||||
// 盖章审核为主管单位审核 | |||||
if (superOrgCode.equals(empPosUnitCode)) { | |||||
cityParamsMap.put("superOrgOpinion", auditOpinion); | |||||
cityParamsMap.put("superOrgAuditDate", auditDate); | |||||
} | |||||
return getSealedPdf(req, declaredProject,cityTemplateName,cityParamsMap); | return getSealedPdf(req, declaredProject,cityTemplateName,cityParamsMap); | ||||
// 区县预审 | // 区县预审 | ||||
case RegionConst.RL_COUNTY: | case RegionConst.RL_COUNTY: | ||||
String countryTemplateName = TodoCenterConstant.SealTemplate.COUNTRY_TEMPLATE; | String countryTemplateName = TodoCenterConstant.SealTemplate.COUNTRY_TEMPLATE; | ||||
// 设置pdf模板参数 | // 设置pdf模板参数 | ||||
JSONObject countryParamsMap = assemblyPdfParams(declaredProject, countryTemplateName); | JSONObject countryParamsMap = assemblyPdfParams(declaredProject, countryTemplateName); | ||||
// TODO 根据当前盖章单位设置对应的盖章意见与盖章日期 | |||||
countryParamsMap.put("superOrgOpinion",null); | |||||
countryParamsMap.put("superOrgAuditDate",null); | |||||
countryParamsMap.put("higherOrgOpinion",null); | |||||
countryParamsMap.put("higherOrgAuditDate",null); | |||||
// 判断当前盖章用户所在单位是本级主管单位还是上级主管单位 | |||||
if (CommonEnum.YES.getCode().equals(isSuperOrg)){ | |||||
// 有主管单位信息且登录用户所在单位是主管单位 | |||||
if (superOrgCode.equals(empPosUnitCode)){ | |||||
countryParamsMap.put("superOrgOpinion",auditOpinion); | |||||
countryParamsMap.put("superOrgAuditDate",auditDate); | |||||
} | |||||
} else if (CommonEnum.NO.getCode().equals(isSuperOrg)) { | |||||
// 没有选主管单位,默认为项目建设单位且登录用户所在单位为项目建设单位 | |||||
if (buildOrgCode.equals(empPosUnitCode)) { | |||||
countryParamsMap.put("superOrgOpinion", auditOpinion); | |||||
countryParamsMap.put("superOrgAuditDate", auditDate); | |||||
} | |||||
} else if (CommonEnum.YES.getCode().equals(isHigherSuperOrg)) { | |||||
// 有上级条线主管单位信息且登录用户所在单位是上级条线主管单位 | |||||
if (higherSuperOrgCode.equals(empPosUnitCode)){ | |||||
countryParamsMap.put("higherOrgOpinion",auditOpinion); | |||||
countryParamsMap.put("higherOrgAuditDate",auditDate); | |||||
} | |||||
} | |||||
return getSealedPdf(req, declaredProject,countryTemplateName, countryParamsMap); | return getSealedPdf(req, declaredProject,countryTemplateName, countryParamsMap); | ||||
default: | default: | ||||
throw new IllegalStateException("Unexpected value: " + regionLevel); | throw new IllegalStateException("Unexpected value: " + regionLevel); | ||||
@@ -1331,9 +1365,10 @@ public class TodoCenterManage { | |||||
// 设置pdf模板参数 | // 设置pdf模板参数 | ||||
String constructTemplateName = TodoCenterConstant.SealTemplate.CONSTRUCT_TEMPLATE; | String constructTemplateName = TodoCenterConstant.SealTemplate.CONSTRUCT_TEMPLATE; | ||||
JSONObject constructParamsMap = assemblyPdfParams(declaredProject, constructTemplateName); | JSONObject constructParamsMap = assemblyPdfParams(declaredProject, constructTemplateName); | ||||
// 本级主管单位意见、上级主管单位意见 | |||||
constructParamsMap.put("bigDataBureauOpinion",null); | |||||
constructParamsMap.put("bigDataBureauAuditDate",null); | |||||
// 审核为指定大数据局盖章 | |||||
// 获取流程配置的指定单位信息 | |||||
constructParamsMap.put("bigDataBureauOpinion",auditOpinion); | |||||
constructParamsMap.put("bigDataBureauAuditDate",auditDate); | |||||
return getSealedPdf(req, declaredProject,constructTemplateName, constructParamsMap); | return getSealedPdf(req, declaredProject,constructTemplateName, constructParamsMap); | ||||
} | } | ||||
return null; | return null; | ||||
@@ -34,4 +34,8 @@ public class SealInfoDTO { | |||||
*/ | */ | ||||
private Integer signType; | private Integer signType; | ||||
/** | |||||
* 盖章审核意见 | |||||
*/ | |||||
private String auditOpinion; | |||||
} | } |