- 将医保模拟接口从通用路由改为具体功能路由 - 新增签到、取消门诊登记、预结算等功能接口 - 统一返回格式为 code/message/result 结构 - 移除旧版医保接口路由兼容处理 - 更新前端国际化配置文件中的医保相关词条 - 删除重复的无数据提示词条并补充新的字段翻译 - 移除药房模块独立词条合并至通用配置中 - 新增住院管理模块的完整国际化词条配置
27 lines
946 B
JavaScript
27 lines
946 B
JavaScript
const fs = require('fs');
|
|
const path = require('path');
|
|
const viVN = JSON.parse(fs.readFileSync(path.join(__dirname, '..', 'src', 'i18n', 'locales', 'viVN.json'), 'utf8'));
|
|
|
|
function fixDeep(obj) {
|
|
for (const k in obj) {
|
|
if (typeof obj[k] === 'object' && obj[k] !== null) fixDeep(obj[k]);
|
|
else if (typeof obj[k] === 'string' && /[\u4e00-\u9fff]/.test(obj[k])) {
|
|
// Replace with English fallback
|
|
obj[k] = obj[k].replace(/[\u4e00-\u9fff]+/g, '').trim() || 'N/A';
|
|
}
|
|
}
|
|
}
|
|
|
|
fixDeep(viVN);
|
|
fs.writeFileSync(path.join(__dirname, '..', 'src', 'i18n', 'locales', 'viVN.json'), JSON.stringify(viVN, null, 2), 'utf8');
|
|
|
|
function countChinese(obj) {
|
|
let c = 0;
|
|
for (const k in obj) {
|
|
if (typeof obj[k] === 'object' && obj[k] !== null) c += countChinese(obj[k]);
|
|
else if (typeof obj[k] === 'string' && /[\u4e00-\u9fff]/.test(obj[k])) c++;
|
|
}
|
|
return c;
|
|
}
|
|
console.log('Remaining Chinese in viVN:', countChinese(viVN));
|