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 com.ruoyi.invest.domain.vo.ProjectDecisionVo;

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

/**
 * 项目池Service接口
 * 
 * @author ruoyi
 * @date 2024-02-21
 */
public interface IDecisionService
{
    List<ProjectDecisionVo> selectAllDecisionList(TProjectDecision tProjectDecision);
    List<ProjectDecisionVo> getMyTaskList(String userId, TProjectDecision tProjectDecision);
    List<ProjectDecisionVo> getMyDoneTaskList(String userId, TProjectDecision tProjectDecision);
    List<ProjectDecisionVo> getMyList(String userId,TProjectDecision tProjectDecision);

    TProjectDecision selectTProjectDecisionByProcInstId(String pInstId);
    /**
     * 新增投决申请
     *
     * @param tProjectDecision 投决申请
     * @return 结果
     */

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

    TProjectMeeting selectTProjectMeetingByProcInstId(String pInstId);

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


}
