From c98e0f05f27b9c4a63f731bc95c657cc5ba9de75 Mon Sep 17 00:00:00 2001
From: Junjie <fallin.jie@qq.com>
Date: 星期三, 08 十一月 2023 08:20:53 +0800
Subject: [PATCH] #

---
 src/main/webapp/static/js/console.js |   94 +++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 83 insertions(+), 11 deletions(-)

diff --git a/src/main/webapp/static/js/console.js b/src/main/webapp/static/js/console.js
index eea1df2..cd86882 100644
--- a/src/main/webapp/static/js/console.js
+++ b/src/main/webapp/static/js/console.js
@@ -8,9 +8,13 @@
     crns = '',
     track = '',
     tracks = '',
+    uTrack = '',
+    uTracks = '',
     stn = '',
+    barcode = '',
     stns = '',
     stnArr = [],
+    barcodeArr = [],
     floorBtn = '',
     floorBtns = '',
     floorBtnss = '',
@@ -25,26 +29,76 @@
     for (let i = 0;i < rackss.length;i++) {
         let bay ='' // 鍗曚釜搴撲綅
         let bays = '' // 搴撲綅闆嗗悎
-        let bayWidth = rackss[i].width / (rackss[i].maxBayNo / rackss[i].minBayNo)
         let maxBayNo = rackss[i].maxBayNo // 鏈�澶у簱浣嶅彿
         let minBayNo = rackss[i].minBayNo // 鏈�灏忓簱浣嶅彿
-        let bLen = maxBayNo / minBayNo // 搴撲綅涓暟
+        let bLen
+        let interval // 闂撮殧鏁�
+
+        if (maxBayNo<40) {
+            interval = 1
+            bLen = maxBayNo / interval // 搴撲綅涓暟
+        } else {
+            interval = 2
+            bLen = maxBayNo / interval // 搴撲綅涓暟
+        }
+        let bayWidth // 鍗曚釜搴撲綅瀹藉害
         let bNum // 搴撲綅鍙风爜
-        // hpPosition 0 琛ㄧず璐ф灦搴忓彿 宸�->鍙� 1 琛ㄧず璐ф灦搴忓彿 鍙�->宸�
+
+        if (minBayNo % 2 == 0) { // 浠�2寮�濮�
+            if(interval == 1) {
+                bLen = bLen - 1
+            } else if (interval == 2) {
+                if (maxBayNo % 2 == 0) { // 鍋舵暟
+                    bLen = bLen
+                } else { // 濂囨暟
+                    maxBayNo = maxBayNo + 1
+                    bLen = maxBayNo / interval // 搴撲綅涓暟
+                }
+            }
+        } else { // 浠�1寮�濮�
+            if(interval == 1) {
+                bLen = bLen
+            } else if (interval == 2) {
+                if (maxBayNo % 2 == 0) { // 鍋舵暟
+                    bLen = bLen
+                } else { // 濂囨暟
+                    bLen = bLen + 1
+                }
+            }
+        }
+        bayWidth = (rackss[i].width / bLen)
+        // hpPosition 0 琛ㄧず璐ф灦搴忓彿 宸�->鍙� 1 琛ㄧず璐ф灦搴忓彿 宸�<-鍙�
         if (mapInfo.hpPosition == 1) {
             bNum = maxBayNo
             for (let j = bLen; j > 0; j--) {
+                if (i === 0) {
+                    if (j === 13) {
+                        bay = "<button class='item' style='width: " + 160 + "px'>" + bNum + "</button>"
+                        bays = bays + bay
+                        bNum = bNum - interval;
+                        continue
+                    }
+                    bay = "<button class='item' style='width: "+ bayWidth +"px'>" + bNum + "</button>"
+                    bays = bays + bay
+                    bNum = bNum - interval;
+                    continue
+                }
+                if (j === 13) {
+                    bay = "<button class='item' style='margin-left: 160px;width: "+ bayWidth +"px'>" + (bNum - 2) + "</button>"
+                    bays = bays + bay
+                    bNum = bNum - interval - 2;
+                    continue
+                }
                 bay = "<button class='item' style='width: "+ bayWidth +"px'>" + bNum + "</button>"
                 bays = bays + bay
-                bNum = bNum - minBayNo;
+                bNum = bNum - interval;
             }
         }else {
             bNum = minBayNo
             for (let j = 0; j < bLen; j++) {
-
                 bay = "<button class='item' style='width: "+ bayWidth +"px'>" + bNum + "</button>"
                 bays = bays + bay
-                bNum = bNum + minBayNo;
+                bNum = bNum + interval;
             }
         }
 
@@ -78,6 +132,14 @@
                 "px;left: "+ crnss[i].left +
                 "px'></div>"
             crns = crns + crn
+        } else if(crnss[i].type == 'uTrack'){
+            uTrack = "<div class='uTrack' id='" + crnss[i].id +
+                "'style='width:"+ crnss[i].width +
+                "px;height: "+ crnss[i].height+
+                "px;top: "+ crnss[i].top +
+                "px;left: "+ crnss[i].left +
+                "px'>" + crnss[i].text + "</div>"
+            uTracks = uTracks + uTrack
         } else {
             track = "<div class='track' id='" + crnss[i].id +
                 "'style='width:"+ crnss[i].width +
@@ -92,12 +154,12 @@
     for (let i = 0; i < areas.length;i++) {
 
         let stnss = areas[i].stns
+        let barcodes = areas[i].barcode
         let floor = areas[i].text
         floorId = areas[i].id
         var position = (i+1)*100
         floorBtn =
             "<button class='floorBtn btn-16' onclick='changFloor("+i+")' style='top: "+position+"px;'>" + floor +"</button>"
-        console.log(mapInfo.areas[0].floors.length)
         if (mapInfo.areas[0].floors.length == 1) {
             floorBtnss = ''
         } else {
@@ -107,6 +169,7 @@
         var index = i
         var n = 1
         stnArr[index] = ''
+        barcodeArr[index] = ''
         total[index] = ''
         for (let j = 0; j < stnss.length; j++) {
             if (stnss[j].type == "stn") {
@@ -131,20 +194,29 @@
             }
 
         }
+        for (let k = 0; k < barcodes.length; k++) {
+            barcode = "<div class='barcode' id='" + barcodes[k].id +
+                "'style='width:" + barcodes[k].width +
+                "px;height: " + barcodes[k].height +
+                "px;line-height: " + barcodes[k].height +
+                "px;top: "+ barcodes[k].top +
+                "px;left: "+ barcodes[k].left + "px'>" + "</div>"
+            barcodeArr[i] = barcodeArr[i] + barcode
+        }
 
     }
-    floorInfo = racks + rackDescs + tracks + crns + stnArr[0] + floorBtnss
+    floorInfo = racks + rackDescs + tracks + uTracks + crns + stnArr[0] + floorBtnss + barcodeArr[0]
 
     $(".main-part").append(floorInfo)
     $("#line-total").html(total[0])
-    listenChange();
+    // listenChange();
 
 }
 function changFloor(e) {
     $(".main-part").empty()  // 娓呯┖鑺傜偣
-    floorInfo = racks  + stnArr[e] +rackDescs + crns + tracks + floorBtnss
+    floorInfo = racks  + stnArr[e] +rackDescs + crns + tracks + uTracks  + floorBtnss + barcodeArr[e]
     $(".main-part").append(floorInfo)
     $("#line-total").empty()
     $("#line-total").html(total[e])
-    listenChange();
+    // listenChange();
 }
\ No newline at end of file

--
Gitblit v1.9.1