GET | /v1/GetUserCurrentDataProcess |
---|
import Foundation
import ServiceStack
public class CurrentDataProcessRequest : IGet, Codable
{
required public init(){}
}
public class CurrentDataProcessResponse : DataProcessJob
{
public var type:Int
public var totalRecords:Int
public var originalFileName:String
public var dateStarted:String
public var dateFinished:String
public var dataProcessResultLogs:[DataProcessLog] = []
public var failedCount:Int
public var successCount:Int
required public init(){ super.init() }
private enum CodingKeys : String, CodingKey {
case type
case totalRecords
case originalFileName
case dateStarted
case dateFinished
case dataProcessResultLogs
case failedCount
case successCount
}
required public init(from decoder: Decoder) throws {
try super.init(from: decoder)
let container = try decoder.container(keyedBy: CodingKeys.self)
type = try container.decodeIfPresent(Int.self, forKey: .type)
totalRecords = try container.decodeIfPresent(Int.self, forKey: .totalRecords)
originalFileName = try container.decodeIfPresent(String.self, forKey: .originalFileName)
dateStarted = try container.decodeIfPresent(String.self, forKey: .dateStarted)
dateFinished = try container.decodeIfPresent(String.self, forKey: .dateFinished)
dataProcessResultLogs = try container.decodeIfPresent([DataProcessLog].self, forKey: .dataProcessResultLogs) ?? []
failedCount = try container.decodeIfPresent(Int.self, forKey: .failedCount)
successCount = try container.decodeIfPresent(Int.self, forKey: .successCount)
}
public override func encode(to encoder: Encoder) throws {
try super.encode(to: encoder)
var container = encoder.container(keyedBy: CodingKeys.self)
if type != nil { try container.encode(type, forKey: .type) }
if totalRecords != nil { try container.encode(totalRecords, forKey: .totalRecords) }
if originalFileName != nil { try container.encode(originalFileName, forKey: .originalFileName) }
if dateStarted != nil { try container.encode(dateStarted, forKey: .dateStarted) }
if dateFinished != nil { try container.encode(dateFinished, forKey: .dateFinished) }
if dataProcessResultLogs.count > 0 { try container.encode(dataProcessResultLogs, forKey: .dataProcessResultLogs) }
if failedCount != nil { try container.encode(failedCount, forKey: .failedCount) }
if successCount != nil { try container.encode(successCount, forKey: .successCount) }
}
}
public class DataProcessJob : Codable
{
public var id:Int
public var gasId:String
public var dateCreated:String
public var processedRecords:Int
public var status:Int
public var statusName:String
public var fileName:String
required public init(){}
}
public class DataProcessLog : Codable
{
public var id:Int
public var dataProcess_Id:Int
public var rowNumber:Int
public var failureReasonId:Int
public var failureReason:String
public var metaData:String
public var metaData2:String
public var hasFailed:Bool
required public init(){}
}
Swift CurrentDataProcessRequest DTOs
To override the Content-type in your clients, use the HTTP Accept Header, append the .json suffix or ?format=json
To embed the response in a jsonp callback, append ?callback=myCallback
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
GET /v1/GetUserCurrentDataProcess HTTP/1.1 Host: uat-api-vehicle-mgt-mb-dhc.rapp-customers.co.uk Accept: application/json
HTTP/1.1 200 OK Content-Type: application/json Content-Length: length {"type":0,"totalRecords":0,"originalFileName":"String","dateStarted":"String","dateFinished":"String","dataProcessResultLogs":[{"id":0,"dataProcess_Id":0,"rowNumber":0,"failureReasonId":0,"failureReason":"String","metaData":"String","metaData2":"String","hasFailed":false}],"failedCount":0,"successCount":0,"id":0,"gasId":"String","dateCreated":"String","processedRecords":0,"status":0,"statusName":"String","fileName":"String"}