From a07f90d6106971923e8f761f253a9b4d30a60752 Mon Sep 17 00:00:00 2001
From: CD配唱片 <CD配唱片>
Date: 星期二, 06 五月 2025 15:37:30 +0800
Subject: [PATCH] Merge branch 'feature-i18n' into dev

---
 src/views/mainPlan/gasProduceStatics/index.vue |  132 ++++++++++++++++++++++++++-----------------
 1 files changed, 80 insertions(+), 52 deletions(-)

diff --git a/src/views/mainPlan/gasProduceStatics/index.vue b/src/views/mainPlan/gasProduceStatics/index.vue
index e7a3224..8c45dba 100644
--- a/src/views/mainPlan/gasProduceStatics/index.vue
+++ b/src/views/mainPlan/gasProduceStatics/index.vue
@@ -6,10 +6,10 @@
       ref="queryRef"
       :inline="true"
       v-show="showSearch"
-      label-width="68px"
+      :label-width="locale === 'zh' ? '68px' : '134px'"
     >
       <el-row type="flex" justify="left">
-        <el-form-item label="缁熻鏂瑰紡">
+        <el-form-item :label="$t('plan.query.statistical')">
           <el-select
             v-model="queryParams.searchType"
             style="width: 200px"
@@ -24,30 +24,32 @@
             />
           </el-select>
         </el-form-item>
-        <el-form-item label="閫夋嫨鍖洪棿">
+        <el-form-item :label="$t('plan.query.selectDateRange')">
           <div v-if="!dayCom">
             <el-date-picker
               v-model="queryParams.monthRange"
               type="monthrange"
-              range-separator="鑷�"
-              start-placeholder="閫夋嫨寮�濮嬫湀浠�"
-              end-placeholder="閫夋嫨缁撴潫鏈堜唤"
+              :range-separator="$t('plan.placeholder.to')"
+              :start-placeholder="$t('plan.placeholder.startMonth')"
+              :end-placeholder="$t('plan.placeholder.endMonth')"
             />
           </div>
           <div v-else>
             <el-date-picker
               v-model="queryParams.monthDays"
               type="month"
-              placeholder="閫夋嫨鏈堜唤"
+              :placeholder="$t('plan.placeholder.selectMonth')"
             />
           </div>
         </el-form-item>
 
         <el-form-item class="column-with-margin">
-          <el-button type="primary" icon="Search" @click="handleQuery"
-            >鏌ヨ</el-button
-          >
-          <el-button icon="Refresh" @click="resetQuery">閲嶇疆</el-button>
+          <el-button type="primary" icon="Search" @click="handleQuery">{{
+            $t("common.common.query")
+          }}</el-button>
+          <el-button icon="Refresh" @click="resetQuery">{{
+            $t("common.common.reset")
+          }}</el-button>
         </el-form-item>
       </el-row>
     </el-form>
@@ -59,18 +61,19 @@
           icon="Download"
           @click="handleExport"
           v-hasPermi="['aps:apsGasPipingRouteStat:exportExcel']"
-          >瀵煎嚭</el-button
+          :disabled="loading"
+          >{{ $t("common.common.export") }}</el-button
         >
       </el-col>
       <el-col :span="1.5">
         <el-button
-          type="info"
+          type="success"
           plain
           icon="Refresh"
           @click="handleRefresh"
           v-hasPermi="['aps:apsGasPipingRouteStat:computeCapacity']"
           :disabled="loading"
-          >鏇存柊</el-button
+          >{{ $t("common.common.update") }}</el-button
         >
       </el-col>
       <right-toolbar @queryTable="handleQuery" :search="false"></right-toolbar>
@@ -87,6 +90,8 @@
 import { ref } from "vue";
 import * as XLSX from "xlsx";
 import { ElMessage } from "element-plus";
+import { useI18n } from "vue-i18n"; //瑕佸湪js涓娇鐢ㄥ浗闄呭寲
+const { t, locale } = useI18n();
 const { proxy } = getCurrentInstance();
 
 const loading = ref(false);
@@ -99,20 +104,11 @@
   queryParams: {
     monthRange: "",
     monthDays: "",
-    searchType: "鎸夋湀缁熻",
+    searchType: t("plan.options.monthlyStatic"),
   },
 });
 let searchTypeValue = ref("month");
-const options = [
-  {
-    value: "month",
-    label: "鎸夋湀缁熻",
-  },
-  {
-    value: "day",
-    label: "鎸夋棩缁熻",
-  },
-];
+let options = ref([]);
 const { queryParams } = toRefs(data);
 const gridOptions = reactive({
   border: true,
@@ -140,6 +136,26 @@
 let tableColumn = [];
 let tableData = [];
 let merges = [];
+watch(locale, (newLocale) => {
+  options.value = [
+    {
+      value: "month",
+      label: t("plan.options.monthlyStatic"),
+    },
+    {
+      value: "day",
+      label: t("plan.options.dailyStatic"),
+    },
+  ];
+  queryParams.value.searchType = t("plan.options.monthlyStatic");
+  if (
+    (!queryParams.value.monthRange && dayCom.value == false) ||
+    (!queryParams.value.monthDays && dayCom.value == true)
+  ) {
+    return;
+  }
+  getGasList();
+},{ immediate: true, deep: true });
 function handleChangeSelectType(e) {
   searchTypeValue.value = e;
   if (e === "day") {
@@ -197,16 +213,16 @@
         loading.value = false;
         return;
       }
-      headersOne.push("鏃ユ湡");
-      headersTwo.push("宸ュ簭鍚嶇О");
+      headersOne.push(t("plan.table.dateYearMonth"));
+      headersTwo.push(t("plan.table.processName"));
       colList.push({
         field: "dateCol",
-        title: "鏃ユ湡",
+        title: t("plan.table.dateYearMonth"),
         fixed: "left",
         children: [
           {
             field: `resourceName`,
-            title: "宸ュ簭鍚嶇О",
+            title: t("plan.table.processName"),
             width: 250,
             type: "html",
           },
@@ -217,19 +233,27 @@
         headersOne.push(item);
         headersOne.push("");
         headersOne.push("");
-        headersTwo.push("璁捐浜ц兘");
-        headersTwo.push("闇�姹備骇鑳�");
-        headersTwo.push("浜ц兘璐熻浇");
+        headersTwo.push(t("plan.table.designWorkingHours"));
+        headersTwo.push(t("plan.table.requiredWorkingHours"));
+        headersTwo.push(t("plan.table.capacityLoad"));
         colKey++;
         colList.push({
           field: `dateColTime${colKey}`,
           title: item,
           children: [
-            { field: `designTimes${colKey}`, title: "璁捐浜ц兘", width: 80 },
-            { field: `requireTimes${colKey}`, title: "闇�姹備骇鑳�", width: 80 },
+            {
+              field: `designTimes${colKey}`,
+              title: t("plan.table.designWorkingHours"),
+              width: 80,
+            },
+            {
+              field: `requireTimes${colKey}`,
+              title: t("plan.table.requiredWorkingHours"),
+              width: 80,
+            },
             {
               field: `capacityLoad${colKey}`,
-              title: "浜ц兘璐熻浇",
+              title: t("plan.table.capacityLoad"),
               width: 80,
               type: "html",
             },
@@ -264,7 +288,11 @@
             tableKey++;
             item[`designTimes${tableKey}`] = listItem.designTimes;
             item[`requireTimes${tableKey}`] = listItem.requireTimes;
-            item[`capacityLoad${tableKey}`] = formatCapacityLoad(listItem.designTimes,listItem.requireTimes,listItem.capacityLoad)
+            item[`capacityLoad${tableKey}`] = formatCapacityLoad(
+              listItem.designTimes,
+              listItem.requireTimes,
+              listItem.capacityLoad
+            );
             data.push(listItem.designTimes);
             data.push(listItem.requireTimes);
             data.push(listItem.capacityLoad + "%");
@@ -295,23 +323,23 @@
     }
   });
 }
-function formatCapacityLoad(designTimes,requireTimes,capacityLoad){
+function formatCapacityLoad(designTimes, requireTimes, capacityLoad) {
   /**
    * // 0-100 缁胯壊锛�101-120榛勮壊锛屽ぇ浜�120绾㈣壊
     listItem.capacityLoad <= 100
       ? `<font color="red">${listItem.capacityLoad}%</font>`
       : listItem.capacityLoad + "%";
    */
-  if(designTimes>0&&capacityLoad>0&&capacityLoad<=100){
-    return `<font color="#85cf60">${capacityLoad}%</font>`
-  }else if(designTimes>0&&capacityLoad>101&&capacityLoad<=120){
-    return `<font color="#ecb869">${capacityLoad}%</font>`
-  }else if(designTimes>0&&capacityLoad>120){
-    return `<font color="#f89c9c">${capacityLoad}%</font>`
-  }else if(designTimes==0&&requireTimes>0){
-    return `<font color="#f56c6c">error</font>`
-  }else{
-    return `${capacityLoad}%`
+  if (designTimes > 0 && capacityLoad > 0 && capacityLoad <= 100) {
+    return `<font color="#85cf60">${capacityLoad}%</font>`;
+  } else if (designTimes > 0 && capacityLoad > 101 && capacityLoad <= 120) {
+    return `<font color="#ecb869">${capacityLoad}%</font>`;
+  } else if (designTimes > 0 && capacityLoad > 120) {
+    return `<font color="#f89c9c">${capacityLoad}%</font>`;
+  } else if (designTimes == 0 && requireTimes > 0) {
+    return `<font color="#f56c6c">error</font>`;
+  } else {
+    return `${capacityLoad}%`;
   }
 }
 /** 瀵煎嚭鎸夐挳鎿嶄綔 */
@@ -321,7 +349,7 @@
     (!queryParams.value.monthDays && dayCom.value == true)
   ) {
     ElMessage({
-      message: "璇烽�夋嫨骞存湀",
+      message: t("plan.message.errorMonthEmpty"),
       type: "error",
     });
     return;
@@ -348,7 +376,7 @@
     (!queryParams.value.monthDays && dayCom.value == true)
   ) {
     ElMessage({
-      message: "璇烽�夋嫨骞存湀",
+      message: t("plan.message.errorMonthEmpty"),
       type: "error",
     });
     return;
@@ -362,7 +390,7 @@
   queryParams.value.monthRange = "";
   queryParams.value.monthDays = "";
   dayCom.value = false;
-  (queryParams.value.searchType = "鎸夋湀缁熻"),
+  (queryParams.value.searchType = t("plan.options.monthlyStatic")),
     (searchTypeValue.value = "month");
   tableData = [];
   const $grid = gridRef.value;
@@ -379,7 +407,7 @@
     (!queryParams.value.monthDays && dayCom.value == true)
   ) {
     ElMessage({
-      message: "璇烽�夋嫨骞存湀",
+      message: t("plan.message.errorMonthEmpty"),
       type: "error",
     });
     return;
@@ -389,7 +417,7 @@
     major: "gas",
   }).then((response) => {
     ElMessage({
-      message: "鏁版嵁鏇存柊鎴愬姛",
+      message: t("plan.message.update"),
       type: "success",
     });
     loading.value = false;

--
Gitblit v1.9.3