Commit 45213823 authored by ljh's avatar ljh

更换工作中心的存储方式

parent 5d2fd070
...@@ -10,7 +10,7 @@ import Foundation ...@@ -10,7 +10,7 @@ import Foundation
import Alamofire import Alamofire
import SwiftyJSON import SwiftyJSON
import ObjectMapper import ObjectMapper
import RealmSwift
import UIKit import UIKit
private let NetworkRequestShareInstance = NetworkRequest() private let NetworkRequestShareInstance = NetworkRequest()
...@@ -126,10 +126,8 @@ extension NetworkRequest { ...@@ -126,10 +126,8 @@ extension NetworkRequest {
HUD.flash(.label(json["message"].stringValue), delay: 1.5) HUD.flash(.label(json["message"].stringValue), delay: 1.5)
failture(DogError.DataInvalidError) failture(DogError.DataInvalidError)
delay(1.5) { delay(1.5) {
let realm = try! Realm() UserDefaults.standard.removeObject(forKey: "WorkDataModel")
try! realm.write {
realm.deleteAll()
}
UserDefaults.standard.removeObject(forKey: "user_token") UserDefaults.standard.removeObject(forKey: "user_token")
NotificationCenter.default.post(name: Notification.Name(rawValue: "logout"), object: nil) NotificationCenter.default.post(name: Notification.Name(rawValue: "logout"), object: nil)
JPUSHService.deleteAlias({ (resCode, alias, num) in JPUSHService.deleteAlias({ (resCode, alias, num) in
......
...@@ -7,7 +7,6 @@ ...@@ -7,7 +7,6 @@
// //
import UIKit import UIKit
import RealmSwift
import IQKeyboardManagerSwift import IQKeyboardManagerSwift
import SwiftDate import SwiftDate
...@@ -156,7 +155,6 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD ...@@ -156,7 +155,6 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
var endTime = Date() var endTime = Date()
var starTime = DateInRegion().dateAt(.startOfDay).date var starTime = DateInRegion().dateAt(.startOfDay).date
let realm = try! Realm()
var dataModel:WorkcenterIndexDataModel? = nil var dataModel:WorkcenterIndexDataModel? = nil
var oftenArr:Array<WorkcenterIndexAuthResModel>? = [] var oftenArr:Array<WorkcenterIndexAuthResModel>? = []
//MARK:--加载数据 //MARK:--加载数据
...@@ -174,11 +172,11 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD ...@@ -174,11 +172,11 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
if dataM.code == 1 { if dataM.code == 1 {
self.dataModel = dataM.data self.dataModel = dataM.data
//查询常用的 //查询常用的
let items = self.realm.objects(WorkDataModel.self) let userdataStr = UserDefaults.standard.value(forKey: "WorkDataModel")
if items.count > 0 { if userdataStr != nil {
print("有数据哦--") print("有数据哦--")
let workTestMd:WorkDataModel = items[0]; let workTestMd = WorkDataModel(JSONString: userdataStr as! String)
let oftenStr = workTestMd.oftenArrStr let oftenStr = workTestMd!.oftenArrStr
if oftenStr.count > 0 { if oftenStr.count > 0 {
//经过对比需要删除剩哪一些 //经过对比需要删除剩哪一些
let oldOftenArr = Array<WorkcenterIndexAuthResModel>(JSONString: oftenStr) let oldOftenArr = Array<WorkcenterIndexAuthResModel>(JSONString: oftenStr)
...@@ -211,15 +209,9 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD ...@@ -211,15 +209,9 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
saveModel.end_time = end_time saveModel.end_time = end_time
saveModel.oftenArrStr = oftenStr! saveModel.oftenArrStr = oftenStr!
// 数据持久化操作--(退出登录的话,或者token异常那里,全部要删除) // 数据持久化操作--(退出登录的话,或者token异常那里,全部要删除)
try! self.realm.write { let userDataStr = saveModel.toJSONString()
self.realm.deleteAll() UserDefaults.standard.set(userDataStr, forKey: "WorkDataModel")
} UserDefaults.standard.synchronize()
//成功插入
try! self.realm.write {
self.realm.add(saveModel)
}
//打印出数据库地址
print(self.realm.configuration.fileURL ?? "")
self.tableV.reloadData() self.tableV.reloadData()
} }
...@@ -519,27 +511,26 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD ...@@ -519,27 +511,26 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
//MARK:--编辑页面保存回调(主要增加使用体验)不应网络请求出差而无法改变 //MARK:--编辑页面保存回调(主要增加使用体验)不应网络请求出差而无法改变
func updataUIbyEditWorkSave() { func updataUIbyEditWorkSave() {
//查询所有记录
let items = realm.objects(WorkDataModel.self) let userdataStr = UserDefaults.standard.value(forKey: "WorkDataModel")
// 已经有记录的话就不插入了 if userdataStr != nil {
if items.count > 0 {
print("有数据哦--") print("有数据哦--")
let workTestMd:WorkDataModel = items[0]; let workTestMd = WorkDataModel(JSONString: userdataStr as! String)
let dataModelStr = workTestMd.dataModelStr let dataModelStr = workTestMd?.dataModelStr
self.dataModel = WorkcenterIndexDataModel(JSONString: dataModelStr) self.dataModel = WorkcenterIndexDataModel(JSONString: dataModelStr!)
//旧的常用功能 //旧的常用功能
let oftenStr = workTestMd.oftenArrStr let oftenStr = workTestMd?.oftenArrStr
if oftenStr.count > 0 { if oftenStr!.count > 0 {
self.oftenArr?.removeAll() self.oftenArr?.removeAll()
self.oftenArr = Array<WorkcenterIndexAuthResModel>(JSONString: oftenStr) self.oftenArr = Array<WorkcenterIndexAuthResModel>(JSONString: oftenStr!)
} }
self.tableV.reloadData() self.tableV.reloadData()
}else{ }else{
print("没有数据hehe--") print("没有数据hehe--")
} }
} }
} }
...@@ -7,16 +7,29 @@ ...@@ -7,16 +7,29 @@
// //
import Foundation import Foundation
import RealmSwift import ObjectMapper
//工作中心 //工作中心
class WorkDataModel:Object { class WorkDataModel:Mappable {
//类型名 //类型名
@objc dynamic var dataModelStr = "" var dataModelStr:String = ""
@objc dynamic var star_time = 0 var star_time = 0
@objc dynamic var end_time = 0 var end_time = 0
@objc dynamic var oftenArrStr = "" var oftenArrStr = ""
init(){
}
required init?(map: Map) {
}
// Mappable
func mapping(map: Map) {
dataModelStr <- map["dataModelStr"]
star_time <- map["star_time"]
end_time <- map["end_time"]
oftenArrStr <- map["oftenArrStr"]
}
} }
...@@ -7,7 +7,6 @@ ...@@ -7,7 +7,6 @@
// //
import UIKit import UIKit
import RealmSwift
protocol EditWorkCViewControllerDelegate { protocol EditWorkCViewControllerDelegate {
func updataUIbyEditWorkSave() func updataUIbyEditWorkSave()
...@@ -21,7 +20,6 @@ class EditWorkCViewController: BaseViewController, UICollectionViewDelegate, UIC ...@@ -21,7 +20,6 @@ class EditWorkCViewController: BaseViewController, UICollectionViewDelegate, UIC
//MARK:--一级分类 //MARK:--一级分类
var titleStrArr:[String] = [] var titleStrArr:[String] = []
var pAuthResModelArr:[WorkcenterIndexAuthResModel] = [] var pAuthResModelArr:[WorkcenterIndexAuthResModel] = []
let realm = try! Realm()//数据库
@IBOutlet weak var topLayou: NSLayoutConstraint! @IBOutlet weak var topLayou: NSLayoutConstraint!
@IBOutlet weak var itemListCollectionView: UICollectionView! @IBOutlet weak var itemListCollectionView: UICollectionView!
...@@ -90,14 +88,15 @@ class EditWorkCViewController: BaseViewController, UICollectionViewDelegate, UIC ...@@ -90,14 +88,15 @@ class EditWorkCViewController: BaseViewController, UICollectionViewDelegate, UIC
} }
func sureGeliAlertViewAction(sender: UIButton) { func sureGeliAlertViewAction(sender: UIButton) {
if sender.tag == 1001 { if sender.tag == 1001 {
let items = self.realm.objects(WorkDataModel.self) let userdataStr = UserDefaults.standard.value(forKey: "WorkDataModel")
if items.count > 0 { if userdataStr != nil {
let workTestMd:WorkDataModel = items[0]; let workTestMd = WorkDataModel(JSONString: userdataStr as! String)
// 在一个事务中更新对象 // 在一个事务中更新对象
let oftenStr = self.oftenArr?.toJSONString() let oftenStr = self.oftenArr?.toJSONString()
try! realm.write { workTestMd!.oftenArrStr = oftenStr!
workTestMd.oftenArrStr = oftenStr! let userDataStr = workTestMd!.toJSONString()
} UserDefaults.standard.set(userDataStr, forKey: "WorkDataModel")
UserDefaults.standard.synchronize()
HUD.flash(.label("保存成功"), onView: nil, delay: 1.2) { (istrue) in HUD.flash(.label("保存成功"), onView: nil, delay: 1.2) { (istrue) in
self.delegate?.updataUIbyEditWorkSave() self.delegate?.updataUIbyEditWorkSave()
self.navigationController?.popViewController(animated: true) self.navigationController?.popViewController(animated: true)
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
// //
import UIKit import UIKit
import RealmSwift
class AccountViewController: BaseViewController{ class AccountViewController: BaseViewController{
@IBOutlet weak var phoneLbl: UILabel! @IBOutlet weak var phoneLbl: UILabel!
...@@ -52,10 +52,7 @@ class AccountViewController: BaseViewController{ ...@@ -52,10 +52,7 @@ class AccountViewController: BaseViewController{
@IBAction func logOutAction(_ sender: Any) { @IBAction func logOutAction(_ sender: Any) {
print("退出登录") print("退出登录")
//模拟退出登录 //模拟退出登录
let realm = try! Realm() UserDefaults.standard.removeObject(forKey: "WorkDataModel")
try! realm.write {
realm.deleteAll()
}
UserDefaults.standard.removeObject(forKey: "user_token") UserDefaults.standard.removeObject(forKey: "user_token")
NotificationCenter.default.post(name: Notification.Name(rawValue: "logout"), object: nil) NotificationCenter.default.post(name: Notification.Name(rawValue: "logout"), object: nil)
JPUSHService.deleteAlias({ (resCode, alias, num) in JPUSHService.deleteAlias({ (resCode, alias, num) in
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment