/* Options: Date: 2024-10-18 04:37:51 SwiftVersion: 5.0 Version: 6.40 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://digiofficeapigateway.deltares.nl/api //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: GetWorkflowTaskActionDetails.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack public class GetWorkflowTaskActionDetails : IReturn, Codable { public typealias Return = WorkflowTaskActionDetails public var connectionID:String? public var taskID:Int? required public init(){} } public class WorkflowTaskActionDetails : AdhocTransitionDetails { public var title:String? public var comment:WorkflowTaskActionComment? public var reason:WorkflowTaskReason? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case title case comment case reason } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) title = try container.decodeIfPresent(String.self, forKey: .title) comment = try container.decodeIfPresent(WorkflowTaskActionComment.self, forKey: .comment) reason = try container.decodeIfPresent(WorkflowTaskReason.self, forKey: .reason) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if title != nil { try container.encode(title, forKey: .title) } if comment != nil { try container.encode(comment, forKey: .comment) } if reason != nil { try container.encode(reason, forKey: .reason) } } } public class User : UserOrGroup { public var image:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case image } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) image = try container.decodeIfPresent(String.self, forKey: .image) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if image != nil { try container.encode(image, forKey: .image) } } } public class WorkflowTaskActionComment : Codable { public var comment:String? public var required:Bool? required public init(){} } public class WorkflowTaskAdhocTransition : Codable { public var id:String? public var title:String? public var assignmentAllowed:Bool? public var assignmentRequired:Bool? public var userEnvironment:Int? public var users:[User] = [] public var groups:[Group] = [] public var delay:WorkflowTaskDelay? public var reason:WorkflowTaskReason? public var usersOrGroups:[UserOrGroup] = [] public var value:String? required public init(){} } public class WorkflowTaskReason : Codable { public var reason:String? public var required:Bool? required public init(){} } public class AdhocTransitionDetails : Codable { public var adhocTransitions:[WorkflowTaskAdhocTransition] = [] required public init(){} } public class UserOrGroup : Codable { public var id:Int? public var title:String? public var isChecked:Bool? public var image:String? required public init(){} } public class Group : UserOrGroup { public var image:String? required public init(){ super.init() } private enum CodingKeys : String, CodingKey { case image } required public init(from decoder: Decoder) throws { try super.init(from: decoder) let container = try decoder.container(keyedBy: CodingKeys.self) image = try container.decodeIfPresent(String.self, forKey: .image) } public override func encode(to encoder: Encoder) throws { try super.encode(to: encoder) var container = encoder.container(keyedBy: CodingKeys.self) if image != nil { try container.encode(image, forKey: .image) } } } public class WorkflowTaskDelay : Codable { public var delayDate:Date? public var reason:String? required public init(){} }