From 0ef7780459204247c19075839ec839e417c53d09 Mon Sep 17 00:00:00 2001 From: Cool <747682928@qq.com> Date: Wed, 23 Oct 2024 20:44:00 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AD=A6=E7=94=9F=E5=AF=BC=E5=85=A5=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../jeecg-system-start/pom.xml | 5 + .../controller/Cet4MajorController.java | 177 ++++++++++++++++++ .../controller/CetStudentController.java | 73 -------- .../org/jeecg/modules/entity/Cet4_major.java | 62 +++++- .../org/jeecg/modules/pojo/CetStudent.java | 93 +++++++++ .../modules/service/ICet4MajorService.java | 24 +++ .../service/impl/Cet4MajorServiceImpl.java | 147 +++++++++++++++ .../service/impl/CetMajorServiceImpl.java | 52 ----- .../service/impl/Cet_4ServiceImpl.java | 1 - .../service/impl/Cet_6ServiceImpl.java | 27 ++- .../src/main/resources/application-dev.yml | 4 +- .../src/main/resources/application-prod.yml | 4 +- 12 files changed, 520 insertions(+), 149 deletions(-) create mode 100644 jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/controller/Cet4MajorController.java delete mode 100644 jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/controller/CetStudentController.java create mode 100644 jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/pojo/CetStudent.java create mode 100644 jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/ICet4MajorService.java create mode 100644 jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet4MajorServiceImpl.java delete mode 100644 jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/CetMajorServiceImpl.java diff --git a/jeecg-module-system/jeecg-system-start/pom.xml b/jeecg-module-system/jeecg-system-start/pom.xml index a7a7026a..d34bbda2 100644 --- a/jeecg-module-system/jeecg-system-start/pom.xml +++ b/jeecg-module-system/jeecg-system-start/pom.xml @@ -32,6 +32,11 @@ runtime --> + + com.alibaba + easyexcel + 3.1.0 + com.dameng Dm8JdbcDriver18 diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/controller/Cet4MajorController.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/controller/Cet4MajorController.java new file mode 100644 index 00000000..9666d164 --- /dev/null +++ b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/controller/Cet4MajorController.java @@ -0,0 +1,177 @@ +package org.jeecg.modules.controller; + + +import java.util.Arrays; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.jeecg.common.api.vo.Result; +import org.jeecg.common.system.query.QueryGenerator; + +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import lombok.extern.slf4j.Slf4j; + +import org.jeecg.modules.entity.Cet4_major; +import org.jeecg.modules.service.ICet4MajorService; +import org.jeecg.common.system.base.controller.JeecgController; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.servlet.ModelAndView; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.apache.shiro.authz.annotation.RequiresPermissions; + +/** + * @Description: cet4_major + * @Author: jeecg-boot + * @Date: 2024-10-23 + * @Version: V1.0 + */ +@Api(tags = "cet4_major") +@RestController +@RequestMapping("/com/cet4Major") +@Slf4j +public class Cet4MajorController extends JeecgController { + @Autowired + private ICet4MajorService cet4MajorService; + + /** + * 分页列表查询 + * + * @param cet4Major + * @param pageNo + * @param pageSize + * @param req + * @return + */ + //@AutoLog(value = "cet4_major-分页列表查询") + @ApiOperation(value = "cet4_major-分页列表查询", notes = "cet4_major-分页列表查询") + @GetMapping(value = "/list") + public Result> queryPageList(Cet4_major cet4Major, + @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, + @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, + HttpServletRequest req) { + QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(cet4Major, req.getParameterMap()); + Page page = new Page(pageNo, pageSize); + IPage pageList = cet4MajorService.page(page, queryWrapper); + return Result.OK(pageList); + } + + /** + * 添加 + * + * @param cet4Major + * @return + */ + @AutoLog(value = "cet4_major-添加") + @ApiOperation(value = "cet4_major-添加", notes = "cet4_major-添加") + @RequiresPermissions("com:cet4_major:add") + @PostMapping(value = "/add") + public Result add(@RequestBody Cet4_major cet4Major) { + cet4MajorService.save(cet4Major); + return Result.OK("添加成功!"); + } + + /** + * 编辑 + * + * @param cet4Major + * @return + */ + @AutoLog(value = "cet4_major-编辑") + @ApiOperation(value = "cet4_major-编辑", notes = "cet4_major-编辑") + @RequiresPermissions("com:cet4_major:edit") + @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) + public Result edit(@RequestBody Cet4_major cet4Major) { + cet4MajorService.updateById(cet4Major); + return Result.OK("编辑成功!"); + } + + /** + * 通过id删除 + * + * @param id + * @return + */ + @AutoLog(value = "cet4_major-通过id删除") + @ApiOperation(value = "cet4_major-通过id删除", notes = "cet4_major-通过id删除") + @RequiresPermissions("com:cet4_major:delete") + @DeleteMapping(value = "/delete") + public Result delete(@RequestParam(name = "id", required = true) String id) { + cet4MajorService.removeById(id); + return Result.OK("删除成功!"); + } + + /** + * 批量删除 + * + * @param ids + * @return + */ + @AutoLog(value = "cet4_major-批量删除") + @ApiOperation(value = "cet4_major-批量删除", notes = "cet4_major-批量删除") + @RequiresPermissions("com:cet4_major:deleteBatch") + @DeleteMapping(value = "/deleteBatch") + public Result deleteBatch(@RequestParam(name = "ids", required = true) String ids) { + this.cet4MajorService.removeByIds(Arrays.asList(ids.split(","))); + return Result.OK("批量删除成功!"); + } + + /** + * 通过id查询 + * + * @param id + * @return + */ + //@AutoLog(value = "cet4_major-通过id查询") + @ApiOperation(value = "cet4_major-通过id查询", notes = "cet4_major-通过id查询") + @GetMapping(value = "/queryById") + public Result queryById(@RequestParam(name = "id", required = true) String id) { + Cet4_major cet4Major = cet4MajorService.getById(id); + if (cet4Major == null) { + return Result.error("未找到对应数据"); + } + return Result.OK(cet4Major); + } + + /** + * 导出excel + * + * @param request + * @param cet4Major + */ +// @RequiresPermissions("com:cet4_major:exportXls") + @RequestMapping(value = "/exportXls") + public ModelAndView exportXls(HttpServletRequest request, Cet4_major cet4Major) { + return super.exportXls(request, cet4Major, Cet4_major.class, "cet4_major"); + } + + /** + * 通过excel导入数据 + * + * @param request + * @param response + * @return + */ +// @RequiresPermissions("com:cet4_major:importExcel") + @RequestMapping(value = "/importExcel", method = RequestMethod.POST) + public Result importExcel(HttpServletRequest request, HttpServletResponse response) { + return cet4MajorService.importStudentData(request); + } + + @RequestMapping("downloadTemplate") + @ApiOperation("四六级导入数据文件模版") + public Result downloadTemplate(HttpServletResponse response) { + return cet4MajorService.downloadTemplate(response); + } + + @RequestMapping("loadTable") + @ApiOperation("加载表格") + public Result loadTable() { + return cet4MajorService.loadTable(); + } + +} diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/controller/CetStudentController.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/controller/CetStudentController.java deleted file mode 100644 index 3e21a2b5..00000000 --- a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/controller/CetStudentController.java +++ /dev/null @@ -1,73 +0,0 @@ -package org.jeecg.modules.controller; - -import io.swagger.annotations.Api; -import io.swagger.annotations.ApiOperation; -import lombok.extern.slf4j.Slf4j; -import org.apache.shiro.authz.annotation.RequiresPermissions; -import org.jeecg.common.api.vo.Result; -import org.jeecg.common.system.base.controller.JeecgController; -import org.jeecg.modules.entity.Cet4_major; -import org.jeecg.modules.entity.Cet_4; -import org.jeecg.modules.service.impl.CetMajorServiceImpl; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RestController; -import org.springframework.web.servlet.ModelAndView; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; - -/** - * Created with IntelliJ IDEA. - * - * @Author: Cool - * @Date: 2024/10/16/17:58 - * @Description: 学生信息Controller - */ -@Api(tags = "cetStudent") -@RestController -@RequestMapping("/cetStudent") -@Slf4j -public class CetStudentController extends JeecgController { - - @Autowired - private CetMajorServiceImpl cetMajorService; - - /** - * 导出excel - * - * @param request - * @param - */ - @RequiresPermissions("cet:cetStudent:exportXls") - @RequestMapping(value = "/exportXls") - public ModelAndView exportXls(HttpServletRequest request, Cet4_major major) { - return super.exportXls(request, major, Cet4_major.class, "cet_4"); - } - - /** - * 通过excel导入数据 - * - * @param request - * @param response - * @return - */ - @RequiresPermissions("cet:cetStudent:importExcel") - @RequestMapping(value = "/importExcel", method = RequestMethod.POST) - public Result importExcel(HttpServletRequest request, HttpServletResponse response) { - return super.importExcel(request, response, Cet4_major.class); - } - - @RequestMapping("downloadTemplate") - @ApiOperation("四六级导入数据文件模版") - public Result downloadTemplate(HttpServletResponse response) { - return cetMajorService.downloadTemplate(response); - } - - @RequestMapping("loadTable") - @ApiOperation("加载表格") - public Result loadTable() { - return cetMajorService.loadTable(); - } -} diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/entity/Cet4_major.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/entity/Cet4_major.java index aa411815..fa95f7b9 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/entity/Cet4_major.java +++ b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/entity/Cet4_major.java @@ -1,22 +1,78 @@ package org.jeecg.modules.entity; +import java.io.Serializable; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; +import org.jeecgframework.poi.excel.annotation.Excel; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.EqualsAndHashCode; +import lombok.experimental.Accessors; +/** + * @Description: cet4_major + * @Author: jeecg-boot + * @Date: 2024-10-23 + * @Version: V1.0 + */ @Data @TableName("cet4_major") -public class Cet4_major { +@Accessors(chain = true) +@EqualsAndHashCode(callSuper = false) +@ApiModel(value="cet4_major对象", description="cet4_major") +public class Cet4_major implements Serializable { + private static final long serialVersionUID = 1L; + + /**id*/ + @TableId(type = IdType.ASSIGN_ID) + @Excel(name = "学号", width = 15) + @ApiModelProperty(value = "id") private String id; + /**name*/ + @Excel(name = "姓名", width = 15) + @ApiModelProperty(value = "name") private String name; + /**college*/ + @Excel(name = "上课院系", width = 15) + @ApiModelProperty(value = "college") private String college; - private String major_id; + /**majorId*/ + @Excel(name = "专业号", width = 15) + @ApiModelProperty(value = "majorId") + private String majorId; + /**majorname*/ + @Excel(name = "专业名称", width = 15) + @ApiModelProperty(value = "majorname") private String majorname; - private String class_name; + /**className*/ + @Excel(name = "班级", width = 15) + @ApiModelProperty(value = "className") + private String className; + /**educate*/ + @Excel(name = "学制", width = 15) + @ApiModelProperty(value = "educate") private String educate; + /**entrydate*/ + @Excel(name = "当前所在级", width = 15) + @ApiModelProperty(value = "entrydate") private String entrydate; + /**campus*/ + @Excel(name = "校区", width = 15) + @ApiModelProperty(value = "campus") private String campus; + /**state*/ + @Excel(name = "在校状态", width = 15) + @ApiModelProperty(value = "state") private String state; + /**level*/ + @Excel(name = "培养层次", width = 15) + @ApiModelProperty(value = "level") private String level; + /**category*/ + @Excel(name = "学生类别", width = 15) + @ApiModelProperty(value = "category") private String category; } diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/pojo/CetStudent.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/pojo/CetStudent.java new file mode 100644 index 00000000..153d4eca --- /dev/null +++ b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/pojo/CetStudent.java @@ -0,0 +1,93 @@ +package org.jeecg.modules.pojo; + +import com.alibaba.excel.annotation.ExcelProperty; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import org.jeecgframework.poi.excel.annotation.Excel; + +/** + * Created with IntelliJ IDEA. + * + * @Author: Cool + * @Date: 2024/10/23/20:35 + * @Description: + */ +@Data +public class CetStudent { + + /** + * id + */ + @TableId(type = IdType.ASSIGN_ID) + @ExcelProperty("学号") + @ApiModelProperty(value = "id") + private String id; + /** + * name + */ + @ExcelProperty("姓名") + @ApiModelProperty(value = "name") + private String name; + /** + * college + */ + @ExcelProperty("上课院系") + @ApiModelProperty(value = "college") + private String college; + /** + * majorId + */ + @ExcelProperty("专业号") + @ApiModelProperty(value = "majorId") + private String majorId; + /** + * majorname + */ + @ExcelProperty("专业名称") + @ApiModelProperty(value = "majorname") + private String majorname; + /** + * className + */ + @ExcelProperty("班级") + @ApiModelProperty(value = "className") + private String className; + /** + * educate + */ + @ExcelProperty("学制") + @ApiModelProperty(value = "educate") + private String educate; + /** + * entrydate + */ + @ExcelProperty("当前所在级") + @ApiModelProperty(value = "entrydate") + private String entrydate; + /** + * campus + */ + @ExcelProperty("校区") + @ApiModelProperty(value = "campus") + private String campus; + /** + * state + */ + @ExcelProperty("在校状态") + @ApiModelProperty(value = "state") + private String state; + /** + * level + */ + @ExcelProperty("培养层次") + @ApiModelProperty(value = "level") + private String level; + /** + * category + */ + @ExcelProperty("学生类别") + @ApiModelProperty(value = "category") + private String category; +} diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/ICet4MajorService.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/ICet4MajorService.java new file mode 100644 index 00000000..e12e3d25 --- /dev/null +++ b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/ICet4MajorService.java @@ -0,0 +1,24 @@ +package org.jeecg.modules.service; + +import org.jeecg.common.api.vo.Result; +import com.baomidou.mybatisplus.extension.service.IService; +import org.jeecg.modules.entity.Cet4_major; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +/** + * @Description: cet4_major + * @Author: jeecg-boot + * @Date: 2024-10-23 + * @Version: V1.0 + */ +public interface ICet4MajorService extends IService { + + Result downloadTemplate(HttpServletResponse response); + + Result loadTable(); + + Result importStudentData(HttpServletRequest request); + +} diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet4MajorServiceImpl.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet4MajorServiceImpl.java new file mode 100644 index 00000000..a3d20f30 --- /dev/null +++ b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet4MajorServiceImpl.java @@ -0,0 +1,147 @@ +package org.jeecg.modules.service.impl; + +import com.alibaba.excel.EasyExcel; +import com.alibaba.excel.context.AnalysisContext; +import com.alibaba.excel.event.AnalysisEventListener; +import com.alibaba.excel.support.ExcelTypeEnum; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import org.jeecg.common.api.vo.Result; +import org.jeecg.modules.entity.Cet4_major; +import org.jeecg.modules.mapper.Cet4_majorMapper; +import org.jeecg.modules.pojo.CetStudent; +import org.jeecg.modules.service.ICet4MajorService; +import org.jeecg.modules.utils.ExportUtil; +import org.springframework.stereotype.Service; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import org.springframework.web.multipart.MultipartFile; +import org.springframework.web.multipart.MultipartHttpServletRequest; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.sql.Timestamp; +import java.util.*; +import java.util.stream.Collectors; + +/** + * @Description: cet4_major + * @Author: jeecg-boot + * @Date: 2024-10-23 + * @Version: V1.0 + */ +@Service +public class Cet4MajorServiceImpl extends ServiceImpl implements ICet4MajorService { + private final String CET_STUDENT_IMPORT_TEMPLATE = "template/cetStudentImportTemplate.xls"; + private final String CET_STUDENT_FILE_TEMPLATE_NAME = "四六级学生信息导入模版.xlsx"; + + @Override + public Result downloadTemplate(HttpServletResponse response) { + try { + ExportUtil.downloadExcelTemplate(response, CET_STUDENT_FILE_TEMPLATE_NAME, CET_STUDENT_IMPORT_TEMPLATE); + } catch (IOException e) { + e.printStackTrace(); + } + return null; + } + + @Override + public Result loadTable() { + QueryWrapper wrapper = new QueryWrapper<>(); + wrapper.select("entrydate", "count(*) as studentNumber") + .groupBy("entrydate"); + List> list = this.listMaps(wrapper); + // 倒序排序 + list = list.stream().filter(e -> e.get("entrydate") != null).collect(Collectors.toList()); + list.sort(Comparator.comparing((Map o) -> ((String) o.get("entrydate"))).reversed()); + JSONObject jsonObject = new JSONObject(); + jsonObject.put("data", list); + return Result.OK(jsonObject); + } + + @Override + public Result importStudentData(HttpServletRequest request) { + MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; + Map fileMap = multipartRequest.getFileMap(); + for (Map.Entry entity : fileMap.entrySet()) { + // 获取上传文件对象 + MultipartFile file = entity.getValue(); + if (file.isEmpty()) { + // 文件为空,进行处理(例如,返回错误信息) + return Result.error("上传的文件为空!"); + } + try { + /**' + * 1. 读取表格 + */ + ArrayList furnitureArrayList = new ArrayList<>(); + //使用EasyExcel读取excel文件 + EasyExcel.read(file.getInputStream(), CetStudent.class, new AnalysisEventListener() { + @Override + public void invoke(CetStudent furniture, AnalysisContext analysisContext) { + System.out.println(furniture); + // 将读取到的数据存储到 list 集合里 + furnitureArrayList.add(furniture); + } + + @Override + public void doAfterAllAnalysed(AnalysisContext analysisContext) { + // 读取完后的操作 + } + }).excelType(ExcelTypeEnum.XLS).sheet().doRead(); + System.out.println(furnitureArrayList); + /** + * 将表格list用set为实体类 + */ + ArrayList rmsFurnitureArrayList = new ArrayList<>(); + Timestamp timestamp = new Timestamp(System.currentTimeMillis()); + for (CetStudent cetStudent : furnitureArrayList) { + Cet4_major cet4Major = new Cet4_major(); + cet4Major.setMajorId(cetStudent.getMajorId()); + cet4Major.setMajorname(cetStudent.getMajorname()); + cet4Major.setId(cetStudent.getId()); + cet4Major.setName(cetStudent.getName()); + cet4Major.setCollege(cetStudent.getCollege()); + cet4Major.setClassName(cetStudent.getClassName()); + cet4Major.setEducate(cetStudent.getEducate()); + cet4Major.setEntrydate(cetStudent.getEntrydate()); + cet4Major.setCampus(cetStudent.getCampus()); + cet4Major.setState(cetStudent.getState()); + cet4Major.setLevel(cetStudent.getLevel()); + cet4Major.setCategory(cetStudent.getCategory()); + + rmsFurnitureArrayList.add(cet4Major); + } + System.out.println(rmsFurnitureArrayList.size()); + /** + * 遍历list save + */ + saveBatch(rmsFurnitureArrayList, 10000); + System.out.println("插入成功"); + Timestamp timestamp2 = new Timestamp(System.currentTimeMillis()); + long millisecondsDiff = timestamp2.getTime() - timestamp.getTime(); + long secondsDiff = millisecondsDiff / 1000; + System.out.println("时间差为:" + secondsDiff + " 秒"); + return Result.ok("文件导入成功!数据行数:" + rmsFurnitureArrayList.size()); + } catch (Exception e) { + //update-begin-author:taoyan date:20211124 for: 导入数据重复增加提示 + String msg = e.getMessage(); + log.error(msg, e); + if (msg != null && msg.indexOf("Duplicate entry") >= 0) { + return Result.error("文件导入失败:有重复数据!"); + } else { + return Result.error("文件导入失败:" + e.getMessage()); + } + //update-end-author:taoyan date:20211124 for: 导入数据重复增加提示 + } finally { + try { + file.getInputStream().close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + } + return Result.error("文件导入失败!"); + } +} diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/CetMajorServiceImpl.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/CetMajorServiceImpl.java deleted file mode 100644 index 9a01401c..00000000 --- a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/CetMajorServiceImpl.java +++ /dev/null @@ -1,52 +0,0 @@ -package org.jeecg.modules.service.impl; - -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import lombok.extern.slf4j.Slf4j; -import org.jeecg.common.api.vo.Result; -import org.jeecg.modules.entity.Cet4_major; -import org.jeecg.modules.mapper.Cet4_majorMapper; -import org.jeecg.modules.utils.ExportUtil; -import org.springframework.stereotype.Service; - -import javax.servlet.http.HttpServletResponse; -import java.io.IOException; -import java.util.Comparator; -import java.util.List; -import java.util.Map; - -/** - * Created with IntelliJ IDEA. - * - * @Author: Cool - * @Date: 2024/10/11/15:52 - * @Description: - */ -@Service -@Slf4j -public class CetMajorServiceImpl extends ServiceImpl { - private final String CET_STUDENT_IMPORT_TEMPLATE = "template/cetStudentImportTemplate.xls"; - private final String CET_STUDENT_FILE_TEMPLATE_NAME = "四六级学生信息导入模版.xlsx"; - - public Result downloadTemplate(HttpServletResponse response) { - try { - ExportUtil.downloadExcelTemplate(response, CET_STUDENT_FILE_TEMPLATE_NAME, CET_STUDENT_IMPORT_TEMPLATE); - } catch (IOException e) { - e.printStackTrace(); - } - return null; - } - - public Result loadTable() { - QueryWrapper wrapper = new QueryWrapper<>(); - wrapper.select("entrydate", "count(*) as count"); - List> list = this.listMaps(wrapper); - // 倒序排序 - list.sort(Comparator.comparing((Map o) -> ((String) o.get("entrydate"))).reversed()); - JSONObject jsonObject = new JSONObject(); - jsonObject.put("data", list); - return Result.OK(jsonObject); - } - -} diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet_4ServiceImpl.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet_4ServiceImpl.java index 298c130d..acb8d0a8 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet_4ServiceImpl.java +++ b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet_4ServiceImpl.java @@ -18,7 +18,6 @@ import org.jeecg.modules.mapper.Cet_4Mapper; import org.jeecg.modules.service.CenterService; import org.jeecg.modules.service.CetCleanService; import org.jeecg.modules.service.ICet_4Service; -import org.jeecg.modules.utils.DateUtil; import org.jetbrains.annotations.NotNull; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.redis.core.RedisTemplate; diff --git a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet_6ServiceImpl.java b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet_6ServiceImpl.java index 7a2cdc22..20396d9d 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet_6ServiceImpl.java +++ b/jeecg-module-system/jeecg-system-start/src/main/java/org/jeecg/modules/service/impl/Cet_6ServiceImpl.java @@ -1,6 +1,5 @@ package org.jeecg.modules.service.impl; -import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; @@ -12,15 +11,14 @@ import org.jeecg.modules.entity.Cet_4; import org.jeecg.modules.entity.Cet_6; import org.jeecg.modules.mapper.Cet_6Mapper; import org.jeecg.modules.service.CenterService; +import org.jeecg.modules.service.ICet4MajorService; import org.jeecg.modules.service.ICet_6Service; -import org.jeecg.modules.utils.DateUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import javax.annotation.Resource; -import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @@ -36,13 +34,12 @@ public class Cet_6ServiceImpl extends ServiceImpl implements @Resource Cet_6Mapper cet6Mapper; - + @Autowired + ICet4MajorService cet4MajorService; @Autowired Cet_4ServiceImpl cet4Service; @Autowired CenterService centerService; - @Autowired - CetMajorServiceImpl cetMajorService; @Override public Result getRate(Cet_6 cet) { @@ -86,7 +83,7 @@ public class Cet_6ServiceImpl extends ServiceImpl implements wrapper.eq(Cet_6::getEntrydate, "2020"); List list1 = list(wrapper); Set allStudent1 = list1.stream().map(Cet_6::getId).collect(Collectors.toSet()); - log.info("六级总考试人数,{}",allStudent1.size()); + log.info("六级总考试人数,{}", allStudent1.size()); wrapper.ge(Cet_6::getResult, 425); List list = list(wrapper); log.info("六级总通过人数,{}", list.size()); @@ -94,18 +91,17 @@ public class Cet_6ServiceImpl extends ServiceImpl implements Set passStudent = list.stream().map(Cet_6::getId).collect(Collectors.toSet()); log.info("六级通过人数,{}", passStudent.size()); LambdaQueryWrapper majorWrapper = new LambdaQueryWrapper<>(); - majorWrapper.eq(Cet4_major::getEntrydate, "2020") - .eq(Cet4_major::getState, "在校"); - List majorList = cetMajorService.list(majorWrapper); + majorWrapper.eq(Cet4_major::getEntrydate, "2020").eq(Cet4_major::getState, "在校"); + List majorList = cet4MajorService.list(majorWrapper); Set allStudent = majorList.stream().map(Cet4_major::getId).collect(Collectors.toSet()); log.info("所有学生人数{}", allStudent.size()); log.info("通过率,{}", (double) passStudent.size() / allStudent.size()); - LambdaQueryWrapper cet4Wrapper=new LambdaQueryWrapper<>(); - cet4Wrapper.eq(Cet_4::getEntrydate,"2020"); - cet4Wrapper.ge(Cet_4::getResult,425); + LambdaQueryWrapper cet4Wrapper = new LambdaQueryWrapper<>(); + cet4Wrapper.eq(Cet_4::getEntrydate, "2020"); + cet4Wrapper.ge(Cet_4::getResult, 425); List cet4PassedStudent = cet4Service.list(cet4Wrapper); Set cet4AllPassedStudent = cet4PassedStudent.stream().map(Cet_4::getId).collect(Collectors.toSet()); - log.info("四级通过人数,{}",cet4AllPassedStudent.size()); + log.info("四级通过人数,{}", cet4AllPassedStudent.size()); return null; } @@ -113,8 +109,7 @@ public class Cet_6ServiceImpl extends ServiceImpl implements public Result loadImportDataList() { // 创建 QueryWrapper QueryWrapper queryWrapper = new QueryWrapper<>(); - queryWrapper.select("batch", "COUNT(*) AS count") - .groupBy("batch"); + queryWrapper.select("batch", "COUNT(*) AS count").groupBy("batch"); // 执行查询,获取结果列表 List> list = this.listMaps(queryWrapper); diff --git a/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml b/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml index a7f926c2..33a80ad2 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml +++ b/jeecg-module-system/jeecg-system-start/src/main/resources/application-dev.yml @@ -45,8 +45,8 @@ spring: clean-disabled: true servlet: multipart: - max-file-size: 10MB - max-request-size: 10MB + max-file-size: 50MB + max-request-size: 50MB mail: host: smtp.163.com username: jeecgos@163.com diff --git a/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml b/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml index b106b26f..49fb5486 100644 --- a/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml +++ b/jeecg-module-system/jeecg-system-start/src/main/resources/application-prod.yml @@ -45,8 +45,8 @@ spring: clean-disabled: true servlet: multipart: - max-file-size: 10MB - max-request-size: 10MB + max-file-size: 50MB + max-request-size: 50MB mail: host: smtp.163.com username: jeecgos@163.com