package cn.iocoder.yudao.module.research.service.application;
|
|
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
import cn.iocoder.yudao.module.research.controller.admin.application.vo.ResearchApplicationPageReqVO;
|
import cn.iocoder.yudao.module.research.controller.admin.application.vo.ResearchApplicationSaveReqVO;
|
import cn.iocoder.yudao.module.research.dal.dataobject.application.ResearchApplicationDO;
|
|
import jakarta.validation.Valid;
|
import java.math.BigDecimal;
|
import java.util.List;
|
import java.util.Map;
|
|
public interface ResearchApplicationService {
|
|
Long createApplication(@Valid ResearchApplicationSaveReqVO createReqVO);
|
|
void updateApplication(@Valid ResearchApplicationSaveReqVO updateReqVO);
|
|
void deleteApplication(Long id);
|
|
ResearchApplicationDO getApplication(Long id);
|
|
PageResult<ResearchApplicationDO> getApplicationPage(ResearchApplicationPageReqVO pageReqVO);
|
|
void submitApplication(Long id, String processDefinitionKey);
|
|
List<Map<String, Object>> getApproveProcessDefinitionList();
|
|
void updateApplicationAuditStatus(Long id, Integer bpmResult);
|
|
/** 审批通过后生成立项编号与立项时间(幂等) */
|
void approveApplication(Long id);
|
|
/** 发布立项通知(生成系统公告,防重复) */
|
void publishNotice(Long id);
|
|
/**
|
* 将「已立项」的课题申报书归档到档案管理,并回写归档档案 ID
|
*
|
* @param id 申报书编号
|
* @return 生成的档案编号(用于前端提示)
|
*/
|
String archiveApplication(Long id);
|
|
/** 专家评审汇总结果回写主单(由评审服务调用) */
|
void updateReviewSummary(Long id, BigDecimal reviewAvgScore, Integer reviewPass);
|
|
}
|