79cf495e by 杨炀

add:团队注册页面

1 parent 7300500e
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
5 "style": { 5 "style": {
6 "navigationBarTitleText": "工作台", 6 "navigationBarTitleText": "工作台",
7 "backgroundColor": "#ffffff", 7 "backgroundColor": "#ffffff",
8 "navigationStyle": "default", 8 "navigationStyle": "custom",
9 "navigationBarTextStyle": "black", 9 "navigationBarTextStyle": "black",
10 "navigationBarBackgroundColor": "#ffffff" 10 "navigationBarBackgroundColor": "#ffffff"
11 } 11 }
...@@ -247,7 +247,12 @@ ...@@ -247,7 +247,12 @@
247 "navigationBarTitleText": "登录", 247 "navigationBarTitleText": "登录",
248 "enablePullDownRefresh": false 248 "enablePullDownRefresh": false
249 } 249 }
250 250 }, {
251 "path": "pages/index/register",
252 "style": {
253 "navigationBarTitleText": "注册",
254 "enablePullDownRefresh": false
255 }
251 } 256 }
252 ], 257 ],
253 "globalStyle": { 258 "globalStyle": {
......
1 <template> 1 <template>
2 <view class="page"> 2 <view class="page">
3 <view> 3 <view>
4 <view>您好!<br />欢迎使用中跆协会员管理系统</view> 4 <view class="welcome">您好!<br />欢迎使用中跆协会员管理系统</view>
5 <view class="flexbox"> 5 <view class="flexbox">
6 <view>添加会员</view> 6 <view>添加会员</view>
7 <view>会员缴费</view> 7 <view>会员缴费</view>
...@@ -22,13 +22,13 @@ ...@@ -22,13 +22,13 @@
22 </uni-grid-item> 22 </uni-grid-item>
23 </uni-grid> 23 </uni-grid>
24 </uni-section> 24 </uni-section>
25 <uni-section title="办提醒" padding> 25 <uni-section title="办提醒" padding>
26 <template v-slot:right> 26 <template v-slot:right>
27 更多 27 <text @click="goMsgList" class="more">更多></text>
28 </template> 28 </template>
29 <view class="msglist"> 29 <view class="msglist">
30 <view class="msgitem" v-for="n in 4"> 30 <view class="msgitem" v-for="n in 4">
31 <text class="dot"></text> 31 <text class="dot" :class="n.isRead?'done':''"></text>
32 <view class="tt esp">你有一条会员缴费等待审批,点击前去处理!</view> 32 <view class="tt esp">你有一条会员缴费等待审批,点击前去处理!</view>
33 <view class="date">2023-09-23</view> 33 <view class="date">2023-09-23</view>
34 </view> 34 </view>
...@@ -113,10 +113,6 @@ ...@@ -113,10 +113,6 @@
113 if (app.globalData.isLogin) { 113 if (app.globalData.isLogin) {
114 init(); 114 init();
115 } else { 115 } else {
116 let path = '/pages/index/login';
117 uni.navigateTo({
118 url: path
119 });
120 116
121 app.firstLoadCallback = () => { 117 app.firstLoadCallback = () => {
122 init(); 118 init();
...@@ -131,72 +127,14 @@ ...@@ -131,72 +127,14 @@
131 } 127 }
132 128
133 }); 129 });
134 onReady(() => {
135 proxy._mapContext = uni.createMapContext("map", this)
136 })
137 130
138 let currUser 131 function gologin(){
139 132 let path = '/pages/index/login';
140 function checkUserPhone(path) { 133 uni.navigateTo({
141 currUser = uni.getStorageSync('currUser') 134 url: path
142 if (!currUser) {
143 loginServer.pcLogin().then(() => {
144 currUser = uni.getStorageSync('currUser')
145 if (currUser.phonenumber) {
146 debugger
147 return true
148 } else {
149 popYanZheng.value.open()
150 goPath = path
151 return false;
152 }
153 }); 135 });
154 } else {
155 if (currUser.phonenumber) {
156 return true
157 } else {
158 popYanZheng.value.open()
159 goPath = path
160 return false;
161 }
162 }
163 } 136 }
164 137
165 function decryptPhoneNumber(res) {
166 // console.log(res)
167 loading.value = true
168 if (res.detail.errMsg.indexOf('ok') > -1) {
169 getWxUserPhone(res.detail).then((data) => {
170 console.log(data)
171 popYanZheng.value.close()
172 uni.redirectTo({
173 url: goPath
174 })
175 }).finally(() => {
176 loading.value = false
177 });
178 } else {
179 loading.value = false
180 }
181 }
182
183 function clickImg() {
184 uni.previewImage({
185 urls: venue.value.venuePicArr,
186 // current: 0,
187 success: function(res) {
188 console.log('success', res)
189 },
190 fail: function(res) {
191 console.log('fail', res)
192 },
193 complete: function(res) {
194 console.log('complete', res)
195 }
196 })
197 }
198
199
200 function goCenter() { 138 function goCenter() {
201 let path = '/pages/usercenter/usercenter'; 139 let path = '/pages/usercenter/usercenter';
202 if (checkUserPhone(path)) { 140 if (checkUserPhone(path)) {
...@@ -206,31 +144,12 @@ ...@@ -206,31 +144,12 @@
206 } 144 }
207 } 145 }
208 146
209 function popupClose() {
210 popup.value.close();
211 }
212
213 function init() { 147 function init() {
214 venue.value = app.globalData.venue
215 latitude.value = app.globalData.venue.latitude
216 longitude.value = app.globalData.venue.longitude
217 // 修改页头标题
218 uni.setNavigationBarTitle({
219 title: venue.value.venueName
220 });
221 }
222 148
223 function open() {
224 popup.value.open();
225 } 149 }
226 150
227 function makeCall() { 151 function goMsgList(){
228 uni.makePhoneCall({ 152
229 phoneNumber: venue.value.venueTelno
230 });
231 }
232 function closeMaptypeList() {
233 this.showH5maptype = false;
234 } 153 }
235 154
236 function goItem(item) { 155 function goItem(item) {
...@@ -251,6 +170,9 @@ ...@@ -251,6 +170,9 @@
251 } 170 }
252 </script> 171 </script>
253 <style scope lang="scss"> 172 <style scope lang="scss">
173 .welcome{padding: 55rpx;
174 line-height: 55rpx;
175 font-size: 36rpx;}
254 .flexbox { 176 .flexbox {
255 display: flex; 177 display: flex;
256 justify-content: space-around; 178 justify-content: space-around;
...@@ -290,4 +212,26 @@ ...@@ -290,4 +212,26 @@
290 top: 5px; 212 top: 5px;
291 right: 15px; 213 right: 15px;
292 } 214 }
215 :deep(.uni-section){
216 background-color: transparent;
217 }
218 :deep(.uni-section .uni-section-header__content){font-size: 36rpx;color: #29343C;}
219 .more{color: #929AA0;font-size: 24rpx;}
220 .msglist{
221 .msgitem{background: #FFFFFF;border-radius: 10rpx;margin-bottom: 25rpx;padding: 30rpx 20rpx 30rpx 50rpx;
222 position: relative;
223 .dot{width: 12rpx;display: block;position: absolute;left: 20rpx;top: 40rpx;
224 height: 12rpx;
225 background: #C40F18;
226 border-radius: 50%;}
227 .dot.done{
228 background: #C7C7CD;}
229 .tt{
230 font-size: 28rpx;
231 color: #29343C;}
232 .date{
233 color: #929AA0;
234 font-size: 24rpx;}
235 }
236 }
293 </style> 237 </style>
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -59,7 +59,7 @@ ...@@ -59,7 +59,7 @@
59 <button @click="login" class="btn-red">登录</button> 59 <button @click="login" class="btn-red">登录</button>
60 </view> 60 </view>
61 <view class="center-item"> 61 <view class="center-item">
62 <text class="text-red">没有账号,去注册</text> 62 <text class="text-red" @click="goRegister">没有账号,去注册</text>
63 </view> 63 </view>
64 64
65 </view> 65 </view>
...@@ -95,6 +95,12 @@ ...@@ -95,6 +95,12 @@
95 url: path 95 url: path
96 }); 96 });
97 } 97 }
98 function goRegister(){
99 let path = '/pages/index/register';
100 uni.navigateTo({
101 url: path
102 });
103 }
98 </script> 104 </script>
99 105
100 <style scoped lang="scss"> 106 <style scoped lang="scss">
......
1 <template>
2 <view>
3 <view class="page-bg">
4 <image class="ren1" src="@/static/login/ren1.png"/>
5 <!-- 登录 -->
6 <view class="retop">
7 <image class="logotop" src="@/static/login/logo@2x.png"></image>
8 <view class="loginbox">
9
10 <view class="formbox">
11 <view class="nav active">团体会员注册</view>
12 <form>
13 <view class="round-input-item">
14 <image class="icon" src="@/static/login/tag01@2x.png"></image>
15 <input placeholder="请输入手机号"/>
16 </view>
17 <view class="round-input-item">
18 <image class="icon" src="@/static/login/tag02@2x.png"></image>
19 <input placeholder="密码"/>
20 </view>
21 <view class="round-input-item">
22 <image class="icon" src="@/static/login/tag02@2x.png"></image>
23 <input placeholder="确认密码"/>
24 </view>
25 <view class="round-input-item">
26 <image class="icon" src="@/static/login/tag02@2x.png"></image>
27 <input placeholder="图形验证码"/>
28 <image/>
29 </view>
30 <view class="round-input-item">
31 <image class="icon" src="@/static/login/tag04@2x.png"></image>
32 <input placeholder="短信验证码"/>
33 <text>获取验证码</text>
34 </view>
35
36 </form>
37
38
39 <view class="center-item">
40 <button @click="login" class="btn-red">注册会员</button>
41 </view>
42 <view class="center-item" @click="goLogin">
43 <text class="text-red">已有账号,去登录</text>
44 </view>
45
46 </view>
47
48
49 </view>
50 </view>
51 <image class="ren2" src="@/static/login/ren2.png"/>
52 <view class="fixedagree">
53 <image @click="changeAgree(agree)" v-if="agree" src="@/static/login/xz_dwn@2x.png"></image>
54 <image v-else src="@/static/login/xz2@2x.png"></image>
55 <view>登录即代表您同意<text>《用户协议》</text><text>《隐私策略》</text></view>
56 </view>
57 </view>
58 </view>
59 </template>
60
61 <script setup>
62 import { ref } from 'vue'
63 const agree = ref(false)
64
65 function changeAgree(item){
66 item = !item
67 }
68 function login(){
69 let path = '/pages/index/index';
70 uni.navigateTo({
71 url: path
72 });
73 }
74 function goLogin(){
75 let path = '/pages/index/login';
76 uni.navigateTo({
77 url: path
78 });
79 }
80 </script>
81
82 <style scoped lang="scss">
83 .logotop{width: 510rpx;height: 215rpx;margin:5vh auto 40rpx;display: block;}
84 .ren1{width: 300rpx;height: 560rpx;position: absolute;right: 0;top: 0;}
85 .ren2{width: 456rpx;height:600rpx;position: relative;top: 20rpx;}
86 .retop{position: relative;z-index: 1;}
87 .page-bg{background: url('@/static/login/bg.png') no-repeat center;
88 background-size: cover;
89 height: 100vh;overflow: hidden;position: relative;
90 }
91 .loginbox{
92 .loginNav{width: 700rpx;margin:0 auto -53rpx;height: 133rpx;overflow: hidden;position: relative;
93 view{text-align: center;height: 133rpx;box-sizing: border-box;padding: 26rpx 0 0;}
94 .n1{background: url('@/static/login/tab1.png') no-repeat top left;background-size:contain;opacity: 0.7;
95 width: 407rpx;position: absolute;left: 0;}
96 .n2{background: url('@/static/login/tab2.png') no-repeat top right;background-size:contain;opacity: 0.7;
97 width: 399rpx;position: absolute;right: 0;}
98 .active{color: #AD181F;opacity: 1;
99 &::after{content: '';position: absolute;width: 25rpx;height: 4rpx;background: #AD181F;border-radius: 2rpx;
100 left: 0;right: 0;margin: auto;bottom: 50rpx;
101 }
102 }
103 }
104 }
105 .formbox{background: #fff;width: 700rpx;padding: 50rpx;margin: auto;border-radius: 20rpx;}
106 .flex-item{display: flex;justify-content: space-between;margin:30rpx 0;
107 font-size: 28rpx;
108 image{width: 30rpx;height: 30rpx;margin-right:16rpx;}
109 }
110 .member{color: #4C5359;display: flex;align-items: center;}
111 .center-item{text-align: center;margin: 30rpx 0 0;font-size: 30rpx;
112 .btn-red{border-radius: 40rpx;width: 600rpx;line-height: 80rpx;font-size: 36rpx;}
113 }
114 .btn-red{background: #AD181F;color: #fff;}
115 .text-red{color: #AD181F;}
116 .round-input-item{overflow: hidden;background: RGBA(247, 247, 248, 1);border-radius: 40rpx;
117 padding: 0 0 0 30rpx;
118 height: 80rpx;margin-bottom: 30rpx;display: flex;align-items: center;
119 image{width: 180rpx;height: 80rpx;
120 &.icon{width: 30rpx;height: 30rpx;margin-right:16rpx;}
121 }
122 input{border-left: 1rpx solid RGBA(214, 216, 219, 1);padding: 0 0 0 20rpx;font-size: 30rpx;
123 }
124 input::-webkit-input-placeholder{color:RGBA(158, 166, 174, 1);font-size: 30rpx;}
125 input::placeholder{color:RGBA(158, 166, 174, 1);font-size: 30rpx;}
126 input::-moz-placeholder{color:RGBA(158, 166, 174, 1);font-size: 30rpx;}
127
128 text{font-size: 28rpx;color: #014A9F;}
129 }
130
131 .fixedagree{position: fixed;bottom: 5vh;color: rgba(255, 255, 255, 0.7);display: flex;
132 font-size: 24rpx;width: 100vw;justify-content: center;
133 image{width: 40rpx;height: 40rpx;margin-right: 20rpx;}
134 }
135 </style>
Styling with Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!