From bd8d88e5e984e59a5c895ec1a254e3dbae1f9f21 Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Tue, 21 Jan 2025 14:55:39 +0800
Subject: [PATCH] 修复

---
 src/main/java/org/springblade/modules/assessment/controller/AssessmentScoreController.java |  133 +++++++++++++++++++++++++++++++-------------
 1 files changed, 93 insertions(+), 40 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 7bf8318..08bc08d 100644
--- a/src/main/java/org/springblade/modules/assessment/controller/AssessmentScoreController.java
+++ b/src/main/java/org/springblade/modules/assessment/controller/AssessmentScoreController.java
@@ -16,42 +16,42 @@
  */
 package org.springblade.modules.assessment.controller;
 
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
-import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
-import javax.validation.Valid;
-
-import org.springblade.core.secure.BladeUser;
+import org.springblade.core.boot.ctrl.BladeController;
+import org.springblade.core.excel.util.ExcelUtil;
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.constant.BladeConstant;
+import org.springblade.core.tool.utils.DateUtil;
 import org.springblade.core.tool.utils.Func;
-import org.springblade.modules.assessment.entity.AssessmentSetDeptEntity;
+import org.springblade.modules.assessment.entity.AssessmentScoreEntity;
+import org.springblade.modules.assessment.entity.AssessmentSetAssessorEntity;
 import org.springblade.modules.assessment.entity.AssessmentSetEntity;
-import org.springblade.modules.assessment.entity.AssessmentTaskEntity;
+import org.springblade.modules.assessment.excel.AssessmentScoreExcel;
+import org.springblade.modules.assessment.service.IAssessmentScoreService;
+import org.springblade.modules.assessment.service.IAssessmentSetAssessorService;
 import org.springblade.modules.assessment.service.IAssessmentSetService;
 import org.springblade.modules.assessment.service.IAssessmentTaskService;
-import org.springframework.web.bind.annotation.*;
-import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.metadata.IPage;
-import org.springblade.modules.assessment.entity.AssessmentScoreEntity;
 import org.springblade.modules.assessment.vo.AssessmentScoreVO;
-import org.springblade.modules.assessment.excel.AssessmentScoreExcel;
 import org.springblade.modules.assessment.wrapper.AssessmentScoreWrapper;
-import org.springblade.modules.assessment.service.IAssessmentScoreService;
-import org.springblade.core.boot.ctrl.BladeController;
-import org.springblade.core.tool.utils.DateUtil;
-import org.springblade.core.excel.util.ExcelUtil;
-import org.springblade.core.tool.constant.BladeConstant;
+import org.springframework.web.bind.annotation.*;
 import springfox.documentation.annotations.ApiIgnore;
 
+import javax.servlet.http.HttpServletResponse;
+import javax.validation.Valid;
 import java.util.ArrayList;
 import java.util.HashMap;
-import java.util.Map;
 import java.util.List;
-import javax.servlet.http.HttpServletResponse;
+import java.util.Map;
 
 /**
  * 考核评分 控制器
@@ -66,10 +66,11 @@
 public class AssessmentScoreController extends BladeController {
 
 	private final IAssessmentScoreService assessmentScoreService;
+	private final IAssessmentSetService assessmentSetService;
 
 	private final IAssessmentTaskService assessmentTaskService;
 
-	private final IAssessmentSetService assessmentSetService;
+	private final IAssessmentSetAssessorService assessmentSetAssessorService;
 
 	/**
 	 * 考核评分 详情
@@ -92,15 +93,33 @@
 		return R.data(AssessmentScoreWrapper.build().pageVO(pages));
 	}
 
+	/**
+	 * 考核评分记录列表
+	 * @param assessmentScore
+	 * @param query
+	 * @return
+	 */
+	@GetMapping("/listInfo")
+	@ApiOperationSupport(order = 2)
+	@ApiOperation(value = "分页", notes = "传入assessmentScore")
+	public R<IPage<AssessmentScoreVO>> listInfo(AssessmentScoreVO assessmentScore, Query query) {
+		return R.data(assessmentScoreService.selectAssessmentScoreInfoV2Page(Condition.getPage(query), assessmentScore));
+	}
+
 	@GetMapping("/listGroupByTask/{type}/{taskId}")
-	@ApiOperation(value = "评分列表", notes = "传入要查询的用户id")
-	public R listGroupByTask(@ApiIgnore @PathVariable Integer type,@PathVariable Long taskId, Query query) {
-		QueryWrapper<AssessmentScoreEntity> setEntityQueryWrapper = new QueryWrapper<>();
-		setEntityQueryWrapper.select("id,assessment_task_id,be_id,score_user_id,SUM(weight*score_val*0.01) as score_val,type");
-		setEntityQueryWrapper.eq("type", type);
-		setEntityQueryWrapper.eq("assessment_task_id",taskId);
-		setEntityQueryWrapper.groupBy("be_id");
-		IPage<AssessmentScoreEntity> pages = assessmentScoreService.page(Condition.getPage(query),setEntityQueryWrapper);
+	@ApiOperation(value = "后台考核任务考核结果", notes = "传入要查询的任务id")
+	public R listGroupByTask(@ApiIgnore @PathVariable Integer type,@PathVariable Long taskId, Query query, AssessmentScoreVO assessmentScore) {
+
+		assessmentScore.setType(type);
+		assessmentScore.setAssessmentTaskId(taskId);
+
+		//增加根据登录用户部门筛选
+		boolean isadmin = AuthUtil.isAdmin();
+		if (!isadmin) {
+			assessmentScore.setDeptId(AuthUtil.getDeptId());
+		}
+
+		IPage<AssessmentScoreEntity> pages = assessmentScoreService.selectAssessmentScoreGroupByBeidPage(Condition.getPage(query), assessmentScore);
 
 		return R.data(AssessmentScoreWrapper.build().pageVO(pages));
 	}
@@ -108,25 +127,27 @@
 	@GetMapping("/listMyScore/{userId}")
 	@ApiOperation(value = "我的得分列表", notes = "传入要查询的用户id")
 	public R listMyScore(@ApiIgnore @PathVariable Long userId) {
-		QueryWrapper<AssessmentTaskEntity> taskEntityQueryWrapper = new QueryWrapper<>();
-		taskEntityQueryWrapper.eq("type", 0l);
-		List<AssessmentTaskEntity> assessmentTaskEntityList = assessmentTaskService.list(taskEntityQueryWrapper);
+		QueryWrapper<AssessmentSetEntity> setEntityQueryWrapper = new QueryWrapper<>();
+		setEntityQueryWrapper.eq("user_id",userId);
+		List<AssessmentSetEntity> assessmentSetEntities = assessmentSetService.list(setEntityQueryWrapper);
+
 		List<Map<String,Object>> retList = new ArrayList<>();
-		for (AssessmentTaskEntity po:assessmentTaskEntityList) {
+		for (AssessmentSetEntity po:assessmentSetEntities) {
+
 			Map<String,Object> map = new HashMap<>();
+			map.put("assessmentSetVO", po.getAssessmentTaskId()); //被考核人
+			map.put("assessmentTaskVO", assessmentTaskService.getById(po.getAssessmentTaskId())); //考核任务
 
-			QueryWrapper<AssessmentSetEntity> setEntityQueryWrapper = new QueryWrapper<>();
-			setEntityQueryWrapper.eq("user_id",userId);
-			long userAssCount = assessmentSetService.count(setEntityQueryWrapper);
+			QueryWrapper<AssessmentSetAssessorEntity> assessmentSetAssessorEntityQueryWrapper = new QueryWrapper<>();
+			assessmentSetAssessorEntityQueryWrapper.eq("assessment_set_id",po.getId());
+			long userAssCount = assessmentSetAssessorService.count(assessmentSetAssessorEntityQueryWrapper);
+
 			if (userAssCount > 0) {
-
-				map.put("assessmentTaskVO", po);
-
-				//已经考核数量 获取得分
+//				已经考核数量 获取得分
 				QueryWrapper<AssessmentScoreEntity> scoreEntityQueryWrapper = new QueryWrapper<>();
 				scoreEntityQueryWrapper.eq("be_id",userId);
 				scoreEntityQueryWrapper.eq("type", 0l);
-				scoreEntityQueryWrapper.eq("assessment_task_id",po.getId());
+				scoreEntityQueryWrapper.eq("assessment_task_id",po.getAssessmentTaskId());
 				List<AssessmentScoreEntity> scoreEntityList = assessmentScoreService.list(scoreEntityQueryWrapper);
 				double score = 0.0;
 				for (AssessmentScoreEntity scoreEntity:scoreEntityList) {
@@ -137,9 +158,41 @@
 				retList.add(map);
 			}
 
-
 		}
+
 		return R.data(retList);
+//		QueryWrapper<AssessmentTaskEntity> taskEntityQueryWrapper = new QueryWrapper<>();
+//		taskEntityQueryWrapper.eq("type", 0l);
+//		List<AssessmentTaskEntity> assessmentTaskEntityList = assessmentTaskService.list(taskEntityQueryWrapper);
+//		List<Map<String,Object>> retList = new ArrayList<>();
+//		for (AssessmentTaskEntity po:assessmentTaskEntityList) {
+//			Map<String,Object> map = new HashMap<>();
+//
+//			QueryWrapper<AssessmentSetAssessorEntity> setEntityQueryWrapper = new QueryWrapper<>();
+//			setEntityQueryWrapper.eq("user_id",userId);
+//			long userAssCount = assessmentSetAssessorService.count(setEntityQueryWrapper);
+//			if (userAssCount > 0) {
+//
+//				map.put("assessmentTaskVO", po);
+//
+//				//已经考核数量 获取得分
+//				QueryWrapper<AssessmentScoreEntity> scoreEntityQueryWrapper = new QueryWrapper<>();
+//				scoreEntityQueryWrapper.eq("be_id",userId);
+//				scoreEntityQueryWrapper.eq("type", 0l);
+//				scoreEntityQueryWrapper.eq("assessment_task_id",po.getId());
+//				List<AssessmentScoreEntity> scoreEntityList = assessmentScoreService.list(scoreEntityQueryWrapper);
+//				double score = 0.0;
+//				for (AssessmentScoreEntity scoreEntity:scoreEntityList) {
+//					score += scoreEntity.getWeight() * scoreEntity.getScoreVal() * 0.01;
+//				}
+//				map.put("scoreVal", score);
+//				map.put("isAssessmentOk", userAssCount == scoreEntityList.size());
+//				retList.add(map);
+//			}
+//
+//
+//		}
+//		return R.data(retList);
 	}
 
 	/**

--
Gitblit v1.9.3