From 540d34e41ad66efc99f747f65f0d288cf03f4fe1 Mon Sep 17 00:00:00 2001
From: Fixiaobai <fixiaobai@163.com>
Date: 星期五, 03 十一月 2023 09:10:41 +0800
Subject: [PATCH] Changes

---
 导入模板/库位.xlsx                                                                                   |    0 
 mes-basic/src/main/java/com/chinaztt/mes/basic/excel/WarehouseData.java                        |    6 
 mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/ParamServiceImpl.java              |   30 +++++
 mes-basic/src/main/java/com/chinaztt/mes/basic/dto/ParamPlusDto.java                           |   23 ++++
 mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/WarehouseServiceImpl.java          |   33 +++---
 mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/LocationServiceImpl.java           |   23 +++-
 mes-basic/src/main/resources/mapper/ParamMapper.xml                                            |    1 
 mes-basic/src/main/java/com/chinaztt/mes/basic/excel/LocationData.java                         |   23 ++-
 mes-basic/src/main/java/com/chinaztt/mes/basic/enums/FileEnums.java                            |   38 +++++++
 mes-basic/src/main/java/com/chinaztt/mes/basic/dto/ParamDTO.java                               |    2 
 mes-basic/src/main/java/com/chinaztt/mes/basic/excel/LocationUploadListener.java               |    8 -
 mes-basic/src/main/java/com/chinaztt/mes/basic/entity/Param.java                               |   10 +
 导入模板/仓库.xlsx                                                                                   |    0 
 mes-basic/src/main/java/com/chinaztt/mes/basic/service/ParamService.java                       |    3 
 导入模板/部门.xlsx                                                                                   |    0 
 mes-basic/src/main/java/com/chinaztt/mes/basic/controller/BasicParamTemplateController.java    |    2 
 mes-basic/src/main/java/com/chinaztt/mes/basic/controller/ParamController.java                 |   48 +++++++++
 mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/BasicParamTemplateServiceImpl.java |   35 ++++--
 18 files changed, 220 insertions(+), 65 deletions(-)

diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/controller/BasicParamTemplateController.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/controller/BasicParamTemplateController.java
index 3653824..45cc021 100644
--- a/mes-basic/src/main/java/com/chinaztt/mes/basic/controller/BasicParamTemplateController.java
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/controller/BasicParamTemplateController.java
@@ -25,7 +25,6 @@
 import com.chinaztt.mes.common.wrapper.QueryWrapperUtil;
 import com.chinaztt.ztt.common.core.util.R;
 import com.chinaztt.ztt.common.log.annotation.SysLog;
-import com.chinaztt.ztt.common.security.annotation.Inner;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import lombok.AllArgsConstructor;
@@ -82,6 +81,7 @@
 	@ApiOperation(value = "瀵煎叆鐨勬ā鏉跨殑涓嬭浇", notes = "瀵煎叆鐨勬ā鏉跨殑涓嬭浇")
 	@GetMapping("/uploadTemplate/{fileName}" )
 	public void uploadTemplate(@PathVariable String fileName, HttpServletResponse response) {
+		System.out.println(fileName);
 		basicParamTemplateService.uploadTemplate(response, fileName);
 	}
     /**
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 6610d21..5c3169a 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
@@ -18,13 +18,18 @@
 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.wrapper.QueryWrapperUtil;
+import com.chinaztt.ztt.admin.api.entity.SysDictItem;
 import com.chinaztt.ztt.common.core.util.R;
 import com.chinaztt.ztt.common.log.annotation.SysLog;
 import io.swagger.annotations.Api;
@@ -35,6 +40,8 @@
 import org.springframework.web.multipart.MultipartFile;
 
 import java.io.IOException;
+import java.util.*;
+import java.util.stream.Collectors;
 
 
 /**
@@ -51,6 +58,7 @@
 
 	private final ParamService paramService;
 
+	private DictUtils dictUtils;
 	/**
 	 * 鍒嗛〉鏌ヨ
 	 *
@@ -62,7 +70,43 @@
 	@GetMapping("/page")
 	@PreAuthorize("@pms.hasPermission('technology_param_view','product_workbench')")
 	public R getParamPage(Page page, ParamDTO param) {
-		return R.ok(paramService.page(page, QueryWrapperUtil.gen(param)));
+		List<SysDictItem> dict = dictUtils.getDict("technology_param");
+		System.out.println(dict);
+		Page page1 = paramService.page(page, QueryWrapperUtil.gen(param));
+		List records = page1.getRecords();
+		List<Map>all = new ArrayList<Map>();
+		records.forEach(l->{
+			Map pojo = JsonUtil.jsonToPojo(JsonUtil.jsonToString(l), Map.class);
+			Optional.ofNullable(pojo.get("type")).ifPresent(o->{
+				pojo.put("type",dict.stream().filter(d-> Objects.equals(String.valueOf(d.getValue()),pojo.get("type"))).collect(Collectors.toList()).get(0).getLabel());
+			});
+			QueryWrapper<Param>queryWrapper=new QueryWrapper<>();
+			queryWrapper.lambda().eq(Param::getParentId,pojo.get("id"));
+			List<Param> secondList = paramService.list(queryWrapper);
+			List<Map>secondMapList = new ArrayList<>();
+			secondList.forEach(s->{
+				Map second = JsonUtil.jsonToPojo(JsonUtil.jsonToString(s), Map.class);
+				Optional.ofNullable(second.get("type")).ifPresent(o->{
+					second.put("type",dict.stream().filter(d-> Objects.equals(String.valueOf(d.getValue()),second.get("type"))).collect(Collectors.toList()).get(0).getLabel());
+				});
+				System.out.println(second);
+				QueryWrapper<Param>queryWrapperSecond=new QueryWrapper<>();
+				queryWrapperSecond.lambda().eq(Param::getParentId,second.get("id"));
+				List<Param> third = paramService.getBaseMapper().selectList(queryWrapperSecond);
+				third.forEach(t->{
+					Optional.ofNullable(t.getType()).ifPresent(o->{
+						t.setType(dict.stream().filter(d-> Objects.equals(String.valueOf(d.getValue()),t.getType())).collect(Collectors.toList()).get(0).getLabel());
+					});
+				});
+				System.out.println(third);
+				second.put("children",third);
+				secondMapList.add(second);
+			});
+			pojo.put("children",secondMapList);
+			all.add(pojo);
+		});
+		page1.setRecords(all);
+		return R.ok(page1);
 	}
 
 	/**
@@ -104,7 +148,7 @@
 	@SysLog("鏂板宸ュ簭鍙傛暟琛�")
 	@PostMapping
 	@PreAuthorize("@pms.hasPermission('technology_param_add')")
-	public R save(@RequestBody Param param) {
+	public R save(@RequestBody ParamPlusDto param) {
 		return R.ok(paramService.fullSave(param));
 	}
 
diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/dto/ParamDTO.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/dto/ParamDTO.java
index 4003998..372c340 100644
--- a/mes-basic/src/main/java/com/chinaztt/mes/basic/dto/ParamDTO.java
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/dto/ParamDTO.java
@@ -2,7 +2,6 @@
 
 import com.chinaztt.mes.basic.entity.Param;
 import com.chinaztt.ztt.admin.api.entity.SysDictItem;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.util.List;
@@ -37,6 +36,5 @@
 	 * 鏁版嵁瀛楀吀
 	 */
 	private List<SysDictItem> sysDictItemList;
-
 
 }
diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/dto/ParamPlusDto.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/dto/ParamPlusDto.java
new file mode 100644
index 0000000..b79762b
--- /dev/null
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/dto/ParamPlusDto.java
@@ -0,0 +1,23 @@
+package com.chinaztt.mes.basic.dto;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * @Author 寮犲
+ * @Date 2023/11/2
+ */
+@Data
+public class ParamPlusDto implements Serializable {
+
+	private String parameterItem;
+
+	private String code;
+
+	private List<Long> secondId;
+
+	private List<Long> thirdId;
+
+}
diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/entity/Param.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/entity/Param.java
index 0d779f3..9e5d860 100644
--- a/mes-basic/src/main/java/com/chinaztt/mes/basic/entity/Param.java
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/entity/Param.java
@@ -103,4 +103,12 @@
 	 */
 	@ApiModelProperty(value="鏁版嵁瀛楀吀")
 	private String dict;
-    }
+
+	@ApiModelProperty(value="鐖剁骇鍙傛暟")
+	@TableField("parent_id")
+	private Long parentId;
+
+	public Param() {
+		this.parentId=0L;
+	}
+}
diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/enums/FileEnums.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/enums/FileEnums.java
new file mode 100644
index 0000000..c6367a6
--- /dev/null
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/enums/FileEnums.java
@@ -0,0 +1,38 @@
+package com.chinaztt.mes.basic.enums;
+
+/**
+ * @Author 寮犲
+ * @Date 2023/11/1
+ */
+public enum FileEnums {
+	warehouse("warehouse","浠撳簱"),
+	location("location","搴撲綅")
+	;
+
+	FileEnums(String name, String fileName) {
+		this.name = name;
+		this.fileName = fileName;
+	}
+
+	public String getName() {
+		return name;
+	}
+
+	public void setName(String name) {
+		this.name = name;
+	}
+
+	public String getFileName() {
+		return fileName;
+	}
+
+	public void setFileName(String fileName) {
+		this.fileName = fileName;
+	}
+
+	private String name,fileName;
+
+	public static String getFileName(String name) {
+		return FileEnums.valueOf(name).getFileName();
+	}
+}
diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/excel/LocationData.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/excel/LocationData.java
index d5acd62..5677589 100644
--- a/mes-basic/src/main/java/com/chinaztt/mes/basic/excel/LocationData.java
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/excel/LocationData.java
@@ -1,8 +1,6 @@
 package com.chinaztt.mes.basic.excel;
 
 import com.alibaba.excel.annotation.ExcelProperty;
-import com.baomidou.mybatisplus.annotation.Unique;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 /**
@@ -20,21 +18,28 @@
 	 */
 	@ExcelProperty("搴撲綅鍚嶇О")
 	private String locName;
+
+	@ExcelProperty("搴撲綅绫诲瀷锛堢嚎杈逛粨锛涗骇鍑哄悎鏍煎簱浣嶏紱浜у嚭寰呮搴撲綅锛涗笉鍚堟牸搴撲綅锛涘緟澶勭悊搴撲綅锛涙満鍙板簱锛�")
+	private String locType;
 	/**
 	 * 浠撳簱鍚嶇О
 	 */
-	@ExcelProperty("浠撳簱鍚嶇О")
+	@ExcelProperty("鎵�灞炰粨搴�")
 	private String warehouseName;
-	/**
-	 * 浠撳簱鍚嶇О
-	 */
-	@ExcelProperty("宸ュ巶id")
+
+	@ExcelProperty("浠撳簱鐘舵��")
+	private String locState;
+
 	private Long factoryId;
+
 	/**
 	 * 浠撳簱鍚嶇О
 	 */
-	@ExcelProperty("宸ュ巶鍒嗙粍")
-	private Long locGroup;
+	@ExcelProperty("宸ュ巶")
+	private String factoryName;
 
+	@ExcelProperty("IFS搴撲綅")
+	private String ifsLocation;
 
+	private Long warehouseId;
 }
diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/excel/LocationUploadListener.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/excel/LocationUploadListener.java
index e4f4839..aa2b66a 100644
--- a/mes-basic/src/main/java/com/chinaztt/mes/basic/excel/LocationUploadListener.java
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/excel/LocationUploadListener.java
@@ -5,12 +5,10 @@
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.chinaztt.mes.basic.entity.Warehouse;
 import com.chinaztt.mes.basic.service.LocationService;
-import com.chinaztt.mes.basic.service.WarehouseService;
 
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
-import java.util.stream.Collectors;
 
 /**
  * @author ZTT
@@ -31,14 +29,14 @@
 	public void invoke(LocationData data, AnalysisContext analysisContext) {
 
 		if (StringUtils.isBlank(data.getWarehouseName())) {
-			throw new RuntimeException("缂哄皯浠撳簱鍚嶇О");
+			throw new RuntimeException("缂哄皯浠撳簱鍚嶇О=====銆嬪簱浣嶅悕涓猴細"+data.getLocName());
 		}
 		if (null == warehouseMap.get(data.getWarehouseName())) {
-			throw new RuntimeException("璇峰~鍐欐纭殑搴撲綅");
+			throw new RuntimeException("绯荤粺鏆傛棤姝や粨搴�====>浠撳簱鍚嶄负锛�"+data.getWarehouseName());
 		}
 		Warehouse warehouse = warehouseMap.get(data.getWarehouseName());
 		data.setFactoryId(warehouse.getFactoryId());
-		data.setLocGroup(warehouse.getId());
+		data.setWarehouseId(warehouse.getId());
 		list.add(data);
 		if (list.size() >= BATCH_COUNT) {
 			save();
diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/excel/WarehouseData.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/excel/WarehouseData.java
index 9d70b73..88cfec5 100644
--- a/mes-basic/src/main/java/com/chinaztt/mes/basic/excel/WarehouseData.java
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/excel/WarehouseData.java
@@ -1,8 +1,6 @@
 package com.chinaztt.mes.basic.excel;
 
 import com.alibaba.excel.annotation.ExcelProperty;
-import com.baomidou.mybatisplus.annotation.Unique;
-import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 /**
@@ -26,7 +24,9 @@
 	@ExcelProperty("浠撳簱绫诲瀷")
 	private String type;
 
-	@ExcelProperty("宸ュ巶鍚嶇О")
+	@ExcelProperty("宸ュ巶")
 	private String factoryName;
 
+	@ExcelProperty("浠撳簱鐘舵��")
+	private String state;
 }
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 943c8c8..071a980 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
@@ -23,6 +23,7 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.chinaztt.mes.basic.entity.Param;
 import com.chinaztt.mes.basic.excel.ParamData;
+import com.chinaztt.mes.basic.dto.ParamPlusDto;
 import com.chinaztt.ztt.common.core.util.R;
 
 import java.util.List;
@@ -42,7 +43,7 @@
 	 * @param ids
 	 * @return
 	 */
-	R<Boolean> fullSave(Param param);
+	R<Boolean> fullSave(ParamPlusDto param);
 
 	/**
 	 * 淇敼
diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/BasicParamTemplateServiceImpl.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/BasicParamTemplateServiceImpl.java
index ebaa444..8fb7751 100644
--- a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/BasicParamTemplateServiceImpl.java
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/BasicParamTemplateServiceImpl.java
@@ -17,6 +17,7 @@
 package com.chinaztt.mes.basic.service.impl;
 
 import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.io.IoUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
@@ -28,6 +29,7 @@
 import com.chinaztt.mes.basic.entity.ParamJoinTemplate;
 import com.chinaztt.mes.basic.entity.Template;
 import com.chinaztt.mes.basic.entity.TemplateTypeRelation;
+import com.chinaztt.mes.basic.enums.FileEnums;
 import com.chinaztt.mes.basic.mapper.BasicParamTemplateMapper;
 import com.chinaztt.mes.basic.mapper.ParamJoinTemplateMapper;
 import com.chinaztt.mes.basic.mapper.ParamMapper;
@@ -41,6 +43,9 @@
 import org.springframework.transaction.annotation.Transactional;
 
 import javax.servlet.http.HttpServletResponse;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
 import java.util.ArrayList;
 import java.util.List;
 
@@ -147,20 +152,22 @@
 
 	@Override
 	public void uploadTemplate(HttpServletResponse response, String fileName) {
-		//鑾峰彇瀛楀吀鐨勬暟缁勫��
-		//List<SysDictItem> dict = dictUtils.getDict("template_upload");
-		//if (CollectionUtil.isNotEmpty(dict)) {
-		//	dict.forEach(a -> {
-		//		if (a.getLabel().equals(fileName)) {
-		//			try (InputStream inputStream = minioTemplate.getObject("template", a.getValue())) {
-		//				response.setContentType("application/octet-stream; charset=UTF-8");
-		//				IoUtil.copy(inputStream, response.getOutputStream());
-		//			} catch (Exception e) {
-		//				log.error("鏂囦欢璇诲彇寮傚父: {}", e.getLocalizedMessage());
-		//			}
-		//		}
-		//	});
-		//}
+		String name = FileEnums.getFileName(fileName);
+		InputStream ins = null;
+		try {
+			ins = new FileInputStream("D:/file/瀵煎叆妯℃澘/" + name + ".xlsx");
+			response.setContentType("application/octet-stream; charset=UTF-8");
+			IoUtil.copy(ins, response.getOutputStream());
+		} catch (IOException e) {
+			e.printStackTrace();
+		} finally {
+			try {
+				assert ins != null;
+				ins.close();
+			} catch (IOException e) {
+				e.printStackTrace();
+			}
+		}
 	}
 
 	@Override
diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/LocationServiceImpl.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/LocationServiceImpl.java
index b5b736b..d459a35 100644
--- a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/LocationServiceImpl.java
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/LocationServiceImpl.java
@@ -19,7 +19,6 @@
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.JSON;
-import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -31,12 +30,12 @@
 import com.chinaztt.mes.basic.dto.LocationDTO;
 import com.chinaztt.mes.basic.dto.LocationIfsMoveDTO;
 import com.chinaztt.mes.basic.entity.Location;
-import com.chinaztt.mes.basic.entity.Warehouse;
 import com.chinaztt.mes.basic.excel.LocationData;
 import com.chinaztt.mes.basic.mapper.LocationMapper;
 import com.chinaztt.mes.basic.mapper.WarehouseMapper;
 import com.chinaztt.mes.basic.service.LocationService;
-import com.chinaztt.mes.basic.service.WarehouseService;
+import com.chinaztt.mes.basic.util.DictUtils;
+import com.chinaztt.ztt.admin.api.entity.SysDictItem;
 import com.chinaztt.ztt.admin.api.feign.RemoteParamService;
 import com.chinaztt.ztt.common.core.constant.SecurityConstants;
 import com.chinaztt.ztt.common.core.util.R;
@@ -47,8 +46,6 @@
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Map;
-import java.util.stream.Collector;
-import java.util.stream.Collectors;
 
 /**
  * 搴撲綅鍩虹鏁版嵁
@@ -64,7 +61,7 @@
 	public static final String CONTRACT = "IFS_DOMAIN";
 	private RemoteParamService remoteParamService;
 	private IfsFeignClient ifsFeignClient;
-
+	private DictUtils dictUtils;
 	@Override
 	public IPage<List<Location>> getLoc(Page page, QueryWrapper<LocationDTO> ew) {
 		return baseMapper.getLoc(page, ew);
@@ -90,12 +87,24 @@
 		if (CollectionUtil.isEmpty(list)) {
 			return;
 		}
+		List<SysDictItem> dict = dictUtils.getDict("warehouse_type");
 		for (LocationData data : list) {
 			Location newLocation = new Location();
+			dict.forEach(a->{
+				if (a.getLabel().equals(data.getLocType())){
+					newLocation.setLocType(a.getValue());
+				}
+			});
+			if("鍚敤".equals(data.getLocState())){
+				newLocation.setLocStatus(1);
+			}else{
+				newLocation.setLocStatus(0);
+			}
 			newLocation.setFactoryId(data.getFactoryId());
-			newLocation.setLocGroup(data.getLocGroup());
+			newLocation.setLocGroup(data.getWarehouseId());
 			newLocation.setLocName(data.getLocName());
 			newLocation.setLocNo(data.getLocNo());
+			newLocation.setIfsLocation(data.getIfsLocation());
 			baseMapper.insert(newLocation);
 		}
 	}
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..edbbd62 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;
@@ -34,6 +35,7 @@
 import lombok.AllArgsConstructor;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.List;
 import java.util.stream.Collectors;
@@ -51,12 +53,36 @@
 	private DictUtils dictUtils;
 
 	@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();
 	}
 
diff --git a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/WarehouseServiceImpl.java b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/WarehouseServiceImpl.java
index 6f9b49e..8251455 100644
--- a/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/WarehouseServiceImpl.java
+++ b/mes-basic/src/main/java/com/chinaztt/mes/basic/service/impl/WarehouseServiceImpl.java
@@ -21,13 +21,10 @@
 import cn.hutool.core.io.IoUtil;
 import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
-import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
-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.entity.Factory;
 import com.chinaztt.mes.basic.entity.Warehouse;
 import com.chinaztt.mes.basic.excel.WarehouseData;
 import com.chinaztt.mes.basic.mapper.FactoryMapper;
@@ -43,6 +40,7 @@
 import lombok.SneakyThrows;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.multipart.MultipartFile;
 
 import javax.servlet.http.HttpServletResponse;
@@ -50,6 +48,7 @@
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
+import java.util.Objects;
 
 /**
  * 浠撳簱鍩虹鏁版嵁
@@ -130,35 +129,33 @@
 	}
 
 	@Override
+	@Transactional(rollbackFor = Exception.class)
 	public void importWarehouseExcel(List<WarehouseData> list) {
 		if (CollectionUtil.isEmpty(list)) {
 			return;
 		}
-		List<SysDictItem> dict = dictUtils.getDict("warehouse_type");
-		List<Factory> factoryList =factoryMapper.selectList(null);
+		List<SysDictItem> dict = dictUtils.getDict("storehouse_type");
 		for (WarehouseData data :list){
+			QueryWrapper<Warehouse> wrapper = new QueryWrapper<>();
+			wrapper.lambda().eq(Warehouse::getWarehouseName,data.getWarehouseName());
+			Warehouse warehouse1 = baseMapper.selectOne(wrapper);
+			if(!Objects.isNull(warehouse1)){
+				continue;
+			}
 			Warehouse warehouse = new Warehouse();
 			dict.forEach(a -> {
 				if (a.getLabel().equals(data.getType())){
 					warehouse.setWarehouseType(a.getValue());
 				}
 			});
-			factoryList.forEach(b -> {
-				if (b.getFactoryName().equals(data.getFactoryName())){
-					warehouse.setFactoryId(b.getId());
-				}
-			});
-			if (warehouse.getFactoryId()==null){
-				log.error("宸ュ巶:" + data.getWarehouseName() + "涓嶅瓨鍦�");
-				continue;
+			if("鍚敤".equals(data.getState())){
+				warehouse.setWarehouseStatus(1);
+			}else{
+				warehouse.setWarehouseStatus(0);
 			}
-			if(warehouse.getWarehouseType()==null){
-				log.error("浠撳簱绫诲瀷:" + data.getType() + "涓嶅瓨鍦�");
-				continue;
-			};
 			warehouse.setWarehouseNo(data.getWarehouseNo());
 			warehouse.setWarehouseName(data.getWarehouseName());
-			warehouse.setWarehouseStatus(1);
+			//warehouse.setWarehouseStatus(1);
             baseMapper.insert(warehouse);
 		}
 	}
diff --git a/mes-basic/src/main/resources/mapper/ParamMapper.xml b/mes-basic/src/main/resources/mapper/ParamMapper.xml
index 46de6bd..7a69747 100644
--- a/mes-basic/src/main/resources/mapper/ParamMapper.xml
+++ b/mes-basic/src/main/resources/mapper/ParamMapper.xml
@@ -38,6 +38,7 @@
 		<result property="index" column="index"/>
 		<result property="paramValue" column="param_value"/>
 		<result property="defaultValue" column="default_value"/>
+		<result property="parentId" column="parent_id"/>
 		<result property="dict" column="dict"/>
 		<collection property="sysDictItemList" ofType="com.chinaztt.ztt.admin.api.entity.SysDictItem"
 					column="dict" select="com.chinaztt.mes.basic.mapper.ParamMapper.getDict">
diff --git "a/\345\257\274\345\205\245\346\250\241\346\235\277/\344\273\223\345\272\223.xlsx" "b/\345\257\274\345\205\245\346\250\241\346\235\277/\344\273\223\345\272\223.xlsx"
index baa2346..591e5e3 100644
--- "a/\345\257\274\345\205\245\346\250\241\346\235\277/\344\273\223\345\272\223.xlsx"
+++ "b/\345\257\274\345\205\245\346\250\241\346\235\277/\344\273\223\345\272\223.xlsx"
Binary files differ
diff --git "a/\345\257\274\345\205\245\346\250\241\346\235\277/\345\272\223\344\275\215.xlsx" "b/\345\257\274\345\205\245\346\250\241\346\235\277/\345\272\223\344\275\215.xlsx"
index 0926c33..28d37b8 100644
--- "a/\345\257\274\345\205\245\346\250\241\346\235\277/\345\272\223\344\275\215.xlsx"
+++ "b/\345\257\274\345\205\245\346\250\241\346\235\277/\345\272\223\344\275\215.xlsx"
Binary files differ
diff --git "a/\345\257\274\345\205\245\346\250\241\346\235\277/\351\203\250\351\227\250.xlsx" "b/\345\257\274\345\205\245\346\250\241\346\235\277/\351\203\250\351\227\250.xlsx"
index dac448e..47ff7c1 100644
--- "a/\345\257\274\345\205\245\346\250\241\346\235\277/\351\203\250\351\227\250.xlsx"
+++ "b/\345\257\274\345\205\245\346\250\241\346\235\277/\351\203\250\351\227\250.xlsx"
Binary files differ

--
Gitblit v1.9.3