From 307db0f5c15fb97abd785ef4aaf1220048da86ce Mon Sep 17 00:00:00 2001
From: Junjie <DELL@qq.com>
Date: 星期五, 09 一月 2026 15:24:55 +0800
Subject: [PATCH] #
---
src/main/java/com/zy/asrs/utils/MapExcelUtils.java | 87 +---------------------------
src/main/resources/map/demo.xlsx | 0
src/main/java/com/zy/asrs/controller/BasMapController.java | 59 -------------------
src/main/java/com/zy/common/utils/NavigateMapData.java | 8 +-
src/main/resources/map/qlsxk_map.xlsx | 0
5 files changed, 8 insertions(+), 146 deletions(-)
diff --git a/src/main/java/com/zy/asrs/controller/BasMapController.java b/src/main/java/com/zy/asrs/controller/BasMapController.java
index 9df3f27..e8bff63 100644
--- a/src/main/java/com/zy/asrs/controller/BasMapController.java
+++ b/src/main/java/com/zy/asrs/controller/BasMapController.java
@@ -176,63 +176,4 @@
return R.ok();
}
- @PostMapping("/basMap/crn/upload")
- public R uploadExcel2(@RequestParam("file") MultipartFile file) throws IOException {
- // 淇濆瓨涓婁紶鐨勬枃浠跺埌涓存椂浣嶇疆
- String filePath = System.getProperty("java.io.tmpdir") + file.getOriginalFilename();
- file.transferTo(new File(filePath));
-
- HashMap<Integer, List<List<HashMap<String, Object>>>> dataMap = mapExcelUtils.readExcel(filePath);
-
- List<List<HashMap<String, Object>>> dataList = new ArrayList<>();
- for (Map.Entry<Integer, List<List<HashMap<String, Object>>>> entry : dataMap.entrySet()) {
- Integer key = entry.getKey();
- List<List<HashMap<String, Object>>> list = entry.getValue();
-
- for (int i = 0; i < list.size(); i++) {
- List<HashMap<String, Object>> bayList = list.get(i);
- List<HashMap<String, Object>> arrayList = new ArrayList<>();
- for (int j = 0; j < bayList.size(); j++) {
- HashMap<String, Object> map = bayList.get(j);
-
- HashMap<String, Object> nodeData = new HashMap<>();
- nodeData.put("value", map.get("value"));
-
- String nodeType = map.get("bgColor").toString();
- if (nodeType.equals("RGB(0,176,80)")) {
- //璐ф灦
- nodeData.put("type", "shelf");
- }else if (nodeType.equals("RGB(255,192,0)")) {
- //鍫嗗灈鏈�
- nodeData.put("type", "crn");
- }else if (nodeType.equals("RGB(0,112,192)")) {
- //杈撻�佺嚎
- nodeData.put("type", "devp");
- nodeData.put("value", (int) Double.parseDouble(map.get("value").toString()));
- }else if (nodeType.equals("RGB(0,176,240)")) {
- //RGV
- nodeData.put("type", "rgv");
- } else if (nodeType.equals("none")) {
- //绌虹櫧鍖哄煙
- nodeData.put("type", "none");
- } else if (nodeType.equals("merge")) {
- //鍚堝苟鍖哄煙
- nodeData.put("type", "merge");
- }
-
- nodeData.put("cellWidth", map.get("cellWidth"));
- nodeData.put("cellHeight", map.get("cellHeight"));
- nodeData.put("rowSpan", map.get("rowSpan"));
- nodeData.put("colSpan", map.get("colSpan"));
-
- arrayList.add(nodeData);
- }
- dataList.add(arrayList);
- }
- }
-
-
- return R.ok().add(JSON.toJSONString(dataList));
- }
-
}
diff --git a/src/main/java/com/zy/asrs/utils/MapExcelUtils.java b/src/main/java/com/zy/asrs/utils/MapExcelUtils.java
index 7048859..bc28622 100644
--- a/src/main/java/com/zy/asrs/utils/MapExcelUtils.java
+++ b/src/main/java/com/zy/asrs/utils/MapExcelUtils.java
@@ -9,7 +9,6 @@
import com.zy.common.model.MapNode;
import com.zy.core.enums.MapNodeType;
import org.apache.poi.ss.usermodel.*;
-import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.xssf.usermodel.XSSFColor;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.stereotype.Component;
@@ -258,74 +257,12 @@
String levStr = split[0];
Integer lev = Integer.parseInt(levStr);
- int idx = 0;
- int rowLength = -1;
- int cellLength = -1;
-
- Row titleRow = sheet.getRow(1);
- for (Cell cell : titleRow) {
- if (idx < 2) {
- idx++;
- continue;
- }
- HashMap<String, Object> map = getCellValue(sheet, titleRow, cell);
- String value = map.get("value").toString();
- if (!Cools.isEmpty(value)) {
- rowLength = (int) Double.parseDouble(value);
- }
- }
-
- idx = 0;
for (Row row : sheet) {
- if (idx < 2) {
- idx++;
- continue;
- }
-
- Cell cell = row.getCell(1);
- if(cell != null) {
- HashMap<String, Object> map = getCellValue(sheet, row, cell);
- String value = map.get("value").toString();
- if (!Cools.isEmpty(value)) {
- cellLength = (int) Double.parseDouble(value);
- }
- }
- }
-
- for (int j = 0; j < cellLength; j++) {
- Row row = sheet.getRow(j + 2);
List<HashMap<String, Object>> rowData = new ArrayList<>();
- for (int k = 0; k < rowLength; k++) {
- Cell cell = row.getCell(k + 2);
- rowData.add(getCellValue(sheet, row, cell));
+ for (Cell cell : row) {
+ rowData.add(getCellValue(cell));
}
data.add(rowData);
- }
-
- int numMergedRegions = sheet.getNumMergedRegions();
- for (int j = 0; j < numMergedRegions; j++) {
- CellRangeAddress region = sheet.getMergedRegion(j);
-
- int rowSpan = region.getLastRow() - region.getFirstRow() + 1;
- int colSpan = region.getLastColumn() - region.getFirstColumn() + 1;
-
- int rowIdx = region.getFirstRow() - 2;
- int colIdx = region.getFirstColumn() - 2;
- HashMap<String, Object> map = data.get(rowIdx).get(colIdx);
- map.put("rowSpan", rowSpan);
- map.put("colSpan", colSpan);
-
- for (int k = region.getFirstRow(); k <= region.getLastRow(); k++) {
- for (int l = region.getFirstColumn(); l <= region.getLastColumn(); l++) {
- if(k == region.getFirstRow() && l == region.getFirstColumn()) {
- continue;
- }
-
- HashMap<String, Object> mapData = data.get(k - 2).get(l - 2);
- mapData.put("bgColor", "merge");
- }
- }
-
}
dataMap.put(lev, data);
@@ -337,29 +274,15 @@
return dataMap;
}
- private HashMap<String, Object> getCellValue(Sheet sheet, Row row, Cell cell) {
+ private HashMap<String, Object> getCellValue(Cell cell) {
if (cell == null) {
- HashMap<String, Object> map = new HashMap<>();
- map.put("bgColor", "none");
- map.put("cellWidth", "");
- map.put("cellHeight", "");
- map.put("value", "");
- map.put("rowSpan", 1);
- map.put("colSpan", 1);
- return map;
+ return null;
}
HashMap<String, Object> map = new HashMap<>();
String bgColor = getCellBackgroundColor(cell);
map.put("bgColor", bgColor);
-
- int columnIndex = cell.getColumnIndex();
- int columnWidth = sheet.getColumnWidth(columnIndex);//鑾峰彇鍒楀
-
- short rowHeight = row.getHeight(); //鑾峰彇琛岄珮
- map.put("cellWidth", columnWidth);
- map.put("cellHeight", rowHeight);
String value = "";
switch (cell.getCellType()) {
@@ -388,8 +311,6 @@
}
map.put("value", value);
- map.put("rowSpan", 1);
- map.put("colSpan", 1);
return map;
}
diff --git a/src/main/java/com/zy/common/utils/NavigateMapData.java b/src/main/java/com/zy/common/utils/NavigateMapData.java
index 9ad47cb..9ee76d5 100644
--- a/src/main/java/com/zy/common/utils/NavigateMapData.java
+++ b/src/main/java/com/zy/common/utils/NavigateMapData.java
@@ -223,8 +223,8 @@
}
- List<MapNode> list = lists.get(row);
- MapNode mapNode = list.get(bay);
+ List<MapNode> list = lists.get(row - 1);
+ MapNode mapNode = list.get(bay - 1);
if (mapType == NavigationMapType.NONE.id) {
//涓嶈繃婊や换浣曟暟鎹�
@@ -250,8 +250,8 @@
mapNode.setLocNo(locMast.getLocNo());
//鏇存柊list
- list.set(bay, mapNode);
- lists.set(row, list);
+ list.set(bay - 1, mapNode);
+ lists.set(row - 1, list);
}
}catch (Exception e) {
e.printStackTrace();
diff --git a/src/main/resources/map/demo.xlsx b/src/main/resources/map/demo.xlsx
new file mode 100644
index 0000000..4346378
--- /dev/null
+++ b/src/main/resources/map/demo.xlsx
Binary files differ
diff --git a/src/main/resources/map/qlsxk_map.xlsx b/src/main/resources/map/qlsxk_map.xlsx
index 5324b9c..c8bc21a 100644
--- a/src/main/resources/map/qlsxk_map.xlsx
+++ b/src/main/resources/map/qlsxk_map.xlsx
Binary files differ
--
Gitblit v1.9.1