Commit 6efe1a3b2009479a6d82de9609c2d2ae6fb67963
1 parent
de222c84
Exists in
master
feat: 出行人新增性别,选家长时提示
Showing
9 changed files
with
52 additions
and
337 deletions
Show diff stats
src/App.vue
1 | <template> | 1 | <template> |
2 | <div id="app"> | 2 | <div id="app"> |
3 | <keep-alive> | 3 | <keep-alive> |
4 | - <!--这里是会被缓存的组件--> | ||
5 | <router-view v-if="this.$route.meta.keepAlive" /> | 4 | <router-view v-if="this.$route.meta.keepAlive" /> |
6 | </keep-alive> | 5 | </keep-alive> |
7 | - <!--这里是不会被缓存的组件--> | 6 | + |
8 | <router-view v-if="!this.$route.meta.keepAlive" /> | 7 | <router-view v-if="!this.$route.meta.keepAlive" /> |
9 | </div> | 8 | </div> |
10 | </template> | 9 | </template> |
src/component/Tabbar.vue
@@ -1,102 +0,0 @@ | @@ -1,102 +0,0 @@ | ||
1 | -<template> | ||
2 | - <div id="tabbar"> | ||
3 | - <div class="tab" :class="active=='lecture'?'active':''" @click="handleLecture"> | ||
4 | - <img v-if="active=='lecture'" src="../assets/tabbar1/tab1_on.png" alt=""> | ||
5 | - <img v-else src="../assets/tabbar1/tab1_off.png" alt=""> | ||
6 | - <p>公益讲座</p> | ||
7 | - </div> | ||
8 | - <div class="center"> | ||
9 | - <img class="tip" src="../assets/tabbar1/tab2.png" alt=""> | ||
10 | - <wx-open-launch-weapp id="launch-btn" username="gh_c0f904a5ee0c" path="pages/index/index?type=zkedt"> | ||
11 | - <script type="text/wxtag-template"> | ||
12 | - <style>.mini_btn { width:500px;height:500px;background:transparent;border:0; }</style> | ||
13 | - <button class="mini_btn"></button> | ||
14 | - </script> | ||
15 | - </wx-open-launch-weapp> | ||
16 | - </div> | ||
17 | - <div class="tab"> | ||
18 | - <div class="block"></div> | ||
19 | - <p>志愿填报</p> | ||
20 | - </div> | ||
21 | - <div class="tab" :class="active=='center'?'active':''" @click="handleCenter"> | ||
22 | - <img v-if="active=='center'" src="../assets/tabbar1/tab3_on.png" alt=""> | ||
23 | - <img v-else src="../assets/tabbar1/tab3_off.png" alt=""> | ||
24 | - <p>个人中心</p> | ||
25 | - </div> | ||
26 | - </div> | ||
27 | -</template> | ||
28 | -<script> | ||
29 | -export default { | ||
30 | - name:'Tabbar', | ||
31 | - props:{ | ||
32 | - active:String | ||
33 | - }, | ||
34 | - mounted(){ | ||
35 | - console.log(this.active) | ||
36 | - }, | ||
37 | - methods:{ | ||
38 | - // 点击讲座 | ||
39 | - handleLecture(){ | ||
40 | - this.$router.push({name:'Lecture'}) | ||
41 | - }, | ||
42 | - // 点击个人中心 | ||
43 | - handleCenter(){ | ||
44 | - this.$router.push({name:'Home'}) | ||
45 | - } | ||
46 | - } | ||
47 | -} | ||
48 | -</script> | ||
49 | -<style lang="scss"> | ||
50 | -#tabbar { | ||
51 | - position: fixed; | ||
52 | - bottom: 0; | ||
53 | - width: 100%; | ||
54 | - height: 100px; | ||
55 | - background: #fff; | ||
56 | - display: flex; | ||
57 | - justify-content: space-around; | ||
58 | - padding-bottom: 40px; | ||
59 | - .tab { | ||
60 | - | ||
61 | - padding: 18px; | ||
62 | - img { | ||
63 | - width: 52px; | ||
64 | - display: block; | ||
65 | - margin: 0 auto; | ||
66 | - } | ||
67 | - .block{ | ||
68 | - width: 52px; | ||
69 | - height: 52px; | ||
70 | - } | ||
71 | - p { | ||
72 | - font-size: 20px; | ||
73 | - color: #999999; | ||
74 | - text-align: center; | ||
75 | - } | ||
76 | - &.active{ | ||
77 | - p{ | ||
78 | - color: #5789FF; | ||
79 | - } | ||
80 | - } | ||
81 | - } | ||
82 | - .center { | ||
83 | - width: 92px; | ||
84 | - height: 92px; | ||
85 | - padding: 30px; | ||
86 | - background: transparent; | ||
87 | - position: absolute; | ||
88 | - top: -60px; | ||
89 | - left: 299px; | ||
90 | - overflow: hidden; | ||
91 | - z-index: 1; | ||
92 | - .tip { | ||
93 | - width: 92px; | ||
94 | - position: absolute; | ||
95 | - top: 50%; | ||
96 | - left: 50%; | ||
97 | - transform: translate(-50%, -50%); | ||
98 | - z-index: -1; | ||
99 | - } | ||
100 | - } | ||
101 | -} | ||
102 | -</style> | ||
103 | \ No newline at end of file | 0 | \ No newline at end of file |
src/component/Tabbar2.vue
@@ -1,109 +0,0 @@ | @@ -1,109 +0,0 @@ | ||
1 | -<template> | ||
2 | - <div id="tabbar"> | ||
3 | - <div class="tab" :class="active=='databook'?'active':''" @click="handleDataBook"> | ||
4 | - <img v-if="active=='databook'" src="../assets/tabbar2/tab1_on.png" alt=""> | ||
5 | - <img v-else src="../assets/tabbar2/tab1_off.png" alt=""> | ||
6 | - <p>数据宝典</p> | ||
7 | - </div> | ||
8 | - <div class="tab" :class="active=='careerplan'?'active':''" @click="handleCareerPlan"> | ||
9 | - <img v-if="active=='careerplan'" src="../assets/tabbar2/tab2_on.png" alt=""> | ||
10 | - <img v-else src="../assets/tabbar2/tab2_off.png" alt=""> | ||
11 | - <p>生涯规划</p> | ||
12 | - </div> | ||
13 | - <!-- <div class="tab" :class="active=='community'?'active':''" @click="handleCommunity"> | ||
14 | - <img v-if="active=='community'" src="../assets/tabbar2/tab3_on.png" alt=""> | ||
15 | - <img v-else src="../assets/tabbar2/tab3_off.png" alt=""> | ||
16 | - <p>社区</p> | ||
17 | - </div> --> | ||
18 | - <div class="tab" :class="active=='service'?'active':''" @click="handleService"> | ||
19 | - <img v-if="active=='service'" src="../assets/tabbar2/tab3_on.png" alt=""> | ||
20 | - <img v-else src="../assets/tabbar2/tab3_off.png" alt=""> | ||
21 | - <p>服务活动</p> | ||
22 | - </div> | ||
23 | - <div class="tab" :class="active=='center'?'active':''" @click="handleCenter"> | ||
24 | - <img v-if="active=='center'" src="../assets/tabbar2/tab4_on.png" alt=""> | ||
25 | - <img v-else src="../assets/tabbar2/tab4_off.png" alt=""> | ||
26 | - <p>个人中心</p> | ||
27 | - </div> | ||
28 | - </div> | ||
29 | -</template> | ||
30 | -<script> | ||
31 | -export default { | ||
32 | - name: 'Tabbar2', | ||
33 | - props: { | ||
34 | - active: String | ||
35 | - }, | ||
36 | - methods: { | ||
37 | - handleDataBook () { | ||
38 | - this.$router.push({ name: 'DataBook' }) | ||
39 | - }, | ||
40 | - handleCareerPlan () { | ||
41 | - this.$router.push({ name: 'CareerPlan' }) | ||
42 | - }, | ||
43 | - handleCommunity () { | ||
44 | - this.$router.push({ name: 'Community' }) | ||
45 | - }, | ||
46 | - handleService () { | ||
47 | - this.$router.push({ name: 'Service' }) | ||
48 | - }, | ||
49 | - handleCenter(){ | ||
50 | - this.$router.push({ name: 'Home' }) | ||
51 | - } | ||
52 | - } | ||
53 | -} | ||
54 | -</script> | ||
55 | -<style lang="scss" scoped> | ||
56 | -#tabbar { | ||
57 | - position: fixed; | ||
58 | - bottom: 0; | ||
59 | - width: 100%; | ||
60 | - height: 100px; | ||
61 | - background: #fff; | ||
62 | - display: flex; | ||
63 | - justify-content: space-around; | ||
64 | - padding-bottom: 40px; | ||
65 | - z-index: 99; | ||
66 | - .tab { | ||
67 | - padding: 18px; | ||
68 | - img { | ||
69 | - width: 36px; | ||
70 | - padding: 20px; | ||
71 | - display: block; | ||
72 | - margin: 0 auto; | ||
73 | - } | ||
74 | - .block { | ||
75 | - width: 52px; | ||
76 | - height: 52px; | ||
77 | - } | ||
78 | - p { | ||
79 | - font-size: 20px; | ||
80 | - color: #999999; | ||
81 | - text-align: center; | ||
82 | - } | ||
83 | - &.active { | ||
84 | - p { | ||
85 | - color: #5789ff; | ||
86 | - } | ||
87 | - } | ||
88 | - } | ||
89 | - .center { | ||
90 | - width: 92px; | ||
91 | - height: 92px; | ||
92 | - padding: 30px; | ||
93 | - background: transparent; | ||
94 | - position: absolute; | ||
95 | - top: -60px; | ||
96 | - left: 299px; | ||
97 | - overflow: hidden; | ||
98 | - z-index: 1; | ||
99 | - .tip { | ||
100 | - width: 92px; | ||
101 | - position: absolute; | ||
102 | - top: 50%; | ||
103 | - left: 50%; | ||
104 | - transform: translate(-50%, -50%); | ||
105 | - z-index: -1; | ||
106 | - } | ||
107 | - } | ||
108 | -} | ||
109 | -</style> | ||
110 | \ No newline at end of file | 0 | \ No newline at end of file |
src/component/Tabbar3.vue
@@ -1,96 +0,0 @@ | @@ -1,96 +0,0 @@ | ||
1 | -<template> | ||
2 | - <div id="tabbar"> | ||
3 | - <div class="tab" :class="active=='ZZY'?'active':''" @click="handZZY"> | ||
4 | - <img v-if="active=='ZZY'" src="../assets/tabbar2/tab2_on.png" alt=""> | ||
5 | - <img v-else src="../assets/tabbar2/tab2_off.png" alt=""> | ||
6 | - <p>周周营</p> | ||
7 | - </div> | ||
8 | - <div class="tab" :class="active=='QXY'?'active':''" @click="handleQYX"> | ||
9 | - <img v-if="active=='QXY'" src="../assets/tabbar2/tab3_on.png" alt=""> | ||
10 | - <img v-else src="../assets/tabbar2/tab3_off.png" alt=""> | ||
11 | - <p>趣学院</p> | ||
12 | - </div> | ||
13 | - <div class="tab" :class="active=='center'?'active':''" @click="handleCenter"> | ||
14 | - <img v-if="active=='center'" src="../assets/tabbar2/tab4_on.png" alt=""> | ||
15 | - <img v-else src="../assets/tabbar2/tab4_off.png" alt=""> | ||
16 | - <p>我的</p> | ||
17 | - </div> | ||
18 | - </div> | ||
19 | -</template> | ||
20 | -<script> | ||
21 | -export default { | ||
22 | - name: 'Tabbar3', | ||
23 | - props: { | ||
24 | - active: String | ||
25 | - }, | ||
26 | - methods: { | ||
27 | - handZZY () { | ||
28 | - let publicName = sessionStorage.getItem('publicName'); | ||
29 | - this.$router.push({ name: 'Service' + publicName, query: { showTab: 'ZZY' } }) | ||
30 | - }, | ||
31 | - handleQYX () { | ||
32 | - let publicName = sessionStorage.getItem('publicName'); | ||
33 | - this.$router.push({ name: 'Service' + publicName, query: { showTab: 'QXY' } }) | ||
34 | - }, | ||
35 | - handleCenter () { | ||
36 | - let publicName = sessionStorage.getItem('publicName'); | ||
37 | - this.$router.push({ name: 'Home'+publicName }) | ||
38 | - } | ||
39 | - } | ||
40 | -} | ||
41 | -</script> | ||
42 | -<style lang="scss" scoped> | ||
43 | -#tabbar { | ||
44 | - position: fixed; | ||
45 | - bottom: 0; | ||
46 | - width: 100%; | ||
47 | - height: 100px; | ||
48 | - background: #fff; | ||
49 | - display: flex; | ||
50 | - justify-content: space-around; | ||
51 | - padding-bottom: 40px; | ||
52 | - z-index: 99; | ||
53 | - .tab { | ||
54 | - padding: 18px; | ||
55 | - img { | ||
56 | - width: 36px; | ||
57 | - padding: 20px; | ||
58 | - display: block; | ||
59 | - margin: 0 auto; | ||
60 | - } | ||
61 | - .block { | ||
62 | - width: 52px; | ||
63 | - height: 52px; | ||
64 | - } | ||
65 | - p { | ||
66 | - font-size: 20px; | ||
67 | - color: #999999; | ||
68 | - text-align: center; | ||
69 | - } | ||
70 | - &.active { | ||
71 | - p { | ||
72 | - color: #5789ff; | ||
73 | - } | ||
74 | - } | ||
75 | - } | ||
76 | - .center { | ||
77 | - width: 92px; | ||
78 | - height: 92px; | ||
79 | - padding: 30px; | ||
80 | - background: transparent; | ||
81 | - position: absolute; | ||
82 | - top: -60px; | ||
83 | - left: 299px; | ||
84 | - overflow: hidden; | ||
85 | - z-index: 1; | ||
86 | - .tip { | ||
87 | - width: 92px; | ||
88 | - position: absolute; | ||
89 | - top: 50%; | ||
90 | - left: 50%; | ||
91 | - transform: translate(-50%, -50%); | ||
92 | - z-index: -1; | ||
93 | - } | ||
94 | - } | ||
95 | -} | ||
96 | -</style> | ||
97 | \ No newline at end of file | 0 | \ No newline at end of file |
src/component/Tabbar4.vue
@@ -25,16 +25,13 @@ export default { | @@ -25,16 +25,13 @@ export default { | ||
25 | }, | 25 | }, |
26 | methods: { | 26 | methods: { |
27 | handZZY () { | 27 | handZZY () { |
28 | - let publicName = sessionStorage.getItem('publicName'); | ||
29 | - this.$router.push({ name: 'Service' + publicName, query: { showTab: 'ZZY' } }) | 28 | + this.$router.push({ name: 'ServiceKQ', query: { showTab: 'ZZY' } }) |
30 | }, | 29 | }, |
31 | handleKQ () { | 30 | handleKQ () { |
32 | - let publicName = sessionStorage.getItem('publicName'); | ||
33 | - this.$router.push({ name: 'Service' + publicName, query: { showTab: 'KQ' } }) | 31 | + this.$router.push({ name: 'ServiceKQ', query: { showTab: 'KQ' } }) |
34 | }, | 32 | }, |
35 | handleCenter () { | 33 | handleCenter () { |
36 | - let publicName = sessionStorage.getItem('publicName'); | ||
37 | - this.$router.push({ name: 'Home'+publicName }) | 34 | + this.$router.push({ name: 'HomeKQ' }) |
38 | } | 35 | } |
39 | } | 36 | } |
40 | } | 37 | } |
src/router/index.js
@@ -195,7 +195,7 @@ const routes = [{ | @@ -195,7 +195,7 @@ const routes = [{ | ||
195 | name: 'SelectContact', | 195 | name: 'SelectContact', |
196 | component: SelectContact, | 196 | component: SelectContact, |
197 | meta: { | 197 | meta: { |
198 | - title: '选择联系人' | 198 | + title: '选择出行人' |
199 | } | 199 | } |
200 | }, | 200 | }, |
201 | { | 201 | { |
@@ -203,7 +203,7 @@ const routes = [{ | @@ -203,7 +203,7 @@ const routes = [{ | ||
203 | name: 'EditContact', | 203 | name: 'EditContact', |
204 | component: EditContact, | 204 | component: EditContact, |
205 | meta: { | 205 | meta: { |
206 | - title: '修改联系人' | 206 | + title: '修改出行人' |
207 | } | 207 | } |
208 | }, | 208 | }, |
209 | { | 209 | { |
@@ -224,7 +224,7 @@ const routes = [{ | @@ -224,7 +224,7 @@ const routes = [{ | ||
224 | }, | 224 | }, |
225 | ] | 225 | ] |
226 | const router = new VueRouter({ | 226 | const router = new VueRouter({ |
227 | - mode: 'history', | 227 | + mode: 'hash', |
228 | // base: process.env.BASE_URL+'/center', | 228 | // base: process.env.BASE_URL+'/center', |
229 | base: process.env.BASE_URL, | 229 | base: process.env.BASE_URL, |
230 | routes | 230 | routes |
src/views/PublicService/ServiceKQ.vue
@@ -24,13 +24,13 @@ export default { | @@ -24,13 +24,13 @@ export default { | ||
24 | // sessionStorage.setItem('prePage', 'Service' + this.publicName); | 24 | // sessionStorage.setItem('prePage', 'Service' + this.publicName); |
25 | // sessionStorage.setItem('unionId', 'oJPmPuLaAx2x2DaRGfCFeYuLWzLU'); | 25 | // sessionStorage.setItem('unionId', 'oJPmPuLaAx2x2DaRGfCFeYuLWzLU'); |
26 | const sUserAgent = window.navigator.userAgent.toLowerCase() | 26 | const sUserAgent = window.navigator.userAgent.toLowerCase() |
27 | - alert(sUserAgent) | 27 | + // alert(sUserAgent) |
28 | console.log(sUserAgent) | 28 | console.log(sUserAgent) |
29 | const dtdreamweb = sUserAgent.indexOf("dtdreamweb") > -1 | 29 | const dtdreamweb = sUserAgent.indexOf("dtdreamweb") > -1 |
30 | const miniprogram = sUserAgent.indexOf("miniprogram") > -1 && sUserAgent.indexOf("alipay") > -1 | 30 | const miniprogram = sUserAgent.indexOf("miniprogram") > -1 && sUserAgent.indexOf("alipay") > -1 |
31 | if (dtdreamweb) { | 31 | if (dtdreamweb) { |
32 | alert('浙里办') | 32 | alert('浙里办') |
33 | - // window.location.href = `https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=hswsy`; | 33 | + window.location.href = `https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=hswsy`; |
34 | } | 34 | } |
35 | 35 | ||
36 | if (miniprogram) { | 36 | if (miniprogram) { |
src/views/Service/EditContact.vue
@@ -4,6 +4,14 @@ | @@ -4,6 +4,14 @@ | ||
4 | <van-cell-group> | 4 | <van-cell-group> |
5 | <van-field v-model="userTypeName" label="身份类型" readonly /> | 5 | <van-field v-model="userTypeName" label="身份类型" readonly /> |
6 | <van-field v-model="travelerName" label="姓名" placeholder="需与证件姓名一致" /> | 6 | <van-field v-model="travelerName" label="姓名" placeholder="需与证件姓名一致" /> |
7 | + <van-cell title="性别"> | ||
8 | + <template #right-icon> | ||
9 | + <van-radio-group v-model="gender" direction="horizontal" style="width:67%;"> | ||
10 | + <van-radio name="1">男</van-radio> | ||
11 | + <van-radio name="2">女</van-radio> | ||
12 | + </van-radio-group> | ||
13 | + </template> | ||
14 | + </van-cell> | ||
7 | <van-field v-model="phone" label="手机号码" maxlength="11" placeholder="请填写手机号码" /> | 15 | <van-field v-model="phone" label="手机号码" maxlength="11" placeholder="请填写手机号码" /> |
8 | <van-field v-model="travelerIdCard" label="身份证" maxlength="18" placeholder="请填写证件号码" /> | 16 | <van-field v-model="travelerIdCard" label="身份证" maxlength="18" placeholder="请填写证件号码" /> |
9 | </van-cell-group> | 17 | </van-cell-group> |
@@ -18,9 +26,10 @@ export default { | @@ -18,9 +26,10 @@ export default { | ||
18 | return { | 26 | return { |
19 | id: '', | 27 | id: '', |
20 | userType: '', | 28 | userType: '', |
21 | - userTypeName:'', | 29 | + userTypeName: '', |
22 | travelerName: '', | 30 | travelerName: '', |
23 | phone: '', | 31 | phone: '', |
32 | + gender: '', | ||
24 | travelerIdCard: '', | 33 | travelerIdCard: '', |
25 | travelerNum: '' | 34 | travelerNum: '' |
26 | } | 35 | } |
@@ -45,6 +54,10 @@ export default { | @@ -45,6 +54,10 @@ export default { | ||
45 | methods: { | 54 | methods: { |
46 | // 确认 | 55 | // 确认 |
47 | addContact () { | 56 | addContact () { |
57 | + if (!this.gender) { | ||
58 | + this.$toast('请选择性别') | ||
59 | + return; | ||
60 | + } | ||
48 | if (!this.phone) { | 61 | if (!this.phone) { |
49 | this.$toast('请输入手机号') | 62 | this.$toast('请输入手机号') |
50 | return; | 63 | return; |
@@ -66,7 +79,8 @@ export default { | @@ -66,7 +79,8 @@ export default { | ||
66 | contactsName: this.travelerName, | 79 | contactsName: this.travelerName, |
67 | contactsMobile: this.phone, | 80 | contactsMobile: this.phone, |
68 | contactsIdCard: this.travelerIdCard, | 81 | contactsIdCard: this.travelerIdCard, |
69 | - contactsType: this.userType | 82 | + contactsType: this.userType, |
83 | + gender:Number(this.gender) | ||
70 | } | 84 | } |
71 | this.$toast.loading({ | 85 | this.$toast.loading({ |
72 | message: '加载中', | 86 | message: '加载中', |
@@ -77,7 +91,7 @@ export default { | @@ -77,7 +91,7 @@ export default { | ||
77 | this.$toast.clear() | 91 | this.$toast.clear() |
78 | if (res.data.code == 200) { | 92 | if (res.data.code == 200) { |
79 | this.$toast.success('完善成功') | 93 | this.$toast.success('完善成功') |
80 | - this.$router.back() | 94 | + this.$router.back() |
81 | } else { | 95 | } else { |
82 | this.$toast.fail(res.message) | 96 | this.$toast.fail(res.message) |
83 | } | 97 | } |
src/views/Service/SelectContact.vue
@@ -2,18 +2,19 @@ | @@ -2,18 +2,19 @@ | ||
2 | <div id="selectContact"> | 2 | <div id="selectContact"> |
3 | <div class="box"> | 3 | <div class="box"> |
4 | <template v-for="(item,index) in contactList"> | 4 | <template v-for="(item,index) in contactList"> |
5 | - <div class="contact_item" v-if="!hideParent&&item.userType!=1||item.userType==1" :key="index"> | ||
6 | - <van-icon class="edit" name="edit" @click="editContact(index)" /> | ||
7 | - <div class="info"> | ||
8 | - <p class="name">{{item.travelerName}}<span v-if="!item.travelerIdCard">需完善</span></p> | ||
9 | - <p class="des">{{item.userType==1?'学生':'家长'}}·{{item.travelerMobile}}</p> | 5 | + <div class="contact_item" v-if="!hideParent&&item.userType!=1||item.userType==1" :key="index"> |
6 | + <van-icon class="edit" name="edit" @click="editContact(index)" /> | ||
7 | + <div class="info"> | ||
8 | + <p class="name">{{item.travelerName}}<span v-if="!item.travelerIdCard||!item.gender">需完善</span></p> | ||
9 | + <p class="des">{{item.userType==1?'学生':'家长'}}·{{item.travelerMobile}}</p> | ||
10 | + </div> | ||
11 | + <van-checkbox v-if="item.userType==1" class="checkbox" v-model="item.checked" shape="square"></van-checkbox> | ||
12 | + <van-checkbox v-else class="checkbox" v-model="item.checked" @change="checkboxChange" shape="square"></van-checkbox> | ||
10 | </div> | 13 | </div> |
11 | - <van-checkbox class="checkbox" v-model="item.checked" shape="square"></van-checkbox> | ||
12 | - </div> | ||
13 | </template> | 14 | </template> |
14 | <div class="add_btn" @click="showAddChildPopupGroup=true"> | 15 | <div class="add_btn" @click="showAddChildPopupGroup=true"> |
15 | <van-icon name="add-o" /> | 16 | <van-icon name="add-o" /> |
16 | - 新增联系人 | 17 | + 新增出行学生 |
17 | </div> | 18 | </div> |
18 | </div> | 19 | </div> |
19 | <van-button class="btn" type="primary" @click="selectContact">确定</van-button> | 20 | <van-button class="btn" type="primary" @click="selectContact">确定</van-button> |
@@ -24,18 +25,19 @@ | @@ -24,18 +25,19 @@ | ||
24 | </template> | 25 | </template> |
25 | <script> | 26 | <script> |
26 | import AddChildPopupGroup from '@/views/PublicHome/component/AddChildPopupGroup' | 27 | import AddChildPopupGroup from '@/views/PublicHome/component/AddChildPopupGroup' |
28 | +import { Dialog } from 'vant'; | ||
27 | export default { | 29 | export default { |
28 | data () { | 30 | data () { |
29 | return { | 31 | return { |
30 | - limit:'', | ||
31 | - hideParent:false, | 32 | + limit: '', |
33 | + hideParent: false, | ||
32 | contactList: [], | 34 | contactList: [], |
33 | showAddChildPopupGroup: false | 35 | showAddChildPopupGroup: false |
34 | } | 36 | } |
35 | }, | 37 | }, |
36 | mounted () { | 38 | mounted () { |
37 | this.limit = this.$route.query.limit; | 39 | this.limit = this.$route.query.limit; |
38 | - this.hideParent = this.$route.query.hideParent?true:false; | 40 | + this.hideParent = this.$route.query.hideParent ? true : false; |
39 | console.log(this.hideParent) | 41 | console.log(this.hideParent) |
40 | this.getContactList() | 42 | this.getContactList() |
41 | }, | 43 | }, |
@@ -58,7 +60,8 @@ export default { | @@ -58,7 +60,8 @@ export default { | ||
58 | travelerNum: userInfo?.centerNo, | 60 | travelerNum: userInfo?.centerNo, |
59 | travelerIdCard: userInfo?.idCard, | 61 | travelerIdCard: userInfo?.idCard, |
60 | userType: 2, | 62 | userType: 2, |
61 | - travelerName: userInfo?.nickName | 63 | + travelerName: userInfo?.nickName, |
64 | + gender: userInfo?.gender, | ||
62 | }) | 65 | }) |
63 | this.contactList = contactList | 66 | this.contactList = contactList |
64 | } | 67 | } |
@@ -87,7 +90,7 @@ export default { | @@ -87,7 +90,7 @@ export default { | ||
87 | let selectedArr = []; | 90 | let selectedArr = []; |
88 | for (let i in contactList) { | 91 | for (let i in contactList) { |
89 | if (contactList[i]?.checked) { | 92 | if (contactList[i]?.checked) { |
90 | - if (!contactList[i].travelerIdCard&&!this.hideParent) { | 93 | + if ((!contactList[i].travelerIdCard||!contactList[i].gender) && !this.hideParent) { |
91 | this.$toast('请先完善您选择的联系人信息') | 94 | this.$toast('请先完善您选择的联系人信息') |
92 | return; | 95 | return; |
93 | } else { | 96 | } else { |
@@ -99,7 +102,7 @@ export default { | @@ -99,7 +102,7 @@ export default { | ||
99 | } | 102 | } |
100 | } | 103 | } |
101 | } | 104 | } |
102 | - console.log(this.limit,selectedArr.length) | 105 | + console.log(this.limit, selectedArr.length) |
103 | if (this.limit && this.limit != selectedArr.length) { | 106 | if (this.limit && this.limit != selectedArr.length) { |
104 | this.$toast(`请选择${this.limit}位联系人`) | 107 | this.$toast(`请选择${this.limit}位联系人`) |
105 | return; | 108 | return; |
@@ -107,6 +110,15 @@ export default { | @@ -107,6 +110,15 @@ export default { | ||
107 | // console.log(selectedArr) | 110 | // console.log(selectedArr) |
108 | sessionStorage.setItem('selectedContactArr', JSON.stringify(selectedArr)) | 111 | sessionStorage.setItem('selectedContactArr', JSON.stringify(selectedArr)) |
109 | this.$router.back() | 112 | this.$router.back() |
113 | + }, | ||
114 | + checkboxChange (e) { | ||
115 | + if (e == true) { | ||
116 | + Dialog.alert({ | ||
117 | + title: '温馨提示', | ||
118 | + message: '活动参与主体为学生本人,请选择出行学生!未绑定学生,请新增出行学生进行添加。', | ||
119 | + confirmButtonColor:'#3385FF' | ||
120 | + }) | ||
121 | + } | ||
110 | } | 122 | } |
111 | }, | 123 | }, |
112 | components: { | 124 | components: { |