@@ -57,7 +57,7 @@ public class GeneratorCodeKingbaseConfig { | |||||
public static void main(String[] args) { | public static void main(String[] args) { | ||||
//generate("Liuxinxin", "expert", PATH_LXX, "expert_gov_business_strip"); | //generate("Liuxinxin", "expert", PATH_LXX, "expert_gov_business_strip"); | ||||
generate("CMM", "test", PATH_CMM, "nd_project_delay_apply"); | |||||
generate("CMM", "test", PATH_CMM, "nd_project_apply_borrow"); | |||||
} | } | ||||
} | } |
@@ -43,6 +43,7 @@ public class ProjectFileController { | |||||
@ApiOperation(value = "申请借阅", notes = "申请借阅") | @ApiOperation(value = "申请借阅", notes = "申请借阅") | ||||
@WebLog("档案管理-项目档案-申请借阅") | @WebLog("档案管理-项目档案-申请借阅") | ||||
public String wantRead(@PathVariable Long projectId){ | public String wantRead(@PathVariable Long projectId){ | ||||
return projectFileManage.wantRead(projectId); | |||||
String instanceId = projectFileManage.startApplyBorrowProcess(projectId); | |||||
return "启动申请借阅流程实例 【" + instanceId + "】 成功"; | |||||
} | } | ||||
} | } |
@@ -2,20 +2,47 @@ package com.ningdatech.pmapi.filemanage.manage; | |||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers; | import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
import com.ningdatech.basic.function.VUtils; | |||||
import com.ningdatech.basic.model.PageVo; | import com.ningdatech.basic.model.PageVo; | ||||
import com.ningdatech.pmapi.common.constant.BizConst; | |||||
import com.ningdatech.pmapi.common.enumeration.ProjectProcessStageEnum; | |||||
import com.ningdatech.pmapi.common.helper.UserInfoHelper; | |||||
import com.ningdatech.pmapi.filemanage.model.param.ProjectFileListParam; | import com.ningdatech.pmapi.filemanage.model.param.ProjectFileListParam; | ||||
import com.ningdatech.pmapi.filemanage.model.vo.ProjectFileListVO; | import com.ningdatech.pmapi.filemanage.model.vo.ProjectFileListVO; | ||||
import com.ningdatech.pmapi.filemanage.model.vo.ProjectFileVO; | import com.ningdatech.pmapi.filemanage.model.vo.ProjectFileVO; | ||||
import com.ningdatech.pmapi.projectdeclared.manage.DefaultDeclaredProjectManage; | |||||
import com.ningdatech.pmapi.projectlib.enumeration.InstTypeEnum; | |||||
import com.ningdatech.pmapi.projectlib.enumeration.ProjectStatusEnum; | |||||
import com.ningdatech.pmapi.projectlib.manage.ProjectLibManage; | import com.ningdatech.pmapi.projectlib.manage.ProjectLibManage; | ||||
import com.ningdatech.pmapi.projectlib.model.entity.Project; | import com.ningdatech.pmapi.projectlib.model.entity.Project; | ||||
import com.ningdatech.pmapi.projectlib.model.entity.ProjectInst; | |||||
import com.ningdatech.pmapi.projectlib.model.vo.ProjectDetailVO; | import com.ningdatech.pmapi.projectlib.model.vo.ProjectDetailVO; | ||||
import com.ningdatech.pmapi.projectlib.service.IProjectInstService; | |||||
import com.ningdatech.pmapi.projectlib.service.IProjectService; | import com.ningdatech.pmapi.projectlib.service.IProjectService; | ||||
import com.ningdatech.pmapi.staging.enums.MsgTypeEnum; | |||||
import com.ningdatech.pmapi.sys.manage.NoticeManage; | |||||
import com.ningdatech.pmapi.todocenter.constant.WorkNoticeContant; | |||||
import com.ningdatech.pmapi.user.security.auth.model.UserFullInfoDTO; | |||||
import com.ningdatech.pmapi.user.util.LoginUserUtil; | |||||
import com.wflow.bean.entity.WflowModels; | |||||
import com.wflow.contants.HisProInsEndActId; | |||||
import com.wflow.exception.BusinessException; | |||||
import com.wflow.workflow.bean.dto.OrgInfoDTO; | |||||
import com.wflow.workflow.bean.vo.ProcessStartParamsVo; | |||||
import com.wflow.workflow.service.ProcessInstanceService; | |||||
import com.wflow.workflow.service.ProcessModelService; | |||||
import lombok.AllArgsConstructor; | import lombok.AllArgsConstructor; | ||||
import lombok.extern.slf4j.Slf4j; | import lombok.extern.slf4j.Slf4j; | ||||
import org.apache.commons.lang3.StringUtils; | import org.apache.commons.lang3.StringUtils; | ||||
import org.flowable.engine.HistoryService; | |||||
import org.flowable.engine.history.HistoricProcessInstance; | |||||
import org.springframework.stereotype.Component; | import org.springframework.stereotype.Component; | ||||
import java.time.LocalDateTime; | |||||
import java.util.Collections; | |||||
import java.util.List; | import java.util.List; | ||||
import java.util.Map; | |||||
import java.util.Objects; | |||||
import java.util.stream.Collectors; | import java.util.stream.Collectors; | ||||
/** | /** | ||||
@@ -30,8 +57,14 @@ import java.util.stream.Collectors; | |||||
public class ProjectFileManage { | public class ProjectFileManage { | ||||
private final IProjectService projectService; | private final IProjectService projectService; | ||||
private final ProjectLibManage projectLibManage; | private final ProjectLibManage projectLibManage; | ||||
private final UserInfoHelper userInfoHelper; | |||||
private final ProcessModelService processModelService; | |||||
private final DefaultDeclaredProjectManage defaultDeclaredProjectManage; | |||||
private final ProcessInstanceService processInstanceService; | |||||
private final NoticeManage noticeManage; | |||||
private final IProjectInstService projectInstService; | |||||
private final HistoryService historyService; | |||||
public PageVo<ProjectFileListVO> list(ProjectFileListParam param) { | public PageVo<ProjectFileListVO> list(ProjectFileListParam param) { | ||||
Page<Project> page = param.page(); | Page<Project> page = param.page(); | ||||
@@ -50,6 +83,19 @@ public class ProjectFileManage { | |||||
vo.setBuildOrgName(p.getBuildOrgName()); | vo.setBuildOrgName(p.getBuildOrgName()); | ||||
vo.setPojectCode(p.getProjectCode()); | vo.setPojectCode(p.getProjectCode()); | ||||
vo.setProjectName(p.getProjectName()); | vo.setProjectName(p.getProjectName()); | ||||
// 判断当前项目是否已经开启了申请借阅并且没有审批完成 | |||||
String instCode = p.getInstCode(); | |||||
// 获取流程通过后的流程实例 | |||||
HistoricProcessInstance newInstance = historyService.createHistoricProcessInstanceQuery() | |||||
.processInstanceId(instCode) | |||||
.singleResult(); | |||||
ProjectInst projectInst = projectInstService.getOne(Wrappers.lambdaQuery(ProjectInst.class) | |||||
.eq(ProjectInst::getInstCode, instCode)); | |||||
Integer instType = projectInst.getInstType(); | |||||
if (InstTypeEnum.APPLY_BORROW.getCode().equals(instType) && | |||||
!HisProInsEndActId.END.equals(newInstance.getEndActivityId())){ | |||||
vo.setCanApplyBorrow(Boolean.FALSE); | |||||
} | |||||
return vo; | return vo; | ||||
}).collect(Collectors.toList()); | }).collect(Collectors.toList()); | ||||
return PageVo.of(vos,page.getTotal()); | return PageVo.of(vos,page.getTotal()); | ||||
@@ -65,4 +111,49 @@ public class ProjectFileManage { | |||||
public String wantRead(Long projectId) { | public String wantRead(Long projectId) { | ||||
return "申请成功"; | return "申请成功"; | ||||
} | } | ||||
public String startApplyBorrowProcess(Long projectId) { | |||||
UserFullInfoDTO user = userInfoHelper.getUserFullInfo(LoginUserUtil.getUserId()); | |||||
String employeeCode = user.getEmployeeCode(); | |||||
VUtils.isTrue(StringUtils.isBlank(employeeCode)).throwMessage("获取登录用户 员工号 失败!"); | |||||
Project project = projectService.getNewProject(projectId); | |||||
VUtils.isTrue(Objects.isNull(project)).throwMessage("提交失败 此项目不存在!"); | |||||
//首先要判断 项目当前状态 是不是 已归档 | |||||
VUtils.isTrue(!ProjectStatusEnum.ARCHIVED.getCode().equals(project.getStatus())) | |||||
.throwMessage("提交失败 该项目不是 已归档"); | |||||
String regionCode = user.getRegionCode(); | |||||
WflowModels model = processModelService.getOne(Wrappers.lambdaQuery(WflowModels.class) | |||||
.eq(WflowModels::getRegionCode, regionCode) | |||||
.eq(WflowModels::getProcessType, ProjectProcessStageEnum.APPLY_BORROW.getCode()) | |||||
.last(BizConst.LIMIT_1)); | |||||
if (Objects.isNull(model)) { | |||||
log.error("此 【{}】区域找不到申请借阅流程配置", regionCode); | |||||
throw new BusinessException(String.format("此 【%s】区域找不到申请借阅流程配置", regionCode)); | |||||
} | |||||
ProcessStartParamsVo params = new ProcessStartParamsVo(); | |||||
params.setUser(defaultDeclaredProjectManage.buildUser(employeeCode)); | |||||
params.setProcessUsers(Collections.emptyMap()); | |||||
//放入条件判断的项目字段 | |||||
//把条件值给放入工作流 | |||||
defaultDeclaredProjectManage.buildCondition(params, project); | |||||
// 获取发起单位、发起单位主管单位、发起单位上级条线主管单位信息 | |||||
Map<String, OrgInfoDTO> orgModelMap = defaultDeclaredProjectManage.buildOrgModelMap(employeeCode, project); | |||||
String instanceId = processInstanceService.newStartProcess(model.getProcessDefId(), model.getFormId(), params, orgModelMap); | |||||
log.info("申请借阅申报成功 【{}】", instanceId); | |||||
// 保存项目借阅实例相关 | |||||
projectLibManage.saveProjectByApplyBorrow(project, user, instanceId); | |||||
//发送给第一个审批人消息 | |||||
noticeManage.sendFirtUser(project,model.getFormName(),instanceId, | |||||
WorkNoticeContant.PASS_MSG_TEMPLATE, MsgTypeEnum.PROJECT_REVIEW); | |||||
return instanceId; | |||||
} | |||||
} | } |
@@ -0,0 +1,16 @@ | |||||
package com.ningdatech.pmapi.filemanage.mapper; | |||||
import com.ningdatech.pmapi.filemanage.model.entity.ProjectApplyBorrow; | |||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper; | |||||
/** | |||||
* <p> | |||||
* Mapper 接口 | |||||
* </p> | |||||
* | |||||
* @author CMM | |||||
* @since 2023-06-16 | |||||
*/ | |||||
public interface NdProjectApplyBorrowMapper extends BaseMapper<ProjectApplyBorrow> { | |||||
} |
@@ -0,0 +1,5 @@ | |||||
<?xml version="1.0" encoding="UTF-8"?> | |||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> | |||||
<mapper namespace="com.ningdatech.pmapi.filemanage.mapper.NdProjectApplyBorrowMapper"> | |||||
</mapper> |
@@ -0,0 +1,57 @@ | |||||
package com.ningdatech.pmapi.filemanage.model.entity; | |||||
import com.baomidou.mybatisplus.annotation.IdType; | |||||
import com.baomidou.mybatisplus.annotation.TableId; | |||||
import com.baomidou.mybatisplus.annotation.TableName; | |||||
import java.io.Serializable; | |||||
import java.time.LocalDateTime; | |||||
import io.swagger.annotations.ApiModel; | |||||
import io.swagger.annotations.ApiModelProperty; | |||||
import lombok.Data; | |||||
/** | |||||
* <p> | |||||
* | |||||
* </p> | |||||
* | |||||
* @author CMM | |||||
* @since 2023-06-16 | |||||
*/ | |||||
@Data | |||||
@TableName("nd_project_apply_borrow") | |||||
@ApiModel(value = "NdProjectApplyBorrow对象", description = "") | |||||
public class ProjectApplyBorrow implements Serializable { | |||||
private static final long serialVersionUID = 1L; | |||||
@ApiModelProperty("主键") | |||||
@TableId(type = IdType.AUTO) | |||||
private Long id; | |||||
@ApiModelProperty("借阅项目ID") | |||||
private Long projectId; | |||||
@ApiModelProperty("申请借阅员工code") | |||||
private String applyBorrowEmployeeCode; | |||||
@ApiModelProperty("申请借阅用户任职单位code") | |||||
private String applyBorrowEmpPosUnitCode; | |||||
@ApiModelProperty("申请借阅审批流程ID") | |||||
private String instanceId; | |||||
@ApiModelProperty("创建人") | |||||
private Long createBy; | |||||
@ApiModelProperty("创建时间") | |||||
private LocalDateTime createOn; | |||||
@ApiModelProperty("更新人") | |||||
private Long updateBy; | |||||
@ApiModelProperty("更新时间") | |||||
private LocalDateTime updateOn; | |||||
@ApiModelProperty("申请借阅是否成功") | |||||
private Boolean isSuccess; | |||||
} |
@@ -33,4 +33,7 @@ public class ProjectFileListVO { | |||||
@ApiModelProperty("最后修改时间") | @ApiModelProperty("最后修改时间") | ||||
private LocalDateTime updateOn; | private LocalDateTime updateOn; | ||||
@ApiModelProperty("是否可以申请借阅") | |||||
private Boolean canApplyBorrow = Boolean.TRUE; | |||||
} | } |
@@ -0,0 +1,16 @@ | |||||
package com.ningdatech.pmapi.filemanage.service; | |||||
import com.ningdatech.pmapi.filemanage.model.entity.ProjectApplyBorrow; | |||||
import com.baomidou.mybatisplus.extension.service.IService; | |||||
/** | |||||
* <p> | |||||
* 服务类 | |||||
* </p> | |||||
* | |||||
* @author CMM | |||||
* @since 2023-06-16 | |||||
*/ | |||||
public interface INdProjectApplyBorrowService extends IService<ProjectApplyBorrow> { | |||||
} |
@@ -0,0 +1,20 @@ | |||||
package com.ningdatech.pmapi.filemanage.service.impl; | |||||
import com.ningdatech.pmapi.filemanage.model.entity.ProjectApplyBorrow; | |||||
import com.ningdatech.pmapi.filemanage.mapper.NdProjectApplyBorrowMapper; | |||||
import com.ningdatech.pmapi.filemanage.service.INdProjectApplyBorrowService; | |||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; | |||||
import org.springframework.stereotype.Service; | |||||
/** | |||||
* <p> | |||||
* 服务实现类 | |||||
* </p> | |||||
* | |||||
* @author CMM | |||||
* @since 2023-06-16 | |||||
*/ | |||||
@Service | |||||
public class NdProjectApplyBorrowServiceImpl extends ServiceImpl<NdProjectApplyBorrowMapper, ProjectApplyBorrow> implements INdProjectApplyBorrowService { | |||||
} |
@@ -3,7 +3,6 @@ package com.ningdatech.pmapi.projectlib.manage; | |||||
import cn.hutool.core.bean.BeanUtil; | import cn.hutool.core.bean.BeanUtil; | ||||
import cn.hutool.core.bean.copier.CopyOptions; | import cn.hutool.core.bean.copier.CopyOptions; | ||||
import cn.hutool.core.collection.CollUtil; | import cn.hutool.core.collection.CollUtil; | ||||
import cn.hutool.core.date.DatePattern; | |||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; | ||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers; | import com.baomidou.mybatisplus.core.toolkit.Wrappers; | ||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; | ||||
@@ -11,7 +10,6 @@ import com.google.common.collect.Lists; | |||||
import com.ningdatech.basic.function.VUtils; | import com.ningdatech.basic.function.VUtils; | ||||
import com.ningdatech.basic.model.PageVo; | import com.ningdatech.basic.model.PageVo; | ||||
import com.ningdatech.basic.util.CollUtils; | import com.ningdatech.basic.util.CollUtils; | ||||
import com.ningdatech.basic.util.NdDateUtils; | |||||
import com.ningdatech.file.entity.File; | import com.ningdatech.file.entity.File; | ||||
import com.ningdatech.file.service.FileService; | import com.ningdatech.file.service.FileService; | ||||
import com.ningdatech.pmapi.common.constant.CommonConst; | import com.ningdatech.pmapi.common.constant.CommonConst; | ||||
@@ -19,13 +17,14 @@ import com.ningdatech.pmapi.common.constant.RegionConst; | |||||
import com.ningdatech.pmapi.common.enumeration.CommonEnum; | 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.RegionCacheHelper; | ||||
import com.ningdatech.pmapi.common.helper.UserInfoHelper; | |||||
import com.ningdatech.pmapi.common.model.entity.ExcelExportWriter; | import com.ningdatech.pmapi.common.model.entity.ExcelExportWriter; | ||||
import com.ningdatech.pmapi.common.statemachine.util.StateMachineUtils; | import com.ningdatech.pmapi.common.statemachine.util.StateMachineUtils; | ||||
import com.ningdatech.pmapi.common.util.BizUtils; | import com.ningdatech.pmapi.common.util.BizUtils; | ||||
import com.ningdatech.pmapi.common.util.ExcelDownUtil; | import com.ningdatech.pmapi.common.util.ExcelDownUtil; | ||||
import com.ningdatech.pmapi.datascope.model.DataScopeDTO; | import com.ningdatech.pmapi.datascope.model.DataScopeDTO; | ||||
import com.ningdatech.pmapi.datascope.utils.DataScopeUtil; | import com.ningdatech.pmapi.datascope.utils.DataScopeUtil; | ||||
import com.ningdatech.pmapi.filemanage.model.entity.ProjectApplyBorrow; | |||||
import com.ningdatech.pmapi.filemanage.service.INdProjectApplyBorrowService; | |||||
import com.ningdatech.pmapi.projectdeclared.model.dto.DelayedApplyDTO; | import com.ningdatech.pmapi.projectdeclared.model.dto.DelayedApplyDTO; | ||||
import com.ningdatech.pmapi.projectdeclared.utils.GenerateProjectCodeUtil; | import com.ningdatech.pmapi.projectdeclared.utils.GenerateProjectCodeUtil; | ||||
import com.ningdatech.pmapi.projectlib.enumeration.InstTypeEnum; | import com.ningdatech.pmapi.projectlib.enumeration.InstTypeEnum; | ||||
@@ -79,6 +78,7 @@ public class ProjectLibManage { | |||||
private final IProjectInstService projectInstService; | private final IProjectInstService projectInstService; | ||||
private final StateMachineUtils stateMachineUtils; | private final StateMachineUtils stateMachineUtils; | ||||
private final INdProjectDelayApplyService projectDelayApplyService; | private final INdProjectDelayApplyService projectDelayApplyService; | ||||
private final INdProjectApplyBorrowService projectApplyBorrowService; | |||||
public PageVo<ProjectLibListItemVO> projectLibList(ProjectListReq req) { | public PageVo<ProjectLibListItemVO> projectLibList(ProjectListReq req) { | ||||
LambdaQueryWrapper<Project> query = ProjectHelper.projectQuery(req); | LambdaQueryWrapper<Project> query = ProjectHelper.projectQuery(req); | ||||
@@ -644,4 +644,34 @@ public class ProjectLibManage { | |||||
projectInst.setUpdateOn(LocalDateTime.now()); | projectInst.setUpdateOn(LocalDateTime.now()); | ||||
projectInstService.save(projectInst); | projectInstService.save(projectInst); | ||||
} | } | ||||
public void saveProjectByApplyBorrow(Project project, UserFullInfoDTO user, String instanceId) { | |||||
// 更新项目流程实例ID | |||||
project.setInstCode(instanceId); | |||||
project.setCreateOn(LocalDateTime.now()); | |||||
project.setUpdateOn(LocalDateTime.now()); | |||||
projectService.updateById(project); | |||||
// 保存项目借阅信息 | |||||
ProjectApplyBorrow projectApplyBorrow = new ProjectApplyBorrow(); | |||||
projectApplyBorrow.setProjectId(project.getId()); | |||||
projectApplyBorrow.setApplyBorrowEmployeeCode(user.getEmployeeCode()); | |||||
projectApplyBorrow.setApplyBorrowEmpPosUnitCode(user.getEmpPosUnitCode()); | |||||
projectApplyBorrow.setInstanceId(instanceId); | |||||
projectApplyBorrow.setCreateOn(LocalDateTime.now()); | |||||
projectApplyBorrow.setCreateBy(LoginUserUtil.getUserId()); | |||||
projectApplyBorrow.setUpdateOn(LocalDateTime.now()); | |||||
projectApplyBorrow.setUpdateBy(LoginUserUtil.getUserId()); | |||||
projectApplyBorrow.setIsSuccess(Boolean.FALSE); | |||||
projectApplyBorrowService.save(projectApplyBorrow); | |||||
//保存项目和实例的关系 | |||||
ProjectInst projectInst = new ProjectInst(); | |||||
projectInst.setProjectId(project.getId()); | |||||
projectInst.setInstCode(instanceId); | |||||
projectInst.setInstType(InstTypeEnum.APPLY_BORROW.getCode()); | |||||
projectInst.setCreatOn(LocalDateTime.now()); | |||||
projectInst.setUpdateOn(LocalDateTime.now()); | |||||
projectInstService.save(projectInst); | |||||
} | |||||
} | } |
@@ -12,6 +12,8 @@ import com.google.common.collect.Lists; | |||||
import com.ningdatech.basic.util.NdDateUtils; | import com.ningdatech.basic.util.NdDateUtils; | ||||
import com.ningdatech.file.service.FileService; | import com.ningdatech.file.service.FileService; | ||||
import com.ningdatech.pmapi.common.constant.ProjectDeclareConst; | import com.ningdatech.pmapi.common.constant.ProjectDeclareConst; | ||||
import com.ningdatech.pmapi.filemanage.model.entity.ProjectApplyBorrow; | |||||
import com.ningdatech.pmapi.filemanage.service.INdProjectApplyBorrowService; | |||||
import com.ningdatech.pmapi.projectdeclared.converter.ApplicationConverter; | import com.ningdatech.pmapi.projectdeclared.converter.ApplicationConverter; | ||||
import com.ningdatech.pmapi.projectlib.enumeration.InstTypeEnum; | import com.ningdatech.pmapi.projectlib.enumeration.InstTypeEnum; | ||||
import com.ningdatech.pmapi.projectlib.model.entity.ProjectDelayApply; | import com.ningdatech.pmapi.projectlib.model.entity.ProjectDelayApply; | ||||
@@ -85,6 +87,8 @@ public class HandlerManage { | |||||
private final FileService fileService; | private final FileService fileService; | ||||
private final IJoinReviewProvincialBureauService joinReviewProvincialBureauService; | private final IJoinReviewProvincialBureauService joinReviewProvincialBureauService; | ||||
private final INdProjectDelayApplyService projectDelayApplyService; | private final INdProjectDelayApplyService projectDelayApplyService; | ||||
private final INdProjectApplyBorrowService projectApplyBorrowService; | |||||
/** | /** | ||||
* 审核通过后 所处理的逻辑 | * 审核通过后 所处理的逻辑 | ||||
@@ -146,7 +150,8 @@ public class HandlerManage { | |||||
updateProjectDelayApplyInfo(declaredProject,instanceId); | updateProjectDelayApplyInfo(declaredProject,instanceId); | ||||
break; | break; | ||||
case APPLY_BORROW: | case APPLY_BORROW: | ||||
//TODO 申请借阅审批逻辑 | |||||
// 更新申请借阅状态为成功 | |||||
updateProjectApplyBorrowInfo(declaredProject,instanceId); | |||||
break; | break; | ||||
default: | default: | ||||
throw new BizException("传入实例类型错误: " + instTypeEnum); | throw new BizException("传入实例类型错误: " + instTypeEnum); | ||||
@@ -209,6 +214,23 @@ public class HandlerManage { | |||||
} | } | ||||
} | } | ||||
private void updateProjectApplyBorrowInfo(Project declaredProject, String instanceId) { | |||||
// 获取申请借阅信息 | |||||
ProjectApplyBorrow projectApplyBorrow = projectApplyBorrowService.getOne(Wrappers.lambdaQuery(ProjectApplyBorrow.class) | |||||
.eq(ProjectApplyBorrow::getProjectId, declaredProject.getId()) | |||||
.eq(ProjectApplyBorrow::getInstanceId, instanceId)); | |||||
// 更新项目借阅信息为成功 | |||||
projectApplyBorrow.setProjectId(declaredProject.getId()); | |||||
projectApplyBorrow.setInstanceId(instanceId); | |||||
projectApplyBorrow.setIsSuccess(Boolean.TRUE); | |||||
projectApplyBorrow.setCreateOn(LocalDateTime.now()); | |||||
projectApplyBorrow.setCreateBy(LoginUserUtil.getUserId()); | |||||
projectApplyBorrow.setUpdateOn(LocalDateTime.now()); | |||||
projectApplyBorrow.setUpdateBy(LoginUserUtil.getUserId()); | |||||
projectApplyBorrowService.updateById(projectApplyBorrow); | |||||
} | |||||
private void updateProjectDelayApplyInfo(Project declaredProject, String instanceId) { | private void updateProjectDelayApplyInfo(Project declaredProject, String instanceId) { | ||||
// 获取延期申请填写的相关信息 | // 获取延期申请填写的相关信息 | ||||
ProjectDelayApply delayApply = projectDelayApplyService.getOne(Wrappers.lambdaQuery(ProjectDelayApply.class) | ProjectDelayApply delayApply = projectDelayApplyService.getOne(Wrappers.lambdaQuery(ProjectDelayApply.class) | ||||