From d600bbc25fb2e306d92cffafe2d7aa601daa536b Mon Sep 17 00:00:00 2001
From: Junjie <DELL@qq.com>
Date: 星期五, 12 十二月 2025 11:02:30 +0800
Subject: [PATCH] #AI

---
 src/main/webapp/views/index.html |  138 ++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 134 insertions(+), 4 deletions(-)

diff --git a/src/main/webapp/views/index.html b/src/main/webapp/views/index.html
index fee90ed..86a8ab5 100644
--- a/src/main/webapp/views/index.html
+++ b/src/main/webapp/views/index.html
@@ -2,7 +2,7 @@
 <html lang="en">
 <head>
   <meta charset="utf-8">
-  <title>娴欐睙涓壃 - 鑷姩鍖栫珛浣撲粨搴� - AS / RS</title>
+  <title>娴欐睙涓壃 - 鑷姩鍖栫珛浣撲粨搴� - WCS</title>
   <meta name="renderer" content="webkit">
   <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
   <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
@@ -17,6 +17,50 @@
       font-size: 18px;
       font-weight: 400;
       /*margin-left: 5px;*/
+    }
+
+    /* 寮圭獥鏍峰紡 */
+    .popup {
+        position: fixed;
+        top: 0;
+        left: 0;
+        width: 100%;
+        height: 100%;
+        background-color: rgba(0,0,0,0.5);
+        display: none;
+        justify-content: center;
+        align-items: center;
+        z-index: 9999;
+    }
+
+    .popup-content {
+        background-color: #fff;
+        padding: 20px;
+        border-radius: 5px;
+        box-shadow: 0px 0px 20px rgba(0,0,0,0.3);
+        text-align: center;
+    }
+
+    /* AI鍔╂墜鎶藉眽鍔ㄧ敾 */
+    @keyframes slideInRight {
+      from { transform: translate3d(100%, 0, 0); opacity: 0; }
+      to { transform: translate3d(0, 0, 0); opacity: 1; }
+    }
+
+    @keyframes slideOutRight {
+      from { transform: translate3d(0, 0, 0); opacity: 1; }
+      to { transform: translate3d(100%, 0, 0); opacity: 0; }
+    }
+
+    .ai-drawer-layer {
+      box-shadow: -8px 0 24px rgba(0, 0, 0, 0.15) !important;
+      border-radius: 8px 0 0 8px !important;
+      overflow: hidden;
+      animation: slideInRight 0.5s cubic-bezier(0.16, 1, 0.3, 1);
+    }
+
+    .ai-drawer-layer-close {
+      animation: slideOutRight 0.4s cubic-bezier(0.16, 1, 0.3, 1) forwards !important;
     }
   </style>
 </head>
@@ -43,11 +87,11 @@
 <!--      <li class="layui-nav-item" lay-unselect>-->
 <!--        <a ew-event="note" title="渚跨"><i class="layui-icon layui-icon-note"></i></a>-->
 <!--      </li>-->
-      <li class="layui-nav-item" lay-unselect id="fakeShow" style="display: none;user-select: none;">
+      <li class="layui-nav-item" lay-unselect id="fakeShow" style="display: none;user-select: none;margin-right: 10px;">
         <div style="color: red;" id="fakeShowText">浠跨湡妯℃嫙杩愯涓�</div>
       </li>
       <li class="layui-nav-item" lay-unselect id="licenseShow" style="display: none;user-select: none;">
-        <div style="color: red;">璁稿彲璇佹湁鏁堟湡锛�<span id="licenseDays">29</span>澶�</div>
+        <div style="color: red;">涓存椂璁稿彲璇佹湁鏁堟湡锛�<span id="licenseDays">29</span>澶�</div>
       </li>
       <li class="layui-nav-item layui-hide-xs" lay-unselect>
         <a ew-event="fullScreen" title="鍏ㄥ睆"><i class="layui-icon layui-icon-screen-full"></i></a>
@@ -80,7 +124,7 @@
   <div class="layui-body"></div>
   <!-- 搴曢儴 -->
   <div class="layui-footer layui-text">
-    copyright 漏 2023 娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙� all rights reserved.
+    copyright 漏 2026 娴欐睙涓壃绔嬪簱鎶�鏈湁闄愬叕鍙� all rights reserved.
     <span class="pull-right">Version 1.0.0</span>
   </div>
 
@@ -91,6 +135,19 @@
   <div class="layuimini-loader-inner"></div>
 </div>
 
+<!-- 寮圭獥鍐呭 -->
+<div class="popup" id="popup">
+    <div class="popup-content">
+        <h2 style="font-size: 28px;margin-bottom: 10px;">璁稿彲璇佸嵆灏嗚繃鏈�</h2>
+        <div id="popup-text" style="font-size: 28px;color: red"></div>
+        <button style="background-color: #007bff;color: #fff;border: none;padding: 10px 20px;border-radius: 5px;cursor: pointer;font-size: 16px;" onclick="hidePopup()">鍏抽棴</button>
+    </div>
+</div>
+
+<!-- 鍙充笅瑙扴VG鍔ㄧ敾 -->
+<div id="ai-assistant-btn" style="position: fixed; bottom: 40px; right: 20px; z-index: 9999; cursor: pointer;">
+</div>
+
 <script type="text/javascript" src="../static/js/jquery/jquery-3.3.1.min.js"></script>
 <script type="text/javascript" src="../static/layui/layui.js"></script>
 <script type="text/javascript" src="../static/js/handlebars/handlebars-v4.5.3.js"></script>
@@ -98,10 +155,37 @@
 <script>
   console.log('%c 涓壃绔嬪簱骞冲彴 %c 1.0.0','background-color:rgb(53,73,94);color: #fff;border-radius:2px 0 0 2px;padding:2px 4px;','background-color:rgb(25,190,107);color: #fff;border-radius:0 2px 2px 0;padding:2px 4px;font: 9pt "Apercu Regular", Georgia, "Times New Roman", Times, serif;');
   $(function () {
+    // 娉ㄥ叆AI鍔╂墜鍥炬爣
+    $('#ai-assistant-btn').html(getAiIconHtml(60, 60));
+
     if ("" === localStorage.getItem('token')) {
       top.location.href = baseUrl + "/login";
     }
   });
+
+  // 鏄剧ず寮圭獥
+  function showPopup(res) {
+      document.getElementById('popup').style.display = 'block';
+      // 鑾峰彇寮瑰嚭绐楀彛鍐呭鐨勫鍣ㄥ厓绱�
+      var popupText = document.getElementById('popup-text');
+      // 鍋囪鍚庡彴杩斿洖鐨勫瓧绗︿覆涓� responseString
+      if (res!==""){
+          // 鑾峰彇褰撳墠鏃ユ湡
+          const currentDate = new Date();
+          // 鍒涘缓鏂版棩鏈熷璞″苟娣诲姞澶╂暟
+          const newDate = new Date();
+          newDate.setDate(currentDate.getDate() + res + 1);
+          // 灏嗗瓧绗︿覆璁剧疆涓哄脊绐楀唴瀹圭殑鏂囨湰
+          popupText.textContent = "璁稿彲璇佸皢浜�" + new Intl.DateTimeFormat('zh-CN').format(newDate) + "杩囨湡锛屽墿浣欐湁鏁堟湡:" + res + "澶╋紒";
+      }else {
+          document.getElementById('popup').style.display = 'none';
+      }
+  }
+
+  // 闅愯棌寮圭獥
+  function hidePopup() {
+      document.getElementById('popup').style.display = 'none';
+  }
 
   layui.config({
     base: baseUrl + "/static/layui/lay/modules/"
@@ -221,6 +305,10 @@
             $("#licenseShow").show()
             $("#licenseDays").html(days)
           }
+
+          if (days <= 15) {
+             showPopup(days)
+          }
         }else {
           top.location.href = baseUrl + "/login";
         }
@@ -247,6 +335,48 @@
     var url = logout.getAttribute('href');
     logout.setAttribute('href', baseUrl + "/login");
 
+    // AI鍔╂墜鍥炬爣鎮诞鎻愮ず
+    $('#ai-assistant-btn').on('mouseenter', function(){
+        this.index = layer.tips('AI鍔╂墜', this, {
+            tips: [1, '#333'], // 涓婃柟鏄剧ず锛屾繁鑹茶儗鏅�
+            time: -1 // 涓嶈嚜鍔ㄥ叧闂�
+        });
+    }).on('mouseleave', function(){
+        layer.close(this.index);
+    }).on('click', function () {
+        layer.open({
+            type: 2,
+            title: false, // 闅愯棌榛樿鏍囬鏍忥紝鏇寸畝娲�
+            closeBtn: 0, // 闅愯棌鍏抽棴鎸夐挳锛岀偣鍑婚伄缃╁叧闂�
+            shadeClose: false, // 鏀逛负鎵嬪姩鎺у埗鍏抽棴锛屼互渚挎挱鏀惧姩鐢�
+            shade: 0.1,
+            area: ['600px', '100%'],
+            offset: 'r', // 鍙充晶鎮诞
+            anim: -1, // 绂佺敤榛樿鍔ㄧ敾锛屼娇鐢–SS鍔ㄧ敾
+            isOutAnim: false,
+            skin: 'ai-drawer-layer', // 鑷畾涔夌毊鑲�
+            content: 'ai/diagnosis.html',
+            success: function(layero, index){
+                // 鑳屾櫙妯$硦鏁堟灉
+                var shadeId = layero.attr('id').replace('layui-layer', 'layui-layer-shade');
+                var $shade = $('#' + shadeId);
+                $shade.css({
+                    'backdrop-filter': 'blur(3px)',
+                    'transition': 'opacity 0.8s'
+                });
+                
+                // 鐐瑰嚮閬僵鍏抽棴锛堝甫鍔ㄧ敾锛�
+                $shade.on('click', function() {
+                    layero.addClass('ai-drawer-layer-close');
+                    $shade.css('opacity', 0);
+                    setTimeout(function(){
+                        layer.close(index);
+                    }, 400);
+                });
+            }
+        });
+    });
+
   });
 </script>
 <script type="text/html" id="menuTpl">

--
Gitblit v1.9.1