Pārlūkot izejas kodu

中英文切换大标题栏

yes-yes-yes-k 1 mēnesi atpakaļ
vecāks
revīzija
675f6d68e5

+ 3 - 3
src/components/layout/AppAsideForTab2.vue

@@ -17,7 +17,7 @@
               <el-icon v-if="item.icon">
                 <component :is="item.icon" />
               </el-icon>
-              <span>{{ item.label }}</span>
+              <span>{{ $t(item.label) }}</span>
             </template>
 
             <!-- 子菜单 -->
@@ -29,7 +29,7 @@
               <el-icon v-if="child.icon">
                 <component :is="child.icon" />
               </el-icon>
-              <span>{{ child.label }}</span>
+              <span>{{$t( child.label) }}</span>
             </el-menu-item>
           </el-sub-menu>
 
@@ -38,7 +38,7 @@
             <el-icon v-if="item.icon">
               <component :is="item.icon" />
             </el-icon>
-            <span>{{ item.label }}</span>
+            <span>{{$t( item.label) }}</span>
           </el-menu-item>
         </template>
       </template>

+ 123 - 13
src/components/layout/AppLayout.vue

@@ -18,15 +18,29 @@
         <div class="left-section">
           <img src="@/assets/logo.png" alt="Logo" class="logo" />
           <span class="project-name" :class="{ 'light-text': isSpecialBg }">
-            土壤酸化智能预测专家系统
+            <!-- 土壤酸化智能预测专家系统 -->
+             {{ t('Header.title') }}
           </span>
         </div>
 
         <!-- 右侧:用户信息 -->
         <div class="right-section" v-if="!isSelectCity">
           <div class="user-info-row">
+            <div class="lang-buttons" v-if="true"> <!-- 设为false隐藏,选择一种方式即可 -->
+            <!-- 语言切换按钮 -->
+            <button 
+              class="lang-toggle-btn"
+              :class="{ 'light-text': isSpecialBg }"
+              @click="toggleLanguage"
+              :title="currentLang === 'zh' ? 'Switch to English' : '切换到中文'"
+            >
+              <i class="el-icon-globe"></i>
+              <span class="lang-label">{{ currentLang === 'zh' ? '中文' : 'English' }}</span>
+            </button>
+         </div>
+
             <span class="welcome-text" :class="{ 'light-text': isSpecialBg }">
-              欢迎 {{ userInfo.name }} 登录成功
+              {{ t('Header.welcome') }} {{ userInfo.name }} 
             </span>
             <el-dropdown>
               <span class="el-dropdown-link">
@@ -39,10 +53,10 @@
               <template #dropdown>
                 <el-dropdown-menu>
                   <el-dropdown-item disabled
-                    >用户名:{{ userInfo.name }}</el-dropdown-item
+                    > {{ t('Header.username') }} :{{ userInfo.name }}</el-dropdown-item
                   >
                   <el-dropdown-item divided @click="handleLogout"
-                    >退出登录</el-dropdown-item
+                    > {{ t('Header.logout') }} </el-dropdown-item
                   >
                 </el-dropdown-menu>
               </template>
@@ -110,6 +124,34 @@ import { useRouter, useRoute } from "vue-router";
 import { useTokenStore } from "@/stores/mytoken";
 import { ElMessageBox, ElMessage } from "element-plus"; // 确保导入ElMessage
 import { logout } from "@/API/users";
+import { useI18n } from 'vue-i18n'
+
+
+const { t,locale } =useI18n()
+const currentLang = ref(locale.value || 'zh')
+
+// 切换语言
+const changeLanguage = () => {
+  locale.value = currentLang.value
+  localStorage.setItem('language', currentLang.value)
+  
+  // 触发一个自定义事件,让其他组件知道语言改变了
+  window.dispatchEvent(new CustomEvent('languageChanged', { 
+    detail: { lang: currentLang.value } 
+  }))
+}
+
+// 按钮点击切换
+const toggleLanguage = () => {
+  currentLang.value = currentLang.value === 'zh' ?'en':'zh'
+  changeLanguage()
+}
+
+// 监听语言变化
+watch(locale, (newVal) => {
+  currentLang.value = newVal
+})
+
 
 const router = useRouter();
 const route = useRoute();
@@ -153,7 +195,7 @@ const tabs = computed(() => {
 
     name: "dataManagement",
 
-    label: "数据管理",
+    label: t('Menu.dataManagement'),
 
     icon: "el-icon-folder",
 
@@ -179,7 +221,7 @@ const tabs = computed(() => {
 
     name: "infoManagement",
 
-    label: "信息管理",
+    label: t('Menu.infoManagement'),
 
     icon: "el-icon-document",
 
@@ -191,7 +233,7 @@ const tabs = computed(() => {
 
     name: "modelManagement",
 
-    label: "模型管理及配置",
+    label: t('Menu.modelManagement'),
 
     icon: "el-icon-cpu",
 
@@ -203,7 +245,7 @@ const tabs = computed(() => {
 
     name: "userManagement",
 
-    label: "用户管理",
+    label: t('Menu.userManagement'),
 
     icon: "el-icon-user",
 
@@ -221,7 +263,7 @@ const tabs = computed(() => {
 
     name: "introduction",
 
-    label: "软件简介",
+    label: t('Menu.swIntroduce'),
 
     icon: "el-icon-info-filled",
 
@@ -232,7 +274,7 @@ const tabs = computed(() => {
    {
    name: "acidmodelmap",
 
-    label: "土壤酸化地块级计算",
+    label: t('Menu.mapcalulate'),
 
     icon: "el-icon-data-analysis",
 
@@ -244,7 +286,7 @@ const tabs = computed(() => {
 
     name: "Calculation",
 
-    label: "土壤反酸模型",
+    label: t('Menu.reversionmodel'),
 
     icon: "el-icon-data-analysis",
 
@@ -256,7 +298,7 @@ const tabs = computed(() => {
 
     name: "AcidNeutralizationModel",
 
-    label: "土壤降酸模型",
+    label: t('Menu.reducemodel'),
 
     icon: "el-icon-data-analysis",
 
@@ -268,7 +310,7 @@ const tabs = computed(() => {
 
     name: "dataStatistics",
 
-    label: "数据统计",
+    label: t('Menu.dataStatistics'),
 
     icon: "el-icon-pie-chart",
 
@@ -746,4 +788,72 @@ const mainStyle = computed(() => ({
   justify-content: flex-end;
   flex-shrink: 0; /* 防止缩小 */
 }
+
+/* 语言切换按钮样式 */
+.lang-toggle-btn {
+  display: flex;
+  align-items: center;
+  gap: 6px;
+  padding: 8px 16px;
+  border: 2px solid rgba(255, 255, 255, 0.6);
+  border-radius: 20px;
+  background: rgba(255, 255, 255, 0.15);
+  backdrop-filter: blur(8px);
+  color: #ffffff;
+  font-size: 14px;
+  font-weight: 500;
+  cursor: pointer;
+  transition: all 0.3s ease;
+  outline: none;
+  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
+}
+
+.lang-toggle-btn:hover {
+  background: rgba(255, 255, 255, 0.25);
+  border-color: rgba(255, 255, 255, 0.9);
+  transform: translateY(-2px);
+  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
+}
+
+.lang-toggle-btn:active {
+  transform: translateY(0);
+  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
+}
+
+.lang-toggle-btn .el-icon-globe {
+  font-size: 18px;
+  color: #ffffff;
+}
+
+.lang-toggle-btn .lang-label {
+  font-size: 13px;
+  font-weight: 600;
+  letter-spacing: 0.5px;
+}
+
+/* 浅色文字模式(特殊背景页面) */
+.lang-toggle-btn.light-text {
+  border-color: rgba(255, 255, 255, 0.6);
+  color: #ffffff;
+}
+
+.lang-toggle-btn.light-text .el-icon-globe {
+  color: #ffffff;
+}
+
+/* 响应式设计 */
+@media (max-width: 768px) {
+  .lang-toggle-btn {
+    padding: 6px 12px;
+    font-size: 12px;
+  }
+  
+  .lang-toggle-btn .el-icon-globe {
+    font-size: 16px;
+  }
+  
+  .lang-toggle-btn .lang-label {
+    font-size: 11px;
+  }
+}
 </style>

+ 16 - 16
src/components/layout/menuItems.ts

@@ -19,92 +19,92 @@ export const tabMenuMap: Record<string, MenuItem[]> = {
   introduction: [
     {
       index: "/SoilPro",
-      label: "软件简介",
+      label: "Menu.softwareIntroduction",
       icon: InfoFilled,
     },
     {
       index: "/Overview",
-      label: "项目简介",
+      label: "Menu.projectOverview",
       icon: Collection,
     },
     {
       index: "/ResearchFindings",
-      label: "研究成果",
+      label: "Menu.researchFindings",
       icon: Histogram,
     },
     {
       index: "/Unit",
-      label: "团队信息",
+      label: "Menu.teamInfo",
       icon: HelpFilled,
     },
   ],
   acidmodelmap: [
     {
       index: "acidmodelmap",
-      label: "土壤酸化地块级预测",
+      label: "Menu.soilAcidPlotPrediction",
       icon: Location,
       children: [
         {
           index: '/shaoguan_acidmodelmap',
-          label: '韶关土壤酸化地图',
+          label: 'Menu.shaoguanAcidMap',
           icon: Location
         },
         {
           index: '/nanxiong_acidmodelmap',
-          label: '南雄土壤酸化地图',
+          label: 'Menu.nanxiongAcidMap',
           icon: Location
         }
       ]
     },
     {
       index: "/pHPrediction",
-      label: "土壤pH预测",
+      label: "Menu.soilPH Prediction",
       icon: Location
     }
   ],
   Calculation: [
     {
       index: "/Calculation",
-      label: "土壤反酸预测",
+      label: "Menu.soilAcidReductionPrediction",
       icon: List,
     },
     {
       index: "/SoilAcidReductionIterativeEvolution",
-      label: "反酸模型显示",
+      label: "Menu.acidReductionModelDisplay",
       icon: List,
     },
   ],
   AcidNeutralizationModel: [
     {
       index: "/AcidNeutralizationModel",
-      label: "土壤降酸预测",
+      label: "Menu.soilAcidNeutralizationPrediction",
       icon: List,
     },
     {
       index: "/SoilAcidificationIterativeEvolution",
-      label: "降酸模型显示",
+      label: "Menu.acidNeutralizationModelDisplay",
       icon: List,
     },
   ],
   dataStatistics: [
     {
       index: "/DetectionStatistics",
-      label: "检测信息统计",
+      label: "Menu.detectionStatistics",
       icon: List,
     },
     {
       index: "/FarmlandPollutionStatistics",
-      label: "土壤镉含量统计",
+      label: "Menu.soilCadmiumStatistics",
       icon: List,
     },
     {
       index: "/LandClutivatesStatistics",
-      label: "作物风险评估系统",
+      label: "Menu.cropRiskAssessment",
       icon: List,
     },
     {
       index: "/SoilacidificationStatistics",
-      label: "土壤酸化统计",
+      label: "Menu.soilAcidificationStatistics",
       icon: List,
     },
   ],

+ 35 - 168
src/locales/en.json

@@ -1,7 +1,15 @@
-{"role": {
+{
+  "role": {
     "admin": "管理员",
     "user": "用户"
   },
+  "Header": {
+    "title": "Intelligent Expert System for Soil Acidification Prediction",
+    "welcome": "welcome",
+    "loginsucc": "Login successful",
+    "username": "User Name",
+    "logout": "Log Out"
+  },
   "login": {
     "userTitle": "User Login",
     "loginButton": "Login",
@@ -24,173 +32,32 @@
     "confirmPasswordRequired": "Please confirm your password",
     "passwordMismatch": "The two passwords you entered do not match"
   },
-  "irrigationwater": {
-    "Title": "irrigationwater",
-    "irrigationwaterMethodsTitle": "Sampling method and device",
-    "irrigationwaterMethods": {
-      "title1": "1. Sampling container and process",
-      "content1": "The sampling containers are all 500mL white polyethylene bottles, the sampling volume is 500mL, the sampling process is carried out under different weather conditions, the main weather conditions include cloudy, cloudy and light rain, the surrounding environment of the sampling point is mainly rivers, and only a few samples are collected in the canal or waterfall area.",
-      "photo1": "Figure 1-1 Sampling container",
-      "photo2": "Fig.1-2 Sampling site",
-      "photo3": "Fig.1-3 Irrigation water sampling equipment",
-      "title2": "2. Sample preservation and on-site conditions",
-      "content2": "In order to ensure the integrity of the samples and the accuracy of the data, the storage methods after sampling include refrigeration, protection from light, ensuring that the label is intact and taking effective shock absorption measures to avoid vibration and damage during transportation.",
-      "photo4": "Figure 2-1 Sampling site",
-      "photo5": "Figure 2-2 Sampling site",
-      "photo6": "Figure 2-3 Sampling site"
-    },
-    "pointTitle": "Irrigation water sampling data",
-    "point": {
-      "pointMapTitle": "Sampling point map",
-      "pointLineTitle": "The data list of sampling points",
-      "pointChartTitle": "The average concentration of heavy metals in various districts and counties of Shaoguan City"
-    },
-    "crosssectionTitle": "Cross-sectional sampling data",
-    "crosssection": {
-      "crosssectionMapTitle": "Section data map",
-      "crosssectionLineTitle": "Section data details",
-      "crosssectionRiverChartTitle": "Histogram of the average concentration of Cd in each river",
-      "crosssectionCityChartTitle": "Histogram of the average concentration of Cd in each district and county"
-    },
-    "InputfluxTitle": "Irrigation water input flux"
-  },
-  "atmosDeposition": {
-    "Title": "Atmospheric dry and wet deposition",
-    "AtmosDepositionSamplingDescTitle": "Sampling instructions",
-    "heavyMetalEnterpriseTitle": "Involved in heavy enterprises",
-    "heavyMetalEnterprise": {
-      "MapTitle": "The map of heavy enterprises",
-      "LineTitle": "The list of data of important enterprises",
-      "ChartTitle": "Average atmospheric particulate matter emissions of enterprises in various districts and counties(t/a)"
-    },
-    "airSampleDataTitle": "Atmospheric sampling data",
-    "airSampleData": {
-      "button1": "Sampling method:",
-      "button2": "Sampling by weight",
-      "button3": "Sampling by volume",
-      "MapTitle": "Sampling point map",
-      "LineTitle": "The data list of sampling points",
-      "ChartTitle": "Histogram of average atmospheric heavy metal pollution in each district and county"
-    },
-    "airInputFluxTitle": "Atmospheric input flux"
-  },
-  "agriInput": {
-    "Title": "Agricultural product input",
-    "farmInputSamplingDescTitle": "Sampling instructions",
-    "prodInputFluxTitle": "Agricultural input flux"
-  },
-  "Title": "Regional soil heavy metal pollution risk assessment",
   "Menu": {
-    "dataManagement": "Data management",
-    "infoManagement": "Information management",
-    "modelManagement": "Model management and configuration",
-    "userManagement": "User management",
-    "shuJuKanBan": "Data dashboard",
-    "introduction": "Software Introduction",
-    "HmOutFlux": "Heavy metal input flux",
-    "hmInFlux": "Heavy metal output flux",
-    "mapView": "Map display",
-    "cadmiumPrediction": "Soil pollutant content prediction",
-    "cropRiskAssessment": "Crop risk assessment",
-    "farmlandQualityAssessment": "Cultivated land quality assessment",
-    "soilAcidificationPrediction": "Soil acidification prediction",
-    "scenarioSimulation": "Scenario simulation",
-    "dataStatistics": "Statistics"
-  },
-  "shuJuKanBan": {
-    "Title": "Data dashboard"
-  },
-  "SoilPro": {
-    "Title": "Software Introduction"
-  },
-  "Overview": {
-    "Title": "Project Introduction"
-  },
-  "ResearchFindings": {
-    "Title": "Research results"
-  },
-  "Unit": {
-    "Title": "Team information"
-  },
-  "grainRemoval": {
-    "Title": "Grain removal",
-    "samplingDesc1": "Sampling instructions",
-    "grainRemovalInputFlux": "Grain removal output flux"
-  },
-  "strawRemoval": {
-    "Title": "Straw removal",
-    "samplingDesc2": "Sampling instructions",
-    "strawRemovalInputFlux": "Straw removal output flux"
-  },
-  "subsurfaceLeakage": {
-    "Title": "Underground leakage",
-    "samplingDesc3": "Sampling instructions",
-    "subsurfaceLeakageInputFlux": "Underground seepage input flux"
-  },
-  "surfaceRunoff": {
-    "Title": "Surface runoff",
-    "samplingDesc4": "Sampling instructions",
-    "surfaceRunoffInputFlux": "Surface runoff input flux"
-  },
-  "mapView": {
-    "Title": "Map display"
-  },
-  "totalInputFlux": {
-    "Title": "Enter the total flux"
-  },
-  "totalOutputFlux": {
-    "Title": "Output total throughput"
-  },
-  "netFlux": {
-    "Title": "Net Flux"
-  },
-  "currentYearConcentration": {
-    "Title": "Concentration of the year"
-  },
-  "TotalCadmiumPrediction": {
-    "Title": "Prediction of total soil cadmium content"
-  },
-  "EffectiveCadmiumPrediction": {
-    "Title": "Prediction of available content of cadmium in soil"
-  },
-  "CropCadmiumPrediction": {
-    "Title": "Prediction of soil cadmium crop content"
-  },
-  "cropRiskAssessment": {
-    "Title": "Risk of cadmium contamination in rice"
-  },
-  "farmlandQualityAssessment": {
-    "Title": "Shaoguan"
-  },
-  "acidModel": {
-    "Title": "Soil acid reflux",
-    "CalculationTitle": "Soil acid reflux prediction",
-    "SoilAcidReductionIterativeEvolutionTitle": "Acid reflux model iteration visualization"
-  },
-  "neutralizationModel": {
-    "Title": "Soil acid reduction",
-    "AcidNeutralizationModelTitle": "Soil acid reduction prediction",
-    "SoilAcidificationIterativeEvolutionTitle": "Soil acidification evolves iteratively"
-  },
-  "TraditionalFarmingRisk": {
-    "Title": "Risk trends of traditional farming habits"
-  },
-  "HeavyMetalCadmiumControl": {
-    "Title": "Heavy metal cadmium pollution control"
-  },
-  "SoilAcidificationControl": {
-    "Title": "Soil acidification control"
-  },
-  "DetectionStatistics": {
-    "Title": "Detection information statistics"
-  },
-  "FarmlandPollutionStatistics": {
-    "Title": "Soil cadmium content statistics"
-  },
-  "LandClutivatesStatistics": {
-    "Title": "Cultivated land quality assessment"
-  },
-  "SoilacidificationStatistics": {
-    "Title": "Soil acidification data statistics"
+    "swIntroduce": "Software Introduction",
+    "mapcalulate": "Soil Acidification Plot-Level Calculation",
+    "reversionmodel": "Soil Re-acidification Model",
+    "reducemodel": "Soil Acid Reduction Model",
+    "dataStatistics": "Data Statistics",
+    
+    "softwareIntroduction": "Software Introduction",
+    "projectOverview": "Project Overview",
+    "researchFindings": "Research Findings",
+    "teamInfo": "Team Information",
+    
+    "soilAcidPlotPrediction": "Soil Acidification Plot-Level Prediction",
+    "shaoguanAcidMap": "Shaoguan Soil Acidification Map",
+    "nanxiongAcidMap": "Nanxiong Soil Acidification Map",
+    "soilPH Prediction": "Soil pH Prediction",
+    
+    "soilAcidReductionPrediction": "Soil Acid Reflux Prediction",
+    "acidReductionModelDisplay": "Acid Reflux Model Display",
+    
+    "soilAcidNeutralizationPrediction": "Soil Acid Neutralization Prediction",
+    "acidNeutralizationModelDisplay": "Acid Neutralization Model Display",
+    
+    "detectionStatistics": "Detection Statistics",
+    "soilCadmiumStatistics": "Soil Cadmium Content Statistics",
+    "cropRiskAssessment": "Crop Risk Assessment System",
+    "soilAcidificationStatistics": "Soil Acidification Statistics"
   }
 }

+ 50 - 0
src/locales/index.js

@@ -0,0 +1,50 @@
+// 导入语言包
+import zhCN from './zh-CN.json';
+import enUS from './en-US.json';
+
+// 定义语言映射
+const langMap = {
+  'zh-CN': zhCN,
+  'en-US': enUS
+};
+
+// 默认语言(优先从本地存储读取,无则用浏览器默认)
+let currentLang = localStorage.getItem('app-lang') || (navigator.language || 'zh-CN').toLowerCase();
+// 兼容浏览器语言缩写(如en -> en-US)
+currentLang = currentLang === 'zh' ? 'zh-CN' : currentLang === 'en' ? 'en-US' : currentLang;
+
+// 当前语言包数据
+let currentLangData = langMap[currentLang] || zhCN;
+
+// 语言切换回调函数(用于更新页面)
+let langChangeCallback = null;
+
+// 语言管理对象
+const i18n = {
+  // 获取当前语言
+  getLang() {
+    return currentLang;
+  },
+
+  // 切换语言
+  setLang(lang) {
+    if (!langMap[lang]) return; // 语言包不存在则不处理
+    currentLang = lang;
+    currentLangData = langMap[lang];
+    localStorage.setItem('app-lang', lang); // 持久化
+    // 触发回调更新页面
+    if (langChangeCallback) langChangeCallback();
+  },
+
+  // 获取翻译文本(支持嵌套路径,如'common.title')
+  t(key) {
+    return key.split('.').reduce((obj, k) => obj?.[k] || key, currentLangData);
+  },
+
+  // 注册语言切换回调
+  onLangChange(callback) {
+    langChangeCallback = callback;
+  }
+};
+
+export default i18n;

+ 35 - 167
src/locales/zh.json

@@ -1,4 +1,11 @@
 {
+  "Header": {
+    "title": "土壤酸化智能预测专家系统",
+    "welcome": "欢迎",
+    "loginsucc": "登录成功",
+    "username": "用户名",
+    "logout": "退出登录"
+  },
   "login": {
     "userTitle": "用户登录",
     "loginButton": "登录",
@@ -21,176 +28,37 @@
     "confirmPasswordRequired": "请确认密码",
     "passwordMismatch": "两次输入的密码不一致"
   },
-  "irrigationwater": {
-    "Title": "灌溉水",
-    "irrigationwaterMethodsTitle": "灌溉水采样方法和装置",
-    "irrigationwaterMethods": {
-      "title1": "1.采样容器与过程",
-      "content1": "采样容器均为500mL的白色聚乙烯瓶,采样体积均为500mL,采样过程在不同天气条件下进行,主要天气状况包括多云、阴天和小雨,采样点周边环境主要为河流,只有少数样品采集于水渠或瀑布区域。",
-      "photo1": "图1-1 采样容器",
-      "photo2": "图1-2 采样现场",
-      "photo3": "图1-3 灌溉水采样设备",
-      "title2": "2.样品保存与现场情况",
-      "content2": "绝大多数样品状态为无色、无沉淀、无味、无悬浮物,只有少量样品稍显浑浊并含有沉淀物,为了保证样品的完整性和数据的准确性,采样后的保存方式包括了冷藏、避光、确保标签完好以及采取有效的减震措施,以避免运输过程中的振动和损坏。",
-      "photo4": "图2-1 采样现场",
-      "photo5": "图2-2 采样现场",
-      "photo6": "图2-3 采样现场"
-    },
-    "pointTitle": "灌溉水采样数据",
-    "point": {
-      "pointMapTitle": "采样点地图展示",
-      "pointLineTitle": "采样点数据列表展示",
-      "pointChartTitle": "韶关市各区县重金属平均浓度"
-    },
-    "crosssectionTitle": "断面采样数据",
-    "crosssection": {
-      "crosssectionMapTitle": "断面数据地图展示",
-      "crosssectionLineTitle": "断面数据详情",
-      "crosssectionRiverChartTitle": "各河流Cd的平均浓度柱状图",
-      "crosssectionCityChartTitle": "各区县的Cd平均浓度柱状图"
-    },
-    "InputfluxTitle": "灌溉水输入通量"
-  },
-  "atmosDeposition": {
-    "Title": "大气干湿沉降",
-    "AtmosDepositionSamplingDescTitle": "​大气干湿沉降调查说明​",
-    "heavyMetalEnterpriseTitle": "涉重企业",
-    "heavyMetalEnterprise": {
-      "MapTitle": "涉重企业地图展示",
-      "LineTitle": "涉重企业数据列表展示",
-      "ChartTitle": "各区县企业平均大气颗粒物排放(t/a)"
-    },
-    "airSampleDataTitle": "大气采样数据",
-    "airSampleData": {
-      "button1": "采样方式:",
-      "button2": "按重量采样",
-      "button3": "按体积采样",
-      "MapTitle": "采样点地图展示",
-      "LineTitle": "采样点数据列表展示",
-      "ChartTitle": "各区县平均大气重金属污染柱状图"
-    },
-    "airInputFluxTitle": "大气输入通量"
-  },
-  "agriInput": {
-    "Title": "农业投入品",
-    "farmInputSamplingDescTitle": "农业投入品采样说明",
-    "prodInputFluxTitle": "农业投入品输入通量"
-  },
-  "Title": "区域土壤重金属污染风险评估系统",
   "Menu": {
-    "dataManagement": "数据管理",
+    "dataManagement":"数据管理",
     "infoManagement": "信息管理",
     "modelManagement": "模型管理及配置",
     "userManagement": "用户管理",
-    "shuJuKanBan": "数据看板",
-    "introduction": "软件简介",
-    "HmOutFlux": "重金属输入通量",
-    "hmInFlux": "重金属输出通量",
-    "mapView": "地图展示",
-    "cadmiumPrediction": "土壤污染物含量预测",
-    "cropRiskAssessment": "作物风险评估",
-    "farmlandQualityAssessment": "耕地质量评估",
-    "soilAcidificationPrediction": "土壤酸化预测",
-    "scenarioSimulation": "情景模拟",
-    "dataStatistics": "数据统计"
-  },
-  "shuJuKanBan": {
-    "Title": "数据看板"
-  },
-  "SoilPro": {
-    "Title": "软件简介"
-  },
-  "Overview": {
-    "Title": "项目简介"
-  },
-  "ResearchFindings": {
-    "Title": "研究成果"
-  },
-  "Unit": {
-    "Title": "团队信息"
-  },
-  "grainRemoval": {
-    "Title": "籽粒移除",
-    "samplingDesc1": "籽粒移除采样说明",
-    "grainRemovalInputFlux": "籽粒移除输出通量"
-  },
-  "strawRemoval": {
-    "Title": "秸秆移除",
-    "samplingDesc2": "秸秆移除采样说明",
-    "strawRemovalInputFlux": "秸秆移除输出通量"
-  },
-  "subsurfaceLeakage": {
-    "Title": "地下渗漏",
-    "samplingDesc3": "地下渗漏采样说明",
-    "subsurfaceLeakageInputFlux": "地下渗漏输出通量"
-  },
-  "surfaceRunoff": {
-    "Title": "地表径流",
-    "samplingDesc4": "地表径流采样说明",
-    "surfaceRunoffInputFlux": "地表径流输出通量"
-  },
-  "mapView": {
-    "Title": "地图展示"
-  },
-  "totalInputFlux": {
-    "Title": "输入总通量"
-  },
-  "totalOutputFlux": {
-    "Title": "输出总通量"
-  },
-  "netFlux": {
-    "Title": "土壤镉净通量"
-  },
-  "currentYearConcentration": {
-    "Title": "土壤镉当年浓度"
-  },
-  "TotalCadmiumPrediction": {
-    "Title": "土壤镉的总含量预测"
-  },
-  "EffectiveCadmiumPrediction": {
-    "Title": "土壤镉有效态含量预测"
-  },
-  "CropCadmiumPrediction": {
-    "Title": "水稻镉含量预测"
-  },
-  "FutureCadmiumPrediction": {
-    "Title": "土壤镉未来含量预测"
-  },
-  "cropRiskAssessment": {
-    "Title": "水稻镉污染风险"
-  },
-  "farmlandQualityAssessment": {
-    "Title": "韶关"
-  },
-  "acidModel": {
-    "Title": "土壤反酸",
-    "CalculationTitle": "土壤反酸预测",
-    "SoilAcidReductionIterativeEvolutionTitle": "反酸模型迭代可视化"
-  },
-  "neutralizationModel": {
-    "Title": "土壤降酸",
-    "AcidNeutralizationModelTitle": "土壤降酸预测",
-    "SoilAcidificationIterativeEvolutionTitle": "土壤降酸迭代可视化"
-  },
-  "TraditionalFarmingRisk": {
-    "Title": "传统耕种习惯风险趋势"
-  },
-  "HeavyMetalCadmiumControl": {
-    "Title": "重金属镉污染治理"
-  },
-  "SoilAcidificationControl": {
-    "Title": "土壤酸化治理"
-  },
-  "DetectionStatistics": {
-    "Title": "检测信息统计"
-  },
-  "FarmlandPollutionStatistics": {
-    "Title": "土壤镉含量统计"
-  },
-  "LandClutivatesStatistics": {
-    "Title": "耕地质量评估统计"
-  },
-  "SoilacidificationStatistics": {
-    "Title": "土壤酸化数据统计"
+    
+    "swIntroduce":"软件简介",
+    "mapcalulate":"土壤酸化地块级计算",
+    "reversionmodel":"土壤反酸模型",
+    "reducemodel":"土壤降酸模型",
+    "dataStatistics": "数据统计",
+    
+    "softwareIntroduction": "软件简介",
+    "projectOverview": "项目简介",
+    "researchFindings": "研究成果",
+    "teamInfo": "团队信息",
+    
+    "soilAcidPlotPrediction": "土壤酸化地块级预测",
+    "shaoguanAcidMap": "韶关土壤酸化地图",
+    "nanxiongAcidMap": "南雄土壤酸化地图",
+    "soilPH Prediction": "土壤 pH 预测",
+    
+    "soilAcidReductionPrediction": "土壤反酸预测",
+    "acidReductionModelDisplay": "反酸模型显示",
+    
+    "soilAcidNeutralizationPrediction": "土壤降酸预测",
+    "acidNeutralizationModelDisplay": "降酸模型显示",
+    
+    "detectionStatistics": "检测信息统计",
+    "soilCadmiumStatistics": "土壤镉含量统计",
+    "cropRiskAssessment": "作物风险评估系统",
+    "soilAcidificationStatistics": "土壤酸化统计"
   }
 }