package com.cloudroam.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.cloudroam.bo.ProjectInfoBO;
import com.cloudroam.bo.ProjectUserStatisticsBO;
import com.cloudroam.bo.project.ProjectBoardBO;
import com.cloudroam.bo.project.ProjectBoardColumnsDataBO;
import com.cloudroam.dto.projectInfo.*;
import com.cloudroam.model.ProjectInfoDO;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
*
* 服务类
*
*
* @author generator@TaoJie
* @since 2023-08-08
*/
public interface ProjectInfoService extends IService {
IPage getProjectInfoPage(QueryProjectInfoDTO dto);
List getProjectInfoList(QueryProjectInfoDTO dto);
boolean createProjectInfo(CreateOrUpdateProjectInfoDTO validator);
boolean updateProjectInfo(CreateOrUpdateProjectInfoDTO validator);
boolean removeByIdLogic(String id);
boolean updateProjectInfoSetUp(UpdateProjectSetUpDTO validator);
boolean updateProjectInfoStart(String id);
boolean updateProjectInfoComplete(String id);
boolean updateProjectInfoTermination(String id);
boolean updateProjectInfoHours(UpdateProjectHoursDTO validator);
List getProjectHourStatistics(QueryProjectInfoDTO dto);
ProjectInfoBO getDetailById(String id);
/**
* 获取项目看板列表
* @param dto
* @return
*/
List getProjectBoard(QueryProjectInfoDTO dto);
ProjectBoardColumnsDataBO getProjectBoard2(QueryProjectInfoDTO dto);
boolean updateProjectProBusDate(UpdateProjectProBusDateDTO validator);
ProjectBoardColumnsDataBO getProjectBoardMonth(QueryProjectInfoDTO dto);
List getProjectHourStatisticsConfirmed(QueryProjectInfoDTO dto);
List getProjectHourStatisticsAll(QueryProjectInfoDTO dto);
List getReportList(QueryProjectInfoDTO dto);
}