TodoTask.swift 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295
  1. //
  2. // TodoTask.swift
  3. // O2Platform
  4. //
  5. // Created by 刘振兴 on 16/7/27.
  6. // Copyright © 2016年 zoneland. All rights reserved.
  7. //
  8. import Foundation
  9. import ObjectMapper
  10. import HandyJSON
  11. struct PageSize{
  12. var id:String="0"
  13. var count:String = "20"
  14. init(){
  15. }
  16. init(id:String,count:String){
  17. self.id = id
  18. self.count = count
  19. }
  20. mutating func nextPage(_ id:String,count:String="20"){
  21. self.id = id
  22. self.count = count
  23. }
  24. func toDictionary()->Dictionary<String,String>{
  25. return ["##id##":self.id,"##count##":self.count]
  26. }
  27. }
  28. class WorkControl: NSObject, Mappable {
  29. var allowVisit:Bool?
  30. var allowProcessing:Bool?
  31. var allowReadProcessing:Bool?
  32. var allowSave:Bool?
  33. var allowRetract:Bool?
  34. var allowDelete:Bool?
  35. private override init(){}
  36. required init?(map: Map) {
  37. }
  38. func mapping(map: Map) {
  39. allowVisit <- map["allowVisit"]
  40. allowProcessing <- map["allowProcessing"]
  41. allowReadProcessing <- map["allowReadProcessing"]
  42. allowSave <- map["allowSave"]
  43. allowRetract <- map["allowRetract"]
  44. allowDelete <- map["allowDelete"]
  45. }
  46. }
  47. class TodoTask:NSObject,Mappable {
  48. var id:String?
  49. var updateTime:String?
  50. var job:String?
  51. var title:String?
  52. var startTime:String?
  53. var work:String?
  54. var application:String?
  55. var applicationName:String?
  56. var process:String?
  57. var processName:String?
  58. var person:String?
  59. var identity:String?
  60. var department:String?
  61. var completed:Bool?
  62. var workCompleted:String?
  63. var company:String?
  64. var activity:String?
  65. var activityName:String?
  66. var activityType:String?
  67. var activityToken:String?
  68. var routeList:String?
  69. var routeNameList:String?
  70. private override init(){}
  71. required init?(map: Map) {
  72. }
  73. func mapping(map: Map) {
  74. id <- map["id"]
  75. updateTime <- map["updateTime"]
  76. job <- map["job"]
  77. title <- map["title"]
  78. startTime <- map["startTime"]
  79. work <- map["work"]
  80. application <- map["application"]
  81. applicationName <- map["applicationName"]
  82. process <- map["process"]
  83. processName <- map["processName"]
  84. person <- map["person"]
  85. identity <- map["identity"]
  86. department <- map["department"]
  87. completed <- map["completed"]
  88. workCompleted <- map["workCompleted"]
  89. company <- map["company"]
  90. activity <- map["activity"]
  91. activityName <- map["activityName"]
  92. activityType <- map["activityType"]
  93. activityToken <- map["activityToken"]
  94. routeList <- map["routeList"]
  95. routeNameList <- map["routeNameList"]
  96. }
  97. override var description: String {
  98. return "task:[\(id),\(title),\(job),\(work)]"
  99. }
  100. }
  101. /// 具体任务
  102. class Process:NSObject,Mappable{
  103. var id:String?
  104. var identity:String?
  105. var allowRapid:Bool?
  106. var company:String?
  107. var work:String?
  108. var startTimeMonth:String?
  109. var createTime:String?
  110. var person:String?
  111. var routeList:[String]?
  112. var routeNameList:[String]?
  113. var department:String?
  114. var startTime:String?
  115. var updateTime:String?
  116. required init?(map: Map) {
  117. }
  118. private override init(){}
  119. func mapping(map: Map) {
  120. id <- map["id"]
  121. identity <- map["identity"]
  122. allowRapid <- map["allowRapid"]
  123. company <- map["company"]
  124. work <- map["work"]
  125. startTimeMonth <- map["startTimeMonth"]
  126. createTime <- map["createTime"]
  127. person <- map["person"]
  128. routeList <- map["routeList"]
  129. routeNameList <- map["routeNameList"]
  130. department <- map["department"]
  131. startTime <- map["startTime"]
  132. updateTime <- map["updateTime"]
  133. }
  134. }
  135. /// 活动任务
  136. class ActivityTask:NSObject,Mappable {
  137. var fromActivity:String?
  138. var fromActivityName:String?
  139. var fromActivityToken:String?
  140. var fromActivityType:String?
  141. var fromTime:String?
  142. var arrivedActivity:String?
  143. var arrivedActivityName:String?
  144. var arrivedActivityToken:String?
  145. var arrivedActivityType:String?
  146. var route:String?
  147. var routeName:String?
  148. var arrivedTime:String?
  149. var completed:Bool?
  150. var connected:Bool?
  151. var duration:Int64?
  152. var createTime:String?
  153. var currentTaskIndex:Int?
  154. var id:String?
  155. var splitTokenList:[AnyObject]?
  156. var splitting:Int?
  157. var taskCompletedList:[AnyObject]?
  158. var taskList:[Process]?
  159. var updateTime:String?
  160. required init?(map: Map) {
  161. }
  162. private override init(){}
  163. func mapping(map: Map) {
  164. fromActivity <- map["fromActivity"]
  165. fromActivityName <- map["fromActivityName"]
  166. fromActivityToken <- map["fromActivityToken"]
  167. fromActivityType <- map["fromActivityType"]
  168. fromTime <- map["fromTime"]
  169. arrivedActivity <- map["arrivedActivity"]
  170. arrivedActivityName <- map["arrivedActivityName"]
  171. arrivedActivityToken <- map["arrivedActivityToken"]
  172. arrivedActivityType <- map["arrivedActivityType"]
  173. route <- map["route"]
  174. routeName <- map["routeName"]
  175. arrivedTime <- map["arrivedTime"]
  176. completed <- map["completed"]
  177. connected <- map["connected"]
  178. duration <- map["duration"]
  179. createTime <- map["createTime"]
  180. currentTaskIndex <- map["currentTaskIndex"]
  181. id <- map["id"]
  182. splitTokenList <- map["splitTokenList"]
  183. splitting <- map["splitting"]
  184. taskCompletedList <- map["taskCompletedList"]
  185. taskList <- map["taskList"]
  186. updateTime <- map["updateTime"]
  187. }
  188. }
  189. /**
  190. * todoTaskCell数据模型
  191. */
  192. struct TodoCellModel<T> {
  193. var title:String?
  194. var applicationName:String?
  195. var status:String?
  196. var time:String?
  197. var sourceObj:T?
  198. }
  199. struct TaskProcess {
  200. var taskDict:[String:AnyObject]?
  201. var workDict:[String:AnyObject]?
  202. var businessDataDict:[String:AnyObject]?
  203. var taskId:String?
  204. var workId:String?
  205. var processData:String?
  206. var decisonList:[String]?
  207. var decisionRoute:String?
  208. var decisionIdea:String?
  209. var opinion: String?
  210. init(){
  211. }
  212. }
  213. /**
  214. * 已办列表打开模型
  215. */
  216. class TodoedActionModel {
  217. // @property (nonatomic,copy) NSString *destText;
  218. // @property (nonatomic,copy) NSString *workType;
  219. // @property (nonatomic,copy) NSString *work_id;
  220. var destText:String?
  221. var workType:String?
  222. var workId:String?
  223. init(destText:String?,workType:String?,workId:String?){
  224. self.destText = destText
  225. self.workType = workType
  226. self.workId = workId
  227. }
  228. }
  229. /**
  230. * 处理过程日志显示模型
  231. */
  232. struct TodoedStatusModel {
  233. var activity:String?
  234. var identity:String?
  235. var status:String?
  236. var statusTime:String?
  237. }
  238. /**
  239. * 新版工作界面的底部操作按钮对象
  240. */
  241. struct WorkNewActionItem: HandyJSON{
  242. var id: String = ""
  243. var text: String = ""
  244. var action: String = "" //工作默认操作函数名称
  245. var control: String = "" // 工作默认操作类型
  246. var actionScript: String = "" //其他操作执行代码
  247. var title: String = ""
  248. var read: Bool = true
  249. }