Files
all-personal-resume/个人简历_环保/index.html.backup_20251027_120207

2639 lines
128 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>邓沐 - 生态环境修复技术专业 | 个人简历</title>
<!-- 引入主题CSS -->
<link rel="stylesheet" href="eco_resume_theme.css">
<!-- Google Fonts -->
<link rel="preconnect" href="https://fonts.googleapis.com">
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Poppins:wght@600;700&display=swap" rel="stylesheet">
<!-- Lucide Icons -->
<script src="https://unpkg.com/lucide@latest/dist/umd/lucide.min.js"></script>
<!-- Chart.js for skills visualization -->
<script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
<style>
/* 引入主题变量和全局样式 */
:root {
/* 主色调 - 绿色系渐变 */
--eco-primary: #2d7f5e;
--eco-primary-light: #4a9d7e;
--eco-primary-lighter: #6db89a;
--eco-primary-dark: #1a5c40;
--eco-primary-darker: #0d3926;
--eco-primary-soft: #e8f5f0;
--eco-primary-softer: #f0faf6;
/* 辅助色 - 同色系变体 */
--eco-secondary: #3a8968;
--eco-secondary-light: #5ba584;
--eco-secondary-dark: #2a6b4f;
--eco-mint: #4fb286;
--eco-mint-light: #7ac5a3;
/* 功能色 */
--eco-accent: #66c297;
--eco-accent-light: #8cd4b1;
/* 背景渐变 */
--gradient-eco: linear-gradient(135deg, var(--eco-primary) 0%, var(--eco-secondary) 50%, var(--eco-mint) 100%);
--gradient-hero: linear-gradient(135deg, #e8f5f0 0%, #e5f4ed 50%, #ebf8f2 100%);
--gradient-card: linear-gradient(180deg, #ffffff 0%, #f8fdfb 100%);
--gradient-skill: linear-gradient(90deg, var(--eco-mint) 0%, var(--eco-accent) 100%);
/* 阴影 */
--shadow-card: 0 2px 8px rgba(45, 127, 94, 0.06);
--shadow-hover: 0 8px 16px rgba(45, 127, 94, 0.12);
}
* {
margin: 0;
padding: 0;
box-sizing: border-box;
}
body {
font-family: 'Inter', 'PingFang SC', 'Microsoft YaHei', sans-serif;
color: #1f2937;
background: linear-gradient(to bottom, #ffffff, #f8fdfb);
line-height: 1.6;
overflow-x: hidden;
}
/* 背景装饰 */
.bg-decoration {
position: fixed;
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: -1;
overflow: hidden;
pointer-events: none;
}
.leaf {
position: absolute;
width: 30px;
height: 30px;
background: linear-gradient(45deg, var(--eco-primary-light), var(--eco-mint));
opacity: 0.1;
border-radius: 0 100% 0 100%;
animation: leafFloat 15s infinite linear;
}
.leaf:nth-child(1) { left: 10%; animation-delay: 0s; top: -30px; }
.leaf:nth-child(2) { left: 30%; animation-delay: 3s; top: -30px; }
.leaf:nth-child(3) { left: 50%; animation-delay: 6s; top: -30px; }
.leaf:nth-child(4) { left: 70%; animation-delay: 9s; top: -30px; }
.leaf:nth-child(5) { left: 90%; animation-delay: 12s; top: -30px; }
@keyframes leafFloat {
0% {
transform: translateY(0) rotate(0deg);
opacity: 0;
}
10% {
opacity: 0.1;
}
90% {
opacity: 0.1;
}
100% {
transform: translateY(calc(100vh + 30px)) rotate(360deg);
opacity: 0;
}
}
/* 导航栏 */
nav {
position: fixed;
top: 0;
width: 100%;
background: rgba(255, 255, 255, 0.95);
backdrop-filter: blur(10px);
box-shadow: 0 2px 10px rgba(45, 127, 94, 0.05);
z-index: 1000;
transition: all 0.3s ease;
}
.nav-container {
max-width: 1200px;
margin: 0 auto;
padding: 1rem 2rem;
display: flex;
justify-content: space-between;
align-items: center;
}
.nav-brand {
font-size: 1.5rem;
font-weight: 600;
color: var(--eco-primary);
display: flex;
align-items: center;
gap: 0.5rem;
}
.nav-links {
display: flex;
gap: 2rem;
list-style: none;
}
.nav-links a {
color: #4b5563;
text-decoration: none;
font-weight: 500;
transition: all 0.2s ease;
position: relative;
}
.nav-links a:hover {
color: var(--eco-primary);
transform: translateY(-2px);
}
.nav-links a::after {
content: '';
position: absolute;
bottom: -5px;
left: 0;
width: 0;
height: 2px;
background: var(--gradient-eco);
transition: width 0.3s ease;
}
.nav-links a:hover::after {
width: 100%;
}
/* 英雄区域 */
.hero {
min-height: 100vh;
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
background: var(--gradient-hero);
position: relative;
padding: 80px 20px 40px;
animation: heroFadeIn 0.8s ease-out;
}
@keyframes heroFadeIn {
from {
opacity: 0;
transform: translateY(-30px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.hero-content {
text-align: center;
z-index: 1;
padding: 2rem;
max-width: 900px;
}
/* 落叶形头像容器 - 自然不对称设计 */
.avatar-container {
position: relative;
margin: 0 auto 2.5rem;
animation: avatarFloat 0.8s ease-out;
width: 280px;
height: 360px;
}
.avatar-leaf {
width: 100%;
height: 100%;
margin: 0 auto;
position: relative;
background: linear-gradient(145deg,
var(--eco-primary-light) 0%,
var(--eco-primary) 35%,
var(--eco-secondary) 65%,
var(--eco-mint) 100%);
/* 自然的不对称叶片形状 */
border-radius: 65% 0% 70% 0% / 50% 20% 60% 40%;
transform: rotate(15deg);
box-shadow:
0 20px 50px rgba(45, 127, 94, 0.3),
0 10px 25px rgba(45, 127, 94, 0.2),
inset 0 -3px 5px rgba(0, 0, 0, 0.1);
transition: all 0.5s ease;
overflow: hidden;
position: relative;
}
/* 叶脉纹理 */
.avatar-leaf::after {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background-image:
linear-gradient(45deg, transparent 40%, rgba(255,255,255,0.05) 50%, transparent 60%),
linear-gradient(-45deg, transparent 40%, rgba(255,255,255,0.05) 50%, transparent 60%),
linear-gradient(90deg, transparent 40%, rgba(255,255,255,0.03) 50%, transparent 60%);
pointer-events: none;
}
.avatar-leaf:hover {
transform: rotate(15deg) scale(1.05) translateY(-5px);
box-shadow:
0 25px 60px rgba(45, 127, 94, 0.35),
0 15px 35px rgba(45, 127, 94, 0.25),
inset 0 -3px 8px rgba(0, 0, 0, 0.15);
}
/* 光泽效果 */
.avatar-leaf::before {
content: '';
position: absolute;
top: -20%;
left: -20%;
width: 70%;
height: 70%;
background: radial-gradient(
circle at center,
rgba(255, 255, 255, 0.3) 0%,
rgba(255, 255, 255, 0.1) 30%,
transparent 70%
);
animation: leafShine 4s ease-in-out infinite;
pointer-events: none;
}
@keyframes leafShine {
0%, 100% {
transform: translate(0, 0);
opacity: 0.5;
}
50% {
transform: translate(30%, 30%);
opacity: 0.8;
}
}
.avatar-img {
width: 85%;
height: 85%;
object-fit: cover;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%) rotate(-15deg);
/* 自然的图片形状,与叶片形状呼应 */
border-radius: 60% 0% 65% 0% / 45% 25% 55% 40%;
border: 2px solid rgba(255, 255, 255, 0.5);
box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}
/* 漂浮的小叶子装饰 */
.floating-leaves {
position: absolute;
top: 0;
left: 50%;
transform: translateX(-50%);
width: 220px;
height: 220px;
pointer-events: none;
}
.mini-leaf {
position: absolute;
width: 20px;
height: 20px;
background: var(--eco-primary-light);
border-radius: 0 70% 0 70%;
opacity: 0.3;
animation: miniLeafFloat 6s infinite ease-in-out;
}
.mini-leaf:nth-child(1) {
top: 10px;
left: 10px;
animation-delay: 0s;
}
.mini-leaf:nth-child(2) {
top: 20px;
right: 10px;
animation-delay: 2s;
}
.mini-leaf:nth-child(3) {
bottom: 30px;
left: 20px;
animation-delay: 4s;
}
@keyframes avatarFloat {
from {
opacity: 0;
transform: translateY(-20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
@keyframes miniLeafFloat {
0%, 100% {
transform: rotate(0deg) translateY(0);
opacity: 0.3;
}
50% {
transform: rotate(180deg) translateY(-10px);
opacity: 0.6;
}
}
.hero-name {
font-size: 3.5rem;
font-weight: 700;
font-family: 'Poppins', sans-serif;
background: var(--gradient-eco);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
margin-bottom: 0.8rem;
animation: slideUp 0.6s ease-out 0.2s both;
}
.hero-title {
font-size: 1.6rem;
color: var(--eco-secondary);
margin-bottom: 1rem;
animation: slideUp 0.6s ease-out 0.3s both;
}
.hero-motto {
font-size: 1.1rem;
color: #6b7280;
font-style: italic;
margin-bottom: 2rem;
animation: slideUp 0.6s ease-out 0.4s both;
}
/* 个人介绍 */
.hero-intro {
background: white;
border-radius: 20px;
padding: 2rem;
box-shadow: var(--shadow-card);
animation: slideUp 0.6s ease-out 0.5s both;
margin-top: 1rem;
}
.intro-text {
font-size: 1.05rem;
line-height: 1.8;
color: #4b5563;
margin-bottom: 1.5rem;
text-align: left;
}
.hero-highlights {
display: flex;
justify-content: center;
gap: 2rem;
flex-wrap: wrap;
}
.highlight-item {
display: flex;
align-items: center;
gap: 0.5rem;
color: var(--eco-primary);
font-weight: 600;
padding: 0.5rem 1rem;
background: var(--eco-primary-soft);
border-radius: 20px;
transition: all 0.3s ease;
}
.highlight-item:hover {
transform: translateY(-2px);
box-shadow: 0 4px 8px rgba(45, 127, 94, 0.15);
}
.highlight-item i {
color: var(--eco-primary);
}
@keyframes slideUp {
from {
opacity: 0;
transform: translateY(20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/* 教育经历 - 独立板块 */
.education {
background: linear-gradient(to bottom, white, var(--eco-primary-softer));
padding: 4rem 2rem;
}
.education-container {
max-width: 1200px;
margin: 0 auto;
}
.section-title {
font-size: 2.5rem;
color: var(--eco-primary);
margin-bottom: 3rem;
text-align: center;
position: relative;
display: inline-block;
width: 100%;
}
.section-title::after {
content: '';
position: absolute;
bottom: -10px;
left: 50%;
transform: translateX(-50%);
width: 80px;
height: 3px;
background: var(--gradient-eco);
border-radius: 2px;
}
.education-card {
background: white;
border-radius: 20px;
padding: 2.5rem;
box-shadow: var(--shadow-card);
transition: all 0.3s ease;
display: flex;
gap: 2rem;
}
.education-card:hover {
transform: translateY(-5px);
box-shadow: var(--shadow-hover);
}
.education-icon {
width: 100px;
height: 100px;
background: var(--gradient-eco);
border-radius: 25px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
}
.education-main {
flex: 1;
}
.education-header {
border-bottom: 2px solid var(--eco-primary-soft);
padding-bottom: 1.5rem;
margin-bottom: 2rem;
}
.education-header h3 {
font-size: 1.8rem;
color: var(--eco-primary);
margin-bottom: 0.5rem;
}
.education-header h4 {
font-size: 1.3rem;
color: var(--eco-secondary);
margin-bottom: 0.5rem;
}
.education-header .period {
color: #6b7280;
font-size: 1rem;
display: inline-flex;
align-items: center;
gap: 0.5rem;
}
/* 主修课程 */
.education-courses {
margin-top: 2rem;
}
.courses-title {
font-size: 1.4rem;
color: var(--eco-primary);
margin-bottom: 1.5rem;
display: flex;
align-items: center;
gap: 0.5rem;
}
.courses-title::before {
content: '📚';
font-size: 1.2rem;
}
.courses-list {
display: flex;
flex-wrap: wrap;
gap: 1rem;
justify-content: flex-start;
}
.course-item {
display: inline-flex;
align-items: center;
padding: 0.6rem 1.2rem;
background: linear-gradient(135deg, var(--eco-primary-soft), var(--eco-primary-softer));
border: 1px solid var(--eco-primary-light);
border-radius: 25px;
color: var(--eco-primary-dark);
font-size: 0.95rem;
font-weight: 500;
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
.course-item::before {
content: '';
position: absolute;
top: 0;
left: -100%;
width: 100%;
height: 100%;
background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.3), transparent);
transition: left 0.5s ease;
}
.course-item:hover::before {
left: 100%;
}
.course-item:hover {
transform: translateY(-3px);
box-shadow: 0 5px 15px rgba(45, 127, 94, 0.2);
background: linear-gradient(135deg, var(--eco-primary-light), var(--eco-primary));
color: white;
}
/* 专业技能 - 全新设计 */
.skills {
padding: 5rem 2rem;
background: linear-gradient(180deg, #ffffff 0%, var(--eco-primary-softer) 50%, #ffffff 100%);
position: relative;
overflow: hidden;
}
.skills::before {
content: '';
position: absolute;
top: -100px;
right: -100px;
width: 300px;
height: 300px;
background: radial-gradient(circle, var(--eco-primary-light) 0%, transparent 70%);
opacity: 0.1;
animation: float 20s infinite ease-in-out;
}
@keyframes float {
0%, 100% { transform: translate(0, 0) rotate(0deg); }
25% { transform: translate(-30px, 30px) rotate(90deg); }
50% { transform: translate(30px, -30px) rotate(180deg); }
75% { transform: translate(-30px, -30px) rotate(270deg); }
}
.skills-container {
max-width: 1400px;
margin: 0 auto;
}
.skills-subtitle {
font-size: 1.8rem;
color: var(--eco-primary);
margin-bottom: 2.5rem;
display: flex;
align-items: center;
gap: 1rem;
position: relative;
padding-bottom: 1rem;
}
.skills-subtitle::after {
content: '';
position: absolute;
bottom: 0;
left: 0;
width: 100px;
height: 3px;
background: var(--gradient-eco);
border-radius: 2px;
}
/* 核心能力区域 - 卡片网格布局 */
.core-skills-section {
margin-bottom: 4rem;
}
.core-abilities-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
gap: 1.5rem;
}
.core-ability-card {
background: white;
border-radius: 16px;
padding: 1.8rem;
box-shadow: 0 4px 15px rgba(45, 127, 94, 0.08);
border: 1px solid var(--eco-primary-soft);
display: flex;
gap: 1.5rem;
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
.core-ability-card::before {
content: '';
position: absolute;
top: 0;
left: 0;
width: 4px;
height: 100%;
background: var(--gradient-eco);
transform: scaleY(0);
transition: transform 0.3s ease;
}
.core-ability-card:hover {
transform: translateY(-5px);
box-shadow: 0 8px 25px rgba(45, 127, 94, 0.15);
}
.core-ability-card:hover::before {
transform: scaleY(1);
}
.ability-icon {
width: 60px;
height: 60px;
background: var(--gradient-eco);
border-radius: 15px;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
color: white;
position: relative;
}
.ability-icon::after {
content: '';
position: absolute;
width: 100%;
height: 100%;
background: var(--gradient-eco);
border-radius: 15px;
opacity: 0.3;
animation: pulse 2s infinite;
}
@keyframes pulse {
0%, 100% { transform: scale(1); opacity: 0.3; }
50% { transform: scale(1.1); opacity: 0; }
}
.ability-content h4 {
color: var(--eco-primary);
font-size: 1.1rem;
margin-bottom: 0.5rem;
font-weight: 600;
}
.ability-content p {
color: #4b5563;
line-height: 1.6;
font-size: 0.95rem;
}
/* 复合能力区域 - 手风琴式布局 */
.complex-skills-section {
margin-top: 4rem;
}
.complex-abilities-container {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
gap: 1.5rem;
}
.complex-ability-item {
background: white;
border-radius: 12px;
padding: 1.5rem;
border: 1px solid var(--eco-primary-soft);
transition: all 0.3s ease;
position: relative;
overflow: hidden;
}
.complex-ability-item::after {
content: '';
position: absolute;
top: 0;
right: 0;
width: 80px;
height: 80px;
background: var(--eco-primary-softer);
border-radius: 50%;
transform: translate(30px, -30px);
opacity: 0.5;
transition: all 0.3s ease;
}
.complex-ability-item:hover {
transform: translateX(5px);
box-shadow: 0 5px 20px rgba(45, 127, 94, 0.12);
border-color: var(--eco-primary-light);
}
.complex-ability-item:hover::after {
transform: translate(20px, -20px) scale(1.2);
}
.ability-header {
display: flex;
align-items: center;
gap: 1rem;
margin-bottom: 1rem;
}
.ability-number {
width: 40px;
height: 40px;
background: var(--gradient-eco);
color: white;
border-radius: 10px;
display: flex;
align-items: center;
justify-content: center;
font-weight: bold;
font-size: 1.1rem;
flex-shrink: 0;
}
.ability-header h4 {
color: var(--eco-primary);
font-size: 1.1rem;
font-weight: 600;
flex: 1;
}
.complex-ability-item p {
color: #4b5563;
line-height: 1.7;
font-size: 0.95rem;
margin-left: 3.5rem;
}
/* 复合能力编号 - 统一使用主绿色渐变 */
.complex-ability-item .ability-number {
background: var(--gradient-eco) !important;
}
/* 项目经验 - 全新卡片式设计 */
.projects {
padding: 4rem 2rem;
background: linear-gradient(180deg, #ffffff 0%, var(--eco-primary-softer) 100%);
}
.projects-container {
max-width: 1400px;
margin: 0 auto;
}
/* 项目卡片网格布局 */
.projects-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
gap: 2rem;
margin-top: 3rem;
}
/* 可点击的项目卡片 */
.project-card-clickable {
background: white;
border-radius: 20px;
overflow: hidden;
box-shadow: 0 4px 20px rgba(45, 127, 94, 0.1);
transition: all 0.3s ease;
cursor: pointer;
position: relative;
border: 2px solid transparent;
}
.project-card-clickable:hover {
transform: translateY(-8px);
box-shadow: 0 12px 40px rgba(45, 127, 94, 0.2);
border-color: var(--eco-primary-light);
}
/* 项目主图 */
.project-image {
width: 100%;
height: 240px;
background-size: cover;
background-position: center;
position: relative;
overflow: hidden;
}
.project-image::before {
content: '';
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: linear-gradient(180deg, transparent 60%, rgba(45, 127, 94, 0.8) 100%);
opacity: 0;
transition: opacity 0.3s ease;
}
.project-card-clickable:hover .project-image::before {
opacity: 1;
}
/* 查看详情提示 */
.view-details {
position: absolute;
bottom: 10px;
right: 10px;
background: var(--eco-primary);
color: white;
padding: 8px 16px;
border-radius: 20px;
font-size: 0.9rem;
display: flex;
align-items: center;
gap: 5px;
opacity: 0;
transform: translateY(10px);
transition: all 0.3s ease;
}
.project-card-clickable:hover .view-details {
opacity: 1;
transform: translateY(0);
}
/* 项目信息 */
.project-info {
padding: 1.8rem;
}
.project-name {
font-size: 1.3rem;
font-weight: 700;
color: var(--eco-primary);
margin-bottom: 0.8rem;
line-height: 1.3;
}
.project-brief {
color: #6b7280;
font-size: 0.95rem;
line-height: 1.6;
margin-bottom: 1rem;
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
}
.project-tags {
display: flex;
flex-wrap: wrap;
gap: 0.5rem;
margin-bottom: 1rem;
}
.project-tag {
background: var(--eco-primary-soft);
color: var(--eco-primary);
padding: 4px 12px;
border-radius: 12px;
font-size: 0.85rem;
font-weight: 500;
}
.project-details {
display: flex;
flex-direction: column;
gap: 0.5rem;
font-size: 0.9rem;
color: #6b7280;
}
.project-detail-item {
display: flex;
align-items: center;
gap: 0.5rem;
}
.project-detail-item i {
color: var(--eco-primary-light);
}
/* 流程详情弹窗 */
.modal-overlay {
display: none;
position: fixed;
top: 0;
left: 0;
right: 0;
bottom: 0;
background: rgba(0, 0, 0, 0.6);
backdrop-filter: blur(5px);
z-index: 1000;
animation: fadeIn 0.3s ease;
}
.modal-overlay.active {
display: flex;
align-items: center;
justify-content: center;
}
.modal-content {
background: white;
width: 95%;
max-width: 1400px;
height: 90vh;
border-radius: 24px;
overflow: hidden;
display: flex;
flex-direction: column;
animation: slideUp 0.3s ease;
}
@keyframes slideUp {
from {
opacity: 0;
transform: translateY(50px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
/* 弹窗头部 */
.modal-header {
padding: 1.5rem 2rem;
background: var(--gradient-eco);
color: white;
display: flex;
justify-content: space-between;
align-items: center;
}
.modal-title {
font-size: 1.5rem;
font-weight: 700;
}
.modal-close {
background: rgba(255, 255, 255, 0.2);
border: none;
width: 40px;
height: 40px;
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
cursor: pointer;
transition: all 0.3s ease;
}
.modal-close:hover {
background: rgba(255, 255, 255, 0.3);
transform: rotate(90deg);
}
/* 流程导航栏 */
.workflow-nav {
background: var(--eco-primary-softer);
padding: 1rem 2rem;
display: flex;
gap: 1rem;
overflow-x: auto;
border-bottom: 2px solid var(--eco-primary-soft);
/* 隐藏滚动条 */
scrollbar-width: none; /* Firefox */
-ms-overflow-style: none; /* IE and Edge */
}
.workflow-nav::-webkit-scrollbar {
display: none; /* Chrome, Safari and Opera */
}
.workflow-tab {
padding: 0.8rem 1.5rem;
background: white;
border: 2px solid var(--eco-primary-light);
border-radius: 20px;
color: var(--eco-primary);
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
white-space: nowrap;
font-size: 0.95rem;
}
.workflow-tab:hover {
background: var(--eco-primary-light);
color: white;
}
.workflow-tab.active {
background: var(--eco-primary);
color: white;
box-shadow: 0 4px 12px rgba(45, 127, 94, 0.3);
}
/* 流程内容区 */
.workflow-content-area {
flex: 1;
display: flex;
overflow: hidden;
padding: 2rem;
gap: 2rem;
}
/* 左侧图片区 */
.workflow-image-container {
flex: 0 0 45%;
display: flex;
flex-direction: column;
gap: 1rem;
}
.workflow-image {
width: 100%;
height: 100%;
border-radius: 16px;
overflow: hidden;
background: #f3f4f6;
display: flex;
align-items: center;
justify-content: center;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}
.workflow-image img {
width: 100%;
height: 100%;
object-fit: contain;
}
/* 右侧内容区 */
.workflow-details {
flex: 1;
overflow-y: auto;
padding-right: 1rem;
}
.workflow-details::-webkit-scrollbar {
width: 6px;
}
.workflow-details::-webkit-scrollbar-thumb {
background: var(--eco-primary-light);
border-radius: 3px;
}
.workflow-section {
display: none;
}
.workflow-section.active {
display: block;
animation: fadeIn 0.3s ease;
}
.workflow-section-title {
font-size: 1.8rem;
color: var(--eco-primary);
margin-bottom: 1rem;
padding-bottom: 0.5rem;
border-bottom: 3px solid var(--eco-primary-light);
}
.workflow-description {
background: var(--eco-primary-softer);
padding: 1.5rem;
border-radius: 12px;
margin-bottom: 1.5rem;
}
.workflow-description h4 {
color: var(--eco-primary);
margin-bottom: 0.8rem;
font-size: 1.1rem;
}
.workflow-description p {
color: #4b5563;
line-height: 1.8;
}
.workflow-tasks {
background: white;
border: 2px solid var(--eco-primary-soft);
border-radius: 12px;
padding: 1.5rem;
}
.workflow-tasks h4 {
color: var(--eco-primary);
margin-bottom: 1rem;
font-size: 1.1rem;
}
.workflow-task-item {
padding: 1rem 0;
border-bottom: 1px solid #e5e7eb;
}
.workflow-task-item:last-child {
border-bottom: none;
}
.workflow-task-item h5 {
color: var(--eco-primary-dark);
margin-bottom: 0.5rem;
display: flex;
align-items: center;
gap: 0.5rem;
}
.workflow-task-item h5::before {
content: '';
width: 6px;
height: 6px;
background: var(--eco-mint);
border-radius: 50%;
}
.workflow-task-item p {
color: #6b7280;
line-height: 1.7;
margin-left: 1rem;
}
}
.project-responsibilities h4 {
color: var(--eco-primary);
margin-bottom: 1rem;
}
.responsibilities-list {
list-style: none;
padding-left: 0;
}
.responsibilities-list li {
position: relative;
padding-left: 2rem;
margin-bottom: 0.8rem;
color: #4b5563;
line-height: 1.6;
}
.responsibilities-list li::before {
content: '🌱';
position: absolute;
left: 0;
}
.project-workflows {
margin-top: 2rem;
}
.workflow-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 1.5rem;
margin-top: 1rem;
}
.workflow-item {
background: linear-gradient(135deg, var(--eco-primary-soft), var(--eco-primary-softer));
padding: 1.5rem;
border-radius: 12px;
border: 1px solid var(--eco-primary-light);
transition: all 0.3s ease;
}
.workflow-item:hover {
transform: translateY(-3px);
box-shadow: 0 6px 12px rgba(45, 127, 94, 0.15);
}
.workflow-number {
display: inline-block;
width: 30px;
height: 30px;
background: var(--eco-primary);
color: white;
border-radius: 50%;
text-align: center;
line-height: 30px;
margin-bottom: 0.8rem;
font-weight: bold;
}
.workflow-title {
font-weight: 600;
color: var(--eco-primary);
margin-bottom: 0.5rem;
}
.workflow-desc {
font-size: 0.9rem;
color: #6b7280;
line-height: 1.5;
}
/* 个人评价 */
.evaluation {
padding: 4rem 2rem;
background: linear-gradient(to bottom, var(--eco-primary-softer), white);
}
.evaluation-container {
max-width: 800px;
margin: 0 auto;
}
.evaluation-container .section-title {
text-align: center;
}
.evaluation-content {
background: white;
padding: 3rem;
border-radius: 20px;
box-shadow: var(--shadow-card);
position: relative;
}
.quote-icon {
font-size: 3rem;
color: var(--eco-primary-light);
opacity: 0.3;
position: absolute;
top: 1rem;
left: 2rem;
}
.evaluation-text {
font-size: 1.1rem;
line-height: 1.8;
color: #4b5563;
font-style: italic;
position: relative;
z-index: 1;
text-align: left;
text-indent: 2em;
}
/* 页脚 */
footer {
background: var(--eco-primary-dark);
color: white;
text-align: center;
padding: 2rem;
}
.footer-content {
max-width: 1200px;
margin: 0 auto;
}
.footer-motto {
font-size: 1.2rem;
margin-bottom: 1rem;
display: flex;
justify-content: center;
gap: 2rem;
flex-wrap: wrap;
}
.footer-motto span {
display: flex;
align-items: center;
gap: 0.5rem;
}
/* 移动端响应式 */
.mobile-menu-toggle {
display: none;
background: none;
border: none;
font-size: 1.5rem;
color: var(--eco-primary);
cursor: pointer;
}
@media (max-width: 768px) {
.mobile-menu-toggle {
display: block;
}
.nav-links {
display: none;
position: absolute;
top: 100%;
left: 0;
width: 100%;
background: white;
flex-direction: column;
padding: 1rem;
box-shadow: var(--shadow-card);
}
.nav-links.active {
display: flex;
}
/* 头像调整 */
.avatar-container {
width: 220px;
height: 220px;
}
.avatar-leaf {
transform: rotate(15deg) scale(0.9);
}
.floating-leaves {
width: 240px;
height: 240px;
}
.hero-name {
font-size: 2.2rem;
}
.hero-title {
font-size: 1.2rem;
}
.hero-motto {
font-size: 1rem;
}
.hero-intro {
padding: 1.5rem;
}
.intro-text {
font-size: 0.95rem;
}
.hero-highlights {
gap: 1rem;
}
.highlight-item {
font-size: 0.9rem;
padding: 0.4rem 0.8rem;
}
/* 教育经历调整 */
.education-card {
flex-direction: column;
}
.education-icon {
width: 80px;
height: 80px;
}
.education-header h3 {
font-size: 1.5rem;
}
.education-header h4 {
font-size: 1.1rem;
}
.courses-list {
justify-content: center;
}
.course-item {
font-size: 0.85rem;
padding: 0.5rem 1rem;
}
/* 技能调整 */
.core-abilities-grid {
grid-template-columns: 1fr;
}
.complex-abilities-container {
grid-template-columns: 1fr;
}
.complex-ability-item p {
margin-left: 0;
margin-top: 1rem;
}
.ability-icon {
width: 50px;
height: 50px;
}
.ability-number {
width: 35px;
height: 35px;
font-size: 1rem;
}
/* 项目调整 */
.workflow-grid {
grid-template-columns: 1fr;
}
}
/* 滚动显示动画 */
.scroll-reveal {
opacity: 0;
transform: translateY(50px);
transition: all 0.6s ease-out;
}
.scroll-reveal.active {
opacity: 1;
transform: translateY(0);
}
</style>
</head>
<body>
<!-- 背景装饰 -->
<div class="bg-decoration">
<div class="leaf"></div>
<div class="leaf"></div>
<div class="leaf"></div>
<div class="leaf"></div>
<div class="leaf"></div>
</div>
<!-- 导航栏 -->
<nav>
<div class="nav-container">
<div class="nav-brand">
<i data-lucide="leaf" width="24" height="24"></i>
<span>邓沐</span>
</div>
<button class="mobile-menu-toggle" onclick="toggleMobileMenu()">
<i data-lucide="menu" width="24" height="24"></i>
</button>
<ul class="nav-links" id="navLinks">
<li><a href="#education">教育经历</a></li>
<li><a href="#skills">专业技能</a></li>
<li><a href="#projects">项目经验</a></li>
<li><a href="#evaluation">个人评价</a></li>
</ul>
</div>
</nav>
<!-- 英雄区域 -->
<section class="hero">
<div class="hero-content">
<!-- 落叶形状头像 -->
<div class="avatar-container">
<div class="avatar-leaf">
<img src="邓沐.png" alt="邓沐" class="avatar-img">
</div>
<div class="floating-leaves">
<span class="mini-leaf"></span>
<span class="mini-leaf"></span>
<span class="mini-leaf"></span>
</div>
</div>
<h1 class="hero-name">邓沐</h1>
<h2 class="hero-title">生态环境修复技术专业</h2>
<p class="hero-motto">"致力于生态环境修复,用科技守护绿色地球"</p>
<!-- 个人介绍 -->
<div class="hero-intro">
<p class="intro-text">
一名热爱环保事业的生态环境修复技术专业毕业生,具备扎实的环境监测、样品分析和数据处理能力。
在多个环保项目中积累了丰富的实践经验,涵盖矿山修复、湿地保护、废物回收等领域。
致力于运用专业知识和创新技术,为生态环境保护贡献自己的力量。
</p>
<div class="hero-highlights">
<div class="highlight-item">
<i data-lucide="briefcase" width="20" height="20"></i>
<span>5个环保项目实践</span>
</div>
<div class="highlight-item">
<i data-lucide="award" width="20" height="20"></i>
<span>10项专业技能</span>
</div>
<div class="highlight-item">
<i data-lucide="calendar" width="20" height="20"></i>
<span>2年实习经验</span>
</div>
</div>
</div>
</div>
</section>
<!-- 教育经历 - 独立板块 -->
<section id="education" class="education scroll-reveal">
<div class="education-container">
<h2 class="section-title">
<i data-lucide="graduation-cap" width="32" height="32" style="vertical-align: middle;"></i>
教育经历
</h2>
<div class="education-card">
<div class="education-icon">
<i data-lucide="school" width="40" height="40" color="white"></i>
</div>
<div class="education-main">
<div class="education-header">
<h3>广东环境保护工程职业学院</h3>
<h4>生态环境修复技术专业</h4>
<p class="period">2018年9月 - 2021年6月</p>
</div>
<!-- 主修课程 -->
<div class="education-courses">
<h5 class="courses-title">主修课程</h5>
<div class="courses-list">
<span class="course-item">环境监测技术</span>
<span class="course-item">生态修复工程</span>
<span class="course-item">环境影响评价</span>
<span class="course-item">水污染控制工程</span>
<span class="course-item">大气污染控制技术</span>
<span class="course-item">固体废物处理与处置</span>
<span class="course-item">环境管理体系</span>
<span class="course-item">环保法律法规</span>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- 专业技能 -->
<section id="skills" class="skills scroll-reveal">
<div class="skills-container">
<h2 class="section-title">
<i data-lucide="award" width="32" height="32" style="vertical-align: middle;"></i>
专业技能
</h2>
<!-- 核心能力区域 -->
<div class="core-skills-section">
<h3 class="skills-subtitle">
<i data-lucide="target" width="24" height="24"></i>
核心能力
</h3>
<div class="core-abilities-grid">
<!-- 能力1 -->
<div class="core-ability-card">
<div class="ability-icon">
<i data-lucide="file-text" width="30" height="30"></i>
</div>
<div class="ability-content">
<h4>办公软件与数据分析</h4>
<p>熟练掌握常用办公软件操作能够利用Excel进行实验数据录入、分析与可视化并通过Word和PPT完成检测报告与成果展示。</p>
</div>
</div>
<!-- 能力2 -->
<div class="core-ability-card">
<div class="ability-icon">
<i data-lucide="test-tube" width="30" height="30"></i>
</div>
<div class="ability-content">
<h4>样品采集与处理</h4>
<p>具备环境样品采集与前处理的实践经验,能够按照规范完成水质、土壤、废气样品的实验步骤与流转操作。</p>
</div>
</div>
<!-- 能力3 -->
<div class="core-ability-card">
<div class="ability-icon">
<i data-lucide="microscope" width="30" height="30"></i>
</div>
<div class="ability-content">
<h4>分析仪器操作</h4>
<p>具备对常用分析仪器(如气相色谱、液相色谱、分光光度计)的认知与基本操作能力,能够完成参数设定、测试及日常维护。</p>
</div>
</div>
<!-- 能力4 -->
<div class="core-ability-card">
<div class="ability-icon">
<i data-lucide="shield-check" width="30" height="30"></i>
</div>
<div class="ability-content">
<h4>质量管理与数据溯源</h4>
<p>熟悉检测数据的溯源记录与审核要求,能够保证实验结果的真实性和完整性,符合实验室质量体系规范。</p>
</div>
</div>
<!-- 能力5 -->
<div class="core-ability-card">
<div class="ability-icon">
<i data-lucide="edit-3" width="30" height="30"></i>
</div>
<div class="ability-content">
<h4>文档编制与报告撰写</h4>
<p>具备较强的文档编制与报告撰写能力,能够将实验结果转化为逻辑清晰、结构完整的书面报告。</p>
</div>
</div>
</div>
</div>
<!-- 复合能力区域 -->
<div class="complex-skills-section">
<h3 class="skills-subtitle">
<i data-lucide="layers" width="24" height="24"></i>
复合能力
</h3>
<div class="complex-abilities-container">
<!-- 能力1环境监测 -->
<div class="complex-ability-item" data-category="monitoring">
<div class="ability-header">
<div class="ability-number">01</div>
<h4>环境监测能力</h4>
</div>
<p>具备水质、大气、土壤等典型要素的采样、检测与数据处理的基础能力,能够协助完成监测点布设、采样、实验分析、数据记录、趋势分析与初步报告撰写等任务。</p>
</div>
<!-- 能力2数据工具 -->
<div class="complex-ability-item" data-category="tools">
<div class="ability-header">
<div class="ability-number">02</div>
<h4>数据工具使用能力</h4>
</div>
<p>具备使用AERMOD、SWAT、PowerBI等工具完成简单的数据分析和报告输出的能力。</p>
</div>
<!-- 能力3管理体系 -->
<div class="complex-ability-item" data-category="management">
<div class="ability-header">
<div class="ability-number">03</div>
<h4>环境管理体系认知</h4>
</div>
<p>了解ISO 14001等环境管理体系的全流程实施路径知道环境目标设定、方针制定、作业文件编写、体系运行及认证流程的重点要求能在实际中配合完成管理体系的建设任务。</p>
</div>
<!-- 能力4产业认知 -->
<div class="complex-ability-item" data-category="industry">
<div class="ability-header">
<div class="ability-number">04</div>
<h4>环保产业认知能力</h4>
</div>
<p>了解环保产业主要分类、典型岗位职责及企业类型,具备对常见环保设备结构和功能的基础认知,理解环保项目从立项、评估、施工到验收的关键流程。</p>
</div>
<!-- 能力5法律合规 -->
<div class="complex-ability-item" data-category="legal">
<div class="ability-header">
<div class="ability-number">05</div>
<h4>法律合规意识</h4>
</div>
<p>了解我国主要环境法律法规及责任类型,对环评制度、排污许可、环境执法流程与生态补偿机制具备基础认知,具备围绕合规要求开展全流程管控与政策响应的能力。</p>
</div>
<!-- 能力6环评基础 -->
<div class="complex-ability-item" data-category="assessment">
<div class="ability-header">
<div class="ability-number">06</div>
<h4>环境影响评价基础能力</h4>
</div>
<p>理解《环境影响评价法》及其制度框架,知晓环评全流程的关键步骤,包括现状调查、因子识别、影响预测、报告编制与报批流程,能够协助完成环评材料整理和文本编制。</p>
</div>
<!-- 能力7应急响应 -->
<div class="complex-ability-item" data-category="emergency">
<div class="ability-header">
<div class="ability-number">07</div>
<h4>突发事件应对能力</h4>
</div>
<p>了解环境突发事件的响应全流程,包括风险识别、应急预案制定、物资筹备、应急处置操作、事故报告编写及演练组织,具备完整事件链条的应急协同意识。</p>
</div>
<!-- 能力8新兴技术 -->
<div class="complex-ability-item" data-category="innovation">
<div class="ability-header">
<div class="ability-number">08</div>
<h4>关注新兴技术</h4>
</div>
<p>关注环保领域的一些新兴技术比如CCUS、污染土壤修复、塑料回收、AI污染预警等具备持续学习的习惯能主动学习其技术组成与应用方式并尝试将新兴手段融入实际问题的解决过程中。</p>
</div>
<!-- 能力9自动化控制 -->
<div class="complex-ability-item" data-category="automation">
<div class="ability-header">
<div class="ability-number">09</div>
<h4>环保设备自动化控制基础能力</h4>
</div>
<p>了解环保设备的典型系统构成及其自动化控制路径掌握传感器、执行器、阀控元件的基本原理与功能可以使用PLC、梯形图、HMI界面完成简单监控与联动控制的操作。</p>
</div>
<!-- 能力10设备运维 -->
<div class="complex-ability-item" data-category="maintenance">
<div class="ability-header">
<div class="ability-number">10</div>
<h4>环保设备运维能力</h4>
</div>
<p>了解环保设备运行管理的完整流程,包括设备选型、安装调试、日常巡检、预防性维护与问题处理,具备设备档案维护、安全巡查与基础技术故障响应能力。</p>
</div>
</div>
</div>
</div>
</section>
<!-- 项目经验 -->
<section id="projects" class="projects scroll-reveal">
<div class="projects-container">
<h2 class="section-title">
<i data-lucide="briefcase" width="32" height="32" style="vertical-align: middle;"></i>
项目经验
</h2>
<!-- 项目卡片网格 -->
<div class="projects-grid">
<!-- 矿山修复项目 -->
<div class="project-card-clickable" onclick="openProjectModal('mine')">
<div class="project-image" style="background-image: url('public/矿山废弃地系统生态修复工程/矿山废弃地系统生态修复工程主图.jpg')">
<div class="view-details">
查看详情 <i data-lucide="arrow-right" width="16" height="16"></i>
</div>
</div>
<div class="project-info">
<h3 class="project-name">矿山生态修复工程项目</h3>
<p class="project-brief">
面向典型金属与非金属矿区废弃地,聚焦采空塌陷、废石堆体、高陡边坡等复合环境问题,通过"稳坡防灾—控源截排—土壤重建—群落恢复—智慧运维"的全链路措施,实现安全稳定与生态恢复并重。
</p>
<div class="project-tags">
<span class="project-tag">边坡治理</span>
<span class="project-tag">土壤修复</span>
<span class="project-tag">植被恢复</span>
</div>
<div class="project-details">
<div class="project-detail-item">
<i data-lucide="calendar" width="16" height="16"></i>
<span>2022.01 - 2022.06</span>
</div>
<div class="project-detail-item">
<i data-lucide="briefcase" width="16" height="16"></i>
<span>矿山生态修复工程师助理</span>
</div>
<div class="project-detail-item">
<i data-lucide="building" width="16" height="16"></i>
<span>广东中联兴环保科技有限公司</span>
</div>
</div>
</div>
</div>
<!-- 湿地修复项目 -->
<div class="project-card-clickable" onclick="openProjectModal('wetland')">
<div class="project-image" style="background-image: url('public/城市河漫滩湿地生态修复与海绵系统项目/城市河漫滩湿地生态修复与海绵系统项目-主图.jpg')">
<div class="view-details">
查看详情 <i data-lucide="arrow-right" width="16" height="16"></i>
</div>
</div>
<div class="project-info">
<h3 class="project-name">城市河漫滩湿地生态修复与海绵系统项目</h3>
<p class="project-brief">
聚焦城市河漫滩与低洼湿地的生态修复与海绵设施重构,目标涵盖"行洪安全—水质净化—生境恢复—智慧运维"实现年径流总量控制率≥75%、Ⅲ类水稳定达标与生物多样性显著提升。
</p>
<div class="project-tags">
<span class="project-tag">湿地修复</span>
<span class="project-tag">水质净化</span>
<span class="project-tag">海绵城市</span>
</div>
<div class="project-details">
<div class="project-detail-item">
<i data-lucide="calendar" width="16" height="16"></i>
<span>2022.08 - 2022.12</span>
</div>
<div class="project-detail-item">
<i data-lucide="briefcase" width="16" height="16"></i>
<span>湿地生态修复工程师助理</span>
</div>
<div class="project-detail-item">
<i data-lucide="building" width="16" height="16"></i>
<span>广东万山土壤修复技术有限公司</span>
</div>
</div>
</div>
</div>
<!-- 电池回收项目 -->
<div class="project-card-clickable" onclick="openProjectModal('battery')">
<div class="project-image" style="background-image: url('public/隽诺环保湖州锂电池破碎分选综合回收项目/隽诺环保湖州锂电池破碎分选综合回收项目-主图.jpg')">
<div class="view-details">
查看详情 <i data-lucide="arrow-right" width="16" height="16"></i>
</div>
</div>
<div class="project-info">
<h3 class="project-name">隽诺环保湖州锂电池破碎分选综合回收项目</h3>
<p class="project-brief">
项目设计处理能力1t/h采用带电破碎、低温热解、高值化分选、湿法冶金与末端污染治理等模块化工艺实现极粉回收率92%、铜铝回收率95%、纯度98%。
</p>
<div class="project-tags">
<span class="project-tag">锂电池回收</span>
<span class="project-tag">资源化利用</span>
<span class="project-tag">循环经济</span>
</div>
<div class="project-details">
<div class="project-detail-item">
<i data-lucide="calendar" width="16" height="16"></i>
<span>2023.03 - 2023.07</span>
</div>
<div class="project-detail-item">
<i data-lucide="briefcase" width="16" height="16"></i>
<span>电池回收专员</span>
</div>
<div class="project-detail-item">
<i data-lucide="building" width="16" height="16"></i>
<span>晟明环境科技(山东)有限公司</span>
</div>
</div>
</div>
</div>
<!-- 环境采样项目 -->
<div class="project-card-clickable" onclick="openProjectModal('sampling')">
<div class="project-image" style="background-image: url('public/原江东化工厂退役地块及周边区域环境采样/原江东化工厂退役地块及周边区域环境采样-主图.jpg')">
<div class="view-details">
查看详情 <i data-lucide="arrow-right" width="16" height="16"></i>
</div>
</div>
<div class="project-info">
<h3 class="project-name">"原江东化工厂"退役地块及周边区域环境采样</h3>
<p class="project-brief">
针对"原江东化工厂"退役地块及周边区域展开系统性环境采样与检测,全面识别土壤和地下水的污染现状,为后续环境风险评估和修复治理提供可追溯、合规的第一手数据。
</p>
<div class="project-tags">
<span class="project-tag">环境采样</span>
<span class="project-tag">污染调查</span>
<span class="project-tag">风险评估</span>
</div>
<div class="project-details">
<div class="project-detail-item">
<i data-lucide="calendar" width="16" height="16"></i>
<span>2023.11 - 2024.05</span>
</div>
<div class="project-detail-item">
<i data-lucide="briefcase" width="16" height="16"></i>
<span>环境采样员</span>
</div>
<div class="project-detail-item">
<i data-lucide="building" width="16" height="16"></i>
<span>山东弘益环保技术有限公司</span>
</div>
</div>
</div>
</div>
<!-- 食品检测项目 -->
<div class="project-card-clickable" onclick="openProjectModal('food')">
<div class="project-image" style="background-image: url('public/青海省食品安全抽检监测与第三方检测项目/青海省食品安全抽检监测与第三方检测项目-主图.jpg')">
<div class="view-details">
查看详情 <i data-lucide="arrow-right" width="16" height="16"></i>
</div>
</div>
<div class="project-info">
<h3 class="project-name">青海省食品安全抽检监测与第三方检测项目</h3>
<p class="project-brief">
承接青海省2024年度食品安全抽检任务涵盖乳制品、肉制品、粮食制品等重点品类采用ICP-MS、GC-MS/MS、LC-MS/MS等先进检测技术保证检测结果真实、科学和权威。
</p>
<div class="project-tags">
<span class="project-tag">食品检测</span>
<span class="project-tag">实验室分析</span>
<span class="project-tag">质量控制</span>
</div>
<div class="project-details">
<div class="project-detail-item">
<i data-lucide="calendar" width="16" height="16"></i>
<span>2024.09 - 2025.08</span>
</div>
<div class="project-detail-item">
<i data-lucide="briefcase" width="16" height="16"></i>
<span>实验室检测员</span>
</div>
<div class="project-detail-item">
<i data-lucide="building" width="16" height="16"></i>
<span>杭州远隆食品有限公司</span>
</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- 流程详情弹窗 -->
<div class="modal-overlay" id="projectModal">
<div class="modal-content">
<div class="modal-header">
<h2 class="modal-title" id="modalTitle">项目详情</h2>
<button class="modal-close" onclick="closeProjectModal()">
<i data-lucide="x" width="24" height="24" style="color: white;"></i>
</button>
</div>
<div class="workflow-nav" id="workflowNav">
<!-- 流程导航按钮将动态生成 -->
</div>
<div class="workflow-content-area">
<div class="workflow-image-container">
<div class="workflow-image">
<img id="workflowImage" src="" alt="流程图">
</div>
</div>
<div class="workflow-details" id="workflowDetails">
<!-- 流程详细内容将动态生成 -->
</div>
</div>
</div>
</div>
<!-- 个人评价 -->
<section id="evaluation" class="evaluation scroll-reveal">
<div class="evaluation-container">
<h2 class="section-title">
<i data-lucide="message-circle" width="32" height="32" style="vertical-align: middle;"></i>
个人评价
</h2>
<div class="evaluation-content">
<span class="quote-icon">"</span>
<p class="evaluation-text">
在实习过程中我积极参与水质、土壤和废气等环境样品的检测与分析逐步掌握了样品采集、前处理及常规检测方法的操作流程并积累了对分光光度计、气相色谱等常用仪器的使用经验。我能够熟练运用Excel进行数据整理与趋势分析并完成实验记录与报告撰写确保结果真实可靠。在实验室工作中我注重细节严格遵守操作规程具备较强的责任心与执行力。同时我善于与团队成员沟通配合能够高效完成分工任务展现出良好的学习能力和适应性为实验室检测工作的顺利开展提供了支持。
</p>
</div>
</div>
</section>
<!-- 页脚 -->
<footer>
<div class="footer-content">
<div class="footer-motto">
<span>🌱 致力生态修复</span>
<span>🔬 技术创新驱动</span>
<span>🌍 守护绿色地球</span>
</div>
<p>&copy; 2024 邓沐 - 生态环境修复技术专业</p>
</div>
</footer>
<script>
// 初始化Lucide图标
lucide.createIcons();
// 移动端菜单切换
function toggleMobileMenu() {
const navLinks = document.getElementById('navLinks');
navLinks.classList.toggle('active');
}
// 项目数据(包含所有流程详情)
const projectsData = {
mine: {
title: '矿山生态修复工程项目',
workflows: [
{
id: 'workflow1',
name: '基线调查与风险分区',
image: 'public/矿山废弃地系统生态修复工程/流程一:基线调查与风险分区.jpg',
description: '在修复前期,对矿山废弃地开展系统性基线调查,涵盖地形地貌、地质构造、水文气象、土壤性质与生物多样性。通过布设测点,记录裂缝走向、宽度、延伸长度,并结合汇水面积和降雨数据推算洪峰流量。土壤与底泥样品经理化分析和重金属检测,用于判定客土与稳定化需求。结合生态敏感性和人类活动干扰强度,最终划分风险等级,形成灾害、生态与用地三类分区。这一流程为治理方案设计提供量化依据,避免盲目施工与资源浪费。',
tasks: [
{ title: '裂缝测绘', content: '在导师指导下完成边坡裂缝勘测利用裂缝计、无人机影像和测距仪联合获取裂缝长度、宽度与深度并结合土体抗剪强度测试计算安全系数。随后在ArcGIS中绘制裂缝分布与稳定性等级图明确重点治理区域为削坡和锚固设计提供精确参数。' },
{ title: '水文计算', content: '通过收集近20年气象与水文站点资料结合汇水面积和设计暴雨参数推算峰现时间与洪峰流量。将结果输入HEC-HMS模型进行校核输出设计洪峰值为排水沟、急流槽与消能跌水的断面与比降提供依据确保极端暴雨条件下的排导能力。' },
{ title: '土壤与底泥检测', content: '采集坡面和低洼地带样品完成pH、有机质、C/N和重金属含量测试。分析结果显示部分样点pH<5.5或Cd超标据此制定客土厚度要求和稳定化/淋洗措施,确保后续植被恢复的安全性与持久性。' },
{ title: '生物多样性调查', content: '在样线上记录优势种群、裸地率和入侵种,整理为生境连续性数据库。结合人类活动强度评估,圈定需优先保育的区域,并设定植被恢复目标,为后续群落建设提供本底依据和指标体系。' }
]
},
{
id: 'workflow2',
name: '边坡稳定治理',
image: 'public/矿山废弃地系统生态修复工程/流程二:边坡稳定治理.jpg',
description: '针对高陡边坡和废石堆体,采取削坡整形、框格锚固、挡墙和拦渣坝等组合措施。通过削坡减载降低坡体应力,锚固和框格梁提供抗剪与约束力,挡墙抵御滑动力,拦渣坝削减物料下移。治理过程中严格控制施工平台宽度与坡比,采用标准化参数确保稳定性,并结合泄水孔和盲沟消解孔隙水压力。此流程保障边坡在极端工况下稳定,为植被恢复奠定安全基础。',
tasks: [
{ title: '削坡整形', content: '对坡度大于45°的边坡分台削坡每台阶宽度≥1.0m最终坡比控制在1:1.51:2。削坡过程中同步设置施工平台与临时排水措施降低边坡自重与滑移势能并便于机械作业与人员安全管理。' },
{ title: '框格与锚固施工', content: '布设φ2528mm、长2.54.0m的锚杆采用梅花形布置并配合20×20cm框格梁提升整体抗剪力。框格内预留植被孔洞兼顾工程与生态功能确保后续喷播或栽植顺利开展。' },
{ title: '挡墙结构建设', content: '在坡脚施工M10浆砌片石挡墙顶宽≥2.0m高度810m并每隔2m布设φ6080mm泄水孔梅花交错排列确保排水畅通。回填采用透水性碎石层避免墙后水压力集中提升抗滑稳定性。' },
{ title: '拦渣与导排体系', content: '在坡脚设置拦渣坝与盲沟将坡面径流与碎渣引导至排水沟和急流槽。该体系可有效减少坡面冲刷和渣土外运量并在暴雨后72小时内进行清淤维护保持结构持久性。' }
]
},
{
id: 'workflow3',
name: '水土保持与截排系统',
image: 'public/矿山废弃地系统生态修复工程/流程三:水土保持与截排系统.jpg',
description: '构建"顶端截水—坡面导流—急流槽消能—坡脚排水"的分级排导系统,确保在暴雨期有效控制径流动能与含沙量。通过标准化断面与护砌设计,减少坡面冲蚀,保障植被根区不被冲刷。施工中强调临时排导措施与施工期雨水管理,降低浑水外排风险,保持整体生态功能的稳定性。',
tasks: [
{ title: '截水沟布设', content: '沿等高线开挖截水沟沟底宽度0.81.2m深度0.81.0m设置比降≥0.5%。对急弯段采用大半径过渡并加固浆砌片石,确保流量分布均匀,减少局部淘刷。' },
{ title: '排水沟护砌', content: '设计为梯形断面,内衬浆砌片石并勾缝密实,沟底设置减速齿。长坡段分段设置跌水与消能设施,有效降低流速与冲刷力,延长结构寿命。' },
{ title: '急流槽施工', content: '急流槽纵坡≤1:1.5,槽底分段上陡下缓,进口设拦污栅以阻挡漂浮物,出口与消力池顺接,保证高速水流被消能后平稳排出。' },
{ title: '临时导流措施', content: '在汛期或施工期间布设临时导流沟与分期围堰,将施工废水与自然径流分离,并经沉淀池处理后外排,降低浑水直排对下游水体的风险。' }
]
},
{
id: 'workflow4',
name: '土壤重建与客土改良',
image: 'public/矿山废弃地系统生态修复工程/流程四:土壤重建与客土改良.jpg',
description: '针对矿山废弃地土壤贫瘠与结构破坏问题通过施加客土基质混合生物炭、有机肥与微生物剂辅以pH和盐分调控重建具有良好结构与保水性能的根际环境。该流程为植被建立与群落演替提供物质条件并缩短建植期。',
tasks: [
{ title: '客土覆盖', content: '坡面客土厚度控制在1520cm平台区覆盖2530cm土壤颗粒组成砂/壤/黏比例合理,形成稳定的团粒结构。施工时采用机械分层压实,保证基质与原地表结合紧密,防止后期滑移。' },
{ title: '基质配比改良', content: '按照6:3:1比例混合当地土、腐殖土与生物炭并施加N-P-K复合肥810g/m²作为底肥。该组合改善土壤通气性与养分供应提升根际微环境质量。' },
{ title: 'pH与盐分调控', content: '对pH<5.5的酸性土壤施加石灰粉0.51.0kg/m²分次改良对pH>8.0的碱性土壤使用硫磺粉与有机质缓释材料中和保持pH在6.07.5之间。盐分偏高区域采取清水灌洗结合有机质改良,降低电导率。' },
{ title: '微生物剂喷施', content: '在客土表层喷施枯草芽孢杆菌、固氮菌与解磷菌混合剂每平方米10⁸cfu水平增强土壤养分循环与根际活性加快植被建植速度。' }
]
},
{
id: 'workflow5',
name: '植被恢复与群落建设',
image: 'public/矿山废弃地系统生态修复工程/流程五:植被恢复与群落建设.jpg',
description: '采用"草—灌—乔—藤"演替路径,分带分高程配置乡土耐旱耐瘠物种,先期快速控蚀固坡,逐步形成复层、异龄、近自然群落。通过合理种植密度与组合,构建稳定的植被系统,提高生态自我修复与抗逆能力。',
tasks: [
{ title: '草本快速建植', content: '喷播狗牙根、百喜草与豆科植物混播喷播厚度36cm快速形成致密草坪。前期采用防蚀毯覆盖3045天提高出苗整齐度并有效控制坡面侵蚀。' },
{ title: '灌木带建设', content: '选择紫穗槐、胡枝子与黄栌等乡土耐瘠灌木株距1.21.5m。利用深根系的加筋作用,提高坡体抗剪强度,同时改善土壤有机质水平,促进群落稳定。' },
{ title: '乔木点植', content: '在坡面和平台点植本地栎类或松类乔木胸径≥4cm配置水袋进行保活灌溉。乔木逐步形成林冠微气候减少水分蒸发与热胁迫为灌草层提供遮荫保护。' },
{ title: '藤本覆盖', content: '在框格和生态袋位置栽植常春藤与爬山虎,利用其攀附性覆盖裸露岩面,减少岩体风化与蒸发失水,提升整体覆盖度。' }
]
},
{
id: 'workflow6',
name: '监测评估与适应性管理',
image: 'public/矿山废弃地系统生态修复工程/流程六:监测评估与适应性管理.jpg',
description: '修复后期引入数字化监测与绩效评估体系结合在线监测、移动巡护、季度评审与年度审查构建KPI与SLA指标。通过数据驱动的适应性管理及时发现稳定性与植被问题形成运维SOP工单闭环实现持续改进与长期稳态。',
tasks: [
{ title: '稳定性监测', content: '布设裂缝计、位移桩与测斜管暴雨后72h内复测关键点位形成监测曲线。若位移速率超限立即触发加固或封闭处置避免灾害放大。' },
{ title: '水土保持复核', content: '在汛期定期检查排水沟、急流槽与消能池,开展清淤与修护,确保排导系统在设计流量下稳定运行。复核结果形成记录并归档。' },
{ title: '植被监测', content: '春秋两季调查存活率、盖度和病虫害情况若存活率低于85%则立即补植。结合遥感影像与样方监测双重验证,确保数据客观可靠。' },
{ title: '第三方评估', content: '协助完成年度体检与绩效审计将覆绿率、稳定性和水稳性数据提交评估。根据反馈结果编制改进方案并更新运维SOP推动修复路径持续优化。' }
]
}
]
},
wetland: {
title: '城市河漫滩湿地生态修复与海绵系统项目',
workflows: [
{
id: 'workflow1',
name: '生态风险评估',
image: 'public/城市河漫滩湿地生态修复与海绵系统项目/流程一:生态风险评估.jpg',
description: '该阶段主要聚焦湿地修复前的全面调查与诊断,通过水文、水质、底泥、土壤与生物群落的多要素调查,识别制约生态系统恢复的瓶颈因子,并绘制风险分区图,为后续的修复方案制定和施工边界划定提供科学依据。评估过程兼顾了人类干扰因素与生态系统完整性,形成"问题—目标—路径—指标"的闭环逻辑,使后续工程措施能够有据可依并具备量化目标。',
tasks: [
{ title: '水文连通调查', content: '在导师指导下,参与逐断面核查河漫滩的闸坝、涵洞和回水区,使用全站仪和无人机对阻水点进行精确测绘,结合水位监测器获取的枯汛水文数据,判定可能导致返涝的瓶颈段,并提出初步疏解方案。' },
{ title: '水质与底泥普查', content: '协助采集TN、TP、COD及重金属样品利用便携式检测设备进行现场初测再送实验室进行高精度分析对比国家Ⅲ类水标准识别污染热点并参与建立污染优先治理清单。' },
{ title: '土壤理化分析', content: '完成土壤样品的采集、编号和保存协助实验人员检测pH、有机质及C/N比分析土壤贫瘠化和潜在污染问题并记录在调查表格中为后续土壤修复工艺选择提供支撑。' },
{ title: '生物多样性本底调查', content: '在样线和样方布设的指导下,协助记录鸟类、两栖动物和底栖生物的分布情况,拍摄影像资料并进行标注,最终形成生境现状报告,支持保护区与修复斑块的划定。' }
]
},
{
id: 'workflow2',
name: '指标分解',
image: 'public/城市河漫滩湿地生态修复与海绵系统项目/流程二:指标分解.jpg',
description: '该阶段将总体目标细化为具体可量化的KPI与考核标准涵盖雨洪调蓄、水质改善、生境连续性与管理响应效率。通过建立季度里程碑和责任矩阵确保每个指标具备明确的执行路径和评估口径从而实现投建运一体化下的全过程绩效管控。',
tasks: [
{ title: '年径流控制测算', content: '协助工程师利用暴雨强度公式与城市不透水率数据计算所需LID设施规模并在模型软件中模拟径流控制效果最终设定控制率≥75%的目标。' },
{ title: '水质分阶段达标设计', content: '在技术人员指导下整理人工湿地的进出水数据对TN、TP削减率进行阶段性分解参与形成达标路径图使设计目标与实际运行工况保持一致。' },
{ title: '生境指标建立', content: '通过查阅文献和实地调研,协助制定生境连续性指标,如最小斑块面积和廊道宽度,确保生态功能不被割裂,同时提出缓冲带宽度的参考建议。' },
{ title: '运维SLA设计', content: '参与整理运维团队的反馈意见,形成如"响应时限≤24小时、缺陷销项≤7天"的服务指标,并录入绩效支付条件,为后续合同化考核提供依据。' }
]
},
{
id: 'workflow3',
name: '水文连通与控水工程设计',
image: 'public/城市河漫滩湿地生态修复与海绵系统项目/流程三:水文连通与控水工程设计.jpg',
description: '通过复合断面整治、闸涵调度与溢流堰布设,重塑多层水位体系,兼顾行洪安全与生态需求。在保证洪峰通行能力的前提下,提升枯季的生态基流稳定性,实现"深槽—浅滩—消落带"多样水位格局。该流程强调土方平衡与施工导流组织,既降低扰动成本,又保障施工期间水文安全。最终形成蓝绿廊道贯通体系,为雨洪调蓄和生态连通奠定工程基础。',
tasks: [
{ title: '复合断面设计', content: '采用缓坡、阶梯与浅滩组合,提升过水断面能力,扩展浅水带面积,为水生植被和鱼类稚幼提供生境。' },
{ title: '闸涵与溢流堰布置', content: '设置常水位与防洪水位双参数,保证汛期分洪顺畅,枯季维持生态水位,避免水体长期裸露或退化。' },
{ title: '土方挖填平衡', content: '通过料场合理分配,实现近零外运,降低施工能耗与扰动风险,确保成本可控与环境友好。' },
{ title: '临时导流方案', content: '分期围堰与临时导流沟施工,避免枯汛转换期水体浑浊和冲淤失衡,保障行洪与施工双安全。' }
]
},
{
id: 'workflow4',
name: '水质净化系统建设',
image: 'public/城市河漫滩湿地生态修复与海绵系统项目/流程四:水质净化系统建设.jpg',
description: '采用"沉砂—表流—稳定塘—潜流—抛光"多级净化链,实现雨水与再生水的高效处理。通过优化水力停留时间与折流系数,提升氮、磷和有机物的协同去除效率。系统引入介质复合配置与多层植被群落,保障水质稳定达标。旁路溢流与预处理措施确保暴雨条件下系统抗冲击能力,运维环节注重割草、补植和疏浚等操作的周期化标准。',
tasks: [
{ title: '水力条件优化', content: '表流单元HRT13天潜流单元25天折流板设计抑制短流确保各段处理效率均衡。' },
{ title: '介质配置管理', content: '砾石、砂和沸石分层铺设,兼顾承托、过滤与离子交换功能,提高氮磷削减能力。' },
{ title: '多层植被群落营建', content: '挺水、漂浮和沉水植物复配,实现全年供氧、吸附与同化,保持生态稳定。' },
{ title: '溢流与旁路设施', content: '设截污闸与旋流沉砂池削减悬浮物与油类污染,暴雨期间旁路分洪,防止厌氧失稳。' }
]
},
{
id: 'workflow5',
name: '生态岸带构建',
image: 'public/城市河漫滩湿地生态修复与海绵系统项目/流程五:生态岸带构建.jpg',
description: '通过微地形塑造与柔性—半刚性护岸替代直立硬岸,形成稳定的枯汛消落带和复合生境。植被群落沿高程带状配置,兼顾耐淹与耐旱功能,提升岸带的抗冲刷性与生境多样性。结合人类活动需求,设计隐蔽栈道与缓冲带,减少干扰并保障公共安全。洪后快速修复机制确保生态岸带在极端事件后快速恢复。',
tasks: [
{ title: '微地形优化', content: '设置浅洼与岬角以消能沉沙,形成低流速水域,为鱼类稚幼提供庇护。' },
{ title: '护岸组合体系', content: '采用柳条、生态袋和草毯分层布置坡比1:31:5有效消能防止塌岸。' },
{ title: '植被群落配置', content: '芦苇、香蒲、再力花等分带栽植,形成稳定的消落带群落,提升系统抗扰性。' },
{ title: '人类活动调控', content: '设计隐蔽亲水平台与限流设施,降低噪声与夜光干扰,兼顾科普与生态保护。' }
]
},
{
id: 'workflow6',
name: '土壤与底泥分级修复',
image: 'public/城市河漫滩湿地生态修复与海绵系统项目/流程六:土壤与底泥分级修复.jpg',
description: '针对污染累积与土壤贫瘠化问题,采用"原位稳定—淋洗置换—生态修复"组合路径。通过材料改良与生物修复提升土壤理化性状,降低重金属与有机污染物的生物有效性。叠加改性生物炭与微生物剂,恢复土壤团聚体结构和根际微生态。建立长期监测体系,确保修复区达到安全与生态双重目标。',
tasks: [
{ title: '风险分区管理', content: '将地块划分为筛选值、管控值与修复值三类区域,优先治理高风险区,明确不同工艺路径。' },
{ title: '原位稳定措施', content: '投加磷铁矿物与硅铝系稳定剂,固定活性金属价态,降低向植物与水体的迁移风险。' },
{ title: '淋洗置换工艺', content: '对污染热点采用药剂淋洗,液固比与停留时间精确控制,清洁回填并设渗滤层防止二次扩散。' },
{ title: '生态重建与改良', content: '通过生物炭与堆肥增强CEC和孔隙度结合先锋植物群落恢复食物网提升生态功能。' }
]
},
{
id: 'workflow7',
name: '生物多样性提升',
image: 'public/城市河漫滩湿地生态修复与海绵系统项目/流程七:生物多样性提升.jpg',
description: '构建"营巢—觅食—通道—缓冲"四层生境网络,叠加光噪与人类干扰管理,确保鸟类与其他野生动物的繁殖和迁徙安全。通过分区保护与廊道连通,提升区域整体生境连续性。结合社区共治与科普教育,增强公众生态保护意识,实现生态修复与社会参与的双重效益。',
tasks: [
{ title: '栖息地分区', content: '核心营巢地设缓冲带,限制大型集会与施工干扰,确保繁殖季安全。' },
{ title: '廊道连通设计', content: '构建林带—支沟—树岛的生态通道,保障鸟类迁飞与小型兽类通行。' },
{ title: '行为与噪光管控', content: '实施钓捕限时、夜间限流与低色温照明,降低人为活动干扰。' },
{ title: '社区共治与科普', content: '设立监测志愿者团队与导览驿站,提升公众生态保护参与度与持续性。' }
]
},
{
id: 'workflow8',
name: '监测评估与适应性管理',
image: 'public/城市河漫滩湿地生态修复与海绵系统项目/流程八:监测评估与适应性管理.jpg',
description: '通过在线监测、遥感解译和移动巡护相结合构建数字化生态运维体系。将预警、工单派发与复核销项形成闭环实现异常快速响应。按季度评估KPI完成情况并联动绩效支付机制推动持续优化与技术迭代。长期归档数据用于第三方审计和政策复盘形成可追溯的智慧运维平台。',
tasks: [
{ title: '在线监测系统', content: '布设水位、流量、DO与电导传感器分钟级刷新并联网异常触发预警和旁路控制。' },
{ title: '数据指标管理', content: '建立水量、水质与生境指标数据库,设置阈值与报警机制,保障数据口径一致。' },
{ title: '巡护与工单闭环', content: '移动端巡检拍照取证,生成工单并闭环销项,确保任务可追溯。' },
{ title: '适应性优化机制', content: '通过小样区试验新介质和新群落,评估成效后滚动替换推广,提升修复效率与稳定性。' }
]
}
]
},
battery: {
title: '隽诺环保湖州锂电池破碎分选综合回收项目',
workflows: [
{
id: 'workflow1',
name: '立项调研与需求分析',
image: 'public/隽诺环保湖州锂电池破碎分选综合回收项目/流程一:立项调研与需求分析.jpg',
description: '在项目启动阶段,需要对区域废旧锂电池的产出量、种类分布与产业链特点进行详细调研,同时结合国家和地方相关环保政策,明确工艺路线和规模定位。通过建立数据化的需求预测模型、分析环境容量约束、评估经济与环保效益,最终形成完整的可行性研究报告。这一环节不仅确保了项目符合政策法规和区域实际需求,还为后续工艺选择、设备选型和厂区布局奠定科学基础。',
tasks: [
{ title: '电池产量调研', content: '参与收集湖州市内新能源车企、3C产品厂商与回收点的电池报废数据采用Excel建立月度报废量预测模型验证未来三年年处理量约为8000吨确保设计产能与市场需求相匹配。' },
{ title: '政策法规对照', content: '协助导师梳理《固废法》《危险废物管理条例》及浙江省地方规范,逐条核查电池破碎、存储和运输环节的管理要求,形成一份法规合规清单,避免在项目审批阶段出现制度性缺陷。' },
{ title: '环境容量评估', content: '参与模拟厂区排放情景利用大气扩散与地下水渗滤模型评估厂界污染物对周边敏感点的影响最终确认排放强度在GB 16297和GB 3095标准允许范围内。' },
{ title: '技术路线论证', content: '通过查阅文献和参观兄弟企业,协助比较干法回收与湿法回收的差异,最终支持团队选择"带电破碎+低温热解+湿法分选"的组合工艺,实现安全性与经济性的平衡。' },
{ title: '需求分析总结', content: '整理调研数据与法规条款,协助撰写立项报告章节,明确项目目标、关键约束和实施路径,为后续环节的投资决策提供有力支撑。' }
]
},
{
id: 'workflow2',
name: '厂区规划与设备布置',
image: 'public/隽诺环保湖州锂电池破碎分选综合回收项目/流程二:厂区规划与设备布置.jpg',
description: '在设计环节,厂区布局必须兼顾危险废物处理的安全性、环境防护需求和设备运转效率。通过功能分区,将原料贮存、破碎分选、热解、湿法回收、烟气治理与控制中心明确隔离,并落实防渗、防泄漏、防火和噪声控制措施。合理的设备布置不仅提升运行效率,还能降低交叉污染和环境风险。',
tasks: [
{ title: '功能分区绘制', content: '在AutoCAD中协助绘制厂区总平面图将废电池堆放区与破碎区分隔生活区与危险废物区保持安全距离符合GB 18597要求。' },
{ title: '防渗层设计', content: '参与记录施工方在破碎车间铺设双层防渗膜+混凝土硬化层的工艺过程,并对施工日志进行归档,确保渗滤液无法进入地下水。' },
{ title: '防火隔离措施', content: '在热解区调研时,协助核查设备周围隔热墙体厚度与喷淋系统布置情况,确保其达到《建筑设计防火规范》的要求。' },
{ title: '噪声防控优化', content: '协助对破碎机和风机进行噪声监测记录厂界分贝值并与GB 12348标准比对提出在高噪设备外加装隔声罩的建议。' },
{ title: '数据归档与总结', content: '整理所有布置图纸与监测结果,形成一份"厂区布局与安全防护"专题报告,供项目验收时使用。' }
]
},
{
id: 'workflow3',
name: '废旧电池预处理与放电',
image: 'public/隽诺环保湖州锂电池破碎分选综合回收项目/流程三:废旧电池预处理与放电.jpg',
description: '在进入破碎环节前,所有废旧电池必须进行严格的预处理,包括检测、分类和放电。该步骤的核心目标是消除电池中残余电量所带来的安全隐患,防止在后续破碎过程中出现短路、起火或爆炸。同时,通过分类筛选异常电池(如漏液、鼓包、冒烟),可以减少整体工艺的不确定性,降低设备负荷。合理的预处理流程既保障了人员安全和设备稳定,也为后续带电破碎环节打下坚实基础。',
tasks: [
{ title: '入厂检测', content: '在导师指导下参与对入厂电池进行外观和电压检测,使用红外测温仪排查发热电池,并将异常电池单独编号存放,避免其直接进入破碎环节,确保生产安全。' },
{ title: '放电操作', content: '协助完成惰性气体灌注下的统一放电处理,代替人工逐个放电,大幅度降低人员暴露风险,保证电池残余电量完全释放。' },
{ title: '分类归口', content: '协助根据电池类型(单体、模组、整包)建立分类台账,并用不同颜色标识,既便于后续破碎机调整参数,又减少混杂处理带来的能耗浪费。' },
{ title: '温控存储', content: '参与记录电池存储区温度和湿度确保仓储环境≤25℃并安装温度报警器防止因高温自燃导致事故。' },
{ title: '流程数据化', content: '负责将检测、放电与分类的数据录入Excel形成趋势曲线支持工程师分析不同电池批次的风险特征。' }
]
},
{
id: 'workflow4',
name: '带电破碎工艺实施',
image: 'public/隽诺环保湖州锂电池破碎分选综合回收项目/流程四:带电破碎工艺实施.jpg',
description: '带电破碎是本项目的核心环节之一,通过在惰性气体保护和负压环境下进行机械化破碎,实现电池结构的安全拆解。此环节既要保障破碎过程的连续性和自动化程度,又要严格控制粉尘和电解液泄漏,避免火灾和二次污染。配套的气氛控制与除尘系统是实现绿色、安全破碎的关键,确保生产安全性和环保合规性。',
tasks: [
{ title: '气氛控制', content: '协助监测破碎室内氮气浓度保持氧含量≤2%,通过手持气体检测仪进行巡查,确保环境始终处于防爆安全区。' },
{ title: '自动化破碎', content: '学习操作PLC系统控制的全自动破碎机参与设置破碎转速和投料量保证破碎均匀且连续稳定。' },
{ title: '粉尘治理', content: '记录布袋除尘器和湿式收集器运行参数检测颗粒物排放浓度并对比GB 16297标准确保粉尘捕集效率≥99%。' },
{ title: '温度监控', content: '在设备监控系统上检查温度传感器数据,确认破碎室温度不超过设定上限,防止电解质泄漏后遇高温引发燃烧。' },
{ title: '运行记录', content: '协助整理破碎环节运行日志,包含投料量、能耗、粉尘浓度,形成日报表供工艺工程师优化。' }
]
},
{
id: 'workflow5',
name: '低温热解去除电解液',
image: 'public/隽诺环保湖州锂电池破碎分选综合回收项目/流程五:低温热解去除电解液.jpg',
description: '电池破碎后仍含有电解液与隔膜需要通过低温热解工艺加以处理。采用电磁加热与优化气流导向设计在500℃以下温度下分解电解液与PVDF材料既避免二噁英等有害物质生成又能降低能耗。此环节还通过尾气二次燃烧与废气处理装置确保排放达标实现电池材料的彻底净化与资源化。',
tasks: [
{ title: '热解温控', content: '协助设置热解炉温度曲线确保温度维持在480500℃区间保证电解液充分分解而不产生二次污染。' },
{ title: '电磁加热优化', content: '观察电磁加热装置的能耗情况,对比传统电阻加热,记录能效提升数据并形成对比表。' },
{ title: '气流导向设计', content: '参与监测炉膛内部气流分布,防止出现短路流,提高受热均匀性和热解效率。' },
{ title: '尾气处理', content: '协助检查二燃室温度是否保持≥1100℃、停留≥2s避免二噁英与有机废气逸散。' },
{ title: '废气净化', content: '跟随师傅操作酸雾洗涤塔和碱液吸收装置记录HCl和HF的去除率确保达标排放。' }
]
},
{
id: 'workflow6',
name: '高值化分选与金属提取',
image: 'public/隽诺环保湖州锂电池破碎分选综合回收项目/流程六:高值化分选与金属提取.jpg',
description: '在热解后的物料中,极片粉末、铜箔、铝箔等需要通过机械分选和湿法浸出工艺进一步回收。通过高效分选设备与化学浸出技术,实现有价金属(镍、钴、锰、锂)的高回收率与高纯度。该流程的目标是最大限度地提升材料利用价值,为电池级原材料再生产提供稳定来源,同时确保经济效益。',
tasks: [
{ title: '极粉回收', content: '协助监测分选设备运行确认极粉回收率≥92%,并采样送实验室验证碳粉中钴锂含量。' },
{ title: '铜铝分选', content: '在自动筛分线学习监控铜、铝粉分离效果使用金属分析仪检测纯度确保≥98%。' },
{ title: '湿法浸出', content: '参与配置酸液控制浓度在23mol/L记录镍、钴、锰的浸出率确保≥98%。' },
{ title: '杂质去除', content: '协助进行铁、铝离子去除实验,观察沉淀剂投加量与杂质去除率的关系,保证最终金属溶液纯度。' },
{ title: '数据分析', content: '整理回收率和纯度的检测结果,绘制工艺曲线,为工艺优化提供数据支撑。' }
]
},
{
id: 'workflow7',
name: '烟气废水固废治理',
image: 'public/隽诺环保湖州锂电池破碎分选综合回收项目/流程七:烟气废水固废治理.jpg',
description: '破碎、热解和湿法处理过程中会产生大量废气、废水和固废,必须通过系统化的末端治理设施进行处理。通过袋式除尘、吸附塔、中和沉淀和固废分类收集,实现"三废"治理全覆盖。该流程不仅确保排放符合国家与地方标准,还有效避免二次污染,是保障项目环保达标的关键环节。',
tasks: [
{ title: '废气治理', content: '协助监测袋式除尘和活性炭吸附装置运行记录SO₂和颗粒物排放数据确保符合GB 16297限值。' },
{ title: '废水中和', content: '在废水处理区协助测量废液pH和镍离子浓度配合工程师完成中和沉淀实验确认总镍浓度达标。' },
{ title: '固废分类', content: '学习记录冶炼渣、废活性炭的重量,并填写转移联单,确保进入有资质企业安全处置。' },
{ title: '噪声防控', content: '参与厂界噪声监测,分析昼夜数据波动,并协助提出隔声屏障与减振措施。' },
{ title: '治理台账', content: '整理废气、废水、固废治理的月度数据,形成合规性报表。' }
]
},
{
id: 'workflow8',
name: '运行监测与应急管理',
image: 'public/隽诺环保湖州锂电池破碎分选综合回收项目/流程八:运行监测与应急管理.jpg',
description: '在运行阶段,项目需建立完善的监测体系与应急管理机制。通过在线监测、定期采样和第三方评估,确保环境风险长期可控。同时制定突发事故应急预案,并开展人员培训与应急演练,提高应对事故的能力。该流程保障了项目的持续稳定运行和社会公众安全。',
tasks: [
{ title: '在线监测', content: '协助检查废气、废水在线监测系统运行情况确认SO₂、COD数据实时上传环保平台。' },
{ title: '定期检测', content: '参与每月一次的废气与废水人工采样,核对与在线数据一致性,确保监测结果真实可靠。' },
{ title: '应急演练', content: '参与了火灾与废水泄漏的应急演练,学习事故报警、人员疏散、物资调配流程。' },
{ title: '人员培训', content: '协助制作操作安全PPT参与新员工安全培训提高车间整体风险防范意识。' },
{ title: '应急预案修订', content: '协助记录演练暴露出的不足,参与更新应急预案,确保应急响应闭环。' }
]
}
]
},
sampling: {
title: '"原江东化工厂"退役地块及周边区域环境采样',
workflows: [
{
id: 'workflow1',
name: '制定采样计划',
image: 'public/原江东化工厂退役地块及周边区域环境采样/流程一:制定采样计划.jpg',
description: '在项目前期,参与收集历史资料与现场踏勘,结合污染源分布和地质条件,协助确定采样点位和检测指标。通过布点方案与检测因子整理,保证采样计划既全面又具针对性。',
tasks: [
{ title: '厂区资料整理', content: '协助收集工厂工艺和排污历史资料,初步标注潜在污染区域,为采样点布设提供参考。' },
{ title: '采样布点绘制', content: '参与绘制点位草图,学习网格布点和加密布点方式,确保采样计划兼顾代表性与重点性。' },
{ title: '检测指标核对', content: '整理拟检测因子清单,与实验室检测能力对照,确认检测范围覆盖潜在风险物质。' }
]
},
{
id: 'workflow2',
name: '采样前准备',
image: 'public/原江东化工厂退役地块及周边区域环境采样/流程二:采样前准备.jpeg',
description: '在正式采样前,协助完成人员分工、设备检查和样品容器预处理,并与实验室沟通检测需求,确保现场采样环节顺利衔接。',
tasks: [
{ title: '安全交底执行', content: '协助分发个人防护用品并参与安全交底,确保采样全程符合作业规范和防护要求。' },
{ title: '设备检查调试', content: '配合完成大气采样器、钻机等设备的运行测试与维护记录,保证现场采样时设备稳定。' },
{ title: '样品容器准备', content: '协助完成采样瓶酸洗、编号及预装试剂,避免采样后出现交叉污染或样品失真。' }
]
},
{
id: 'workflow3',
name: '地下水样品采集',
image: 'public/原江东化工厂退役地块及周边区域环境采样/流程三:地下水样品采集.jpeg',
description: '在监测井开展洗井和取样,协助完成样品分装与保存操作,确保地下水样品能代表真实环境。',
tasks: [
{ title: '洗井操作辅助', content: '配合开展低流量泵洗井观察并记录pH、电导率等参数稳定性保证样品真实可靠。' },
{ title: 'VOCs采集执行', content: '协助采集无顶空水样,按规范密封瓶口,减少挥发性有机物损失,提升检测准确性。' },
{ title: '样品保存交接', content: '参与样品酸化、冷链保存及交接单填写,确保样品在运输与检测前保持原始状态。' }
]
},
{
id: 'workflow4',
name: '土壤样品采集',
image: 'public/原江东化工厂退役地块及周边区域环境采样/流程四:土壤样品采集.jpg',
description: '在不同区域与深度钻孔采集土壤样品,配合完成快速筛查与分装,确保捕捉到污染层位并满足检测要求。',
tasks: [
{ title: '分层采样记录', content: '协助按06m不同深度分层采集记录采样编号和深度信息保证土壤剖面数据完整。' },
{ title: '快速筛查协助', content: '配合操作PID、XRF设备检测VOCs与重金属浓度实时识别污染热点优化采样深度。' },
{ title: '样品分装封存', content: '参与将土壤样品分装入专用容器并贴标签,检查密封性,确保检测环节样品不失真。' }
]
},
{
id: 'workflow5',
name: '空气与噪声采样',
image: 'public/原江东化工厂退役地块及周边区域环境采样/流程五:空气与噪声采样.jpg',
description: '在厂界及敏感点布设空气与噪声采样点,协助监测周边环境潜在影响,保证数据覆盖人群暴露区域。',
tasks: [
{ title: '空气样品采集', content: '协助在厂界和下风向居民区操作大气采样器,记录气象条件和采样时间,确保数据可追溯。' },
{ title: '噪声布点测量', content: '参与在厂界四周及学校等敏感点布点测噪,完成昼夜对比并整理数据,辅助评估噪声影响。' },
{ title: '重点点位执行', content: '协助在居民区、学校周边完成重点采样,确保项目成果覆盖人群健康敏感区。' }
]
},
{
id: 'workflow6',
name: '实验室检测分析对接',
image: 'public/原江东化工厂退役地块及周边区域环境采样/流程六:实验室检测分析对接.png',
description: '采样完成后,协助完成样品交接与冷链运输,确保实验室检测能够顺利开展并符合质控要求。',
tasks: [
{ title: '样品交接整理', content: '负责核对样品编号、保存条件与交接单,确保记录完整清晰,满足质量追溯要求。' },
{ title: '冷链运输保障', content: '协助样品低温搬运检查冷藏箱温度确保全程保持4℃运输避免样品发生变化。' },
{ title: '实验室沟通', content: '跟进检测需求调整,整理实验室反馈信息并传递给项目组,保证检测与计划一致。' }
]
},
{
id: 'workflow7',
name: '检测结果评估',
image: 'public/原江东化工厂退役地块及周边区域环境采样/流程七:检测结果评估.jpg',
description: '检测结果返回后,协助对比国家标准并初步分析污染程度,配合导师完成空间分布整理。',
tasks: [
{ title: '数据对标核查', content: '协助整理检测数据,与国家标准逐项对比,标注超标项,初步判断风险水平。' },
{ title: '空间数据整理', content: '配合使用GIS绘制污染分布简图直观展示结果为后续风险评估提供支撑。' },
{ title: '风险分级辅助', content: '协助导师完成区域风险分级,突出重点超标区域,便于后续修复治理决策。' }
]
},
{
id: 'workflow8',
name: '检测报告编制',
image: 'public/原江东化工厂退役地块及周边区域环境采样/流程八:检测报告编制.jpg',
description: '在项目收尾阶段,参与整理采样与检测全过程资料,配合完成规范化检测报告编制。',
tasks: [
{ title: '报告附件汇总', content: '协助收集采样方案、检测数据和质控资料,整理成规范化附件,确保报告完整性。' },
{ title: '图表资料整理', content: '参与绘制采样示意图和污染分布图,整理现场照片,保证报告图文并茂、直观清晰。' },
{ title: '初稿编写协助', content: '协助编制检测报告初稿,校对内容准确性,提升报告条理性与合规性。' }
]
}
]
},
food: {
title: '青海省食品安全抽检监测与第三方检测项目',
workflows: [
{
id: 'workflow1',
name: '抽检计划制定',
image: 'public/青海省食品安全抽检监测与第三方检测项目/流程一:抽检计划制定.jpg',
description: '抽检计划的制定决定了抽检工作的方向与覆盖范围。该环节需结合年度监管要求和食品风险评估结果,科学确定抽检品类、检测项目与样品分布。通过将任务细化到不同区域与季度批次,保证样品具有代表性,并能在规定时限内完成检测与结果报送,从而提升抽检工作的科学性和时效性。',
tasks: [
{ title: '抽检范围设定', content: '根据食品安全风险等级划分乳制品、肉制品、饮料等六大类作为重点监测对象,并确定总样品量达到年度目标。' },
{ title: '检测项目选择', content: '结合监管要求,明确重金属、农残、兽残、食品添加剂和微生物作为常规检测指标,覆盖主要风险点。' },
{ title: '区域任务分解', content: '将抽检任务分配至各市县,形成区域执行清单,保证城乡市场均衡覆盖,避免抽检盲区。' },
{ title: '时间节点安排', content: '制定季度抽检进度表,分阶段执行采样与检测,确保结果能按时报送至监管部门。' }
]
},
{
id: 'workflow2',
name: '样品采集管理',
image: 'public/青海省食品安全抽检监测与第三方检测项目/流程二:样品采集管理.jpg',
description: '样品采集是确保检测结果真实可靠的关键。所有采样过程必须遵循"双人采样、双人签字"制度,覆盖生产、流通和餐饮等环节。采样人员需对样品进行编号、签封并拍照留存,对易腐食品执行冷链管理,确保样品全程可追溯,避免污染或篡改。',
tasks: [
{ title: '随机采样执行', content: '采用随机抽样方法,确保样品具有代表性,避免选择性偏差影响检测结论。' },
{ title: '数量与规格控制', content: '乳制品采样≥500g饮料采样≥1L满足国家标准最低检测需求并完成记录。' },
{ title: '封样与留痕', content: '对样品贴编号条码并签封,采样现场留存照片,形成完整的追溯凭证。' },
{ title: '温控管理措施', content: '使用冷链运输箱将乳制品和熟食保持在28℃避免运输途中因温度波动造成变质。' }
]
},
{
id: 'workflow3',
name: '样品运输与交接',
image: 'public/青海省食品安全抽检监测与第三方检测项目/流程三:样品运输与交接.jpg',
description: '采集完成的样品需在24小时内送至实验室运输方式根据样品属性选择冷链或常温。交接环节必须逐项核对样品编号、数量和状态并签署交接单。通过二维码或条码系统与实验室信息平台同步确保样品全程追溯防止样品丢失或混淆保障检测科学性。',
tasks: [
{ title: '运输条件把控', content: '乳制品、熟食类采用冷链方式,干粮、调味品采用常温密封方式,符合样品特性要求。' },
{ title: '时间要求落实', content: '从采样到实验室的时间严格控制在24小时内确保检测有效性。' },
{ title: '交接过程记录', content: '交接时逐一核对样品编号、状态和数量,填写交接单并双人签字确认。' },
{ title: '编码与系统管理', content: '采用二维码或条码与LIMS系统对接避免人工登记错误提升管理效率。' }
]
},
{
id: 'workflow4',
name: '样品前处理',
image: 'public/青海省食品安全抽检监测与第三方检测项目/流程四:样品前处理.jpg',
description: '样品进入实验室后需进行登记、分样与前处理确保后续检测科学有效。不同检测项目需采用相应方法如重金属采用微波消解农药残留采用QuEChERS萃取净化微生物采用无菌培养。科学的前处理不仅能减少基质干扰还能提高检测灵敏度与准确性是实验质量的基础保障。',
tasks: [
{ title: '样品登记管理', content: '利用LIMS录入样品信息并生成检测任务单确保实验过程可追溯。' },
{ title: '重金属消解操作', content: '使用微波消解系统将样品转化为液体形式为ICP-MS分析提供高灵敏度前提。' },
{ title: '农残净化处理', content: '采用QuEChERS方法进行分散固相萃取显著降低杂质干扰提升农残检测准确性。' },
{ title: '微生物处理执行', content: '在无菌环境中完成增菌与选择性培养基操作,确保微生物检测结果可靠。' }
]
},
{
id: 'workflow5',
name: '项目检测与数据采集',
image: 'public/青海省食品安全抽检监测与第三方检测项目/流程五:项目检测与数据采集.jpg',
description: '实验检测环节需根据不同样品和项目选择标准化方法使用ICP-MS、GC-MS/MS、LC-MS/MS和HPLC等技术确保结果科学可靠。检测数据由仪器实时采集并保存至系统保障数据完整与可追溯为质控和复核提供可靠依据。',
tasks: [
{ title: '重金属检测', content: '操作ICP-MS检测铅、镉、汞等重金属检出限≤0.01mg/kg满足国家标准灵敏度要求。' },
{ title: '农药残留检测', content: '使用GC-MS/MS或LC-MS/MS进行多残留检测覆盖200余种农药保证检测结果全面。' },
{ title: '添加剂检测', content: '通过HPLC测定甜味剂、防腐剂等常见添加剂依据GB 2760标准进行判定。' },
{ title: '微生物检测', content: '采用培养基法检测沙门氏菌、大肠菌群等致病菌严格遵照GB 4789系列方法执行。' }
]
}
]
}
};
// 打开项目弹窗
function openProjectModal(projectId) {
const project = projectsData[projectId];
if (!project) return;
// 设置标题
document.getElementById('modalTitle').textContent = project.title;
// 生成流程导航
const navContainer = document.getElementById('workflowNav');
navContainer.innerHTML = '';
project.workflows.forEach((workflow, index) => {
const button = document.createElement('button');
button.className = 'workflow-tab' + (index === 0 ? ' active' : '');
button.textContent = workflow.name;
button.onclick = () => showWorkflow(projectId, index);
navContainer.appendChild(button);
});
// 生成流程内容
const detailsContainer = document.getElementById('workflowDetails');
detailsContainer.innerHTML = '';
project.workflows.forEach((workflow, index) => {
const section = document.createElement('div');
section.className = 'workflow-section' + (index === 0 ? ' active' : '');
section.id = `workflow-${workflow.id}`;
section.innerHTML = `
<h3 class="workflow-section-title">${workflow.name}</h3>
<div class="workflow-description">
<h4>流程描述</h4>
<p>${workflow.description}</p>
</div>
<div class="workflow-tasks">
<h4>工作内容</h4>
${workflow.tasks.map((task, taskIndex) => `
<div class="workflow-task-item">
<h5>${taskIndex + 1}. ${task.title}</h5>
<p>${task.content}</p>
</div>
`).join('')}
</div>
`;
detailsContainer.appendChild(section);
});
// 显示第一个流程
showWorkflow(projectId, 0);
// 显示弹窗
document.getElementById('projectModal').classList.add('active');
document.body.style.overflow = 'hidden';
// 添加横向导航栏鼠标滚轮控制
const workflowNav = document.getElementById('workflowNav');
workflowNav.addEventListener('wheel', (e) => {
e.preventDefault();
// 检测滚轮方向并调整滚动速度
const delta = e.deltaY || e.deltaX;
workflowNav.scrollLeft += delta;
});
}
// 显示指定流程
function showWorkflow(projectId, workflowIndex) {
const project = projectsData[projectId];
const workflow = project.workflows[workflowIndex];
// 更新导航状态
document.querySelectorAll('.workflow-tab').forEach((tab, index) => {
tab.classList.toggle('active', index === workflowIndex);
});
// 更新流程内容显示
document.querySelectorAll('.workflow-section').forEach((section, index) => {
section.classList.toggle('active', index === workflowIndex);
});
// 更新图片
document.getElementById('workflowImage').src = workflow.image;
}
// 关闭项目弹窗
function closeProjectModal() {
document.getElementById('projectModal').classList.remove('active');
document.body.style.overflow = '';
}
// ESC键关闭弹窗
document.addEventListener('keydown', (e) => {
if (e.key === 'Escape') {
closeProjectModal();
}
});
// 滚动显示动画
function handleScrollReveal() {
const reveals = document.querySelectorAll('.scroll-reveal');
reveals.forEach(element => {
const windowHeight = window.innerHeight;
const elementTop = element.getBoundingClientRect().top;
const elementVisible = 150;
if (elementTop < windowHeight - elementVisible) {
element.classList.add('active');
}
});
}
// 监听滚动事件
window.addEventListener('scroll', handleScrollReveal);
// 页面加载时检查一次
handleScrollReveal();
// 平滑滚动
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
anchor.addEventListener('click', function (e) {
e.preventDefault();
const target = document.querySelector(this.getAttribute('href'));
if (target) {
target.scrollIntoView({
behavior: 'smooth',
block: 'start'
});
}
});
});
// 导航栏滚动效果
let lastScrollTop = 0;
window.addEventListener('scroll', function() {
let scrollTop = window.pageYOffset || document.documentElement.scrollTop;
const nav = document.querySelector('nav');
if (scrollTop > 100) {
nav.style.background = 'rgba(255, 255, 255, 0.98)';
nav.style.boxShadow = '0 2px 20px rgba(45, 127, 94, 0.1)';
} else {
nav.style.background = 'rgba(255, 255, 255, 0.95)';
nav.style.boxShadow = '0 2px 10px rgba(45, 127, 94, 0.05)';
}
lastScrollTop = scrollTop;
});
</script>
</body>
</html>