Merge remote-tracking branch 'origin/dev' into dev

This commit is contained in:
xbx 2024-03-27 19:51:30 +08:00
commit 2f11366f51
2 changed files with 13 additions and 6 deletions

View File

@ -89,8 +89,9 @@ public class CenterController {
}
//根据batch/college是否为空判断两种查询方式
@PostMapping("/getRateByCollege")
@GetMapping("/getRateByCollege")
public Result<JSONObject> getRateByCollege(@RequestParam("college") String college, @RequestParam("level") String level) {
System.out.println(college + " " + level);
if (level.equals("cet4")) {
Cet_4 cet = new Cet_4();
cet.setCollege(college);

View File

@ -14,6 +14,7 @@ import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
@ -37,12 +38,20 @@ public class Cet_4ServiceImpl extends ServiceImpl<Cet_4Mapper, Cet_4> implements
//根据学院查人数
queryWrapper.eq(Cet_4::getCollege, cet.getCollege()).ge(Cet_4::getResult, 425);
List<Cet_4> result = cet4Mapper.selectList(queryWrapper);
// System.out.println(result);
Map<Date, List<Cet_4>> collect = result.stream().collect(Collectors.groupingBy(Cet_4::getBatch));
for (Map.Entry<Date, List<Cet_4>> entry : collect.entrySet()) {
double sum = (double) getNumByCollege(cet, entry.getKey());
double size = entry.getValue().size();
double passRate = size / sum;
jsonObject.put(String.valueOf(entry.getKey()), passRate);
DecimalFormat decimalFormat = new DecimalFormat("#.####");
String rate = decimalFormat.format(passRate);
double res = Double.parseDouble(rate);
System.out.println(res);
Date key = entry.getKey();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String format = sdf.format(key);
jsonObject.put(format, res);
}
return Result.OK(jsonObject);
@ -69,11 +78,8 @@ public class Cet_4ServiceImpl extends ServiceImpl<Cet_4Mapper, Cet_4> implements
}
//对jsonObject的值进行排序
List<Map.Entry<String, Object>> list = new ArrayList<>(jsonObject.entrySet());
Collections.sort(list, (o1, o2) -> (double) o1.getValue() > (double) o2.getValue() ? -1 : 1);
jsonObject.clear();
for (Map.Entry<String, Object> stringObjectEntry : list) {
@ -81,7 +87,7 @@ public class Cet_4ServiceImpl extends ServiceImpl<Cet_4Mapper, Cet_4> implements
}
System.out.println(jsonObject);
return Result.OK(jsonObject);
} else return null;