From 22594e714c57c9e243fe9973515ea9467d71c2db Mon Sep 17 00:00:00 2001 From: Fixiaobai <fixiaobai@163.com> Date: 星期二, 07 十一月 2023 18:35:11 +0800 Subject: [PATCH] Changes11 --- mes-common/src/main/java/com/chinaztt/mes/common/util/easyexcel/ExcelListener.java | 1 mes-common/src/main/java/com/chinaztt/mes/common/feign/DictApi.java | 19 +++++++++ mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/ParamServiceImpl.java | 55 +++++++++++++++++++++++++++ mes-basic/src/main/java/com/chinaztt/mes/basic/service/ParamService.java | 5 +- mes-basic/src/main/java/com/chinaztt/mes/basic/controller/ParamController.java | 8 +--- mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/PartServiceImpl.java | 4 ++ 6 files changed, 84 insertions(+), 8 deletions(-) diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/controller/ParamController.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/controller/ParamController.java index eec09c0..c2b8a24 100644 --- a/mes-basic/src/main/java/com/chinaztt/mes/basic/controller/ParamController.java +++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/controller/ParamController.java @@ -17,20 +17,16 @@ package com.chinaztt.mes.basic.controller; -import com.alibaba.excel.EasyExcel; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.chinaztt.mes.basic.dto.ParamDTO; import com.chinaztt.mes.basic.dto.ParamPlusDto; import com.chinaztt.mes.basic.entity.Param; -import com.chinaztt.mes.basic.excel.ParamData; -import com.chinaztt.mes.basic.excel.ParamUploadListener; import com.chinaztt.mes.basic.service.ParamService; import com.chinaztt.mes.basic.util.DictUtils; import com.chinaztt.mes.common.util.JsonUtil; import com.chinaztt.mes.common.util.StringUtils; import com.chinaztt.mes.common.util.easyexcel.EasyExcelUtils; -import com.chinaztt.mes.common.util.easyexcel.ExcelListener; import com.chinaztt.mes.common.util.easyexcel.template.ParamTemplate; import com.chinaztt.mes.common.wrapper.QueryWrapperUtil; import com.chinaztt.ztt.admin.api.entity.SysDictItem; @@ -43,7 +39,6 @@ import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; -import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.*; import java.util.stream.Collectors; @@ -224,7 +219,8 @@ public R upload(@RequestParam("file") MultipartFile file) { try { // EasyExcel.read(file.getInputStream(), ParamTemplate.class, new ExcelListener<ParamTemplate>()).sheet().doRead(); - EasyExcelUtils.readModelExcel(ParamTemplate.class,file); + List<ParamTemplate> paramTemplates = EasyExcelUtils.readModelExcel(ParamTemplate.class, file); + paramService.importExcelPlus(paramTemplates); } catch (IOException e) { e.printStackTrace(); } diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/ParamService.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/ParamService.java index d7fd783..789e5fd 100644 --- a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/ParamService.java +++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/ParamService.java @@ -21,12 +21,12 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; +import com.chinaztt.mes.basic.dto.ParamPlusDto; import com.chinaztt.mes.basic.entity.Param; import com.chinaztt.mes.basic.excel.ParamData; -import com.chinaztt.mes.basic.dto.ParamPlusDto; +import com.chinaztt.mes.common.util.easyexcel.template.ParamTemplate; import com.chinaztt.ztt.common.core.util.R; -import javax.servlet.http.HttpServletResponse; import java.util.List; /** @@ -89,4 +89,5 @@ */ String checkItemRepeat(Param param); + void importExcelPlus(List<ParamTemplate> paramTemplates); } diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/ParamServiceImpl.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/ParamServiceImpl.java index 3ec470e..2e1a7e6 100644 --- a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/ParamServiceImpl.java +++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/ParamServiceImpl.java @@ -30,6 +30,8 @@ import com.chinaztt.mes.basic.mapper.ParamMapper; import com.chinaztt.mes.basic.service.ParamService; import com.chinaztt.mes.basic.util.DictUtils; +import com.chinaztt.mes.common.feign.DictApi; +import com.chinaztt.mes.common.util.easyexcel.template.ParamTemplate; import com.chinaztt.ztt.admin.api.entity.SysDictItem; import com.chinaztt.ztt.common.core.util.R; import lombok.AllArgsConstructor; @@ -39,7 +41,10 @@ import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; +import java.util.ArrayList; import java.util.List; +import java.util.Objects; +import java.util.Optional; import java.util.stream.Collectors; /** @@ -53,6 +58,8 @@ public class ParamServiceImpl extends ServiceImpl<ParamMapper, Param> implements ParamService { private ParamJoinTemplateMapper paramJoinTemplateMapper; private DictUtils dictUtils; + + private DictApi dictApi; @Override @Transactional(rollbackFor = Exception.class) @@ -169,4 +176,52 @@ return code; } + @Override + @Transactional(rollbackFor = Exception.class) + public void importExcelPlus(List<ParamTemplate> paramTemplates) { + //浜岀骇鍙傛暟id 133 + //涓夌骇鍙傛暟 134 + List<SysDictItem> dictTwo = dictUtils.getDict("second_param"); + List<SysDictItem> dictThree = dictUtils.getDict("third_param"); + List<Integer> count = new ArrayList<Integer>(); + int num = 0; + for (int i = 0; i < paramTemplates.size(); i++) { + if (StringUtils.isNotEmpty(paramTemplates.get(i).getParamItem())) { + count.add(num); + } + num++; + } + count.add(paramTemplates.size()); + + System.out.println(count); + List<List<ParamTemplate>> list = new ArrayList<>(); + paramTemplates.forEach(p -> { + Optional.ofNullable(p.getParamItemTwo()).ifPresent(t -> { + int size = dictTwo.stream().filter(d -> Objects.equals(p.getParamItemTwo(), d.getLabel())).collect(Collectors.toList()).size(); + if (size < 1) { + throw new RuntimeException(("瀛楀吀涓棤姝や簩绾у弬鏁�,璇锋鏌ュ悗鍐嶆瀵煎叆锛屽弬鏁颁负锛�---------銆�" + p.getParamItemTwo())); + } + }); + Optional.ofNullable(p.getParamItemThree()).ifPresent(t -> { + int size = dictThree.stream().filter(d -> Objects.equals(p.getParamItemThree(), d.getLabel())).collect(Collectors.toList()).size(); + if (size < 1) { + throw new RuntimeException(("瀛楀吀涓棤姝や笁绾у弬鏁�,璇锋鏌ュ悗鍐嶆瀵煎叆锛屽弬鏁颁负锛�---------銆�" + p.getParamItemThree())); + } + }); + }); + for (int i = 0; i < paramTemplates.size(); i++) { + for (int j = 0; j < count.size(); j++) { + if(i==count.get(j)-1){ + + }else { + + } + } + } + list.forEach(l->{ + System.out.println("======================"); + l.forEach(System.out::println); + }); + } + } diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/PartServiceImpl.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/PartServiceImpl.java index 60b2a39..8ce1260 100644 --- a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/PartServiceImpl.java +++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/PartServiceImpl.java @@ -517,6 +517,10 @@ } } + + + + public void asyncExcel(MultipartFile file,Map<String, String> dicmattype,Map<String, String> dicunit){ File file1 = MultipartFileToFile.multipartFileToFile(file); CsvReader reader = CsvUtil.getReader(); diff --git a/mes-common/src/main/java/com/chinaztt/mes/common/feign/DictApi.java b/mes-common/src/main/java/com/chinaztt/mes/common/feign/DictApi.java new file mode 100644 index 0000000..14ca780 --- /dev/null +++ b/mes-common/src/main/java/com/chinaztt/mes/common/feign/DictApi.java @@ -0,0 +1,19 @@ +package com.chinaztt.mes.common.feign; + +import com.chinaztt.ztt.admin.api.entity.SysDictItem; +import com.chinaztt.ztt.common.core.util.R; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; + +/** + * @Author 寮犲 + * @Date 2023/11/7 + */ +@FeignClient( + value = "ztt-upms-biz" +) +public interface DictApi { + + @PostMapping("/dict/item") + R insertDict(SysDictItem sysDictItem); +} diff --git a/mes-common/src/main/java/com/chinaztt/mes/common/util/easyexcel/ExcelListener.java b/mes-common/src/main/java/com/chinaztt/mes/common/util/easyexcel/ExcelListener.java index 7631455..c6c73c4 100644 --- a/mes-common/src/main/java/com/chinaztt/mes/common/util/easyexcel/ExcelListener.java +++ b/mes-common/src/main/java/com/chinaztt/mes/common/util/easyexcel/ExcelListener.java @@ -27,6 +27,7 @@ public void invoke(T classType, AnalysisContext analysisContext) { System.out.println("瀵煎叆鐨勬暟鎹�--"+classType); dataList.add(classType); + } @Override -- Gitblit v1.9.3