package com.gkhy.assess.system.service;
|
|
import com.gkhy.assess.common.api.CommonPage;
|
import com.gkhy.assess.system.domain.AssProject;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.gkhy.assess.system.domain.vo.ProjectStaticVO;
|
import com.gkhy.assess.system.enums.ReportProgressEnum;
|
|
/**
|
* <p>
|
* 项目表 服务类
|
* </p>
|
*
|
* @author kzy
|
* @since 2023-12-11 14:16:18
|
*/
|
public interface AssProjectService extends IService<AssProject> {
|
|
/**
|
* 根据条件分页查询项目列表
|
* @param project
|
* @return
|
*/
|
CommonPage projectList(AssProject project);
|
|
/**
|
* 根据id获取项目
|
* @param projectId
|
* @return
|
*/
|
AssProject getProjectById(Long projectId);
|
|
|
/**
|
* 新增项目
|
* @param project
|
* @return
|
*/
|
int addProject(AssProject project);
|
|
|
/**
|
* 根据id删除项目
|
* @param projectId
|
* @return
|
*/
|
int deleteProjectById(Long projectId);
|
|
/**
|
* 编辑项目
|
* @param project
|
* @return
|
*/
|
int editProject(AssProject project);
|
|
|
/**
|
* 校验项目
|
* @param projectId
|
*/
|
AssProject checkProjectDataScope(Long projectId);
|
|
|
/**
|
* 获取项目当前的项目过程状态
|
* @param projectId
|
* @return
|
*/
|
Integer getProjectReportProgress(Long projectId);
|
|
|
/**
|
* 检验项目名称是否唯一
|
* @param project
|
* @return
|
*/
|
boolean checkNameUnique(AssProject project);
|
|
/**
|
* 校验项目状态
|
* @param projectId
|
* @param reportProgressEnum 项目状态
|
* @return
|
*/
|
void checkReportProgress(Long projectId, ReportProgressEnum reportProgressEnum);
|
|
/**
|
* 修改项目状态
|
* @param projectId
|
* @param reportProgressEnum
|
* @return
|
*/
|
int changeReportProgress(Long projectId,ReportProgressEnum reportProgressEnum);
|
|
|
/**
|
* 根据项目成员获取项目列表 分页(供app使用)
|
* @param personId
|
* @param finish
|
* @return
|
*/
|
CommonPage memberProjects(Long personId,Integer finish);
|
|
|
/**
|
* 根据项目组长id获取项目列表 分页(供app使用)
|
* @param personId
|
* @return
|
*/
|
CommonPage leaderProjects(Long personId);
|
|
/**
|
* 项目统计
|
* @return
|
*/
|
ProjectStaticVO projectStat(AssProject project);
|
|
/**
|
* 获取项目agencyId
|
* @param projectId
|
* @return
|
*/
|
Long getProjectAgencyId(Long projectId);
|
|
/**
|
* 校验当前用户是否拥有操作项目权限
|
* @param projectId
|
*/
|
void checkUserAllowed(Long projectId);
|
}
|