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-basic/src/main/java/com/chinaztt/mes/basic/service/impl/ParamServiceImpl.java | 99 ++++++++++++++++++++++++++++++++++++++++++++++++- 1 files changed, 97 insertions(+), 2 deletions(-) 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 ccc7afb..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 @@ -22,6 +22,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.chinaztt.mes.basic.dto.ParamPlusDto; import com.chinaztt.mes.basic.entity.Param; import com.chinaztt.mes.basic.entity.ParamJoinTemplate; import com.chinaztt.mes.basic.excel.ParamData; @@ -29,13 +30,21 @@ 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; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +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; /** @@ -50,13 +59,39 @@ private ParamJoinTemplateMapper paramJoinTemplateMapper; private DictUtils dictUtils; + private DictApi dictApi; + @Override - public R<Boolean> fullSave(Param param) { + @Transactional(rollbackFor = Exception.class) + public R<Boolean> fullSave(ParamPlusDto param) { int noCount = baseMapper.selectCount(Wrappers.<Param>lambdaQuery().eq(Param::getCode, param.getCode())); if (noCount > 0) { return R.failed("缂栧彿閲嶅"); } - baseMapper.insert(param); + List<SysDictItem> second_param = dictUtils.getDict("second_param"); + List<SysDictItem> third_param = dictUtils.getDict("third_param"); + Param father=new Param(); + father.setCode(param.getCode()); + father.setParameterItem(param.getParameterItem()); + baseMapper.insert(father); + //浜岀骇鍙傛暟 + param.getSecondId().forEach(s->{ + Param second=new Param(); + SysDictItem sysDictItem = second_param.stream().filter(p -> p.getId().equals(Integer.valueOf(String.valueOf(s)))).collect(Collectors.toList()).get(0); + second.setParameterItem(sysDictItem.getLabel()); + second.setCode(""+s); + second.setParentId(father.getId()); + baseMapper.insert(second); + //涓夌骇 + param.getThirdId().forEach(t->{ + Param third=new Param(); + SysDictItem sysThirdDictItem = third_param.stream().filter(p -> p.getId().equals(Integer.valueOf(String.valueOf(t)))).collect(Collectors.toList()).get(0); + third.setParameterItem(sysThirdDictItem.getLabel()); + third.setCode(""+t); + third.setParentId(second.getId()); + baseMapper.insert(third); + }); + }); return R.ok(); } @@ -129,4 +164,64 @@ } } + private String codeMake() { + // 鍥哄畾瀛楃涓� GX + 骞存湀鏃� + 01 + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd"); + String yrar = formatter.format(LocalDateTime.now()); + String code = "GX" + yrar; + List<String> parameterItem = baseMapper.getNos(code); + if (CollectionUtil.isEmpty(parameterItem)) { + code = code + "01"; + } + 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); + }); + } + } -- Gitblit v1.9.3