hookehuyr

登录页面api联调

...@@ -18,11 +18,9 @@ declare module '@vue/runtime-core' { ...@@ -18,11 +18,9 @@ declare module '@vue/runtime-core' {
18 NutCalendar: typeof import('@nutui/nutui-taro')['Calendar'] 18 NutCalendar: typeof import('@nutui/nutui-taro')['Calendar']
19 NutCol: typeof import('@nutui/nutui-taro')['Col'] 19 NutCol: typeof import('@nutui/nutui-taro')['Col']
20 NutConfigProvider: typeof import('@nutui/nutui-taro')['ConfigProvider'] 20 NutConfigProvider: typeof import('@nutui/nutui-taro')['ConfigProvider']
21 - NutCountdown: typeof import('@nutui/nutui-taro')['Countdown']
22 NutImagePreview: typeof import('@nutui/nutui-taro')['ImagePreview'] 21 NutImagePreview: typeof import('@nutui/nutui-taro')['ImagePreview']
23 NutInput: typeof import('@nutui/nutui-taro')['Input'] 22 NutInput: typeof import('@nutui/nutui-taro')['Input']
24 NutInputNumber: typeof import('@nutui/nutui-taro')['InputNumber'] 23 NutInputNumber: typeof import('@nutui/nutui-taro')['InputNumber']
25 - NutNumberKeyboard: typeof import('@nutui/nutui-taro')['NumberKeyboard']
26 NutPopup: typeof import('@nutui/nutui-taro')['Popup'] 24 NutPopup: typeof import('@nutui/nutui-taro')['Popup']
27 NutRadio: typeof import('@nutui/nutui-taro')['Radio'] 25 NutRadio: typeof import('@nutui/nutui-taro')['Radio']
28 NutRadioGroup: typeof import('@nutui/nutui-taro')['RadioGroup'] 26 NutRadioGroup: typeof import('@nutui/nutui-taro')['RadioGroup']
...@@ -32,7 +30,6 @@ declare module '@vue/runtime-core' { ...@@ -32,7 +30,6 @@ declare module '@vue/runtime-core' {
32 NutTabPane: typeof import('@nutui/nutui-taro')['TabPane'] 30 NutTabPane: typeof import('@nutui/nutui-taro')['TabPane']
33 NutTabs: typeof import('@nutui/nutui-taro')['Tabs'] 31 NutTabs: typeof import('@nutui/nutui-taro')['Tabs']
34 NutTag: typeof import('@nutui/nutui-taro')['Tag'] 32 NutTag: typeof import('@nutui/nutui-taro')['Tag']
35 - NutTextarea: typeof import('@nutui/nutui-taro')['Textarea']
36 OrderCard: typeof import('./src/components/orderCard.vue')['default'] 33 OrderCard: typeof import('./src/components/orderCard.vue')['default']
37 PayCard: typeof import('./src/components/payCard.vue')['default'] 34 PayCard: typeof import('./src/components/payCard.vue')['default']
38 Picker: typeof import('./src/components/time-picker-data/picker.vue')['default'] 35 Picker: typeof import('./src/components/time-picker-data/picker.vue')['default']
......
1 -/*
2 - * @Date: 2022-10-14 17:26:56
3 - * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2022-10-22 00:24:38
5 - * @FilePath: /swx/src/api/Host/index.js
6 - * @Description: 活动相关接口
7 - */
8 -import { fn, fetch } from '../fn';
9 -
10 -const Api = {
11 - HOST_LIST: '/srv/?a=host_list',
12 - HOST_INFO: '/srv/?a=host_info',
13 - HOST_ADD: '/srv/?a=host_add',
14 - HOST_EDIT: '/srv/?a=host_edit',
15 - HOST_DELETE: '/srv/?a=host_del',
16 - ACTIVITY_ADD: '/srv/?a=activity_add',
17 - ACTIVITY_EDIT: '/srv/?a=activity_edit',
18 - ACTIVITY_HOMEPAGE: '/srv/?a=activity_app_homepage',
19 - ACTIVITY_INFO: '/srv/?a=activity_info',
20 -}
21 -
22 -/**
23 - * @description: 主办方列表
24 - * @returns
25 - */
26 -export const hostListAPI = (params) => fn(fetch.get(Api.HOST_LIST, params));
27 -
28 -/**
29 - * @description: 主办方详情
30 - * @returns
31 - */
32 -export const hostInfoAPI = (params) => fn(fetch.get(Api.HOST_INFO, params));
33 -
34 -/**
35 - * @description: 新增主办方
36 - * @returns
37 - */
38 -export const addHostAPI = (params) => fn(fetch.post(Api.HOST_ADD, params));
39 -
40 -/**
41 - * @description: 修改主办方
42 - * @returns
43 - */
44 -export const editHostAPI = (params) => fn(fetch.post(Api.HOST_EDIT, params));
45 -
46 -/**
47 - * @description: 删除主办方
48 - * @returns
49 - */
50 -export const deleteHostAPI = (params) => fn(fetch.post(Api.HOST_DELETE, params));
51 -
52 -/**
53 - * @description: 新增活动
54 - * @returns
55 - */
56 -export const addActivityAPI = (params) => fn(fetch.post(Api.ACTIVITY_ADD, params));
57 -
58 -/**
59 - * @description: 修改活动
60 - * @returns
61 - */
62 -export const editActivityAPI = (params) => fn(fetch.post(Api.ACTIVITY_EDIT, params));
63 -
64 -/**
65 - * @description: 首页活动和轮播
66 - * @returns
67 - */
68 -export const activityHomeAPI = (params) => fn(fetch.get(Api.ACTIVITY_HOMEPAGE, params));
69 -
70 -/**
71 - * @description: 活动详情
72 - * @returns
73 - */
74 -export const activityInfoAPI = (params) => fn(fetch.get(Api.ACTIVITY_INFO, params));
1 -/*
2 - * @Date: 2022-10-20 13:15:00
3 - * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2022-10-25 10:33:03
5 - * @FilePath: /swx/src/api/Member/index.js
6 - * @Description: 主办方用户
7 - */
8 -import { fn, fetch } from '../fn';
9 -
10 -const Api = {
11 - MEMBER_INFO: '/srv/?a=member_info',
12 - MEMBER_LIST: '/srv/?a=member_list',
13 - MEMBER_TRACE_LIST: '/srv/?a=member_my_trace_list',
14 - MEMBER_EDIT: '/srv/?a=member_edit',
15 - MEMBER_SET_ROLE: '/srv/?a=member_set_role',
16 -}
17 -
18 -/**
19 - * @description: 用户详情
20 - * @returns
21 - */
22 -export const infoMemberAPI = (params) => fn(fetch.get(Api.MEMBER_INFO, params));
23 -
24 -/**
25 - * @description: 主办方用户列表
26 - * @returns
27 - */
28 -export const listMemberAPI = (params) => fn(fetch.get(Api.MEMBER_LIST, params));
29 -
30 -/**
31 - * @description: 我陪伴的用户列表
32 - * @returns
33 - */
34 -export const traceMemberAPI = (params) => fn(fetch.get(Api.MEMBER_TRACE_LIST, params));
35 -
36 -/**
37 - * @description: 修改用户资料
38 - * @returns
39 - */
40 -export const editMemberAPI = (params) => fn(fetch.post(Api.MEMBER_EDIT, params));
41 -
42 -/**
43 - * @description: 添加/删除成员
44 - * @returns
45 - */
46 -export const setRoleMemberAPI = (params) => fn(fetch.post(Api.MEMBER_SET_ROLE, params));
1 -/*
2 - * @Date: 2022-10-20 13:15:00
3 - * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2022-10-24 11:00:14
5 - * @FilePath: /swx/src/api/Partner/index.js
6 - * @Description: 陪伴用户
7 - */
8 -import { fn, fetch } from '../fn';
9 -
10 -const Api = {
11 - ADD_PARTNER: '/srv/?a=partner_add',
12 -}
13 -
14 -/**
15 - * @description: 新增陪伴记录
16 - * @returns
17 - */
18 -export const addPartnerAPI = (params) => fn(fetch.post(Api.ADD_PARTNER, params));
1 -/*
2 - * @Date: 2022-10-20 13:15:00
3 - * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2022-11-11 16:31:20
5 - * @FilePath: /swx/src/api/Reg/index.js
6 - * @Description: 报名信息
7 - */
8 -import { fn, fetch } from '../fn';
9 -
10 -const Api = {
11 - MY_INFO: '/srv/?a=reg_my_info',
12 - REG_ADD: '/srv/?a=reg_add',
13 - REG_EDIT: '/srv/?a=reg_edit',
14 - REG_CANCEL: '/srv/?a=reg_cancel',
15 - REG_LIST: '/srv/?a=reg_list',
16 - REG_STATUS: '/srv/?a=reg_set_status',
17 - REG_CONFIRM_NOTICE: '/srv/?a=reg_confirm_notice',
18 -}
19 -
20 -/**
21 - * @description: 我的报名详情
22 - * @returns
23 - */
24 -export const myInfoAPI = (params) => fn(fetch.post(Api.MY_INFO, params));
25 -
26 -/**
27 - * @description: 活动报名
28 - * @returns
29 - */
30 -export const addRegAPI = (params) => fn(fetch.post(Api.REG_ADD, params));
31 -
32 -/**
33 - * @description: 修改活动报名
34 - * @returns
35 - */
36 -export const editRegAPI = (params) => fn(fetch.post(Api.REG_EDIT, params));
37 -
38 -/**
39 - * @description: 取消活动报名
40 - * @returns
41 - */
42 -export const cancelRegAPI = (params) => fn(fetch.post(Api.REG_CANCEL, params));
43 -
44 -/**
45 - * @description: 活动报名列表
46 - * @returns
47 - */
48 -export const listRegAPI = (params) => fn(fetch.post(Api.REG_LIST, params));
49 -
50 -/**
51 - * @description: 修改活动状态
52 - * @returns
53 - */
54 -export const statusRegAPI = (params) => fn(fetch.post(Api.REG_STATUS, params));
55 -
56 -/**
57 - * @description: 确认已收到审核失败提醒
58 - * @returns
59 - */
60 -export const noticeRegAPI = (params) => fn(fetch.post(Api.REG_CONFIRM_NOTICE, params));
1 /* 1 /*
2 * @Date: 2022-05-18 22:56:08 2 * @Date: 2022-05-18 22:56:08
3 * @LastEditors: hookehuyr hookehuyr@gmail.com 3 * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2022-10-22 00:12:46 4 + * @LastEditTime: 2023-12-22 10:28:43
5 - * @FilePath: /swx/src/api/fn.js 5 + * @FilePath: /meihuaApp/src/api/fn.js
6 * @Description: 文件描述 6 * @Description: 文件描述
7 */ 7 */
8 import axios from '@/utils/request'; 8 import axios from '@/utils/request';
9 import Taro from '@tarojs/taro' 9 import Taro from '@tarojs/taro'
10 -import qs from 'Qs' 10 +import qs from 'qs'
11 11
12 /** 12 /**
13 * 网络请求功能函数 13 * 网络请求功能函数
......
1 +/*
2 + * @Date: 2023-12-22 10:29:37
3 + * @LastEditors: hookehuyr hookehuyr@gmail.com
4 + * @LastEditTime: 2023-12-22 10:43:06
5 + * @FilePath: /meihuaApp/src/api/index.js
6 + * @Description: 文件描述
7 + */
8 +import { fn, fetch } from './fn';
9 +
10 +const Api = {
11 + BIND_PHONE: '/srv/?a=room_order&t=bind_phone',
12 + SEND_SMS_CODE: '/srv/?a=room_order&t=send_sms_code',
13 +}
14 +
15 +/**
16 + * @description: 绑定手机号(手机号登录)
17 + * @param phone 手机号
18 + * @param sms_code 验证码
19 + * @returns
20 + */
21 +export const bindPhoneAPI = (params) => fn(fetch.post(Api.BIND_PHONE, params));
22 +
23 +/**
24 + * @description: 发送验证码
25 +
26 + * @param phone 手机号
27 + * @returns
28 + */
29 +export const sendSmsCodeAPI = (params) => fn(fetch.post(Api.SEND_SMS_CODE, params));
30 +
31 +/**
32 + * @description: 修改我的信息
33 + * @returns
34 + */
35 +// export const editUserAPI = (params) => fn(fetch.post(Api.USER_EDIT, params));
1 <!-- 1 <!--
2 * @Date: 2022-09-21 11:59:20 2 * @Date: 2022-09-21 11:59:20
3 * @LastEditors: hookehuyr hookehuyr@gmail.com 3 * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2023-12-19 10:43:00 4 + * @LastEditTime: 2023-12-22 10:37:38
5 * @FilePath: /meihuaApp/src/components/navBar.vue 5 * @FilePath: /meihuaApp/src/components/navBar.vue
6 * @Description: 底部导航栏 6 * @Description: 底部导航栏
7 --> 7 -->
...@@ -37,7 +37,7 @@ import icon_my1 from '@/images/icon/icon_my1@2x.png' ...@@ -37,7 +37,7 @@ import icon_my1 from '@/images/icon/icon_my1@2x.png'
37 import icon_my2 from '@/images/icon/icon_my2@2x.png' 37 import icon_my2 from '@/images/icon/icon_my2@2x.png'
38 import icon_book1 from '@/images/icon/icon_book1@2x.png' 38 import icon_book1 from '@/images/icon/icon_book1@2x.png'
39 import icon_book2 from '@/images/icon/icon_book2@2x.png' 39 import icon_book2 from '@/images/icon/icon_book2@2x.png'
40 -import { hostListAPI } from '@/api/Host/index' 40 +// import { hostListAPI } from '@/api/Host/index'
41 import { IconFont } from '@nutui/icons-vue-taro'; 41 import { IconFont } from '@nutui/icons-vue-taro';
42 42
43 const goTo = (page) => { 43 const goTo = (page) => {
......
1 <!-- 1 <!--
2 * @Date: 2022-09-19 14:11:06 2 * @Date: 2022-09-19 14:11:06
3 * @LastEditors: hookehuyr hookehuyr@gmail.com 3 * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2023-12-21 14:21:16 4 + * @LastEditTime: 2023-12-22 10:16:02
5 * @FilePath: /meihuaApp/src/pages/index/index.vue 5 * @FilePath: /meihuaApp/src/pages/index/index.vue
6 * @Description: 首页 6 * @Description: 首页
7 --> 7 -->
...@@ -31,11 +31,12 @@ import { ref } from 'vue'; ...@@ -31,11 +31,12 @@ import { ref } from 'vue';
31 import roomCard from '@/components/roomCard.vue' 31 import roomCard from '@/components/roomCard.vue'
32 // import arrowDownImg from '@/assets/images/arrow-down.png' 32 // import arrowDownImg from '@/assets/images/arrow-down.png'
33 import navBar from '@/components/navBar.vue' 33 import navBar from '@/components/navBar.vue'
34 -// import { useDidShow } from '@tarojs/taro' 34 +import { useDidShow } from '@tarojs/taro'
35 +
35 // TAG: 模拟onShow事件 36 // TAG: 模拟onShow事件
36 -// useDidShow(() => { 37 +useDidShow(() => {
37 - // console.warn(AUTHOR) 38 + console.warn('index onShow')
38 -// }) 39 +})
39 40
40 // 分享功能 41 // 分享功能
41 wx.showShareMenu({ 42 wx.showShareMenu({
......
1 <!-- 1 <!--
2 * @Date: 2022-09-19 14:11:06 2 * @Date: 2022-09-19 14:11:06
3 * @LastEditors: hookehuyr hookehuyr@gmail.com 3 * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2023-12-21 16:45:56 4 + * @LastEditTime: 2023-12-22 10:52:36
5 * @FilePath: /meihuaApp/src/pages/login/index.vue 5 * @FilePath: /meihuaApp/src/pages/login/index.vue
6 * @Description: 文件描述 6 * @Description: 文件描述
7 --> 7 -->
...@@ -44,6 +44,7 @@ import Taro from '@tarojs/taro' ...@@ -44,6 +44,7 @@ import Taro from '@tarojs/taro'
44 import { IconFont } from '@nutui/icons-vue-taro'; 44 import { IconFont } from '@nutui/icons-vue-taro';
45 import { ref, nextTick } from "vue"; 45 import { ref, nextTick } from "vue";
46 import { getCurrentPageParam } from "@/utils/weapp"; 46 import { getCurrentPageParam } from "@/utils/weapp";
47 +import { bindPhoneAPI, sendSmsCodeAPI } from '@/api/index'
47 48
48 let countdownIntervalId; // 用于存储倒计时的计时器 ID 49 let countdownIntervalId; // 用于存储倒计时的计时器 ID
49 50
...@@ -103,9 +104,7 @@ const isValidTel = (tel) => { ...@@ -103,9 +104,7 @@ const isValidTel = (tel) => {
103 return /^1\d{10}$/.test(tel); 104 return /^1\d{10}$/.test(tel);
104 } 105 }
105 106
106 -const login = () => { 107 +const login = async () => {
107 - console.warn(tel.value);
108 - console.warn(code.value);
109 if (!isValidTel(tel.value) ||!code.value) { 108 if (!isValidTel(tel.value) ||!code.value) {
110 Taro.showToast({ 109 Taro.showToast({
111 title: '请检查输入项', 110 title: '请检查输入项',
...@@ -114,26 +113,33 @@ const login = () => { ...@@ -114,26 +113,33 @@ const login = () => {
114 }); 113 });
115 return; 114 return;
116 } else { 115 } else {
117 - Taro.showToast({ 116 + // const { code, data } = await bindPhoneAPI({ phone: tel.value, sms_code: code.value });
118 - title: '登录成功', 117 + const { code } = await bindPhoneAPI({ phone: tel.value, sms_code: 'debug_sms_code_1805' });
119 - icon: 'success', 118 + if (code) {
120 - duration: 2000, 119 + Taro.showToast({
121 - success: () => { 120 + title: '登录成功',
122 - setTimeout(() => { 121 + icon: 'success',
123 - let params = getCurrentPageParam(); 122 + duration: 2000,
124 - if (params.page === 'detail') { // 详情页 123 + success: () => {
125 - Taro.navigateBack({ 124 + setTimeout(() => {
126 - delta: 1 125 + let params = getCurrentPageParam();
127 - }); 126 + if (params.page === 'detail') { // 详情页
128 - } 127 + Taro.navigateBack({
129 - if (params.page === 'my') { // 登录页 128 + delta: 1
130 - Taro.redirectTo({ 129 + });
131 - url: '/pages/myInfo/index' 130 + } else if (params.page === 'my') { // 登录页
132 - }); 131 + Taro.redirectTo({
133 - } 132 + url: '/pages/myInfo/index'
134 - }, 1000); 133 + });
135 - } 134 + } else {
136 - }); 135 + Taro.redirectTo({
136 + url: '/pages/index/index'
137 + });
138 + }
139 + }, 1000);
140 + }
141 + });
142 + }
137 } 143 }
138 } 144 }
139 145
...@@ -147,14 +153,17 @@ const resetDisplay = () => { ...@@ -147,14 +153,17 @@ const resetDisplay = () => {
147 resetCountdown(); 153 resetCountdown();
148 } 154 }
149 155
150 -const getCode = () => { 156 +const getCode = async () => {
151 if (isValidTel(tel.value)) { 157 if (isValidTel(tel.value)) {
152 - Taro.showToast({ 158 + const { code } = await sendSmsCodeAPI({ phone: tel.value });
153 - title: '验证码已发送', 159 + if (code) {
154 - icon:'success', 160 + Taro.showToast({
155 - duration: 2000 161 + title: '验证码已发送',
156 - }); 162 + icon:'success',
157 - startCountdown(10, updateDisplay, resetDisplay); 163 + duration: 2000
164 + });
165 + startCountdown(10, updateDisplay, resetDisplay);
166 + }
158 } else { 167 } else {
159 Taro.showToast({ 168 Taro.showToast({
160 title: '请检查手机号', 169 title: '请检查手机号',
...@@ -167,7 +176,10 @@ const getCode = () => { ...@@ -167,7 +176,10 @@ const getCode = () => {
167 176
168 <script> 177 <script>
169 import "./index.less"; 178 import "./index.less";
179 +import mixin from '@/utils/mixin';
180 +
170 export default { 181 export default {
171 name: "loginPage", 182 name: "loginPage",
183 + mixins: [mixin.init],
172 }; 184 };
173 </script> 185 </script>
......
1 /* 1 /*
2 * @Date: 2022-09-19 14:11:06 2 * @Date: 2022-09-19 14:11:06
3 * @LastEditors: hookehuyr hookehuyr@gmail.com 3 * @LastEditors: hookehuyr hookehuyr@gmail.com
4 - * @LastEditTime: 2023-12-22 09:32:24 4 + * @LastEditTime: 2023-12-22 10:40:51
5 * @FilePath: /meihuaApp/src/utils/request.js 5 * @FilePath: /meihuaApp/src/utils/request.js
6 * @Description: 简单axios封装,后续按实际处理 6 * @Description: 简单axios封装,后续按实际处理
7 */ 7 */
...@@ -25,6 +25,7 @@ const service = axios.create({ ...@@ -25,6 +25,7 @@ const service = axios.create({
25 25
26 service.defaults.params = { 26 service.defaults.params = {
27 f: 'room', 27 f: 'room',
28 + client_id: '73552',
28 }; 29 };
29 30
30 // request interceptor 31 // request interceptor
...@@ -93,11 +94,11 @@ service.interceptors.response.use( ...@@ -93,11 +94,11 @@ service.interceptors.response.use(
93 * 未授权跳转登录页 94 * 未授权跳转登录页
94 * 授权完成后 返回当前页面 95 * 授权完成后 返回当前页面
95 */ 96 */
96 - // setTimeout(() => { 97 + setTimeout(() => {
97 - // Taro.navigateTo({ 98 + Taro.navigateTo({
98 - // url: '../../pages/auth/index?url=' + routerStore().url 99 + url: '../../pages/auth/index?url=' + routerStore().url
99 - // }); 100 + });
100 - // }, 1000); 101 + }, 1000);
101 } 102 }
102 return response 103 return response
103 }, 104 },
......