Parcourir la source

1、首页接口
2、dept字段改为dept_id

chenminghua il y a 1 an
Parent
commit
8ca11a5791

+ 0 - 20
ims-service/ims-eval/src/main/java/com/ims/eval/controller/EvaluationPortalAttachController.java

@@ -1,20 +0,0 @@
-package com.ims.eval.controller;
-
-
-import org.springframework.web.bind.annotation.RequestMapping;
-
-import org.springframework.web.bind.annotation.RestController;
-
-/**
- * <p>
- * 考评首页附件 前端控制器
- * </p>
- *
- * @author wang
- * @since 2023-05-10
- */
-@RestController
-@RequestMapping("//evaluation-portal-attach")
-public class EvaluationPortalAttachController {
-
-}

+ 19 - 1
ims-service/ims-eval/src/main/java/com/ims/eval/controller/EvaluationPortalController.java

@@ -1,10 +1,19 @@
 package com.ims.eval.controller;
 
 
+import com.ims.eval.entity.EvaluationPersonnel;
+import com.ims.eval.entity.dto.result.R;
+import com.ims.eval.service.IEvaluationPortalService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 
+import org.springframework.web.bind.annotation.RequestParam;
 import org.springframework.web.bind.annotation.RestController;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * <p>
  * 考评首页 前端控制器
@@ -14,7 +23,16 @@ import org.springframework.web.bind.annotation.RestController;
  * @since 2023-05-10
  */
 @RestController
-@RequestMapping("//evaluation-portal")
+@RequestMapping("//evaluation/portal")
 public class EvaluationPortalController {
 
+	@Autowired
+	private IEvaluationPortalService portalService;
+
+	@GetMapping(value = "list")
+	public R listAll(String binSection, String year, String season) {
+		Map<String, Object> data = portalService.getPortalData(binSection, year, season);
+		return R.ok().data(data);
+	}
+
 }

+ 4 - 0
ims-service/ims-eval/src/main/java/com/ims/eval/dao/EvaluationPortalMapper.java

@@ -3,6 +3,9 @@ package com.ims.eval.dao;
 import com.ims.eval.entity.EvaluationPortal;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 
+import java.util.List;
+import java.util.Map;
+
 /**
  * <p>
  * 考评首页 Mapper 接口
@@ -13,4 +16,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  */
 public interface EvaluationPortalMapper extends BaseMapper<EvaluationPortal> {
 
+    List<Map<String, Object>> selectPortalList(String binSection, String year, String season);
 }

+ 8 - 3
ims-service/ims-eval/src/main/java/com/ims/eval/entity/EvaluationPortal.java

@@ -1,6 +1,8 @@
 package com.ims.eval.entity;
 
 import java.math.BigDecimal;
+import java.util.Date;
+
 import com.baomidou.mybatisplus.extension.activerecord.Model;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
@@ -52,12 +54,12 @@ public class EvaluationPortal extends Model {
     /**
      * 年
      */
-    private Integer year;
+    private String year;
 
     /**
      * 季度(1,2,3,4)
      */
-    private Integer season;
+    private String season;
 
     /**
      * 加分事项(-1扣分,0持平,1加分)
@@ -94,5 +96,8 @@ public class EvaluationPortal extends Model {
      */
     private String deptId;
 
-
+	/**
+	 * 创建时间
+	 */
+	private Date createTime;
 }

+ 10 - 0
ims-service/ims-eval/src/main/java/com/ims/eval/service/IEvaluationPortalService.java

@@ -3,6 +3,8 @@ package com.ims.eval.service;
 import com.ims.eval.entity.EvaluationPortal;
 import com.baomidou.mybatisplus.extension.service.IService;
 
+import java.util.Map;
+
 /**
  * <p>
  * 考评首页 服务类
@@ -13,4 +15,12 @@ import com.baomidou.mybatisplus.extension.service.IService;
  */
 public interface IEvaluationPortalService extends IService<EvaluationPortal> {
 
+	/**
+	 * 查询考评首页门户数据
+	 * @param binSection
+	 * @param year
+	 * @param season
+	 */
+	Map<String, Object> getPortalData(String binSection, String year, String season);
+
 }

+ 25 - 0
ims-service/ims-eval/src/main/java/com/ims/eval/service/impl/EvaluationPortalServiceImpl.java

@@ -4,8 +4,15 @@ import com.ims.eval.entity.EvaluationPortal;
 import com.ims.eval.dao.EvaluationPortalMapper;
 import com.ims.eval.service.IEvaluationPortalService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import groovy.util.logging.Slf4j;
 import org.springframework.stereotype.Service;
 
+import java.util.Calendar;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
 /**
  * <p>
  * 考评首页 服务实现类
@@ -14,7 +21,25 @@ import org.springframework.stereotype.Service;
  * @author wang
  * @since 2023-05-10
  */
+@Slf4j
 @Service
 public class EvaluationPortalServiceImpl extends ServiceImpl<EvaluationPortalMapper, EvaluationPortal> implements IEvaluationPortalService {
 
+	@Override
+	public Map<String, Object> getPortalData(String binSection, String year, String season) {
+		Map<String, Object> map = new HashMap<>();
+		Calendar date = Calendar.getInstance();
+		try{
+			List<Map<String, Object>> yearList = baseMapper.selectPortalList(binSection, date.get(Calendar.YEAR) == Integer.valueOf(year) ? String.valueOf(Integer.valueOf(year) - 1) : year, null);
+			List<Map<String, Object>> seasonList = baseMapper.selectPortalList(binSection, year, season);
+			Map<Object, List<Map<String, Object>>> yearMap = yearList.stream().collect(Collectors.groupingBy(e -> e.get("bin_section"), Collectors.toList()));
+			Map<Object, List<Map<String, Object>>> seasonMap = seasonList.stream().collect(Collectors.groupingBy(e -> e.get("bin_section"), Collectors.toList()));
+			map.put("year", yearMap);
+			map.put("season", seasonMap);
+		} catch (Exception e){
+			log.error(e.getMessage());
+		}
+
+		return map;
+	}
 }

+ 2 - 2
ims-service/ims-eval/src/main/java/com/ims/eval/service/impl/IndicatorServiceImpl.java

@@ -74,7 +74,7 @@ public class IndicatorServiceImpl extends ServiceImpl<IndicatorMapper, Indicator
 		}
 
 		if (StringUtils.isNotEmpty(dept)) {
-			qw.lambda().eq(Indicator::getDept, dept);
+			qw.lambda().eq(Indicator::getDeptId, dept);
 		}
 
 		if (StringUtils.isNotEmpty(company)) {
@@ -99,7 +99,7 @@ public class IndicatorServiceImpl extends ServiceImpl<IndicatorMapper, Indicator
 		IPage<Indicator> list = baseMapper.seleclistPage(page, id, indicatorName, indicatorCode, binSection, binStage, dept, company);
 		List<Indicator> records = list.getRecords();
 		records.stream().forEach(r ->{
-			r.setDeptName(CacheContext.ddNameMap.get(r.getDept()));
+			r.setDeptName(CacheContext.ddNameMap.get(r.getDeptId()));
 		});
 		return list;
 	}

+ 67 - 0
ims-service/ims-eval/src/main/resources/mappers/EvaluationPortalMapper.xml

@@ -0,0 +1,67 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ims.eval.dao.EvaluationPortalMapper">
+
+    <!-- 通用查询映射结果 -->
+    <resultMap id="BaseResultMap" type="com.ims.eval.entity.EvaluationPortal">
+        <id column="id" property="id" />
+        <result column="bin_section" property="binSection" />
+        <result column="company" property="company" />
+        <result column="grade" property="grade" />
+        <result column="score" property="score" />
+        <result column="base_score" property="baseScore" />
+        <result column="year" property="year" />
+        <result column="season" property="season" />
+        <result column="matter_heigh" property="matterHeigh" />
+        <result column="matter_low" property="matterLow" />
+        <result column="manage_heigh" property="manageHeigh" />
+        <result column="manage_low" property="manageLow" />
+        <result column="standard_heigh" property="standardHeigh" />
+        <result column="standard_low" property="standardLow" />
+        <result column="dept_id" property="deptId" />
+        <result column="create_time" property="createTime" />
+    </resultMap>
+
+    <!-- 通用查询结果列 -->
+    <sql id="Base_Column_List">
+        id, bin_section, company, grade, score, base_score, year, season, matter_heigh, matter_low, manage_heigh, manage_low, standard_heigh, standard_low, dept_id, create_time
+    </sql>
+
+    <select id="selectPortalList" resultType="java.util.Map">
+        SELECT
+        ep.*,
+        ea.portal_id,
+        ea.matter_heigh_note,
+        ea.matter_low_note,
+        ea.manage_height_note,
+        ea.manage_low_note,
+        ea.standard_heigh_note,
+        ea.standard_low_note
+        FROM
+        evaluation_portal ep
+        LEFT JOIN evaluation_portal_attach ea ON ep.id = ea.portal_id
+        <where>
+
+            <if test="binSection !=null and binSection !=''">
+                AND ep.bin_section = #{binSection}
+            </if>
+            <if test="year !=null and year !=''">
+                AND ep.year = #{year}
+            </if>
+
+            <if test="season !=null and season !=''">
+                AND ep.season = #{season}
+            </if>
+
+            <if test="season ==null">
+                AND ep.season is null
+            </if>
+
+        </where>
+
+        ORDER BY SCORE DESC
+
+    </select>
+
+
+</mapper>