From 63d5bf1bc414b71860b56e66c9dd7b3d8ed2157e Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Thu, 04 Jan 2024 17:34:36 +0800
Subject: [PATCH] 考核任务
---
src/main/java/org/springblade/modules/assessment/controller/AssessmentScoreController.java | 108 +++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 106 insertions(+), 2 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 108d4bd..3cd6912 100644
--- a/src/main/java/org/springblade/modules/assessment/controller/AssessmentScoreController.java
+++ b/src/main/java/org/springblade/modules/assessment/controller/AssessmentScoreController.java
@@ -28,10 +28,13 @@
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
+import org.springblade.modules.assessment.entity.*;
+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;
@@ -41,6 +44,9 @@
import org.springblade.core.excel.util.ExcelUtil;
import org.springblade.core.tool.constant.BladeConstant;
import springfox.documentation.annotations.ApiIgnore;
+
+import java.util.ArrayList;
+import java.util.HashMap;
import java.util.Map;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
@@ -53,11 +59,16 @@
*/
@RestController
@AllArgsConstructor
-@RequestMapping("assessmentScore/assessmentScore")
+@RequestMapping("assessment/assessmentScore")
@Api(value = "考核评分", tags = "考核评分接口")
public class AssessmentScoreController extends BladeController {
private final IAssessmentScoreService assessmentScoreService;
+ private final IAssessmentSetService assessmentSetService;
+
+ private final IAssessmentTaskService assessmentTaskService;
+
+ private final IAssessmentSetAssessorService assessmentSetAssessorService;
/**
* 考核评分 详情
@@ -80,6 +91,99 @@
return R.data(AssessmentScoreWrapper.build().pageVO(pages));
}
+ @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);
+
+ return R.data(AssessmentScoreWrapper.build().pageVO(pages));
+ }
+
+ @GetMapping("/listResultScore/{taskId}/{userId}")
+ @ApiOperation(value = "后台考核任务考核结果", notes = "传入要查询的任务id")
+ public R listResultScore(@PathVariable Long taskId,@PathVariable Long userId) {
+ QueryWrapper<AssessmentSetAssessorEntity> assessmentSetAssessorEntityQueryWrapper = new QueryWrapper<>();
+ assessmentSetAssessorEntityQueryWrapper.eq("",taskId);
+ assessmentSetAssessorEntityQueryWrapper.eq("",userId);
+
+ return null;
+ }
+
+ @GetMapping("/listMyScore/{userId}")
+ @ApiOperation(value = "我的得分列表", notes = "传入要查询的用户id")
+ public R listMyScore(@ApiIgnore @PathVariable Long userId) {
+ QueryWrapper<AssessmentSetEntity> setEntityQueryWrapper = new QueryWrapper<>();
+ setEntityQueryWrapper.eq("user_id",userId);
+ List<AssessmentSetEntity> assessmentSetEntities = assessmentSetService.list(setEntityQueryWrapper);
+
+ List<Map<String,Object>> retList = new ArrayList<>();
+ for (AssessmentSetEntity po:assessmentSetEntities) {
+
+ Map<String,Object> map = new HashMap<>();
+ map.put("assessmentTaskVO", po);
+
+ QueryWrapper<AssessmentSetAssessorEntity> assessmentSetAssessorEntityQueryWrapper = new QueryWrapper<>();
+ assessmentSetAssessorEntityQueryWrapper.eq("assessment_set_id",po.getId());
+ long userAssCount = assessmentSetAssessorService.count(assessmentSetAssessorEntityQueryWrapper);
+
+ if (userAssCount > 0) {
+// 已经考核数量 获取得分
+ QueryWrapper<AssessmentScoreEntity> scoreEntityQueryWrapper = new QueryWrapper<>();
+ scoreEntityQueryWrapper.eq("be_id",userId);
+ scoreEntityQueryWrapper.eq("type", 0l);
+ scoreEntityQueryWrapper.eq("assessment_task_id",po.getAssessmentTaskId());
+ 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);
+// 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