123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744 |
- import { http, httpGet, httpPost, httpPut } from '../../utils/http'
- import { Schedule } from '../models/schedule'
- import {
- Category,
- Content,
- DictType,
- MaterialDealer,
- MaterialDealerDetail,
- MaterialDealerHomePage,
- MaterialDealerRes,
- Moment,
- Comment,
- Activity,
- BannerMode,
- Banner,
- StudyTour,
- } from '../models/moment'
- import dayjs from 'dayjs'
- export const getUserInfo = () =>
- httpGetMock<any>({
- avatar: 'https://via.placeholder.com/21x21',
- nickname: '苏小萌',
- })
- export const getSchedule = () =>
- httpGetMock<Schedule>({
- name: '东京艺术设计研习营',
- cover: 'https://via.placeholder.com/375x297',
- items: [
- {
- title: '早稻田大学课程',
- time: '9:00',
- content:
- '是位于日本东京都新宿区的一所著名的私立大学。它由早稻田大学的创始人大隈重信于1882年创立,是日本超级国际化大学计划(Top Global University Project)选定的大学之一,也是日本顶尖的高等教育机构之一。',
- momentExample: 'https://via.placeholder.com/285x157',
- monentHint: '*说明:打卡地XX,收集上课素材',
- },
- {
- title: '早稻田大学博物馆参观',
- time: '11:00',
- content:
- '早稻田大学拥有多座博物馆,其中最著名的是早稻田大学历史馆。早稻田大学历史馆收藏、展示着著名校友在运动方面的杰出表现和成就,馆内的解说牌以日语和英语标示,展现了传统样式风格的建筑。',
- momentExample: 'https://via.placeholder.com/285x157',
- monentHint: '*说明:打卡地XX,收集上课素材',
- },
- ],
- })
- export const getMoment = () =>
- httpGetMock<Moment>({
- author: {
- avatar: 'https://via.placeholder.com/35x35',
- nickname: '苏小萌',
- level: '0',
- },
- content: '用心做好设计,为客户创造美好家居环境',
- images: [
- 'https://via.placeholder.com/165x220',
- 'https://via.placeholder.com/220x220',
- 'https://via.placeholder.com/165x220',
- ],
- tags: ['意大利游学设计班'],
- shares: 0,
- comments: 0,
- likes: 0,
- createdAt: dayjs('2024-07-15').toDate(),
- commentList: [],
- })
- export const getClassmates = () =>
- httpGetMock<any[]>([
- {
- avatar: 'https://via.placeholder.com/35x35',
- nickname: '苏小萌',
- level: '0',
- },
- {
- avatar: 'https://via.placeholder.com/35x35',
- nickname: '苏小萌',
- level: '0',
- },
- {
- avatar: 'https://via.placeholder.com/35x35',
- },
- ])
- export const getClassmate = () =>
- httpGetMock<any>({
- title: '2023同学荟|清华空间环境艺术设计研修班 阔步向未来',
- author: {
- avatar: 'https://via.placeholder.com/35x35',
- nickname: '苏小萌',
- level: '0',
- },
- viewNum: 125,
- createdAt: dayjs('2024-07-15').toDate(),
- content: '<div>111111</div>',
- })
- export const getMaterialDealers = () =>
- httpGetMock<any[]>([
- {
- name: 'IMOLA瓷砖',
- icon: 'https://via.placeholder.com/78x78',
- brandType: '进口品牌',
- type: '瓷砖',
- views: 1000,
- createdAt: dayjs('2024-07-15').toDate(),
- },
- {
- name: 'IMOLA瓷砖',
- icon: 'https://via.placeholder.com/78x78',
- brandType: '进口品牌',
- type: '瓷砖',
- views: 1000,
- createdAt: dayjs('2024-07-15').toDate(),
- },
- ])
- export const weixinMiniAppLogin = (phoneCode: string, loginCode: string, state: string) =>
- httpPost<any>('/app-api/member/auth/weixin-mini-app-login', {
- phoneCode,
- loginCode,
- state,
- })
- export const getMemberUserInfo = () => httpGet<any>('/app-api/member/user/get')
- export const updateMemberUserInfo = (data = {}) => httpPut<any>('/app-api/member/user/update', data)
- export const getByDictType = (
- type: string | 'member_channel_source' | 'member_spatial_expertise_type' | DictType,
- ) =>
- httpGet<
- {
- label: string
- value: string
- dictType: string
- status: number
- }[]
- >('/app-api/system/dict-data/type', { type })
- export const validateReferrerCode = (data: { code: string }) =>
- httpPost('/app-api/member/user-auth-info/referrer-validate-code', {}, data)
- export const createUserAuthInfo = (
- data: Partial<{
- id: number
- userId: number
- designerName: string
- gender: number
- mobile: string
- channelSource: number
- referrer: string
- employer: string
- spatialExpertiseType: number
- attachment: string
- auditStatus: number
- remark: string
- }>,
- ) => httpPost<any>('/app-api/member/user-auth-info/create', data)
- /**
- * 获取设计师审核
- */
- export const getUserAuthInfo = () => httpPost('/app-api/member/user-auth-info/get')
- export const getCircles = (query: { tagName?: string; circleType?: string; stylistId?: string }) =>
- httpGet<{
- list: {
- id: number
- headUrl?: string
- stylistId?: number
- stylistName?: string
- marketing?: string
- circleDesc?: string
- tagName?: string
- detailsType?: string
- detailsUrl?: string
- detailsDesc?: string
- circleType?: string
- spaceType?: string
- designStyle?: string
- spaceAddr?: string
- customerDemand?: string
- createTime: number
- bannerUrls: string[]
- shareCount?: number
- upvoteCount?: number
- ownUpvote: boolean
- reviewCount: number
- }[]
- }>('/app-api/member/circle/page', query)
- export const createCircle = (data: Partial<Circle>) =>
- httpPost<any>('/app-api/member/circle/create', data)
- export const getCircle = (id: string) =>
- httpGet<Partial<CircleRes>>('/app-api/member/circle/get', { id })
- export const shareCircle = (id: string) => httpGet('/app-api/member/circle/share', { id })
- export const getCircleUpvotes = (id) =>
- httpGet<{
- total: number
- list: {
- id: number
- circleId: number
- userId: number
- upvpteTime: number
- createTime: number
- userName: string
- }[]
- }>('/app-api/member/circle-upvote/page', { circleId: id })
- export const createCircleUpvote = (data: { circleId: number; userId: number; userName: string }) =>
- httpPost('/app-api/member/circle-upvote/create', data)
- /**
- * 取消圈子点赞
- */
- export const cancelCircleUpvote = (query: { id: string }) =>
- httpGet('/app-api/member/circle-upvote/delete', query)
- export const createCircleReview = (
- data: Partial<{
- circleId: string
- userId: string | number
- userName: string
- reviewContent: string
- replayReviewId: string
- }>,
- ) => httpPost<any>('/app-api/member/circle-review/create', data)
- export const deleteCircleReview = (id) => httpGet('/app-api/member/circle-review/delete', { id })
- export const getCircleReviews = (query: { circleId: string }) =>
- httpGet<{
- list: Comment[]
- }>('/app-api/member/circle-review/getCircleReviewByCircleId', query)
- export const createCircleReviewUpvote = (data: {
- circleId: number
- userId: number
- userName: string
- reviewId: number
- }) => httpPost('/app-api/member/circle-review-upvote/create', data)
- export const cancelCircleReviewUpvote = (query: {
- circleId: string
- userId: string
- reviewId: string
- }) => httpGet('/app-api/member/circle-review-upvote/cancel', query)
- export const getCircleReviewUpvotes = (query: { circleId: string; reviewId?: string }) =>
- httpGet('/app-api/member/circle-review-upvote/page', query)
- export const getReviewReplay = (query: { id: string }) =>
- httpGet('/app-api/member/circle-review/getReviewReplay', query)
- export const getTasks = (query) =>
- httpGet<{
- list: {
- id: number
- taskKey: string
- taskValue: string
- createTime: string
- sort: number
- status: number
- }[]
- }>('/app-api/basicsetting/set-task-center/page', query)
- export const getCircleTags = (query) =>
- httpGet<{
- list: {
- id: number
- labelName: string
- labelType: number
- usageCount: number
- creator: string
- createTime: number
- }[]
- }>('/app-api/basicsetting/set-label/page', query)
- export const getSetIndexConfigs = (query = {}) =>
- httpGet<{
- list: {
- id: number
- name: string
- indexPromotionalVideoImage: string
- coverVideoImage: string
- sort: number
- playCount: number
- status: number
- createTime: string
- }[]
- }>('/app-api/basicsetting/set-index-config/page', query)
- /**
- * 获取材料商列表
- * @param query {{brandLevel: '1'|'2'}}
- * @returns {Promise<*>}
- */
- export const getMaterials = (query = {}) =>
- httpGet<{
- list: MaterialDealer[]
- }>('/app-api/member/materials/page', query)
- export const getAppMaterials = () =>
- httpGet<MaterialDealerRes[]>('/app-api/member/materials/appMaterialsList')
- export const getAppMaterial = (id: number) =>
- httpGet<MaterialDealerDetail>('/app-api/member/materials/queryHomePage', { materialsId: id })
- export const getMaterialHomePage = (id: number) =>
- httpGet<Partial<MaterialDealerHomePage>>('/app-api/member/materials/queryHomePage', {
- materialsId: id,
- })
- export const getMaterialDetail = (query: { id: string }) =>
- httpGet<MaterialDealerDetail>('/app-api/member/materials/getDetail', query)
- export const createMaterialsReferrer = (data) =>
- httpPost('/app-api/member/materials-referrer/create', data)
- export const getContents = (query: {
- contentType?: '1' | '2' | '3'
- contentCategory?: string
- pageSize?: string
- }) => httpGet<{ list: Content[] }>('/app-api/member/content-manger/page', query)
- export const getAllCategories = () =>
- httpGet<Category[]>('/app-api/member/categories/getAllCategories')
- export const getContent = (query: { id: string }) =>
- httpGet<Content>('/app-api/member/content-manger/get', query)
- export const getProductCategories = () =>
- httpGet<Category[]>('/app-api/member/product-type/getAllProductCategories', {})
- export const getProducts = (query: { oneCategory?: string; secondCategory?: string }) =>
- httpPost<{
- list: {
- prodcutName: string
- productId: string
- needPoints: number
- points: number
- productPrice: string
- productCoverImgUrl: string
- productDetailsImgUrl: string
- contentDesc: string
- productType: string
- oneCategory: any
- secondCategory: string
- }[]
- }>('/app-api/member/product/page', {}, query)
- export const getProduct = (id: string) =>
- httpGet<{
- id: number
- prodcutName: string
- productId: string
- oneCategory: any
- oneCategoryName: any
- secondCategory: string
- secondCategoryName: any
- isRestrict: number
- productRepertory: any
- productPrice: string
- productType: number
- vendorId: any
- vendorName: string
- needPoints: number
- points: number
- gainType: number
- exchangeDesc: string
- productCoverImgUrl: string
- productDetailsImgUrl: string
- contentDesc: string
- status: number
- exchangeCount: any
- memberLevelId: any
- memberLevelName: any
- favourablePoints: any
- favourableEndDate: any
- createTime: number
- updateTime: number
- }>('/app-api/member/product/detail', { productId: id })
- export const getProductItemBuy = (query: { userId: number }) =>
- httpPost<{
- list: Partial<{
- productId: string
- prodcutName: string
- oneCategory: any
- secondCategory: string
- isRestrict: number
- productRepertory: any
- productPrice: string
- productType: string
- vendorId: any
- vendorName: string
- needPoints: number
- points?: number
- gainType: number
- exchangeDesc: any
- productCoverImgUrl: string
- productDetailsImgUrl: string
- contentDesc: string
- status: number
- exchangeCount: any
- memberLevelId: any
- memberLevelName: any
- favourablePoints?: number
- favourableEndDate?: number
- favourableStatus: number
- count: number
- createTime: any
- }>[]
- total: number
- }>('/app-api/member/product-item-buy/select', query)
- /**
- * 商品添加到购物车
- */
- export const createProductItemBuy = (data: {
- doList: {
- createTime?: string
- updateTime?: string
- creator?: string
- updater?: string
- deleted?: boolean
- id?: number
- productId?: string
- userId?: number
- points: number
- nums: number
- }[]
- }) => httpPost('/app-api/member/product-item-buy/create', data)
- /**
- * 从购物车删除商品
- */
- export const deleteProductItemBuy = (data: {
- doList: {
- createTime?: string
- updateTime?: string
- creator?: string
- updater?: string
- deleted?: boolean
- id?: number
- productId?: string
- userId?: number
- }[]
- }) => httpPost('/app-api/member/product-item-buy/delete', data)
- /**
- * 商城下单
- */
- export const productPlacing = (data: {
- isShoppingCart: number
- userId: number
- list: {
- orderNo?: string
- productId?: string
- points?: number
- nums?: number
- productName: string
- orderImgUrl: string
- }[]
- couponList: {
- couponId: number
- brandPoints: number
- }[]
- totalsPoints?: number
- totalsCouponPoints?: number
- totalsCurrPoints?: number
- }) => httpPost('/app-api/member/points-order/placing', data)
- /**
- * 订单结算
- */
- export const orderPay = (data: {
- isShoppingCart: number
- userId: number
- list: {
- orderNo?: string
- productId?: string
- points?: number
- nums?: number
- }[]
- couponList: {
- couponId: number
- brandPoints: number
- }[]
- totalsPoints?: number
- totalsCouponPoints?: number
- totalsCurrPoints?: number
- }) => httpPost(`/app-api/member/points-order/placingPay`, data)
- export const getPointsOrders = (query) =>
- httpGet<{
- list: {
- id: number
- materialsId: any
- materialsBrand: any
- stylistId: number
- orderMoney: any
- projectName: string
- pointsRate: any
- points: string
- orderImgUrl?: string
- orderStatus: string
- verifyTime: any
- completeTime?: number
- turnDownTime: any
- cancelTime: number
- cancelReason: any
- turnDownReason: any
- remark: any
- couponId: any
- orderNo: string
- createTime: number
- brokerageRate: any
- brokerage: any
- }[]
- total: number
- }>('/app-api/member/points-order/page', query)
- export const getActivities = (query) =>
- httpGet<{
- list: Activity[]
- }>('/app-api/member/activity/page', query)
- export const getActivity = (id: string) =>
- httpGet<Partial<Activity>>('/app-api/member/activity/get', { id })
- export const activitySignup = (data: { id: number }) =>
- httpPost('/app-api/member/activity/signup', data)
- /**
- * 获取活动报名列表
- */
- export const getActivitySignups = (query: { activityId: string }) =>
- httpGet<{
- list: {
- id: number
- activityId: number
- userId: number
- applyTime: number
- applyType: number
- applyStatus: number
- applyPoints: any
- isJoin: string
- createTime: number
- name: string
- headImgUrl: string
- mobile: string
- brokerId: any
- brokerName: string
- memberLevelId: number
- memberLevelName: any
- }[]
- total: number
- }>('/app-api/member/activity/signup/page', query)
- /**
- * 获取游学列表
- */
- export const getStudyTours = (query) =>
- httpGet<{ list: StudyTour[]; total: number }>('/app-api/member/app-study-abroad/page', query)
- /**
- * 获取游学详情
- */
- export const getStudyTour = (id: string) =>
- httpGet<StudyTour>('/app-api/member/app-study-abroad/get', { id })
- /**
- * 游学报名
- */
- export const studyTourSignup = (data: { id: number }) =>
- httpPost('/app-api/member/app-study-abroad/signup', data)
- /**
- * 获取游学报名列表
- */
- export const getStudyTourSignups = (query: { studyId: string }) =>
- httpGet<{
- list: {
- id: number
- activityId: number
- userId: number
- applyTime: number
- applyType: number
- applyStatus: number
- applyPoints: any
- isJoin: string
- createTime: number
- name: string
- headImgUrl: string
- mobile: string
- brokerId: any
- brokerName: string
- memberLevelId: number
- memberLevelName: any
- }[]
- total: number
- }>('/app-api/member/app-study-abroad/signup/page', query)
- /**
- * 获取Banner列表
- */
- export const getBanners = (query: { mode: BannerMode }) =>
- httpGet<Banner[]>('/app-api/member/banner/get-by-mode', query)
- /**
- * 获取消息列表
- */
- export const getMessages = (query) => httpGet('/app-api/member/message-manage/page', query)
- /**
- * 获取Banner
- */
- export const getBanner = (id) => httpGet<Banner>('/app-api/member/banner/get-by-id', { id })
- /**
- * 获取积分明细列表
- */
- export const getPoints = (query) =>
- httpGet<{
- list: {
- id: number
- pointsType: string
- typeName: string
- pointsCategory: string
- categoryName: string
- sourceId: number
- name: string
- pointsStauts: string
- points: number
- orderMoney: string
- materialsId: number
- materialsBrand: string
- stylistId: number
- brokerId: number
- stylistName: string
- brokerName: string
- generateTime: string
- verifyTime: string
- completeTime: string
- turnDownTime: string
- cancelTime: string
- cancelReason: string
- turnDownReason: string
- remark: string
- couponId: number
- orderNo: string
- createTime: string
- }[]
- total: number
- }>(`/app-api/member/points-details/pageAllByYear/${query.year}`, query)
- /**
- * 获取会员等级列表
- */
- export const getMemberLevels = () =>
- httpGet<
- {
- id: number
- memberLevel: number
- memberLevelName: string
- upgradeCriteria: number
- points: number
- retentionDaysCriteria: number
- retentionDays?: number
- memberBgImage: string
- associatedMemberRights: string
- associatedMemberRightsName: any
- status: number
- createTime: number
- }[]
- >('/app-api/basicsetting/set-member-level-config/list')
- /**
- * 获取设计师信息
- */
- export const getDesignerInfo = (userId) =>
- httpGet<
- Partial<{
- id: number
- userId: number
- brokerId: number
- brokerName: string
- status: string
- authTime: number
- points: number
- headImgUrl: string
- shareCount: number
- viewCount: number
- winCustomerCount: number
- serviceYears: string
- serviceCustomerCount: number
- designFee: string
- memberValidTime: number
- personalIdentity: string
- designDesc: string
- followFocus: string
- homePageUrl: string
- sharePageUrl: string
- retryStatus: number
- }>
- >('/app-api/member/designer/getDesignerInfo', { userId })
- /**
- * 更新设计师信息
- */
- export const updateDesignerInfo = (data) =>
- httpPost<any>('/app-api/member/designer/updateDesignerInfo', data)
- /**
- * 预约设计师
- */
- export const reserveDesigner = (data: {
- stylistId: number
- stylistName: string
- appointmentName: string
- appointmentPhone: string
- }) => httpPost<any>('/app-api/member/designer/reserveDesigner', data)
- /**
- * 通过ID获取用户信息
- */
- export const getUserInfoById = (id) =>
- httpGet<
- Partial<{
- mobile: string
- status: string
- nickname: string
- avatar: string
- name: string
- sex: string
- areaId: number
- areaName: string
- birthday: string
- mark: string
- tagIds: string
- levelId: number
- groupId: number
- id: number
- registerIp: string
- loginIp: string
- loginDate: string
- createTime: string
- point: number
- totalPoint: number
- tagNames: string
- levelName: string
- groupName: string
- experience: number
- }>
- >('/app-api/member/user/getByUserId', { id })
- export const refreshToken = (refreshToken: string) =>
- httpPost<any>('/app-api/member/auth/refresh-token', {}, { refreshToken })
- export const httpGetMock = <T>(data: T) =>
- new Promise<IResData<T>>((resolve) => resolve({ code: 1, msg: '', data } as IResData<T>))
- export interface Circle {
- headUrl: string
- stylistId: string | number
- stylistName: string
- marketing: string
- circleDesc: string
- tagName: string
- detailsType: string
- detailsUrl: string
- detailsDesc: string
- circleType: string
- spaceType: string
- designStyle: string
- spaceAddr: string
- customerDemand: string
- bannerUrls: string[]
- }
- export interface CircleRes {
- id: number
- headUrl?: string
- stylistId?: number
- stylistName?: string
- marketing?: string
- circleDesc?: string
- tagName?: string
- detailsType?: string
- detailsUrl?: string
- detailsDesc?: string
- circleType?: string
- spaceType?: string
- designStyle?: string
- spaceAddr?: string
- customerDemand?: string
- createTime: number
- bannerUrls: string[]
- shareCount?: number
- upvoteCount?: number
- ownUpvote: boolean
- reviewCount: number
- }
|