package com.gkhy.assess.system.mapper;
import com.gkhy.assess.system.domain.AssProject;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.gkhy.assess.system.domain.vo.PersonProjectVO;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
*
* 项目表 Mapper 接口
*
*
* @author kzy
* @since 2023-12-11 14:16:18
*/
@Mapper
public interface AssProjectMapper extends BaseMapper {
/**
* 项目列表
* @param project
* @return
*/
List projectList(AssProject project);
/**
* 根据id获取项目详情
* @param projectId
* @return
*/
AssProject getProjectById(Long projectId);
/**
* 根据项目名称获取项目
* @param name
* @return
*/
AssProject getProjectByName(@Param("name")String name,@Param("agencyId")Long agencyId,@Param("safetyCheck")Integer safetyCheck);
/**
* 获取项目状态
* @param projectId
* @return
*/
Integer getReportProgress(Long projectId);
/**
* 根据项目组成员id获取项目
* @param personId
* @param finish
* @return
*/
List getMemberProjectByUserId(@Param("personId") Long personId,@Param("finish") Integer finish,@Param("agencyId") Long agencyId);
/**
* 根据项目组长id获取项目
* @param personId
* @return
*/
List getLeaderProjectByUserId(@Param("personId")Long personId,@Param("agencyId")Long agencyId);
/**
* 获取项目总数
* @param project
* @return
*/
Integer getProjectCount(AssProject project);
/**
* 根据成员id列表汇总项目数量
* @param personIds
* @return
*/
List getProjectByPersonIds(List personIds);
}