// // LalamoveInterface.swift // GeliBusinessPlatform // // Created by junye lu on 2020/7/29. // Copyright © 2020 junye lu. All rights reserved. // import Foundation import ObjectMapper //MARK: - 城市列表 class cityListModel: Mappable { var code:Int? var message : String? var data :Array<cityListDataModel>? required init?( map: Map) { } func mapping(map: Map) { code <- map["code"] message <- map["message"] data <- map["data"] } } class cityListDataModel: Mappable { var name : String? var lat_lon : citySearchDataPoiLocationModel? var city_id : Int? var name_en : String? required init?( map: Map) { } func mapping(map: Map) { name <- map["name"] lat_lon <- map["lat_lon"] city_id <- map["city_id"] name_en <- map["name_en"] } } //MARK: - 获取城市下可选车型信息 class cityCartModel: Mappable { var code:Int? var message : String? var data :cityCartDataModel? required init?( map: Map) { } func mapping(map: Map) { code <- map["code"] message <- map["message"] data <- map["data"] } } class cityCartDataModel: Mappable { var enable_virtual_number:Int? var vehicle_arr : Array<vehicle_arr_data>? var name :String? var spec_req_arr : Array<spec_req_arr_data>? var enable_ep_virtual_number_status:Int? var city_id:Int? var name_en:String? var revision:Int? required init?( map: Map) { } func mapping(map: Map) { enable_virtual_number <- map["enable_virtual_number"] vehicle_arr <- map["vehicle_arr"] name <- map["name"] spec_req_arr <- map["spec_req_arr"] enable_ep_virtual_number_status <- map["enable_ep_virtual_number_status"] city_id <- map["city_id"] name_en <- map["name_en"] revision <- map["revision"] } } class vehicle_arr_data: Mappable { var img_url_high_light:String? var vehicle_std_arr : Array<vehicle_std_arr_data>? var surcharge_desc :String? var carriage_length_cm :String? var vehicle_price_text_item :vehicle_price_text_item_data? var is_truck_direction:Int? var name : String? var order_vehicle_id :Int? var img_url_off_light :String? var carriage_height_cm :String? var carriage_width_cm:String? var spread_remark : String? required init?( map: Map) { } func mapping(map: Map) { img_url_high_light <- map["img_url_high_light"] vehicle_std_arr <- map["vehicle_std_arr"] surcharge_desc <- map["surcharge_desc"] carriage_length_cm <- map["carriage_length_cm"] vehicle_price_text_item <- map["vehicle_price_text_item"] is_truck_direction <- map["is_truck_direction"] name <- map["name"] order_vehicle_id <- map["order_vehicle_id"] img_url_off_light <- map["img_url_off_light"] carriage_height_cm <- map["carriage_height_cm"] carriage_width_cm <- map["carriage_width_cm"] spread_remark <- map["spread_remark"] } } class vehicle_price_text_item_data: Mappable { var text_weight : String? var exceed_segment_price :Array<exceed_segment_price_data>? var text_desc :String? var text_size : String? var start_distance_km :Float? var text_volume :String? var price_fen_after_start : Float? var start_price_fen :Float? required init?( map: Map) { } func mapping(map: Map) { text_weight <- map["text_weight"] exceed_segment_price <- map["exceed_segment_price"] text_desc <- map["text_desc"] text_size <- map["text_size"] start_distance_km <- map["start_distance_km"] text_volume <- map["text_volume"] price_fen_after_start <- map["price_fen_after_start"] start_price_fen <- map["start_price_fen"] } } class exceed_segment_price_data: Mappable { var end_exdistancekm : Float? var price_extra_fen :Float? var start_exdistancekm :Float? required init?( map: Map) { } func mapping(map: Map) { end_exdistancekm <- map["end_exdistancekm"] price_extra_fen <- map["price_extra_fen"] start_exdistancekm <- map["start_exdistancekm"] } } class vehicle_std_arr_data: Mappable { var name : String? var price_fen :Float? var desc :String? required init?( map: Map) { } func mapping(map: Map) { name <- map["name"] price_fen <- map["price_fen"] desc <- map["desc"] } } class spec_req_arr_data: Mappable { var price_value_fen:Float? var name : String? var price_type :Int? var type :Int? var desc :String? required init?( map: Map) { } func mapping(map: Map) { price_value_fen <- map["price_value_fen"] name <- map["name"] price_type <- map["price_type"] type <- map["type"] desc <- map["desc"] } } //MARK: - 物流预估价格 class orderPriceCalculateModel: Mappable { var code:Int? var message : String? var data :orderPriceCalculateDataModel? required init?( map: Map) { } func mapping(map: Map) { code <- map["code"] message <- map["message"] data <- map["data"] } } class orderPriceCalculateDataModel: Mappable { var path_id:String? var distance_by : Int? var distance_total :Int? var total_price_fen :Float? //订单预估总价 var order_vehicle_name:String? var exceed_distance : Int? var spec_req_price_arr:Array<orderPriceCalculateSpecReqDataModel>? //增值(额外)服务项已经价格 var order_price_arr:Array<orderPriceCalculateOrderPriceDataModel>? // var vehicle_std_price_arr:Array<> required init?( map: Map) { } func mapping(map: Map) { path_id <- map["path_id"] distance_by <- map["distance_by"] distance_total <- map["distance_total"] total_price_fen <- map["total_price_fen"] order_vehicle_name <- map["order_vehicle_name"] exceed_distance <- map["exceed_distance"] spec_req_price_arr <- map["spec_req_price_arr"] order_price_arr <- map["order_price_arr"] } } class orderPriceCalculateSpecReqDataModel: Mappable { var price_value_fen:Int? var name : String? var price_fen :Float? var price_type :Int? var driver_price_value_fen:Float? var type : Int? var driver_price_fen:Float? required init?( map: Map) { } func mapping(map: Map) { price_value_fen <- map["price_value_fen"] name <- map["name"] price_fen <- map["price_fen"] price_type <- map["price_type"] driver_price_value_fen <- map["driver_price_value_fen"] type <- map["type"] driver_price_fen <- map["driver_price_fen"] } } class orderPriceCalculateOrderPriceDataModel: Mappable { var pay_status:Int? var price_fen :Float? var type :Int? required init?( map: Map) { } func mapping(map: Map) { pay_status <- map["pay_status"] price_fen <- map["price_fen"] type <- map["type"] } } //MARK: - 地址检索poi class citySearchModel: Mappable { var code:Int? var message : String? var data :citySearchDataModel? required init?( map: Map) { } func mapping(map: Map) { code <- map["code"] message <- map["message"] data <- map["data"] } } class citySearchDataModel: Mappable { var poi:Array<citySearchDataPoiModel>? required init?( map: Map) { } func mapping(map: Map) { poi <- map["poi"] } } class citySearchDataPoiModel: Mappable { var area:String?//地址所属区(县),示例:⻰华区 var uid:String? //地址uid var address:String? // 地址详情,示例:深圳市⻰华区致远中路28号 var name:String?// 地址名称,示例:深圳北站 var city:String?//地址所属城市名称, 示例:深圳市 var distance:String? //距离(将返回与输入参数中经纬度的距离,如果输入参数中没有传经纬度 则返回空) var location:citySearchDataPoiLocationModel?//地址经纬度(wgs84坐标系) var children:Array<citySearchDataPoiChildrenModel>?//可选子节点地址 var city_id:Int?//地址所属城市ID,示例:1002 required init?( map: Map) { } func mapping(map: Map) { uid <- map["uid"] name <- map["name"] address <- map["address"] city <- map["city"] city_id <- map["city_id"] area <- map["area"] distance <- map["distance"] children <- map["children"] location <- map["location"] } } class citySearchDataPoiLocationModel: Mappable { var lat:Double? var lon:Double? required init?( map: Map) { } func mapping(map: Map) { lat <- map["lat"] lon <- map["lon"] } } class citySearchDataPoiChildrenModel: Mappable { var uid:String? //地址uid var name:String?// 子节点地址名称, 示例:a口 var address:String? // 地子节点地址详情, 示例:上梅林地铁站-A口 var location:citySearchDataPoiLocationModel?//子节点地址经纬度(wgs84坐标系) required init?( map: Map) { } func mapping(map: Map) { uid <- map["uid"] name <- map["name"] address <- map["address"] location <- map["location"] } } //MARK: - 货拉拉下单 class shopsAuthListModel: Mappable { var code:Int? var message : String? var data :Int? required init?( map: Map) { } func mapping(map: Map) { code <- map["code"] message <- map["message"] data <- map["data"] } } //MARK: - 查看收发货历史 class getSearchLogListModel: Mappable { var code:Int? var message : String? var data :Array<getSearchLogListDataModel>? required init?( map: Map) { } func mapping(map: Map) { code <- map["code"] message <- map["message"] data <- map["data"] } } class getSearchLogListDataModel: Mappable { var id:Int? var poi : String? var house_number :String? var contact_name :String? var contact_phone_no :String? var sr_type :Int? var shop_id :Int? required init?( map: Map) { } func mapping(map: Map) { id <- map["id"] poi <- map["poi"] house_number <- map["house_number"] contact_name <- map["contact_name"] contact_phone_no <- map["contact_phone_no"] sr_type <- map["sr_type"] shop_id <- map["shop_id"] } } //MARK: - 获取货拉拉预约时间 class getHllTimeModel: Mappable { var code:Int? var message : String? var data :Array<getHllTimeDataModel>? required init?( map: Map) { } func mapping(map: Map) { code <- map["code"] message <- map["message"] data <- map["data"] } } class getHllTimeDataModel: Mappable { var date:String? var h:Array<getHllTimeDayHDataModel>? required init?( map: Map) { } func mapping(map: Map) { date <- map["date"] h <- map["h"] } } class getHllTimeDayHDataModel: Mappable { var val:String? var stime:Double? var i:Array<getHllTimeDayIDataModel>? required init?( map: Map) { } func mapping(map: Map) { i <- map["i"] val <- map["val"] stime <- map["stime"] } } class getHllTimeDayIDataModel: Mappable { var val:String? var stime:Double? required init?( map: Map) { } func mapping(map: Map) { val <- map["val"] stime <- map["stime"] } } //MARK: - 获取取消订单原因 class orderCancelReasonModel: Mappable { var code:Int? var message : String? var data :Array<orderCancelReasonDataModel>? required init?( map: Map) { } func mapping(map: Map) { code <- map["code"] message <- map["message"] data <- map["data"] } } class orderCancelReasonDataModel: Mappable { var id:Int? var category:String? //分类名称;示例:自己原因 var sub_cat:Array<orderCancelReasonSubCatDataModel>? var isShow:Bool = false required init?( map: Map) { } func mapping(map: Map) { id <- map["id"] category <- map["category"] sub_cat <- map["sub_cat"] } } class orderCancelReasonSubCatDataModel: Mappable { var sub_id:Int? var sub_name:String? //子分类原因名称;示例:计划有变,暂时不需要用车 var ep_model:Int? required init?( map: Map) { } func mapping(map: Map) { sub_id <- map["sub_id"] sub_name <- map["sub_name"] ep_model <- map["ep_model"] } } //MARK: - 查看货拉拉运单详情 class getHllOrderDetailsModel: Mappable { var code:Int? var message : String? var data :getHllOrderDetailsDataModel? required init?( map: Map) { } func mapping(map: Map) { code <- map["code"] message <- map["message"] data <- map["data"] } } class getHllOrderDetailsDataModel: Mappable { var order_detail_item :getHllOrderDetailsOrderDetailItemDataModel?//订单明细信息 var driver_info :getHllOrderDetailsdriverInfoDataModel?//接单司机信息 var delivery :getHllOrderDetailsSalePlatDataModel?//关联信息 required init?( map: Map) { } func mapping(map: Map) { order_detail_item <- map["order_detail_item"] driver_info <- map["driver_info"] delivery <- map["delivery"] } } class getHllOrderDetailsSalePlatDataModel: Mappable { var sale_plat : String? var order_sn : String? var hll_pay_status_two : Int? var wb_no : String? var bill_price_arr:Float? var pay_status:Int? required init?( map: Map) { } func mapping(map: Map) { sale_plat <- map["sale_plat"] order_sn <- map["order_sn"] hll_pay_status_two <- map["hll_pay_status_two"] wb_no <- map["wb_no"] bill_price_arr <- map["bill_price_arr"] pay_status <- map["pay_status"] } } class getHllOrderDetailsdriverInfoDataModel: Mappable { var name : String? var phone_no : String? var license_plate : String? var lat_lon : citySearchDataPoiLocationModel? required init?( map: Map) { } func mapping(map: Map) { name <- map["name"] phone_no <- map["phone_no"] license_plate <- map["license_plate"] lat_lon <- map["lat_lon"] } } class getHllOrderDetailsOrderDetailItemDataModel: Mappable {//订单明细信息 var order_item : orderDetailItemDataModel? var spec_req_price_arr : Array<specReqPriceArrDataModel>? var bill_price_arr : Array<billPricearrDataModel>? var contact_name : String? //下单联系人 示例:罗瑞 var contact_phone_no : String? //下单联系人手机 var total_distance : Int? //总里数(KM) var exceed_distance : Int?//超里数(KM) var driver_id : Int?//接单司机ID var vehicle_std_price_arr : Array<Any>?//车型附加要求项及费用信息 var progress_str : String?// // 订单跟踪信息, 示例:订单已提交|2019-12-25 12:47,司机已接单|2019-12-25 12:48,货物已装车|2019-12-25 12:48,订单已完成|2019-12-25 12:48,账单已发送|2019-12-25 12:53 var complete_time : String?//订单完成时间 示例:2019-12-25 12:48:35 var vehicle_id : Int?//下单车型ID var pickup_ts : String?//司机接单时间戳 var loaded_ts : String?//司机装货时间戳 var driver_amount_fen : Int? var amount_fen : Int? var brokerage_fen : Int?//平台信息费 var goods_type_id : Int? var person_insurance_fen : Int?//保险费用 var virtual_bind_status : Int?//虚拟号绑定状态 var use_virtual_phone : Int? var last_bind_phone_no : Int? var virtual_phone_info : Array<Any>? required init?( map: Map) { } func mapping(map: Map) { order_item <- map["order_item"] spec_req_price_arr <- map["spec_req_price_arr"] bill_price_arr <- map["bill_price_arr"] contact_name <- map["contact_name"] contact_phone_no <- map["contact_phone_no"] total_distance <- map["total_distance"] exceed_distance <- map["exceed_distance"] driver_id <- map["driver_id"] vehicle_std_price_arr <- map["vehicle_std_price_arr"] progress_str <- map["progress_str"] complete_time <- map["complete_time"] vehicle_id <- map["vehicle_id"] pickup_ts <- map["pickup_ts"] loaded_ts <- map["loaded_ts"] driver_amount_fen <- map["driver_amount_fen"] amount_fen <- map["amount_fen"] brokerage_fen <- map["brokerage_fen"] goods_type_id <- map["goods_type_id"] person_insurance_fen <- map["person_insurance_fen"] virtual_bind_status <- map["virtual_bind_status"] use_virtual_phone <- map["use_virtual_phone"] last_bind_phone_no <- map["last_bind_phone_no"] virtual_phone_info <- map["virtual_phone_info"] } } class specReqPriceArrDataModel: Mappable { //订单额外服务项及费用信息 var type : Int?// var name : String?//例:拍照回单 var price_fen : Float?//费用 var price_type : Int?//费用 var price_value_fen : Int? required init?( map: Map) { } func mapping(map: Map) { type <- map["type"] name <- map["name"] price_fen <- map["price_fen"] price_type <- map["price_type"] price_value_fen <- map["price_value_fen"] } } class billPricearrDataModel: Mappable { //司机添加的额外费用信息 var bill_type : Int?//费用类型ID,1过桥费,2停车费,3搬运费,5逾时等候费 var name : String?//费用类型名称 示例:高速路桥费 var price_fen : Float?//费用金额(分) 示例:0 var img_url : String?//票据凭证图片链接 示例: required init?( map: Map) { } func mapping(map: Map) { bill_type <- map["bill_type"] name <- map["name"] price_fen <- map["price_fen"] img_url <- map["img_url"] } } class orderDetailItemDataModel: Mappable { //订单信息 var order_display_id : String?//货拉拉订单号(对外) var order_id : Int?//货拉拉订单号(对内 var order_uuid : String?// var order_status : Int?//订单当前状态 var pay_status : Int?//订单总支付状态1已支付,0未支付 var order_vehicle_id : Int?//订单车型ID var vehicle_type_name : String?//订单车型名称, 示例:小型厢货 var order_time : String?//需用车时间 示例:2019-12-25 12:57:04 var create_time : String?// 订单创建时间, 示例:2019-12-25 12:47:14 var order_reason : String?//员工用车原因 var remark : String?//订单备注 var price_fen : Float?//订单总价格 var user_id : Int?//下单用户ID var city_id : Int?//下单城市ID var ep_id : Int?//下单用户企业账号ID var driver_id : Int?//接单司机ID var send_bill_time : String?//司机账单发送时间, 示例:2019-12-25 12:53:40 var send_bill_price_fen : Int?//司机账单发送金额(分) var update_bill_time : String?//账单更新时间 示例:2019-12-25 12:53:40 var is_complain_order : Int?//用户是否申诉账单 var complain_bill_time : String?//账单申诉时间, 示例:2019-12-25 12:53:40 var abnormal_bill_time : String?//账单异常完成时间, 示例:2019-12-25 12:53:40 var pay_type : Int?//支付方式(3企业账户余额支付,8账期支付) var order_type : Int?//订单类型 var addr_info_arr : Array<orderDetailItemAddrInfoArrDataModel>?//订单地址信息 var order_price_arr : Array<orderDetailItemOrderPriceArrDataModel>?//订单计价明细数组 required init?( map: Map) { } func mapping(map: Map) { order_display_id <- map["order_display_id"] order_id <- map["order_id"] order_uuid <- map["order_uuid"] order_status <- map["order_status"] pay_status <- map["pay_status"] order_vehicle_id <- map["order_vehicle_id"] vehicle_type_name <- map["vehicle_type_name"] order_time <- map["order_time"] create_time <- map["create_time"] order_reason <- map["order_reason"] remark <- map["remark"] price_fen <- map["price_fen"] user_id <- map["user_id"] city_id <- map["city_id"] ep_id <- map["ep_id"] driver_id <- map["driver_id"] send_bill_time <- map["send_bill_time"] send_bill_price_fen <- map["send_bill_price_fen"] update_bill_time <- map["update_bill_time"] is_complain_order <- map["is_complain_order"] complain_bill_time <- map["complain_bill_time"] abnormal_bill_time <- map["abnormal_bill_time"] pay_type <- map["pay_type"] order_type <- map["order_type"] addr_info_arr <- map["addr_info_arr"] order_price_arr <- map["order_price_arr"] } } class orderDetailItemAddrInfoArrDataModel: Mappable { //订单地址信息 var name : String?//地址名称 示例:卓悦汇购物中心 var addr : String?//地址详情 示例:深圳市-福田区-中康路126号 var city_id : Int?//地址所属城市ID var district_name : String?//地址所属区(县) 示例:福田区 var house_number : String?// 楼层及门牌号 示例:4楼403 var contact_name : String?//地址联系人 示例:roly var contact_phone_no : String?//地址联系人手机 示例:18825162021 var lat_lon_item : citySearchDataPoiLocationModel?//经纬度(wgs84坐标系) required init?( map: Map) { } func mapping(map: Map) { name <- map["name"] addr <- map["addr"] city_id <- map["city_id"] district_name <- map["district_name"] house_number <- map["house_number"] contact_name <- map["contact_name"] contact_phone_no <- map["contact_phone_no"] lat_lon_item <- map["lat_lon_item"] } } class poiDataModel: Mappable { var district: String? var location: String? var city_id: Int? var city: String? var address:String? var wgs84_location: String? var name: String? required init?(map: Map) { } // Mappable func mapping(map: Map) { name <- map["name"] district <- map["district"] wgs84_location <- map["wgs84_location"] address <- map["address"] city <- map["city"] district <- map["district"] location <- map["location"] } } class orderDetailItemOrderPriceArrDataModel: Mappable { //订单计价明细数组 var type : Int?// // 计价类型 1-起步价,2-超里程价,3-拉拉券扣减,4-额外需求产生的费用,5-小费,6-规格,7-平台订单补贴,8-司机添加的额外费用,15-货物保险费用,21-高速费,22-停车费,23-搬运费,24-其他,25-逾时等候费 var price_fen : Float?//费用金额(分) 示例:0 var pay_status : Int?//支付状态 1已支付, 0未支付 required init?( map: Map) { } func mapping(map: Map) { type <- map["type"] price_fen <- map["price_fen"] pay_status <- map["pay_status"] } }