| | |
| | | { |
| | | "app.name": "ZoneYung WMS", |
| | | "locale.auto": "System", |
| | | "locale.en": "English", |
| | | "locale.zh-hans": "简体中文", |
| | | "locale.zh-hant": "繁体中文", |
| | | "locale.ja": "日语", |
| | | "index.title": "Hello i18n", |
| | | "page.login":"Login", |
| | | "page.index":"Index", |
| | | "login":{ |
| | | "login": "login", |
| | | "loging": "loging", |
| | | "user": "username", |
| | | "pwd": "password", |
| | | "inputUser": "Please enter your account", |
| | | "inputPwd":"Please enter your password", |
| | | "remPwd":"remember password" |
| | | "app": { |
| | | "name": "ZoneYung WMS" |
| | | }, |
| | | "index":{ |
| | | "GR": "Goods Receipt", |
| | | "palletizing": "Palletizing", |
| | | "palletBuilding":"Pallet Building", |
| | | "inspectionRequest":"Inspection Request", |
| | | "qualityInspection":"Quality Inspection", |
| | | "defectiveMarking":"Defective Marking", |
| | | "manualPutaway":"Manual Putaway", |
| | | "stationBinding":"Station Binding", |
| | | "inboundInitiation":"Inbound Initiation", |
| | | "stationUnbinding":"Station Unbinding", |
| | | "bindAndInbound":"Binding And Inbound", |
| | | "quickPicking":"Quick Picking", |
| | | "wavePick":"Wave Picking", |
| | | "outLogin":"Login Out", |
| | | "language-change-confirm":"chenge", |
| | | "hello":"Hello, welcome to log in to the WMS system!", |
| | | "intro":"Make manufacturing and logistics more efficient", |
| | | "checkOrder":"checkOrder" |
| | | |
| | | |
| | | "locale": { |
| | | "auto": "System", |
| | | "en": "English", |
| | | "zh-hans": "简体中文", |
| | | "zh-hant": "繁体中文", |
| | | "ja": "日语" |
| | | }, |
| | | "other":{ |
| | | |
| | | "index": { |
| | | "title": "Hello i18n", |
| | | "GR": "Goods Receipt", |
| | | "palletizing": "Palletizing", |
| | | "palletBuilding": "Pallet Building", |
| | | "inspectionRequest": "Inspection Request", |
| | | "qualityInspection": "Quality Inspection", |
| | | "defectiveMarking": "Defective Marking", |
| | | "manualPutaway": "Manual Putaway", |
| | | "stationBinding": "Station Binding", |
| | | "inboundInitiation": "Inbound Initiation", |
| | | "stationUnbinding": "Station Unbinding", |
| | | "bindAndInbound": "Binding And Inbound", |
| | | "quickPicking": "Quick Picking", |
| | | "wavePick": "Wave Picking", |
| | | "outLogin": "Login Out", |
| | | "language-change-confirm": "chenge", |
| | | "hello": "Hello, welcome to log in to the WMS system!", |
| | | "intro": "Make manufacturing and logistics more efficient", |
| | | "checkOrder": "checkOrder", |
| | | "workplace": "Zoneyung Workspace", |
| | | "welcomeBack": "Welcome Back", |
| | | "systemName": "Zoneyung AS/RS WMS System", |
| | | "pakin": "Palletizing", |
| | | "orderPakin": "Order Inbound", |
| | | "agv_start": "AGV Container Inbound", |
| | | "agv_back": "AGV Container Return", |
| | | "stockQuery": "Stock Query", |
| | | "logOut": "Logout", |
| | | "copyright": "Copyright © 2022 Zhejiang Zoneyung AS/RS Co., Ltd. All rights reserved.", |
| | | "noAuth": "No permissions or login expired" |
| | | }, |
| | | "page": { |
| | | "login": "Login", |
| | | "index": "Index" |
| | | }, |
| | | "login": { |
| | | "login": "login", |
| | | "loging": "loging", |
| | | "user": "username", |
| | | "pwd": "password", |
| | | "inputUser": "Please enter your account", |
| | | "inputPwd": "Please enter your password", |
| | | "remPwd": "remember password" |
| | | }, |
| | | "other": {}, |
| | | "settings": { |
| | | "title": "Settings", |
| | | "ip": "IP Address", |
| | | "port": "Port", |
| | | "project": "Project Name", |
| | | "saved": "Settings Saved", |
| | | "authTitle": "Authentication", |
| | | "inputAuthPwd": "Enter Admin Password", |
| | | "authError": "Incorrect Password" |
| | | "title": "Settings", |
| | | "ip": "IP Address", |
| | | "port": "Port", |
| | | "project": "Project Name", |
| | | "saved": "Settings Saved", |
| | | "authTitle": "Authentication", |
| | | "inputAuthPwd": "Enter Admin Password", |
| | | "authError": "Incorrect Password" |
| | | }, |
| | | "common": { |
| | | "confirm": "Confirm", |
| | | "cancel": "Cancel" |
| | | "confirm": "Confirm", |
| | | "cancel": "Cancel" |
| | | }, |
| | | "category": { |
| | | "inbound": "Inbound Management", |
| | | "agv": "AGV Management", |
| | | "stock": "Stock Management", |
| | | "other": "Other Operations" |
| | | }, |
| | | "container": { |
| | | "title": "Palletizing", |
| | | "palletCode": "Pallet Code", |
| | | "matCode": "Material Code", |
| | | "scanPallet": "Scan / Enter Pallet Code", |
| | | "scanMat": "Scan / Enter Material Code", |
| | | "matList": "Material List", |
| | | "matName": "Name", |
| | | "matSpec": "Spec", |
| | | "matBatch": "Batch", |
| | | "matQty": "Quantity", |
| | | "modify": "Modify", |
| | | "remove": "Remove", |
| | | "reset": "Reset", |
| | | "confirmComb": "Confirm Combin.", |
| | | "emptyList": "No materials, please scan material code to add", |
| | | "modifyInfo": "Modify Info", |
| | | "code": "Code", |
| | | "confirmRemove": "Confirm Remove", |
| | | "removeMsg": "Remove this material?", |
| | | "confirmReset": "Confirm Reset", |
| | | "resetMsg": "Clear all materials?", |
| | | "combMsg": "Confirm to palletize and inbound?" |
| | | }, |
| | | "toast": { |
| | | "palletError": "Pallet code error, please try again", |
| | | "queryFail": "Query failed", |
| | | "modifySuccess": "Modification successful", |
| | | "removeSuccess": "Removal successful", |
| | | "scanPalletCode": "Please scan pallet code", |
| | | "qtyNotZero": "Palletizing quantity cannot be 0", |
| | | "qtyNotZeroMat": "{0} palletizing quantity cannot be 0", |
| | | "combSuccess": "Palletizing successful", |
| | | "combFail": "Palletizing failed", |
| | | "resetComplete": "Reset complete", |
| | | "inputQty": "Please enter quantity" |
| | | }, |
| | | "matSelected": { |
| | | "title": "Material Info", |
| | | "matDetail": "Material Details", |
| | | "matCode": "Material Code", |
| | | "matName": "Material Name", |
| | | "spec": "Spec", |
| | | "batch": "Batch", |
| | | "inputBatch": "Please enter batch", |
| | | "qty": "Quantity", |
| | | "confirmExtract": "Confirm Extract" |
| | | } |
| | | } |
| | | } |
| | |
| | | { |
| | | "locale.auto": "システム", |
| | | "locale.en": "英語", |
| | | "locale.zh-hans": "简体中文", |
| | | "locale.zh-hant": "繁体中文", |
| | | "locale.ja": "日语", |
| | | "index.title": "Hello i18n", |
| | | "index.home": "ホーム", |
| | | "index.component": "コンポーネント", |
| | | "index.api": "API", |
| | | "index.schema": "Schema", |
| | | "index.demo": "uni-app globalization", |
| | | "index.demo-description": "ユニフレームワーク、manifest.json、pages.json、タブバー、ページ、コンポーネント、APIを含める、Schema", |
| | | "index.detail": "詳細", |
| | | "index.language": "言語", |
| | | "index.language-info": "設定", |
| | | "index.system-language": "システム言語", |
| | | "index.application-language": "アプリケーション言語", |
| | | "index.language-change-confirm": "この設定を適用すると、アプリが再起動します", |
| | | "api.message": "メッセージ", |
| | | "schema.add": "追加", |
| | | "schema.add-success": "成功を追加" |
| | | } |
| | | "locale": { |
| | | "auto": "システム", |
| | | "en": "英語", |
| | | "zh-hans": "简体中文", |
| | | "zh-hant": "繁体中文", |
| | | "ja": "日语" |
| | | }, |
| | | "index": { |
| | | "title": "Hello i18n", |
| | | "home": "ホーム", |
| | | "component": "コンポーネント", |
| | | "api": "API", |
| | | "schema": "Schema", |
| | | "demo": "uni-app globalization", |
| | | "demo-description": "ユニフレームワーク、manifest.json、pages.json、タブバー、ページ、コンポーネント、APIを含める、Schema", |
| | | "detail": "詳細", |
| | | "language": "言語", |
| | | "language-info": "設定", |
| | | "system-language": "システム言語", |
| | | "application-language": "アプリケーション言語", |
| | | "language-change-confirm": "この設定を適用すると、アプリが再起動します", |
| | | "workplace": "Zoneyung 工作台", |
| | | "welcomeBack": "欢迎回来", |
| | | "systemName": "中扬立库 WMS 仓储管理系统", |
| | | "pakin": "组托", |
| | | "orderPakin": "订单入库", |
| | | "agv_start": "AGV容器入库", |
| | | "agv_back": "AGV容器回库", |
| | | "stockQuery": "库存查询", |
| | | "logOut": "退出登录", |
| | | "copyright": "copyright © 2022 浙江中扬立库有限公司 all rights reserved.", |
| | | "noAuth": "无权限或登录过期" |
| | | }, |
| | | "api": { |
| | | "message": "メッセージ" |
| | | }, |
| | | "schema": { |
| | | "add": "追加", |
| | | "add-success": "成功を追加" |
| | | }, |
| | | "category": { |
| | | "inbound": "入库管理", |
| | | "agv": "AGV管理", |
| | | "stock": "库存管理", |
| | | "other": "其他操作" |
| | | }, |
| | | "container": { |
| | | "title": "组托", |
| | | "palletCode": "托盘码", |
| | | "matCode": "物料码", |
| | | "scanPallet": "扫码 / 输入托盘码", |
| | | "scanMat": "扫码 / 输入物料码", |
| | | "matList": "商品列表", |
| | | "matName": "品名", |
| | | "matSpec": "规格", |
| | | "matBatch": "批号", |
| | | "matQty": "数量", |
| | | "modify": "修改", |
| | | "remove": "移除", |
| | | "reset": "重置", |
| | | "confirmComb": "确认组托", |
| | | "emptyList": "暂无商品,请扫描物料码添加", |
| | | "modifyInfo": "修改信息", |
| | | "code": "编码", |
| | | "confirmRemove": "确认移除", |
| | | "removeMsg": "是否移除该商品?", |
| | | "confirmReset": "确认重置", |
| | | "resetMsg": "是否清空所有商品?", |
| | | "combMsg": "确认将商品组托入库?" |
| | | }, |
| | | "toast": { |
| | | "palletError": "托盘码有误请重试", |
| | | "queryFail": "查询失败", |
| | | "modifySuccess": "修改成功", |
| | | "removeSuccess": "移除成功", |
| | | "scanPalletCode": "请扫描托盘条码", |
| | | "qtyNotZero": "组托数量不能为0", |
| | | "qtyNotZeroMat": "{0}组托数量不能为0", |
| | | "combSuccess": "组托成功", |
| | | "combFail": "组托失败", |
| | | "resetComplete": "重置完成", |
| | | "inputQty": "请输入数量" |
| | | }, |
| | | "matSelected": { |
| | | "title": "商品信息", |
| | | "matDetail": "物料详情", |
| | | "matCode": "商品编码", |
| | | "matName": "商品名称", |
| | | "spec": "规格", |
| | | "batch": "批号", |
| | | "inputBatch": "请输入批号", |
| | | "qty": "数量", |
| | | "confirmExtract": "确认提取" |
| | | } |
| | | } |
| | |
| | | }, |
| | | "ios": {}, |
| | | "android": {} |
| | | } |
| | | } |
| | |
| | | { |
| | | "app.name": "中扬 WMS", |
| | | "locale.auto": "系统", |
| | | "locale.en": "English", |
| | | "locale.zh-hans": "简体中文", |
| | | "locale.zh-hant": "繁体中文", |
| | | "locale.ja": "日语", |
| | | "index.title": "Hello i18n", |
| | | "index.home": "主页", |
| | | "page.login":"登录", |
| | | "page.index":"首页", |
| | | "login":{ |
| | | "login": "登录", |
| | | "loging": "登录中", |
| | | "user": "账号", |
| | | "pwd": "密码", |
| | | "inputUser": "请输入账号", |
| | | "inputPwd":"请输入密码", |
| | | "remPwd":"记住密码" |
| | | }, |
| | | "index":{ |
| | | "GR": "单据收货", |
| | | "palletizing": "单据组托", |
| | | "palletBuilding":"组托解绑", |
| | | "inspectionRequest":"报检", |
| | | "qualityInspection":"质检", |
| | | "defectiveMarking":"不良标记", |
| | | "manualPutaway":"人工上架", |
| | | "stationBinding":"站点绑定", |
| | | "inboundInitiation":"启动入库", |
| | | "stationUnbinding":"站点解绑", |
| | | "bindAndInbound":"绑定&入库", |
| | | "quickPicking":"快速拣货", |
| | | "wavePick":"波次拣货", |
| | | "outLogin":"退出登录", |
| | | "language-change-confirm":"确定切换?", |
| | | "hello":"您好,欢迎登录WMS系统!", |
| | | "intro":"让制造与物流更高效", |
| | | "checkOrder":"盘点" |
| | | |
| | | |
| | | }, |
| | | "other":{ |
| | | "asnNo":"ASN单号" |
| | | |
| | | }, |
| | | "settings": { |
| | | "title": "设置", |
| | | "ip": "IP地址", |
| | | "port": "端口", |
| | | "project": "项目名", |
| | | "saved": "设置已保存", |
| | | "authTitle": "身份验证", |
| | | "inputAuthPwd": "请输入管理员密码", |
| | | "authError": "密码错误" |
| | | }, |
| | | "common": { |
| | | "confirm": "确认", |
| | | "cancel": "取消" |
| | | } |
| | | } |
| | | "app": { |
| | | "name": "中扬 WMS" |
| | | }, |
| | | "locale": { |
| | | "auto": "系统", |
| | | "en": "English", |
| | | "zh-hans": "简体中文", |
| | | "zh-hant": "繁体中文", |
| | | "ja": "日语" |
| | | }, |
| | | "index": { |
| | | "title": "Hello i18n", |
| | | "home": "主页", |
| | | "GR": "单据收货", |
| | | "palletizing": "单据组托", |
| | | "palletBuilding": "组托解绑", |
| | | "inspectionRequest": "报检", |
| | | "qualityInspection": "质检", |
| | | "defectiveMarking": "不良标记", |
| | | "manualPutaway": "人工上架", |
| | | "stationBinding": "站点绑定", |
| | | "inboundInitiation": "启动入库", |
| | | "stationUnbinding": "站点解绑", |
| | | "bindAndInbound": "绑定&入库", |
| | | "quickPicking": "快速拣货", |
| | | "wavePick": "波次拣货", |
| | | "outLogin": "退出登录", |
| | | "language-change-confirm": "确定切换?", |
| | | "hello": "您好,欢迎登录WMS系统!", |
| | | "intro": "让制造与物流更高效", |
| | | "checkOrder": "盘点", |
| | | "workplace": "Zoneyung 工作台", |
| | | "welcomeBack": "欢迎回来", |
| | | "systemName": "中扬立库 WMS 仓储管理系统", |
| | | "pakin": "组托", |
| | | "orderPakin": "订单入库", |
| | | "agv_start": "AGV容器入库", |
| | | "agv_back": "AGV容器回库", |
| | | "stockQuery": "库存查询", |
| | | "logOut": "退出登录", |
| | | "copyright": "copyright © 2022 浙江中扬立库有限公司 all rights reserved.", |
| | | "noAuth": "无权限或登录过期" |
| | | }, |
| | | "page": { |
| | | "login": "登录", |
| | | "index": "首页" |
| | | }, |
| | | "login": { |
| | | "login": "登录", |
| | | "loging": "登录中", |
| | | "user": "账号", |
| | | "pwd": "密码", |
| | | "inputUser": "请输入账号", |
| | | "inputPwd": "请输入密码", |
| | | "remPwd": "记住密码" |
| | | }, |
| | | "other": { |
| | | "asnNo": "ASN单号" |
| | | }, |
| | | "settings": { |
| | | "title": "设置", |
| | | "ip": "IP地址", |
| | | "port": "端口", |
| | | "project": "项目名", |
| | | "saved": "设置已保存", |
| | | "authTitle": "身份验证", |
| | | "inputAuthPwd": "请输入管理员密码", |
| | | "authError": "密码错误" |
| | | }, |
| | | "common": { |
| | | "confirm": "确认", |
| | | "cancel": "取消" |
| | | }, |
| | | "category": { |
| | | "inbound": "入库管理", |
| | | "agv": "AGV管理", |
| | | "stock": "库存管理", |
| | | "other": "其他操作" |
| | | }, |
| | | "container": { |
| | | "title": "组托", |
| | | "palletCode": "托盘码", |
| | | "matCode": "物料码", |
| | | "scanPallet": "扫码 / 输入托盘码", |
| | | "scanMat": "扫码 / 输入物料码", |
| | | "matList": "商品列表", |
| | | "matName": "品名", |
| | | "matSpec": "规格", |
| | | "matBatch": "批号", |
| | | "matQty": "数量", |
| | | "modify": "修改", |
| | | "remove": "移除", |
| | | "reset": "重置", |
| | | "confirmComb": "确认组托", |
| | | "emptyList": "暂无商品,请扫描物料码添加", |
| | | "modifyInfo": "修改信息", |
| | | "code": "编码", |
| | | "confirmRemove": "确认移除", |
| | | "removeMsg": "是否移除该商品?", |
| | | "confirmReset": "确认重置", |
| | | "resetMsg": "是否清空所有商品?", |
| | | "combMsg": "确认将商品组托入库?" |
| | | }, |
| | | "toast": { |
| | | "palletError": "托盘码有误请重试", |
| | | "queryFail": "查询失败", |
| | | "modifySuccess": "修改成功", |
| | | "removeSuccess": "移除成功", |
| | | "scanPalletCode": "请扫描托盘条码", |
| | | "qtyNotZero": "组托数量不能为0", |
| | | "qtyNotZeroMat": "{0}组托数量不能为0", |
| | | "combSuccess": "组托成功", |
| | | "combFail": "组托失败", |
| | | "resetComplete": "重置完成", |
| | | "inputQty": "请输入数量" |
| | | }, |
| | | "matSelected": { |
| | | "title": "商品信息", |
| | | "matDetail": "物料详情", |
| | | "matCode": "商品编码", |
| | | "matName": "商品名称", |
| | | "spec": "规格", |
| | | "batch": "批号", |
| | | "inputBatch": "请输入批号", |
| | | "qty": "数量", |
| | | "confirmExtract": "确认提取" |
| | | } |
| | | } |
| | |
| | | { |
| | | "locale.auto": "系統", |
| | | "locale.en": "English", |
| | | "locale.zh-hans": "简体中文", |
| | | "locale.zh-hant": "繁體中文", |
| | | "locale.ja": "日语", |
| | | "index.title": "Hello i18n", |
| | | "index.home": "主頁", |
| | | "login.login": "登录" |
| | | } |
| | | "locale": { |
| | | "auto": "系統", |
| | | "en": "English", |
| | | "zh-hans": "简体中文", |
| | | "zh-hant": "繁體中文", |
| | | "ja": "日语" |
| | | }, |
| | | "index": { |
| | | "title": "Hello i18n", |
| | | "home": "主頁", |
| | | "workplace": "Zoneyung 工作台", |
| | | "welcomeBack": "欢迎回来", |
| | | "systemName": "中扬立库 WMS 仓储管理系统", |
| | | "pakin": "组托", |
| | | "orderPakin": "订单入库", |
| | | "agv_start": "AGV容器入库", |
| | | "agv_back": "AGV容器回库", |
| | | "stockQuery": "库存查询", |
| | | "logOut": "退出登录", |
| | | "copyright": "copyright © 2022 浙江中扬立库有限公司 all rights reserved.", |
| | | "noAuth": "无权限或登录过期" |
| | | }, |
| | | "login": { |
| | | "login": "登录" |
| | | }, |
| | | "category": { |
| | | "inbound": "入库管理", |
| | | "agv": "AGV管理", |
| | | "stock": "库存管理", |
| | | "other": "其他操作" |
| | | }, |
| | | "container": { |
| | | "title": "组托", |
| | | "palletCode": "托盘码", |
| | | "matCode": "物料码", |
| | | "scanPallet": "扫码 / 输入托盘码", |
| | | "scanMat": "扫码 / 输入物料码", |
| | | "matList": "商品列表", |
| | | "matName": "品名", |
| | | "matSpec": "规格", |
| | | "matBatch": "批号", |
| | | "matQty": "数量", |
| | | "modify": "修改", |
| | | "remove": "移除", |
| | | "reset": "重置", |
| | | "confirmComb": "确认组托", |
| | | "emptyList": "暂无商品,请扫描物料码添加", |
| | | "modifyInfo": "修改信息", |
| | | "code": "编码", |
| | | "confirmRemove": "确认移除", |
| | | "removeMsg": "是否移除该商品?", |
| | | "confirmReset": "确认重置", |
| | | "resetMsg": "是否清空所有商品?", |
| | | "combMsg": "确认将商品组托入库?" |
| | | }, |
| | | "toast": { |
| | | "palletError": "托盘码有误请重试", |
| | | "queryFail": "查询失败", |
| | | "modifySuccess": "修改成功", |
| | | "removeSuccess": "移除成功", |
| | | "scanPalletCode": "请扫描托盘条码", |
| | | "qtyNotZero": "组托数量不能为0", |
| | | "qtyNotZeroMat": "{0}组托数量不能为0", |
| | | "combSuccess": "组托成功", |
| | | "combFail": "组托失败", |
| | | "resetComplete": "重置完成", |
| | | "inputQty": "请输入数量" |
| | | }, |
| | | "matSelected": { |
| | | "title": "商品信息", |
| | | "matDetail": "物料详情", |
| | | "matCode": "商品编码", |
| | | "matName": "商品名称", |
| | | "spec": "规格", |
| | | "batch": "批号", |
| | | "inputBatch": "请输入批号", |
| | | "qty": "数量", |
| | | "confirmExtract": "确认提取" |
| | | } |
| | | } |
| | |
| | | { |
| | | "path": "pages/home/home", |
| | | "style": { |
| | | "navigationBarTitleText": "首页", |
| | | "navigationBarTitleText": "%index.home%", |
| | | "navigationStyle": "custom" |
| | | } |
| | | }, |
| | | { |
| | | "path": "pages/InManagement/ContainerBinding/Container_Binding", |
| | | "style": { |
| | | "navigationBarTitleText": "容器绑定", |
| | | "navigationBarTitleText": "%container.title%", |
| | | "navigationStyle": "custom" |
| | | } |
| | | }, |
| | | { |
| | | "path": "pages/mat/matSelected", |
| | | "style": { |
| | | "navigationBarTitleText": "物料编辑", |
| | | "navigationBarTitleText": "%matSelected.title%", |
| | | "navigationStyle": "custom" |
| | | } |
| | | }, |
| | |
| | | <view class="page-container"> |
| | | <!-- 头部导航 --> |
| | | <u-navbar |
| | | title="组托" |
| | | :title="$t('container.title')" |
| | | :fixed="true" |
| | | :placeholder="true" |
| | | bgColor="#ffffff" |
| | |
| | | color="#409eff" |
| | | customStyle="margin-right: 10rpx;" |
| | | ></u-icon> |
| | | <text class="label-text">托盘码</text> |
| | | <text class="label-text">{{ $t('container.palletCode') }}</text> |
| | | </view> |
| | | </template> |
| | | <view class="input-wrap"> |
| | | <u--input |
| | | v-model="barcode" |
| | | placeholder="扫码 / 输入托盘码" |
| | | :placeholder="$t('container.scanPallet')" |
| | | clearable |
| | | border="none" |
| | | :focus="barcodeFocus" |
| | |
| | | color="#409eff" |
| | | customStyle="margin-right: 10rpx;" |
| | | ></u-icon> |
| | | <text class="label-text">物料码</text> |
| | | <text class="label-text">{{ $t('container.matCode') }}</text> |
| | | </view> |
| | | </template> |
| | | <view class="input-wrap"> |
| | | <u--input |
| | | v-model="matnr" |
| | | placeholder="扫码 / 输入物料码" |
| | | :placeholder="$t('container.scanMat')" |
| | | clearable |
| | | border="none" |
| | | :focus="matFocus" |
| | |
| | | <view class="list-header"> |
| | | <view class="title-indicator"></view> |
| | | <text class="header-title"> |
| | | 商品列表 ({{ dataList.length }}) |
| | | {{ $t('container.matList') }} ({{ dataList.length }}) |
| | | </text> |
| | | </view> |
| | | |
| | |
| | | |
| | | <view class="card-content"> |
| | | <view class="info-row"> |
| | | <text class="info-label">品名</text> |
| | | <text class="info-label">{{ $t('container.matName') }}</text> |
| | | <text class="info-value"> |
| | | {{ item.maktx || '-' }} |
| | | </text> |
| | | </view> |
| | | <view class="info-row"> |
| | | <view class="info-col"> |
| | | <text class="info-label">规格</text> |
| | | <text class="info-label">{{ $t('container.matSpec') }}</text> |
| | | <text class="info-value"> |
| | | {{ item.specs || '-' }} |
| | | </text> |
| | | </view> |
| | | <view class="info-col"> |
| | | <text class="info-label">批号</text> |
| | | <text class="info-label">{{ $t('container.matBatch') }}</text> |
| | | <text class="info-value highlight"> |
| | | {{ item.batch || '-' }} |
| | | </text> |
| | |
| | | </view> |
| | | <view class="info-row"> |
| | | <view class="info-col"> |
| | | <text class="info-label">数量</text> |
| | | <text class="info-label">{{ $t('container.matQty') }}</text> |
| | | <text class="info-value qty"> |
| | | {{ item.anfme }} |
| | | </text> |
| | |
| | | type="primary" |
| | | size="small" |
| | | plain |
| | | text="修改" |
| | | :text="$t('container.modify')" |
| | | @click="revise(item, i)" |
| | | customStyle="width: 140rpx; margin: 0;" |
| | | ></u-button> |
| | |
| | | type="error" |
| | | size="small" |
| | | plain |
| | | text="移除" |
| | | :text="$t('container.remove')" |
| | | @click="remove(item, i)" |
| | | customStyle="width: 140rpx; margin: 0;" |
| | | ></u-button> |
| | |
| | | <u-empty |
| | | v-if="dataList.length === 0" |
| | | mode="list" |
| | | text="暂无商品,请扫描物料码添加" |
| | | :text="$t('container.emptyList')" |
| | | marginTop="40" |
| | | ></u-empty> |
| | | </view> |
| | |
| | | <view class="btn-wrap"> |
| | | <u-button |
| | | type="info" |
| | | text="重置" |
| | | :text="$t('container.reset')" |
| | | @click="resetConfirmBtn" |
| | | ></u-button> |
| | | </view> |
| | |
| | | > |
| | | <u-button |
| | | type="primary" |
| | | text="确认组托" |
| | | :text="$t('container.confirmComb')" |
| | | @click="combConfirmBtn" |
| | | :disabled="dataList.length === 0" |
| | | :throttleTime="1500" |
| | |
| | | @close="showRevise = false" |
| | | > |
| | | <view class="popup-card"> |
| | | <view class="popup-header"><text>修改信息</text></view> |
| | | <view class="popup-header"><text>{{ $t('container.modifyInfo') }}</text></view> |
| | | <view class="popup-body"> |
| | | <u--form |
| | | labelWidth="80" |
| | | labelPosition="left" |
| | | > |
| | | <u-form-item label="编码"> |
| | | <u-form-item :label="$t('container.code')"> |
| | | <text class="popup-text-val">{{ editMatnr }}</text> |
| | | </u-form-item> |
| | | <u-form-item label="批号"> |
| | | <u-form-item :label="$t('container.matBatch')"> |
| | | <u--input |
| | | v-model="batch" |
| | | placeholder="输入批号" |
| | | :placeholder="$t('matSelected.inputBatch')" |
| | | border="surround" |
| | | ></u--input> |
| | | </u-form-item> |
| | | <u-form-item label="数量"> |
| | | <u-form-item :label="$t('container.matQty')"> |
| | | <u-number-box |
| | | v-model="count" |
| | | :step="0.01" |
| | |
| | | </view> |
| | | <view class="popup-footer"> |
| | | <u-button |
| | | text="取消" |
| | | :text="$t('common.cancel')" |
| | | @click="showRevise = false" |
| | | customStyle="margin-right: 20rpx; flex: 1;" |
| | | ></u-button> |
| | | <u-button |
| | | type="primary" |
| | | text="确认" |
| | | :text="$t('common.confirm')" |
| | | @click="reviseConfirm" |
| | | customStyle="flex: 1;" |
| | | ></u-button> |
| | |
| | | <!-- 模态框 --> |
| | | <u-modal |
| | | :show="showRemove" |
| | | title="确认移除" |
| | | content="是否移除该商品?" |
| | | :title="$t('container.confirmRemove')" |
| | | :content="$t('container.removeMsg')" |
| | | showCancelButton |
| | | @confirm="removeConfirm" |
| | | @cancel="showRemove = false" |
| | | ></u-modal> |
| | | <u-modal |
| | | :show="showComb" |
| | | title="确认组托" |
| | | content="确认将商品组托入库?" |
| | | :title="$t('container.confirmComb')" |
| | | :content="$t('container.combMsg')" |
| | | showCancelButton |
| | | @confirm="comb" |
| | | @cancel="showComb = false" |
| | | ></u-modal> |
| | | <u-modal |
| | | :show="showReset" |
| | | title="确认重置" |
| | | content="是否清空所有商品?" |
| | | :title="$t('container.confirmReset')" |
| | | :content="$t('container.resetMsg')" |
| | | showCancelButton |
| | | @confirm="resetConfirm" |
| | | @cancel="showReset = false" |
| | |
| | | if (len > 0 && len !== 8 && len !== 9) { |
| | | this.$showToast({ |
| | | type: 'error', |
| | | message: '托盘码有误请重试' |
| | | message: this.$t('toast.palletError') |
| | | }) |
| | | this.barcodeFocuss() |
| | | return |
| | |
| | | if (!data && data !== null) { |
| | | this.$showToast({ |
| | | type: 'error', |
| | | message: msg || '查询失败' |
| | | message: msg || this.$t('toast.queryFail') |
| | | }) |
| | | } |
| | | } |
| | |
| | | this.dataList[this.rowNum].batch = this.batch |
| | | this.dataList[this.rowNum].weight = this.weight |
| | | this.editMatnr = '' |
| | | this.$showToast({ type: 'success', message: '修改成功' }) |
| | | this.$showToast({ type: 'success', message: this.$t('toast.modifySuccess') }) |
| | | this.showRevise = false |
| | | }, |
| | | remove(item, i) { |
| | |
| | | }, |
| | | removeConfirm() { |
| | | this.dataList.splice(this.removeNum, 1) |
| | | this.$showToast({ type: 'success', message: '移除成功' }) |
| | | this.$showToast({ type: 'success', message: this.$t('toast.removeSuccess') }) |
| | | this.showRemove = false |
| | | }, |
| | | combConfirmBtn() { |
| | |
| | | }, |
| | | async comb() { |
| | | if (this.barcode === '') { |
| | | this.$showToast({ type: 'error', message: '请扫描托盘条码' }) |
| | | this.$showToast({ type: 'error', message: this.$t('toast.scanPalletCode') }) |
| | | this.showComb = false |
| | | return |
| | | } |
| | |
| | | ) { |
| | | this.$showToast({ |
| | | type: 'error', |
| | | message: this.dataList[i].matnr + '组托数量不能为0' |
| | | message: this.$t('toast.qtyNotZeroMat').replace('{0}', this.dataList[i].matnr) |
| | | }) |
| | | this.showComb = false |
| | | return |
| | |
| | | |
| | | if (code === 200) { |
| | | this.resst() |
| | | this.$showToast({ type: 'success', message: '组托成功' }) |
| | | this.$showToast({ type: 'success', message: this.$t('toast.combSuccess') }) |
| | | } else if (code === 403) { |
| | | this.$showToast({ type: 'error', message: msg }) |
| | | setTimeout(() => { |
| | |
| | | } else { |
| | | this.$showToast({ |
| | | type: 'error', |
| | | message: msg || '组托失败' |
| | | message: msg || this.$t('toast.combFail') |
| | | }) |
| | | } |
| | | } catch (err) { |
| | |
| | | resetConfirm() { |
| | | this.dataList = [] |
| | | this.barcode = '' |
| | | this.$showToast({ type: 'success', message: '重置完成' }) |
| | | this.$showToast({ type: 'success', message: this.$t('toast.resetComplete') }) |
| | | this.showReset = false |
| | | }, |
| | | resst() { |
| | |
| | | <view class="page-container"> |
| | | <!-- 头部导航 --> |
| | | <u-navbar |
| | | title="Zoneyung 工作台" |
| | | :title="$t('index.workplace')" |
| | | :fixed="true" |
| | | :placeholder="true" |
| | | bgColor="#ffffff" |
| | |
| | | <!-- 欢迎信息 / 用户信息 --> |
| | | <view class="welcome-box"> |
| | | <view class="welcome-info"> |
| | | <text class="greeting">欢迎回来</text> |
| | | <text class="date-text">中扬立库 WMS 仓储管理系统</text> |
| | | <text class="greeting">{{ $t('index.welcomeBack') }}</text> |
| | | <text class="date-text">{{ $t('index.systemName') }}</text> |
| | | </view> |
| | | <view class="welcome-avatar"> |
| | | <!-- 可替换为真实头像 --> |
| | |
| | | <view class="category-header"> |
| | | <view class="category-title-wrapper"> |
| | | <view class="title-indicator"></view> |
| | | <text class="category-title">其他操作</text> |
| | | <text class="category-title">{{ $t('category.other') }}</text> |
| | | </view> |
| | | </view> |
| | | <view class="category-body"> |
| | |
| | | <!-- 底部版权 --> |
| | | <view class="footer"> |
| | | <text class="footer-text"> |
| | | copyright © 2022 浙江中扬立库有限公司 all rights reserved. |
| | | {{ $t('index.copyright') }} |
| | | </text> |
| | | </view> |
| | | <u-toast ref="uToast"></u-toast> |
| | |
| | | // 默认菜单数据(用于后端无返回时) |
| | | elements2: [ |
| | | { |
| | | title: '组托', |
| | | title: this.$t('index.pakin'), |
| | | name: 'pakin', |
| | | color: 'cyan', |
| | | cuIcon: 'pullup', |
| | | url: '/InManagement/ContainerBinding/Container_Binding' |
| | | }, |
| | | { |
| | | title: '订单入库', |
| | | title: this.$t('index.orderPakin'), |
| | | name: 'orderPakin', |
| | | color: 'purple', |
| | | cuIcon: '', |
| | | url: '/order/orderList' |
| | | }, |
| | | { |
| | | title: 'AGV容器入库', |
| | | title: this.$t('index.agv_start'), |
| | | name: 'agv_start', |
| | | color: 'blue', |
| | | cuIcon: '', |
| | | url: '/AGV/agv_start' |
| | | }, |
| | | { |
| | | title: 'AGV容器回库', |
| | | title: this.$t('index.agv_back'), |
| | | name: 'agv_back', |
| | | color: 'orange', |
| | | cuIcon: '', |
| | | url: '/AGV/agv_back' |
| | | }, |
| | | { |
| | | title: '库存查询', |
| | | title: this.$t('index.stockQuery'), |
| | | name: 'stockQuery', |
| | | color: 'green', |
| | | cuIcon: '', |
| | | url: '/stock/stockQuery' |
| | | }, |
| | | { |
| | | title: '退出登录', |
| | | title: this.$t('index.logOut'), |
| | | name: 'logOut', |
| | | color: 'grey', |
| | | cuIcon: 'exit', |
| | |
| | | categoryConfig: [ |
| | | { |
| | | key: 'pakin_category', |
| | | name: '入库管理', |
| | | name: this.$t('category.inbound'), |
| | | color: 'cyan', |
| | | icon: 'upload', |
| | | menuNames: ['pakin', 'orderPakin'] |
| | | }, |
| | | { |
| | | key: 'agv_category', |
| | | name: 'AGV管理', |
| | | name: this.$t('category.agv'), |
| | | color: 'blue', |
| | | icon: 'navigate', |
| | | menuNames: ['agv_start', 'agv_back'] |
| | | }, |
| | | { |
| | | key: 'stock_category', |
| | | name: '库存管理', |
| | | name: this.$t('category.stock'), |
| | | color: 'green', |
| | | icon: 'search', |
| | | menuNames: ['stockQuery'] |
| | |
| | | } |
| | | |
| | | this.elements.push({ |
| | | title: '退出登录', |
| | | title: this.$t('index.logOut'), |
| | | name: 'logOut', |
| | | color: 'grey', |
| | | cuIcon: 'exit', |
| | |
| | | |
| | | if (errCode === 403) { |
| | | uni.showToast({ |
| | | title: errMsg || '无权限或登录过期', |
| | | title: errMsg || this.$t('index.noAuth'), |
| | | icon: 'none', |
| | | position: 'top' |
| | | }) |
| | |
| | | <view class="page-container"> |
| | | <!-- 头部导航 --> |
| | | <u-navbar |
| | | title="商品信息" |
| | | :title="$t('matSelected.title')" |
| | | :fixed="true" |
| | | :placeholder="true" |
| | | bgColor="#ffffff" |
| | |
| | | size="24" |
| | | color="#409eff" |
| | | ></u-icon> |
| | | <text class="panel-title">物料详情</text> |
| | | <text class="panel-title">{{ $t('matSelected.matDetail') }}</text> |
| | | </view> |
| | | |
| | | <u--form |
| | |
| | | labelWidth="80" |
| | | > |
| | | <u-form-item |
| | | label="商品编码" |
| | | :label="$t('matSelected.matCode')" |
| | | borderBottom |
| | | > |
| | | <text class="value-text code">{{ mat.matnr }}</text> |
| | | </u-form-item> |
| | | |
| | | <u-form-item |
| | | label="商品名称" |
| | | :label="$t('matSelected.matName')" |
| | | borderBottom |
| | | > |
| | | <text class="value-text name">{{ mat.maktx }}</text> |
| | | </u-form-item> |
| | | |
| | | <u-form-item |
| | | label="规格" |
| | | :label="$t('matSelected.spec')" |
| | | borderBottom |
| | | > |
| | | <text class="value-text">{{ mat.specs || '-' }}</text> |
| | | </u-form-item> |
| | | |
| | | <u-form-item |
| | | label="批号" |
| | | :label="$t('matSelected.batch')" |
| | | borderBottom |
| | | > |
| | | <u--input |
| | | v-model="mat.batch" |
| | | placeholder="请输入批号" |
| | | :placeholder="$t('matSelected.inputBatch')" |
| | | border="none" |
| | | clearable |
| | | ></u--input> |
| | | </u-form-item> |
| | | |
| | | <u-form-item label="数量"> |
| | | <u-form-item :label="$t('matSelected.qty')"> |
| | | <u-number-box |
| | | v-model="mat.anfme" |
| | | :max="99999999" |
| | |
| | | <view class="bottom-bar"> |
| | | <u-button |
| | | type="primary" |
| | | text="确认提取" |
| | | :text="$t('matSelected.confirmExtract')" |
| | | icon="checkbox-mark" |
| | | @click="back" |
| | | customStyle="width: 100%; border-radius: 40rpx;" |
| | |
| | | }, |
| | | back() { |
| | | if (this.mat.anfme === 0) { |
| | | this.$showToast({ type: 'error', message: '请输入数量' }) |
| | | this.$showToast({ type: 'error', message: this.$t('toast.inputQty') }) |
| | | return |
| | | } |
| | | this.getOpenerEventChannel().emit('matList', { data: this.mat }) |
| New file |
| | |
| | | const fs = require('fs'); |
| | | const path = require('path'); |
| | | |
| | | function unflatten(data) { |
| | | const result = {}; |
| | | |
| | | // Sort keys so that base objects are created before properties are added |
| | | const keys = Object.keys(data); |
| | | |
| | | for (const key of keys) { |
| | | const value = data[key]; |
| | | |
| | | // If it's already an object, merge its keys |
| | | if (typeof value === 'object' && value !== null && !Array.isArray(value)) { |
| | | if (!result[key] || typeof result[key] !== 'object') { |
| | | result[key] = result[key] || {}; |
| | | } |
| | | Object.assign(result[key], value); |
| | | } else { |
| | | // Split by dot and nest |
| | | const parts = key.split('.'); |
| | | let current = result; |
| | | |
| | | for (let i = 0; i < parts.length - 1; i++) { |
| | | const part = parts[i]; |
| | | if (!current[part] || typeof current[part] !== 'object') { |
| | | current[part] = {}; |
| | | } |
| | | current = current[part]; |
| | | } |
| | | current[parts[parts.length - 1]] = value; |
| | | } |
| | | } |
| | | |
| | | return result; |
| | | } |
| | | |
| | | const dir = path.join(__dirname, 'locale'); |
| | | const files = fs.readdirSync(dir).filter(f => f.endsWith('.json')); |
| | | |
| | | files.forEach(file => { |
| | | const filePath = path.join(dir, file); |
| | | let content = fs.readFileSync(filePath, 'utf8'); |
| | | let data; |
| | | try { |
| | | data = JSON.parse(content); |
| | | } catch (e) { |
| | | console.log(`Error parsing ${file}`); |
| | | return; |
| | | } |
| | | |
| | | const nestedData = unflatten(data); |
| | | fs.writeFileSync(filePath, JSON.stringify(nestedData, null, 2), 'utf8'); |
| | | console.log(`Updated ${file}`); |
| | | }); |
| New file |
| | |
| | | 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'); |