From 931db51a7faf8bd8efa68e80db39cad057dcbbdf Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期三, 08 十一月 2023 15:06:31 +0800
Subject: [PATCH] Changes11

---
 mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/ParamServiceImpl.java |   93 ++++++++++++++++++++++++++++++++++++++++++----
 1 files changed, 85 insertions(+), 8 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 2e1a7e6..1035e66 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
@@ -19,6 +19,7 @@
 import cn.hutool.core.collection.CollectionUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -45,6 +46,7 @@
 import java.util.List;
 import java.util.Objects;
 import java.util.Optional;
+import java.util.concurrent.atomic.AtomicInteger;
 import java.util.stream.Collectors;
 
 /**
@@ -183,6 +185,7 @@
 		//涓夌骇鍙傛暟 134
 		List<SysDictItem> dictTwo = dictUtils.getDict("second_param");
 		List<SysDictItem> dictThree = dictUtils.getDict("third_param");
+		List<SysDictItem> type = dictUtils.getDict("technology_param");
 		List<Integer> count = new ArrayList<Integer>();
 		int num = 0;
 		for (int i = 0; i < paramTemplates.size(); i++) {
@@ -208,19 +211,93 @@
 					throw new RuntimeException(("瀛楀吀涓棤姝や笁绾у弬鏁�,璇锋鏌ュ悗鍐嶆瀵煎叆锛屽弬鏁颁负锛�---------銆�" + p.getParamItemThree()));
 				}
 			});
+
+			Optional.ofNullable(p.getParamType()).ifPresent(t -> {
+				int size = type.stream().filter(d -> Objects.equals(p.getParamType(), d.getLabel())).collect(Collectors.toList()).size();
+				if (size < 1) {
+					throw new RuntimeException(("瀛楀吀涓棤姝ゅ弬鏁扮被鍨�,璇锋鏌ュ悗鍐嶆瀵煎叆锛岀被鍨嬩负锛�---------銆�" + p.getParamType()));
+				}
+			});
 		});
-		for (int i = 0; i < paramTemplates.size(); i++) {
-			for (int j = 0; j < count.size(); j++) {
-				if(i==count.get(j)-1){
 
-				}else {
-
+		List<List<ParamTemplate>>listParamTemplates = new ArrayList<List<ParamTemplate>>();
+			for (int j = 0; j < count.size()-1; j++) {
+				List<ParamTemplate> paramTemplateLists = new ArrayList<>();
+				for (int i = count.get(j); i < count.get(j+1); i++) {
+					paramTemplateLists.add(paramTemplates.get(i));
+				}
+				listParamTemplates.add(paramTemplateLists);
+			}
+		listParamTemplates.forEach(l-> {
+			System.out.println("=========================================");
+			l.forEach(System.out::println);
+		});
+		List<List<Param>>paramList=new ArrayList<>();
+		AtomicInteger nums = new AtomicInteger();
+		List<Long>secondIds=new ArrayList();
+		for (int i = 0; i < listParamTemplates.size(); i++) {
+			List<ParamTemplate> l = listParamTemplates.get(i);
+			List<Param>paramList1=new ArrayList<>();
+			System.out.println("=========================================");
+			l.forEach(System.out::println);
+			ParamTemplate paramTemplate = l.get(0);
+			System.out.println("鏁扮粍鏁版嵁=======銆�"+paramTemplate);
+			Param paramFirst=new Param();
+			paramFirst.setCode("ZS-CS"+IdWorker.getIdStr());
+			//涓�绾у弬鏁�
+			String paramItem = paramTemplate.getParamItem();
+			paramFirst.setParameterItem(paramItem);
+			if(l.size()<=1){
+				Optional.ofNullable(paramTemplate.getParamType()).ifPresent(o->{
+					List<SysDictItem> collect = type.stream().filter(t -> Objects.equals(paramTemplate.getParamType(), t.getLabel())).collect(Collectors.toList());
+					paramFirst.setType(collect.get(0).getValue());
+				});
+				paramFirst.setParameterFormat(paramTemplate.getParamFormat());
+				paramFirst.setUnit(paramTemplate.getUnit());
+			}
+			paramFirst.setId(IdWorker.getId());
+			System.out.println("涓�绾�--------銆�"+paramFirst);
+			paramList1.add(paramFirst);
+			if(l.size()>1){
+				for (int k = 0; k < l.size(); k++) {
+					ParamTemplate c = l.get(k);
+					if(c.getParamItemTwo()!=null){
+						Param second=new Param();
+						second.setId(IdWorker.getId());
+						secondIds.add(second.getId());
+						second.setCode(dictTwo.stream().filter(d -> Objects.equals(c.getParamItemTwo(), d.getLabel())).collect(Collectors.toList()).get(0).getId()+"");
+						second.setParameterItem(c.getParamItemTwo());
+						if(c.getParamItemThree()==null){
+							second.setType(type.stream().filter(d -> Objects.equals(c.getParamType(), d.getLabel())).collect(Collectors.toList()).get(0).getValue());
+							second.setParameterFormat(c.getParamFormat());
+							second.setUnit(c.getUnit());
+						}
+						second.setParentId(paramList1.get(0).getId());
+						paramList1.add(second);
+					}
+					if (c.getParamItemThree()!=null){
+						Param third=new Param();
+						third.setId(IdWorker.getId());
+						long paramItemTwo = secondIds.get(secondIds.size()-1);
+						//System.out.println(nums.get()+"鎵�灞炰簩绾�======銆�"+secondIds.get(secondIds.size()-1));
+						third.setParentId(paramItemTwo);
+						third.setParameterItem(c.getParamItemThree());
+						third.setCode(dictThree.stream().filter(d -> Objects.equals(c.getParamItemThree(), d.getLabel())).collect(Collectors.toList()).get(0).getId()+"");
+						third.setType(type.stream().filter(d -> Objects.equals(c.getParamType(), d.getLabel())).collect(Collectors.toList()).get(0).getValue());
+						third.setParameterFormat(c.getParamFormat());
+						third.setUnit(c.getUnit());
+						paramList1.add(third);
+					}
 				}
 			}
+			paramList.add(paramList1);
 		}
-		list.forEach(l->{
-			System.out.println("======================");
-			l.forEach(System.out::println);
+		System.out.println("==================");
+		paramList.forEach(p->{
+			p.forEach(cc->{
+				System.out.println(cc);
+				baseMapper.insert(cc);
+			});
 		});
 	}
 

--
Gitblit v1.9.3