Quellcode durchsuchen

财务核算成本翻译完成

Lijy vor 2 Jahren
Ursprung
Commit
aaa5ae235b

+ 37 - 1
fhKeeper/formulahousekeeper/timesheet/src/i18n/en.json

@@ -417,5 +417,41 @@
   "BatchSettingProportion": "Batch setting ratio",
   "UselastmonthscaleSettings": "Use previous month scale settings",
   "Importallocationratio": "Import apportionment ratio",
-  "Monthlyprojecttobeapportioned": "Monthly apportionment project settings"
+  "Monthlyprojecttobeapportioned": "Monthly apportionment project settings",
+  "Settheproportion": "set scale",
+  "setup": "set up",
+  "projectstobe assessed": "Monthly to be apportioned item selection",
+  "allocationdata": "Import apportionment ratio data",
+  "Deselectallitems": "deselect all items",
+  "Selectallitems": "Check all items",
+  "allocationImporttemplates": "Employee Project Apportionment Proportion Import Template",
+  "eachitemofemployeecost": "Set the proportion of each item of employee cost",
+  "Accountedfor": "proportion",
+  "Automaticallocation": "automatic apportionment",
+  "Selecttheemployee": "select employee",
+  "totalpercentage": "total proportion",
+  "importingtheallocationratio": "Apportionment ratio import result",
+  "AmortizedDataExport": "Apportionment data export",
+  "Exportbprojectcategory": "Export by item",
+  "Exportbyproject": "Export by project",
+  "doyouwanttodeleteit": "Are you sure to delete?",
+  "thedeletionhasbeencancelled": "Undeleted",
+  "financialdata": "financial data",
+  "operationissuccessful": "Successful operation",
+  "operationfailure": "operation failed",
+  "importtheaudits": "Import audit",
+  "proportionofassignedpersonnelisnot ": "There is a staff distribution ratio that is not",
+  "erroroccurred": "An error occurred",
+  "savesuccess": "Successfully saved",
+  "sumoftheallocationsmustbe": "The sum of the allocation percentages must be 100%",
+  "choosewhethertoincludethetotalcost": "Please select whether to include in the total cost",
+  "financialcoststatement": "Financial Cost Statement",
+  "costintotal": "total cost",
+  "projectpersonnelcostincluded": "With or without project personnel costs",
+  "yuan": "Yuan",
+  "workcost": "work cost",
+  "financialcoststatisticss": "Financial cost statistics",
+  "waiforverification": "Import successful, please wait for review",
+  "zongjia": "total price",
+  "apportionmentratiodata": "Piece of Apportionment Proportion Data"
 }

+ 37 - 1
fhKeeper/formulahousekeeper/timesheet/src/i18n/zh.json

@@ -417,5 +417,41 @@
   "BatchSettingProportion": "批量设置比例",
   "UselastmonthscaleSettings": "使用上月比例设置",
   "Monthlyprojecttobeapportioned": "月待分摊项目设置",
-  "Importallocationratio": "导入分摊比例"
+  "Importallocationratio": "导入分摊比例",
+  "Settheproportion": "设置比例",
+  "setup": "设置",
+  "projectstobe assessed": "月待分摊项目选择",
+  "allocationdata": "导入分摊比例数据",
+  "Deselectallitems": "取消选择全部项目",
+  "Selectallitems": "选中全部项目",
+  "allocationImporttemplates": "员工项目分摊比例导入模板",
+  "eachitemofemployeecost": "设置员工成本各项目占比",
+  "Selecttheemployee": "选择员工",
+  "Automaticallocation": "自动分摊",
+  "Accountedfor": "占比",
+  "totalpercentage": "总比例",
+  "importingtheallocationratio": "分摊比例导入结果",
+  "AmortizedDataExport": "分摊数据导出",
+  "Exportbyproject": "按项目导出",
+  "Exportbprojectcategory": "按项目分类导出",
+  "doyouwanttodeleteit": "是否确认删除?",
+  "thedeletionhasbeencancelled": "已取消删除",
+  "financialdata": "财务数据",
+  "operationissuccessful": "操作成功",
+  "operationfailure": "操作失败",
+  "importtheaudits": "导入审核",
+  "proportionofassignedpersonnelisnot ": "存在人员分配比例非",
+  "savesuccess": "保存成功",
+  "erroroccurred": "发生错误",
+  "sumoftheallocationsmustbe": "分配比例之和必须是100%",
+  "financialcoststatement": "财务成本报表",
+  "choosewhethertoincludethetotalcost": "请选择是否计入总成本",
+  "costintotal": "成本总计",
+  "yuan": "元",
+  "projectpersonnelcostincluded": "含无项目人员成本",
+  "workcost": "工作成本",
+  "financialcoststatisticss": "财务成本统计",
+  "zongjia": "总价",
+  "waiforverification": "导入成功,请等待审核",
+  "apportionmentratiodata": "条分摊比例数据"
 }

+ 69 - 69
fhKeeper/formulahousekeeper/timesheet/src/views/project/finance.vue

@@ -411,7 +411,7 @@
                      ref="settingTable"  @selection-change="handleSelectionChange" 
                     :height="400" style="width: 100%;">
                     <el-table-column type="selection" width="55"></el-table-column>
-                    <el-table-column prop="name" label="姓名" sortable width="90" fixed="left"></el-table-column>
+                    <el-table-column prop="name" :label="$t('lable.name')" sortable width="90" fixed="left"></el-table-column>
                     
                     <el-table-column :label="item.projectName" v-for="(item) in projectCols" width="180" size="small"
                         :key="item.id" align="center">
@@ -419,88 +419,88 @@
                             <span>{{scope.row[item.projectId]}}</span>%
                         </template>
                     </el-table-column>
-                    <el-table-column label="设置比例"  width="80" fixed="right">
+                    <el-table-column :label="$t('Settheproportion')"  width="80" fixed="right">
                         <template slot-scope="scope">
-                            <el-button size="small" @click="setPercent(false,scope.row)">设置</el-button>
+                            <el-button size="small" @click="setPercent(false,scope.row)">{{ $t('setup') }}</el-button>
                         </template>
                     </el-table-column>
                 </el-table>
             </div>
             <div slot="footer" class="dialog-footer">
-                <el-button type="primary" @click="settingDialog = false" >关闭</el-button>
-                <el-button type="primary" @click="saveMonthSetting()" >保存</el-button>
+                <el-button type="primary" @click="settingDialog = false" >{{ $t('Shutdown') }}</el-button>
+                <el-button type="primary" @click="saveMonthSetting()" >{{ $t('save') }}</el-button>
             </div>
         </el-dialog>
 
-        <el-dialog :title="date + '月待分摊项目选择'" show-header="false" v-if="projectsDialog" :visible.sync="projectsDialog" 
+        <el-dialog :title="date + $t('projectstobe assessed')" show-header="false" v-if="projectsDialog" :visible.sync="projectsDialog" 
             :close-on-click-modal="false" customClass="customWidth" width="1000px">
             <el-select v-model="chosenProjects" multiple filterable clearable style="width:100%">
                 <el-option v-for="item in allProjectList" :label="item.projectName" :key="item.id" :value="item.id"></el-option>
             </el-select>
-            <el-checkbox v-model="chosenProjectsChecked" @change="chosenProjectsCheckedClick" style="margin: 20px 0;">{{chosenProjectsChecked ? '取消选择全部项目' : '选中全部项目'}}</el-checkbox>
+            <el-checkbox v-model="chosenProjectsChecked" @change="chosenProjectsCheckedClick" style="margin: 20px 0;">{{chosenProjectsChecked ? $t('Deselectallitems') : $t('Selectallitems')}}</el-checkbox>
             <div slot="footer" class="dialog-footer">
-                <el-button type="default" @click="projectsDialog = false" >关闭</el-button>
-                <el-button type="primary" @click="saveProjectSetting()" >确定</el-button>
+                <el-button type="default" @click="projectsDialog = false" >{{ $t('Shutdown') }}</el-button>
+                <el-button type="primary" @click="saveProjectSetting()" >{{ $t('btn.determine') }}</el-button>
             </div>
         </el-dialog>
-        <el-dialog title="导入分摊比例数据" v-if="intoAmortizationDialog" :visible.sync="intoAmortizationDialog" customClass="customWidth" width="500px">
-            <p>1. 下载
-            <el-link type="primary" style="margin-left:5px;" :underline="false" href="./upload/员工项目分摊比例导入模板.xlsx" download="员工项目分摊比例导入模板.xlsx">员工项目分摊比例导入模板.xlsx</el-link>
+        <el-dialog title="$t('allocationdata')" v-if="intoAmortizationDialog" :visible.sync="intoAmortizationDialog" customClass="customWidth" width="500px">
+            <p>{{'1.' + $t('other.download')}}
+            <el-link type="primary" style="margin-left:5px;" :underline="false" :href="'./upload/'+$t('allocationImporttemplates')+'.xlsx'" :download="$t('allocationImporttemplates') + '.xlsx'">{{$t('allocationImporttemplates')+'.xlsx'}}</el-link>
             </p>
-            <p>2. 填写excel模板,请确保模板中的项目和人员已添加到系统中。</p>
+            <p>{{'2.' + $t('other.projectsAndPeopleInThetemplate') }}</p>
             <p style="display: flex;justify-content: center;padding:1em 0">
                 <el-upload ref="upload"  action="#" :limit="1" :http-request="batchImportData" :show-file-list="false">
-                <el-button type="primary" :underline="false" :loading="importingData">开始导入</el-button>
+                <el-button type="primary" :underline="false" :loading="importingData">{{ $t('other.startImporting') }}</el-button>
             </el-upload>
             </p>
         </el-dialog>
-        <el-dialog title="设置员工成本各项目占比" show-header="false" v-if="setPercentDialog" :visible.sync="setPercentDialog" 
+        <el-dialog :title="$t('eachitemofemployeecost')" show-header="false" v-if="setPercentDialog" :visible.sync="setPercentDialog" 
             :close-on-click-modal="false" customClass="customWidth" width="600px" >
             <div style="margin:0px 10px 10px 10px;">
-                <span>选择员工</span>
+                <span>{{ $t('Selecttheemployee') }}</span>
                 <el-select v-model="chosenNoReportUserIds" multiple filterable clearable style="width:330px;" collapse-tags>
                         <el-option v-for="item in noReportUserList" :label="item.name" :key="item.id" :value="item.userId"></el-option>
                     </el-select>
-                    <el-button @click="averageCost" >自动分摊</el-button>
+                    <el-button @click="averageCost" >{{ $t('Automaticallocation') }}</el-button>
             </div>
             <el-divider ></el-divider>
             <!--项目列表 -->
             <el-form v-model="curPercentVal" label-width="365px" style="margin-top:10px;">
                 <div class="nameList">
                     <el-form-item v-for="item in projectCols" :label="item.projectName" :key="item.projectId" >
-                        占比: <el-input v-model="curPercentVal[item.projectId]" style="width:100px;" @input="updatePercentValue"></el-input>&nbsp;%
+                        {{ $t('Accountedfor') + ':' }}<el-input v-model="curPercentVal[item.projectId]" style="width:100px;" @input="updatePercentValue"></el-input>&nbsp;%
                     </el-form-item>
                 </div>
                 <el-form-item >
-                    总比例: {{totalPercent}}&nbsp;%
+                    {{ $t('totalpercentage') + ':' }}{{totalPercent}}&nbsp;%
                 </el-form-item>
             </el-form>
             
             <div slot="footer" class="dialog-footer">
-                <el-button type="default" @click="setPercentDialog = false" >关闭</el-button>
-                <el-button type="primary" @click="setPercentSetting()" >确定</el-button>
+                <el-button type="default" @click="setPercentDialog = false" >{{ $t('Shutdown') }}</el-button>
+                <el-button type="primary" @click="setPercentSetting()" >{{ $t('btn.determine') }}</el-button>
             </div>
         </el-dialog>
         <!-- 导入结果说明 -->
-        <el-dialog title="分摊比例导入结果" v-if="showImportResult" :visible.sync="showImportResult" customClass="customWidth" width="500px">
+        <el-dialog :title="$t('importingtheallocationratio')" v-if="showImportResult" :visible.sync="showImportResult" customClass="customWidth" width="500px">
             <div>
                 <span>{{importResultMsg}}</span>
                 
             </div>
             <span slot="footer" class="dialog-footer">
-                <el-button type="primary" @click="showImportResult=false">确定</el-button>
+                <el-button type="primary" @click="showImportResult=false">{{ $t('btn.determine') }}</el-button>
             </span>
         </el-dialog>
 
-        <el-dialog title="分摊数据导出" v-if="exportFinanceDialog" :visible.sync="exportFinanceDialog" :close-on-click-modal="false" customClass="customWidth" width="500px">
+        <el-dialog :title="$t('AmortizedDataExport')" v-if="exportFinanceDialog" :visible.sync="exportFinanceDialog" :close-on-click-modal="false" customClass="customWidth" width="500px">
             <div style="margin:30px;">
             <el-radio-group v-model="groupByCategory" >
-                <el-radio :label="0">按项目导出</el-radio>
-                <el-radio :label="1">按项目分类导出</el-radio>
+                <el-radio :label="0">{{ $t('Exportbyproject') }}</el-radio>
+                <el-radio :label="1">{{ $t('Exportbprojectcategory') }}</el-radio>
             </el-radio-group>
             </div>
             <div slot="footer" class="dialog-footer">
-                <el-button @click="exportData" :loading="exportDataProcessing" type="primary">导出</el-button>
+                <el-button @click="exportData" :loading="exportDataProcessing" type="primary">{{ $t('export.export') }}</el-button>
             </div>
         </el-dialog>
     </section>
@@ -547,7 +547,7 @@ import { error } from 'dingtalk-jsapi';
                 multipleSelection:[],
                 userCostSettingList: [],
                 settingDialog: false,
-                radio:"全部人员",
+                radio:this.$t('lable.allStaff'),
                 noReportUserList:[],
                 allFinanceList:[],
                 assignNoProUser: false,
@@ -615,9 +615,9 @@ import { error } from 'dingtalk-jsapi';
                 // console.log(sel);
             },
             deleteUsers(){
-                this.$confirm('是否确认删除?','提示',{
-                    confirmButtonText: '确认',
-                    cancelButtonText: '取消',
+                this.$confirm(this.$t(this.$t('doyouwanttodeleteit')),this.$t('other.prompts'),{
+                    confirmButtonText: this.$t('btn.determine'),
+                    cancelButtonText: this.$t('btn.cancel'),
                     type: 'warning'
                 }).then(()=>{
                     let ids = ''
@@ -631,7 +631,7 @@ import { error } from 'dingtalk-jsapi';
                         if(res.code == 'ok'){
                             this.getList()
                             this.$message({
-                                message: '删除成功',
+                                message: this.$t('message.successfullyDeleted'),
                                 type: 'success'
                             })
                             
@@ -650,7 +650,7 @@ import { error } from 'dingtalk-jsapi';
                 }).catch(()=>{
                     this.$message({
                         type: 'info',
-                        message: '已取消删除'
+                        message: this.$t('thedeletionhasbeencancelled')
                     })
                 })
                 
@@ -662,7 +662,7 @@ import { error } from 'dingtalk-jsapi';
                 },res =>{
                     this.isUploading = false;
                     if(res.code == 'ok') {
-                        this.downloadByA({name:this.exportMonth+'财务数据.xls', url: res.data});
+                        this.downloadByA({name:this.exportMonth+this.$t('financialdata') + '.xls', url: res.data});
                     }
                 },error => {
                     this.$message({
@@ -718,13 +718,13 @@ import { error } from 'dingtalk-jsapi';
                         res =>{
                             if(res.code == 'ok') {
                                 this.$message({
-                                    message: '操作成功',
+                                    message: this.$t('operationissuccessful'),
                                     type: "success"
                                 });
                                 this.addreviewer()
                             } else {
                                 this.$message({
-                                    message: '操作失败',
+                                    message: this.$t('operationfailure'),
                                     type: "error"
                                 });
                             }
@@ -747,7 +747,7 @@ import { error } from 'dingtalk-jsapi';
             },
             // 审核
             audits() {
-                this.shenhe = '导入审核'
+                this.shenhe = this.$t('importtheaudits')
                 this.importVisible = true
             },
             switchCostList() {
@@ -845,17 +845,17 @@ import { error } from 'dingtalk-jsapi';
                 });
                 if (errorList.length > 0) {
                     var nameList = errorList.map(e=>e.name);
-                    this.$message({type:'error', message:'存在人员分配比例非100%: '+nameList});
+                    this.$message({type:'error', message:this.$t('proportionofassignedpersonnelisnot ')+'100%:'+nameList});
                     return;
                 }
                 this.http.post('/project-percentage/saveMonthSetting', {projectCols: JSON.stringify(this.projectCols),
                             ymonth: this.date, userSettings: JSON.stringify(this.userCostSettingList)},
                     res => {
                         if (res.code == "ok") {
-                            this.$message({type:'success', message:'保存成功'});
+                            this.$message({type:'success', message:this.$t('savesuccess')});
                             this.settingDialog = false;
                         } else {
-                            this.$message({type:'error', message:'发生错误:'+res.msg});
+                            this.$message({type:'error', message:this.$t('erroroccurred')+':'+res.msg});
                         }});
             },
             updatePercentValue() {
@@ -929,7 +929,7 @@ import { error } from 'dingtalk-jsapi';
                 //检测是否填写的情况下,是否达到100%
                 if (this.totalPercent != 100) {
                     this.$message({
-                            message: '分配比例之和必须是100%',
+                            message: this.$t('sumoftheallocationsmustbe'),
                             type: "error"
                             });
                     return;
@@ -955,7 +955,7 @@ import { error } from 'dingtalk-jsapi';
                 this.multipleSelection = val;
             },
             switchList() {
-                if (this.radio == '全部人员') {
+                if (this.radio == this.$t('lable.allStaff')) {
                     this.list = this.allFinanceList;
                 } else {
                     this.list = this.noReportUserList;
@@ -974,9 +974,9 @@ import { error } from 'dingtalk-jsapi';
                     res => {
                         if (res.code == "ok") {
                             if (res.data.indexOf('xlsx') > 0) {
-                                this.downloadByA({name:'财务成本报表.xlsx', url:res.data});
+                                this.downloadByA({name:this.$t('financialcoststatement')+ '.xlsx', url:res.data});
                             } else {
-                                this.downloadByA({name:'财务成本报表.xls', url:res.data});
+                                this.downloadByA({name:this.$t('financialcoststatement')+ '.xls', url:res.data});
                             }
                         }});
                
@@ -998,7 +998,7 @@ import { error } from 'dingtalk-jsapi';
             if(this.customCols.field1 != null && this.customCols.field1 != ''){
                 if(this.customCols.field1Calculate == null){
                     this.$message({
-                        message: '请选择是否计入总成本',
+                        message: this.$t('choosewhethertoincludethetotalcost'),
                         type: 'warning'
                     })
                     return
@@ -1007,7 +1007,7 @@ import { error } from 'dingtalk-jsapi';
             if(this.customCols.field2 != null && this.customCols.field2 != ''){
                 if(this.customCols.field1Calculate == null){
                     this.$message({
-                        message: '请选择是否计入总成本',
+                        message: this.$t('choosewhethertoincludethetotalcost'),
                         type: 'warning'
                     })
                     return
@@ -1016,7 +1016,7 @@ import { error } from 'dingtalk-jsapi';
             if(this.customCols.field3 != null && this.customCols.field3 != ''){
                 if(this.customCols.field1Calculate == null){
                     this.$message({
-                        message: '请选择是否计入总成本',
+                        message: this.$t('choosewhethertoincludethetotalcost'),
                         type: 'warning'
                     })
                     return
@@ -1149,9 +1149,9 @@ import { error } from 'dingtalk-jsapi';
                         _this.myChart = myChart;
                         var option = {
                             title: {
-                                text: this.assignNoProUser?'成本总计 ' + totalMoneyCost + '元'
-                                    +(this.hasNoProjectUsers?",含无项目人员成本 " + nopCost+"元 ":"")
-                                    :'成本总计 ' + totalMoneyCost + '元',
+                                text: this.assignNoProUser?this.$t('costintotal') + totalMoneyCost + this.$t('yuan')
+                                    +(this.hasNoProjectUsers?","+$t('projectpersonnelcostincluded') + nopCost+this.$t('yuan'):"")
+                                    :this.$t('costintotal') + totalMoneyCost + this.$t('yuan'),
                                 left:'left',
                             },
                             grid : {
@@ -1180,8 +1180,8 @@ import { error } from 'dingtalk-jsapi';
                             tooltip:{
                                 trigger:'axis',
                                 formatter: function (params,ticket,callback) {
-                                    var res = params[0].name + "<br/>工作成本"+" : " + params[0].data.value 
-                                    + "元 <br/>工作时长"+" : " + params[0].data.time + "小时";
+                                    var res = params[0].name + "<br/>"+this.$t('workcost')+" : " + params[0].data.value 
+                                    + this.$t('yuan')+"<br/>"+this.$t('screening.workTime')+" : " + params[0].data.time + this.$t('time.hour');
                                     _this.params = params;
                                     return res;
                                 }
@@ -1195,11 +1195,11 @@ import { error } from 'dingtalk-jsapi';
                             yAxis: [{
                                 type : 'value',
                                 axisLabel: {
-                                    formatter:'{value} ()'
+                                    formatter:'{value} ('+this.$t('yuan')+')'
                                 }
                             }],
                             series: [{
-                                name: '工作时长(h)',
+                                name: this.$t('screening.workTime')+'(h)',
                                 type: 'bar',
                                 barMaxWidth: 30,
                                 data: yList,
@@ -1240,7 +1240,7 @@ import { error } from 'dingtalk-jsapi';
                     if (res.code == "ok") {
                         this.exportFinanceDialog = false;
                         var aTag = document.createElement('a');
-                        aTag.download = "财务成本统计.xls";
+                        aTag.download = this.$t('financialcoststatisticss')+".xls";
                         aTag.href = res.data;
                         aTag.click();
                     } else {
@@ -1263,7 +1263,7 @@ import { error } from 'dingtalk-jsapi';
                 const sums = [];
                 columns.forEach((column, index) => {
                 if (index === 0) {
-                    sums[index] = '总价';
+                    sums[index] = this.$t('zongjia');
                     return;
                 }
                 if (index === 1 || index === 2){
@@ -1280,7 +1280,7 @@ import { error } from 'dingtalk-jsapi';
                         return prev;
                     }
                     }, 0);
-                    sums[index] += ' 元';
+                    sums[index] += this.$t('yuan');
                 } else {
                     sums[index] = 'N/A';
                 }
@@ -1301,7 +1301,7 @@ import { error } from 'dingtalk-jsapi';
                 let format = str[str.length - 1];
                 if (format != "xls" && format != "xlsx") {
                     this.$message({
-                        message: "请选择.xls或.xlsx文件",
+                        message: this.$t('other.PleaseselecttheXLSorXLSXfile'),
                         type: "error"
                     });
                 } else {
@@ -1329,13 +1329,13 @@ import { error } from 'dingtalk-jsapi';
                         if (res.code == "ok") {
                             if (this.user.timeType.financeAudit == 1 ) {
                                 this.$message({
-                                    message: '导入成功,请等待审核',
+                                    message: this.$t('waiforverification'),
                                     type: "warning"
                                 });
                                 this.getMonths();
                             } else {
                                 this.$message({
-                                    message: '导入成功',
+                                    message: this.$t('other.importSuccess'),
                                     type: "success"
                                 });
                             }
@@ -1398,7 +1398,7 @@ import { error } from 'dingtalk-jsapi';
                         this.allFinanceList = list;
                         
                         this.noReportUserList = list.filter(r=>r.hasReport == 0);
-                        if(this.radio == '全部人员'){
+                        if(this.radio == this.$t('lable.allStaff')){
                             this.list = this.allFinanceList;
                         }else{
                             this.list = this.noReportUserList
@@ -1432,16 +1432,16 @@ import { error } from 'dingtalk-jsapi';
                         // console.log(res.data, '审核状态')
                         if(res.data) {
                             if(res.data.state == '0') {
-                                this.revaelse = '待审核'
+                                this.revaelse = this.$t('state.WaitingAudit')
                                 this.tabPosition = '0'
                             } else if(res.data.state == '1') {
-                                this.revaelse = '审核记录'
+                                this.revaelse = this.$t('Auditrecords')
                                 this.tabPosition = '1'
                             }else if (res.data.state == '2') {
-                                this.revaelse = '已驳回'
+                                this.revaelse = this.$t('state.rejected')
                                 this.tabPosition = '2'
                             } else if (res.data.state == '3') {
-                                this.revaelse = '已撤销'
+                                this.revaelse = this.$t('state.undone')
                                 this.tabPosition = '-1'
                             }
                             this.getReviewList()
@@ -1527,7 +1527,7 @@ import { error } from 'dingtalk-jsapi';
                 res => {
                     if (res.code == "ok") {
                        this.$message({
-                            message: '操作成功',
+                            message: this.$t('operationissuccessful'),
                             type: "success"
                         });
                         this.getReviewList()
@@ -1580,7 +1580,7 @@ import { error } from 'dingtalk-jsapi';
                 let format = str[str.length - 1];
                 if (format != "xls" && format != "xlsx") {
                     this.$message({
-                        message: "请选择.xls或.xlsx文件",
+                        message: this.$t('other.PleaseselecttheXLSorXLSXfile'),
                         type: "error"
                     });
                 } else {
@@ -1596,10 +1596,10 @@ import { error } from 'dingtalk-jsapi';
                         this.showImportResult = true;
                         if (res.code == "ok") {
                             //换成弹出框,以免有人等了半天回来啥也没看到
-                            this.importResultMsg = "成功导入"+res.data+"条分摊比例数据。"+(res.msg?res.msg:"");
+                            this.importResultMsg = this.$t('other.importSuccess')+res.data+this.$t('apportionmentratiodata')+'。'+(res.msg?res.msg:"");
                             this.showSettingDialog();
                         } else {
-                            this.importResultMsg = "导入失败:"+res.msg;
+                            this.importResultMsg = this.$t('export.Importfailure')+":"+res.msg;
                         }
                     },
                     error => {