From 9d8243be2ea2f56259bc41b74daaa392a05f9a4a Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Wed, 27 Dec 2023 09:16:18 +0800
Subject: [PATCH] 评优结果

---
 src/main/java/org/springblade/modules/evaluate/vo/EvaluateCandidateVO.java           |    2 +
 src/main/java/org/springblade/modules/evaluate/vo/EvaluateResultVO.java              |    4 ++
 src/main/java/org/springblade/modules/system/controller/RoleController.java          |    1 
 src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateCandidateWrapper.java |   31 +++++++++++++++
 src/main/java/org/springblade/modules/evaluate/mapper/EvaluateCandidateMapper.xml    |   13 +++++-
 src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateResultWrapper.java    |   26 +++++++++++++
 6 files changed, 75 insertions(+), 2 deletions(-)

diff --git a/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateCandidateMapper.xml b/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateCandidateMapper.xml
index 4857720..288a581 100644
--- a/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateCandidateMapper.xml
+++ b/src/main/java/org/springblade/modules/evaluate/mapper/EvaluateCandidateMapper.xml
@@ -22,9 +22,18 @@
         <result column="is_deleted" property="isDeleted"/>
     </resultMap>
 
+    <resultMap id="evaluateCandidateResultVOMap" type="org.springblade.modules.evaluate.vo.EvaluateCandidateVO" extends="evaluateCandidateResultMap">
+        <result column="vote_num" property="voteNum"/>
+    </resultMap>
 
-    <select id="selectEvaluateCandidatePage" resultMap="evaluateCandidateResultMap">
-        select * from yw_evaluate_candidate where is_deleted = 0
+
+    <select id="selectEvaluateCandidatePage" resultMap="evaluateCandidateResultVOMap">
+        select * ,
+        ( select count(*) from yw_evaluate_result b where b.evaluate_task_id = a.evaluate_task_id and a.user_id = b.be_id and b.type = 2) as vote_num
+        from yw_evaluate_candidate a where is_deleted = 0
+        <if test="evaluateCandidate.evaluateTaskId !=null">
+            AND evaluate_task_id = #{evaluateCandidate.evaluateTaskId}
+        </if>
     </select>
 
 
diff --git a/src/main/java/org/springblade/modules/evaluate/vo/EvaluateCandidateVO.java b/src/main/java/org/springblade/modules/evaluate/vo/EvaluateCandidateVO.java
index 89fbb42..8126c10 100644
--- a/src/main/java/org/springblade/modules/evaluate/vo/EvaluateCandidateVO.java
+++ b/src/main/java/org/springblade/modules/evaluate/vo/EvaluateCandidateVO.java
@@ -32,4 +32,6 @@
 public class EvaluateCandidateVO extends EvaluateCandidateEntity {
 	private static final long serialVersionUID = 1L;
 
+	private Long voteNum;
+
 }
diff --git a/src/main/java/org/springblade/modules/evaluate/vo/EvaluateResultVO.java b/src/main/java/org/springblade/modules/evaluate/vo/EvaluateResultVO.java
index 24006d2..f47890d 100644
--- a/src/main/java/org/springblade/modules/evaluate/vo/EvaluateResultVO.java
+++ b/src/main/java/org/springblade/modules/evaluate/vo/EvaluateResultVO.java
@@ -32,4 +32,8 @@
 public class EvaluateResultVO extends EvaluateResultEntity {
 	private static final long serialVersionUID = 1L;
 
+	private String scoreUserName;
+	private String scoreDeptName;
+	private String scorePostName;
+
 }
diff --git a/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateCandidateWrapper.java b/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateCandidateWrapper.java
index b50cc7e..3a91a94 100644
--- a/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateCandidateWrapper.java
+++ b/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateCandidateWrapper.java
@@ -16,10 +16,18 @@
  */
 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.EvaluateCandidateEntity;
+import org.springblade.modules.evaluate.entity.EvaluateResultEntity;
+import org.springblade.modules.evaluate.service.IEvaluateResultService;
 import org.springblade.modules.evaluate.vo.EvaluateCandidateVO;
+
+import java.util.List;
 import java.util.Objects;
 
 /**
@@ -29,6 +37,12 @@
  * @since 2023-12-23
  */
 public class EvaluateCandidateWrapper extends BaseEntityWrapper<EvaluateCandidateEntity, EvaluateCandidateVO>  {
+
+	private static final IEvaluateResultService evaluateResultService;
+
+	static {
+		evaluateResultService = SpringUtil.getBean(IEvaluateResultService.class);
+	}
 
 	public static EvaluateCandidateWrapper build() {
 		return new EvaluateCandidateWrapper();
@@ -46,5 +60,22 @@
 		return evaluateCandidateVO;
 	}
 
+	@Override
+	public IPage<EvaluateCandidateVO> pageVO(IPage<EvaluateCandidateEntity> pages) {
+		List<EvaluateCandidateVO> records = listVO(pages.getRecords());
+
+		for (EvaluateCandidateVO vo : records) {
+			QueryWrapper<EvaluateResultEntity> queryWrapper = new QueryWrapper<>();
+			queryWrapper.eq("be_id",vo.getUserId());
+			queryWrapper.eq("evaluate_task_id",vo.getEvaluateTaskId());
+			queryWrapper.eq("type", 2);
+			vo.setVoteNum(evaluateResultService.count(queryWrapper));
+		}
+
+		IPage<EvaluateCandidateVO> pageVo = new Page<>(pages.getCurrent(), pages.getSize(), pages.getTotal());
+		pageVo.setRecords(records);
+		return pageVo;
+	}
+
 
 }
diff --git a/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateResultWrapper.java b/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateResultWrapper.java
index ba81cbf..30c10ac 100644
--- a/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateResultWrapper.java
+++ b/src/main/java/org/springblade/modules/evaluate/wrapper/EvaluateResultWrapper.java
@@ -16,10 +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.common.cache.SysCache;
+import org.springblade.common.cache.UserCache;
 import org.springblade.core.mp.support.BaseEntityWrapper;
 import org.springblade.core.tool.utils.BeanUtil;
+import org.springblade.modules.evaluate.entity.EvaluateCandidateEntity;
 import org.springblade.modules.evaluate.entity.EvaluateResultEntity;
+import org.springblade.modules.evaluate.vo.EvaluateCandidateVO;
 import org.springblade.modules.evaluate.vo.EvaluateResultVO;
+import org.springblade.modules.system.entity.User;
+
+import java.util.List;
 import java.util.Objects;
 
 /**
@@ -46,5 +56,21 @@
 		return evaluateResultVO;
 	}
 
+	@Override
+	public IPage<EvaluateResultVO> pageVO(IPage<EvaluateResultEntity> pages) {
+		List<EvaluateResultVO> records = listVO(pages.getRecords());
+
+		for (EvaluateResultVO vo : records) {
+			User user = UserCache.getUser(vo.getScoreUserId()); //评分人
+			vo.setScoreUserName(user.getName());
+			vo.setScoreDeptName(SysCache.getDeptName(Long.valueOf(user.getDeptId())));
+			vo.setScorePostName(SysCache.getPostName(Long.valueOf(user.getPostId())));
+		}
+
+		IPage<EvaluateResultVO> pageVo = new Page<>(pages.getCurrent(), pages.getSize(), pages.getTotal());
+		pageVo.setRecords(records);
+		return pageVo;
+	}
+
 
 }
diff --git a/src/main/java/org/springblade/modules/system/controller/RoleController.java b/src/main/java/org/springblade/modules/system/controller/RoleController.java
index 928dc04..796a445 100644
--- a/src/main/java/org/springblade/modules/system/controller/RoleController.java
+++ b/src/main/java/org/springblade/modules/system/controller/RoleController.java
@@ -88,6 +88,7 @@
 	@ApiOperation(value = "列表", notes = "传入role")
 	public R<List<RoleVO>> list(@ApiIgnore @RequestParam Map<String, Object> role, BladeUser bladeUser) {
 		QueryWrapper<Role> queryWrapper = Condition.getQueryWrapper(role, Role.class);
+		queryWrapper.orderByAsc("sort");
 		List<Role> list = roleService.list((!bladeUser.getTenantId().equals(BladeConstant.ADMIN_TENANT_ID)) ? queryWrapper.lambda().eq(Role::getTenantId, bladeUser.getTenantId()) : queryWrapper);
 		return R.data(RoleWrapper.build().listNodeVO(list));
 	}

--
Gitblit v1.9.3