Knowledge2.java 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. package com.aijia.kmt.common.constant;
  2. import com.aijia.kmt.dto.knowledge.KnowledgeBaseDto;
  3. import java.util.ArrayList;
  4. import java.util.List;
  5. import java.util.Objects;
  6. public class Knowledge2 {
  7. private List<KnowledgeBaseDto> chineseList = new ArrayList<>();
  8. private List<KnowledgeBaseDto> mathList = new ArrayList<>();
  9. private List<KnowledgeBaseDto> englishList = new ArrayList<>();
  10. public void init() {
  11. initChineseList();
  12. initMathList();
  13. initEnglishList();
  14. }
  15. public void destroy () {
  16. }
  17. /**
  18. * 初始化语文版本
  19. */
  20. public void initChineseList () {
  21. KnowledgeBaseDto temp = new KnowledgeBaseDto(2, "人教(部编)");
  22. this.chineseList.add(temp);
  23. }
  24. /**
  25. * 初始化数学版本
  26. */
  27. public void initMathList () {
  28. KnowledgeBaseDto renTemp = new KnowledgeBaseDto(2, "人教版");
  29. this.mathList.add(renTemp);
  30. }
  31. /**
  32. * 初始化英语版本
  33. */
  34. public void initEnglishList () {
  35. KnowledgeBaseDto peopleEducationEdition = new KnowledgeBaseDto(8, "人教版(PEP)");
  36. this.englishList.add(peopleEducationEdition);
  37. }
  38. /**
  39. * 根据科目返回版本列表
  40. * @param subject
  41. * @return
  42. */
  43. public List<KnowledgeBaseDto> getVersionListBySubject (String subject) {
  44. List<KnowledgeBaseDto> result;
  45. switch (subject){
  46. case "语文": result = this.chineseList; break;
  47. case "数学": result = this.mathList; break;
  48. case "英语": result = this.englishList; break;
  49. default: result = this.chineseList;
  50. }
  51. return result;
  52. }
  53. /**
  54. * 根据科目和版本号获取版本名
  55. */
  56. public String getVersionNameBySubjectAndVersionNum(String subject, Integer versionNum) {
  57. List<KnowledgeBaseDto> knowledgeBaseDtoList = getVersionListBySubject(subject);
  58. for (KnowledgeBaseDto knowledgeBaseDto : knowledgeBaseDtoList) {
  59. if (Objects.equals(versionNum, knowledgeBaseDto.getType())) {
  60. return knowledgeBaseDto.getName();
  61. }
  62. }
  63. return "未知的版本";
  64. }
  65. /**
  66. * 根据科目和版本名获取版本号
  67. */
  68. public Integer getVersionNumBySubjectAndVersionName(String subject, String versionName) {
  69. List<KnowledgeBaseDto> knowledgeBaseDtoList = getVersionListBySubject(subject);
  70. for (KnowledgeBaseDto knowledgeBaseDto : knowledgeBaseDtoList) {
  71. if (Objects.equals(versionName, knowledgeBaseDto.getName())) {
  72. return knowledgeBaseDto.getType();
  73. }
  74. }
  75. return 0;
  76. }
  77. }