AssignmentCompletionStatus.java 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package com.njuzr.eaibackend.enums;
  2. import com.baomidou.mybatisplus.annotation.EnumValue;
  3. import lombok.Getter;
  4. import org.springframework.data.mongodb.core.aggregation.BooleanOperators;
  5. /**
  6. * @author: Leonezhurui
  7. * @Date: 2024/3/4 - 22:55
  8. * @Package: EAI-Backend
  9. */
  10. @Getter
  11. public enum AssignmentCompletionStatus {
  12. NOT_EDITED(0, "NOT_EDITED"), // 待完成,还未进行写作页面进行编辑
  13. NOT_SUBMITTED(1, "NOT_SUBMITTED"), // 未提交,正在完成作业中
  14. SUBMITTED(2, "SUBMITTED"), // 已提交,完成编辑并提交内容
  15. NOT_DONE(3, "NOT_DONE"), // 未完成,到了DDL,仍然没有提交的
  16. PUBLISHED(4, "PUBLISHED"), // 老师已批改并发布
  17. NOT_CORRECTED(5, "NOT_CORRECTED"), //未批改(状态仅老师可见)
  18. CORRECTED(6, "CORRECTED"), //已批改、但还未发布(状态仅老师可见)
  19. LATE_SUBMITTED(7, "LATE_SUBMITTED"), //已补交,超过DDL后提交的作业
  20. LATE_SUBMITTED_CORRECTED(8, "LATE_SUBMITTED_CORRECTED") //补交后已批改
  21. ;
  22. @EnumValue
  23. private final int code;
  24. private final String status;
  25. AssignmentCompletionStatus(int code, String status) {
  26. this.code = code;
  27. this.status = status;
  28. }
  29. // 根据数据库存储值获取枚举
  30. public static AssignmentCompletionStatus fromValue(String value) {
  31. for (AssignmentCompletionStatus status : values()) {
  32. if (status.code == Integer.parseInt(value)) {
  33. return status;
  34. }
  35. }
  36. throw new IllegalArgumentException("Invalid assignment status: " + value);
  37. }
  38. }