/** * 全局配置文件 */ // 应用配置 export const APP_CONFIG = { name: '婚恋平台', version: '1.0.0', logo: '婚恋' } // 主题配色 export const THEME_COLORS = { primary: '#E91E63', // 主色 - 粉红 accent: '#FF6B6B', // 辅助强调色 background: '#FFF9F9', // 背景色 white: '#FFFFFF', // 白色 textPrimary: '#333333', // 主文字 textSecondary: '#666666', // 次文字 textDisabled: '#999999', // 禁用文字 success: '#4CAF50', // 成功色 warning: '#FF9800', // 警告色 error: '#F44336', // 错误色 info: '#2196F3', // 信息色 border: '#F0F0F0', // 边框色 divider: '#E0E0E0' // 分割线 } // 默认图片 export const DEFAULT_IMAGES = { avatar: '/static/default-avatar.svg', banner: 'https://images.unsplash.com/photo-1522673607200-164d1b6ce486?w=750&h=360&fit=crop', couple: 'https://images.unsplash.com/photo-1516589178581-6cd7833ae3b2?w=520&h=360&fit=crop', activity: 'https://images.unsplash.com/photo-1511632765486-a01980e01a18?w=750&h=400&fit=crop', course: 'https://images.unsplash.com/photo-1522202176988-66273c2fd55f?w=750&h=400&fit=crop', placeholder: '/static/default-avatar.svg' } // 活动类型 export const ACTIVITY_TYPES = { ONLINE: 1, // 线上活动 OFFLINE: 2, // 线下活动 BOTH: 3 // 线上线下 } // 活动状态 export const ACTIVITY_STATUS = { NOT_STARTED: 0, // 未开始 ONGOING: 1, // 进行中 ENDED: 2, // 已结束 CANCELLED: 3 // 已取消 } // 性别 export const GENDER = { MALE: 1, // 男 FEMALE: 2, // 女 OTHER: 0 // 其他 } // 学历 export const EDUCATION = { HIGH_SCHOOL: 1, // 高中及以下 COLLEGE: 2, // 大专 BACHELOR: 3, // 本科 MASTER: 4, // 硕士 DOCTOR: 5 // 博士 } // 学历文本映射 export const EDUCATION_TEXT = { [EDUCATION.HIGH_SCHOOL]: '高中及以下', [EDUCATION.COLLEGE]: '大专', [EDUCATION.BACHELOR]: '本科', [EDUCATION.MASTER]: '硕士', [EDUCATION.DOCTOR]: '博士' } // 薪资范围 export const SALARY_RANGE = { RANGE_1: 1, // 5k以下 RANGE_2: 2, // 5k-10k RANGE_3: 3, // 10k-20k RANGE_4: 4, // 20k-30k RANGE_5: 5, // 30k-50k RANGE_6: 6 // 50k以上 } // 薪资范围文本映射 export const SALARY_RANGE_TEXT = { [SALARY_RANGE.RANGE_1]: '5k以下', [SALARY_RANGE.RANGE_2]: '5k-10k', [SALARY_RANGE.RANGE_3]: '10k-20k', [SALARY_RANGE.RANGE_4]: '20k-30k', [SALARY_RANGE.RANGE_5]: '30k-50k', [SALARY_RANGE.RANGE_6]: '50k以上' } // 红娘等级 export const MATCHMAKER_LEVEL = { JUNIOR: 1, // 初级红娘 INTERMEDIATE: 2, // 中级红娘 SENIOR: 3, // 高级红娘 EXPERT: 4 // 专家红娘 } // 红娘等级文本映射 export const MATCHMAKER_LEVEL_TEXT = { [MATCHMAKER_LEVEL.JUNIOR]: '初级红娘', [MATCHMAKER_LEVEL.INTERMEDIATE]: '中级红娘', [MATCHMAKER_LEVEL.SENIOR]: '高级红娘', [MATCHMAKER_LEVEL.EXPERT]: '专家红娘' } // 分页配置 export const PAGINATION = { pageSize: 10, pageSizes: [10, 20, 50, 100] } // 图片上传配置 export const UPLOAD_CONFIG = { maxSize: 5 * 1024 * 1024, // 最大5MB accept: ['jpg', 'jpeg', 'png', 'gif'], maxCount: 9 // 最多上传9张 } // 正则表达式 export const REGEXP = { phone: /^1[3-9]\d{9}$/, email: /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,6}$/, idCard: /^[1-9]\d{5}(18|19|20)\d{2}(0[1-9]|1[0-2])(0[1-9]|[12]\d|3[01])\d{3}[\dXx]$/, password: /^(?=.*[a-z])(?=.*[A-Z])(?=.*\d)[a-zA-Z\d]{8,}$/ // 至少8位,包含大小写字母和数字 } // 消息类型 export const MESSAGE_TYPE = { TEXT: 1, // 文本 IMAGE: 2, // 图片 VOICE: 3, // 语音 VIDEO: 4, // 视频 SYSTEM: 5 // 系统消息 } // 匹配状态 export const MATCH_STATUS = { PENDING: 0, // 待处理 LIKED: 1, // 已喜欢 DISLIKED: 2, // 不喜欢 MATCHED: 3, // 互相喜欢(匹配成功) BLOCKED: 4 // 已拉黑 } // 课程类型 export const COURSE_TYPE = { VIDEO: 1, // 视频课程 LIVE: 2, // 直播课程 OFFLINE: 3 // 线下课程 } // 支付方式 export const PAYMENT_METHOD = { WECHAT: 1, // 微信支付 ALIPAY: 2, // 支付宝 BALANCE: 3 // 余额支付 } // 订单状态 export const ORDER_STATUS = { UNPAID: 0, // 未支付 PAID: 1, // 已支付 CANCELLED: 2, // 已取消 REFUNDED: 3, // 已退款 COMPLETED: 4 // 已完成 } // 订单状态文本映射 export const ORDER_STATUS_TEXT = { [ORDER_STATUS.UNPAID]: '待支付', [ORDER_STATUS.PAID]: '已支付', [ORDER_STATUS.CANCELLED]: '已取消', [ORDER_STATUS.REFUNDED]: '已退款', [ORDER_STATUS.COMPLETED]: '已完成' } // 本地存储键名 export const STORAGE_KEYS = { TOKEN: 'token', USER_INFO: 'userInfo', SEARCH_HISTORY: 'searchHistory', BROWSE_HISTORY: 'browseHistory' } export default { APP_CONFIG, THEME_COLORS, DEFAULT_IMAGES, ACTIVITY_TYPES, ACTIVITY_STATUS, GENDER, EDUCATION, EDUCATION_TEXT, SALARY_RANGE, SALARY_RANGE_TEXT, MATCHMAKER_LEVEL, MATCHMAKER_LEVEL_TEXT, PAGINATION, UPLOAD_CONFIG, REGEXP, MESSAGE_TYPE, MATCH_STATUS, COURSE_TYPE, PAYMENT_METHOD, ORDER_STATUS, ORDER_STATUS_TEXT, STORAGE_KEYS }