using JiaZhiQuan.Common.Attributes;

namespace JiaZhiQuan.Common
{
    public enum PostState
    {
        待审核 = 0,
        通过 = 1,
        未通过 = 2,
        删除 = -1,
    }

    public enum ThumbsupTargetType
    {
        文章 = 0,
        评论 = 1,
        回复 = 2,
    }

    public enum PostCategoryType
    {
        资讯 = 0,
        笔记 = 1,
        研报 = 2,
    }

    public enum EnableStatus
    {
        禁用 = 0,
        启用 = 1
    }

    public enum DisabledStatus
    {
        禁用 = 1,
        启用 = 0
    }

    public class Post
    {
        public enum PostState
        {
            待审核 = 0,
            通过 = 1,
            未通过 = 2,
            删除 = -1,
        }
    }

    /// <summary>
    /// 成长体系
    /// </summary>
    public class UserGrow
    {
        public enum TaskEvent
        {

            /// <summary>
            /// 首次完善资料至100%
            /// </summary>
            CompleteSelfData = 1,

            /// <summary>
            /// 首次完成实名认证
            /// </summary>
            RealNameAuth = 2,

            /// <summary>
            /// 首次通过创作者认证或优质创作者认证
            /// </summary>
            AuthorAuth = 3,

            /// <summary>
            /// 申请提现一次
            /// </summary>
            Withdrawal = 4,

            /// <summary>
            /// 每日阅读过X篇笔记
            /// </summary>
            DayRead = 5,
            /// <summary>
            /// 每日点赞过X篇笔记
            /// </summary>
            DayThumbsup = 6,

            /// <summary>
            /// 收藏
            /// </summary>
            Collect = 7,

            /// <summary>
            /// 分享
            /// </summary>
            Share = 8,

            /// <summary>
            /// 发布评论或回复
            /// </summary>
            PublishCommentOrReply = 9,

            /// <summary>
            /// 关注用户
            /// </summary>
            FocusUser = 10,

            /// <summary>
            /// 用户发布笔记
            /// </summary>
            PublishPost = 11,

            /// <summary>
            /// 审核笔记通过
            /// </summary>
            CheckPost = 12
        }

        public enum ExperienceSource
        {
            任务 = 0
        }
    }

    public class IM
    {
        public enum MessageState
        {
            未读 = 0,
            已读 = 1,
            撤回 = 2
        }
    }

    public class Balance
    {
        public enum CashoutApplyStatus
        {
            待审核 = 0,
            审核通过 = 1,
            审核未通过 = 2
        }

        public enum CashoutTaskStatus
        {
            待打款 = 0,
            已打款 = 1,
            /// <summary>
            /// 打款失败未确认
            /// </summary>
            打款中 = 2,
            打款失败 = 3
        }

        public enum CashoutTaskSourceType
        {
            提现 = 0,
            支付宝红包 = 1,
            C2C订单分账 = 2
        }
    }

    public class Active
    {
        public enum RewardReceiveState
        {
            待兑换 = 0,
            已兑换 = 1,
            已过期 = 2,
            兑换中 = 3
        }
    }

    public class CreatorSpace
    {
        public enum CreatorSpaceType
        {
            [CreatorSpaceTypeDesc("近七日数据总览", 0, 6, true)]
            数据中心 = 0,
            [CreatorSpaceTypeDesc("创作服务", 1, 5, true)]
            创作服务 = 1,
            [CreatorSpaceTypeDesc("活动卡片", 2, 4, false)]
            活动卡片 = 2,
            [CreatorSpaceTypeDesc("活动专区", 3, 3, false)]
            活动专区 = 3,
            [CreatorSpaceTypeDesc("我的作品", 4, 2, true)]
            我的作品 = 4,
            [CreatorSpaceTypeDesc("", 5, 1, true)]
            Banner = 5
        }

        /// <summary>
        /// 活动专题，Style类型
        /// </summary>
        public enum ActivityRegionStyleType
        {
            长方形小图 = 0,
            正方形小图 = 1,
            大图 = 2
        }

        public enum ActivityCardVisual
        {
            非创作者 = 1,
            创作者 = 2,
            所有人 = 3
        }
    }
    public class UserInvite
    {
        public enum InviterRole
        {
            普通用户 = 0,
            合作方 = 1
        }
        public enum RegisterChannel
        {
            H5 = 0
        }
        public enum State
        {
            已注册未激活 = 0,
            已激活 = 1
        }
        public enum ActiveChannel
        {
            Android = 0,
            iOS = 1
        }

        public enum SettlementState
        {
            已结算 = 0,
            撤销 = -1
        }

        public enum PartenrEventDetails
        {
            启用合作方 = 0,
            禁用合作方 = 1,
            修改邀请单价为 = 2,
            添加合作方邀请单价为 = 3,
            邀请无效的非首次注册用户 = 4,
            邀请无效的非新设备首登用户 = 5
        }
    }
    public class DeviceChannel
    {
        public enum DeviceState
        {
            新设备 = 0,
            非新设备 = 1
        }
        public enum PhoneState
        {
            首次注册 = 0,
            非首次注册 = 1,
            新设备登录 = 2
        }
    }

    /// <summary>
    /// 用户完善资料类型 1昵称、2简介、3性别、4生日、5地区、6学校、7兴趣标签、8背景图
    /// </summary>
    public enum UserProfileType
    {
        Alias = 1,
        Description = 2,
        Sex = 3,
        Birthday = 4,
        Region = 5,
        School = 6,
        InterestTag = 7,
        BgImage = 8
    }

    public class NotifyRecord
    {
        public enum NotifyRecordType
        {
            生日祝福提醒 = 1,
            每日打卡提醒打卡 = 2,
            每日打卡提醒终极抽奖 = 3
        }
    }

    /// <summary>
    /// 商品来源（1，c2c商品）
    /// </summary>
    public enum MallGoodsSourceType
    {
        c2c商品 = 1
    }
    /// <summary>
    /// 删除状态
    /// </summary>
    public enum DeletedState
    {
        正常 = 0,
        已删 = 1
    }

    /// <summary>
    /// 提现来源类型
    /// </summary>
    public enum BalanceCashoutTaskSourceType
    {
        提现 = 0,
        支付宝红包打款 = 1,
        C2C订单分账打款 = 2
    }

    /// <summary>
    /// 流水记录流水类型
    /// </summary>
    public enum MallBillRecordBillType
    {
        支付流水 = 1,
        分账流水 = 2,
        退单流水 = 3
    }

    /// <summary>
    /// 流水记录状态
    /// </summary>
    public enum MallBillRecordBillState
    {
        待支付 = 1,
        已支付 = 2,
        失败 = 3
    }
    
    /// <summary>
    /// 商品审核状态
    /// </summary>
    public enum MallGoodsAuditState
    {
        未通过 = 0,
        通过 = 1
    }
    /// <summary>
    /// 刊登状态
    /// </summary>
    public enum MallGoodsOnsaleState
    {
        下架 = 0,
        上架 = 1
    }

    /// <summary>
    /// 销售状态
    /// </summary>
    public enum MallGoodsSaleState
    {
        未售 = 0,
        已售 = 1
    }

    /// <summary>
    /// 下架原因类型
    /// </summary>
    public enum MallGoodsOffsaleReasonType
    {
        主动下架 = 1,
        售出下架 = 2
    }

    /// <summary>
    /// 商品变更类型枚举
    /// </summary>
    public enum MallGoodsChangeEventType
    {
        创建编辑 = 1,
        审核 = 2,
        刊登 = 3,
        删除 = 4,
        启用禁用 = 5,
        销售 = 6
    }

    /// <summary>
    /// C2C订单状态
    /// </summary>
    public enum MallOrderState
    {
        订单关闭 = -9,
        卖家取消 = -2,
        买家取消 = -1,
        待支付 = 1,
        待发货 = 2,
        待收货 = 3,
        交易成功 = 4
    }

    /// <summary>
    /// C2C订单退款状态
    /// </summary>
    public enum MallOrderRefundState
    {
        待退款 = 0,
        退款中 = 1,
        已退款 = 2,
        退款失败 = -1
    }

    /// <summary>
    /// C2C订单评价状态
    /// </summary>
    public enum MallOrderRatingState
    {
        订单未成功交易 = 0,
        待评 = 1,
        已评 = 2,
        超时未评 = 3
    }

    /// <summary>
    /// C2C订单评价类型
    /// </summary>
    public enum MallOrderRatingType
    {
        差评 = 0,
        中评 = 1,
        好评 = 2
    }

    /// <summary>
    /// C2C商城中用户身份类型（买家或卖家）
    /// </summary>
    public enum MallUserType
    {
        买家 = 1,
        卖家 = 2
    }
    
    /// <summary>
    /// 商品变更事件操作人类型
    /// </summary>
    public enum MallGoodsChangeOperatorType
    {
        平台 = 0,
        买家 = 1,
        卖家 = 2,
        运营人员 = 3
    }

    /// <summary>
    /// C2C订单变更事件操作人类型
    /// </summary>
    public enum MallOrderChangeOperatorType
    {
        平台 = 0,
        买家 = 1,
        卖家 = 2,
        运营人员 = 3
    }

    /// <summary>
    /// C2C支付订单支付状态
    /// </summary>
    public enum MallPayOrderState
    {
        待支付 = 0,
        已支付 = 1,
        支付失败 = 2,
        支付订单关闭 = 3
    }

    /// 商品等级
    /// </summary>
    public enum MallGoodsLevel
    {
        S = 0,
        A = 1,
        B = 2,
        C = 3,
        D = 4,
        R = 5
    }

    public enum UEBillEventType {
        /// <summary>
        /// 无
        /// </summary>
        None=0,
        /// <summary>
        /// 订单支付
        /// </summary>
        OrderPay = 1,
        /// <summary>
        /// 仓储费支付
        /// </summary>
        StoragePay = 2,
        /// <summary>
        /// 买家订单取消退款
        /// </summary>
        OrderRefund = 3,
        /// <summary>
        /// 后台订单取消退款
        /// </summary>
        OrderRefundBySys = 4,
        /// <summary>
        /// 下单抵扣
        /// </summary>
        OrderDiKou = 5,
        /// <summary>
        /// 提现
        /// </summary>
        Chash = 6,
        /// <summary>
        /// 退回保证金
        /// </summary>
        DepositRefund= 7,
    }
}
