package com.abbidot.tracker.constant

import android.annotation.SuppressLint
import androidx.annotation.IntDef

/**
 *Created  by .yzq on 2022/4/8/008.
 * @link
 * @description:int 常量
 */
@SuppressLint("UniqueConstants")
@IntDef(
    ConstantInt.Open,
    ConstantInt.Close,
    ConstantInt.BadZone,
    ConstantInt.GoodZone,
    ConstantInt.LowBattery20,
    ConstantInt.LowBattery10,
    ConstantInt.LowBattery30,
    ConstantInt.NoSignal,
    ConstantInt.Line,
    ConstantInt.Point,
    ConstantInt.CircleShapeType,
    ConstantInt.RectangleShapeType,
    ConstantInt.UserLocationType,
    ConstantInt.PolygonShapeType,
    ConstantInt.OtherLocationType,
    ConstantInt.SafeZone,
    ConstantInt.NoGoZone,
    ConstantInt.OtherPetType,
    ConstantInt.DogPetType,
    ConstantInt.CatPetType,
    ConstantInt.WoMan,
    ConstantInt.Man,
    ConstantInt.Type0,
    ConstantInt.Type1,
    ConstantInt.Type2,
    ConstantInt.Type3,
    ConstantInt.Type4,
    ConstantInt.SpecialType,
    ConstantInt.isBind,
    ConstantInt.NoBind,
    ConstantInt.WeakSignal,
    ConstantInt.DefaultSportGoal,
    ConstantInt.MaxType,
    ConstantInt.MinType,
    ConstantInt.HeightType,
    ConstantInt.WeightType,
    ConstantInt.BasicPackage,
    ConstantInt.PremiumPackage,
    ConstantInt.MinSportGoal,
    ConstantInt.PetSpecialType,
    ConstantInt.DefaultType,
    ConstantInt.NoShare,
    ConstantInt.ReportTimeOutTime,
    ConstantInt.PetLocationType
)
@Retention(AnnotationRetention.RUNTIME)
annotation class ConstantInt {
    companion object {
        const val SpecialType = -1
        const val Type0 = 0
        const val Type1 = 1
        const val Type2 = 2
        const val Type3 = 3
        const val Type4 = 4

        const val OtherPetType = 0
        const val DogPetType = 1
        const val CatPetType = 2

        const val MaxType = 0
        const val MinType = 1
        const val HeightType = 0
        const val WeightType = 1

        const val WoMan = 0
        const val Man = 1

        const val isBind = 1
        const val NoBind = 0

        const val Open = 1
        const val Close = 0
        const val BadZone = 1
        const val GoodZone = 0
        const val SafeZone = 1
        const val NoGoZone = 2
        const val LowBattery20 = 20
        const val LowBattery10 = 10
        const val LowBattery30 = 30
        const val NoSignal = 0
        const val WeakSignal = 50
        const val Line = 2
        const val Point = 3

        //围栏样式 1=圆形，2=矩形,3=六边形
        const val CircleShapeType = 1
        const val RectangleShapeType = 2
        const val PolygonShapeType = 3

        const val OtherLocationType = 2
        const val UserLocationType = 1
        const val PetLocationType = 0
        const val PetSpecialType = 3
        const val DefaultType = 4

        //默认的运动目标时间(min)
        const val DefaultSportGoal = 60

        //推荐最小的运动目标时间(min)
        const val MinSportGoal = 30

        //基础套餐
        const val BasicPackage = 1

        //高级套餐
        const val PremiumPackage = 2

        //不是分享的
        const val NoShare = 0

        //上报超时时间（min）
        const val ReportTimeOutTime = 70
    }
}