From e491cdb48129752324c4e3764f99bd9203c56dec Mon Sep 17 00:00:00 2001
From: lgq <1015864684@qq.com>
Date: 星期二, 31 三月 2026 09:48:44 +0800
Subject: [PATCH] 1.新增VF205门禁机代码

---
 vf205_access/resource/langPack.js |  664 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 664 insertions(+), 0 deletions(-)

diff --git a/vf205_access/resource/langPack.js b/vf205_access/resource/langPack.js
new file mode 100644
index 0000000..3a63542
--- /dev/null
+++ b/vf205_access/resource/langPack.js
@@ -0,0 +1,664 @@
+// 璇█鍖�
+const messages = {
+  CN: {
+    mainView: {
+      config: "閰嶇疆",
+      pwd: "瀵嗙爜",
+      app: "灏忕▼搴忕爜",
+      success: "閫氳鎴愬姛",
+      fail: "閫氳澶辫触",
+      passwordDisabled: "瀵嗙爜宸茬鐢�",
+    },
+    idleView: {
+      week: {
+        0: "鍛ㄦ棩",
+        1: "鍛ㄤ竴",
+        2: "鍛ㄤ簩",
+        3: "鍛ㄤ笁",
+        4: "鍛ㄥ洓",
+        5: "鍛ㄤ簲",
+        6: "鍛ㄥ叚",
+      },
+    },
+    appView: {
+      knowed: "鎴戝凡鐭ユ檽",
+      appQrcodeLbl: "浣跨敤灏忕▼搴忎究鎹风鐞�",
+    },
+    pwdView: {
+      title: "瀵嗙爜閫氳",
+      pwd: "璇疯緭鍏ュ瘑鐮�",
+      pwdAccess: "纭",
+      success: "瀵嗙爜閫氳鎴愬姛",
+      fail: "瀵嗙爜閫氳澶辫触",
+    },
+    newPwdView: {
+      title: "璁剧疆绠$悊瀵嗙爜",
+      pwdAccess: "纭",
+      pwd: "璇疯緭鍏ュ瘑鐮�",
+      confirmPwd: "璇峰啀娆¤緭鍏ュ瘑鐮�",
+      pwdAccess: "纭",
+      tip: "娉ㄦ剰锛氭偍璁剧疆鐨勫瘑鐮佷綅鏁板簲澶т簬鎴栫瓑浜� 8 浣嶏紝濡傝烦杩囪缃紝璁惧灏嗛噰鐢ㄩ粯璁ゅ瘑鐮併��",
+      skip: "璺宠繃锛屼互鍚庤缃�",
+      success: "瀵嗙爜璁剧疆鎴愬姛",
+      fail: "瀵嗙爜璁剧疆澶辫触",
+      pwdNotMatch: "涓ゆ杈撳叆瀵嗙爜涓嶄竴鑷�",
+    },
+    identityVerificationView: {
+      title: "韬唤楠岃瘉",
+      pwd: "璇疯緭鍏ョ鐞嗗瘑鐮�",
+      pwdAccess: "纭",
+      success: "浜鸿劯楠岃瘉鎴愬姛",
+      fail: "浜鸿劯楠岃瘉澶辫触",
+      pwdLog: "瀵嗙爜鐧诲綍",
+      faceLog: "浜鸿劯鐧诲綍",
+      pwdFail: "瀵嗙爜閿欒",
+    },
+    configView: {
+      title: "璁剧疆鑿滃崟",
+      localUser: "鏈湴鐢ㄦ埛",
+      networkSetting: "缃戠粶璁剧疆",
+      doorControl: "闂ㄧ绠$悊",
+      systemSetting: "绯荤粺璁剧疆",
+      deviceInfo: "璁惧淇℃伅",
+      recordQuery: "璁板綍鏌ヨ",
+      voiceBroadcast: "璇煶鎾姤",
+      cloudCert: "浜戣瘉鍔熻兘",
+      factoryTest: "宸ュ巶娴嬭瘯",
+      help: "浣跨敤甯姪",
+      confirmExit: "纭閫�鍑�",
+      confirmExitContent: "鏄惁纭閫�鍑鸿缃彍鍗曪紵",
+    },
+    cloudCertView: {
+      title: "浜戣瘉鍔熻兘",
+      cloudCertActive: "浜戣瘉婵�娲�",
+      inputKey: "璇疯緭鍏ュ瘑閽�",
+      key: "瀵嗛挜",
+      tip: "娉ㄦ剰锛氫簯璇佸彲浠ラ�氳繃鎵嬭緭瀵嗛挜鎴栨壂鎻廫n涓撶敤浜岀淮鐮佹縺娲伙紝璇︽儏璇疯仈绯诲鏈嶃��",
+      save: "淇濆瓨",
+    },
+    doorControlView: {
+      title: "闂ㄧ绠$悊",
+      save: "淇濆瓨",
+      openDoorRelayDelay: "寮�闂ㄧ户鐢靛櫒寤舵椂",
+      antiTamperAlarm: "闃叉媶鎶ヨ",
+      input: "璇疯緭鍏�",
+      success: "淇濆瓨鎴愬姛",
+      fail: "淇濆瓨澶辫触",
+      mqttAddr: "MQTT鍦板潃",
+      mqttUser: "MQTT璐﹀彿",
+      mqttPwd: "MQTT瀵嗙爜",
+      onlineChecking: "鍦ㄧ嚎楠岃瘉",
+      onlineCheckingTimeout: "鍦ㄧ嚎楠岃瘉瓒呮椂",
+      ms: "姣"
+    },
+    helpView: {
+      title: "浣跨敤甯姪",
+      scanCode: "鎵爜璁块棶瀹樻柟鏁欑▼",
+    },
+    networkSettingView: {
+      title: "缃戠粶璁剧疆",
+      type: "缃戠粶绫诲瀷",
+      ip: "IP",
+      dhcp: "DHCP",
+      mask: "瀛愮綉鎺╃爜",
+      gateway: "缃戝叧",
+      dns: "DNS1",
+      dns2: "DNS2",
+      mac: "MAC",
+      status: "缃戠粶鐘舵��",
+      save: "淇濆瓨",
+      input: "璇疯緭鍏�",
+      ethernet: "浠ュお缃�",
+      wifi: "WiFi",
+      _4G: "4G",
+      networkUnconnected: "缃戠粶鏈繛鎺�",
+      networkConnected: "缃戠粶宸茶繛鎺�",
+      wifiName: "WiFi鍚嶇О",
+      wifiPwd: "WiFi瀵嗙爜",
+      wifiList: "WiFi鍒楄〃",
+      close: "鍏抽棴",
+      confirm: "纭",
+      fail: "淇濆瓨澶辫触",
+      success: "淇濆瓨鎴愬姛",
+    },
+    systemSettingView: {
+      title: "绯荤粺璁剧疆",
+      displaySetting: "鏄剧ず鐣岄潰璁剧疆",
+      faceRecognitionSetting: "浜鸿劯璇嗗埆璁剧疆",
+      swipeCardRecognitionSetting: "鍒峰崱璇嗗埆璁剧疆",
+      passLogSetting: "閫氳鏃ュ織璁剧疆",
+      passwordOpenDoorSetting: "瀵嗙爜寮�闂ㄨ缃�",
+      passwordManagement: "瀵嗙爜绠$悊",
+      timeSetting: "鏃堕棿璁剧疆",
+      restartDevice: "閲嶅惎璁惧",
+      restoreDefaultConfig: "鎭㈠榛樿閰嶇疆",
+      resetDevice: "閲嶇疆璁惧",
+      restart: "閲嶅惎",
+      restoreDefault: "鎭㈠",
+      reset: "閲嶇疆",
+      autoAdjustScreenBrightness: "鑷姩璋冭妭灞忓箷浜害",
+      screenBrightness: "灞忓箷浜害",
+      autoTurnOffScreen: "鑷姩鐔勫睆",
+      autoTurnOffScreenTime: "鑷姩鐔勫睆鏃堕棿",
+      autoScreenSaver: "鑷姩灞忎繚",
+      autoScreenSaverTime: "鑷姩灞忎繚鏃堕棿",
+      displayIp: "鏄剧ずIP鍦板潃",
+      displayDeviceSn: "鏄剧ず璁惧SN",
+      language: "璇█",
+      displayCode: "鏄剧ず灏忕▼搴忕爜",
+      themeMode: "宸ヤ綔涓婚",
+      save: "淇濆瓨",
+      input: "璇疯緭鍏�",
+      faceSimilarityThreshold: "浜鸿劯鐩镐技搴﹂槇鍊�",
+      livenessDetectionFunction: "娲讳綋妫�娴嬪姛鑳�",
+      livenessDetectionThreshold: "娲讳綋妫�娴嬮槇鍊�",
+      infraredImageDisplay: "绾㈠鍥惧儚鏄剧ず",
+      maskRecognition: "鍙g僵璇嗗埆",
+      maskRecognitionThreshold: "鍙g僵璇嗗埆闃堝��",
+      recognitionDistance: "璇嗗埆璺濈",
+      imageSaveType: "鍥惧儚淇濆瓨绫诲瀷",
+      saveStrangerImage: "淇濆瓨闄岀敓浜哄浘鍍�",
+      fullView: "鍏ㄦ櫙",
+      face: "浜鸿劯",
+      swipeCardRecognition: "鍒峰崱鏍搁獙",
+      passwordOpenDoor: "瀵嗙爜寮�闂�",
+      inputOriginalPassword: "璇疯緭鍏ュ師绠$悊瀵嗙爜",
+      inputNewPassword: "璇疯緭鍏ユ柊瀵嗙爜",
+      inputRepeatNewPassword: "璇烽噸澶嶆柊瀵嗙爜",
+      syncMode: "鏃跺尯",
+      ntpAddress: "NTP鍦板潃",
+      timeSyncSuccess: "鏃堕棿涓庢湇鍔″櫒鍚屾鎴愬姛",
+      success: "淇濆瓨鎴愬姛",
+      fail: "淇濆瓨澶辫触",
+      appMode: "APP妯″紡",
+      confirmation: "纭",
+      confirmRestart: "纭閲嶅惎鍚楋紵",
+      confirmRecoveryConfiguration: "纭鎭㈠榛樿閰嶇疆鍚楋紵",
+      confirmReset: "纭閲嶇疆鍚楋紵",
+      min: "鍒嗛挓"
+    },
+    deviceInfoView: {
+      title: "璁惧淇℃伅",
+      systemInfo: "绯荤粺淇℃伅",
+      dataCapacityInfo: "鏁版嵁瀹归噺淇℃伅",
+      deviceQrCode: "璁惧浜岀淮鐮�",
+      miniProgramCode: "灏忕▼搴忕爜",
+      deviceSN: "璁惧SN鍙�",
+      firmwareVersion: "鍥轰欢鐗堟湰鍙�",
+      firmwareReleaseDate: "鍥轰欢鍙戝竷鏃ユ湡",
+      deviceTotalSpace: "璁惧鎬荤┖闂�",
+      deviceUsedSpace: "宸茬敤绌洪棿",
+      deviceRemainingSpace: "鍓╀綑绌洪棿",
+      registeredPersonNum: "娉ㄥ唽浜烘暟",
+      localFaceWhiteListNum: "鏈湴浜鸿劯鐧藉悕鍗曟暟閲�",
+      localPasswordWhiteListNum: "鏈湴瀵嗙爜鐧藉悕鍗曟暟閲�",
+      localSwipeCardWhiteListNum: "鏈湴鍒峰崱鐧藉悕鍗曟暟閲�",
+      passLogTotalNum: "閫氳璁板綍鎬绘暟",
+      updateDevice: "鏇存柊璁惧",
+      currentVersion: "褰撳墠宸茬粡鏄渶鏂扮増鏈紝鏃犻渶鏇存柊鍥轰欢",
+      deviceFreeSpace: "璁惧绌洪棽绌洪棿",
+    },
+    factoryTestView: {
+      title: "宸ュ巶娴嬭瘯",
+      calibration: "鎽勫儚澶存爣瀹�",
+    },
+    localUserView: {
+      title: "鏈湴鐢ㄦ埛",
+      empty: "鏈湴灏氭湭娣诲姞浜哄憳锛�",
+      add: "鏂板浜哄憳",
+      sync: "鍚屾鏈湴浜哄憳鑷冲皬绋嬪簭",
+      search: "濮撳悕鎴朓D",
+      searchBtn: "鎼滅储",
+      edit: "缂栬緫",
+      attention: "娉ㄦ剰",
+      attentionContent:
+        "1銆佽澶囧皢鍚屾璁惧鏈湴鐨勪汉鍛樹俊鎭痋n鑷冲皬绋嬪簭鐨勫鎵瑰垪琛ㄤ腑锛屾墽琛屾垚鍔焅n鍚庤澶囩灏嗘竻闄ゅ凡缁忓綍鍏ョ殑浜哄憳淇n鎭�� \n2銆佷綔涓虹鐞嗗憳锛屾偍鍙互鍦ㄥ皬绋嬪簭涓璡n瀵规湰鍦板悓姝ョ殑浜哄憳杩涜瀹℃壒銆傚鎵筡n閫氳繃骞惰ˉ鍏呭畬蹇呰鐨勫瓧娈靛悗锛岀粍缁嘰n鍐呯殑鍏ㄩ儴璁惧锛屽皢鎷ユ湁姝ゆ鍚屾浜篭n鍛樼殑閫氳鏉冮檺銆俓n姝ゆ搷浣滄棤娉曟挙閿�锛岃闂偍纭畾瑕佸悓\n姝ュ悧锛�",
+      tip: "鎻愮ず",
+      tipContent: "璁惧灏氭湭杩炴帴缃戠粶锛岃鍏堥厤缃綉缁滐紒",
+    },
+    recordQueryView: {
+      title: "璁板綍鏌ヨ",
+      code: "浜哄憳缂栧彿",
+      time: "閫氳鏃堕棿",
+      result: "閫氳缁撴灉",
+      stranger: "闄岀敓浜�",
+      face: "浜鸿劯",
+      card: "鍒峰崱",
+      password: "瀵嗙爜",
+      qrcode: "鎵爜",
+      success: "閫氳鎴愬姛",
+      fail: "閫氳澶辫触",
+    },
+    recordQueryDetailView: {
+      title: "閫氳璁板綍璇︽儏",
+      id: "绗竴鐢ㄦ埛缂栧彿",
+      name: "绗竴鐢ㄦ埛濮撳悕",
+      idCard: "绗竴鐢ㄦ埛韬唤璇佸彿",
+      face: "绗竴鐢ㄦ埛浜鸿劯鎶撴媿",
+      secondId: "绗簩鐢ㄦ埛缂栧彿",
+      secondName: "绗簩鐢ㄦ埛濮撳悕",
+      secondIdCard: "绗簩鐢ㄦ埛韬唤璇佸彿",
+      secondFace: "绗簩鐢ㄦ埛浜鸿劯鎶撴媿",
+      time: "閫氳鏃堕棿",
+      result: "閫氳缁撴灉",
+    },
+    voiceBroadcastView: {
+      title: "璇煶鎾姤",
+      save: "淇濆瓨",
+      strangerVoice: "闄岀敓浜鸿闊�",
+      voiceMode: "璇煶妯″紡",
+      volume: "闊抽噺",
+      success: "淇濆瓨鎴愬姛",
+      fail: "淇濆瓨澶辫触",
+    },
+    confirm: {
+      ok: "纭",
+      no: "鍙栨秷",
+      upgrade: "璁惧鍗囩骇",
+      upgrading: "姝e湪鍗囩骇",
+      upgradeSuccess: "鍗囩骇鎴愬姛",
+      upgradeFail: "鍗囩骇澶辫触",
+      cloudCertActive: "浜戣瘉婵�娲�",
+      cloudCertActiveSuccess: "婵�娲绘垚鍔�",
+      cloudCertActiveFail: "婵�娲诲け璐�",
+      restartDevice: "閲嶅惎璁惧",
+      restartDeviceDis: "閰嶇疆宸叉洿鏂帮紝璁惧鍗冲皢閲嶅惎",
+    },
+    localUserAddView: {
+      title: "鐢ㄦ埛鏂板",
+      title2: "鐢ㄦ埛缂栬緫",
+      save: "淇濆瓨",
+      id: "ID",
+      name: "浜哄憳濮撳悕",
+      idCard: "韬唤璇佸彿",
+      face: "浜鸿劯鍑瘉",
+      pwd: "瀵嗙爜鍑瘉",
+      card: "鍗$墖鍑瘉",
+      type: "浜哄憳绫诲瀷",
+      input: "璇疯緭鍏�",
+      enter: "褰曞叆",
+      generate: "鐢熸垚",
+      edit: "淇敼",
+      reset: "閲嶈",
+      confirm: "纭",
+      confirmDelete: "纭鍒犻櫎",
+      confirmDeleteContent: "鏄惁纭鍒犻櫎",
+      confirmFace: "纭鍒犻櫎浜鸿劯鍑瘉鍚楋紵",
+      confirmPwd: "纭鍒犻櫎瀵嗙爜鍑瘉鍚楋紵",
+      confirmCard: "纭鍒犻櫎鍗$墖鍑瘉鍚楋紵",
+      pwdBoxLbl: "瀵嗙爜鐢熸垚涓�",
+      pwdBoxSaveBtnLbl: "鎹竴涓�",
+      pwdBoxConfirmBtnLbl: "纭畾",
+      cardBoxResetBtnLbl: "閲嶇疆",
+      cardBoxSaveBtnLbl: "淇濆瓨",
+      cardBoxLbl: "璇诲彇鍗$墖涓�",
+      cardBoxInput: "璇峰~鍐欑敤鎴峰崱鍙�",
+      delete: "鍒犻櫎",
+      success: "鎴愬姛",
+      fail: "澶辫触",
+      requiredInfo: "璇峰厛濉啓蹇呭~淇℃伅",
+      preview: "棰勮",
+      failRepeat: "澶辫触锛岀敤鎴稩D閲嶅",
+      failSimilarity: "澶辫触锛屼汉鑴哥浉浼煎害杩囬珮",
+      failCardRepeat: "澶辫触锛屽崱鐗囬噸澶�",
+      failPwdRepeat: "澶辫触锛屽瘑鐮侀噸澶�",
+    },
+    faceEnterView: {
+      title: "浜鸿劯褰曞叆",
+      faceAdd: "浜鸿劯褰曞叆涓紝璇锋瑙嗘憚鍍忓ご",
+      recogFace: "璇嗗埆鍒颁汉鑴�",
+      recogSuccess: "璇嗗埆鎴愬姛",
+      faceError: "瓒呮椂鏈幏鍙�",
+    },
+    faceService: {
+      contrastFailure: "瀵规瘮澶辫触",
+      scalingFailure: "缂╂斁澶辫触",
+      failedToSavePicture: "瀛樺偍鍥剧墖澶辫触",
+      convertToBase64Failed: "鐗瑰緛鍊艰浆base64澶辫触",
+      base64DecodingFailed: "base64瑙g爜澶辫触",
+      similarityOverheight: "鐩镐技搴﹁繃楂�",
+      fileDoesNotExist: "鏂囦欢涓嶅瓨鍦�",
+      theImageFormatIsNotSupported: "鍥剧墖鏍煎紡涓嶆敮鎸�",
+      pictureReadFailure: "鍥剧墖璇诲彇澶辫触",
+      thePictureSizeDoesNotMatch: "鍥剧墖灏哄涓嶇",
+      imageParsingFailure: "鍥剧墖瑙f瀽澶辫触",
+      imageYUVProcessingFailed: "鍥剧墖YUV澶勭悊澶辫触",
+      failedToConvertJpegToImage: "jpeg杞琲mage澶辫触",
+      faceInformationExtractionFailed: "浜鸿劯淇℃伅鎻愬彇澶辫触",
+      theFaceIsNotUnique: "鍥剧墖涓汉鑴镐俊鎭笉鍞竴",
+    }
+  },
+  EN: {
+    mainView: {
+      config: "Settings",
+      pwd: "Password",
+      app: "Mini Program Code",//灞忚斀灏忕▼搴忕爜
+      success: "Access Granted",
+      fail: "Access Denied",
+      passwordDisabled: "Password Access Disabled",
+    },
+    idleView: {
+      week: {
+        0: "Sun",
+        1: "Mon",
+        2: "Tue",
+        3: "Wed",
+        4: "Thu",
+        5: "Fri",
+        6: "Sat",
+      },
+    },
+    appView: {
+      knowed: "Got it",
+      appQrcodeLbl: "Manage with Mini Program",
+    },
+    pwdView: {
+      title: "Password Access",
+      pwd: "Enter Password",
+      pwdAccess: "Confirm",
+      success: "Access Granted",
+      fail: "Access Denied",
+    },
+    newPwdView: {
+      title: "Set Admin Password",
+      pwdAccess: "Confirm",
+      pwd: "Enter Password",
+      confirmPwd: "Confirm Password",
+      pwdAccess: "Confirm",
+      tip: "Note: Password must be at least 8 characters long. Default password will be used if skipped.",
+      skip: "Skip for Now",
+      success: "Password Set Successfully",
+      fail: "Failed to Set Password",
+      pwdNotMatch: "Passwords Don't Match",
+    },
+    identityVerificationView: {
+      title: "Identity Verification",
+      pwd: "Enter Admin Password",
+      pwdAccess: "Confirm",
+      success: "Face Verification Successful",
+      fail: "Face Verification Failed",
+      pwdLog: "Password Login",
+      faceLog: "Face Login",
+      pwdFail: "Wrong Password",
+    },
+    configView: {
+      title: "Settings",
+      localUser: "Local Users",
+      networkSetting: "Network",
+      doorControl: "Access Control",
+      systemSetting: "System",
+      deviceInfo: "Device Info",
+      recordQuery: "Access Logs",
+      voiceBroadcast: "Voice Settings",
+      cloudCert: "Cloud Certificate",
+      factoryTest: "Factory Test",
+      help: "Help",
+      confirmExit: "Exit Settings",
+      confirmExitContent: "Are you sure you want to exit Settings?",
+    },
+    cloudCertView: {
+      title: "Cloud Certificate",
+      cloudCertActive: "Activate Certificate",
+      inputKey: "Enter Key",
+      key: "Key",
+      tip: "Note: Activate using key or QR code scan. Contact support for details.",
+      save: "Save",
+    },
+    doorControlView: {
+      title: "Access Control",
+      save: "Save",
+      openDoorRelayDelay: "Door Release Delay",
+      antiTamperAlarm: "Tamper Alarm",
+      input: "Enter",
+      success: "Saved",
+      fail: "Save Failed",
+      mqttAddr: "MQTT Server",
+      mqttUser: "MQTT Username",
+      mqttPwd: "MQTT Password",
+      onlineChecking: "Online Verification",
+      onlineCheckingTimeout: "Verification Timeout",
+      ms: "ms"
+    },
+    helpView: {
+      title: "Help",
+      scanCode: "Scan for Tutorial",
+    },
+    networkSettingView: {
+      title: "Network",
+      type: "Connection Type",
+      ip: "IP Address",
+      dhcp: "DHCP",
+      mask: "Subnet Mask",
+      gateway: "Gateway",
+      dns: "Primary DNS",
+      dns2: "Secondary DNS",
+      mac: "MAC Address",
+      status: "Status",
+      save: "Save",
+      input: "Enter",
+      ethernet: "Ethernet",
+      wifi: "Wi-Fi",
+      _4G: "4G",
+      networkUnconnected: "Disconnected",
+      networkConnected: "Connected",
+      wifiName: "Network Name",
+      wifiPwd: "Password",
+      wifiList: "Available Networks",
+      close: "Close",
+      confirm: "Confirm",
+      fail: "Save Failed",
+      success: "Saved",
+    },
+    systemSettingView: {
+      title: "System Settings",
+      displaySetting: "Display",
+      faceRecognitionSetting: "Face Recognition",
+      swipeCardRecognitionSetting: "Card Access",
+      passLogSetting: "Access Logs",
+      passwordOpenDoorSetting: "Password Access",
+      passwordManagement: "Password Management",
+      timeSetting: "Date & Time",
+      restartDevice: "Restart",
+      restoreDefaultConfig: "Reset to Default",
+      resetDevice: "Factory Reset",
+      restart: "Restart",
+      restoreDefault: "Reset",
+      reset: "Reset",
+      autoAdjustScreenBrightness: "Auto Brightness",
+      screenBrightness: "Brightness",
+      autoTurnOffScreen: "Auto Screen Off",
+      autoTurnOffScreenTime: "Screen Off Timer",
+      autoScreenSaver: "Screen Saver",
+      autoScreenSaverTime: "Screen Saver Timer",
+      displayIp: "Show IP Address",
+      displayDeviceSn: "Show Device SN",
+      language: "Language",
+      displayCode: "Show Program Code",
+      themeMode: "Work Theme",
+      save: "Save",
+      input: "Enter",
+      faceSimilarityThreshold: "Face Match Threshold",
+      livenessDetectionFunction: "Liveness Detection",
+      livenessDetectionThreshold: "Liveness Threshold",
+      infraredImageDisplay: "IR Display",
+      maskRecognition: "Mask Detection",
+      maskRecognitionThreshold: "Mask Detection Threshold",
+      recognitionDistance: "Detection Range",
+      imageSaveType: "Image Storage Type",
+      saveStrangerImage: "Save Stranger Photos",
+      fullView: "Full View",
+      face: "Face Only",
+      swipeCardRecognition: "Card Verification",
+      passwordOpenDoor: "Password Access",
+      inputOriginalPassword: "Enter Current Password",
+      inputNewPassword: "Enter New Password",
+      inputRepeatNewPassword: "Confirm New Password",
+      syncMode: "Time Zone",
+      ntpAddress: "NTP Server",
+      timeSyncSuccess: "Time Synced Successfully",
+      success: "Saved",
+      fail: "Failed",
+      confirmation: "Confirm",
+      confirmRestart: "Confirm Restart?",
+      confirmRecoveryConfiguration: "Reset to Default Settings?",
+      confirmReset: "Confirm Factory Reset?",
+      min: "min"
+    },
+    deviceInfoView: {
+      title: "Device Info",
+      systemInfo: "System Info",
+      dataCapacityInfo: "Storage Info",
+      deviceQrCode: "Device QR Code",
+      miniProgramCode: "Mini Program Code",
+      deviceSN: "Serial Number",
+      firmwareVersion: "Firmware Version",
+      firmwareReleaseDate: "Release Date",
+      deviceTotalSpace: "Total Storage",
+      deviceUsedSpace: "Used Storage",
+      deviceRemainingSpace: "Available Storage",
+      registeredPersonNum: "Registered Users",
+      localFaceWhiteListNum: "Face Whitelist Count",
+      localPasswordWhiteListNum: "Password Whitelist Count",
+      localSwipeCardWhiteListNum: "Card Whitelist Count",
+      passLogTotalNum: "Total Access Logs",
+      updateDevice: "Update Device",
+      currentVersion: "Device is up to date",
+      deviceFreeSpace: "Free Space",
+    },
+    factoryTestView: {
+      title: "Factory Test",
+      calibration: "Camera Calibration",
+      appMode: "APP Mode",
+    },
+    localUserView: {
+      title: "Local Users",
+      empty: "No Users Added",
+      add: "Add User",
+      sync: "Sync to Mini Program",
+      search: "Search by Name or ID",
+      searchBtn: "Search",
+      edit: "Edit",
+      attention: "Notice",
+      attentionContent:
+        "1. Local user data will be synced to the Mini Program approval list. After successful sync, local user data will be cleared.\n2. As an admin, you can approve synced users in the Mini Program. Once approved and required fields are completed, users will have access to all organization devices.\nThis action cannot be undone. Continue?",
+      tip: "Note",
+      tipContent: "Please connect to network first",
+    },
+    recordQueryView: {
+      title: "Access Logs",
+      code: "User ID",
+      time: "Time",
+      result: "Result",
+      stranger: "Unknown",
+      face: "Face",
+      card: "Card",
+      password: "Password",
+      success: "Granted",
+      fail: "Denied",
+    },
+    recordQueryDetailView: {
+      title: "Access Log Details",
+      id: "User ID",
+      name: "Name",
+      idCard: "ID Number",
+      face: "First Face Photo",
+      secondId: "Second User ID",
+      secondName: "Second Name",
+      secondIdCard: "Second ID Number",
+      secondFace: "Second Face Photo",
+      time: "Access Time",
+      result: "Result",
+    },
+    voiceBroadcastView: {
+      title: "Voice Settings",
+      save: "Save",
+      strangerVoice: "Stranger Alert",
+      voiceMode: "Voice Mode",
+      volume: "Volume",
+      success: "Saved",
+      fail: "Save Failed",
+    },
+    confirm: {
+      ok: "OK",
+      no: "Cancel",
+      upgrade: "Update Device",
+      upgrading: "Updating...",
+      upgradeSuccess: "Update Complete",
+      upgradeFail: "Update Failed",
+      cloudCertActive: "Activate Certificate",
+      cloudCertActiveSuccess: "Activate Success",
+      cloudCertActiveFail: "Activate Failed",
+      restartDevice: "Restart Device",
+      restartDeviceDis: "Configuration updated, device will restart",
+    },
+    localUserAddView: {
+      title: "Add User",
+      title2: "Edit User",
+      save: "Save",
+      id: "ID",
+      name: "Name",
+      idCard: "ID Number",
+      face: "Face ID",
+      pwd: "Password",
+      card: "Access Card",
+      type: "User Type",
+      input: "Enter",
+      enter: "Add",
+      generate: "Generate",
+      edit: "Edit",
+      reset: "Reset",
+      confirm: "Confirm",
+      confirmDelete: "Confirm Delete",
+      confirmDeleteContent: "Delete this item?",
+      confirmFace: "Delete Face ID?",
+      confirmPwd: "Delete Password?",
+      confirmCard: "Delete Access Card?",
+      pwdBoxLbl: "Generating...",
+      pwdBoxSaveBtnLbl: "Generate New",
+      pwdBoxConfirmBtnLbl: "OK",
+      cardBoxResetBtnLbl: "Reset",
+      cardBoxSaveBtnLbl: "Save",
+      cardBoxLbl: "Reading Card...",
+      cardBoxInput: "Enter Card Number",
+      delete: "Delete",
+      success: "Success",
+      fail: "Failed",
+      requiredInfo: "Required Fields Missing",
+      preview: "Preview",
+      failRepeat: "ID Already Exists",
+      failSimilarity: "Face Too Similar",
+      failCardRepeat: "Card Already Exists",
+      failPwdRepeat: "Password Already Exists",
+    },
+    faceEnterView: {
+      title: "Face Enrollment",
+      faceAdd: "Look at Camera",
+      recogFace: "Face Detected",
+      recogSuccess: "Enrollment Complete",
+      faceError: "No Face Detected",
+    },
+    calibrationView: {
+      firstCalibration: "Initial Calibration",
+      secondCalibration: "Secondary Calibration"
+    },
+    faceService: {
+      contrastFailure: "Comparison Failed",
+      scalingFailure: "Scaling Failed",
+      failedToSavePicture: "Failed to Save Image",
+      convertToBase64Failed: "Base64 Conversion Failed",
+      base64DecodingFailed: "Base64 Decode Failed",
+      similarityOverheight: "Face Too Similar",
+      fileDoesNotExist: "File Not Found",
+      theImageFormatIsNotSupported: "Unsupported Image Format",
+      pictureReadFailure: "Failed to Read Image",
+      thePictureSizeDoesNotMatch: "the picture size does not match",
+      imageParsingFailure: "image parsing failure",
+      imageYUVProcessingFailed: "image yuv processing failed",
+      failedToConvertJpegToImage: "failed to convert jpeg to image",
+      faceInformationExtractionFailed: "face information extraction failed",
+      theFaceIsNotUnique: "the face is not unique",
+    }
+  },
+};
+
+export default messages;

--
Gitblit v1.9.3