hookehuyr

登录页面api联调

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