123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- // ========== COMMON - 公共模块 ==========
- /**
- * 与后端Terminal枚举一一对应
- */
- export const TerminalEnum = {
- UNKNOWN: 0, // 未知, 目的:在无法解析到 terminal 时,使用它
- WECHAT_MINI_PROGRAM: 10, //微信小程序
- WECHAT_WAP: 11, // 微信公众号
- H5: 20, // H5 网页
- APP: 31, // 手机 App
- };
- /**
- * 将 uni-app 提供的平台转换为后端所需的 terminal值
- *
- * @return 终端
- */
- export const getTerminal = () => {
- const platformType = uni.getSystemInfoSync().uniPlatform;
- // 与后端terminal枚举一一对应
- switch (platformType) {
- case 'app':
- return TerminalEnum.APP;
- case 'web':
- return TerminalEnum.H5;
- case 'mp-weixin':
- return TerminalEnum.WECHAT_MINI_PROGRAM;
- default:
- return TerminalEnum.UNKNOWN;
- }
- };
- // ========== MALL - 营销模块 ==========
- import dayjs from 'dayjs';
- /**
- * 优惠类型枚举
- */
- export const PromotionDiscountTypeEnum = {
- PRICE: {
- type: 1,
- name: '满减',
- },
- PERCENT: {
- type: 2,
- name: '折扣',
- },
- };
- /**
- * 优惠劵模板的有限期类型的枚举
- */
- export const CouponTemplateValidityTypeEnum = {
- DATE: {
- type: 1,
- name: '固定日期可用',
- },
- TERM: {
- type: 2,
- name: '领取之后可用',
- },
- };
- /**
- * 营销的产品范围枚举
- */
- export const PromotionProductScopeEnum = {
- ALL: {
- scope: 1,
- name: '通用劵',
- },
- SPU: {
- scope: 2,
- name: '产品劵',
- },
- CATEGORY: {
- scope: 3,
- name: '品类劵',
- },
- };
- // 时间段的状态枚举
- export const TimeStatusEnum = {
- WAIT_START: '即将开始',
- STARTED: '进行中',
- END: '已结束',
- };
- /**
- * 微信小程序的订阅模版
- */
- export const WxaSubscribeTemplate = {
- TRADE_ORDER_DELIVERY: '订单发货通知',
- PROMOTION_COMBINATION_SUCCESS: '拼团结果通知',
- PAY_WALLET_RECHARGER_SUCCESS: '充值成功通知',
- };
- export const PromotionActivityTypeEnum = {
- NORMAL: {
- type: 0,
- name: '普通',
- },
- SECKILL: {
- type: 1,
- name: '秒杀',
- },
- BARGAIN: {
- type: 2,
- name: '砍价',
- },
- COMBINATION: {
- type: 3,
- name: '拼团',
- },
- POINT: {
- type: 4,
- name: '积分商城',
- },
- };
- /** 配送方式枚举 */
- export const DeliveryTypeEnum = {
- EXPRESS: { type: 1, name: '快递发货' },
- PICK_UP: { type: 2, name: '用户自提' },
- };
- export const getTimeStatusEnum = (startTime, endTime) => {
- const now = dayjs();
- if (now.isBefore(startTime)) {
- return TimeStatusEnum.WAIT_START;
- } else if (now.isAfter(endTime)) {
- return TimeStatusEnum.END;
- } else {
- return TimeStatusEnum.STARTED;
- }
- };
- /**
- * 分享页枚举
- * 按需扩展
- * */
- export const SharePageEnum = {
- HOME: {
- name: '首页',
- page: '/pages/index/index',
- value: '1'
- },
- GOODS: {
- name: '普通产品页',
- page: '/pages/goods/index',
- value: '2'
- },
- GROUPON: {
- name: '拼团产品页',
- page: '/pages/goods/groupon',
- value: '3'
- },
- SECKILL: {
- name: '秒杀产品页',
- page: '/pages/goods/seckill',
- value: '4'
- },
- GROUPON_DETAIL: {
- name: '参与拼团页',
- page: '/pages/activity/groupon/detail',
- value: '5'
- },
- POINT: {
- name: '积分产品页',
- page: '/pages/goods/point',
- value: '6'
- }
- }
|