From 6ea32ff395a036ff266da2de46e7ea174409581b Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Wed, 10 Jan 2024 11:25:38 +0800
Subject: [PATCH] 被考核人投票结果按名称、部门名称过滤

---
 src/main/java/org/springblade/modules/assessment/vo/AssessmentScoreVO.java                 |    4 ++--
 src/main/java/org/springblade/modules/assessment/mapper/AssessmentScoreMapper.xml          |   36 +++++++++++++++++++++---------------
 src/main/java/org/springblade/modules/assessment/controller/AssessmentScoreController.java |    7 +++++++
 3 files changed, 30 insertions(+), 17 deletions(-)

diff --git a/src/main/java/org/springblade/modules/assessment/controller/AssessmentScoreController.java b/src/main/java/org/springblade/modules/assessment/controller/AssessmentScoreController.java
index d6d060d..0805dca 100644
--- a/src/main/java/org/springblade/modules/assessment/controller/AssessmentScoreController.java
+++ b/src/main/java/org/springblade/modules/assessment/controller/AssessmentScoreController.java
@@ -103,6 +103,13 @@
 //		IPage<AssessmentScoreEntity> pages = assessmentScoreService.page(Condition.getPage(query),setEntityQueryWrapper);
 		assessmentScore.setType(type);
 		assessmentScore.setAssessmentTaskId(taskId);
+
+		//增加根据登录用户部门筛选
+//		boolean isadmin = AuthUtil.isAdmin();
+//		if (!isadmin) {
+//			assessmentScore.setDeptName();
+//		}
+
 		IPage<AssessmentScoreEntity> pages = assessmentScoreService.selectAssessmentScoreGroupByBeidPage(Condition.getPage(query), assessmentScore);
 
 		return R.data(AssessmentScoreWrapper.build().pageVO(pages));
diff --git a/src/main/java/org/springblade/modules/assessment/mapper/AssessmentScoreMapper.xml b/src/main/java/org/springblade/modules/assessment/mapper/AssessmentScoreMapper.xml
index 553a34d..8a09108 100644
--- a/src/main/java/org/springblade/modules/assessment/mapper/AssessmentScoreMapper.xml
+++ b/src/main/java/org/springblade/modules/assessment/mapper/AssessmentScoreMapper.xml
@@ -30,23 +30,29 @@
 
     <select id="selectAssessmentScoreGroupByBeidPage" resultMap="assessmentScoreResultMap">
         select a.id,a.assessment_task_id,a.be_id,a.score_user_id,SUM(a.weight*a.score_val*0.01) as score_val,a.type from yw_assessment_score a
-        LEFT JOIN blade_user b on (a.be_id = b.id)
-        LEFT JOIN blade_dept c on (a.be_id = c.id)
-    <where>
-        <if test="assessmentScore.type != null and assessmentScore.type != ''">
-            and a.type = #{assessmentScore.type}
+        <if test="assessmentScore.type != null and assessmentScore.type == 0">
+            LEFT JOIN blade_user b on (a.be_id = b.id)
+            left join blade_dept c on b.dept_id = c.id
         </if>
-        <if test="assessmentScore.assessmentTaskId != null and assessmentScore.assessmentTaskId != ''">
-            and a.assessment_task_id = #{assessmentScore.assessmentTaskId}
+        <if test="assessmentScore.type != null and assessmentScore.type == 1">
+            left join blade_dept c on a.be_id = c.id
         </if>
-        <if test="assessmentScore.userName != null and assessmentScore.userName != ''">
-            and b.name like concat('%', #{assessmentScore.userName},'%')
-        </if>
-        <if test="assessmentScore.deptName != null and assessmentScore.deptName != ''">
-            and c.dept_name like concat('%', #{assessmentScore.deptName},'%')
-        </if>
-    </where>
-    group by a.be_id
+
+        <where>
+            <if test="assessmentScore.type != null and assessmentScore.type != ''">
+                and a.type = #{assessmentScore.type}
+            </if>
+            <if test="assessmentScore.assessmentTaskId != null and assessmentScore.assessmentTaskId != ''">
+                and a.assessment_task_id = #{assessmentScore.assessmentTaskId}
+            </if>
+            <if test="assessmentScore.userName != null and assessmentScore.userName != ''">
+                and b.name like concat('%', #{assessmentScore.userName},'%')
+            </if>
+            <if test="assessmentScore.deptName != null and assessmentScore.deptName != ''">
+                and c.dept_name like concat('%', #{assessmentScore.deptName},'%')
+            </if>
+        </where>
+        group by a.be_id
     </select>
 
 
diff --git a/src/main/java/org/springblade/modules/assessment/vo/AssessmentScoreVO.java b/src/main/java/org/springblade/modules/assessment/vo/AssessmentScoreVO.java
index 10579e4..007ac14 100644
--- a/src/main/java/org/springblade/modules/assessment/vo/AssessmentScoreVO.java
+++ b/src/main/java/org/springblade/modules/assessment/vo/AssessmentScoreVO.java
@@ -16,10 +16,9 @@
  */
 package org.springblade.modules.assessment.vo;
 
-import org.springblade.modules.assessment.entity.AssessmentScoreEntity;
-import org.springblade.core.tool.node.INode;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
+import org.springblade.modules.assessment.entity.AssessmentScoreEntity;
 
 /**
  * 考核评分 视图实体类
@@ -35,6 +34,7 @@
 	//被考核人
 	private String userName;
 	private String code;//工号
+	private String deptId;//部门id
 	private String deptName;//部门
 	private String postName;//职位
 

--
Gitblit v1.9.3