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