一、将0,1,2,3 转换为 A,B,C,D。
1、创建枚举转换接口:
package org.jeecg.enums;
/**
* @ProjectName:
* @Package: org.jeecg.enums
* @ClassName: BaseEnum
* @Author:
* @Description: 枚举转换接口
* @Date: 2023/2/15 17:00
* @Version: 1.0
*/
public interface BaseEnum {
/***
* @Title: getCode
* @Param: []
* @description: 获取编码
* @author: TianLong
* @date: 2023/2/15 14:56
* @return: short
* @throws:
*/
int getCode();
/***
* @Title: getInfo
* @Param: []
* @description: 获取文本
* @author:
* @date: 2023/2/15 14:56
* @return: java.lang.String
* @throws:
*/
String getInfo();
/***
* @Title: getCodeToString
* @Param: []
* @description: 获取字符串格式的编码
* @author: TianLong
* @date: 2023/2/15 14:56
* @return: java.lang.String
* @throws:
*/
String getCodeToString();
}
2、创建枚举类:
package org.jeecg.enums;
/**
* @ProjectName: jeecg-boot
* @Package: org.jeecg.enums
* @ClassName: OptionEnum
* @Author: TianLong
* @Description: 选项枚举转换
* @Date: 2023/2/15 17:02
* @Version: 1.0
*/
public enum OptionEnum implements BaseEnum {
OPTION_A(0,"A"),
OPTION_B(1,"B"),
OPTION_C(2,"C"),
OPTION_D(3,"D"),
OPTION_E(4,"E"),
OPTION_F(5,"F"),
OPTION_G(6,"G");
private final int code;
private final String info;
OptionEnum(int code, String info){
this.code = code;
this.info = info;
}
@Override
public int getCode() {
return this.code;
}
@Override
public String getInfo() {
return this.info;
}
@Override
public String getCodeToString() {
return String.valueOf(code);
}
}
3、枚举应用,将正确答案转换为A,B,C,D:
@ApiOperation(value="t_society_problems-分页列表查询", notes="t_society_problems-分页列表查询")
@GetMapping(value = "/list")
public Result<IPage<TSocietyProblems>> queryPageList(TSocietyProblems tSocietyProblems,
Integer problemType,
String zfbz,
String problemContent,
@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
HttpServletRequest req) {
//列表查询 招标人#投标人#设计单位#施工单位 {"A":"招标人","投标人","设计单位","施工单位"}
Result<IPage<TSocietyProblems>> res= new Result<>();
Page<TSocietyProblems> pageList = new Page<>(pageNo, pageSize);
pageList = tSocietyProblemsService.getProblemPageList(pageList, tSocietyProblems);
List<TSocietyProblems> tSocietyProblems1 = pageList.getRecords();
for (int i = 0; i < tSocietyProblems1.size(); i++) {
String optionCorrect = tSocietyProblems1.get(i).getOptionCorrect();
//对正确答案进行枚举转换,如何只有一个正确答案走这个方法。 0~6 : A~G OPTION_CORRECT
if (StringUtils.isNotBlank(optionCorrect) && optionCorrect.length() == 1 ){
if (StringUtils.isNotBlank(optionCorrect) && optionCorrect.equals("0")){
tSocietyProblems = tSocietyProblems1.get(i).setOptionCorrect(OptionEnum.OPTION_A.getInfo());
}
if (StringUtils.isNotBlank(optionCorrect) && optionCorrect.equals("1")){
tSocietyProblems = tSocietyProblems1.get(i).setOptionCorrect(OptionEnum.OPTION_B.getInfo());
}
if (StringUtils.isNotBlank(optionCorrect) && optionCorrect.equals("2")){
tSocietyProblems = tSocietyProblems1.get(i).setOptionCorrect(OptionEnum.OPTION_C.getInfo());
}
if (StringUtils.isNotBlank(optionCorrect) && optionCorrect.equals("3")){
tSocietyProblems = tSocietyProblems1.get(i).setOptionCorrect(OptionEnum.OPTION_D.getInfo());
}
if (StringUtils.isNotBlank(optionCorrect) && optionCorrect.equals("4")){
tSocietyProblems = tSocietyProblems1.get(i).setOptionCorrect(OptionEnum.OPTION_E.getInfo());
}
if (StringUtils.isNotBlank(optionCorrect) && optionCorrect.equals("5")){
tSocietyProblems = tSocietyProblems1.get(i).setOptionCorrect(OptionEnum.OPTION_F.getInfo());
}
if (StringUtils.isNotBlank(optionCorrect) && optionCorrect.equals("6")){
tSocietyProblems = tSocietyProblems1.get(i).setOptionCorrect(OptionEnum.OPTION_G.getInfo());
}
}
//对正确答案进行枚举转换,如何有多个正确答案走这个方法。
if (StringUtils.isNotBlank(optionCorrect) && optionCorrect.length() > 1){
char[] charsOptionCorrect = new char[optionCorrect.length()];
for (int j = 0; j <optionCorrect.length(); j++) {
if ((optionCorrect.charAt(j)+"").equals("0") ||(optionCorrect.charAt(j)+"").equals("1") || (optionCorrect.charAt(j)+"").equals("2") || (optionCorrect.charAt(j)+"").equals("3") ){
if ((optionCorrect.charAt(j)+"").equals("0")){
charsOptionCorrect[j] = OptionEnum.OPTION_A.getInfo().charAt(0);
}
if ((optionCorrect.charAt(j)+"").equals("1")){
charsOptionCorrect[j] = OptionEnum.OPTION_B.getInfo().charAt(0);
}
if ((optionCorrect.charAt(j)+"").equals("2")){
charsOptionCorrect[j] = OptionEnum.OPTION_C.getInfo().charAt(0);
}
if ((optionCorrect.charAt(j)+"").equals("3")){
charsOptionCorrect[j] = OptionEnum.OPTION_D.getInfo().charAt(0);
}
if ((optionCorrect.charAt(j)+"").equals("4")){
charsOptionCorrect[j] = OptionEnum.OPTION_E.getInfo().charAt(0);
}
if ((optionCorrect.charAt(j)+"").equals("5")){
charsOptionCorrect[j] = OptionEnum.OPTION_F.getInfo().charAt(0);
}
if ((optionCorrect.charAt(j)+"").equals("6")){
charsOptionCorrect[j] = OptionEnum.OPTION_G.getInfo().charAt(0);
}
} else {
charsOptionCorrect[j] = optionCorrect.charAt(j);
}
}
tSocietyProblems = tSocietyProblems1.get(i).setOptionCorrect(new String(charsOptionCorrect));
}
res.setResult(pageList);
res.setSuccess(true);
return Result.OK("QUERY SUCCESS",pageList);
}