Merge branch 'dev' of https://git.cloud.tencent.com/joylink/jl-nclient into dev
This commit is contained in:
commit
50f87895c6
@ -131,3 +131,12 @@ export function hasDoorStationList(mapId) {
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
/** 修改发布地图名称*/
|
||||
export function updatePublishMapCity(data) {
|
||||
return request({
|
||||
url: `/api/map/${data.mapId}/city`,
|
||||
method: 'put',
|
||||
data: data
|
||||
});
|
||||
}
|
||||
|
@ -40,6 +40,7 @@ export default {
|
||||
nickName: 'nickname',
|
||||
mobile: 'mobile',
|
||||
name: 'Name',
|
||||
compellation: 'Name',
|
||||
code: 'Code',
|
||||
status: 'State',
|
||||
remarks: 'Remarks',
|
||||
@ -53,7 +54,7 @@ export default {
|
||||
enterNickname: 'Please enter nickname',
|
||||
enterName: 'Please enter name',
|
||||
passWordLength: 'New password length cannot be less than 5 digits',
|
||||
passWordSome: 'The new password is different twice',
|
||||
passWordSome: 'Please fill in the password',
|
||||
codeFaile: 'Failed to obtain captcha',
|
||||
selectionTime: 'Selection of time',
|
||||
permissionNumber: 'Number of permissions',
|
||||
@ -71,6 +72,8 @@ export default {
|
||||
total: 'Total',
|
||||
index: 'Index',
|
||||
startTime: 'Start',
|
||||
sendMobileCode: 'Send phone code',
|
||||
enterMobileNumber: 'Please bind mobile phone number',
|
||||
endTime: 'End',
|
||||
isForever: 'Timelimit',
|
||||
remains: 'Remaining',
|
||||
@ -97,6 +100,7 @@ export default {
|
||||
trainingNotStart: "{name}'s room (not starting)",
|
||||
inputRoomNumber: 'Please enter the room number.',
|
||||
chooseRoom: 'Choose Room',
|
||||
codeError: 'The captcha is incorrect',
|
||||
|
||||
month: ' month',
|
||||
indexA: ' piece',
|
||||
@ -179,5 +183,15 @@ export default {
|
||||
runPlanSystem: 'The run plan system',
|
||||
personalDetails: 'information',
|
||||
trainingPlatformEntrance: 'Training platform entrance',
|
||||
designPlatformEntrance: 'Design platform entrance'
|
||||
designPlatformEntrance: 'Design platform entrance',
|
||||
|
||||
china: 'China',
|
||||
australia: 'Australia',
|
||||
england: 'England',
|
||||
hongKong: 'Hong Kong',
|
||||
japanese: 'Japanese',
|
||||
macao: 'Macao',
|
||||
singapore: 'Singapore',
|
||||
taiwan: 'taiwan',
|
||||
america: 'America'
|
||||
};
|
||||
|
@ -4,6 +4,7 @@ export default {
|
||||
mapName: 'Map Name',
|
||||
lessonName: 'Lesson Name',
|
||||
updateMapName: 'Update Map Name',
|
||||
updateCityName: 'Update City',
|
||||
updateTime: 'Update Time',
|
||||
operationSuccess: 'Operate successfully',
|
||||
deleteSuccess: 'Delete successfully',
|
||||
|
@ -12,6 +12,7 @@ export default {
|
||||
pleaseSelectLine: 'Please select a Line',
|
||||
pleaseSelectLineType: 'Select type Line',
|
||||
pleaseSelectLineWidth: 'Please enter line width',
|
||||
pleaseSelectCity: 'Please select city',
|
||||
|
||||
linkXCoordinate: 'Please enter the Link x coordinate',
|
||||
linkYCoordinate: 'Please enter the Link y coordinate',
|
||||
|
@ -40,6 +40,7 @@ export default {
|
||||
nickName: '昵称',
|
||||
mobile: '手机号',
|
||||
name: '名称',
|
||||
compellation: '姓名',
|
||||
code: '编码',
|
||||
status: '状态',
|
||||
remarks: '说明',
|
||||
@ -50,11 +51,14 @@ export default {
|
||||
newPassWord: '新密码',
|
||||
enterPassWord: '请输入新密码',
|
||||
enterMobile: '请输入手机号',
|
||||
enterMobileNumber: '请绑定手机号',
|
||||
enterNickname: '请输入昵称',
|
||||
enterName: '请输入名称',
|
||||
passWordLength: '新密码长度不能低于5位',
|
||||
passWordSome: '新密码两次不相同',
|
||||
passWordSome: '请填写密码',
|
||||
codeFaile: '获取验证码失败',
|
||||
codeError: '验证码不正确',
|
||||
sendMobileCode: '发送手机验证码',
|
||||
selectionTime: '选择时间',
|
||||
permissionNumber: '权限个数',
|
||||
pleaseInputPermissionNumber: '请输入权限个数',
|
||||
@ -179,5 +183,15 @@ export default {
|
||||
runPlanSystem: '运行图系统',
|
||||
personalDetails: '个人信息',
|
||||
trainingPlatformEntrance: '实训平台入口',
|
||||
designPlatformEntrance: '设计平台入口'
|
||||
designPlatformEntrance: '设计平台入口',
|
||||
|
||||
china: '中国',
|
||||
australia: '澳大利亚',
|
||||
england: '英国',
|
||||
hongKong: '香港',
|
||||
Japanese: '日本',
|
||||
macao: '澳门',
|
||||
singapore: '新加坡',
|
||||
taiwan: '台湾',
|
||||
america: '美国'
|
||||
};
|
||||
|
@ -4,6 +4,7 @@ export default {
|
||||
mapName: '地图名称',
|
||||
lessonName: '课程名称',
|
||||
updateMapName: '更新地图名称',
|
||||
updateCityName: '更新城市',
|
||||
updateTime: '更新时间',
|
||||
operationSuccess: '操作成功',
|
||||
deleteSuccess: '删除成功',
|
||||
|
@ -146,6 +146,7 @@ export default {
|
||||
pleaseInputCode: '请输入编码',
|
||||
strLength1To25: '长度在 1 到 25 个字符',
|
||||
strLengthNotExceed50: '不能超过 50 个字符',
|
||||
pleaseSelectCity: '请选择城市',
|
||||
|
||||
pleaseEnterMapName: '请输入地图名称',
|
||||
pleaseChooseSkinCode: '请选择皮肤风格',
|
||||
@ -217,7 +218,7 @@ export default {
|
||||
courseNameEmpty: '课程名称不能为空',
|
||||
purchaseMonth: '请输入购买月数',
|
||||
accessNumber: '请输入权限数量',
|
||||
pleaseInputMapName: '请输入地图新名称',
|
||||
pleaseInputMapName: '请输入地图名称',
|
||||
inputTemplateRunPlan: '请选择模板运行图',
|
||||
inputSkinType: '请选择皮肤类型',
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
<el-dialog v-dialogDrag :title="$t('global.personalDetails')" :visible.sync="visible" width="470px" :before-close="doClose" class="userInfo_box">
|
||||
<div>
|
||||
<div class="form_box">
|
||||
<div class="title">{{ $t('global.name') }}:</div>
|
||||
<div class="title">{{ $t('global.compellation') }}:</div>
|
||||
<div class="content">
|
||||
<div v-show="nameShow" class="show_box">
|
||||
<span>{{ userInfo.name }}</span>
|
||||
@ -37,11 +37,19 @@
|
||||
<div class="title">{{ $t('global.mobile') }}:</div>
|
||||
<div class="content">
|
||||
<div v-show="mobileShow" class="show_box">
|
||||
<span>{{ userInfo.mobile }}</span>
|
||||
<span>{{ geTel(userInfo.mobile) }}</span>
|
||||
<i class="el-icon-edit" @click="switcherMobile" />
|
||||
</div>
|
||||
<div v-show="!mobileShow" class="flex_box">
|
||||
<el-input v-model="editInfo.mobile" :placeholder="$t('global.enterMobile')" maxlength="11" size="mini" class="input_box" />
|
||||
<el-select v-model="nationCode" size="mini" class="selectCountry">
|
||||
<el-option
|
||||
v-for="item in countryList"
|
||||
:key="item.value"
|
||||
:label="item.name"
|
||||
:value="item.value"
|
||||
/>
|
||||
</el-select>
|
||||
<el-input v-model="mobileCode" :placeholder="$t('global.verificationCode')" size="mini" class="code_box" style="margin-top: 10px;" />
|
||||
<el-button size="mini" style="margin-top: 10px; margin-right: 10px;" :disabled="mobileCodeTime != 0" @click="sendMobileCode">
|
||||
{{ $t('global.sendCode') }}
|
||||
@ -83,21 +91,19 @@
|
||||
<i class="el-icon-edit" @click="switcherPassWord" />
|
||||
</div>
|
||||
<div v-show="!passwordShow" class="flex_box">
|
||||
<!-- <div class="passWord_box">
|
||||
<span>原密码:</span>
|
||||
<el-input v-model="oldPassWord" placeholder="请输入原密码" maxlength="8" show-password size="mini" class="input_box" />
|
||||
</div> -->
|
||||
<div class="passWord_box">
|
||||
<span>{{ $t('global.newPassWord') }}:</span>
|
||||
<el-input v-model="newPassWord1" :placeholder="$t('global.enterPassWord')" maxlength="20" show-password size="mini" class="input_box" />
|
||||
</div>
|
||||
<div class="passWord_box">
|
||||
<span>{{ $t('global.newPassWord') }}:</span>
|
||||
<el-input v-model="newPassWord2" :placeholder="$t('global.enterPassWord')" maxlength="20" show-password size="mini" class="input_box" />
|
||||
<div style="height: 28px; line-height: 28px; margin-bottom: 10px;">
|
||||
<el-input v-model="passWordCode" :placeholder="$t('global.verificationCode')" size="mini" class="code_box" />
|
||||
<el-button size="mini" style="margin-right: 10px;" :disabled="passWordCodeTime != 0" @click="sendPassWordCode">
|
||||
{{ $t('global.sendMobileCode') }}
|
||||
<span v-if="passWordCodeTime">{{ passWordCodeTime }}</span>
|
||||
</el-button>
|
||||
</div>
|
||||
<span class="tip_box">{{ tip }}</span>
|
||||
<div class="button_box" style="width: 150px;">
|
||||
<el-button size="mini" class="button_box" @click="savePassWord">{{ $t('global.save') }}</el-button>
|
||||
<el-button size="mini" class="button_box" :disabled="!passWordCode" @click="savePassWord">{{ $t('global.save') }}</el-button>
|
||||
<el-button size="mini" class="button_box" type="text" @click="switcherPassWord">{{ $t('global.cancel') }}</el-button>
|
||||
</div>
|
||||
</div>
|
||||
@ -143,17 +149,30 @@ export default {
|
||||
passwordShow: true,
|
||||
mobileCode: null,
|
||||
emailCode: null,
|
||||
passWordCode: null,
|
||||
|
||||
oldPassWord: null,
|
||||
newPassWord1: null,
|
||||
newPassWord2: null,
|
||||
|
||||
mobileCodeTime: 0,
|
||||
emailCodeTime: 0,
|
||||
passWordCodeTime: 0,
|
||||
|
||||
emailTime: null,
|
||||
mobileTime: null,
|
||||
tip: ''
|
||||
passWordTime: null,
|
||||
countryList: [
|
||||
{ name: this.$t('global.china'), value: '86' },
|
||||
{ name: this.$t('global.australia'), value: '61' },
|
||||
{ name: this.$t('global.england'), value: '44' },
|
||||
{ name: this.$t('global.hongKong'), value: '852' },
|
||||
{ name: this.$t('global.Japanese'), value: '81' },
|
||||
{ name: this.$t('global.macao'), value: '853' },
|
||||
{ name: this.$t('global.singapore'), value: '65' },
|
||||
{ name: this.$t('global.taiwan'), value: '886' },
|
||||
{ name: this.$t('global.america'), value: '1' }
|
||||
],
|
||||
nationCodeInit: '86' // 默认国际地区
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
@ -162,6 +181,10 @@ export default {
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
geTel(tel) {
|
||||
const reg = /^(\d{3})\d{4}(\d{4})$/;
|
||||
return tel.replace(reg, '$1****$2');
|
||||
},
|
||||
doShow() {
|
||||
this.visible = true;
|
||||
getInfo(getDesignToken()).then(response => {
|
||||
@ -175,6 +198,7 @@ export default {
|
||||
};
|
||||
this.oldPassWord = user.password;
|
||||
this.nationCode = user.nationCode ? user.nationCode : '86';
|
||||
this.nationCodeInit = user.nationCode ? user.nationCode : '86';
|
||||
}).catch(error => {
|
||||
console.log(error, '请求个人信息失败');
|
||||
});
|
||||
@ -217,7 +241,7 @@ export default {
|
||||
},
|
||||
|
||||
switcherMobile() {
|
||||
this.editInfo.mobile = this.userInfo.mobile;
|
||||
// this.editInfo.mobile = this.userInfo.mobile;
|
||||
this.mobileShow = !this.mobileShow;
|
||||
},
|
||||
async saveMobile() {
|
||||
@ -230,17 +254,24 @@ export default {
|
||||
};
|
||||
await getUserinfoMobile(this.info.id, params);
|
||||
this.userInfo.mobile = this.editInfo.mobile;
|
||||
this.nationCodeInit = this.nationCode;
|
||||
this.mobileShow = !this.mobileShow;
|
||||
this.mobileCode = '';
|
||||
this.mobileCode = null;
|
||||
} catch (error) {
|
||||
console.log(error, '错误');
|
||||
this.$message.info(this.$t('global.codeError'));
|
||||
}
|
||||
}
|
||||
},
|
||||
async sendMobileCode() {
|
||||
const random = Math.floor((Math.random()*10000)+1);
|
||||
const timeCount = Date.parse(new Date()) / 1000;
|
||||
const pass = `${timeCount}${this.nationCode}${this.editInfo.mobile}${random}`;
|
||||
const param = {
|
||||
mobile: this.editInfo.mobile,
|
||||
nationCode: this.nationCode
|
||||
nationCode: this.nationCode,
|
||||
rd: random,
|
||||
time: timeCount,
|
||||
token: md5(pass)
|
||||
};
|
||||
try {
|
||||
this.mobileCodeTime = 30;
|
||||
@ -254,12 +285,12 @@ export default {
|
||||
}, 1000);
|
||||
await getUserinfoMobileCode(param);
|
||||
} catch (error) {
|
||||
this.$messageBox(this.$t('global.codeFaile'));
|
||||
this.$message.info(this.$t('global.codeFaile'));
|
||||
}
|
||||
},
|
||||
|
||||
switcherEmail() {
|
||||
this.editInfo.email = this.userInfo.email;
|
||||
// this.editInfo.email = this.userInfo.email;
|
||||
this.emailShow = !this.emailShow;
|
||||
},
|
||||
async saveEmail() {
|
||||
@ -272,9 +303,9 @@ export default {
|
||||
await getUserinfoEmail(this.info.id, params);
|
||||
this.userInfo.email = this.editInfo.email;
|
||||
this.emailShow = !this.emailShow;
|
||||
this.emailCode = '';
|
||||
this.emailCode = null;
|
||||
} catch (error) {
|
||||
this.$messageBox('更新邮箱失败');
|
||||
this.$message.info(this.$t('global.codeError'));
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -291,42 +322,68 @@ export default {
|
||||
}, 1000);
|
||||
await getUserinfoEmailCode(this.editInfo.email);
|
||||
} catch (error) {
|
||||
this.$messageBox(this.$t('global.codeFaile'));
|
||||
this.$message.info(this.$t('global.codeFaile'));
|
||||
}
|
||||
},
|
||||
|
||||
switcherPassWord() {
|
||||
this.passwordShow = !this.passwordShow;
|
||||
this.tip = '';
|
||||
},
|
||||
async savePassWord() {
|
||||
this.tip = '';
|
||||
if (this.newPassWord1.length <= 5 || this.newPassWord2.length <= 5) {
|
||||
this.tip = this.$t('global.passWordLength');
|
||||
if (this.newPassWord1.length <= 5) {
|
||||
this.$message.info(this.$t('global.passWordLength'));
|
||||
} else {
|
||||
this.uploadPassword();
|
||||
}
|
||||
},
|
||||
async uploadPassword() {
|
||||
console.log(this.newPassWord1, this.newPassWord2);
|
||||
if (this.newPassWord1 == this.newPassWord2) {
|
||||
if (this.newPassWord1) {
|
||||
// 请求更新密码
|
||||
const param = {
|
||||
password: md5(this.newPassWord2)
|
||||
password: md5(this.newPassWord1),
|
||||
vfCode: this.passWordCode
|
||||
};
|
||||
if (this.oldPassWord) {
|
||||
param['oldPassword'] = this.oldPassWord;
|
||||
}
|
||||
try {
|
||||
await getUserinfoPassword(this.info.id, param);
|
||||
this.passwordShow = !this.passwordShow;
|
||||
this.newPassWord1 = '';
|
||||
this.newPassWord2 = '';
|
||||
this.passWordCode = null;
|
||||
} catch (error) {
|
||||
console.log(error, 11);
|
||||
}
|
||||
} else {
|
||||
this.tip = this.$t('global.passWordSome');
|
||||
this.$message.info(this.$t('global.passWordSome'));
|
||||
}
|
||||
},
|
||||
async sendPassWordCode() {
|
||||
if (this.userInfo.mobile) {
|
||||
const random = Math.floor((Math.random()*10000)+1);
|
||||
const timeCount = Date.parse(new Date()) / 1000;
|
||||
const pass = `${timeCount}${this.nationCodeInit}${this.userInfo.mobile}${random}`;
|
||||
const param = {
|
||||
mobile: this.userInfo.mobile,
|
||||
nationCode: this.nationCodeInit,
|
||||
rd: random,
|
||||
time: timeCount,
|
||||
token: md5(pass)
|
||||
};
|
||||
try {
|
||||
this.passWordCodeTime = 30;
|
||||
this.passWordTime = setInterval(() => {
|
||||
this.passWordCodeTime--;
|
||||
if (this.passWordCodeTime <= 0) {
|
||||
this.passWordCodeTime = 0;
|
||||
clearInterval(this.mobileTime);
|
||||
this.passWordTime = null;
|
||||
}
|
||||
}, 1000);
|
||||
await getUserinfoMobileCode(param);
|
||||
} catch (error) {
|
||||
this.$message.info(this.$t('global.codeFaile'));
|
||||
}
|
||||
} else {
|
||||
this.passwordShow = !this.passwordShow;
|
||||
this.$message.info(this.$t('global.enterMobileNumber'));
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -339,13 +396,6 @@ export default {
|
||||
align-items: center;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
.tip_box{
|
||||
height: 20px;
|
||||
display: block;
|
||||
width: 100%;
|
||||
line-height: 20px;
|
||||
color: #e47f7f;
|
||||
}
|
||||
.form_box{
|
||||
width: 100%;
|
||||
overflow: hidden;
|
||||
@ -353,8 +403,14 @@ export default {
|
||||
// display: flex;
|
||||
// align-items: center;
|
||||
// flex-wrap: wrap;
|
||||
|
||||
.selectCountry{
|
||||
width: 90px;
|
||||
height: 28px;
|
||||
line-height: 28px;
|
||||
}
|
||||
.title{
|
||||
width: 60px;
|
||||
width: 80px;
|
||||
text-align: left;
|
||||
font-size: 14px;
|
||||
height: 28px;
|
||||
@ -362,7 +418,7 @@ export default {
|
||||
float: left;
|
||||
}
|
||||
.content{
|
||||
width: calc(100% - 60px);
|
||||
width: calc(100% - 80px);
|
||||
float: left;
|
||||
.el-icon-edit{
|
||||
cursor: pointer;
|
||||
|
@ -3,9 +3,9 @@ export function getBaseUrl() {
|
||||
let BASE_API;
|
||||
if (process.env.NODE_ENV === 'development') {
|
||||
// BASE_API = 'https://joylink.club/jlcloud';
|
||||
BASE_API = 'https://test.joylink.club/jlcloud';
|
||||
// BASE_API = 'https://test.joylink.club/jlcloud';
|
||||
// BASE_API = 'http://192.168.3.5:9000'; // 袁琪
|
||||
// BASE_API = 'http://192.168.3.6:9000'; // 旭强
|
||||
BASE_API = 'http://192.168.3.6:9000'; // 旭强
|
||||
// BASE_API = 'http://192.168.3.41:9000'; // 王兴杰
|
||||
} else {
|
||||
BASE_API = process.env.VUE_APP_BASE_API;
|
||||
|
@ -1,5 +1,14 @@
|
||||
<template>
|
||||
<div class="card-box">
|
||||
<div>
|
||||
<el-dialog :title="title" :visible.sync="dialogVisible" width="500px" :before-close="doClose" center>
|
||||
<data-form ref="dataform" :form="form" :formModel="formModel" :rules="rules"></data-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="doCreate">{{$t('global.confirm')}}</el-button>
|
||||
<el-button @click="doClose">{{$t('global.cancel')}}</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</div>
|
||||
<!-- <div class="card-box">
|
||||
<el-steps class="steps" :active="display">
|
||||
<el-step :title="title" icon="el-icon-edit-outline" />
|
||||
<el-step title="" icon="el-icon-upload" />
|
||||
@ -15,133 +24,184 @@
|
||||
<el-button type="primary" @click="turnback">{{ $t('global.back') }}</el-button>
|
||||
</el-button-group>
|
||||
</div>
|
||||
</div>
|
||||
</div> -->
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { updatePublishMapName } from '@/api/jmap/map';
|
||||
|
||||
export default {
|
||||
name: 'PublishMapDraft',
|
||||
data() {
|
||||
return {
|
||||
title: this.$t('publish.updateMapName'),
|
||||
display: 1,
|
||||
UserLoading: false,
|
||||
formModel: {
|
||||
mapId: '',
|
||||
name: ''
|
||||
}
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
isEdit() {
|
||||
return this.$route.params.mode.toUpperCase() == 'edit'.toUpperCase();
|
||||
// import { updatePublishMapName } from '@/api/jmap/map';
|
||||
export default {
|
||||
name: 'PublishMapDraft',
|
||||
data() {
|
||||
return {
|
||||
dialogVisible: false,
|
||||
cityList:[],
|
||||
formModel:{
|
||||
mapId:'',
|
||||
cityCode:'',
|
||||
name:'',
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
form() {
|
||||
const form = {
|
||||
labelWidth: '140px',
|
||||
items: [
|
||||
{ prop: 'name', label: this.$t('publish.mapName'), type: 'text', required: false }
|
||||
]
|
||||
};
|
||||
return form;
|
||||
mounted(){
|
||||
this.loadInitData();
|
||||
},
|
||||
|
||||
rules() {
|
||||
const baseRules = {
|
||||
name: [
|
||||
{ required: true, message: this.$t('rules.pleaseInputMapName'), trigger: 'blur' }
|
||||
]
|
||||
};
|
||||
|
||||
// 清空表单验证提示信息
|
||||
this.$nextTick(function () {
|
||||
this.$refs.dataform.clearValidate();
|
||||
});
|
||||
|
||||
return baseRules;
|
||||
props: {
|
||||
title: String,
|
||||
type:String,
|
||||
},
|
||||
height() {
|
||||
return this.$store.state.app.height - 130;
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.initLoadPage();
|
||||
},
|
||||
methods: {
|
||||
initLoadPage() {
|
||||
// 清空表单验证提示信息
|
||||
this.display = 1;
|
||||
// 加载发布课程列表
|
||||
if (this.isEdit) {
|
||||
this.formModel.mapId = this.$route.params.mapId;
|
||||
this.formModel.name = this.$route.query.name;
|
||||
} else {
|
||||
this.$nextTick(function () {
|
||||
this.$refs.dataform.resetForm();
|
||||
});
|
||||
}
|
||||
computed: {
|
||||
form() {
|
||||
let form={};
|
||||
if(this.type=="updateMapName"){
|
||||
form={
|
||||
labelWidth: '150px',
|
||||
items: [
|
||||
{ prop: 'name', label: this.$t('publish.mapName'), type: 'text', required: true},
|
||||
]
|
||||
}
|
||||
}else{
|
||||
form={
|
||||
labelWidth: '150px',
|
||||
items: [
|
||||
{ prop: 'cityCode', label: this.$t('publish.city'), type: 'select', required: true,options:this.cityList},
|
||||
]
|
||||
}
|
||||
}
|
||||
return form
|
||||
},
|
||||
rules() {
|
||||
let crules ={};
|
||||
if(this.type=="updateMapName"){
|
||||
crules ={
|
||||
name:[
|
||||
{ required: true, message: this.$t('rules.pleaseInputMapName'), trigger: 'blur',max:100 },
|
||||
{ required: true, message: this.$t('rules.pleaseInputMapName'), trigger: 'change',max:100 },
|
||||
]
|
||||
}
|
||||
}else{
|
||||
crules ={
|
||||
id:[
|
||||
{ required: true, message: this.$t('rules.pleaseSelectCity'), trigger: 'change',max:100 },
|
||||
]
|
||||
}
|
||||
}
|
||||
return crules
|
||||
},
|
||||
},
|
||||
update() {
|
||||
this.$refs.dataform.validateForm(() => {
|
||||
updatePublishMapName(this.formModel).then(response => {
|
||||
this.display = 2;
|
||||
this.turnback();
|
||||
this.$message.success(this.$t('publish.updateSuccess'));
|
||||
}).catch(() => {
|
||||
this.$messageBox(this.$t('error.updateFailed'));
|
||||
});
|
||||
});
|
||||
},
|
||||
turnback() {
|
||||
this.$router.go(-1);
|
||||
}
|
||||
}
|
||||
};
|
||||
methods: {
|
||||
async loadInitData() {
|
||||
this.cityList = [];
|
||||
let res=await this.$Dictionary.cityType();
|
||||
this.cityList = res.map(elem => { return { value: elem.code, label: elem.name } });
|
||||
},
|
||||
doShow(row) {
|
||||
this.formModel.mapId=row.id;
|
||||
if(this.type=="updateMapName"){
|
||||
this.formModel.name=row.name;
|
||||
}else{
|
||||
this.formModel.cityCode=row.cityCode;
|
||||
}
|
||||
|
||||
this.dialogVisible = true
|
||||
},
|
||||
doCreate() {
|
||||
let self = this
|
||||
this.$refs.dataform.validateForm(() => {
|
||||
self.$emit('create', Object.assign({}, this.formModel));
|
||||
self.doClose()
|
||||
})
|
||||
},
|
||||
doClose() {
|
||||
this.$refs.dataform.resetForm();
|
||||
this.isShow = false;
|
||||
this.dialogVisible = false
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
// export default {
|
||||
// name: 'PublishMapDraft',
|
||||
// data() {
|
||||
// return {
|
||||
// title: this.$t('publish.updateMapName'),
|
||||
// display: 1,
|
||||
// UserLoading: false,
|
||||
// formModel: {
|
||||
// mapId: '',
|
||||
// name: ''
|
||||
// }
|
||||
// };
|
||||
// },
|
||||
// computed: {
|
||||
// isEdit() {
|
||||
// return this.$route.params.mode.toUpperCase() == 'edit'.toUpperCase();
|
||||
// },
|
||||
|
||||
// form() {
|
||||
// const form = {
|
||||
// labelWidth: '140px',
|
||||
// items: [
|
||||
// { prop: 'name', label: this.$t('publish.mapName'), type: 'text', required: false }
|
||||
// ]
|
||||
// };
|
||||
// return form;
|
||||
// },
|
||||
|
||||
// rules() {
|
||||
// const baseRules = {
|
||||
// name: [
|
||||
// { required: true, message: this.$t('rules.pleaseInputMapName'), trigger: 'blur' }
|
||||
// ]
|
||||
// };
|
||||
|
||||
// // 清空表单验证提示信息
|
||||
// this.$nextTick(function () {
|
||||
// this.$refs.dataform.clearValidate();
|
||||
// });
|
||||
|
||||
// return baseRules;
|
||||
// },
|
||||
// height() {
|
||||
// return this.$store.state.app.height - 130;
|
||||
// }
|
||||
// },
|
||||
// mounted() {
|
||||
// this.initLoadPage();
|
||||
// },
|
||||
// methods: {
|
||||
// initLoadPage() {
|
||||
// // 清空表单验证提示信息
|
||||
// this.display = 1;
|
||||
// // 加载发布课程列表
|
||||
// if (this.isEdit) {
|
||||
// this.formModel.mapId = this.$route.params.mapId;
|
||||
// this.formModel.name = this.$route.query.name;
|
||||
// } else {
|
||||
// this.$nextTick(function () {
|
||||
// this.$refs.dataform.resetForm();
|
||||
// });
|
||||
// }
|
||||
// },
|
||||
// update() {
|
||||
// this.$refs.dataform.validateForm(() => {
|
||||
// updatePublishMapName(this.formModel).then(response => {
|
||||
// this.display = 2;
|
||||
// this.turnback();
|
||||
// this.$message.success(this.$t('publish.updateSuccess'));
|
||||
// }).catch(() => {
|
||||
// this.$messageBox(this.$t('error.updateFailed'));
|
||||
// });
|
||||
// });
|
||||
// },
|
||||
// turnback() {
|
||||
// this.$router.go(-1);
|
||||
// }
|
||||
// }
|
||||
// };
|
||||
</script>
|
||||
|
||||
<style rel="stylesheet/scss" lang="scss" scoped>
|
||||
.steps {
|
||||
width: 940px;
|
||||
margin: 0 auto;
|
||||
margin-top: 20px;
|
||||
height: 100%;
|
||||
|
||||
/deep/ {
|
||||
.el-step__icon.is-icon {
|
||||
width: 95px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.forms {
|
||||
width: 800px;
|
||||
margin: 0 auto;
|
||||
margin-top: 20px;
|
||||
|
||||
/deep/ {
|
||||
.el-select {
|
||||
float: left;
|
||||
width: calc(600px);
|
||||
}
|
||||
|
||||
.el-form-item__content>.el-input>.el-input__inner {
|
||||
float: left;
|
||||
width: calc(600px);
|
||||
}
|
||||
|
||||
.el-input-number {
|
||||
float: left;
|
||||
width: calc(250px);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.draft {
|
||||
width: 400px;
|
||||
text-align: center;
|
||||
margin: 20px auto;
|
||||
}
|
||||
<style lang="scss" scoped>
|
||||
/deep/ .el-dialog--center .el-dialog__body{
|
||||
padding: 15px 65px 10px 10px;
|
||||
}
|
||||
</style>
|
||||
|
@ -1,17 +1,25 @@
|
||||
<template>
|
||||
<div>
|
||||
<QueryListPage ref="queryListPage" :pager-config="pagerConfig" :query-form="queryForm" :query-list="queryList" />
|
||||
<update-operate ref='updateMapName' @reloadTable="reloadTable" @create="handleUpdateMap" :title="$t('publish.updateMapName')" type="updateMapName">
|
||||
</update-operate>
|
||||
<update-operate ref='updateCityName' @reloadTable="reloadTable" @create="handleCityUpdate" :title="$t('publish.updateCityName')" type="updateCityName">
|
||||
</update-operate>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getPublishMapList, delPublishMap, getPublishMapExport, putMapOnLine, putMapOffLine } from '@/api/jmap/map';
|
||||
import { getPublishMapList, delPublishMap, getPublishMapExport, putMapOnLine, putMapOffLine,updatePublishMapName,updatePublishMapCity } from '@/api/jmap/map';
|
||||
import { getSkinCodeList } from '@/api/management/mapskin';
|
||||
import { UrlConfig } from '@/router/index';
|
||||
import localStore from 'storejs';
|
||||
import UpdateOperate from './draft.vue';
|
||||
|
||||
export default {
|
||||
name: 'PublishMap',
|
||||
components:{
|
||||
UpdateOperate
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
cityList: [],
|
||||
@ -68,7 +76,7 @@ export default {
|
||||
{
|
||||
type: 'button',
|
||||
title: this.$t('global.operate'),
|
||||
width: this.$i18n.locale == 'en' ? '540': '540',
|
||||
width: this.$i18n.locale == 'en' ? '650': '650',
|
||||
buttons: [
|
||||
{
|
||||
name: this.$t('publish.publishHistory'),
|
||||
@ -97,6 +105,10 @@ export default {
|
||||
name: this.$t('publish.updateMapName'),
|
||||
handleClick: this.handleUpdate
|
||||
},
|
||||
{
|
||||
name: this.$t('publish.updateCityName'),
|
||||
handleClick: this.handleUpdateCity
|
||||
},
|
||||
{
|
||||
name: this.$t('global.exportMap'),
|
||||
handleClick: this.handleExportMap
|
||||
@ -139,11 +151,15 @@ export default {
|
||||
this.skinCodeList = response.data;
|
||||
});
|
||||
},
|
||||
// 编辑
|
||||
// 编辑名称
|
||||
handleUpdate(index, row) {
|
||||
this.$router.push({ path: `${UrlConfig.publish.mapDraft}/edit/${row.id}`, query: { name: row.name } });
|
||||
// this.$router.push({ path: `${UrlConfig.publish.mapDraft}/edit/${row.id}`, query: { name: row.name } });
|
||||
this.$refs.updateMapName.doShow(row);
|
||||
},
|
||||
// 编辑城市
|
||||
handleUpdateCity(index, row){
|
||||
this.$refs.updateCityName.doShow(row);
|
||||
},
|
||||
|
||||
// 删除
|
||||
handleDelete(index, row) {
|
||||
this.$confirm(this.$t('publish.wellDelType'), this.$t('global.tips'), {
|
||||
@ -161,7 +177,24 @@ export default {
|
||||
});
|
||||
}).catch(() => { });
|
||||
},
|
||||
|
||||
handleUpdateMap(data){
|
||||
delete data.cityCode;
|
||||
updatePublishMapName(data).then(response => {
|
||||
this.reloadTable();
|
||||
this.$message.success(this.$t('publish.updateSuccess'));
|
||||
}).catch(() => {
|
||||
this.$messageBox(this.$t('error.updateFailed'));
|
||||
});
|
||||
},
|
||||
handleCityUpdate(data){
|
||||
delete data.name;
|
||||
updatePublishMapCity(data).then(response => {
|
||||
this.reloadTable();
|
||||
this.$message.success(this.$t('publish.updateSuccess'));
|
||||
}).catch(() => {
|
||||
this.$messageBox(this.$t('error.updateFailed'));
|
||||
});
|
||||
},
|
||||
reloadTable() {
|
||||
this.queryList.reload();
|
||||
},
|
||||
@ -402,8 +435,9 @@ export default {
|
||||
};
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
// /deep/
|
||||
// .el-button+.el-button{
|
||||
// margin-top: 10px;
|
||||
// }
|
||||
/deep/
|
||||
.el-button+.el-button{
|
||||
margin-top: 5px;
|
||||
margin-left: 5px;
|
||||
}
|
||||
</style>
|
||||
|
Loading…
Reference in New Issue
Block a user