From 206d42486e2093aa470c7663f002a9335a33eb95 Mon Sep 17 00:00:00 2001
From: xieb <vip_xiaobin810@163.com>
Date: Tue, 16 Jan 2024 11:23:15 +0800
Subject: [PATCH] 考核评分记录
---
src/main/java/org/springblade/modules/assessment/controller/AssessmentScoreController.java | 153 ++++++++++++++++++++++++++++++++++++++++++++------
1 files changed, 134 insertions(+), 19 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..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,34 +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.utils.Func;
-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.springblade.core.tool.utils.DateUtil;
+import org.springblade.core.tool.utils.Func;
+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.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.springblade.modules.assessment.vo.AssessmentScoreVO;
+import org.springblade.modules.assessment.wrapper.AssessmentScoreWrapper;
+import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
-import java.util.Map;
-import java.util.List;
+
import javax.servlet.http.HttpServletResponse;
+import javax.validation.Valid;
+import java.util.ArrayList;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
/**
* 考核评分 控制器
@@ -53,11 +61,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;
/**
* 考核评分 详情
@@ -81,6 +94,108 @@
}
/**
+ * 考核评分记录列表
+ * @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, 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));
+ }
+
+ @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("assessmentSetVO", po.getAssessmentTaskId()); //被考核人
+ map.put("assessmentTaskVO", assessmentTaskService.getById(po.getAssessmentTaskId())); //考核任务
+
+ 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);
+ }
+
+ /**
* 考核评分 自定义分页
*/
@GetMapping("/page")
--
Gitblit v1.9.3