| 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 .xml suffix or ?format=xml
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/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<CurrentDataProcessResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Mercedes.OS.Vehicle.Shared.POCO">
<DateCreated>String</DateCreated>
<FileName>String</FileName>
<GasId>String</GasId>
<Id>0</Id>
<ProcessedRecords>0</ProcessedRecords>
<Status>0</Status>
<StatusName>String</StatusName>
<DataProcessResultLogs>
<DataProcessLog>
<DataProcess_Id>0</DataProcess_Id>
<FailureReason>String</FailureReason>
<FailureReasonId>0</FailureReasonId>
<HasFailed>false</HasFailed>
<Id>0</Id>
<MetaData>String</MetaData>
<MetaData2>String</MetaData2>
<RowNumber>0</RowNumber>
</DataProcessLog>
</DataProcessResultLogs>
<DateFinished>String</DateFinished>
<DateStarted>String</DateStarted>
<FailedCount>0</FailedCount>
<OriginalFileName>String</OriginalFileName>
<SuccessCount>0</SuccessCount>
<TotalRecords>0</TotalRecords>
<Type>0</Type>
</CurrentDataProcessResponse>