Forráskód Böngészése

feat: 完善多语言

Jack Zhou 1 hete
szülő
commit
868191b6b0

+ 65 - 29
src/components/AddRules/src/components/DelayedType.vue

@@ -55,9 +55,9 @@ let Arrivalstr: any = ''
 const clampedValue = computed({
   get: () => DepartureTime.value,
   set: (newVal) => {
-    const isValid = /^[1-9]\d*$/.test(newVal);
-    DepartureTime.value = isValid ? newVal : '';
-    if( DepartureTime.value!='') {
+    const isValid = /^[1-9]\d*$/.test(newVal)
+    DepartureTime.value = isValid ? newVal : ''
+    if (DepartureTime.value != '') {
       DepartureTime.value = Math.min(Math.max(parseInt(DepartureTime.value, 10), 1), 365)
     }
   }
@@ -65,9 +65,9 @@ const clampedValue = computed({
 const clampedArrivalValue = computed({
   get: () => ArrivalTime.value,
   set: (newVal) => {
-    const isValid = /^[1-9]\d*$/.test(newVal);
-    ArrivalTime.value = isValid ? newVal : '';
-    if( ArrivalTime.value!='') {
+    const isValid = /^[1-9]\d*$/.test(newVal)
+    ArrivalTime.value = isValid ? newVal : ''
+    if (ArrivalTime.value != '') {
       ArrivalTime.value = Math.min(Math.max(parseInt(ArrivalTime.value, 10), 1), 365)
     }
   }
@@ -75,8 +75,9 @@ const clampedArrivalValue = computed({
 const CheckChange = (val: any) => {
   if (val.includes('Departure Delayed')) {
     isDeparture.value = true
-    if(clampedValue.value != '' && clampedValue.value!= undefined) {
-      Departurestr = 'Departure Delayed (ATD-ETD)' + ' ≥ ' + clampedValue.value + ' ' + DepartureSelect.value
+    if (clampedValue.value != '' && clampedValue.value != undefined) {
+      Departurestr =
+        'Departure Delayed (ATD-ETD)' + ' ≥ ' + clampedValue.value + ' ' + DepartureSelect.value
     } else {
       Departurestr = ''
     }
@@ -85,8 +86,13 @@ const CheckChange = (val: any) => {
     }
     if (val.includes('Arrival Delayed (ATA-ETA)')) {
       isArrival.value = true
-      if(clampedArrivalValue.value != '' && clampedArrivalValue.value!= undefined) {
-        Arrivalstr = 'Arrival Delayed (ATA-ETA)' + ' ≥ ' + clampedArrivalValue.value + ' ' + ArrivalSelect.value
+      if (clampedArrivalValue.value != '' && clampedArrivalValue.value != undefined) {
+        Arrivalstr =
+          'Arrival Delayed (ATA-ETA)' +
+          ' ≥ ' +
+          clampedArrivalValue.value +
+          ' ' +
+          ArrivalSelect.value
       } else {
         Arrivalstr = ''
       }
@@ -106,8 +112,13 @@ const CheckChange = (val: any) => {
     DepartureSelect.value = ''
     if (val.includes('Arrival Delayed (ATA-ETA)')) {
       isArrival.value = true
-      if(clampedArrivalValue.value != '' && clampedArrivalValue.value!= undefined) {
-        Arrivalstr = 'Arrival Delayed (ATA-ETA)' + ' ≥ ' + clampedArrivalValue.value + ' ' + ArrivalSelect.value
+      if (clampedArrivalValue.value != '' && clampedArrivalValue.value != undefined) {
+        Arrivalstr =
+          'Arrival Delayed (ATA-ETA)' +
+          ' ≥ ' +
+          clampedArrivalValue.value +
+          ' ' +
+          ArrivalSelect.value
       } else {
         Arrivalstr = ''
       }
@@ -123,25 +134,26 @@ const CheckChange = (val: any) => {
   }
   emit('ChangeCheckRules', DepartureList.value)
 }
-const handleCheckboxClick = (event:any) => {
+const handleCheckboxClick = (event: any) => {
   // 判断点击的是否为复选框输入区域
   const isCheckboxInput = event.target.closest('.el-checkbox__inner')
   const isCheckboxTitle = event.target.closest('.titlecheckbox')
   if (!isCheckboxInput) {
     // 阻止默认切换行为
-    if(!isCheckboxTitle) {
+    if (!isCheckboxTitle) {
       event.preventDefault()
     }
   }
 }
 const changedeparture = (val: any) => {
-  if(props.Title != 'Air Shipments') {
+  if (props.Title != 'Air Shipments') {
     DepartureSelect.value = 'Day(s)'
     ArrivalSelect.value = 'Day(s)'
   }
   if (val == 'Departure') {
-    if(clampedValue.value != '' && clampedValue.value!= undefined) {
-      Departurestr = 'Departure Delayed (ATD-ETD)' + ' ≥ ' + clampedValue.value + ' ' + DepartureSelect.value
+    if (clampedValue.value != '' && clampedValue.value != undefined) {
+      Departurestr =
+        'Departure Delayed (ATD-ETD)' + ' ≥ ' + clampedValue.value + ' ' + DepartureSelect.value
     } else {
       Departurestr = ''
     }
@@ -149,8 +161,13 @@ const changedeparture = (val: any) => {
       DepartureList.value.Departure = Departurestr
     }
     if (val == 'Arrival') {
-      if(clampedArrivalValue.value != '' && clampedArrivalValue.value!= undefined) {
-        Arrivalstr = 'Arrival Delayed (ATA-ETA)' + ' ≥ ' + clampedArrivalValue.value + ' ' + ArrivalSelect.value
+      if (clampedArrivalValue.value != '' && clampedArrivalValue.value != undefined) {
+        Arrivalstr =
+          'Arrival Delayed (ATA-ETA)' +
+          ' ≥ ' +
+          clampedArrivalValue.value +
+          ' ' +
+          ArrivalSelect.value
       } else {
         Arrivalstr = ''
       }
@@ -160,8 +177,13 @@ const changedeparture = (val: any) => {
     }
   } else {
     if (val == 'Arrival') {
-      if(clampedArrivalValue.value != '' && clampedArrivalValue.value!= undefined) {
-        Arrivalstr = 'Arrival Delayed (ATA-ETA)' + ' ≥ ' + clampedArrivalValue.value + ' ' + ArrivalSelect.value
+      if (clampedArrivalValue.value != '' && clampedArrivalValue.value != undefined) {
+        Arrivalstr =
+          'Arrival Delayed (ATA-ETA)' +
+          ' ≥ ' +
+          clampedArrivalValue.value +
+          ' ' +
+          ArrivalSelect.value
       } else {
         Arrivalstr = ''
       }
@@ -217,7 +239,11 @@ defineExpose({
         </template>
         <div class="oceanCheckbox">
           <el-checkbox-group @change="CheckChange" v-model="OceanCheckedList">
-            <el-checkbox @click="handleCheckboxClick($event)" class="delayedType" value="Departure Delayed">
+            <el-checkbox
+              @click="handleCheckboxClick($event)"
+              class="delayedType"
+              value="Departure Delayed"
+            >
               <div class="titlecheckbox">{{ t('notificationRules.departureDelayedAtdEtd') }}</div>
               <div v-if="isDeparture" class="flex" style="margin-top: 16px">
                 <span class="delayedTitle">{{ t('notificationRules.delayedTime') }}</span>
@@ -226,7 +252,7 @@ defineExpose({
                   v-model="clampedValue"
                   class="input-with-select"
                   @input="changedeparture('Departure')"
-                  v-if="props.Title == 'Air Shipments'" 
+                  v-if="props.Title == 'Air Shipments'"
                 >
                   <template #append>
                     <el-select
@@ -247,11 +273,16 @@ defineExpose({
                   class="input-with-select1"
                 >
                 </el-input>
-                <div
-                v-if="props.Title != 'Air Shipments'" class="Days">{{ t('notificationRules.days') }}</div>
+                <div v-if="props.Title != 'Air Shipments'" class="Days">
+                  {{ t('notificationRules.days') }}
+                </div>
               </div>
             </el-checkbox>
-            <el-checkbox class="delayedType" @click="handleCheckboxClick($event)"  value="Arrival Delayed (ATA-ETA)">
+            <el-checkbox
+              class="delayedType"
+              @click="handleCheckboxClick($event)"
+              value="Arrival Delayed (ATA-ETA)"
+            >
               <div class="titlecheckbox">{{ t('notificationRules.arrivalDelayedAtaEta') }}</div>
               <div v-if="isArrival" class="flex" style="margin-top: 16px">
                 <span class="delayedTitle">{{ t('notificationRules.delayedTime') }}</span>
@@ -281,7 +312,9 @@ defineExpose({
                   class="input-with-select1"
                 >
                 </el-input>
-                <div v-if="props.Title != 'Air Shipments'" class="Days">{{ t('notificationRules.days') }}</div>
+                <div v-if="props.Title != 'Air Shipments'" class="Days">
+                  {{ t('notificationRules.days') }}
+                </div>
               </div>
             </el-checkbox>
           </el-checkbox-group>
@@ -350,7 +383,10 @@ defineExpose({
   box-shadow: 0 0 0 1px var(--color-system-border-1) inset;
 }
 :deep(.el-input-group--append .el-input-group__append .el-select .el-select__wrapper) {
-  box-shadow: 0 1px 0 0 var(--color-system-border-1) inset,0 -1px 0 0 var(--color-system-border-1) inset,-1px 0 0 0 var(--color-system-border-1) inset;
+  box-shadow:
+    0 1px 0 0 var(--color-system-border-1) inset,
+    0 -1px 0 0 var(--color-system-border-1) inset,
+    -1px 0 0 0 var(--color-system-border-1) inset;
 }
 .Days {
   width: 84px;
@@ -371,4 +407,4 @@ defineExpose({
 .titlecheckbox {
   max-width: 198px;
 }
-</style>
+</style>

+ 299 - 12
src/locales/en.json

@@ -73,6 +73,9 @@
     "logout": "Logout",
     "light": "Light",
     "dark": "Dark",
+    "created": "Created",
+    "confirmed": "Confirmed",
+    "cancelled": "Cancelled",
     "clearFilters": "Clear Filters",
     "downloadFile": "Download File",
     "selectedColumns": "Selected columns",
@@ -165,7 +168,6 @@
     "columnsGuideLeft": "Drag to left to unselect columns",
     "columnsGuideOrder": "Drag up and down to reorder or select/unselect",
     "pageGuideDesc": "After closing, you can still click the \"Page Guide\" button to view the page guide of the current page.",
-
     "mawbMblNo": "MAWB/MBL No.",
     "hawbHblNo": "HAWB/HBL No.",
     "bookingNo": "Booking No.",
@@ -175,7 +177,6 @@
     "loadTerms": "Load Terms",
     "shipmentType": "Shipment Type",
     "co2Emission": "CO2 Emission",
-
     "searchGuideTitle": "Frequently Used Search Criteria Display Area",
     "searchGuideStatus": "Key Booking Status",
     "searchGuideRef": "Reference Numbers",
@@ -183,7 +184,6 @@
     "searchGuideRange": "Date Type & Range",
     "filterGuideArea": "Selected query criteria display area",
     "filterGuideClear": "You can quickly clear selected conditions at this position",
-
     "shipmentStatus": "Shipment Status",
     "containerStatus": "Container Status",
     "shipper": "Shipper",
@@ -203,14 +203,12 @@
     "pleaseEnterEmailContent": "Please enter the email content",
     "emailSentSuccessfully": "Email sent successfully",
     "failedToSendEmail": "Failed to send email",
-
     "textSearch": "text search",
     "created": "Created",
     "cargoReceived": "Cargo Received",
     "departed": "Departed",
     "arrived": "Arrived",
     "completed": "Completed",
-
     "shareLinkTip": "Copy the link to share this shipment with anyone.",
     "publicSearchPlaceholder": "Enter Booking/HBL/MBL/PO/Container No.",
     "publicReferenceTipTitle": "We support the following references number to find shipment:",
@@ -226,6 +224,11 @@
     "uploadFiles": "Upload Files",
     "upload": "Upload",
     "fileType": "File Type",
+    "Created": "Created",
+    "Cargo Received": "Cargo Received",
+    "Departed": "Departed",
+    "Arrived": "Arrived",
+    "Completed": "Completed",
     "supportedFormats": "Supported formats: .pdf, .xlsx, .docx",
     "maximumSize": "Maximum Size: 5MB;",
     "maximumNumber": "Maximum Number: 5 files",
@@ -292,7 +295,72 @@
     "tdShare": "Share",
     "tdHouseNo": "House No.",
     "tdAmsIsf": "AMS/ISF",
-    "tdAddReference": "Add Reference"
+    "tdAddReference": "Add Reference",
+
+
+
+
+
+
+    "packages": "Packages",
+    "quantity": "Quantity",
+    "cbm": "CBM",
+    "cft": "CFT",
+    "seal": "Seal#",
+    "size": "Size",
+    "service": "Service",
+    "tracking_no": "Tracking No.",
+    "mbol_mawb_no": "MBOL/MAWB No.",
+    "hbol_hawb_no": "HBOL/HAWB No.",
+    "container_no": "Container No.",
+    "invoice_no": "Invoice No.",
+    "booking_no": "Booking No.",
+    "po_no": "PO No.",
+    "quote_no": "Quote No.",
+    "carrier_booking_no": "Carrier Booking No.",
+    "contract_no": "Contract No.",
+    "other_refenrence_no": "Other refenrence No.",
+    "mode": "Mode",
+    "service_type": "Service Type",
+    "bol_type": "BOL Type",
+    "ex_im": "EX/IM",
+    "incoterms": "Incoterms",
+    "status": "Status",
+    "shipper_id": "Shipper ID",
+    "consignee_id": "Consignee ID",
+    "notify_party": "Notify Party",
+    "notify_party_id": "Notify Party ID",
+    "bill_to": "Bill To",
+    "group_name": "Group Name",
+    "origin_agent": "Origin Agent",
+    "destination_agent": "Destination Agent",
+    "destination_operator": "Destination Operator",
+    "sales": "Sales",
+    "creation_time": "Creation Time",
+    "shipper_city": "Shipper City",
+    "consignee_city": "Consignee City",
+    "place_of_receipt": "Place of Receipt",
+    "port_of_loading": "Port of Loading",
+    "port_of_discharge": "Port of Discharge",
+    "place_of_delivery": "Place of Delivery",
+    "carrier": "Carrier",
+    "voyage_flight": "Voyage/Flight",
+    "vessel_airline": "Vessel/Airline",
+    "week": "Week",
+    "ace_m1_status": "ACE-M1 Status",
+    "is_isf": "Is ISF",
+    "obl_set": "OBL_SET",
+    "created_by": "Created by",
+    "total_qty": "Total QTY",
+    "gross_weight": "Gross Weight",
+    "chargeable_weight": "Chargeable Weight",
+    "manifest_hbol": "Manifest HBOL",
+    "co2_emission": "CO2 Emission",
+    "load_term": "Load Term",
+    "shipment_type": "Shipment Type",
+    "port_of_transhipment": "Port of Transhipment",
+    "container_size": "Container Size",
+    "last_mile_delivery_date": "Last Mile Delivery Date"
   },
   "systemMessage": {
     "title": "System Message",
@@ -364,13 +432,12 @@
     "manageReportFields": "Manage Report Fields",
     "showAll": "Show All",
     "hideAll": "Hide All",
-    "of": "of",
     "reportDataReview": "Report Data Review",
     "reportName": "Report Name",
     "ascending": "Ascending",
     "descending": "Descending",
     "sortBy": "Sort by",
-    "fieldsVisible": "Fields Visible",
+    "fieldsVisible": "{selected} of {total} fields visible",
     "systemName": "System Name",
     "displayNameInReport": "Display Name in Report",
     "apply": "Apply",
@@ -444,7 +511,159 @@
     "thisMonth": "This Month",
     "thisQuarter": "This Quarter",
     "lastQuarter": "Last Quarter",
-    "lastYear": "Last Year"
+    "lastYear": "Last Year",
+
+
+
+    "tracking_no": "Tracking No.",
+    "mbol_mawb_no": "MBOL/MAWB No.",
+    "hbol_hawb_no": "HBOL/HAWB No.",
+    "shipment_invoice_no": "Shipment Invoice No.",
+    "booking_no": "Booking No.",
+    "shipment_po_no": "Shipment PO No.",
+    "container_no_house": "Container No. (House)",
+    "quote_no": "Quote No.",
+    "carrier_booking_no": "Carrier Booking No.",
+    "contract_no": "Contract No.",
+    "other_reference_no": "Other reference No.",
+    "manifest_hbol": "Manifest HBOL",
+    "transportation_mode": "Transportation Mode",
+    "service_type": "Service Type",
+    "shipment_type": "Shipment Type",
+    "container_size_house": "Container Size (House)",
+    "ex_im": "EX/IM",
+    "incoterms": "Incoterms",
+    "load_terms": "Load Terms",
+    "status": "Status",
+    "total_co2_emission": "Total CO2 Emission",
+    "total_distance": "Total Distance",
+    "pickup_co2_emission": "Pickup CO2 Emission",
+    "pickup_distance": "Pickup Distance",
+    "main_route_co2_emission": "Main Route CO2 Emission",
+    "main_route_distance": "Main Route Distance",
+    "delivery_co2_emission": "Delivery CO2 Emission",
+    "delivery_distance": "Delivery Distance",
+    "shipment_qty": "Shipment Qty",
+    "shipment_qty_unit": "Shipment Qty Unit",
+    "shipment_gross_weight": "Shipment Gross Weight",
+    "chargeable_weight": "Chargeable Weight",
+    "shipment_volume": "Shipment Volume",
+    "shipper": "Shipper",
+    "shipper_zip_code": "Shipper Zip Code",
+    "shipper_id": "Shipper ID",
+    "consignee": "Consignee",
+    "consignee_zip_code": "Consignee Zip Code",
+    "consignee_id": "Consignee ID",
+    "notify_party": "Notify party",
+    "notify_party_id": "Notify party ID",
+    "bill_to": "Bill to",
+    "group_name": "Group Name",
+    "origin_agent": "Origin Agent",
+    "destination_agent": "Destination Agent",
+    "destination_operator": "Destination Operator",
+    "sales": "Sales",
+    "etd": "ETD",
+    "eta": "ETA",
+    "creation_time": "Creation Time",
+    "atd": "ATD",
+    "ata": "ATA",
+    "shipper_city": "Shipper City",
+    "consignee_city": "Consignee City",
+    "place_of_receipt": "Place of Receipt",
+    "port_of_loading": "Port of Loading",
+    "port_of_discharge": "Port of Discharge",
+    "place_of_delivery": "Place of delivery",
+    "port_of_transhipment": "Port of Transhipment",
+    "carrier": "Carrier",
+    "voyage_flight": "Voyage/Flight",
+    "vessel_airline": "Vessel/Airline",
+    "booking_confirmation": "Booking Confirmation",
+    "carrier_booking_confirmation_received": "Carrier Booking Confirmation Received",
+    "cargo_pickup": "Cargo Pickup",
+    "empty_container_pickup": "Empty Container Pickup",
+    "cargo_arrived_at_origin": "Cargo Arrived at Origin",
+    "shipping_instruction_received_from_shipper": "Shipping Instruction Received from shipper",
+    "export_customs_documents_received": "Export Customs Documents Received",
+    "export_customs_released": "Export Customs Released",
+    "on_board": "On Board",
+    "departure": "Departure",
+    "arrived_at_transshipment_port": "Arrived at Transshipment Port",
+    "departed_at_transshipment_port": "Departed at Transshipment Port",
+    "arrival_notification": "Arrival Notification",
+    "arrived_at_final_discharge_port": "Arrived at Final Discharge Port",
+    "unloaded": "Unloaded",
+    "container_loaded_on_rail": "Container Loaded on Rail",
+    "container_unloaded_from_rail": "Container Unloaded from Rail",
+    "estimated_arrived_at_final_destination": "Estimated Arrived at Final Destination",
+    "arrived_at_final_destination": "Arrived at Final Destination",
+    "import_customs_documents_received": "Import Customs Documents Received",
+    "import_customs_released": "Import Customs Released",
+    "container_available": "Container Available",
+    "laden_container_pick_up": "Laden Container Pick Up",
+    "last_free_date": "Last Free Date",
+    "actual_door_delivery": "Actual Door Delivery",
+    "arrived_destination_warehouse": "Arrived Destination Warehouse",
+    "departed_destination_warehouse": "Departed Destination Warehouse",
+    "empty_container_return": "Empty Container Return",
+    "hbl_receipt_released": "HBL Receipt / Released",
+    "document_turnover_delivered": "Document Turnover / Delivered",
+    "ace_m1_status": "ACE-M1 Status",
+    "is_isf": "Is ISF",
+    "obl_set": "OBL_SET",
+    "container_no": "Container No.",
+    "container_size": "Container Size",
+    "container_qty": "Container Qty",
+    "container_unit": "Container Unit",
+    "container_weight": "Container Weight",
+    "container_volume": "Container Volume",
+    "container_po_no": "Container PO No.",
+    "item_no": "Item No.",
+    "container_invoice_no": "Container Invoice No.",
+    "gate_in_full_for_a_booking": "Gate in full for a booking",
+    "container_loaded_on_vessel": "Container loaded on vessel",
+    "vessel_departure": "Vessel Departure",
+    "vessel_arrival": "Vessel Arrival",
+    "unloaded_from_vessel": "Unloaded From Vessel",
+    "carrier_and_customs_release": "Carrier and Customs Release",
+    "customs_release": "Customs release",
+    "carrier_release": "Carrier release",
+    "gate_out_full_from_final_discharge_port": "Gate out full from final discharge port",
+    "gate_out_for_delivery_to_customer": "Gate out for delivery to customer",
+    "container_returned_empty": "Container returned empty",
+    "shipment_available_for_pickup_or_delivery": "Shipment available for pickup or delivery",
+    "empty_equipment_dispatched": "Empty Equipment Dispatched",
+    "loaded_at_relay_port": "Loaded at Relay Port",
+    "unloaded_at_relay_port": "Unloaded at Relay Port",
+    "arrive_relay_port": "Arrive Relay Port",
+    "depart_relay_port": "Depart Relay Port",
+    "free_time_expired": "Free Time Expired",
+    "free_time_to_expire": "Free Time to Expire",
+    "in_transit": "In Transit",
+    "arrival": "Arrival",
+    "last_mile_delivery": "Last Mile Delivery",
+    "item_po_no": "Item PO No.",
+    "sku_no": "SKU NO.",
+    "item_qty": "Item Qty",
+    "item_unit": "Item Unit",
+    "item_weight": "Item Weight",
+    "item_volume": "Item Volume",
+    "description": "Description",
+    "inner_pcs": "Inner PCS",
+    "pol_locode": "POL LOCODE",
+    "pod_locode": "POD LOCODE",
+    "vslvoy_flight": "VSLVOY/FLIGHT",
+    "controlling_customer": "Controlling Customer",
+    "seal_no": "Seal No.",
+    "pickup_postal_code": "Pickup-Postal Code",
+    "pickup_mode_type": "Pickup-Mode Type",
+    "last_mile_delivery_postal_code": "Last mile delivery-Postal Code",
+    "last_mile_delivery_mode_type": "Last mile delivery-Mode Type",
+    "co2e_intensity": "CO2e Intensity",
+    "last_mile_delivery_date": "Last Mile Delivery Date",
+    "last_mile_delivery_time": "Last Mile Delivery Time",
+    "last_mile_delivery_city": "Last Mile Delivery City",
+    "last_mile_delivery_address": "Last Mile Delivery Address",
+    "carrier_teu": "CARRIER TEU"
   },
  
   "notificationRules": {
@@ -780,6 +999,9 @@
     "marks": "Marks",
     "description": "Description",
     "packing": "Packing",
+    "Created": "Created",
+    "Confirmed": "Confirmed",
+    "Cancelled": "Cancelled",
     "marksAndDescription": "Marks and Description",
     "bookingListEmptyTip": "We support the following references number to find booking:",
     "bookingListEmptyTipDetail": "· Booking No./HAWB No./MAWB No./PO No./Carrier Booking No./Contract No./File No./Quote No.",
@@ -807,7 +1029,44 @@
     "guidePageGuide": "After closing, you can still click the \"Page Guide\" button to view the page guide of the current page.",
     "openInNewTab": "Open in New Tab",
     "tdReferenceType": "Reference Type",
-    "tdAction": "Action"
+    "tdAction": "Action",
+
+
+
+    "booking_no": "Booking No.",
+    "mbol_mawb_no": "MBOL/MAWB No.",
+    "hbol_hawb_no": "HBOL/HAWB No.",
+    "po_no": "PO No.",
+    "quote_no": "Quote No.",
+    "carrier_booking_no": "Carrier Booking No.",
+    "contract_no": "Contract No.",
+    "mode": "Mode",
+    "status": "Status",
+    "origin_agent": "Origin Agent",
+    "destination_agent": "Destination Agent",
+    "sales": "Sales",
+    "creation_time": "Creation Time",
+    "confirmation_time": "Confirmation Time",
+    "eta": "ETA",
+    "place_of_receipt": "Place of Receipt",
+    "port_of_loading": "Port of Loading",
+    "place_of_delivery": "Place of Delivery",
+    "carrier": "Carrier",
+    "voyage_flight": "Voyage/Flight",
+    "vessel_airline": "Vessel/Airline",
+    "week": "Week",
+    "created_by": "Created by",
+    "total_qty": "Total QTY",
+    "gross_weight": "Gross Weight",
+    "chargeable_weight": "Chargeable Weight",
+    "port_of_dsicharge": "Port of Dsicharge",
+    "qty": "QTY",
+    "size": "Size",
+    "kgs": "KGS",
+    "cbm": "CBM",
+    "sch_b": "SCH_B",
+    "unit": "Unit",
+    "po": "PO#"
   },
   "destinationDelivery": {
     "title": "Destination Delivery",
@@ -853,7 +1112,6 @@
     "modified": "Modified",
     "pending": "Pending",
     "current": "Current",
-
     "deliveryDate": "Delivery Date",
     "deliveryMode": "Delivery Mode",
     "creationDate": "Creation Date",
@@ -991,6 +1249,35 @@
     "noEligibleShipmentsTitle": "No Eligible Shipments for Booking",
     "noEligibleShipmentsText": "Your shipments are currently outside the booking window. Eligible shipments will appear here when booking window opens.",
     "additionalStorageFeesMayApply": "Additional storage fees may apply.",
-    "additionalFeesNotice": "Additional Fees Notice"
+    "additionalFeesNotice": "Additional Fees Notice",
+
+
+
+    "delivery_booking_no": "Delivery Booking No.",
+    "hbol_no": "HBOL NO.",
+    "mbl_no": "MBL No.",
+    "container_no": "Container No.",
+    "delivery_date": "Delivery Date",
+    "delivery_mode": "Delivery Mode",
+    "status": "Status",
+    "delivery_address": "Delivery Address",
+    "special_requiremnets": "Special Requiremnets",
+    "create_by": "Create_by",
+    "creation_date": "Creation Date",
+    "service_type": "Service Type",
+    "po_number": "PO Number",
+    "reference_no": "Reference No",
+    "mode": "Mode",
+    "pakages": "Pakages",
+    "package_type": "Package Type",
+    "kgw": "KGW",
+    "volume": "Volume",
+    "vessel_airline": "Vessel/Airline",
+    "voyage_flight": "Voyage/Flight",
+    "pol": "POL",
+    "pod": "POD",
+    "controlling_customer": "Controlling Customer",
+    "packing_list": "Packing List",
+    "commercial_invoice": "Commercial Invoice"
   }
 }

+ 6 - 8
src/views/Booking/src/components/BookingTable/src/BookingTable.vue

@@ -40,7 +40,7 @@ const tableOriginColumnsField = ref()
 const handleColumns = (columns: any, status?: string) => {
   const newColumns = columns.map((item: any) => {
     let curColumn: any = {
-      title: item.title,
+      title: t(`${item.cleaned_field_name}`),
       field: item.field,
       sortable: true
     }
@@ -406,11 +406,7 @@ const handleCustomizeColumns = () => {
       model_name: 'Booking_Search'
     }
   }
-  CustomizeColumnsRef.value.openDialog(
-    params,
-    -220,
-    t('booking.customizeColumnsTip')
-  )
+  CustomizeColumnsRef.value.openDialog(params, -220, t('booking.customizeColumnsTip'))
 }
 // 定制表格
 const customizeColumns = async () => {
@@ -554,7 +550,7 @@ defineExpose({
       </template>
       <!-- Status字段的插槽 -->
       <template #status="{ row, column }">
-        <VTag :type="row[column.field]">{{ row[column.field] }}</VTag>
+        <VTag :type="row[column.field]">{{ t(`booking.${row[column.field]}`) }}</VTag>
       </template>
       <!-- Booking No字段的插槽 -->
       <template #link="{ row, column }">
@@ -568,7 +564,9 @@ defineExpose({
     </vxe-grid>
     <vxe-grid :height="10" ref="allTableRef" class="all-table" v-bind="allTable"> </vxe-grid>
     <div class="bottom-pagination">
-      <div class="left-total-records">{{ t('common.total') }} {{ formatNumber(pageInfo.total) }}</div>
+      <div class="left-total-records">
+        {{ t('common.total') }} {{ formatNumber(pageInfo.total) }}
+      </div>
       <div class="right-pagination">
         <el-pagination
           v-model:current-page="pageInfo.pageNo"

+ 1 - 1
src/views/MultilingualConfig/src/MultilingualConfig.vue

@@ -469,7 +469,7 @@ const saveMultilingualConfig = async () => {
         </template>
 
         <template #key="{ row }">
-          <div>{{ row.orginEnglish }}</div>
+          <div>{{ row.originEnglish }}</div>
           <span>{{ row.key }}</span>
         </template>
         <template #cell="{ row, column, rowIndex }">

+ 12 - 7
src/views/Report/src/components/ReportDetail/src/components/ManageReportFields.vue

@@ -84,15 +84,20 @@ defineExpose({
   >
     <div class="flex">
       <div class="flex">
-        <el-button style="height: 32px; padding: 0 13px" type="default" @click="ShowAll('show')"
-          >{{ t('report.showAll') }}</el-button
-        >
-        <el-button style="height: 32px; padding: 0 13px" type="default" @click="ShowAll('hide')"
-          >{{ t('report.hideAll') }}</el-button
-        >
+        <el-button style="height: 32px; padding: 0 13px" type="default" @click="ShowAll('show')">{{
+          t('report.showAll')
+        }}</el-button>
+        <el-button style="height: 32px; padding: 0 13px" type="default" @click="ShowAll('hide')">{{
+          t('report.hideAll')
+        }}</el-button>
       </div>
       <div class="fields-title">
-        {{ curSelectedNumber }} {{ t('report.of') }} {{ manageFieldsColumns.length }} {{ t('report.fieldsVisible') }}
+        {{
+          t('report.fieldsVisible', {
+            selected: curSelectedNumber,
+            total: manageFieldsColumns.length
+          })
+        }}
       </div>
     </div>
     <div class="system-list">

+ 12 - 7
src/views/Report/src/components/ReportSchedule/src/components/ManageReportFields.vue

@@ -84,15 +84,20 @@ defineExpose({
   >
     <div class="flex">
       <div class="flex">
-        <el-button style="height: 32px; padding: 0 13px" type="default" @click="ShowAll('show')"
-          >{{ t('report.showAll') }}</el-button
-        >
-        <el-button style="height: 32px; padding: 0 13px" type="default" @click="ShowAll('hide')"
-          >{{ t('report.hideAll') }}</el-button
-        >
+        <el-button style="height: 32px; padding: 0 13px" type="default" @click="ShowAll('show')">{{
+          t('report.showAll')
+        }}</el-button>
+        <el-button style="height: 32px; padding: 0 13px" type="default" @click="ShowAll('hide')">{{
+          t('report.hideAll')
+        }}</el-button>
       </div>
       <div class="fields-title">
-        {{ curSelectedNumber }} {{ t('report.of') }} {{ manageFieldsColumns.length }} {{ t('report.fieldsVisible') }}
+        {{
+          t('report.fieldsVisible', {
+            selected: curSelectedNumber,
+            total: manageFieldsColumns.length
+          })
+        }}
       </div>
     </div>
     <div class="system-list">

+ 1 - 1
src/views/Tracking/src/components/TrackingTable/src/TrackingTable.vue

@@ -693,7 +693,7 @@ defineExpose({
       </template>
       <!-- Status字段的插槽 -->
       <template #status="{ row, column }">
-        <VTag :type="row[column.field]">{{ row[column.field] }}</VTag>
+        <VTag :type="row[column.field]">{{ t(`tracking.${row[column.field]}`) }}</VTag>
       </template>
       <!-- Tracking No字段的插槽 -->
       <template #trackingNo="{ row, column }">