feat: 完成多多畅职就业服务平台核心功能开发

主要更新:
-  完成主题配色从暗色到亮蓝白配色的全面转换
-  实现高薪岗位页面及后端API集成
-  完成登录注册页面及认证系统
-  实现预招录确认功能
-  添加数据库管理和维护工具脚本
-  优化错误处理和用户体验

核心功能:
1. 首页 (index.html) - 3D地球、专业分类、过渡岗位
2. 高薪岗位页面 (high.html) - 岗位详情、预招录确认、成功案例
3. 登录注册 (auth.html) - 用户认证、专业分类选择
4. 后端API - RESTful接口,JWT认证,MySQL数据库

技术栈:
- 前端:Three.js, GSAP, 原生JavaScript
- 后端:Node.js, Express, MySQL
- 认证:JWT, bcrypt
- 样式:自定义CSS,响应式设计

数据库工具:
- kill-by-ids.js - 批量终止MySQL进程
- unlock-all-tables.js - 解锁数据库表
- init-db.js - 初始化数据库
- 其他管理脚本

🤖 Generated with Claude Code
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
KQL
2025-12-22 15:40:55 +08:00
parent 97e79e0f8c
commit 61698639ef
55 changed files with 13178 additions and 1298 deletions

View File

@@ -4,8 +4,9 @@
/* V1 风格霸气标题 */
.v1-title {
font-family: 'Arial Black', 'Helvetica Neue', sans-serif;
font-family: 'Source Han Sans CN Heavy', 'Source Han Sans SC Heavy', 'PingFang SC Heavy', 'Heiti SC', 'SimHei', 'Microsoft YaHei Bold', 'Arial Black', 'Helvetica Neue', sans-serif;
font-size: 5rem;
font-weight: 900;
letter-spacing: 0.8rem;
color: #fff;
text-shadow: 0 0 20px rgba(0, 240, 255, 0.8), 0 0 40px rgba(0, 240, 255, 0.4);
@@ -30,42 +31,42 @@
bottom: 10%;
left: 50%;
transform: translateX(-50%);
color: rgba(0, 240, 255, 0.8);
color: rgba(56, 189, 248, 0.9);
font-size: 0.9rem;
pointer-events: none;
z-index: 10;
letter-spacing: 2px;
border: 1px solid rgba(0, 240, 255, 0.3);
border: 1px solid rgba(56, 189, 248, 0.4);
padding: 10px 20px;
border-radius: 30px;
background: rgba(0, 0, 0, 0.5);
background: rgba(255, 255, 255, 0.8);
opacity: 0; /* 初始隐藏,等待开场动画 */
}
/* 毛玻璃头部 */
.glass-header {
background: rgba(11, 16, 38, 0.9);
background: rgba(255, 255, 255, 0.8);
backdrop-filter: blur(12px);
border-bottom: 1px solid rgba(255, 255, 255, 0.1);
border-bottom: 1px solid rgba(147, 197, 253, 0.3);
}
/* 搜索框 */
.search-input {
background: rgba(255, 255, 255, 0.08);
border: 1px solid rgba(255, 255, 255, 0.1);
color: white;
background: rgba(100, 116, 139, 0.08);
border: 1px solid rgba(100, 116, 139, 0.2);
color: #1e293b;
transition: all 0.3s;
}
.search-input:focus {
background: rgba(255, 255, 255, 0.15);
background: rgba(255, 255, 255, 0.9);
border-color: #38bdf8;
outline: none;
box-shadow: 0 0 15px rgba(56, 189, 248, 0.2);
}
.search-input::placeholder {
color: rgba(255, 255, 255, 0.4);
color: rgba(30, 41, 59, 0.5);
}
/* 搜索建议下拉列表 */
@@ -74,13 +75,13 @@
top: calc(100% + 8px);
left: 0;
right: 0;
background: rgba(17, 24, 39, 0.95);
background: rgba(255, 255, 255, 0.95);
backdrop-filter: blur(10px);
border-radius: 12px;
border: 1px solid rgba(255, 255, 255, 0.1);
border: 1px solid rgba(147, 197, 253, 0.3);
max-height: 320px;
overflow-y: auto;
box-shadow: 0 10px 40px rgba(0, 0, 0, 0.3);
box-shadow: 0 10px 40px rgba(100, 116, 139, 0.2);
z-index: 10000;
}
@@ -91,9 +92,9 @@
display: flex;
align-items: center;
gap: 10px;
color: #e5e7eb;
color: #475569;
transition: all 0.2s;
border-bottom: 1px solid rgba(255, 255, 255, 0.05);
border-bottom: 1px solid rgba(147, 197, 253, 0.2);
}
.search-item:last-child {
@@ -102,8 +103,8 @@
.search-item:hover,
.search-item.active {
background: rgba(59, 130, 246, 0.2);
color: #60a5fa;
background: rgba(56, 189, 248, 0.1);
color: #0369a1;
}
/* 搜索项图标 */
@@ -167,7 +168,7 @@
/* 企业卡片 */
.company-card {
background: rgba(30, 41, 59, 0.6);
background: rgba(255, 255, 255, 0.7);
border: 1px solid rgba(56, 189, 248, 0.2);
backdrop-filter: blur(10px);
transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
@@ -178,13 +179,13 @@
.company-card:hover {
transform: translateY(-5px);
border-color: #38bdf8;
background: rgba(30, 41, 59, 0.8);
box-shadow: 0 0 30px rgba(56, 189, 248, 0.15);
background: rgba(255, 255, 255, 0.9);
box-shadow: 0 0 30px rgba(56, 189, 248, 0.2);
}
/* 职位卡片(通用) */
.job-card {
background: rgba(30, 41, 59, 0.6);
background: rgba(255, 255, 255, 0.7);
border: 1px solid rgba(56, 189, 248, 0.2);
backdrop-filter: blur(10px);
transition: all 0.3s;
@@ -193,20 +194,20 @@
.job-card:hover {
transform: translateY(-5px);
border-color: #38bdf8;
background: rgba(30, 41, 59, 0.8);
background: rgba(255, 255, 255, 0.9);
box-shadow: 0 10px 30px -10px rgba(56, 189, 248, 0.3);
}
/* 详情页 - 业务板块卡片 */
.segment-card {
background: rgba(255, 255, 255, 0.03);
border: 1px solid rgba(255, 255, 255, 0.05);
background: rgba(239, 246, 255, 0.5);
border: 1px solid rgba(147, 197, 253, 0.3);
border-radius: 8px;
padding: 20px;
}
.segment-title {
color: #fff;
color: #0f172a;
font-weight: bold;
font-size: 1.1rem;
margin-bottom: 15px;

View File

@@ -68,14 +68,14 @@
height: 100%;
z-index: 5;
display: none;
background: radial-gradient(circle at 50% 30%, #1e293b 0%, #0b1026 100%);
background: radial-gradient(circle at 50% 30%, #e0f2fe 0%, #f8fafc 100%);
}
#list-interface {
z-index: 6;
background: #0b1026;
background-image: linear-gradient(rgba(56, 189, 248, 0.03) 1px, transparent 1px),
linear-gradient(90deg, rgba(56, 189, 248, 0.03) 1px, transparent 1px);
background: #f8fafc;
background-image: linear-gradient(rgba(56, 189, 248, 0.08) 1px, transparent 1px),
linear-gradient(90deg, rgba(56, 189, 248, 0.08) 1px, transparent 1px);
background-size: 40px 40px;
}
@@ -89,7 +89,7 @@
z-index: 7;
display: none;
opacity: 0;
background: #050b14;
background: #f8fafc;
}
/* 面包屑导航 */

View File

@@ -183,14 +183,14 @@
.dot {
width: 8px;
height: 8px;
background: rgba(255, 255, 255, 0.3);
background: #cbd5e1; /* 浅灰色,适配亮色主题 */
border-radius: 50%;
transition: all 0.3s ease;
cursor: pointer;
}
.dot.active {
background: #38bdf8;
background: #2563eb; /* 蓝色,适配亮色主题 */
width: 24px;
border-radius: 4px;
}