From f31ae33e37895b9517ee6ace6bd703f4bbb47e81 Mon Sep 17 00:00:00 2001
From: value <z1292839451@163.com>
Date: 星期日, 23 六月 2024 23:44:30 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 performance-server/src/main/java/com/yuanchu/mom/service/impl/EvaluateCompetentServiceImpl.java |   63 +++++++++++++++++++++++++++++++
 1 files changed, 63 insertions(+), 0 deletions(-)

diff --git a/performance-server/src/main/java/com/yuanchu/mom/service/impl/EvaluateCompetentServiceImpl.java b/performance-server/src/main/java/com/yuanchu/mom/service/impl/EvaluateCompetentServiceImpl.java
index a835915..9e0616b 100644
--- a/performance-server/src/main/java/com/yuanchu/mom/service/impl/EvaluateCompetentServiceImpl.java
+++ b/performance-server/src/main/java/com/yuanchu/mom/service/impl/EvaluateCompetentServiceImpl.java
@@ -1,10 +1,29 @@
 package com.yuanchu.mom.service.impl;
 
+import com.alibaba.excel.EasyExcel;
+import com.alibaba.excel.ExcelWriter;
+import com.alibaba.excel.write.metadata.WriteSheet;
+import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.yuanchu.mom.dto.EvaluateGroupDto;
+import com.yuanchu.mom.mapper.EvaluateLeaderMapper;
+import com.yuanchu.mom.mapper.EvaluateMapper;
+import com.yuanchu.mom.pojo.Evaluate;
 import com.yuanchu.mom.pojo.EvaluateCompetent;
 import com.yuanchu.mom.mapper.EvaluateCompetentMapper;
+import com.yuanchu.mom.pojo.EvaluateGroup;
 import com.yuanchu.mom.service.EvaluateCompetentService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springframework.stereotype.Service;
+
+import javax.annotation.Resource;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.net.URLEncoder;
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * <p>
@@ -17,4 +36,48 @@
 @Service
 public class EvaluateCompetentServiceImpl extends ServiceImpl<EvaluateCompetentMapper, EvaluateCompetent> implements EvaluateCompetentService {
 
+    @Resource
+    EvaluateCompetentMapper evaluateCompetentMapper;
+
+    @Resource
+    EvaluateMapper evaluateMapper;
+
+    @Override
+    public List<EvaluateCompetent> getEvaluateCompetent(EvaluateGroupDto evaluateGroupDto) {
+        return evaluateCompetentMapper.getEvaluateCompetent(evaluateGroupDto.getMonth(), evaluateGroupDto.getDepartLims(), evaluateGroupDto.getName());
+    }
+
+    @Override
+    public Double writeEvaluateCompetent(EvaluateCompetent evaluateCompetent) {
+        double newTotal = evaluateCompetent.getSkill() + evaluateCompetent.getCompliance() + evaluateCompetent.getPositive() + evaluateCompetent.getTidy() + evaluateCompetent.getDiscipline() + evaluateCompetent.getSolidarity() + evaluateCompetent.getProposal();
+        EvaluateCompetent evaluateCompetent1 = evaluateCompetentMapper.selectById(evaluateCompetent.getId());
+        Evaluate evaluate = evaluateMapper.selectById(evaluateCompetent.getEvaluateId());
+        evaluate.setScore(evaluate.getScore() - evaluateCompetent1.getTotal() * 0.5 + newTotal * 0.5);
+        evaluateMapper.updateById(evaluate);
+        evaluateCompetent.setTotal(newTotal);
+        evaluateCompetentMapper.updateById(evaluateCompetent);
+        return newTotal;
+    }
+
+    //瀵煎嚭
+    @Override
+    public void export(String month, String name, String departLims, HttpServletResponse response) throws IOException {
+        List<EvaluateCompetent> evaluateCompetents = new ArrayList<EvaluateCompetent>();
+        evaluateCompetents = evaluateCompetentMapper.getEvaluateCompetent(month, departLims, name);
+        response.setContentType("application/vnd.ms-excel");
+        response.setCharacterEncoding("UTF-8");
+        // 杩欓噷URLEncoder.encode鍙互闃叉涓枃涔辩爜 褰撶劧鍜宔asyexcel娌℃湁鍏崇郴
+        String fileName = URLEncoder.encode("涓荤鎵撳垎瀵煎嚭", "UTF-8");
+        response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
+        try {
+            // 鏂板缓ExcelWriter
+            ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream()).registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()).build();
+            WriteSheet mainSheet = EasyExcel.writerSheet(0, "涓荤鎵撳垎瀵煎嚭").head(EvaluateCompetent.class).build();
+            excelWriter.write(evaluateCompetents, mainSheet);
+            // 鍏抽棴娴�
+            excelWriter.finish();
+        } catch (IOException e) {
+            throw new RuntimeException("瀵煎嚭澶辫触");
+        }
+    }
 }

--
Gitblit v1.9.3