1
This commit is contained in:
@@ -0,0 +1,105 @@
|
||||
package com.bestsch.classicalchinese.enums;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.EnumSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
public enum Subject
|
||||
{
|
||||
YW(40,"语文","SUB01"),
|
||||
SX(41,"数学","SUB02"),
|
||||
YY(42,"英语","SUB03"),
|
||||
WL(74,"物理","SUB04"),
|
||||
HX(75,"化学","SUB05"),
|
||||
SW(76,"生物","SUB06"),
|
||||
XX(111,"信息","SUB7"),
|
||||
PD(112,"道法","SUB8"),
|
||||
TY(113,"体育","SUB9"),
|
||||
MS(114,"美术","SUB10"),
|
||||
KX(115,"科学","SUB11"),
|
||||
LJ(116,"劳技","SUB12"),
|
||||
LS(117,"历史","SUB13"),
|
||||
DL(118,"地理","SUB14"),
|
||||
ZZ(119,"政治","SUB15");
|
||||
|
||||
private int id;
|
||||
private String name;
|
||||
private String code;
|
||||
|
||||
Subject(int id, String name, String code)
|
||||
{
|
||||
this.id = id;
|
||||
this.name = name;
|
||||
this.code = code;
|
||||
}
|
||||
|
||||
public int getId()
|
||||
{
|
||||
return id;
|
||||
}
|
||||
|
||||
public String getName()
|
||||
{
|
||||
return name;
|
||||
}
|
||||
|
||||
public String getCode()
|
||||
{
|
||||
return code;
|
||||
}
|
||||
|
||||
public static Subject getByCode(String code)
|
||||
{
|
||||
return codeMap.get(code);
|
||||
}
|
||||
|
||||
private static List<Subject> list;
|
||||
private static Map<String, Subject> codeMap;
|
||||
public static List<Subject> list()
|
||||
{
|
||||
if (list != null) return list;
|
||||
EnumSet<Subject> statusSet = EnumSet.allOf(Subject.class);
|
||||
list = new ArrayList<>(statusSet);
|
||||
codeMap = list.stream().collect(Collectors.toMap(Subject::getCode, Subject -> Subject));
|
||||
return list;
|
||||
}
|
||||
|
||||
static
|
||||
{
|
||||
list();
|
||||
}
|
||||
|
||||
@Data
|
||||
public static class Dto
|
||||
{
|
||||
private int id;
|
||||
private String name;
|
||||
private String code;
|
||||
}
|
||||
|
||||
public Dto toDto()
|
||||
{
|
||||
Dto dto = new Dto();
|
||||
dto.setId(id);
|
||||
dto.setName(name);
|
||||
dto.setCode(code);
|
||||
return dto;
|
||||
}
|
||||
|
||||
private static List<Dto> dtoList;
|
||||
public static List<Dto> dtoList()
|
||||
{
|
||||
if (dtoList != null) return dtoList;
|
||||
List<Dto> dtoList = new ArrayList<>();
|
||||
|
||||
for (Subject subject: list())
|
||||
dtoList.add(subject.toDto());
|
||||
|
||||
return dtoList;
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user