VcListPerson.swift
3.32 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
import UIKit
import Foundation
import GeneralUtils
class VcListPerson: UIViewController, IVCLoadDataTableViewUIThread {
@IBOutlet weak var vTopLogo: VTopLogo!
@IBOutlet weak var tableView: UITableViewLoadDataFromUIThread!
@IBOutlet weak var tvMax: UILabel!
@IBOutlet weak var tvCurrent: UILabel!
@IBOutlet weak var tvRemaining: UILabel!
static func openController(_ viewController: UIViewController) {
let storyboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let vcOpen = storyboard.instantiateViewController(withIdentifier: "VcListPerson") as! VcListPerson
viewController.present(vcOpen, animated: true, completion: nil)
}
override func viewDidLoad() {
super.viewDidLoad()
vTopLogo.leftBtnClick = { self.dismiss(animated: true, completion: nil) }
tableView.emptyText = LocalizedString("list_empty")
tableView.initAndLoadData(self)
}
@IBAction func btnAddClick(_ sender: Any) {
VCAddPerson.openController(self, tableView: self.tableView)
}
func loadDataOnUI(complete: @escaping ([Any]?) -> ()) {
NetWorkUtils.excuteHttpGet(urlStr: Constants.PathManager.ROOT_SERVER + "api/worker/get_by_user_add/" + getIDWork(),
complete: { (response, errorText) in
guard let response = response else {
CommonUtils.excuteOnMainThread({
complete(nil)
})
return false;
}
let json = JSON.parse(response);
if let isSuccess = json["iSuccess"].bool, isSuccess{
let arrayValue = json["data"].arrayValue;
var listPerson = [Person]()
for item in arrayValue {
if let rawString = item.rawString(), let person = Mapper<Person>().map(JSONString: rawString) {
listPerson.append(person);
}
}
CommonUtils.excuteOnMainThread({
complete(listPerson)
})
return true;
} else {
CommonUtils.excuteOnMainThread({
complete(nil)
})
return false;
}
});
}
func jsonToString(_ json: Any?) -> String? {
do {
let data1 = try JSONSerialization.data(withJSONObject: json, options: JSONSerialization.WritingOptions.prettyPrinted) // first of all convert json to the data
let convertedString = String(data: data1, encoding: String.Encoding.utf8) // the data will be converted to the string
return convertedString;
} catch let myJSONError {
return nil;
}
}
func getAllCell() -> [BaseCell] {
var baseCells: [BaseCell] = [BaseCell]();
baseCells.append(BaseCell(type: 0, identifier: "CellPerson"))
return baseCells
}
func getTypeOfData(baseobj: Any) -> Int {
return 0
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
}
override var prefersStatusBarHidden: Bool {
return true
}
}