From 70857448956877f33d49f7df78fb0b4b5d360695 Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Mon, 15 Jan 2024 11:35:50 +0800
Subject: [PATCH] 第一轮结果返回是否添加了候选人字段

---
 src/main/java/org/springblade/modules/evaluate/mapper/EvaluateTaskReferrerMapper.xml             |   34 +++++++++++++++++
 src/main/java/org/springblade/modules/evaluate/mapper/EvaluateTaskReferrerMapper.java            |    3 +
 src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateTaskReferrerServiceImpl.java |    6 +++
 src/main/java/org/springblade/modules/evaluate/service/IEvaluateTaskReferrerService.java         |    3 +
 src/main/java/org/springblade/modules/evaluate/controller/EvaluateTaskReferrerController.java    |   15 ++++---
 5 files changed, 55 insertions(+), 6 deletions(-)

diff --git a/src/main/java/org/springblade/modules/evaluate/controller/EvaluateTaskReferrerController.java b/src/main/java/org/springblade/modules/evaluate/controller/EvaluateTaskReferrerController.java
index 6af1ffc..f229c74 100644
--- a/src/main/java/org/springblade/modules/evaluate/controller/EvaluateTaskReferrerController.java
+++ b/src/main/java/org/springblade/modules/evaluate/controller/EvaluateTaskReferrerController.java
@@ -104,12 +104,15 @@
 	 */
 	@GetMapping("/list/{taskId}")
 	public R listByTaskId(@PathVariable("taskId") Long taskId, Query query) {
-		QueryWrapper queryWrapper = new QueryWrapper();
-		queryWrapper.select("*, count(*) as voteNum");
-		queryWrapper.eq("evaluate_task_id", taskId);
-		queryWrapper.orderByDesc("dept_name,count(*)");
-		queryWrapper.groupBy("user_id");
-		return R.data(evaluateTaskReferrerService.pageMaps(Condition.getPage(query), queryWrapper));
+//		QueryWrapper queryWrapper = new QueryWrapper();
+//		queryWrapper.select("*, count(*) as voteNum");
+//		queryWrapper.eq("evaluate_task_id", taskId);
+//		queryWrapper.orderByDesc("dept_name,count(*)");
+//		queryWrapper.groupBy("user_id");
+//		return R.data(evaluateTaskReferrerService.pageMaps(Condition.getPage(query), queryWrapper));
+		EvaluateTaskReferrerVO evaluateTaskReferrerVO = new EvaluateTaskReferrerVO();
+		evaluateTaskReferrerVO.setEvaluateTaskId(taskId);
+		return R.data(evaluateTaskReferrerService.selectEvaluateTaskReferrerMapPage(Condition.getPage(query), evaluateTaskReferrerVO));
 	}
 
 	/**
diff --git a/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateTaskReferrerMapper.java b/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateTaskReferrerMapper.java
index d3fcc41..9271f8f 100644
--- a/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateTaskReferrerMapper.java
+++ b/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateTaskReferrerMapper.java
@@ -25,6 +25,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.apache.ibatis.annotations.Param;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 评优任务推荐人员表 Mapper 接口
@@ -43,6 +44,8 @@
 	 */
 	List<EvaluateTaskReferrerVO> selectEvaluateTaskReferrerPage(IPage page, EvaluateTaskReferrerVO evaluateTaskReferrer);
 
+	List<Map> selectEvaluateTaskReferrerMapPage(IPage page, EvaluateTaskReferrerVO evaluateTaskReferrer);
+
 	/**
 	 * 投票详情集合 分页
 	 * @param page
diff --git a/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateTaskReferrerMapper.xml b/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateTaskReferrerMapper.xml
index 5771f5a..a7d95d5 100644
--- a/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateTaskReferrerMapper.xml
+++ b/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateTaskReferrerMapper.xml
@@ -24,11 +24,45 @@
         <result column="is_deleted" property="isDeleted"/>
     </resultMap>
 
+    <resultMap id="mapResult" type="java.util.Map">
+        <result column="id" property="id"/>
+        <result column="tenant_id" property="tenantId"/>
+        <result column="evaluate_task_id" property="evaluateTaskId"/>
+        <result column="evaluate_task_category_id" property="evaluateTaskCategoryId"/>
+        <result column="evaluate_task_category_name" property="evaluateTaskCategoryName"/>
+        <result column="user_id" property="userId"/>
+        <result column="user_name" property="userName"/>
+        <result column="dept_id" property="deptId"/>
+        <result column="dept_name" property="deptName"/>
+        <result column="post_name" property="postName"/>
+        <result column="remark" property="remark"/>
+        <result column="create_user" property="createUser"/>
+        <result column="create_dept" property="createDept"/>
+        <result column="create_time" property="createTime"/>
+        <result column="update_user" property="updateUser"/>
+        <result column="update_time" property="updateTime"/>
+        <result column="status" property="status"/>
+        <result column="is_deleted" property="isDeleted"/>
+    </resultMap>
+
 
     <select id="selectEvaluateTaskReferrerPage" resultMap="evaluateTaskReferrerResultMap">
         select * from yw_evaluate_task_referrer where is_deleted = 0
     </select>
 
+    <select id="selectEvaluateTaskReferrerMapPage" resultMap="mapResult">
+        select *,count(*) as voteNum,
+               (
+                   select case
+                              WHEN count(*) > 0 then 1 else 0 end from yw_evaluate_task_category_candidate b
+                                                                           LEFT JOIN yw_evaluate_task_category c ON (b.evaluate_task_category_id = c.id)
+                   where a.user_id = b.user_id and a.evaluate_task_id = c.evaluate_task_id
+               ) as isAddCandidate
+        from yw_evaluate_task_referrer a
+        where a.is_deleted = 0 and evaluate_task_id = #{evaluateTaskReferrer.evaluateTaskId}
+        group by user_id
+    </select>
+
     <select id="selectReferrerInfoPage" resultType="org.springblade.modules.evaluate.vo.EvaluateTaskReferrerVO">
         SELECT a.*,b.`name` as voteUserName,c.dept_name AS voteDeptName,d.post_name AS votePostName from (select * from yw_evaluate_task_referrer where is_deleted = 0 ) a
         LEFT JOIN blade_user b ON (a.create_user = b.id)
diff --git a/src/main/java/org/springblade/modules/evaluate/service/IEvaluateTaskReferrerService.java b/src/main/java/org/springblade/modules/evaluate/service/IEvaluateTaskReferrerService.java
index b151a15..02090d2 100644
--- a/src/main/java/org/springblade/modules/evaluate/service/IEvaluateTaskReferrerService.java
+++ b/src/main/java/org/springblade/modules/evaluate/service/IEvaluateTaskReferrerService.java
@@ -24,6 +24,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springblade.core.mp.base.BaseService;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 评优任务推荐人员表 服务类
@@ -41,6 +42,8 @@
 	 */
 	IPage<EvaluateTaskReferrerVO> selectEvaluateTaskReferrerPage(IPage<EvaluateTaskReferrerVO> page, EvaluateTaskReferrerVO evaluateTaskReferrer);
 
+	IPage<Map> selectEvaluateTaskReferrerMapPage(IPage<EvaluateTaskReferrerVO> page, EvaluateTaskReferrerVO evaluateTaskReferrer);
+
 	/**
 	 * 投票详情集合 分页
 	 * @param page
diff --git a/src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateTaskReferrerServiceImpl.java b/src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateTaskReferrerServiceImpl.java
index 38f411c..e4451f5 100644
--- a/src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateTaskReferrerServiceImpl.java
+++ b/src/main/java/org/springblade/modules/evaluate/service/impl/EvaluateTaskReferrerServiceImpl.java
@@ -27,6 +27,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springblade.core.mp.base.BaseServiceImpl;
 import java.util.List;
+import java.util.Map;
 
 /**
  * 评优任务推荐人员表 服务实现类
@@ -43,6 +44,11 @@
 	}
 
 	@Override
+	public IPage<Map> selectEvaluateTaskReferrerMapPage(IPage page, EvaluateTaskReferrerVO evaluateTaskReferrer) {
+		return page.setRecords(baseMapper.selectEvaluateTaskReferrerMapPage(page, evaluateTaskReferrer));
+	}
+
+	@Override
 	public IPage<EvaluateTaskReferrerVO> selectReferrerInfoPage(IPage<EvaluateTaskReferrerVO> page, EvaluateTaskReferrerVO evaluateTaskReferrer) {
 		return page.setRecords(baseMapper.selectReferrerInfoPage(page, evaluateTaskReferrer));
 	}

--
Gitblit v1.9.3