const fs = require('fs'); const zhHans = { 'index.workplace': 'Zoneyung 工作台', 'index.welcomeBack': '欢迎回来', 'index.systemName': '中扬立库 WMS 仓储管理系统', 'category.inbound': '入库管理', 'category.agv': 'AGV管理', 'category.stock': '库存管理', 'category.other': '其他操作', 'index.pakin': '组托', 'index.orderPakin': '订单入库', 'index.agv_start': 'AGV容器入库', 'index.agv_back': 'AGV容器回库', 'index.stockQuery': '库存查询', 'index.logOut': '退出登录', 'index.copyright': 'copyright © 2022 浙江中扬立库有限公司 all rights reserved.', 'index.noAuth': '无权限或登录过期', 'container.title': '组托', 'container.palletCode': '托盘码', 'container.matCode': '物料码', 'container.scanPallet': '扫码 / 输入托盘码', 'container.scanMat': '扫码 / 输入物料码', 'container.matList': '商品列表', 'container.matName': '品名', 'container.matSpec': '规格', 'container.matBatch': '批号', 'container.matQty': '数量', 'container.modify': '修改', 'container.remove': '移除', 'container.reset': '重置', 'container.confirmComb': '确认组托', 'container.emptyList': '暂无商品,请扫描物料码添加', 'container.modifyInfo': '修改信息', 'container.code': '编码', 'container.confirmRemove': '确认移除', 'container.removeMsg': '是否移除该商品?', 'container.confirmReset': '确认重置', 'container.resetMsg': '是否清空所有商品?', 'container.combMsg': '确认将商品组托入库?', 'toast.palletError': '托盘码有误请重试', 'toast.queryFail': '查询失败', 'toast.modifySuccess': '修改成功', 'toast.removeSuccess': '移除成功', 'toast.scanPalletCode': '请扫描托盘条码', 'toast.qtyNotZero': '组托数量不能为0', 'toast.qtyNotZeroMat': '{0}组托数量不能为0', 'toast.combSuccess': '组托成功', 'toast.combFail': '组托失败', 'toast.resetComplete': '重置完成', 'matSelected.title': '商品信息', 'matSelected.matDetail': '物料详情', 'matSelected.matCode': '商品编码', 'matSelected.matName': '商品名称', 'matSelected.spec': '规格', 'matSelected.batch': '批号', 'matSelected.inputBatch': '请输入批号', 'matSelected.qty': '数量', 'matSelected.confirmExtract': '确认提取', 'toast.inputQty': '请输入数量' }; const en = { 'index.workplace': 'Zoneyung Workspace', 'index.welcomeBack': 'Welcome Back', 'index.systemName': 'Zoneyung AS/RS WMS System', 'category.inbound': 'Inbound Management', 'category.agv': 'AGV Management', 'category.stock': 'Stock Management', 'category.other': 'Other Operations', 'index.pakin': 'Palletizing', 'index.orderPakin': 'Order Inbound', 'index.agv_start': 'AGV Container Inbound', 'index.agv_back': 'AGV Container Return', 'index.stockQuery': 'Stock Query', 'index.logOut': 'Logout', 'index.copyright': 'Copyright © 2022 Zhejiang Zoneyung AS/RS Co., Ltd. All rights reserved.', 'index.noAuth': 'No permissions or login expired', 'container.title': 'Palletizing', 'container.palletCode': 'Pallet Code', 'container.matCode': 'Material Code', 'container.scanPallet': 'Scan / Enter Pallet Code', 'container.scanMat': 'Scan / Enter Material Code', 'container.matList': 'Material List', 'container.matName': 'Name', 'container.matSpec': 'Spec', 'container.matBatch': 'Batch', 'container.matQty': 'Quantity', 'container.modify': 'Modify', 'container.remove': 'Remove', 'container.reset': 'Reset', 'container.confirmComb': 'Confirm Combin.', 'container.emptyList': 'No materials, please scan material code to add', 'container.modifyInfo': 'Modify Info', 'container.code': 'Code', 'container.confirmRemove': 'Confirm Remove', 'container.removeMsg': 'Remove this material?', 'container.confirmReset': 'Confirm Reset', 'container.resetMsg': 'Clear all materials?', 'container.combMsg': 'Confirm to palletize and inbound?', 'toast.palletError': 'Pallet code error, please try again', 'toast.queryFail': 'Query failed', 'toast.modifySuccess': 'Modification successful', 'toast.removeSuccess': 'Removal successful', 'toast.scanPalletCode': 'Please scan pallet code', 'toast.qtyNotZero': 'Palletizing quantity cannot be 0', 'toast.qtyNotZeroMat': '{0} palletizing quantity cannot be 0', 'toast.combSuccess': 'Palletizing successful', 'toast.combFail': 'Palletizing failed', 'toast.resetComplete': 'Reset complete', 'matSelected.title': 'Material Info', 'matSelected.matDetail': 'Material Details', 'matSelected.matCode': 'Material Code', 'matSelected.matName': 'Material Name', 'matSelected.spec': 'Spec', 'matSelected.batch': 'Batch', 'matSelected.inputBatch': 'Please enter batch', 'matSelected.qty': 'Quantity', 'matSelected.confirmExtract': 'Confirm Extract', 'toast.inputQty': 'Please enter quantity' }; const zhHant = Object.assign({}, zhHans); const ja = Object.assign({}, zhHans); const files = [ { path: 'locale/zh-Hans.json', extract: zhHans }, { path: 'locale/en.json', extract: en }, { path: 'locale/zh-Hant.json', extract: zhHant }, { path: 'locale/ja.json', extract: ja } ]; files.forEach(f => { const content = JSON.parse(fs.readFileSync(f.path, 'utf8')); Object.assign(content, f.extract); fs.writeFileSync(f.path, JSON.stringify(content, null, 2), 'utf8'); }); console.log('Update success');