Browse Source

组织树实现,修改组织树功能

feature
mk 1 year ago
parent
commit
7a52c0c316
  1. 4
      src/api/user.js
  2. BIN
      src/assets/images/icons/homeBlue.png
  3. 14
      src/router/index.js
  4. 4
      src/store/modules/app.js
  5. 1316
      src/views/selectAgency/1.json
  6. 7
      src/views/selectAgency/index.less
  7. 57
      src/views/selectAgency/index.vue

4
src/api/user.js

@ -10,7 +10,7 @@ export function login(data) {
data
})
}
// 检测用户是否完善信息
// 检测用户是否完善信息-废弃
export function checkWxmpRegister(params) {
return request({
url: `/third/pacustomer/checkWxmpRegister`,
@ -41,7 +41,7 @@ export function register(data) {
// 修改用户信息
export function editUser(data) {
return request({
url: `/third/pauserwechat/updateUserWechat`,
url: `/epmetuser/user/saveOrUpdateUserH5DTO`,
method: 'post',
message: '提交用户信息中...',
data

BIN
src/assets/images/icons/homeBlue.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 507 B

14
src/router/index.js

@ -74,24 +74,20 @@ router.beforeEach((to, from, next) => {
document.title = to.meta.title ? to.meta.title : title
}
if (localStorage.getItem('token')) {
store.dispatch('getUserInfo').then(() => {
checkWxmpRegister({
userId: store.state.app.userInfo.userId
}).then(res => {
if (res) {
store.dispatch('getUserInfo').then((res) => {
if (res.agencyId) {
next()
} else {
if (to.path === '/register') {
if (to.path === '/selectAgency') {
next()
} else {
console.log(to)
next({ path: '/register', query: { redirect: to.path, params: JSON.stringify(to.query) } })
next({ path: '/selectAgency' })
}
}
})
})
} else {
if (getQueryStringByName('code') ) {
if (getQueryStringByName('code') && !whiteList.includes(to.path)) {
login({ wxCode: getQueryStringByName('code'),appId:'wx1078fa1e99424de9'}).then(res => {
localStorage.setItem('token', res.token)
let state = decodeURIComponent(getQueryStringByName('state'))

4
src/store/modules/app.js

@ -17,14 +17,14 @@ const actions = {
getUserInfo({ commit}) {
return new Promise((resolve, reject) => {
if (Object.keys(state.userInfo).length) {
resolve()
resolve(state.userInfo)
}
getUserWechatByUserId({
token: localStorage.getItem('token')
})
.then(res => {
commit('SET_USER_INFO', res)
resolve()
resolve(res)
})
.catch(error => {
reject(error)

1316
src/views/selectAgency/1.json

File diff suppressed because it is too large

7
src/views/selectAgency/index.less

@ -0,0 +1,7 @@
.selfCity{
background-color: #ffffff;
box-sizing: border-box;
}
.selectAgency{
border-radius: 8px;
}

57
src/views/selectAgency/index.vue

@ -1,22 +1,61 @@
<template>
<div class=''>
<div>123456789</div>
<div>
<div class="selfCity flex flex-center2 p-12 flex-end">
<div class="flex flex-center2 flex-1">
<img src="@/assets/images/icons/homeBlue.png" alt="" />
<span style="color: #666666;" v-if="!selfCityName">请选择您所在城市</span>
<span v-else>{{ selfCityName}}</span>
</div>
<van-button v-show="false" type="info" size="small" round class="m-right10">手动选择</van-button>
</div>
<div class="container">
<van-list finished-text="没有更多了" @load="getAgency" class="selectAgency">
<van-cell v-for="(item, index) in cityJson" :title="item.agencyName" :key="index" is-link
@click="handelClickAgency(item)"></van-cell>
</van-list>
</div>
</div>
</template>
<script>
import { editUser } from "@/api/user";
import cityJson from "./1.json"
export default {
data() {
return {};
return {
cityJson: [cityJson],
selfCity: [],
selfCityName:null
};
},
created() {},
methods: {},
components:{},
computed:{},
created() {
this.getAgency()
},
methods: {
getAgency() {
// this.cityJson = [cityJson]
},
async handelClickAgency(item) {
this.selfCity.push(item);
this.selfCityName = this.selfCity.map(item=>item.agencyName).join(',')
if (item.level === 'community') {
let parm = this.$store.state.app.userInfo;
parm.agencyId = item.agencyId;
let {code} = await editUser(parm)
if(code == 0){
this.$router.replace('/')
}
} else {
this.cityJson = item.children
}
}
},
components: {},
computed: {},
watch: {},
}
</script>
<style lang='less'>
<style lang='less' scoped>
@import './index';
</style>

Loading…
Cancel
Save