package com.ruoyi.flowable.service;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.invest.domain.*;
import com.ruoyi.invest.domain.vo.ProjectApprovalVo;

import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.Map;

/**
 * 项目池Service接口
 * 
 * @author ruoyi
 * @date 2024-02-21
 */
public interface IApprovalService
{

    List<ProjectApprovalVo> selectAllApprovalList(TProjectApproval tProjectApproval);
    List<ProjectApprovalVo> getMyTaskList(String userId, TProjectApproval tProjectApproval);
    List<ProjectApprovalVo> getMyDoneTaskList(String userId, TProjectApproval tProjectApproval);
    List<ProjectApprovalVo> getMyList(String userId,TProjectApproval tProjectApproval);

    TProjectApproval selectTProjectApprovalByProcInstId(String pInstId);
    /**
     * 新增立项申请
     *
     * @param tProjectApproval 立项申请
     * @return 结果
     */

    AjaxResult start(TProjectApproval tProjectApproval);
    AjaxResult complete(TProjectApproval tProjectApproval, TProjectMeeting tProjectMeeting,TProjectScoring tProjectScoring, FlowBaseInfo flow, HttpServletRequest request) throws Exception ;

    TProjectMeeting selectTProjectMeetingByProcInstId(String pInstId);

    /**
     * 根据pInstId查询汇总分数和平均分数
     * @param pInstId
     * @return
     */
    Map<String,String> selectSumScore(String pInstId);


}
