From b9dc5699e4e999bd8f40ef1025791d9e18a074f4 Mon Sep 17 00:00:00 2001
From: Junjie <DELL@qq.com>
Date: 星期五, 26 十二月 2025 14:38:28 +0800
Subject: [PATCH] #

---
 src/main/webapp/views/index.html |  101 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 101 insertions(+), 0 deletions(-)

diff --git a/src/main/webapp/views/index.html b/src/main/webapp/views/index.html
index 8d37cc8..a1001f4 100644
--- a/src/main/webapp/views/index.html
+++ b/src/main/webapp/views/index.html
@@ -47,6 +47,28 @@
     button:hover {
       background-color: #0069d9;
     }
+
+    /* 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>
 <body class="layui-layout-body">
@@ -107,6 +129,10 @@
     <span class="pull-right">Version 1.0.0</span>
   </div>
 
+</div>
+
+<!-- 鍙充笅瑙扴VG鍔ㄧ敾 -->
+<div id="ai-assistant-btn" style="position: fixed; bottom: 40px; right: 20px; z-index: 9999; cursor: pointer;">
 </div>
 
 <!--鍒濆鍖栧姞杞藉眰-->
@@ -181,6 +207,15 @@
 <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 () {
+    if ("" === localStorage.getItem('token')) {
+      top.location.href = baseUrl + "/login";
+    }
+  });
+
+  $(function () {
+    // 娉ㄥ叆AI鍔╂墜鍥炬爣
+    $('#ai-assistant-btn').html(getAiIconHtml(60, 60));
+
     if ("" === localStorage.getItem('token')) {
       top.location.href = baseUrl + "/login";
     }
@@ -265,6 +300,72 @@
     var url = logout.getAttribute('href');
     logout.setAttribute('href', baseUrl + "/login");
 
+    // AI鍔╂墜寮圭獥绱㈠紩
+    var aiLayerIndex = null;
+
+    // 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 () {
+      // 濡傛灉宸茬粡鎵撳紑杩囦笖鏈攢姣侊紝鐩存帴鏄剧ず
+      if (aiLayerIndex !== null && $('#layui-layer' + aiLayerIndex).length > 0) {
+        var $layero = $('#layui-layer' + aiLayerIndex);
+        var $shade = $('#layui-layer-shade' + aiLayerIndex);
+
+        // 鏄剧ず骞堕噸缃姸鎬�
+        $shade.show().css('opacity', 0.1);
+        $layero.show();
+
+        // 閲嶆柊瑙﹀彂杩涘叆鍔ㄧ敾
+        $layero.removeClass('ai-drawer-layer-close');
+        $layero.removeClass('ai-drawer-layer');
+        void $layero.get(0).offsetWidth; // 瑙﹀彂閲嶇粯
+        $layero.addClass('ai-drawer-layer');
+        return;
+      }
+
+      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){
+          aiLayerIndex = 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); // 涓嶉攢姣侊紝鏀逛负闅愯棌
+              layero.hide();
+              $shade.hide();
+            }, 400);
+          });
+        }
+      });
+    });
+
   });
 </script>
 <script type="text/html" id="menuTpl">

--
Gitblit v1.9.1