feat: 新增多语言文案与组件国际化适配

本次提交完成了大量多语言相关的新增与优化工作:
1. 新增充值、案例、会员资产、订单等页面的中文/英文翻译文案
2. 新增企业微信客服、时间选择、支付弹窗等组件的多语言包
3. 优化工具函数与自定义页面的多语言适配,替换硬编码提示文案
4. 新增会员等级规则、积分商品、退款管理等页面的国际化支持
5. 修复企业微信JS-SDK的错误提示文案硬编码问题
This commit is contained in:
2026-06-26 09:09:46 +08:00
parent 2d8846c64c
commit 066ca61d97
97 changed files with 2704 additions and 716 deletions

View File

@@ -34,7 +34,7 @@
</view>
<view class="box">
<text v-if="item.val != ''">{{ item.val }}</text>
<text v-else class="color-tip">请选择</text>
<text v-else class="color-tip">{{ $lang('components.nsForm.selectPlaceholder') }}</text>
</view>
<text class="iconfont icon-right"></text>
</view>
@@ -188,7 +188,7 @@
<view class="box">
<pick-regions :default-regions="item.default_regions" :select-arr="item.select_arr" @getRegions="handleGetRegions($event, index)">
<view class="select-address " :class="{ empty: !item.val, 'color-tip': !item.val }">
{{ item.val ? item.val : item.select_arr == '2' ? '请选择省市' : '请选择省市区/县' }}
{{ item.val ? item.val : (item.select_arr == '2' ? $lang('components.nsForm.selectProvinceCity') : $lang('components.nsForm.selectProvinceCityDistrict')) }}
</view>
</pick-regions>
</view>
@@ -365,7 +365,7 @@
if (item.value.required && !item.val) {
verify = false;
this.$util.showToast({
title: '请输入' + item.value.title
title: this.$lang('components.nsForm.pleaseInput', { title: item.value.title })
});
break;
}
@@ -375,13 +375,13 @@
verify = !item.value.required;
if (verify == false) {
this.$util.showToast({
title: '身份证输入不合法'
title: this.$lang('components.nsForm.idCardInvalid')
});
return false;
}
if (verify == true && item.val != '') {
this.$util.showToast({
title: '身份证输入不合法'
title: this.$lang('components.nsForm.idCardInvalid')
});
return false;
}
@@ -392,13 +392,13 @@
verify = !item.value.required;
if (verify == false) {
this.$util.showToast({
title: '手机号输入不合法'
title: this.$lang('components.nsForm.mobileInvalid')
});
return false;
}
if (verify == true && item.val != '') {
this.$util.showToast({
title: '手机号输入不合法'
title: this.$lang('components.nsForm.mobileInvalid')
});
return false;
}
@@ -409,7 +409,7 @@
if (item.value.required && !item.val) {
verify = false;
this.$util.showToast({
title: '请输入' + item.value.title
title: this.$lang('components.nsForm.pleaseInput', { title: item.value.title })
});
break;
}
@@ -419,7 +419,7 @@
if (item.value.required && !item.val) {
verify = false;
this.$util.showToast({
title: '请选择' + item.value.title
title: this.$lang('components.nsForm.pleaseSelect', { title: item.value.title })
});
break;
}
@@ -429,7 +429,7 @@
if (item.value.required && !item.val) {
verify = false;
this.$util.showToast({
title: '请至少选择一个' + item.value.title
title: this.$lang('components.nsForm.pleaseSelectAtLeastOne', { title: item.value.title })
});
break;
}
@@ -439,7 +439,7 @@
if (item.value.required && !item.val) {
verify = false;
this.$util.showToast({
title: '请至少上传一张' + item.value.title
title: this.$lang('components.nsForm.pleaseUploadAtLeastOne', { title: item.value.title })
});
break;
}
@@ -449,7 +449,7 @@
if (item.value.required && !item.val) {
verify = false;
this.$util.showToast({
title: '请选择' + item.value.title
title: this.$lang('components.nsForm.pleaseSelect', { title: item.value.title })
});
break;
}
@@ -459,7 +459,7 @@
if (item.value.required && !item.val) {
verify = false;
this.$util.showToast({
title: '请选择' + item.value.title
title: this.$lang('components.nsForm.pleaseSelect', { title: item.value.title })
});
break;
}
@@ -467,7 +467,7 @@
if (this.$util.timeTurnTimeStamp(item.start_date) > this.$util.timeTurnTimeStamp(item.end_date)) {
verify = false;
this.$util.showToast({
title: '结束日期不能小于开始日期'
title: this.$lang('components.nsForm.endDateBeforeStartDate')
});
break;
}
@@ -477,7 +477,7 @@
if (item.value.required && !item.val) {
verify = false;
this.$util.showToast({
title: '请选择' + item.value.title
title: this.$lang('components.nsForm.pleaseSelect', { title: item.value.title })
});
break;
}
@@ -487,7 +487,7 @@
if (item.value.required && !item.val) {
verify = false;
this.$util.showToast({
title: '请选择' + item.value.title
title: this.$lang('components.nsForm.pleaseSelect', { title: item.value.title })
});
break;
}
@@ -495,7 +495,7 @@
if (item.start_time >= item.end_time) {
verify = false;
this.$util.showToast({
title: '结束时间必须大于开始时间'
title: this.$lang('components.nsForm.endTimeBeforeStartTime')
});
break;
}
@@ -505,7 +505,7 @@
if (item.value.required && !item.val) {
verify = false;
this.$util.showToast({
title: '请选择' + item.value.title
title: this.$lang('components.nsForm.pleaseSelect', { title: item.value.title })
});
break;
}
@@ -542,7 +542,7 @@
res.forEach(v => {
if (this.formData[index].img_lists.length >= Number(this.formData[index].value.max_count)) {
this.$util.showToast({
title: '最多上传' + this.formData[index].value.max_count + '张图片'
title: this.$lang('components.nsForm.maxUploadImages', { max: this.formData[index].value.max_count })
});
return false;
} else {
@@ -560,7 +560,7 @@
addImg(index) {
if (this.formData[index].img_lists.length >= Number(this.formData[index].value.max_count)) {
this.$util.showToast({
title: '最多上传' + this.formData[index].value.max_count + '张图片'
title: this.$lang('components.nsForm.maxUploadImages', { max: this.formData[index].value.max_count })
});
return false;
}