package com.cr.models

import com.cr.common.ClassManager
import com.cr.common.CrUnitManager
import com.cr.common.JSONManager
import org.json.JSONObject

/**
 * 操作系统：MAC系统
 * 创建者：王成
 * 创建日期：2023/9/18 16:57
 * 描述：航线航点模型
 */
class AircraftWaypointModel @JvmOverloads constructor(
    userId:String
):iNetDataModel<AircraftWaypointModel>{
    var ptId:String = ""  // define: 2023/9/18 唯一标识
    var userId:String = ""   // define: 2023/9/18 关联用户Id
    var createDate:String = ""  // define: 2023/9/18 创建日期
    var longitude:String = ""  // define: 2023/9/18 经度
    var latitude:String = ""  // define: 2023/9/18 纬度
    var altitude:String = ""  // define: 2023/9/18 高度
    var angle:String = ""  // define: 2023/9/18 方位角
    var type:String = ""  // define: 2023/9/18 类型 1--代表已上传 0--代表未上传

    /**
     * 初始化
     */
    init {
        this.userId = userId
        this.createDate = CrUnitManager.toSystemYMDHMSDate()
        this.type = "0"
    }

    companion object:iJSONModel<AircraftWaypointModel>{
        /**
         * 覆写转换为实例
         * @param json String JSON字符串
         * @return AircraftWaypointModel?
         */
        override fun toModel(json: String): AircraftWaypointModel? {
            var obj = JSONObject(json)
            var resModel = AircraftWaypointModel("")
            resModel.ptId = JSONManager.getStringValue(obj,"name")
            return resModel
        }
    }

    /**
     * 转换为JSON字符串
     * @return String JSON字符串
     */
    override fun toJSON(): String {
        var obj = ClassManager.fieldsToJSONObject(this)
        return obj.toString()
    }

}