ProjectService.java 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. package nju.seec.SEECdemo.logic.service;
  2. import nju.seec.SEECdemo.logic.vo.ProjectVO;
  3. import java.time.LocalDate;
  4. import java.util.Date;
  5. public interface ProjectService {
  6. /**
  7. * 创建软工二的项目
  8. * 项目名称需要具有唯一性,如果项目名称冲突,会抛出异常
  9. * //@Todo 后期希望能够根据课程类型选择课程模板
  10. * @param projectName
  11. * @param description
  12. * @param startsAt
  13. * @param endsAt
  14. * @return 项目创建详情
  15. * @exception nju.seec.SEECdemo.logic.exception.ServiceException
  16. */
  17. ProjectVO createSeecIIProject(String projectName, String description, LocalDate startsAt, LocalDate endsAt);
  18. /**
  19. * 删除项目
  20. * 如果项目底下仍有尚在运行的应用,则不会删除
  21. * @param projectId
  22. * @return
  23. */
  24. boolean deleteProject(long projectId);
  25. /**
  26. * 强制删除项目
  27. * 无论项目之下是否有运行中的应用,都会删除
  28. * 会强制删除项目之下的所有的应用,并回收资源
  29. * @param projectId
  30. * @return
  31. */
  32. boolean deleteProjectForce(long projectId);
  33. }