jiazhipeng 11 months ago
parent
commit
f181e92c72
  1. 14
      store/modules/user.js
  2. 35
      subPackages/user/infoFilling.vue
  3. 78
      subPackages/user/register.vue

14
store/modules/user.js

@ -18,7 +18,10 @@ export default {
date: null, //使用日期信息
coupon: null, // 优惠券信息
people: null, //预定人信息
} // 会议预定信息
}, // 会议预定信息
lingoIds: [],// 语言列表
scenicIds: [], // 景区列表
},
// 类似 vue 里的 mothods(同步方法)
mutations: {
@ -64,6 +67,13 @@ export default {
//meetRoomReserve修改会议预定信息
changeMeetRoomReserve(state, data){
state.meetRoomReserve = data
}
},
changeLingoIds(state, date) {
state.groupIds = data
},
changeScenicIds(state, date) {
state.groupIds = data
},
}
}

35
subPackages/user/infoFilling.vue

@ -15,14 +15,32 @@
</template>
<script>
import { mapState } from 'vuex'
import {pathToBase64} from "@/static/js/mmmm-image-tools/index.js"
export default {
data() {
return {
valueType: '',
inputValue: '',
lingo_ids: null, lingo_idsStr:'',
scenic_ids: null, scenic_idsStr:'',
keyNames: [
{key: 'nickname', value:'姓名'},{key: 'mobile', value:'手机号'},
{key: 'certificate_number', value: '导游证号码'},
{key: 'duration',value: '工作年限'},
{key: 'bio',value: '个性签名'},
{key: 'scenic_ids',value: '擅长景区'},
{key: 'lingo_ids',value: '语言能力'},
]
}
},
computed: {
...mapState(['lingoIds','scenicIds'])
},
onLoad(options) {
this.initData(options)
@ -36,23 +54,20 @@
this.inputValue = ''
if (options.valueType) {
this.valueType = options.valueType
let title = ''
switch(this.valueType){
case "nickname":
title = '姓名'
break;
case "mobile":
title = '手机号'
break;
let titleData = this.keyNames.find(v=>v.key == this.valueType)
if (titleData) {
uni.setNavigationBarTitle({title: titleData.value});
}
uni.setNavigationBarTitle({title: title});
} else {
this.goBack()
return
}
if (options.inputValue && option.inputValue!='null' && option.inputValue!='undefined') {
if (options.inputValue && options.inputValue!='null' && options.inputValue!='undefined') {
this.inputValue = options.inputValue
}
console.log(this.lingoIds, this.scenicIds)
},
uploadImg() {

78
subPackages/user/register.vue

@ -14,12 +14,12 @@
</div>
<view class="userinfo-item" @click="changeValue('nickname')">
<span>姓名</span>
<view v-if="info.nickname">{{info.nickname}}</view>
<view class="text-overflow" v-if="info.nickname">{{info.nickname}}</view>
<view v-else class="empty-value" >请填写</view>
</view>
<view class="userinfo-item" @click="selectSex">
<span>性别</span>
<view v-if="info.genderStr">{{info.genderStr}}</view>
<view class="text-overflow" v-if="info.genderStr">{{info.genderStr}}</view>
<view v-else class="empty-value" >请选择</view>
</view>
<view class="userinfo-item" @click="changeValue('mobile')">
@ -31,44 +31,44 @@
<view class="info-title" style="margin-top: 46rpx;">·工作相关</view>
<view class="userinfo-item" @click="selectRank">
<span>导游等级</span>
<view v-if="info.rankStr">{{info.rankStr}}</view>
<view v-if="info.group_idStr">{{info.group_idStr}}</view>
<view v-else class="empty-value">请选择</view>
</view>
<view class="userinfo-item">
<view class="userinfo-item" @click="changeValue('certificate_number')">
<span>导游证号</span>
<view v-if="info.rankStr">{{info.rankStr}}</view>
<view class="text-overflow" v-if="info.certificate_number">{{info.certificate_number}}</view>
<view v-else class="empty-value">请填写</view>
</view>
<view class="userinfo-item">
<view class="userinfo-item" @click="changeValue('duration')">
<span>工作年限</span>
<view v-if="info.rankStr">{{info.rankStr}}</view>
<view class="text-overflow" v-if="info.duration">{{info.duration}}</view>
<view v-else class="empty-value">请填写</view>
</view>
<view class="userinfo-item">
<view class="userinfo-item" @click="changeValue('lingo_ids')">
<span>语言能力</span>
<view v-if="info.rankStr">{{info.rankStr}}</view>
<view class="text-overflow" v-if="info.lingo_idsStr">{{info.lingo_idsStr}}</view>
<view v-else class="empty-value">请选择</view>
</view>
<view class="userinfo-item">
<view class="userinfo-item" @click="changeValue('scenic_ids')">
<span>擅长景区</span>
<view v-if="info.rankStr">{{info.rankStr}}</view>
<view class="text-overflow" v-if="info.scenic_idsStr">{{info.scenic_idsStr}}</view>
<view v-else class="empty-value">请选择</view>
</view>
<view class="userinfo-item">
<view class="userinfo-item" @click="changeValue('bio')">
<span>个性签名</span>
<view v-if="info.rankStr">{{info.rankStr}}</view>
<view class="text-overflowRows" v-if="info.bio">{{info.bio}}</view>
<view v-else class="empty-value">请填写</view>
</view>
<view class="userinfo-item">
<span>核心亮点</span>
<view v-if="info.rankStr">{{info.rankStr}}</view>
<view class="text-overflow" v-if="info.bio">{{info.bio}}</view>
<view v-else class="empty-value">请填写</view>
</view>
<view class="info-title" style="margin-top: 46rpx;">·讲解视频</view>
<view class="userinfo-item" @click="selectRank">
<span>讲解视频</span>
<view v-if="info.rankStr">{{info.rankStr}}</view>
<view class="text-overflow" v-if="info.rankStr">{{info.rankStr}}</view>
<view v-else class="empty-value">请选择</view>
</view>
@ -85,17 +85,21 @@
return {
info: {
nickname: '',
avatar: '',gender: null, genderStr: '',mobile:'',rank: null,rankStr: '',
guideNo: '', workYear: '', languague: null, languagueStr:'',
scenicSpot: null, scenicSpotStr: '', sign: '', highlights: ''
nickname: '',mobile:'',avatar: '',
gender: null, genderStr: '',
group_id: null,group_idStr: '',
certificate_number: '',duration:'',
lingo_ids: null, lingo_idsStr:'',
scenic_ids: null, scenic_idsStr:'',
bio:''
},
groupIds: [], //
lingoIds: [],//
scenicIds: [], //
}
},
mounted() {
uni.request({url:'/api/api/Merchants/get_graphic'})
// this.Post({}, '/api/Merchants/get_graphic').then(res => {})
uni.$on("updateInfo",this.updateInfo)
},
beforeUnmount () {
@ -107,7 +111,28 @@
uni.$off("updateInfo",this.updateInfo)
},
onLoad () {
this.Post({}, '/api/Merchants/get_graphic').then(res => {})
this.initSelect()
},
methods: {
initSelect () {
//
this.Post({}, '/api/guide/getGuideGroupList').then(res => {
this.groupIds = res.data
})
//
this.Post({},'/api/guide/getGuideLingoList').then(res =>{
this.lingoIds = res.data
this.$store.commit('changeLingoIds', res.data)
})
//
this.Post({},'/api/guide/getGuideScenicList').then(res =>{
this.scenicIds = res
this.$store.commit('changeScenicIds', res.data)
})
},
//
uploadAvator () {
@ -141,14 +166,14 @@
},
selectRank () {
let _this = this
let itemList = ['初级导游','中级导游','高级导游','大师级导游']
let valueList = ['1','2','3','4']
let itemList = this.lingoIds.map(v=>v.name)
let valueList = this.lingoIds.map(v=>v.id)
uni.showActionSheet({
itemList: itemList,
success: function (res) {
let index = res.tapIndex;
_this.info.rankStr = itemList[index]
_this.info.rank = valueList[index]
_this.info.group_idStr = itemList[index]
_this.info.group_id = valueList[index]
},
fail: function (res) {
@ -380,6 +405,7 @@
font-size: 31rpx;
flex-shrink: 0;
color: #000;
width: 200rpx;
}
.userinfo-item i {

Loading…
Cancel
Save