IbrahimHassan

TaskResponse

Nov 11th, 2019
122
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Swift 12.10 KB | None | 0 0
  1. //
  2. //  TaskModel.swift
  3. //  FBA
  4. //
  5. //  Created by Mitesh on 24/06/19.
  6. //  Copyright © 2019 ats. All rights reserved.
  7. //
  8.  
  9. import  ObjectMapper
  10.  
  11. class Tasks: Mappable {
  12.    
  13.     var data : [ActionsData]?
  14.     var status : Bool?
  15.     var message : String?
  16.    
  17.     required init?(map: Map) {
  18.     }
  19.    
  20.     func mapping(map: Map) {
  21.         data <- map["data"]
  22.         status <- map["status"]
  23.         message <- map["message"]
  24.     }
  25. }
  26.  
  27. class ActionsData : Mappable {
  28.    
  29.     var type : String?
  30.     var data : [TaskDetails]?
  31.    
  32.     required init?(map: Map){
  33.     }
  34.    
  35.     func mapping(map: Map) {
  36.         type <- map["type"]
  37.         data <- map["data"]
  38.     }
  39. }
  40.  
  41. class TaskDetails : Mappable
  42. {
  43.     var __v : Int?
  44.     var _id : String?
  45.     var created_at : String?
  46.     var end_date : String?
  47.     var is_full_day : Bool?
  48.     var start_date : String?
  49.     var task_status : TaskStatus? //
  50.     var title : String?
  51.     var updated_at : String?
  52.     var user : String?
  53.     var action_type: String?
  54.     var display_date: String?
  55.     var external_model: String?
  56.     var is_visible: Bool?
  57.     var payload: Payload?
  58.    
  59.     required init?(map: Map){
  60.     }
  61.    
  62.     func mapping(map: Map) {
  63.         __v <- map["__v"]
  64.         _id <- map["_id"]
  65.         created_at <- map["created_at"]
  66.         end_date <- map["end_date"]
  67.         is_full_day <- map["is_full_day"]
  68.         start_date <- map["start_date"]
  69.         task_status <- map["task_status"]
  70.         title <- map["title"]
  71.         updated_at <- map["updated_at"]
  72.         user <- map["user"]
  73.         action_type <- map["action_type"]
  74.         display_date <- map["display_date"]
  75.         external_model <- map["external_model"]
  76.         is_visible <- map["is_visible"]
  77.         payload <- map["payload"]
  78.     }
  79. }
  80.  
  81. class MomentsModel: Mappable {
  82.    
  83.     var status: Bool?
  84.     var data: [Moments]?
  85.     var message: String?
  86.     var previous_pending: Int?
  87.     var next_pending: Int?
  88.     var previous_date : String?
  89.     var next_date : String?
  90.    
  91.     required init?(map: Map) {
  92.        
  93.     }    
  94.    
  95.     func mapping(map: Map) {
  96.         status <- map["status"]
  97.         data <- map["data"]
  98.         message <- map["message"]
  99.        
  100.         previous_pending <- map["previous_pending"]
  101.         next_pending <- map["next_pending"]
  102.         previous_date <- map["previous_date"]
  103.         next_date <- map["next_date"]
  104.     }
  105.    
  106.     func nextPendingDate() -> Date? {
  107.         guard let dateStr = next_date else { return nil }
  108.         let dateFormatter = DateFormatter.init()
  109.         dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
  110.         let date = dateFormatter.date(from: dateStr)
  111.         return date
  112.     }
  113.    
  114.     func firstPendingDate() -> Date? {
  115.         guard let dateStr = previous_date else { return nil }
  116.         let dateFormatter = DateFormatter.init()
  117.         dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
  118.         let date = dateFormatter.date(from: dateStr)
  119.         return date
  120.     }
  121.    
  122. //    func getData() -> MyActionCellViewModel? {
  123. //        let dateFormatter = DateFormatter.init()
  124. //        dateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ss.SSS'Z'"
  125. //        dateFormatter.timeZone = TimeZone.init(secondsFromGMT: 0)
  126. //        if let startDate = start_date {
  127. //            let date = dateFormatter.date(from: startDate)
  128. //            myAction.startTime = date
  129. //        }
  130. //        if let endDate = end_date {
  131. //            let date = dateFormatter.date(from: endDate)
  132. //            myAction.endTime = date
  133. //        }
  134. //        return myAction
  135. //    }
  136. }
  137.  
  138. class Moments: Mappable {
  139.     var _id: String?
  140.     var payload: Payload?
  141.     var committee: String?
  142.     var display_date: String?
  143.     var last_pending_applicable: String?
  144.     var last_pending_date: String?
  145.     var tags: [String]?
  146.     var is_responded_to: Bool?
  147.     var is_visible: Bool?
  148.     var type: String?
  149.     var external_model: String?
  150.     var user: String?
  151.     var created_at: String?
  152.     var updated_at: String?
  153.    
  154.     required init?(map: Map) {
  155.        
  156.     }
  157.    
  158.     func mapping(map: Map) {
  159.         _id <- map["_id"]
  160.         payload <- map["payload"]
  161.         display_date <- map["display_date"]
  162.         last_pending_applicable <- map["last_pending_applicable"]
  163.         last_pending_date <- map["last_pending_date"]
  164.         tags <- map["tags"]
  165.         is_responded_to <- map["is_responded_to"]
  166.         is_visible <- map["is_visible"]
  167.         type <- map["type"]
  168.         external_model <- map["external_model"]
  169.         user <- map["user"]
  170.         created_at <- map["created_at"]
  171.         updated_at <- map["updated_at"]
  172.         type <- map["type"]
  173.         committee <- map["committee"]
  174.     }
  175. }
  176.  
  177. class Payload: Mappable {
  178.     var wizards : [WizardsData]?
  179.     var members : [ParticipantData]?
  180.     var is_published: Bool?
  181.     var admin: Bool?
  182.     var _id: String?
  183.     var categories : categories?
  184.     var purpose : String?
  185.     var title: String?
  186.     var user: String?
  187.     var created_at: String?
  188.     var updated_at: String?
  189.     var __v: String?
  190.     var chairman_role : String?
  191.     var secretary_role : String?
  192.     var appointment_of_members : String?
  193.     var chairman_rules : String?
  194.     var member_rules : String?
  195.     var removal_of_members : String?
  196.     var secretary_rules : String?
  197.     var attendance_quorum : attendance_quorum?
  198.     var resolution_quorum : resolution_quorum?
  199.     var meeting_frequency : String?
  200.     var meeting_notice : String?
  201.     var code_of_conduct : String?
  202.    
  203.     var meeting_progress: MeetingProgress?
  204.     var meeting_checklist: MeetingChecklist?
  205.     var meeting_status: String?
  206.     var committee : CommitteeData?
  207.     var start_date: String?
  208.     var end_date: String?
  209.     var frequency: String?
  210.     var is_full_day: Bool?
  211.     var occurrence: Int?
  212.     var venue: String?
  213.     var frequency_id: String?
  214.     var agendas: [Agenda]?
  215.     var deferred_agendas: [Agenda]?
  216.     var task_status : TaskStatus? //
  217.  
  218.  
  219.  
  220.     var description: String?
  221.     var icon: String?
  222.     var color: String?
  223.     var userCount: Int?
  224.     var draftsCount: Int?
  225.     var adminCount: Int?
  226.     var published : Int?
  227.     var is_consensus : Bool?
  228.     var is_voting : Bool?
  229.     var voting_rules : String?
  230.     var use_consensus : String?
  231.     var subcommittee : String?
  232.     var profile_photo : String?
  233.     var action_type: String?
  234.     var display_date: String?
  235.     var external_model: String?
  236.     var is_visible: Bool?
  237.    
  238.     func getNumberOfAgendas() -> Int? {
  239.         return self.agendas?.count
  240.     }
  241.    
  242. //    func getNumberOfPreReads() -> Int? {
  243. //        let preReads = agendas?.compactMap({$0}).filter({ (agenda) -> Bool in
  244. //            return agenda.pre_reads != nil
  245. //        })
  246. //        return preReads?.count
  247. //    }
  248.    
  249.     func getTimeForPersonalTask() -> String? {
  250.         if let startTime = start_date?.getTime() {
  251.             if let endTime = end_date?.getTime() {
  252.                 return startTime.dateStringForMoments("hh: mm a", date: endTime)
  253.             }
  254.         }
  255.         return nil
  256.     }
  257.  
  258.     func getDatetTime() -> String? {
  259.         if let startTime = start_date?.getTime() {
  260.             if let endTime = end_date?.getTime() {
  261.                 return startTime.dateStringForMoments(date: endTime)
  262.             }
  263.         }
  264.         return nil
  265.     }
  266.    
  267.     required init?(map: Map) {
  268.     }
  269.    
  270.     func getNumberOfPreReads() -> Int {
  271.         var numberOfPreReads = 0
  272.         if let agendas = agendas {
  273.             for i in agendas {
  274.                 if i.pre_reads != nil {
  275.                     numberOfPreReads += 1
  276.                 }
  277.             }
  278.         }
  279.         return numberOfPreReads
  280.     }
  281.    
  282.     func mapping(map: Map) {
  283.         wizards <- map["wizards"]
  284.         members <- map["members"]
  285.         is_published <- map["is_published"]
  286.         admin <- map["admin"]
  287.         _id <- map["_id"]
  288.         categories <- map["categories"]
  289.         purpose <- map["purpose"]
  290.         title <- map["title"]
  291.         user <- map["user"]
  292.         created_at <- map["created_at"]
  293.         updated_at <- map["updated_at"]
  294.         __v <- map["__v"]
  295.         chairman_role <- map["chairman_role"]
  296.         secretary_role <- map["secretary_role"]
  297.         appointment_of_members <- map["appointment_of_members"]
  298.         chairman_rules <- map["chairman_rules"]
  299.         member_rules <- map["member_rules"]
  300.         removal_of_members <- map["removal_of_members"]
  301.         secretary_rules <- map["secretary_rules"]
  302.         attendance_quorum <- map["attendance_quorum"]
  303.         resolution_quorum <- map["resolution_quorum"]
  304.         meeting_frequency <- map["meeting_frequency"]
  305.         meeting_notice <- map["meeting_notice"]
  306.         code_of_conduct <- map["code_of_conduct"]
  307.         meeting_progress <- map["meeting_progress"]
  308.         meeting_checklist <- map["meeting_checklist"]
  309.         meeting_status <- map["meeting_status"]
  310.         committee <- map["committee"]
  311.         end_date <- map["end_date"]
  312.         frequency <- map["frequency"]
  313.         is_full_day <- map["is_full_day"]
  314.         occurrence <- map["occurrence"]
  315.         start_date <- map["start_date"]
  316.         venue <- map["venue"]
  317.         frequency_id <- map["frequency_id"]
  318.         agendas <- map["agendas"]
  319.         deferred_agendas <- map["deferred_agendas"]
  320.        
  321.  
  322.         display_date <- map["display_date"]
  323.         external_model <- map["external_model"]
  324.         is_visible <- map["is_visible"]
  325.         action_type <- map["action_type"]
  326.         description <- map["description"]
  327.         icon <- map["icon"]
  328.         color <- map["color"]
  329.         userCount <- map["userCount"]
  330.         draftsCount <- map["draftsCount"]
  331.         adminCount <- map["adminCount"]
  332.         published <- map["published"]
  333.         is_consensus <- map["is_consensus"]
  334.         is_voting <- map["is_voting"]
  335.         voting_rules <- map["voting_rules"]
  336.         use_consensus <- map["use_consensus"]
  337.         subcommittee <- map["subcommittee"]
  338.         profile_photo <- map["profile_photo"]
  339.        
  340.         task_status <- map["task_status"]
  341.     }
  342. }
  343.  
  344.  
  345. class MeetingProgress: Mappable {
  346.    
  347.     var agenda_published: Bool?
  348.     var agenda_rationalize: Bool?
  349.     var mom_update: Bool?
  350.     var mom_approved: Bool?
  351.    
  352.     required init?(map: Map) {
  353.     }
  354.    
  355.     func mapping(map: Map) {
  356.         agenda_published <- map["agenda_published"]
  357.         agenda_rationalize <- map["agenda_rationalize"]
  358.         mom_update <- map["mom_update"]
  359.         mom_approved <- map["mom_approved"]
  360.     }
  361.    
  362. }
  363.  
  364. class Agenda: Mappable {
  365.    
  366.     var _id: String?
  367.     var comments: [Comment]?
  368.     var title: String?
  369.     var description: String?
  370.     var pre_reads: String?
  371.    
  372.     required init?(map: Map) {
  373.     }
  374.    
  375.     func mapping(map: Map) {
  376.         _id <- map["_id"]
  377.         comments <- map["comments"]
  378.         title <- map["title"]
  379.         description <- map["description"]
  380.         pre_reads <- map["pre_reads"]
  381.     }
  382. }
  383.  
  384. class Comment: Mappable {
  385.    
  386.     var _id: String?
  387.     required init?(map: Map) {
  388.     }
  389.    
  390.     func mapping(map: Map) {
  391.         _id <- map["_id"]
  392.     }
  393. }
  394.  
  395. class MeetingChecklist: Mappable {
  396.    
  397.     var mark_attendance: Bool?
  398.     var add_resolution: Bool?
  399.     var update_mom: Bool?
  400.    
  401.     required init?(map: Map) {
  402.     }
  403.    
  404.     func mapping(map: Map) {
  405.         mark_attendance <- map["mark_attendance"]
  406.         add_resolution <- map["add_resolution"]
  407.         update_mom <- map["update_mom"]
  408.     }
  409. }
  410.  
  411. class SingleTask : Mappable
  412. {
  413.     var data : TaskDetails?
  414.     var status : Bool?
  415.     var message : String?
  416.    
  417.    
  418.     required init?(map: Map) {
  419.        
  420.     }
  421.     func mapping(map: Map) {
  422.         data <- map["data"]
  423.         status <- map["status"]
  424.         message <- map["message"]
  425.        
  426.     }
  427. }
  428.  
  429.  
  430. class TaskStatus: Mappable {
  431.    
  432.     var completed : Bool?
  433.     var expired : Bool?
  434.     var not_started : Bool?
  435.     var on_going : Bool?
  436.    
  437.     required init?(map: Map){
  438.     }
  439.    
  440.     func mapping(map: Map) {
  441.         completed <- map["completed"]
  442.         expired <- map["expired"]
  443.         not_started <- map["not_started"]
  444.         on_going <- map["on_going"]
  445.     }
  446. }
Add Comment
Please, Sign In to add comment