From dc3f9cc91759823ce59486f19b138be4b296a0f1 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期二, 28 四月 2026 09:43:28 +0800
Subject: [PATCH] #

---
 src/main/java/com/zy/asrs/entity/BasCrnp.java |   56 +++++++++++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 51 insertions(+), 5 deletions(-)

diff --git a/src/main/java/com/zy/asrs/entity/BasCrnp.java b/src/main/java/com/zy/asrs/entity/BasCrnp.java
index 8a24879..ddb49c0 100644
--- a/src/main/java/com/zy/asrs/entity/BasCrnp.java
+++ b/src/main/java/com/zy/asrs/entity/BasCrnp.java
@@ -1,12 +1,13 @@
 package com.zy.asrs.entity;
 
 import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.core.common.Cools;
 import com.zy.core.model.StationObjModel;
-import com.baomidou.mybatisplus.annotations.TableId;
-import com.baomidou.mybatisplus.enums.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.IdType;
 import com.alibaba.fastjson.JSON;
-import com.baomidou.mybatisplus.annotations.TableField;
+import com.baomidou.mybatisplus.annotation.TableField;
 import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Date;
@@ -16,7 +17,7 @@
 
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
-import com.baomidou.mybatisplus.annotations.TableName;
+import com.baomidou.mybatisplus.annotation.TableName;
 import java.io.Serializable;
 
 @Data
@@ -30,7 +31,6 @@
      */
     @ApiModelProperty(value= "缂栧彿")
     @TableId(value = "crn_no", type = IdType.INPUT)
-    @TableField("crn_no")
     private Integer crnNo;
 
     @ApiModelProperty(value= "")
@@ -82,6 +82,10 @@
     @ApiModelProperty(value= "娣卞簱浣嶆帓鍙�")
     @TableField("deep_rows")
     private String deepRows;
+
+    @ApiModelProperty(value= "鍫嗗灈鏈哄懡浠ゆ帓鍙锋槧灏凧SON")
+    @TableField("row_map")
+    private String rowMap;
 
     /**
      * 鍏ョ珯鍒楄〃
@@ -197,4 +201,46 @@
         return rowList;
     }
 
+    public Integer getCommandRow(Integer locationRow){
+        if (locationRow == null || Cools.isEmpty(this.rowMap)){
+            return locationRow;
+        }
+
+        try {
+            JSONObject rowMapJson = JSON.parseObject(this.rowMap);
+            String locationRowKey = String.valueOf(locationRow);
+            Object commandRowValue = rowMapJson.get(locationRowKey);
+            if (commandRowValue == null){
+                return locationRow;
+            }
+            if (commandRowValue instanceof Number){
+                return ((Number) commandRowValue).intValue();
+            }
+            return Integer.valueOf(String.valueOf(commandRowValue));
+        } catch (Exception exception) {
+            return locationRow;
+        }
+    }
+
+    public String formatMappedLocNo(String locNo){
+        if (Cools.isEmpty(locNo)){
+            return locNo;
+        }
+        String[] locParts = locNo.split("-");
+        if (locParts.length < 3){
+            return locNo;
+        }
+        try {
+            Integer locationRow = Integer.valueOf(locParts[0]);
+            Integer commandRow = getCommandRow(locationRow);
+            if (commandRow == null || commandRow.equals(locationRow)){
+                return locNo;
+            }
+            String mappedLocNo = commandRow + "-" + locParts[1] + "-" + locParts[2];
+            return locNo + "(" + mappedLocNo + ")";
+        } catch (Exception exception) {
+            return locNo;
+        }
+    }
+
 }

--
Gitblit v1.9.1