Merge remote-tracking branch 'refs/remotes/upstream/dev' into dev

This commit is contained in:
YuNan 2024-10-23 18:51:49 +08:00
commit 519a3dc0f8
3 changed files with 31 additions and 20 deletions

View File

@ -2,6 +2,7 @@ package org.jeecg.modules.service;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.jeecg.common.api.vo.Result; import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.dto.getRateByEntryDateDto; import org.jeecg.modules.dto.getRateByEntryDateDto;
import org.jeecg.modules.dto.getRateByMajorAndLastestBatchDto; import org.jeecg.modules.dto.getRateByMajorAndLastestBatchDto;
@ -32,6 +33,7 @@ public interface ICet_4Service extends IService<Cet_4> {
Result<JSONObject> getDataByStudent(JSONObject jsonObject); Result<JSONObject> getDataByStudent(JSONObject jsonObject);
JSONObject getGradeByBatch(Date batch, String college); JSONObject getGradeByBatch(Date batch, String college);
boolean cleanData(); boolean cleanData();
Result<JSONObject> getRateByMajorAndLastestBatch(getRateByMajorAndLastestBatchDto getRateByMajorAndLastestBatchParam); Result<JSONObject> getRateByMajorAndLastestBatch(getRateByMajorAndLastestBatchDto getRateByMajorAndLastestBatchParam);
@ -39,5 +41,6 @@ public interface ICet_4Service extends IService<Cet_4> {
Result<JSONObject> getRateByEntryDate(getRateByEntryDateDto getRateByEntryDateDtoParams); Result<JSONObject> getRateByEntryDate(getRateByEntryDateDto getRateByEntryDateDtoParams);
Result<JSONObject> loadImportDataList(); Result<JSONObject> loadImportDataList();
List<JSONObject> getJsonObjects(Map<Object, Long> map);
List<JSONObject> getJsonObjects(List<Map<String, Object>> list);
} }

View File

@ -5,6 +5,7 @@ import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.jeecg.common.api.vo.Result; import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.dto.getRateByEntryDateDto; import org.jeecg.modules.dto.getRateByEntryDateDto;
@ -626,26 +627,27 @@ public class Cet_4ServiceImpl extends ServiceImpl<Cet_4Mapper, Cet_4> implements
@Override @Override
public Result<JSONObject> loadImportDataList() { public Result<JSONObject> loadImportDataList() {
List<Cet_4> list = list(); // 创建 QueryWrapper
Map<Object, Long> map = centerService.dealList(list, Cet_4::getBatch); QueryWrapper<Cet_4> queryWrapper = new QueryWrapper<>();
List<JSONObject> res = getJsonObjects(map); queryWrapper.select("batch", "COUNT(*) AS count")
.groupBy("batch");
// 执行查询获取结果列表
List<Map<String, Object>> list = this.listMaps(queryWrapper);
List<JSONObject> res = getJsonObjects(list);
return Result.ok(new JSONObject().fluentPut("data", res)); return Result.ok(new JSONObject().fluentPut("data", res));
} }
@NotNull @NotNull
public List<JSONObject> getJsonObjects(Map<Object, Long> map) { @Override
public List<JSONObject> getJsonObjects(List<Map<String, Object>> list) {
List<JSONObject> res = new ArrayList<>(); List<JSONObject> res = new ArrayList<>();
if (map != null && !map.isEmpty()) { for (Map<String, Object> map : list) {
for (Map.Entry<Object, Long> entry : map.entrySet()) {
JSONObject jsonObject = new JSONObject(); JSONObject jsonObject = new JSONObject();
//格式化key为"yyyy-MM-dd" jsonObject.put("batch", map.get("batch"));
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); jsonObject.put("attendNumber", map.get("count"));
jsonObject.fluentPut("batch", sdf.format(entry.getKey()))
.fluentPut("attendNumber", entry.getValue());
res.add(jsonObject); res.add(jsonObject);
} }
}
// res按照batch倒序排序
res.sort((o1, o2) -> o2.getString("batch").compareTo(o1.getString("batch"))); res.sort((o1, o2) -> o2.getString("batch").compareTo(o1.getString("batch")));
return res; return res;
} }

View File

@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result; import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.entity.Cet4_major; import org.jeecg.modules.entity.Cet4_major;
@ -110,9 +111,14 @@ public class Cet_6ServiceImpl extends ServiceImpl<Cet_6Mapper, Cet_6> implements
@Override @Override
public Result<JSONObject> loadImportDataList() { public Result<JSONObject> loadImportDataList() {
List<Cet_6> list = list(); // 创建 QueryWrapper
Map<Object, Long> map = centerService.dealList(list, Cet_6::getBatch); QueryWrapper<Cet_6> queryWrapper = new QueryWrapper<>();
List<JSONObject> res =cet4Service.getJsonObjects(map); queryWrapper.select("batch", "COUNT(*) AS count")
.groupBy("batch");
// 执行查询获取结果列表
List<Map<String, Object>> list = this.listMaps(queryWrapper);
List<JSONObject> res = cet4Service.getJsonObjects(list);
return Result.ok(new JSONObject().fluentPut("data", res)); return Result.ok(new JSONObject().fluentPut("data", res));
} }