ActionDataBean.kt 6.1 KB
Newer Older
严久程 committed
1
package com.yidianling.ydl_pay.actionpoint
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201

/**
 * Created by xj on 2019/6/22.
 */
internal class ActionDataBean private constructor(builder: Builder) {

    /**
     * partId : sy_1 //埋点板块
     * position : psychic_advisory_click //点击事件
     * uid : 123 //用户ID
     * time : 1560389634000 //事件发生时间,毫秒级时间戳
     * ip : 192.168.0.1 //IP地址
     * appVersion : 3.8.00 //版本号
     * appId :    ydl-app-android-user
     * url : https://www.baidu.com //访问地址
     * server : 123
     * api : https://www.baidu.com/api
     * manufacturer : Apple //设备厂商,字符串类型,如"Apple"
     * model : iphone6 //设备型号,字符串类型,如"iphone6"
     * os : iOS //操作系统,字符串类型,如"iOS"
     * osVersion : 8.1.1 //操作系统版本,字符串类型,如"8.1.1"
     * screenHeight : 1920 //屏幕高度,数字类型,如1920
     * screenWidth : 1080 //屏幕宽度,数字类型,如1080
     * wifi : 0 是否 WIFI,byte类型,如0(是),1(否)
     * sign1 :
     * sign2 :
     * sign3 :
     * sign4 :
     * sign5 :
     */

    var partId: String? = null
    var position: String? = null
    var uid: String? = null
    var time: Long = 0.toLong()
    var ip: String? = null
    var appVersion: String? = null
    var appId: String? = null
    var url: String? = null
    var server: String? = null
    var api: String? = null
    var manufacturer: String? = null
    var model: String? = null
    var os: String? = null
    var osVersion: String? = null
    var screenHeight: Int = 0
    var screenWidth: Int = 0
    var wifi: Int = 0
    var sign1: String? = null
    var sign2: String? = null
    var sign3: String? = null
    var sign4: String? = null
    var sign5: String? = null

    init {
        this.partId = builder.partId
        this.position = builder.position
        this.uid = builder.uid
        this.time = builder.time
        this.ip = builder.ip
        this.appVersion = builder.appVersion
        this.appId = builder.appId
        this.url = builder.url
        this.server = builder.server
        this.api = builder.api
        this.manufacturer = builder.manufacturer
        this.model = builder.model
        this.os = builder.os
        this.osVersion = builder.osVersion
        this.screenHeight = builder.screenHeight
        this.screenWidth = builder.screenWidth
        this.wifi = builder.wifi
        this.sign1 = builder.sign1
        this.sign2 = builder.sign2
        this.sign3 = builder.sign3
        this.sign4 = builder.sign4
        this.sign5 = builder.sign5
    }

    class Builder {
        internal var partId: String? = ""
        internal var position: String? = ""
        internal var uid: String? = ""
        internal var time: Long = 0.toLong()
        internal var ip: String? = ""
        internal var appVersion: String? = ""
        internal var appId: String? = ""
        internal var url: String? = ""
        internal var server: String? = ""
        internal var api: String? = ""
        internal var manufacturer: String? = ""
        internal var model: String? = ""
        internal var os: String? = ""
        internal var osVersion: String? = ""
        internal var screenHeight: Int = 0
        internal var screenWidth: Int = 0
        internal var wifi: Int = 0
        internal var sign1: String? = ""
        internal var sign2: String? = ""
        internal var sign3: String? = ""
        internal var sign4: String? = ""
        internal var sign5: String? = ""

        fun partId(partId: String = ""): Builder {
            this.partId = partId
            return this
        }
        fun position(position: String = ""): Builder {
            this.position = position
            return this
        }
        fun uid(uid: String = ""): Builder {
            this.uid = uid
            return this
        }
        fun time(time: Long = 0.toLong()): Builder {
            this.time = time
            return this
        }
        fun ip(ip: String = ""): Builder {
            this.ip = ip
            return this
        }
        fun appVersion(appVersion: String = ""): Builder {
            this.appVersion = appVersion
            return this
        }
        fun appId(appId: String = ""): Builder {
            this.appId = appId
            return this
        }
        fun url(url: String = ""): Builder {
            this.url = url
            return this
        }
        fun server(server: String = ""): Builder {
            this.server = server
            return this
        }
        fun api(api: String = ""): Builder {
            this.api = api
            return this
        }
        fun manufacturer(manufacturer: String = ""): Builder {
            this.manufacturer = manufacturer
            return this
        }
        fun model(model: String = ""): Builder {
            this.model = model
            return this
        }
        fun os(os: String = ""): Builder {
            this.os = os
            return this
        }
        fun osVersion(osVersion: String = ""): Builder {
            this.osVersion = osVersion
            return this
        }
        fun screenHeight(screenHeight: Int = 0): Builder {
            this.screenHeight = screenHeight
            return this
        }
        fun screenWidth(screenWidth: Int = 0): Builder {
            this.screenWidth = screenWidth
            return this
        }
        fun wifi(wifi: Int = 0): Builder {
            this.wifi = wifi
            return this
        }
        fun sign1(sign1: String = ""): Builder {
            this.sign1 = sign1
            return this
        }
        fun sign2(sign2: String = ""): Builder {
            this.sign2 = sign2
            return this
        }
        fun sign3(sign3: String = ""): Builder {
            this.sign3 = sign3
            return this
        }
        fun sign4(sign4: String = ""): Builder {
            this.sign4 = sign4
            return this
        }
        fun sign5(sign5: String = ""): Builder {
            this.sign5 = sign5
            return this
        }

        fun build() : ActionDataBean {
            return ActionDataBean(this)
        }



    }
}