From 88315e144ab2076ee1a75b24f80b165844fb3ff6 Mon Sep 17 00:00:00 2001
From: tj <1378534974@qq.com>
Date: 星期四, 08 五月 2025 10:39:25 +0800
Subject: [PATCH] About Us update

---
 public/images/certificate-4.png       |    0 
 src/pages/About.vue                   |  344 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 public/images/icon-2.png              |    0 
 src/components/HeaderMenu.vue         |    3 
 public/images/about-banner.png        |    0 
 public/images/certificate-2.png       |    0 
 public/images/about.png               |    0 
 public/images/icon-1.png              |    0 
 index.html                            |    2 
 public/images/certificate-1.png       |    0 
 src/router/index.ts                   |    1 
 public/images/icon-3.png              |    0 
 public/images/certificate-3.png       |    0 
 public/images/timeline-background.png |    0 
 14 files changed, 347 insertions(+), 3 deletions(-)

diff --git a/index.html b/index.html
index 144b454..99eed3b 100644
--- a/index.html
+++ b/index.html
@@ -6,7 +6,7 @@
     <meta name="viewport" content="width=device-width, initial-scale=1.0">
      <!-- 引入 Bootstrap CSS -->
     <link rel="stylesheet" href="/node_modules/bootstrap/dist/css/bootstrap.min.css">
-    <title>云游四方官网</title>
+    <title>苏州云游四方信息科技有限公司</title>
   </head>
   <body>
     <div id="app"></div>
diff --git a/public/images/about-banner.png b/public/images/about-banner.png
new file mode 100644
index 0000000..a78836b
--- /dev/null
+++ b/public/images/about-banner.png
Binary files differ
diff --git a/public/images/about.png b/public/images/about.png
new file mode 100644
index 0000000..dec3d9a
--- /dev/null
+++ b/public/images/about.png
Binary files differ
diff --git a/public/images/certificate-1.png b/public/images/certificate-1.png
new file mode 100644
index 0000000..4386eb4
--- /dev/null
+++ b/public/images/certificate-1.png
Binary files differ
diff --git a/public/images/certificate-2.png b/public/images/certificate-2.png
new file mode 100644
index 0000000..3b2ae1e
--- /dev/null
+++ b/public/images/certificate-2.png
Binary files differ
diff --git a/public/images/certificate-3.png b/public/images/certificate-3.png
new file mode 100644
index 0000000..3b8c967
--- /dev/null
+++ b/public/images/certificate-3.png
Binary files differ
diff --git a/public/images/certificate-4.png b/public/images/certificate-4.png
new file mode 100644
index 0000000..623850f
--- /dev/null
+++ b/public/images/certificate-4.png
Binary files differ
diff --git a/public/images/icon-1.png b/public/images/icon-1.png
new file mode 100644
index 0000000..80600e8
--- /dev/null
+++ b/public/images/icon-1.png
Binary files differ
diff --git a/public/images/icon-2.png b/public/images/icon-2.png
new file mode 100644
index 0000000..c4b901d
--- /dev/null
+++ b/public/images/icon-2.png
Binary files differ
diff --git a/public/images/icon-3.png b/public/images/icon-3.png
new file mode 100644
index 0000000..dafb517
--- /dev/null
+++ b/public/images/icon-3.png
Binary files differ
diff --git a/public/images/timeline-background.png b/public/images/timeline-background.png
new file mode 100644
index 0000000..c140020
--- /dev/null
+++ b/public/images/timeline-background.png
Binary files differ
diff --git a/src/components/HeaderMenu.vue b/src/components/HeaderMenu.vue
index 97eff93..6fb3e67 100644
--- a/src/components/HeaderMenu.vue
+++ b/src/components/HeaderMenu.vue
@@ -41,7 +41,8 @@
 const navItems = [
   { label: '首页', path: '/' },
   { label: '产品中心', path: '/product' },
-  { label: '关于我们', path: '/about#third-other' }
+  // { label: '关于我们', path: '/about#third-other' }
+  { label: '关于我们', path: '/about2' }
 ];
 
 // Handle navigation for the menu items
diff --git a/src/pages/About.vue b/src/pages/About.vue
index 41a40c8..9f402d9 100644
--- a/src/pages/About.vue
+++ b/src/pages/About.vue
@@ -1 +1,343 @@
-<template></template>
\ No newline at end of file
+<template>
+    <div class="w-100 about-container">
+
+        <div class="w-100 about-banner d-flex align-items-center text-center text-md-start">
+            <div class="top-wrap">
+                <div class="fs-1 fw-bold">了解我们</div>
+                <div class="fs-3">ABOUT US</div>
+            </div>
+        </div>
+
+        <div class="container py-5">
+            <div class="row align-items-center">
+                <!-- 左侧:图片 -->
+                <div class="col-md-6 mb-4 mb-md-0 text-center">
+                    <img src="/images/about.png" alt="公司图片" class="img-fluid" style="max-height: 400px;" />
+                </div>
+
+                <!-- 右侧:卡片 -->
+                <div class="col-md-6 d-flex justify-content-center">
+                    <div class="card border-0 shadow mt-3 mb-3" style="max-width: 500px; width: 100%;">
+                        <div class="card-body px-4 py-3" style="border-top: 2px solid orange;">
+                            <h4 class="card-title mb-3 text-start">关于云游四方</h4>
+                            <p class="card-text text-muted custom-font"
+                                style="text-align: justify; font-size: 14px !important;">
+                                苏州云游四方信息科技有限公司成立于2014年,坐落在美丽的苏州。公司拥有拥有三十余名专业技术同仁,20多家合作客户,涵盖汽车、医疗、电商、交通等多个领域,并且已经完成100多个项目,包括网站、APP、微信以及软硬件结合的智能硬件项目。我们主要从事软件开发工作,拥有强大的开发实力以及丰富的客户合作经验。公司现拥有成熟的MES、WMS、TMS、模具制造管理等系统。公司主营业务有:计算机信息科技领域内的技术开发、技术咨询、技术转让、技术服务;软件的设计、开发、销售;网络工程、自动化工程、通信工程;自动化控制系统集成等。
+                            </p>
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </div>
+
+        <div class="w-100 py-5" style="background-color: #f8f9fa;">
+            <div class="row text-center">
+
+                <div class="col-md-4 mb-4">
+                    <img src="/images/icon-1.png" alt="愿景" class="mb-3" style="height: 80px;">
+                    <h5 class="fw-bold">愿景</h5>
+                    <p class="text-muted mb-0">助力于推动</p>
+                    <p class="text-muted">中国工业制造智慧升级</p>
+                </div>
+
+
+                <div class="col-md-4 mb-4">
+                    <img src="/images/icon-2.png" alt="价值观" class="mb-3" style="height: 80px;">
+                    <h5 class="fw-bold">价值观</h5>
+                    <p class="text-muted mb-0">正直人品 践行承诺</p>
+                    <p class="text-muted">客户至上 质量第一</p>
+                </div>
+
+
+                <div class="col-md-4 mb-4">
+                    <img src="/images/icon-3.png" alt="使命" class="mb-3" style="height: 80px;">
+                    <h5 class="fw-bold">使命</h5>
+                    <p class="text-muted mb-0">提供一流的产品为客户服务</p>
+                    <p class="text-muted">创新卓越的技术引领行业</p>
+                </div>
+            </div>
+        </div>
+
+        <section class="text-center py-5">
+            <div class="container">
+                <h2 class="mb-5 fw-bold" style="color: #001441;">云游四方发展历程</h2>
+                <div class="background-container ">
+                    <div class="row justify-content-center align-items-center">
+                        <div v-for="(year, index) in years" :key="index" class="col year-item"
+                            :class="{ 'selected': selectedYear === year }" @click="selectYear(year)"
+                            @mouseenter="pauseRotation(year)" @mouseleave="resumeRotation">
+                            {{ year }}
+                        </div>
+                    </div>
+
+                    <div class="d-flex justify-content-left text-start" >
+                        <el-timeline class="p-5">
+                            <el-timeline-item 
+                                class="timeline-item"
+                                v-for="(activity, index) in curYearActivities" :key="index"
+                                type="primary"  :timestamp="activity.timestamp"
+                                placement="top">
+                                {{ activity.content }}
+                            </el-timeline-item>
+                        </el-timeline>
+                    </div>
+                </div>
+
+            </div>
+        </section>
+        <section class="cert-section text-center">
+            <div class="container">
+                <h2 class="mb-5 fw-bold" style="color: #001441;">企业资质及证书</h2>
+
+                <div class="cert-card">
+                    <div class="row justify-content-center g-4">
+                        <div class="col-6 col-md-3" v-for="(cert, index) in certificates" :key="index">
+                            <img :src="cert.src" :alt="cert.alt" class="img-fluid cert-image" style="height: 160px;" />
+                        </div>
+                    </div>
+                </div>
+            </div>
+        </section>
+    </div>
+</template>
+
+<script setup lang="ts">
+import { ref, onMounted,onBeforeUnmount } from 'vue';
+
+// 定义证书类型
+interface Certificate {
+    src: string;
+    alt: string;
+}
+
+const certificates: Certificate[] = [
+    { src: '/images/certificate-1.png', alt: '江苏省民营科技企业' },
+    { src: '/images/certificate-2.png', alt: '高新技术企业证书' },
+    { src: '/images/certificate-3.png', alt: '质量管理体系认证证书' },
+    { src: '/images/certificate-4.png', alt: '信息安全管理体系认证证书' }
+];
+
+// 定义年份和选中年份的类型
+// const years: number[] = [2021, 2022, 2023, 2024, 2025]; // 给定的年份列表
+const selectedYear = ref<number>(2023); // 默认选中的年份
+const currentYearIndex = ref<number>(0); // 当前展示的年份索引
+
+const curYearActivities = ref<ActivityType[]>();
+// 选择年份时更新选中的年份
+const selectYear = (year: number): void => {
+    selectedYear.value = year;
+    // 获取当前年份的activity
+    getCurYearActivities(year);
+};
+
+let rotationTimer: ReturnType<typeof setInterval> | null = null;
+// 启动年份轮播
+const startYearRotation = (): void => {
+    rotationTimer = setInterval(() => {
+        currentYearIndex.value = (currentYearIndex.value + 1) % years.length;
+        selectedYear.value = years[currentYearIndex.value];
+        getCurYearActivities(selectedYear.value)
+    }, 3000); // 每秒轮播一次年份
+};
+
+// 在组件挂载后启动年份轮播
+onMounted(() => {
+    startYearRotation();
+});
+
+// 在组件卸载时清除定时器
+onBeforeUnmount(() => {
+  if (rotationTimer) {
+    clearInterval(rotationTimer); // 清除定时器
+    rotationTimer = null;
+  }
+});
+
+
+import { MoreFilled } from '@element-plus/icons-vue'
+import type { TimelineItemProps } from 'element-plus'
+
+interface ActivityType extends Partial<TimelineItemProps> {
+    content: string,
+    date: string,
+}
+
+const activities: ActivityType[] = [
+    {
+        content: 'cloudroam云游四方完成ISO27001认证',
+        timestamp: '9 月',
+        size: 'large',
+        type: 'primary',
+        icon: MoreFilled,
+        date: '2022-09-01',
+    },
+    {
+        content: 'cloudroam云游四方完成ISO9001认证',
+        timestamp: '8 月',
+        color: '#0bbd87',
+        date: '2022-08-01',
+    },
+    {
+        content: 'cloudroam云游四方累计申报软件著作权40项。',
+        timestamp: '6 月',
+        size: 'large',
+        date: '2022-06-01',
+    },
+    {
+        content: '公司拓展数字孪生和数据中台方向新业务,为企业数字化转型提供服务',
+        timestamp: '11 月',
+        type: 'primary',
+        hollow: false,
+        date: '2021-11-01',
+    },
+    {
+        content: 'cloudroam云游四方成为省民营科技企业',
+        timestamp: '6 月',
+        date: '2021-06-01',
+    },
+
+    {
+        content: 'cloudroam云游四方成为高新技术企业',
+        timestamp: '12 月',
+        date: '2020-12-01',
+    },
+
+    {
+        content: 'cloudroam云游四方申报软件著作权21项',
+        timestamp: '6 月',
+        date: '2020-06-01',
+    },
+    {
+        content: '公司全面拓展企业信息化系统开发,为企业信息化升级提供方案。开发系统包括企业培训认证系统、员工绩效系统、物流管理系统、仓库管理系统、会议管理系统、报修系统、实验室管理系统、电子SOP等。',
+        timestamp: '8 月',
+        date: '2016-08-01',
+    },
+    {
+        content: 'cloudroam云游四方搬至苏州园区,更名苏州云游四方',
+        timestamp: '5 月',
+        date: '2016-05-01',
+    },
+    {
+        content: 'cloudroam云游四方在苏州昆山正式成立',
+        timestamp: '6 月',
+        date: '2014-06-01',
+    },
+]
+
+const years: number[] = Array.from(
+    new Set(activities.map(item => new Date(item.date).getFullYear()))
+).sort((a, b) => b - a);
+
+const getCurYearActivities = (year: number) => {
+    curYearActivities.value = activities
+        .filter(activity => activity.date.startsWith(`${year}-`))
+        .sort((a, b) => new Date(b.date).getMonth() - new Date(a.date).getMonth());
+}
+const pauseRotation = (year: number): void => {
+    if (rotationTimer) {
+        clearInterval(rotationTimer); 
+        rotationTimer = null;
+    }
+    selectedYear.value = year;
+   
+    currentYearIndex.value = years.indexOf(year);
+    getCurYearActivities(year);
+};
+
+const resumeRotation = (): void => {
+    startYearRotation(); 
+};
+</script>
+
+
+<style lang="css" scoped>
+body {
+    font-family: "PingFang SC", "Century Gothic", "Microsoft YaHei", Avenir, Helvetica, Arial, sans-serif;
+}
+
+.about-container {
+    overflow-x: hidden;
+}
+
+.top-wrap {
+    width: 80%;
+    max-width: 1440px;
+    margin: 0 auto;
+    color: white;
+}
+
+.custom-font {
+    line-height: 25px;
+}
+</style>
+<style scoped>
+.cert-section {
+    padding-top: 4rem;
+    padding-bottom: 4rem;
+    background-color: #f9f9f9;
+}
+
+.cert-card {
+    background-color: #fff;
+    padding: 2rem;
+    border-radius: 1rem;
+    box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);
+}
+
+.cert-image {
+    max-height: 220px;
+    object-fit: contain;
+    /* transition: transform 0.3s ease; */
+}
+
+.cert-image:hover {
+    transform: scale(1.05);
+}
+</style>
+
+<style scoped>
+/* 背景图片设置 */
+.background-container {
+    background-image: url('/public/images/timeline-background.png');
+    /* 这里替换为你的背景图片路径 */
+    background-size: cover;
+    background-position: center;
+    padding: 10px 0;
+    /* 调整背景区域的内边距 */
+    border-radius: 8px;
+    /* 可选,给背景容器添加圆角 */
+    min-height: 400px;
+}
+
+.year-item {
+    font-size: 20px;
+    transition: all 0.3s ease;
+    cursor: pointer;
+    padding: 10px 15px;
+    text-align: center;
+}
+
+.year-item.selected {
+    font-size: 30px;
+    transform: scale(1.5);
+    color: #007bff;
+}
+</style>
+<style scoped>
+.about-banner {
+    background-image: url('/public/images/about-banner.png');
+    background-repeat: no-repeat;
+    background-size: cover;
+    background-position: center center;
+    height: 450px;
+}
+
+@media (max-width: 768px) {
+    .about-banner {
+        height: auto;
+        /* 小屏时高度自适应内容 */
+        padding: 60px 0;
+        /* 添加垂直内边距使内容不过于贴边 */
+    }
+}
+</style>
diff --git a/src/router/index.ts b/src/router/index.ts
index bdf5a8b..88f9a97 100644
--- a/src/router/index.ts
+++ b/src/router/index.ts
@@ -10,6 +10,7 @@
   { path: '/product', component: Product },
   { path: '/contact', component: Contact },
   { path: '/about',component: Home},
+  { path: '/about2',component: About},
   {
     path: '/pdf-preview',
     name: 'PdfPreview',

--
Gitblit v1.9.3