From 247cb86585a1d1894596ed18a6c93efecb992946 Mon Sep 17 00:00:00 2001 From: luohairen <3399054449@qq.com> Date: 星期四, 14 十一月 2024 10:34:27 +0800 Subject: [PATCH] 班级成绩图表分析 --- src/main/java/com/ycl/jxkg/service/impl/UserServiceImpl.java | 65 +++++++++++++++++++++----------- 1 files changed, 43 insertions(+), 22 deletions(-) diff --git a/src/main/java/com/ycl/jxkg/service/impl/UserServiceImpl.java b/src/main/java/com/ycl/jxkg/service/impl/UserServiceImpl.java index 9b99327..71d3968 100644 --- a/src/main/java/com/ycl/jxkg/service/impl/UserServiceImpl.java +++ b/src/main/java/com/ycl/jxkg/service/impl/UserServiceImpl.java @@ -1,7 +1,9 @@ package com.ycl.jxkg.service.impl; import com.alibaba.excel.EasyExcel; +import com.alibaba.excel.ExcelWriter; import com.alibaba.excel.read.listener.PageReadListener; +import com.alibaba.excel.write.metadata.WriteSheet; import com.baomidou.mybatisplus.extension.conditions.update.LambdaUpdateChainWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.github.pagehelper.PageHelper; @@ -31,6 +33,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.web.multipart.MultipartFile; +import javax.servlet.http.HttpServletResponse; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.*; @@ -168,7 +171,7 @@ this.insertUser(teacher); // 鍙戝竷娉ㄥ唽浜嬩欢锛屼繚瀛樻敞鍐屾棩蹇� UserEventLog userEventLog = new UserEventLog(teacher.getId(), teacher.getUserName(), teacher.getRealName(), new Date()); - userEventLog.setContent("娆㈣繋 " + teacher.getUserName() + " 娉ㄥ唽鏉ュ埌姹熻タ绌虹闊宠棰戝煿璁郴缁�"); + userEventLog.setContent("娆㈣繋 " + teacher.getUserName() + " 娉ㄥ唽鏉ュ埌闊宠棰戝煿璁郴缁�"); eventPublisher.publishEvent(new UserEvent(userEventLog)); } @@ -184,7 +187,7 @@ this.insertUser(student); // 鍙戝竷娉ㄥ唽浜嬩欢锛屼繚瀛樻敞鍐屾棩蹇� UserEventLog userEventLog = new UserEventLog(student.getId(), student.getUserName(), student.getRealName(), new Date()); - userEventLog.setContent("娆㈣繋 " + student.getUserName() + " 娉ㄥ唽鏉ュ埌姹熻タ绌虹闊宠棰戝煿璁郴缁�"); + userEventLog.setContent("娆㈣繋 " + student.getUserName() + " 娉ㄥ唽鏉ュ埌闊宠棰戝煿璁郴缁�"); eventPublisher.publishEvent(new UserEvent(userEventLog)); } @@ -223,31 +226,49 @@ @Override @SneakyThrows + public void importTemplate(HttpServletResponse response) { + List<UserExcelVo> list = new ArrayList<>(); + UserExcelVo userExcelVo = new UserExcelVo(); + userExcelVo.setUserName("zhangSan"); + userExcelVo.setRealName("寮犱笁"); + userExcelVo.setSex(1); + userExcelVo.setRole(1); + userExcelVo.setPhone("12345678901"); + userExcelVo.setAge(24); + userExcelVo.setBirthDay("2000-01-01"); + list.add(userExcelVo); + ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream(), UserExcelVo.class).build(); + WriteSheet writeSheet = EasyExcel.writerSheet(0, "鐢ㄦ埛淇℃伅").build(); + excelWriter.write(list, writeSheet); + excelWriter.finish(); + } + + @Override + @SneakyThrows @Transactional public String importExcel(MultipartFile file) { List<User> userList = new ArrayList<>(); List<String> errorList = new ArrayList<>(); - EasyExcel.read(file.getInputStream(), UserExcelVo.class, new PageReadListener<UserExcelVo>(dataList -> { - dataList.forEach(item -> { - User user = new User(); - user.setUserName(item.getUserName()); - user.setPassword(authenticationService.pwdEncode("!Password123456789")); - user.setRealName(item.getRealName()); - user.setSex(item.getSex()); - user.setPhone(item.getPhone()); - try { - user.setBirthDay(new SimpleDateFormat("yyyy-MM-dd").parse(item.getBirthDay())); - } catch (ParseException e) { - errorList.add(item.getRealName()); - } - user.setAge(item.getAge()); - user.setRole(item.getRole()); - user.setStatus(UserStatusEnum.Enable.getCode()); - userList.add(user); - }); - })); + EasyExcel.read(file.getInputStream(), UserExcelVo.class, new PageReadListener<UserExcelVo>(dataList -> dataList.forEach(item -> { + User user = new User(); + user.setUserName(item.getUserName()); + user.setPassword(authenticationService.pwdEncode("!Password123456789")); + user.setRealName(item.getRealName()); + user.setSex(item.getSex()); + user.setPhone(item.getPhone()); + try { + user.setBirthDay(new SimpleDateFormat("yyyy-MM-dd").parse(item.getBirthDay())); + } catch (ParseException e) { + errorList.add(item.getRealName()); + } + user.setAge(item.getAge()); + user.setRole(item.getRole()); + user.setStatus(UserStatusEnum.Enable.getCode()); + user.setLastUpdatePasswordTime(new Date()); + userList.add(user); + }))).sheet().doRead(); if (!errorList.isEmpty()) { - return "浠ヤ笅鏁版嵁鏃ユ湡鏍煎紡閿欒锛歕\n" + String.join(",", errorList); + return "浠ヤ笅鏁版嵁鏃ユ湡鏍煎紡閿欒锛�" + String.join(",", errorList); } else { saveBatch(userList); } -- Gitblit v1.8.0