react-app-shell
Version:
react打包脚本和example, 这里的版本请忽略
97 lines (87 loc) • 3.11 kB
JavaScript
import {fetchUtils, monitor} from '../utils';
import {appConfig} from '../config';
import {JOIN_RESULT_CODE} from '../constants';
const mobileDomain = appConfig.domain.mobileDomain;
/**
* 根据活动id 获取活动详情信息
* @param id 活动id, 必填
*/
export const getActivityDetail = (id) => {
const url = mobileDomain.concat('/api/special/activity/detail');
const data = {
id
};
return fetchUtils.get(url, data).then(res => res.data);
};
/**
* 根据活动id 获取活动的预约成员信息
* @param id 活动id, 必填
*/
export const getMemberData = (id) => {
const url = mobileDomain.concat('/api/special/activity/join/list');
const data = {
id
};
return fetchUtils.get(url, data).then(res => res.data);
};
/**
* 根据活动id 活动报名
* @param id 活动id, 必填
*/
export const activityJoin = (id) => {
const url = mobileDomain.concat('/api/special/activity/join');
const data = {
id
};
return fetchUtils.post(url, data).then(res => res)
.then(({code, data}) => {
let faultData = {
code: '', // 活动未开始
msg: ''
};
if (code === JOIN_RESULT_CODE.OK) { // 报名成功
if (data && data.sort) {
return data.sort; // 返回报名排名
}
faultData = {
code: 'error',
msg: data || '发生错误',
};
} else {
switch (code) {
case JOIN_RESULT_CODE.TOKEN_ERROR:
faultData = {
code: JOIN_RESULT_CODE.TOKEN_ERROR,
msg: 'wxToken不合法',
};
break;
case JOIN_RESULT_CODE.ACTIVITY_NOT_FOUND:
faultData = {
code: JOIN_RESULT_CODE.ACTIVITY_NOT_FOUND,
msg: '该活动不存在',
};
break;
case JOIN_RESULT_CODE.JOIN_ERROR:
faultData = {
code: JOIN_RESULT_CODE.JOIN_ERROR,
msg: '您已报名',
};
break;
case JOIN_RESULT_CODE.ACTIVITY_NOT_START:
faultData = {
code: JOIN_RESULT_CODE.ACTIVITY_NOT_START,
msg: '该活动未开始',
};
break;
case JOIN_RESULT_CODE.ACTIVITY_IS_END:
faultData = {
code: JOIN_RESULT_CODE.ACTIVITY_IS_END,
msg: '该活动已结束',
};
break;
}
monitor.log('', `报名未成功:${faultData.msg}`);
return Promise.reject(faultData);
}
});
};