添加翻译

This commit is contained in:
fan 2023-02-17 15:39:18 +08:00
parent ec03a5b6b7
commit ba21c4fe95
10 changed files with 68 additions and 73 deletions

View File

@ -1,7 +1,7 @@
export default {
simulation: '仿真',
simulation: 'Simulation',
multiplayerSimulation: '多人仿真',
regulationSimulation: '监管仿真',
regulationSimulation: 'Regulation of the simulation',
teachingManagement: '教学管理',
classroom: '班级管理',
student: '学生管理',

View File

@ -13,39 +13,39 @@
>
<div class="applyOrAgreeAll">
<div class="applyOrAgreeTitle">
<div class="applyOrAgreeStation">站名</div>
<div class="applyOrAgreeStation">Station name</div>
<!-- <el-radio-group v-model="controlTypeAll"> -->
<div class="applyOrAgreeCenterControl">
<el-radio key="centerControlAll" v-model="controlTypeAll" label="centerControlAll" size="small">全选</el-radio>
<el-radio key="centerControlAll" v-model="controlTypeAll" label="centerControlAll" size="small">Select all</el-radio>
</div>
<div class="applyOrAgreeStationControl">
<el-radio key="stationControlAll" v-model="controlTypeAll" label="stationControlAll" size="small">全选</el-radio>
<el-radio key="stationControlAll" v-model="controlTypeAll" label="stationControlAll" size="small">Select all</el-radio>
</div>
<div class="applyOrAgreeStationDispatchControl">
<el-radio key="stationDispatchControlAll" v-model="controlTypeAll" label="stationDispatchControlAll" size="small">全选</el-radio>
<el-radio key="stationDispatchControlAll" v-model="controlTypeAll" label="stationDispatchControlAll" size="small">Select all</el-radio>
</div>
</div>
<div class="applyOrAgreeContent">
<div v-for="(station,index) in stationList" :key="index" class="applyOrAgreeContentIn">
<div class="applyOrAgreeStation">{{ station.name }}</div>
<div class="applyOrAgreeCenterControl">
<el-radio key="centerControlAll" v-model="selectedControlList[index]" label="centerControlAll" size="small">中心控制</el-radio>
<el-radio key="centerControlAll" v-model="selectedControlList[index]" label="centerControlAll" size="small">Central control</el-radio>
</div>
<div class="applyOrAgreeStationControl">
<el-radio key="stationControlAll" v-model="selectedControlList[index]" label="stationControlAll" size="small">车站控制</el-radio>
<el-radio key="stationControlAll" v-model="selectedControlList[index]" label="stationControlAll" size="small">Station control</el-radio>
</div>
<div class="applyOrAgreeStationDispatchControl">
<el-radio key="stationDispatchControlAll" v-model="selectedControlList[index]" label="stationDispatchControlAll" size="small">车站调车</el-radio>
<el-radio key="stationDispatchControlAll" v-model="selectedControlList[index]" label="stationDispatchControlAll" size="small">Station switching</el-radio>
</div>
</div>
</div>
</div>
<el-row justify="center" class="button-group" style="margin-bottom:20px;margin-top:20px">
<el-col :span="5" :offset="6">
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">确定</el-button>
<el-button :id="domIdConfirm" type="primary" :loading="loading" @click="commit">Confirm</el-button>
</el-col>
<el-col :span="5" :offset="2">
<el-button :id="domIdCancel" @click="cancel"></el-button>
<el-button :id="domIdCancel" @click="cancel">Cancel</el-button>
</el-col>
</el-row>
<notice-info ref="noticeInfo" pop-class="chengdou-03__systerm" />
@ -63,7 +63,7 @@ export default {
data() {
return {
dialogShow: false,
title:'操作方式转换',
title:'Mode of operation conversion',
controlTypeAll:'',
selectedControlList:[],
loading: false,
@ -143,7 +143,7 @@ export default {
font-size: 14px;
vertical-align: top;
text-align: center;
width: 108px;
width: 128px;
}
.apply-agree.chengdou-03__systerm .el-dialog .el-dialog__body{
padding:0px;

View File

@ -3,7 +3,7 @@
v-dialogDrag
class="datie-02__systerm"
:visible.sync="show"
width="250px"
width="280px"
:before-close="doClose"
:z-index="2000"
:modal="false"

View File

@ -1038,7 +1038,7 @@ export default {
}
.modeCovertPopList{
position: absolute;
width: 130px;
width: 190px;
background: #F0F0F0;
bottom: 18px;
left: 780px;

View File

@ -96,11 +96,11 @@
<!-- </div>-->
<el-submenu v-if="!thirdLogin" :key="99" index="/info" :show-timeout="100">
<span slot="title">{{ username }}</span>
<el-menu-item :key="991" index="/info/personalInfo">个人信息</el-menu-item>
<el-menu-item :key="991" index="/info/personalInfo">Personal information</el-menu-item>
<el-menu-item v-if="isNotCompanyAdmin && isCGY && isSameProject" :key="992" index="/info/studentStatistics">数据统计</el-menu-item>
</el-submenu>
<div v-if="!thirdLogin" class="rightGroup">
<el-tooltip class="item" effect="dark" content="退出" placement="bottom-end">
<el-tooltip class="item" effect="dark" content="Exit" placement="bottom-end">
<i class="el-icon-switch-button" style="color: #fff;font-weight: bolder;cursor: pointer;" @click="logout" />
</el-tooltip>
</div>

View File

@ -2,11 +2,11 @@
<div style="width: 100%;height: 100%;text-align: left;padding: 50px;">
<el-card class="box-card">
<div slot="header" class="clearfix">
<span>个人信息</span>
<span>Personal information</span>
</div>
<div style="width: 100%;">
<div class="form_box">
<div class="title">{{ $t('global.compellation') }}:</div>
<div class="title">Name:</div>
<div class="content_box_info">
<div v-show="nameShow" class="show_box">
<span>{{ userInfo.name }}</span>
@ -15,7 +15,7 @@
<div v-show="!nameShow" class="flex_box">
<el-input
v-model="editInfo.name"
:placeholder="$t('global.enterName')"
placeholder="Please enter name"
maxlength="20"
size="mini"
class="input_box"
@ -38,7 +38,7 @@
</div>
</div>
<div class="form_box" style="background: #f3efef;">
<div class="title">{{ $t('global.nickName') }}:</div>
<div class="title">NickName:</div>
<div class="content_box_info">
<div v-show="nickNameShow" class="show_box">
<span>{{ userInfo.nickname }}</span>
@ -47,7 +47,7 @@
<div v-show="!nickNameShow" class="flex_box">
<el-input
v-model="editInfo.nickname"
:placeholder="$t('global.enterNickname')"
placeholder="Please enter nickname"
maxlength="20"
size="mini"
class="input_box"
@ -58,19 +58,19 @@
class="button_box"
:disabled="!editInfo.nickname"
@click="saveNickName"
>{{ $t('global.save') }}</el-button>
>Save</el-button>
<el-button
size="mini"
class="button_box"
type="text"
@click="switcherNickname"
>{{ $t('global.cancel') }}</el-button>
>Cancel</el-button>
</div>
</div>
</div>
</div>
<div class="form_box">
<div class="title">{{ $t('global.mobile') }}:</div>
<div class="title">Mobile:</div>
<div class="content_box_info">
<div v-show="mobileShow" class="show_box">
<span>{{ geTel(userInfo.mobile) }}</span>
@ -79,7 +79,7 @@
<div v-show="!mobileShow" class="flex_box">
<el-input
v-model="editInfo.mobile"
:placeholder="$t('global.enterMobile')"
placeholder="Please enter your cell phone number"
maxlength="11"
size="mini"
class="input_box"
@ -94,7 +94,7 @@
</el-select>
<el-input
v-model="mobileCode"
:placeholder="$t('global.verificationCode')"
placeholder="Verification code"
size="mini"
class="code_box"
style="margin-top: 10px;"
@ -105,7 +105,7 @@
:disabled="mobileCodeTime != 0"
@click="sendMobileCode"
>
{{ $t('global.sendCode') }}
Send verification code
<span
v-if="mobileCodeTime"
>{{ mobileCodeTime }}</span>
@ -116,19 +116,19 @@
class="button_box"
:disabled="!mobileCode"
@click="saveMobile"
>{{ $t('global.save') }}</el-button>
>Save</el-button>
<el-button
size="mini"
class="button_box"
type="text"
@click="switcherMobile"
>{{ $t('global.cancel') }}</el-button>
>Cancel</el-button>
</div>
</div>
</div>
</div>
<div class="form_box" style="background: #f3efef;">
<div class="title">{{ $t('global.email') }}:</div>
<div class="title">Email:</div>
<div class="content_box_info">
<div v-show="emailShow" class="show_box">
<span>{{ userInfo.email }}</span>
@ -137,13 +137,13 @@
<div v-show="!emailShow" class="flex_box">
<el-input
v-model="editInfo.email"
:placeholder="$t('global.enterEmail')"
placeholder="Please enter email"
size="mini"
class="input_box"
/>
<el-input
v-model="emailCode"
:placeholder="$t('global.verificationCode')"
placeholder="Verification code"
size="mini"
class="code_box"
style="margin-top: 10px;"
@ -154,7 +154,7 @@
:disabled="emailCodeTime != 0"
@click="sendEmailCode"
>
{{ $t('global.sendCode') }}
Send verification code
<span
v-if="emailCodeTime"
>{{ emailCodeTime }}</span>
@ -165,23 +165,23 @@
class="button_box"
:disabled="!emailCode"
@click="saveEmail"
>{{ $t('global.save') }}</el-button>
>Save</el-button>
<el-button
size="mini"
class="button_box"
type="text"
@click="switcherEmail"
>{{ $t('global.cancel') }}</el-button>
>Cancel</el-button>
</div>
</div>
</div>
</div>
<div class="form_box">
<div class="title">组织:</div>
<div class="title">Organization:</div>
<div class="content_box_info">{{ userInfo.companyName }}</div>
</div>
<div class="form_box" style="background: #f3efef;">
<div class="title">{{ $t('global.passWord') }}:</div>
<div class="title">PassWord:</div>
<div class="content_box_info">
<div v-show="passwordShow" class="show_box">
<span>******</span>
@ -189,10 +189,10 @@
</div>
<div v-show="!passwordShow" class="flex_box">
<div class="passWord_box">
<span>{{ $t('global.newPassWord') }}:</span>
<span>New password:</span>
<el-input
v-model="newPassWord1"
:placeholder="$t('global.enterPassWord')"
placeholder="Please enter your new password"
maxlength="20"
show-password
size="mini"
@ -202,7 +202,7 @@
<div style="height: 28px; line-height: 28px; margin-bottom: 10px;">
<el-input
v-model="passWordCode"
:placeholder="$t('global.verificationCode')"
placeholder="Verification code"
size="mini"
class="code_box"
/>
@ -212,7 +212,7 @@
:disabled="passWordCodeTime != 0"
@click="sendPassWordCode"
>
{{ $t('global.sendMobileCode') }}
Send phone code
<span
v-if="passWordCodeTime"
>{{ passWordCodeTime }}</span>
@ -224,33 +224,33 @@
class="button_box"
:disabled="!passWordCode"
@click="savePassWord"
>{{ $t('global.save') }}</el-button>
>Save</el-button>
<el-button
size="mini"
class="button_box"
type="text"
@click="switcherPassWord"
>{{ $t('global.cancel') }}</el-button>
>Cancel</el-button>
</div>
</div>
</div>
</div>
<div v-if="!wmOpenId" class="form_box">
<div class="title">绑定微信:</div>
<div class="title">Bind to wechat:</div>
<div class="content_box_info">
<el-button v-if="!binding&&!bindSuccess" type="primary" size="small" style="position: absolute;" @click="generateBindQrCode">生成微信二维码</el-button>
<el-button v-if="!binding&&!bindSuccess" type="primary" size="small" style="position: absolute;" @click="generateBindQrCode">Generate wechat QR code</el-button>
<div v-if="binding && !bindSuccess" class="login-code-box" @click="generateBindQrCode">
<qrcode-vue
v-loading="loadingCode"
:value="loginUrl"
:class-name="qrcodeClassName"
:size="150"
:element-loading-text="this.$t('login.clickRefresh')"
element-loading-text="Please click to refresh"
element-loading-spinner="el-icon-refresh"
element-loading-background="rgba(255, 255, 255, 0.9)"
/>
</div>
<div v-if="bindSuccess"><span>绑定微信成功</span></div>
<div v-if="bindSuccess"><span>Wechat binding succeeds</span></div>
</div>
</div>
</div>
@ -392,7 +392,7 @@ export default {
this.nationCode = user.nationCode ? user.nationCode : '86';
this.nationCodeInit = user.nationCode ? user.nationCode : '86';
}).catch(error => {
console.log(error, '请求个人信息失败');
console.log(error, 'Failed to request personal information');
});
},
switcherName() {
@ -407,7 +407,7 @@ export default {
this.nameShow = !this.nameShow;
this.$store.commit('SET_NAME', this.editInfo.name);
} catch (error) {
console.log(error, '错误');
console.log(error, 'error');
}
}
},
@ -418,7 +418,7 @@ export default {
this.nameShow = !this.nameShow;
this.$store.commit('SET_NAME', this.editInfo.name);
} catch (error) {
console.log(error, '错误');
console.log(error, 'error');
}
},
switcherNickname() {
@ -436,7 +436,7 @@ export default {
this.nickNameShow = !this.nickNameShow;
this.$store.commit('SET_NICKNAME', this.editInfo.nickname);
} catch (error) {
console.log(error, '错误');
console.log(error, 'error');
}
}
},
@ -457,7 +457,7 @@ export default {
this.mobileShow = !this.mobileShow;
this.mobileCode = null;
} catch (error) {
this.$message.info(this.$t('global.codeError'));
this.$message.info('The captcha is incorrect');
}
}
},
@ -484,7 +484,7 @@ export default {
}, 1000);
await getUserinfoMobileCode(param);
} catch (error) {
this.$message.info(this.$t('global.codeFaile'));
this.$message.info('The captcha is incorrect');
}
},
@ -504,7 +504,7 @@ export default {
this.emailShow = !this.emailShow;
this.emailCode = null;
} catch (error) {
this.$message.info(this.$t('global.codeError'));
this.$message.info('The captcha is incorrect');
}
}
},
@ -521,7 +521,7 @@ export default {
}, 1000);
await getUserinfoEmailCode(this.editInfo.email);
} catch (error) {
this.$message.info(this.$t('global.codeFaile'));
this.$message.info('The captcha is incorrect');
}
},
@ -530,7 +530,7 @@ export default {
},
async savePassWord() {
if (this.newPassWord1.length <= 5) {
this.$message.info(this.$t('global.passWordLength'));
this.$message.info('New password length cannot be less than 5 digits');
} else {
this.uploadPassword();
}
@ -551,7 +551,7 @@ export default {
console.log(error, 11);
}
} else {
this.$message.info(this.$t('global.passWordSome'));
this.$message.info('Please fill in the password');
}
},
generateBindQrCode() { //
@ -618,11 +618,11 @@ export default {
}, 1000);
await getUserinfoMobileCode(param);
} catch (error) {
this.$message.info(this.$t('global.codeFaile'));
this.$message.info('Failed to obtain captcha');
}
} else {
this.passwordShow = !this.passwordShow;
this.$message.info(this.$t('global.enterMobileNumber'));
this.$message.info('Please bind mobile phone number');
}
}
}

View File

@ -1,7 +1,7 @@
<template>
<div class="equipmentConstructionTable">
<div style="text-align: right;">
<el-button :id="constructionFill.constructionInput.domId" size="small" class="addConstruction" type="primary" @click="add">新增</el-button>
<el-button :id="constructionFill.constructionInput.domId" size="small" class="addConstruction" type="primary" @click="add">Add</el-button>
</div>
<el-table
:data="tableData"

View File

@ -107,9 +107,9 @@ export default {
day: ''
},
typeList: [
{label: '路票', value: 'RAIL_TICKET'},
{label: '绿色许可证', value: 'GREEN_LICENCE'},
{label: '红色许可证', value: 'RED_LICENCE'}
{label: 'RAIL_TICKET', value: 'RAIL_TICKET'},
{label: 'GREEN_LICENCE', value: 'GREEN_LICENCE'},
{label: 'RED_LICENCE', value: 'RED_LICENCE'}
]
};
},

View File

@ -536,7 +536,7 @@ export default {
background: #fff;
border-radius: 5px 0px 0px 5px ;
padding: 5px 0px;
width: 24px;
width: 50px;
text-align: center;
left: 50%;
transform: translateX(-50%);

View File

@ -2,9 +2,9 @@
<div v-loading="loading" class="map-list-main">
<div id="trainingMapTree" class="left-map-list">
<div class="mapListName">
<div style="width: 100px;">线路列表</div>
<div style="width: 100px;">Line list</div>
<div style="width: calc(100% - 117px);">
<el-input v-model="filterText" placeholder="请输入内容" style="width: 100%">
<el-input v-model="filterText" placeholder="Please enter the content" style="width: 100%">
<i slot="prefix" class="el-input__icon el-icon-search" />
</el-input>
</div>
@ -54,22 +54,17 @@ export default {
this.loading = true;
queryMapListByUser().then(resp => {
this.mapList = resp.data;
// EventBus.$emit('setMapList', this.mapList);
this.$store.dispatch('lineList/setLineList', this.mapList);
if (this.mapList && this.mapList.length && this.$route.path.includes('simulation/simulationIndex')) {
const map = this.mapList[0];
// const path = `/trainingPlatform/simulation/${map.id}?lineCode=${map.lineCode}`;
// this.defaultIndex = path;
// this.$router.push(path);
this.gotoPath(map);
} else if (this.$route.params.mapId) {
// this.defaultIndex = this.$route.fullPath;
this.defaultIndex = this.$route.params.mapId;
}
this.loading = false;
}).catch(e => {
this.loading = false;
this.$message.error('获取地图列表失败!');
this.$message.error('Failed to obtain the map list!');
});
},
methods: {