CSTM首页edit icon

创建者:
用户xxx
Fork(复制)
下载
嵌入
BUG反馈
index.html
style.css
index.js
index.html
            
            <!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>仪器评价门户平台 - 科学仪器综合评价服务</title>
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
    <style>
        :root {
            --primary: #165DFF;
            --primary-light: #E8F3FF;
            --secondary: #36CBCB;
            --accent: #FF7D00;
            --dark: #0D3C61;
            --light: #F0F7FC;
            --success: #4CD964;
            --warning: #FFC107;
            --danger: #FF5252;
            --gray: #86909C;
            --gray-light: #F2F3F5;
        }
        
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
            font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
        }
        
        body {
            background-color: var(--light);
            color: #333;
            line-height: 1.6;
            overflow-x: hidden;
        }
        
        /* 头部导航 */
        .header {
            background: linear-gradient(135deg, var(--primary) 0%, var(--dark) 100%);
            color: white;
            padding: 1rem 2rem;
            box-shadow: 0 4px 20px rgba(0,0,0,0.1);
            position: sticky;
            top: 0;
            z-index: 100;
            transition: all 0.3s ease;
        }
        
        .nav-container {
            display: flex;
            justify-content: space-between;
            align-items: center;
            max-width: 1400px;
            margin: 0 auto;
            position: relative;
        }
        
        .logo {
            display: flex;
            align-items: center;
            font-size: 1.8rem;
            font-weight: 700;
            gap: 0.8rem;
        }
        
        .logo i {
            color: var(--secondary);
            font-size: 1.5rem;
        }
        
        .nav-links {
            display: flex;
            list-style: none;
            gap: 1.5rem;
            margin-right: 2rem;
        }
        
        .nav-links li {
            position: relative;
        }
        
        .nav-links a {
            color: white;
            text-decoration: none;
            font-weight: 500;
            transition: all 0.3s ease;
            padding: 0.5rem 0;
            display: block;
            position: relative;
        }
        
        .nav-links a::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 0;
            height: 2px;
            background-color: var(--secondary);
            transition: width 0.3s ease;
        }
        
        .nav-links a:hover::after, 
        .nav-links a.active::after {
            width: 100%;
        }
        
        .nav-links a:hover, 
        .nav-links a.active {
            color: var(--secondary);
        }
        
        .user-actions {
            display: flex;
            align-items: center;
            gap: 1.5rem;
        }
        
        /* AI助手样式 */
        .ai-assistant-btn {
            background: rgba(255,255,255,0.1);
            border-radius: 30px;
            padding: 0.5rem 1.5rem;
            display: flex;
            align-items: center;
            gap: 0.8rem;
            transition: all 0.3s ease;
            cursor: pointer;
        }
        
        .ai-assistant-btn:hover {
            background: rgba(255,255,255,0.15);
            transform: scale(1.02);
        }
        
        .ai-assistant-btn i {
            color: rgba(255,255,255,0.7);
        }
        
        .ai-assistant-btn span {
            color: white;
            font-weight: 500;
        }
        
        /* AI助手对话框 */
        .ai-assistant-modal {
            position: fixed;
            bottom: 0;
            right: 0;
            width: 380px;
            max-width: 90%;
            height: 100vh;
            background-color: white;
            border-radius: 12px 0 0 12px;
            box-shadow: 0 10px 30px rgba(0,0,0,0.15);
            display: none;
            flex-direction: column;
            z-index: 200;
            overflow: hidden;
            transition: all 0.3s ease;
        }
        
        .ai-modal-header {
            background: linear-gradient(135deg, var(--primary) 0%, var(--dark) 100%);
            color: white;
            padding: 1rem;
            display: flex;
            justify-content: space-between;
            align-items: center;
            border-radius: 12px 0 0 0;
        }
        
        .ai-modal-header h3 {
            display: flex;
            align-items: center;
            gap: 0.8rem;
        }
        
        .ai-modal-header i {
            color: var(--secondary);
        }
        
        .ai-close-btn {
            background: transparent;
            border: none;
            color: white;
            font-size: 1.2rem;
            cursor: pointer;
            transition: all 0.3s ease;
        }
        
        .ai-close-btn:hover {
            transform: scale(1.1);
        }
        
        .ai-chat-messages {
            flex: 1;
            padding: 1rem;
            overflow-y: auto;
            display: flex;
            flex-direction: column;
            gap: 1rem;
        }
        
        .ai-message {
            padding: 0.8rem 1.2rem;
            border-radius: 18px;
            max-width: 80%;
            word-wrap: break-word;
        }
        
        .ai-message.user {
            background-color: var(--primary-light);
            color: var(--dark);
            align-self: flex-end;
            border-bottom-right-radius: 0;
        }
        
        .ai-message.assistant {
            background-color: var(--gray-light);
            color: #333;
            align-self: flex-start;
            border-bottom-left-radius: 0;
        }
        
        .ai-message.assistant strong {
            color: var(--primary);
        }
        
        .ai-input-area {
            padding: 1rem;
            border-top: 1px solid var(--gray-light);
            display: flex;
            gap: 0.8rem;
        }
        
        .ai-input {
            flex: 1;
            padding: 0.8rem 1.2rem;
            border: 1px solid var(--gray-light);
            border-radius: 24px;
            outline: none;
            transition: all 0.3s ease;
        }
        
        .ai-input:focus {
            border-color: var(--primary);
        }
        
        .ai-send-btn {
            background-color: var(--primary);
            color: white;
            border: none;
            border-radius: 50%;
            width: 40px;
            height: 40px;
            display: flex;
            justify-content: center;
            align-items: center;
            cursor: pointer;
            transition: all 0.3s ease;
        }
        
        .ai-send-btn:hover {
            background-color: var(--dark);
        }
        
        /* 快捷提问按钮 */
        .quick-questions {
            display: flex;
            flex-wrap: wrap;
            gap: 0.5rem;
            margin-top: 0.5rem;
            padding: 0 1rem 1rem;
        }
        
        .quick-question-btn {
            background-color: var(--primary-light);
            color: var(--primary);
            border: none;
            border-radius: 20px;
            padding: 0.4rem 0.8rem;
            font-size: 0.85rem;
            cursor: pointer;
            transition: all 0.3s ease;
        }
        
        .quick-question-btn:hover {
            background-color: #B2E8FF;
        }
        
        .btn {
            background-color: var(--secondary);
            color: white;
            border: none;
            padding: 0.6rem 1.5rem;
            border-radius: 30px;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.3s ease;
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }
        
        .btn:hover {
            background-color: #00B8D4;
            transform: translateY(-2px);
            box-shadow: 0 4px 15px rgba(0,0,0,0.1);
        }
        
        .btn-primary {
            background-color: var(--primary);
        }
        
        .btn-primary:hover {
            background-color: #0E4EB8;
        }
        
        /* 主要内容区域 */
        .main-content {
            max-width: 1400px;
            margin: 2rem auto;
            padding: 0 2rem;
            display: block;
        }
        
        /* 状态卡片 */
        .status-cards {
            display: flex;
            flex-wrap: wrap;
            gap: 1rem;
            margin: 1rem 0 2rem;
        }
        
        .status-card {
            background: white;
            border-radius: 10px;
            box-shadow: 0 3px 10px rgba(0,0,0,0.05);
            padding: 1.2rem;
            flex: 1;
            min-width: 150px;
            text-align: center;
            transition: all 0.3s;
            border-top: 4px solid var(--primary);
            position: relative;
            overflow: hidden;
        }
        
        .status-card::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 4px;
        }
        
        .status-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 20px rgba(0,0,0,0.1);
        }
        
        .status-card h4 {
            color: var(--dark);
            font-size: 0.9rem;
            margin-bottom: 0.5rem;
            font-weight: 600;
        }
        
        .status-card .count {
            font-size: 1.8rem;
            font-weight: 700;
            color: var(--dark);
            margin-bottom: 0.3rem;
        }
        
        .status-card.urgent::before {
            background-color: var(--danger);
        }
        
        .status-card.completed::before {
            background-color: var(--success);
        }
        
        .status-card.latest::before {
            background-color: var(--warning);
        }
        
        /* 仪器展示横幅 */
        .instrument-banner {
            width: 100%;
            height: 200px;
            margin: 1rem 0 2rem;
            border-radius: 12px;
            overflow: hidden;
            position: relative;
            box-shadow: 0 8px 25px rgba(0,0,0,0.1);
        }
        
        .instrument-banner img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            transition: transform 0.5s ease;
        }
        
        .instrument-banner:hover img {
            transform: scale(1.03);
    }
        
        .banner-overlay {
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 50%;
            background: linear-gradient(to top, rgba(0,0,0,0.7), transparent);
            display: flex;
            align-items: flex-end;
            padding: 1.5rem;
        }
        
        .banner-overlay h2 {
            color: white;
            font-size: 1.8rem;
            text-shadow: 0 2px 4px rgba(0,0,0,0.5);
        }
        
        /* 功能区 */
        .dashboard2 {
            display: grid;
            grid-template-columns: repeat(2, 1fr);
            gap: 1.5rem;
            margin-top: 2rem;
        }
        
        .card {
            background: white;
            border-radius: 12px;
            box-shadow: 0 5px 15px rgba(0,0,0,0.05);
            padding: 1.5rem;
            transition: all 0.3s;
            position: relative;
            overflow: hidden;
        }
        
        .card::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 100%;
            height: 4px;
            background: linear-gradient(to right, var(--primary), var(--secondary));
            opacity: 0;
            transition: opacity 0.3s ease;
        }
        
        .card:hover {
            box-shadow: 0 10px 25px rgba(0,0,0,0.08);
            transform: translateY(-5px);
        }
        
        .card:hover::after {
            opacity: 1;
        }
        
        .card-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 1rem;
            padding-bottom: 0.8rem;
            border-bottom: 1px solid var(--gray-light);
        }
        
        .card-header h3 {
            color: var(--dark);
            display: flex;
            align-items: center;
            gap: 0.5rem;
            font-size: 1.1rem;
        }
        
        .card-header a {
            color: var(--primary);
            text-decoration: none;
            font-weight: 500;
            font-size: 0.9rem;
            transition: color 0.3s ease;
        }
        
        .card-header a:hover {
            color: var(--secondary);
        }
        
        .card-content ul {
            list-style: none;
        }
        
        .card-content li {
            padding: 0.8rem 0;
            border-bottom: 1px solid var(--gray-light);
            display: flex;
            align-items: center;
            transition: all 0.3s ease;
        }
        
        .card-content li:hover {
            background-color: var(--gray-light);
            border-radius: 4px;
        }
        
        .card-content li:last-child {
            border-bottom: none;
        }
        
        .card-content .badge {
            display: inline-block;
            background-color: var(--primary-light);
            color: var(--primary);
            border-radius: 30px;
            padding: 0.2rem 0.8rem;
            font-size: 0.8rem;
            margin-right: 0.8rem;
            font-weight: 500;
        }
        
        .card-content .urgent-badge {
            background-color: rgba(255,82,82,0.1);
            color: var(--danger);
        }
        
        .news-list li {
            padding: 1rem 0;
        }
        
        .news-list .date {
            color: var(--gray);
            font-size: 0.85rem;
            margin-top: 0.3rem;
            display: block;
        }
        
        .grid-buttons {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 1rem;
        }
        
        .grid-btn {
            background: var(--primary-light);
            color: var(--dark);
            border: none;
            border-radius: 8px;
            padding: 1.5rem 0.5rem;
            text-align: center;
            cursor: pointer;
            transition: all 0.3s;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 0.8rem;
        }
        
        .grid-btn i {
            font-size: 1.8rem;
            color: var(--primary);
        }
        
        .grid-btn:hover {
            background: #B2E8FF;
            transform: translateY(-3px);
            box-shadow: 0 4px 10px rgba(0,0,0,0.05);
        }
        
        .target-card {
            background: white;
            border-radius: 8px;
            padding: 1.5rem;
            text-align: center;
            box-shadow: 0 3px 10px rgba(0,0,0,0.05);
            transition: all 0.3s;
        }
        
        .target-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 20px rgba(0,0,0,0.1);
        }
        
        .target-card i {
            font-size: 2rem;
            color: var(--primary);
            margin-bottom: 1rem;
        }
        
        .target-card h3 {
            color: var(--dark);
            font-size: 1rem;
        }
        
        /* 工作台入口 */
        .workbench-entry {
            background: linear-gradient(135deg, var(--primary) 0%, var(--dark) 100%);
            color: white;
            padding: 2rem;
            border-radius: 12px;
            margin: 2rem 0;
            text-align: center;
            position: relative;
            overflow: hidden;
        }
        
        .workbench-entry::after {
            content: '';
            position: absolute;
            top: -50px;
            right: -50px;
            width: 150px;
            height: 150px;
            background: rgba(255,255,255,0.1);
            border-radius: 50%;
        }
        
        .workbench-entry h2 {
            margin-bottom: 1rem;
            position: relative;
            z-index: 1;
        }
        
        .workbench-entry p {
            max-width: 700px;
            margin: 0 auto 1.5rem;
            position: relative;
            z-index: 1;
        }
        
        

    /* 新增的项目进度卡片样式 */
       .project-progress {
            background: #fff;
            border-radius: 12px;
            box-shadow: 0 2px 8px rgba(0,0,0,0.05);
            padding: 1.5rem;
            margin-bottom: 1.5rem;
            width: 100%;
        }
    .progress-cards-container {
        display: grid;
        grid-template-columns: repeat(6, 1fr);
        gap: 1rem;
        margin-top: 1rem;
    }
    
    .progress-card {
        background: white;
        border-radius: 8px;
        padding: 1.2rem;
        box-shadow: 0 3px 10px rgba(0,0,0,0.05);
        transition: all 0.3s;
        display: flex;
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    
    .progress-card:hover {
        transform: translateY(-5px);
        box-shadow: 0 8px 20px rgba(0,0,0,0.1);
    }
    
    .card-icon {
        width: 50px;
        height: 50px;
        background: var(--primary-light);
        border-radius: 50%;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 1rem;
    }
    
    .card-icon i {
        font-size: 1.5rem;
        color: var(--primary);
    }
    
    .progress-card h3 {
        font-size: 1rem;
        margin-bottom: 0.5rem;
        color: var(--dark);
    }
    
    .progress-card p {
        font-size: 0.85rem;
        color: var(--gray);
        margin-bottom: 0.5rem;
    }
    
    .status {
        padding: 0.3rem 0.8rem;
        border-radius: 20px;
        font-size: 0.8rem;
        font-weight: 500;
    }
    
    .status--orange {
        background: rgba(255, 153, 0, 0.1);
        color: #ff9900;
    }
    
    .status--green {
        background: rgba(76, 217, 100, 0.1);
        color: #4cd964;
    }
    
    .status--blue {
        background: rgba(22, 93, 255, 0.1);
        color: var(--primary);
    }
    
    /* 响应式调整 */
    @media (max-width: 1200px) {
        .progress-cards-container {
            grid-template-columns: repeat(3, 1fr);
        }
    }
    
    @media (max-width: 768px) {
        .progress-cards-container {
            grid-template-columns: repeat(2, 1fr);
        }
    }
    
    @media (max-width: 480px) {
        .progress-cards-container {
            grid-template-columns: 1fr;
        }
    }
            /* 新增状态标签样式 */
.status-tag {
  padding: 0.4rem 0.8rem;
  border-radius: 20px;
  font-size: 0.85rem;
  margin: 0.5rem 0;
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
}

.processing {
  background: rgba(255, 153, 0, 0.1);
  color: #FF9900;
}

.pending {
  background: rgba(22, 93, 255, 0.1);
  color: var(--primary);
}

.completed {
  background: rgba(76, 217, 100, 0.1);
  color: #4CD964;
}

/* 操作按钮组样式 */
.action-buttons {
  display: flex;
  gap: 0.5rem;
  margin-top: 1rem;
  flex-wrap: wrap;
  justify-content: center;
}

.btn-upload, .btn-payment, .btn-detail {
  padding: 0.5rem 1rem;
  border-radius: 20px;
  font-size: 0.85rem;
  border: none;
  cursor: pointer;
  transition: all 0.3s;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.btn-upload {
  background: var(--primary-light);
  color: var(--primary);
}

.btn-payment {
  background: var(--primary);
  color: white;
}

.btn-detail {
  background: var(--gray-light);
  color: var(--dark);
}

/* 紧急标识 */
.card-badge {
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  background: var(--danger);
  color: white;
  padding: 0.2rem 0.5rem;
  border-radius: 10px;
  font-size: 0.7rem;
}
      /* 信息查询模块 */
        .info-search {
            background: white;
            border-radius: 12px;
            box-shadow: 0 3px 10px rgba(0,0,0,0.05);
            padding: 1.5rem;
            margin-bottom: 2rem;
            width: 100%
        }
        
        .info-search-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 1.5rem;
        }
        
        .info-search-header h3 {
            font-size: 1.1rem;
            color: #333;
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }
        
        .info-search-content {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 1rem;
        }
        
        .info-search-item {
            background: var(--primary-light);
            border-radius: 8px;
            padding: 1.2rem;
            text-align: center;
            transition: all 0.3s;
            cursor: pointer;
        }
        
        .info-search-item:hover {
            background: #B2E8FF;
            transform: translateY(-3px);
            box-shadow: 0 4px 10px rgba(0,0,0,0.05);
        }
        
        .info-search-item i {
            font-size: 1.8rem;
            color: var(--primary);
            margin-bottom: 0.8rem;
        }
        
        .info-search-item h4 {
            color: var(--dark);
            font-weight: 600;
            margin-bottom: 0.5rem;
        }
        
        .info-search-item p {
            color: var(--gray);
            font-size: 0.85rem;
        }
        
         /* 最新项目模块 - 列表式 */
 .project-progress {
            background: #fff;
            border-radius: 12px;
            box-shadow: 0 2px 8px rgba(0,0,0,0.05);
            padding: 1.5rem;
            margin-bottom: 1.5rem;
            width: 100%; /* 确保项目进度模块占据整个宽度 */
        }
        .progress-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 1.2rem;
        }
        .progress-header h2 {
            font-size: 1.25rem;
            font-weight: 600;
            color: #333;
        }
        .view-all {
            color: #165dff;
            text-decoration: none;
            font-size: 0.9rem;
        }
        
        .module-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 1.5rem;
        }
        
        .module-header h2 {
            font-size: 1.25rem;
            color: #333;
            display: flex;
            align-items: center;
            gap: 0.5rem;
        }
        
        .project-list {
            width: 100%;
            border-collapse: collapse;
        }
        
        .project-list th {
            text-align: left;
            padding: 0.8rem 1rem;
            background-color: var(--primary-light);
            color: var(--dark);
            font-weight: 600;
        }
        
        .project-list td {
            padding: 1rem;
            border-bottom: 1px solid var(--gray-light);
            vertical-align: middle;
        }
        
        .project-list tr:last-child td {
            border-bottom: none;
        }
        
        .project-list tr:hover {
            background-color: var(--gray-light);
        }
        
        .project-name {
            font-weight: 500;
            color: var(--dark);
        }
        
        .project-code {
            color: var(--gray);
            font-size: 0.85rem;
        }
        
        .project-meta {
            display: flex;
            gap: 1.5rem;
        }
        
        .project-meta span {
            display: flex;
            align-items: center;
            gap: 0.3rem;
            font-size: 0.85rem;
            color: var(--gray);
        }
        
        .project-meta i {
            color: var(--primary);
        }
        
        .btn-apply {
            padding: 0.5rem 1rem;
            background: var(--primary);
            color: white;
            border: none;
            border-radius: 5px;
            font-size: 0.9rem;
            cursor: pointer;
            transition: background 0.3s;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.5rem;
        }
        
        .btn-apply:hover {
            background: #0E4EB8;
        }
        
        
        /* 页脚 */
        .footer {
            background: var(--dark);
            color: white;
            padding: 3rem 0;
            width: 100%;
        }
        
        .footer-container {
            max-width: 1400px;
            margin: 0 auto;
            padding: 0 2rem;
        }
        
        .footer-content {
            display: grid;
            grid-template-columns: 2fr 1fr 1fr 1fr;
            gap: 2rem;
            margin-bottom: 2rem;
        }
        
        .footer-logo {
            font-size: 1.8rem;
            font-weight: 700;
            margin-bottom: 1rem;
            display: flex;
            align-items: center;
            gap: 0.8rem;
        }
        
        .footer-logo i {
            color: var(--secondary);
        }
        
        .footer-description {
            color: #B2E8FF;
            line-height: 1.8;
            margin-bottom: 1.5rem;
        }
        
        .footer-links h4 {
            margin-bottom: 1.5rem;
            font-size: 1.2rem;
            position: relative;
            padding-bottom: 0.5rem;
        }
        
        .footer-links h4::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            width: 50px;
            height: 3px;
            background: var(--secondary);
        }
        
        .footer-links ul {
            list-style: none;
        }
        
        .footer-links li {
            margin-bottom: 0.8rem;
        }
        
        .footer-links a {
            color: #B2E8FF;
            text-decoration: none;
            transition: all 0.3s;
            display: inline-block;
        }
        
        .footer-links a:hover {
            color: white;
            padding-left: 5px;
        }
        
        .copyright {
            text-align: center;
            padding-top: 2rem;
            border-top: 1px solid rgba(178, 232, 255, 0.1);
            color: #B2E8FF;
            font-size: 0.9rem;
        }
        
        /* 响应式设计 */
        @media (max-width: 1000px) {
            .info-search-content {
                grid-template-columns: repeat(2, 1fr);
            }
        }
        
        @media (max-width: 768px) {
            .project-cards {
                grid-template-columns: 1fr;
            }
            
            .footer-content {
                grid-template-columns: 1fr;
            }
            
            .nav-links {
                display: none;
            }
        }
        
        @media (max-width: 480px) {
            .info-search-content {
                grid-template-columns: 1fr;
            }
        }
</style>
</head>
<body>
    <!-- 顶部导航 -->
    <header class="header">
        <div class="nav-container">
            <div class="logo">
                <i class="fas fa-microscope"></i>
                <span>仪器评价门户平台</span>
            </div>
            
            <ul class="nav-links">
                <li><a href="#" class="active">首页</a></li>
                <li><a href="#">最新通知</a></li>
                <li><a href="#">在线办理</a></li>
                <li><a href="#">信息查询</a></li>
                <li><a href="#">在线咨询</a></li>
                <!-- <li><a href="#">工作台</a></li> -->
            </ul>
            
            <div class="user-actions">
                <!-- AI助手按钮 -->
                <div class="ai-assistant-btn" id="aiAssistantBtn">
                    <i class="fas fa-robot"></i>
                    <span>AI助手</span>
                </div>
                <button class="btn btn-primary">
                    <i class="fas fa-sign-in-alt"></i> 立即登录
                </button>
            </div>
        </div>
    </header>
    
    <!-- AI助手对话框 -->
    <div class="ai-assistant-modal" id="aiAssistantModal">
        <div class="ai-modal-header">
            <h3><i class="fas fa-robot"></i> 仪器评价AI助手</h3>
            <button class="ai-close-btn" id="aiCloseBtn">
                <i class="fas fa-times"></i>
            </button>
        </div>
        <div class="ai-chat-messages" id="aiChatMessages">
            <div class="ai-message assistant">
                <strong>你好!</strong> 我是仪器评价AI助手,有什么可以帮助你的吗?
            </div>
        </div>
        <div class="ai-input-area">
            <input type="text" class="ai-input" id="aiInput" placeholder="请输入您的问题...">
            <button class="ai-send-btn" id="aiSendBtn">
                <i class="fas fa-paper-plane"></i>
            </button>
        </div>
        <!-- 快捷提问按钮 -->
        <div class="quick-questions" id="quickQuestions">
            <button class="quick-question-btn" onclick="sendQuickQuestion('如何申请仪器评价?')">如何申请仪器评价?</button>
            <button class="quick-question-btn" onclick="sendQuickQuestion('评价流程是什么?')">评价流程是什么?</button>
            <button class="quick-question-btn" onclick="sendQuickQuestion('评价需要多长时间?')">评价需要多长时间?</button>
            <button class="quick-question-btn" onclick="sendQuickQuestion('评价标准有哪些?')">评价标准有哪些?</button>
            <button class="quick-question-btn" onclick="sendQuickQuestion('如何查询评价结果?')">如何查询评价结果?</button>
        </div>
    </div>
    
    <div class="main-content">
        <!-- 主内容区域 -->
        <main>
            <!-- 仪器展示横幅 -->
            <div class="instrument-banner">
                <img src="https://p3-flow-imagex-sign.byteimg.com/tos-cn-i-a9rns2rl98/rc/pc/code_assistant/8cb3a423139d442299f40cd3a0ae70a4~tplv-a9rns2rl98-image.image?rk3s=8e244e95&amp;x-expires=1750319631&amp;x-signature=udI5rhYVRFuFIDRz3vQTfJ3Cb5s%3D" alt="科学仪器展示">
                <div class="banner-overlay">
                    <h2>专业仪器评价服务平台</h2>
                </div>
            </div>
            
            <!-- 状态卡片 -->
            <div class="status-cards">
                <div class="status-card">
                    <h4>进行中项目</h4>
                    <div class="count">18</div>
                </div>
                <div class="status-card urgent">
                    <h4>系统公告</h4>
                    <div class="count">5</div>
                </div>
                <div class="status-card completed">
                    <h4>已完成评价</h4>
                    <div class="count">528</div>
                </div>
                <div class="status-card latest">
                    <h4>专家团队</h4>
                    <div class="count">42</div>
                </div>
            </div>
            
            <!-- 项目进度模块 -->
            <!-- 修改后的项目进度模块 -->
<div class="project-progress">
  <div class="progress-header">
    <h2>项目进度</h2>
    <a href="#" class="view-all">查看全部</a>
  </div>
  <div class="progress-cards-container">
    <!-- 卡片1 - 金属材料拉伸试验 -->
    <div class="progress-card">
      <div class="card-content">
        <h3>金属材料拉伸试验</h3>
        <p class="project-id">XM-2023-0015</p>
        <div class="status-tag processing">
          <i class="fas fa-spinner"></i> 进行中
        </div>
        <div class="action-buttons">
          <button class="btn-upload">
            <i class="fas fa-upload"></i> 上传数据
          </button>
        </div>
      </div>
    </div>

    <!-- 卡片2 - 电子显微镜校准 -->
    <div class="progress-card">
      <div class="card-content">
        <h3>电子显微镜校准</h3>
        <p class="project-id">XM-2023-0023</p>
        <div class="status-tag pending">
          <i class="fas fa-clock"></i> 待审核
        </div>
        <div class="action-buttons">
          <button class="btn-detail">
            <i class="fas fa-file-alt"></i> 查看详情
          </button>
        </div>
      </div>
    </div>

    <!-- 卡片3 - 光谱分析测试 (新增查看详情) -->
    <div class="progress-card">
      <div class="card-content">
        <h3>光谱分析测试</h3>
        <p class="project-id">XM-2023-0021</p>
        <div class="status-tag completed">
          <i class="fas fa-check-circle"></i> 已完成
        </div>
        <div class="action-buttons">
          <button class="btn-detail">
            <i class="fas fa-info-circle"></i> 查看详情
          </button>
        </div>
      </div>
    </div>

    <!-- 卡片4 - 电子显微镜校准 (新增查看详情) -->
    <div class="progress-card">
      <div class="card-content">
        <h3>电子显微镜校准</h3>
        <p class="project-id">XM-2023-0023</p>
        <div class="status-tag pending">
          <i class="fas fa-clock"></i> 待审核
        </div>
        <div class="action-buttons">
          <button class="btn-detail">
            <i class="fas fa-info-circle"></i> 查看详情
          </button>
        </div>
      </div>
    </div>

    <!-- 卡片5 - 液体色谱分析 (移动缴费按钮到这里) -->
    <div class="progress-card">
      <div class="card-content">
        <h3>液体色谱分析</h3>
        <p class="project-id">XM-2023-0025</p>
        <div class="status-tag processing">
          <i class="fas fa-spinner"></i> 进行中
        </div>
        <div class="action-buttons">
          <button class="btn-payment">
            <i class="fas fa-credit-card"></i> 立即缴费
          </button>
        </div>
      </div>
    </div>

    <!-- 卡片6 - 电气性能测试 (新增查看详情) -->
    <div class="progress-card">
      <div class="card-content">
        <h3>电气性能测试</h3>
        <p class="project-id">XM-2023-0028</p>
        <div class="status-tag completed">
          <i class="fas fa-check-circle"></i> 已完成
        </div>
        <div class="action-buttons">
          <button class="btn-detail">
            <i class="fas fa-info-circle"></i> 查看详情
          </button>
        </div>
      </div>
    </div>
  </div>
</div>

            
            <!-- 功能区域 -->
            <div class="dashboard2">
                <!-- 最新消息 -->
                <div class="card">
                    <div class="card-header">
                        <h3><i class="fas fa-bullhorn"></i> 最新消息</h3>
                        <a href="#">查看更多</a>
                    </div>
                    <div class="card-content">
                        <ul class="news-list">
                            <li>
                                <strong>2023年第四期仪器评测项目征集通知</strong>
                                <span class="date">2023-10-15</span>
                            </li>
                            <li>
                                <strong>光谱分析仪器评测标准升级公告</strong>
                                <span class="date">2023-10-10</span>
                            </li>
                            <li>
                                <strong>实验室设备评价结果集中公示</strong>
                                <span class="date">2023-10-05</span>
                            </li>
                            <li>
                                <strong>2023年度评测专家库名单公布</strong>
                                <span class="date">2023-09-28</span>
                            </li>
                        </ul>
                    </div>
                </div>
                
                <!-- 评价服务 -->
                <div class="card">
                    <div class="card-header">
                        <h3><i class="fas fa-vial"></i> 仪器评价示例</h3>
                        <a href="#">查看全部</a>
                    </div>
                    <div class="card-content">
                        <div style="background: var(--primary-light); border-radius: 8px; padding: 1.5rem; text-align: center; height: 200px; display: flex; justify-content: center; align-items: center;">
                            <h3 style="color: var(--primary);">仪器评价示例展示</h3>
                        </div>
                    </div>
                </div>
                

 
  <!-- 最新项目模块 - 列表式 -->
        <div class="latest-projects">
            <div class="module-header">
                <h2><i class="fas fa-star"></i> 最新项目</h2>
                <a href="#" class="view-all">查看更多</a>
            </div>
            <table class="project-list">
                <thead>
                    <tr>
                        <th>项目名称</th>
                        <th>截止日期</th>
                        <th>操作</th>
                    </tr>
                </thead>
                <tbody>
                    <!-- 项目1 -->
                    <tr>
                        <td>
                            <div class="project-name">新型材料成分分析</div>
                        </td>
                        
                        <td>
                            <div class="project-meta">
                                <span> 2023-11-30</span>
                               
                            </div>
                        </td>
                        <td>
                            <button class="btn-apply">
                                在线申请
                            </button>
                        </td>
                    </tr>
                    
                    <!-- 项目2 -->
                    <tr>
                        <td>
                            <div class="project-name">生物试剂检测</div>
                        </td>
                       
                        <td>
                            <div class="project-meta">
                                <span> 2023-12-15</span>
                               
                            </div>
                        </td>
                        <td>
                            <button class="btn-apply">
                                在线申请
                            </button>
                        </td>
                    </tr>
                    
                    <!-- 项目3 -->
                    <tr>
                        <td>
                            <div class="project-name">高压电气设备测试</div>
                        </td>
                       
                        <td>
                            <div class="project-meta">
                                <span> 2023-12-05</span>
                                
                            </div>
                        </td>
                        <td>
                            <button class="btn-apply">
                                在线申请
                            </button>
                        </td>
                    </tr>
                </tbody>
            </table>
        </div>
     <!-- 信息查询模块 -->
        <div class="info-search">
            <div class="info-search-header">
                <h3><i class="fas fa-search"></i> 信息查询</h3>
                <a href="#" class="view-all">更多查询</a>
            </div>
            <div class="info-search-content">
                <div class="info-search-item">
                    <i class="fas fa-clipboard-check"></i>
                    <h4>已完成项目</h4>
                    <p>查看历史评价项目记录</p>
                </div>
                <div class="info-search-item">
                    <i class="fas fa-industry"></i>
                    <h4>仪器厂商</h4>
                    <p>查询合作仪器厂商信息</p>
                </div>
                <div class="info-search-item">
                    <i class="fas fa-book"></i>
                    <h4>知识库</h4>
                    <p>浏览仪器评价专业知识</p>
                </div>
                <div class="info-search-item">
                    <i class="fas fa-globe"></i>
                    <h4>国内外项目</h4>
                    <p>全球仪器评价项目数据库</p>
                </div>
                <div class="info-search-item">
                    <i class="fas fa-ruler"></i>
                    <h4>标准数据</h4>
                    <p>评价标准数据库</p>
                </div>
                <div class="info-search-item">
                    <i class="fas fa-list-check"></i>
                    <h4>评价指标</h4>
                    <p>各类仪器评价指标</p>
                </div>
            </div>
        </div>
    </div>   
       
    
    <!-- 页脚 -->
    <footer class="footer">
        <div class="footer-container">
            <div class="footer-content">
                <div class="footer-section">
                    <div class="footer-logo">
                        <i class="fas fa-microscope"></i>
                        <span>仪器评价门户平台</span>
                    </div>
                    <p class="footer-description">
                        专业提供科学仪器综合评价服务,助力科研机构和企业提升仪器使用效率和质量。
                    </p>
                </div>
                <div class="footer-links">
                    <h4>快速链接</h4>
                    <ul>
                        <li><a href="#">关于我们</a></li>
                        <li><a href="#">评价流程</a></li>
                        <li><a href="#">常见问题</a></li>
                        <li><a href="#">联系我们</a></li>
                    </ul>
                </div>
                <div class="footer-links">
                    <h4>服务支持</h4>
                    <ul>
                        <li><a href="#">仪器申请</a></li>
                        <li><a href="#">评价标准</a></li>
                        <li><a href="#">专家团队</a></li>
                        <li><a href="#">下载中心</a></li>
                    </ul>
                </div>
                <div class="footer-links">
                    <h4>联系方式</h4>
                    <ul>
                        <li><a href="mailto:[email protected]">[email protected]</a></li>
                        <li><a href="tel:400-888-8888">400-888-8888</a></li>
                        <li>北京市海淀区中关村南大街5号</li>
                    </ul>
                </div>
            </div>
            <div class="copyright">
                © 2023 仪器评价门户平台. 保留所有权利.
            </div>
        </div>
    </footer>

    <script>
        // AI助手交互逻辑
        document.getElementById('aiAssistantBtn').addEventListener('click', function() {
            const modal = document.getElementById('aiAssistantModal');
            modal.style.display = 'flex';
        });
        
        document.getElementById('aiCloseBtn').addEventListener('click', function() {
            const modal = document.getElementById('aiAssistantModal');
            modal.style.display = 'none';
        });
        
        document.getElementById('aiSendBtn').addEventListener('click', function() {
            sendMessage();
        });
        
        document.getElementById('aiInput').addEventListener('keypress', function(e) {
            if (e.key === 'Enter') {
                sendMessage();
            }
        });
        
        function sendQuickQuestion(question) {
            const messagesContainer = document.getElementById('aiChatMessages');
            const userMessage = document.createElement('div');
            userMessage.className = 'ai-message user';
            userMessage.textContent = question;
            messagesContainer.appendChild(userMessage);
            
            // 滚动到底部
            messagesContainer.scrollTop = messagesContainer.scrollHeight;
            
            // 模拟AI回复
            setTimeout(function() {
                const assistantMessage = document.createElement('div');
                assistantMessage.className = 'ai-message assistant';
                assistantMessage.innerHTML = `<strong>AI助手:</strong> ${getRandomResponse(question)}`;
                messagesContainer.appendChild(assistantMessage);
                messagesContainer.scrollTop = messagesContainer.scrollHeight;
            }, 800);
        }
        
        function sendMessage() {
            const input = document.getElementById('aiInput');
            const message = input.value.trim();
            
            if (message) {
                const messagesContainer = document.getElementById('aiChatMessages');
                const userMessage = document.createElement('div');
                userMessage.className = 'ai-message user';
                userMessage.textContent = message;
                messagesContainer.appendChild(userMessage);
                
                // 清空输入框
                input.value = '';
                
                // 滚动到底部
                messagesContainer.scrollTop = messagesContainer.scrollHeight;
                
                // 模拟AI回复
                setTimeout(function() {
                    const assistantMessage = document.createElement('div');
                    assistantMessage.className = 'ai-message assistant';
                    assistantMessage.innerHTML = `<strong>AI助手:</strong> ${getRandomResponse(message)}`;
                    messagesContainer.appendChild(assistantMessage);
                    messagesContainer.scrollTop = messagesContainer.scrollHeight;
                }, 800);
            }
        }
        
        function getRandomResponse(message) {
            const responses = [
                "感谢您的咨询,我们的专家团队将尽快回复您的问题。",
                "您的问题已收到,我们会在24小时内给予详细解答。",
                "如需申请仪器评价,您可以点击首页的'在线办理'按钮进行操作。",
                "评价流程通常包括申请、审核、测试、报告和证书颁发五个阶段。",
                "评价标准依据国家相关标准和行业规范制定,确保评价结果公正客观。",
                "您可以通过'信息查询'功能查询评价结果和证书。",
                "如需了解更多关于评价的详细信息,请联系我们的客服人员。",
                "感谢您对我们平台的支持,如有其他问题,欢迎随时咨询。"
            ];
            
            // 根据问题内容返回相关的回答
            if (message.toLowerCase().includes('申请')) {
                return "如需申请仪器评价,您可以点击首页的'在线办理'按钮,按照系统提示填写相关信息并提交申请。申请提交后,我们的工作人员会在3个工作日内与您联系。";
            } else if (message.toLowerCase().includes('流程')) {
                return "评价流程通常包括以下几个步骤:1. 提交申请;2. 审核资料;3. 签订合同;4. 现场测试;5. 报告编制;6. 证书颁发。整个流程大约需要2-4周时间,具体取决于评价项目的复杂程度。";
            } else if (message.toLowerCase().includes('时间')) {
                return "评价所需时间因项目而异,一般情况下,常规仪器评价需要2-3周时间,复杂项目可能需要4-6周。我们会在签订合同后,根据您的需求和实际情况,确定具体的评价时间节点。";
            } else if (message.toLowerCase().includes('标准')) {
                return "我们的评价标准严格遵循国家相关标准和行业规范,同时结合国际先进标准进行制定。评价内容包括仪器的性能指标、可靠性、安全性、易用性等多个方面,确保评价结果全面、客观、公正。";
            } else if (message.toLowerCase().includes('查询')) {
                return "您可以通过'信息查询'功能查询评价结果和证书。在查询页面输入项目编号或申请时预留的手机号码,即可获取相关信息。如遇问题,请联系我们的客服人员协助查询。";
            } else {
                // 随机返回一个回答
                return responses[Math.floor(Math.random() * responses.length)];
            }
        }
      // 获取最新项目数据
function loadLatestProjects() {
  fetch('/api/latest-projects')
    .then(response => response.json())
    .then(data => {
      const container = document.querySelector('.project-cards');
      container.innerHTML = data.map(project => `
        <div class="project-card">
          <div class="card-icon">
            <i class="${getProjectIcon(project.type)}" style="color: ${getProjectColor(project.type)}"></i>
          </div>
          <div class="card-content">
            <h3>${project.name}</h3>
            <p class="project-code">${project.code}</p>
            <div class="project-meta">
              <span><i class="far fa-clock"></i> 截止: ${formatDate(project.deadline)}</span>
              <span><i class="fas fa-users"></i> 已报名: ${project.applicants}家</span>
            </div>
            <button class="btn-apply" onclick="applyProject('${project.id}')">
              <i class="fas fa-pen-alt"></i> 在线申请
            </button>
          </div>
        </div>
      `).join('');
    });
}

// 报名功能
function applyProject(projectId) {
  // 打开报名表单
  window.location.href = `/project/apply?id=${projectId}`;
}
      // 这里可以添加页面交互逻辑
        document.querySelectorAll('.btn-apply').forEach(button => {
            button.addEventListener('click', function() {
                alert('报名功能即将开放,请稍后再试!');
            });
        });
    </script>
</body>
</html>
        
编辑器加载中
预览
控制台