From e8a0f05f99f33fa05085536541da6bc27e66a644 Mon Sep 17 00:00:00 2001 From: zhanghua <314079846@qq.com> Date: 星期五, 14 四月 2023 14:57:55 +0800 Subject: [PATCH] bug修改 --- ycl-common/src/main/java/com/ycl/controller/depart/DepartController.java | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 files changed, 50 insertions(+), 2 deletions(-) diff --git a/ycl-common/src/main/java/com/ycl/controller/depart/DepartController.java b/ycl-common/src/main/java/com/ycl/controller/depart/DepartController.java index 8485e5f..0f7733e 100644 --- a/ycl-common/src/main/java/com/ycl/controller/depart/DepartController.java +++ b/ycl-common/src/main/java/com/ycl/controller/depart/DepartController.java @@ -1,6 +1,9 @@ package com.ycl.controller.depart; +import com.alibaba.excel.EasyExcel; +import com.alibaba.excel.context.AnalysisContext; +import com.alibaba.excel.read.listener.ReadListener; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; @@ -11,6 +14,9 @@ import com.ycl.controller.BaseController; import com.ycl.dto.UmsDepartDto; import com.ycl.entity.depart.UmsDepart; +import com.ycl.entity.dict.DataDictionary; +import com.ycl.mapper.depart.UmsDepartMapper; +import com.ycl.mapper.dict.DataDictionary2Mapper; import com.ycl.service.depart.UmsDepartService; import com.ycl.service.user.UmsDepartManageService; import com.ycl.utils.EasyExcelUtils; @@ -28,6 +34,7 @@ import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.List; +import java.util.Objects; /** * <p> @@ -134,13 +141,54 @@ public void exportDpt(HttpServletResponse response) { List<UmsDepartDto> umsDepartDtos = departService.departExp(); String sheetName = "閮ㄩ棬瀵煎嚭"; - EasyExcelUtils.export(response, sheetName, UmsDepartDto.class, umsDepartDtos); + EasyExcelUtils.export1(response, sheetName, UmsDepartDto.class, umsDepartDtos, "閮ㄩ棬瀵煎嚭"); } + @Resource + private UmsDepartMapper sccgDepartMapper; + @Resource + private DataDictionary2Mapper dataDictionary2Mapper; @ApiOperation("閮ㄩ棬瀵煎叆") @PostMapping("/import") public CommonResult importDpt(MultipartFile file) throws IOException { - EasyExcelUtils.importDepartFile(file); + EasyExcel.read(file.getInputStream()) + .head(UmsDepartDto.class) + .registerReadListener(new ReadListener<UmsDepartDto>() { + @Override + public void invoke(UmsDepartDto umsDepartDto, AnalysisContext analysisContext) { + // 涓嶈兘閲嶅鎻掑叆 + String departTypeName = umsDepartDto.getDepartTypeName(); + UmsDepart one = sccgDepartMapper.selectOne(new LambdaQueryWrapper<UmsDepart>().eq(UmsDepart::getDepartName, departTypeName)); + if (Objects.nonNull(one)){ + throw new RuntimeException("璇ラ儴闂ㄥ凡缁忓瓨鍦�"); + } + UmsDepart umsDepart = new UmsDepart(); + // 璁剧疆閮ㄩ棬鍚嶅瓧 + umsDepart.setDepartName(umsDepartDto.getDepartTypeName()); + // 璁剧疆閮ㄩ棬鎻忚堪 + umsDepart.setDepartDes(umsDepartDto.getDepartDes()); + // 璁剧疆閮ㄩ棬绫诲瀷 + DataDictionary dataDictionary = dataDictionary2Mapper.selectOne(new LambdaQueryWrapper<DataDictionary>().eq(DataDictionary::getName, umsDepartDto.getDepartType())); + if (Objects.isNull(dataDictionary)){ + throw new RuntimeException("閮ㄩ棬绫诲瀷涓嶅瓨鍦�"); + }else { + umsDepart.setDepartType(new Long(dataDictionary.getId()).intValue()); + } + // 璁剧疆鐖秈d + UmsDepart two = sccgDepartMapper.selectOne(new LambdaQueryWrapper<UmsDepart>().eq(UmsDepart::getDepartName, umsDepartDto.getParentDepartName())); + if (Objects.nonNull(two)){ + umsDepart.setParentId(two.getParentId()); + } + int insert = sccgDepartMapper.insert(umsDepart); + if (insert < 1){ + throw new RuntimeException("鎻掑叆澶辫触"); + } + } + @Override + public void doAfterAllAnalysed(AnalysisContext analysisContext) { + + } + }).sheet().doRead(); return CommonResult.success(true, "瀵煎叆鎴愬姛"); } -- Gitblit v1.8.0