From 8b262e97118ce2f7cdb52277a90ec393f1396e9d Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Tue, 09 Jan 2024 15:57:35 +0800
Subject: [PATCH] 公司评优、部门评优结果

---
 src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateTaskCategoryWrapper.java |   47 ++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 46 insertions(+), 1 deletions(-)

diff --git a/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateTaskCategoryWrapper.java b/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateTaskCategoryWrapper.java
index fae6c55..d253370 100644
--- a/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateTaskCategoryWrapper.java
+++ b/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateTaskCategoryWrapper.java
@@ -16,11 +16,20 @@
  */
 package org.springblade.modules.evaluate.wrapper;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.springblade.core.mp.support.BaseEntityWrapper;
 import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.core.tool.utils.SpringUtil;
+import org.springblade.modules.evaluate.entity.EvaluateCandidateResultEntity;
 import org.springblade.modules.evaluate.entity.EvaluateTaskCategoryEntity;
+import org.springblade.modules.evaluate.entity.EvaluateTaskEntity;
+import org.springblade.modules.evaluate.service.IEvaluateCandidateResultService;
+import org.springblade.modules.evaluate.service.IEvaluateTaskService;
 import org.springblade.modules.evaluate.vo.EvaluateTaskCategoryVO;
-import java.util.Objects;
+
+import java.util.*;
 
 /**
  * 评优任务类别 包装类,返回视图层所需的字段
@@ -29,6 +38,14 @@
  * @since 2024-01-04
  */
 public class EvaluateTaskCategoryWrapper extends BaseEntityWrapper<EvaluateTaskCategoryEntity, EvaluateTaskCategoryVO>  {
+
+	private static final IEvaluateTaskService evaluateTaskService;
+	private static final IEvaluateCandidateResultService evaluateCandidateResultService;
+
+	static {
+		evaluateTaskService = SpringUtil.getBean(IEvaluateTaskService.class);
+		evaluateCandidateResultService = SpringUtil.getBean(IEvaluateCandidateResultService.class);
+	}
 
 	public static EvaluateTaskCategoryWrapper build() {
 		return new EvaluateTaskCategoryWrapper();
@@ -47,4 +64,32 @@
 	}
 
 
+	public Object listByResult(List<EvaluateTaskCategoryEntity> list) {
+		List<Map<String,Object>> ret = new ArrayList<>();
+		for (EvaluateTaskCategoryEntity po: list) {
+			Map<String,Object> map = new HashMap<>();
+			map.put("category",po);
+
+			QueryWrapper queryWrapper = new QueryWrapper();
+			queryWrapper.eq("evaluate_task_category_id", po.getId());
+			queryWrapper.select("*,count(*)");
+			EvaluateTaskEntity taskEntity = evaluateTaskService.getById(po.getId());
+			if (taskEntity.getType() == 0) {
+				queryWrapper.groupBy("user_id");
+			} else {
+				queryWrapper.groupBy("dept_id");
+			}
+
+			queryWrapper.orderByDesc("count(*)");
+
+			Page page = new Page(1,po.getPeopleNum());
+
+			IPage<List<EvaluateCandidateResultEntity>> entities = evaluateCandidateResultService.page(page, queryWrapper);
+			map.put("resultList",entities.getRecords());
+
+			ret.add(map);
+		}
+
+		return ret;
+	}
 }

--
Gitblit v1.9.3