Commit 45213823 authored by ljh's avatar ljh

更换工作中心的存储方式

parent 5d2fd070
......@@ -10,7 +10,7 @@ import Foundation
import Alamofire
import SwiftyJSON
import ObjectMapper
import RealmSwift
import UIKit
private let NetworkRequestShareInstance = NetworkRequest()
......@@ -126,10 +126,8 @@ extension NetworkRequest {
HUD.flash(.label(json["message"].stringValue), delay: 1.5)
failture(DogError.DataInvalidError)
delay(1.5) {
let realm = try! Realm()
try! realm.write {
realm.deleteAll()
}
UserDefaults.standard.removeObject(forKey: "WorkDataModel")
UserDefaults.standard.removeObject(forKey: "user_token")
NotificationCenter.default.post(name: Notification.Name(rawValue: "logout"), object: nil)
JPUSHService.deleteAlias({ (resCode, alias, num) in
......
......@@ -7,7 +7,6 @@
//
import UIKit
import RealmSwift
import IQKeyboardManagerSwift
import SwiftDate
......@@ -60,7 +59,7 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
})
}
browser.show()
}
//MARK:--头部按钮方法
let selectV = WorkSelectTimeView()
......@@ -110,14 +109,14 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
case 1004:
if beginDate != nil && endginDate != nil {
let timeInterval:TimeInterval = beginDate!.timeIntervalSince1970
let timeIntervalEnd:TimeInterval = endginDate!.timeIntervalSince1970
let timestr = dayByDouble(sender: timeInterval) + "-" + dayByDouble(sender: timeIntervalEnd)
topNavBtn.setTitle(timestr, for: .normal)
endTime = endginDate!
starTime = beginDate!
loadData()
let timeIntervalEnd:TimeInterval = endginDate!.timeIntervalSince1970
let timestr = dayByDouble(sender: timeInterval) + "-" + dayByDouble(sender: timeIntervalEnd)
topNavBtn.setTitle(timestr, for: .normal)
endTime = endginDate!
starTime = beginDate!
loadData()
}
break
default:
break
......@@ -156,7 +155,6 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
var endTime = Date()
var starTime = DateInRegion().dateAt(.startOfDay).date
let realm = try! Realm()
var dataModel:WorkcenterIndexDataModel? = nil
var oftenArr:Array<WorkcenterIndexAuthResModel>? = []
//MARK:--加载数据
......@@ -174,11 +172,11 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
if dataM.code == 1 {
self.dataModel = dataM.data
//查询常用的
let items = self.realm.objects(WorkDataModel.self)
if items.count > 0 {
let userdataStr = UserDefaults.standard.value(forKey: "WorkDataModel")
if userdataStr != nil {
print("有数据哦--")
let workTestMd:WorkDataModel = items[0];
let oftenStr = workTestMd.oftenArrStr
let workTestMd = WorkDataModel(JSONString: userdataStr as! String)
let oftenStr = workTestMd!.oftenArrStr
if oftenStr.count > 0 {
//经过对比需要删除剩哪一些
let oldOftenArr = Array<WorkcenterIndexAuthResModel>(JSONString: oftenStr)
......@@ -211,15 +209,9 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
saveModel.end_time = end_time
saveModel.oftenArrStr = oftenStr!
// 数据持久化操作--(退出登录的话,或者token异常那里,全部要删除)
try! self.realm.write {
self.realm.deleteAll()
}
//成功插入
try! self.realm.write {
self.realm.add(saveModel)
}
//打印出数据库地址
print(self.realm.configuration.fileURL ?? "")
let userDataStr = saveModel.toJSONString()
UserDefaults.standard.set(userDataStr, forKey: "WorkDataModel")
UserDefaults.standard.synchronize()
self.tableV.reloadData()
}
......@@ -323,7 +315,7 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
return tableV.rowHeight
}
//MARK: - diy cell delegate
......@@ -339,13 +331,13 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
//未发货订单
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "changgeTabItem"), object: nil, userInfo: ["tag":0])
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "orderNavChange"), object: nil, userInfo: ["tag":3])
return
case 1:
//待确认订单
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "changgeTabItem"), object: nil, userInfo: ["tag":0])
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "orderNavChange"), object: nil, userInfo: ["tag":1])
return
case 2:
//入库申请
......@@ -364,182 +356,181 @@ class WorkCViewController: BaseViewController, UITableViewDelegate, UITableViewD
default:
break
}
}
//MARK:--item相关跳转
func getTheWorkVcByAuthId(auth_id:Int){
switch auth_id {
case 47: //订单列表
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "changgeTabItem"), object: nil, userInfo: ["tag":0])
return
case 48: //销售统计
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 50: //商品列表
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "changgeTabItem"), object: nil, userInfo: ["tag":1])
return
case 51: //品牌列表
let vc = PinPaiListViewController()
self.navigationController?.pushViewController(vc, animated: true)
return
case 53: //销售下单-代客下单
let vc = DaiKeXiaDanGouWuViewController()
self.navigationController?.pushViewController(vc, animated: true)
return
case 54: //扫码下单
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 55: //预售下单
let vc = DaiKeXiaDanGouWuViewController()
vc.orderType = 1
self.navigationController?.pushViewController(vc, animated: true)
return
case 57: //商家信息
let vc = ShopInfoViewController()
self.navigationController?.pushViewController(vc, animated: true)
return
case 58: //支付账号==格利支付
let vc = PayViewController()
self.navigationController?.pushViewController(vc, animated: true)
return
case 59: //地址管理
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 61: //库存商品
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 62: //出入库记录
let vc = CRKListVC()
self.navigationController?.pushViewController(vc, animated: true)
return
case 63: //入库--直接入库
let vc = NewRKVc()
self.navigationController?.pushViewController(vc, animated: true)
return
case 64: //出库--直接出库
let vc = NewCKVc()
self.navigationController?.pushViewController(vc, animated: true)
return
case 65: //申请入库
let vc = NewRKVc()
self.navigationController?.pushViewController(vc, animated: true)
return
case 66: //申请出库
let vc = NewCKVc()
self.navigationController?.pushViewController(vc, animated: true)
return
case 67: //仓库管理
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "changgeTabItem"), object: nil, userInfo: ["tag":3])
return
case 69: //主营收入
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 70: //其他收入
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 71: //费用支出
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 72: //样品福利
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 73: //主营成本
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 74: //现金记账
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 75: //收支统计
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 76: //收支详情
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 77: //应收账款
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 78: //应付账款
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 80: //客户列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 82: //账期用户列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 83: //用户账期申请列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 84: //账期设置
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 86: //档口列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 88: //运单列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 89: //物流公司列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 90: //下运单
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 92: //采购订单管理
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 93: //供应商管理
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 113: //管理员列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 115: //角色列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 116: //字段列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 118: //新增商品
let vc = ProductDetailViewController()
self.navigationController?.pushViewController(vc, animated: true)
return
case 119: //新增采购单
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 120: //商品毛利统计
HUD.flash(.label("敬请期待"),delay: 1.2)
return
default:
break;
}
HUD.flash(.label("敬请期待"),delay: 1.2)
return
}
func getTheWorkVcByAuthId(auth_id:Int){
switch auth_id {
case 47: //订单列表
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "changgeTabItem"), object: nil, userInfo: ["tag":0])
return
case 48: //销售统计
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 50: //商品列表
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "changgeTabItem"), object: nil, userInfo: ["tag":1])
return
case 51: //品牌列表
let vc = PinPaiListViewController()
self.navigationController?.pushViewController(vc, animated: true)
return
case 53: //销售下单-代客下单
let vc = DaiKeXiaDanGouWuViewController()
self.navigationController?.pushViewController(vc, animated: true)
return
case 54: //扫码下单
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 55: //预售下单
let vc = DaiKeXiaDanGouWuViewController()
vc.orderType = 1
self.navigationController?.pushViewController(vc, animated: true)
return
case 57: //商家信息
let vc = ShopInfoViewController()
self.navigationController?.pushViewController(vc, animated: true)
return
case 58: //支付账号==格利支付
let vc = PayViewController()
self.navigationController?.pushViewController(vc, animated: true)
return
case 59: //地址管理
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 61: //库存商品
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 62: //出入库记录
let vc = CRKListVC()
self.navigationController?.pushViewController(vc, animated: true)
return
case 63: //入库--直接入库
let vc = NewRKVc()
self.navigationController?.pushViewController(vc, animated: true)
return
case 64: //出库--直接出库
let vc = NewCKVc()
self.navigationController?.pushViewController(vc, animated: true)
return
case 65: //申请入库
let vc = NewRKVc()
self.navigationController?.pushViewController(vc, animated: true)
return
case 66: //申请出库
let vc = NewCKVc()
self.navigationController?.pushViewController(vc, animated: true)
return
case 67: //仓库管理
NotificationCenter.default.post(name: NSNotification.Name(rawValue: "changgeTabItem"), object: nil, userInfo: ["tag":3])
return
case 69: //主营收入
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 70: //其他收入
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 71: //费用支出
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 72: //样品福利
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 73: //主营成本
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 74: //现金记账
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 75: //收支统计
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 76: //收支详情
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 77: //应收账款
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 78: //应付账款
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 80: //客户列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 82: //账期用户列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 83: //用户账期申请列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 84: //账期设置
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 86: //档口列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 88: //运单列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 89: //物流公司列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 90: //下运单
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 92: //采购订单管理
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 93: //供应商管理
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 113: //管理员列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 115: //角色列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 116: //字段列表
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 118: //新增商品
let vc = ProductDetailViewController()
self.navigationController?.pushViewController(vc, animated: true)
return
case 119: //新增采购单
HUD.flash(.label("敬请期待"),delay: 1.2)
return
case 120: //商品毛利统计
HUD.flash(.label("敬请期待"),delay: 1.2)
return
default:
break;
}
HUD.flash(.label("敬请期待"),delay: 1.2)
return
}
//MARK:--编辑页面保存回调(主要增加使用体验)不应网络请求出差而无法改变
func updataUIbyEditWorkSave() {
//查询所有记录
let items = realm.objects(WorkDataModel.self)
// 已经有记录的话就不插入了
if items.count > 0 {
let userdataStr = UserDefaults.standard.value(forKey: "WorkDataModel")
if userdataStr != nil {
print("有数据哦--")
let workTestMd:WorkDataModel = items[0];
let dataModelStr = workTestMd.dataModelStr
self.dataModel = WorkcenterIndexDataModel(JSONString: dataModelStr)
let workTestMd = WorkDataModel(JSONString: userdataStr as! String)
let dataModelStr = workTestMd?.dataModelStr
self.dataModel = WorkcenterIndexDataModel(JSONString: dataModelStr!)
//旧的常用功能
let oftenStr = workTestMd.oftenArrStr
if oftenStr.count > 0 {
let oftenStr = workTestMd?.oftenArrStr
if oftenStr!.count > 0 {
self.oftenArr?.removeAll()
self.oftenArr = Array<WorkcenterIndexAuthResModel>(JSONString: oftenStr)
self.oftenArr = Array<WorkcenterIndexAuthResModel>(JSONString: oftenStr!)
}
self.tableV.reloadData()
}else{
print("没有数据hehe--")
}
}
}
......@@ -7,16 +7,29 @@
//
import Foundation
import RealmSwift
import ObjectMapper
//工作中心
class WorkDataModel:Object {
class WorkDataModel:Mappable {
//类型名
@objc dynamic var dataModelStr = ""
@objc dynamic var star_time = 0
@objc dynamic var end_time = 0
@objc dynamic var oftenArrStr = ""
}
var dataModelStr:String = ""
var star_time = 0
var end_time = 0
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 @@
//
import UIKit
import RealmSwift
protocol EditWorkCViewControllerDelegate {
func updataUIbyEditWorkSave()
......@@ -21,8 +20,7 @@ class EditWorkCViewController: BaseViewController, UICollectionViewDelegate, UIC
//MARK:--一级分类
var titleStrArr:[String] = []
var pAuthResModelArr:[WorkcenterIndexAuthResModel] = []
let realm = try! Realm()//数据库
@IBOutlet weak var topLayou: NSLayoutConstraint!
@IBOutlet weak var itemListCollectionView: UICollectionView!
@IBOutlet weak var titleView: UIView!
......@@ -90,14 +88,15 @@ class EditWorkCViewController: BaseViewController, UICollectionViewDelegate, UIC
}
func sureGeliAlertViewAction(sender: UIButton) {
if sender.tag == 1001 {
let items = self.realm.objects(WorkDataModel.self)
if items.count > 0 {
let workTestMd:WorkDataModel = items[0];
let userdataStr = UserDefaults.standard.value(forKey: "WorkDataModel")
if userdataStr != nil {
let workTestMd = WorkDataModel(JSONString: userdataStr as! String)
// 在一个事务中更新对象
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
self.delegate?.updataUIbyEditWorkSave()
self.navigationController?.popViewController(animated: true)
......
......@@ -7,7 +7,7 @@
//
import UIKit
import RealmSwift
class AccountViewController: BaseViewController{
@IBOutlet weak var phoneLbl: UILabel!
......@@ -52,10 +52,7 @@ class AccountViewController: BaseViewController{
@IBAction func logOutAction(_ sender: Any) {
print("退出登录")
//模拟退出登录
let realm = try! Realm()
try! realm.write {
realm.deleteAll()
}
UserDefaults.standard.removeObject(forKey: "WorkDataModel")
UserDefaults.standard.removeObject(forKey: "user_token")
NotificationCenter.default.post(name: Notification.Name(rawValue: "logout"), object: nil)
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