|
@@ -9,9 +9,9 @@
|
|
|
import RealmSwift
|
|
|
import UIKit
|
|
|
|
|
|
-class PQSingletoRealmUtil: NSObject {
|
|
|
- var schemaVersion : UInt64 = 32
|
|
|
- var realmEntry: Realm? {
|
|
|
+public class PQSingletoRealmUtil: NSObject {
|
|
|
+ public var schemaVersion : UInt64 = 32
|
|
|
+ public var realmEntry: Realm? {
|
|
|
let config = Realm.Configuration(
|
|
|
schemaVersion: schemaVersion,
|
|
|
migrationBlock: { _, oldSchemaVersion in
|
|
@@ -29,10 +29,10 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
return nil
|
|
|
}
|
|
|
|
|
|
- static let shared = PQSingletoRealmUtil()
|
|
|
+ public static let shared = PQSingletoRealmUtil()
|
|
|
|
|
|
|
|
|
- func getDraftDB(uid: String) -> Realm {
|
|
|
+ public func getDraftDB(uid: String) -> Realm {
|
|
|
let docPath = NSSearchPathForDirectoriesInDomains(FileManager.SearchPathDirectory.documentDirectory, FileManager.SearchPathDomainMask.userDomainMask, true)[0] as String
|
|
|
let dbPath = docPath.appending("/\(uid)Draft.realm")
|
|
|
BFLog(message: "生成登录人数据库地址\(dbPath)")
|
|
@@ -51,7 +51,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func saveObject(object: Object) {
|
|
|
+ public func saveObject(object: Object) {
|
|
|
do {
|
|
|
try realmEntry?.write {
|
|
|
realmEntry?.add(object, update: .modified)
|
|
@@ -66,7 +66,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func saveObjects(objects: [Object]) {
|
|
|
+ public func saveObjects(objects: [Object]) {
|
|
|
do {
|
|
|
try realmEntry?.write {
|
|
|
realmEntry?.add(objects, update: .modified)
|
|
@@ -81,7 +81,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func saveLocalSaveObject(uniqueId: String, isSelected: Bool) {
|
|
|
+ public func saveLocalSaveObject(uniqueId: String, isSelected: Bool) {
|
|
|
let currentObject = queryLocalStoreObjects(uniqueId: uniqueId)
|
|
|
if (currentObject?.count ?? 0) > 0 {
|
|
|
do {
|
|
@@ -106,20 +106,20 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func queryLocalStoreObjects(uniqueId: String) -> Results<PQBaseModel>? {
|
|
|
+ public func queryLocalStoreObjects(uniqueId: String) -> Results<PQBaseModel>? {
|
|
|
return queryObjects(PQLocalStoreModel.self, filter: "uniqueId == '\(uniqueId)'")
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
- func queryVideoObjects() -> Results<PQBaseModel>? {
|
|
|
+ public func queryVideoObjects() -> Results<PQBaseModel>? {
|
|
|
|
|
|
return queryObjects(PQVideoListModel.self, filter: "isSelected == false")
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
- func deleteAllCacheObject() {
|
|
|
+ public func deleteAllCacheObject() {
|
|
|
guard let deleteObjecs = realmEntry?.objects(PQVideoListModel.self) else {
|
|
|
BFLog(message: "Realm-删除已缓存为空")
|
|
|
return
|
|
@@ -140,13 +140,13 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func queryObjects(_ type: PQBaseModel.Type, filter: String) -> Results<PQBaseModel>? {
|
|
|
+ public func queryObjects(_ type: PQBaseModel.Type, filter: String) -> Results<PQBaseModel>? {
|
|
|
let puppies = realmEntry?.objects(type).filter(filter)
|
|
|
BFLog(message: "查询已缓存数据:type = \(type) \(puppies ?? nil)")
|
|
|
return puppies
|
|
|
}
|
|
|
|
|
|
- func deleteObject() {
|
|
|
+ public func deleteObject() {
|
|
|
guard let deleteObjecs = realmEntry?.objects(PQVideoListModel.self).filter("isSelected == true") else { return }
|
|
|
do {
|
|
|
try realmEntry?.write {
|
|
@@ -161,7 +161,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func deleteObject(object: PQVideoListModel) {
|
|
|
+ public func deleteObject(object: PQVideoListModel) {
|
|
|
let videoId: Int = object.videoId
|
|
|
guard let deleteObjecs = realmEntry?.objects(PQVideoListModel.self).filter("videoId == \(videoId)") else { return }
|
|
|
do {
|
|
@@ -175,7 +175,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- func deleteObject(_ type: PQBaseModel.Type, filter: String) {
|
|
|
+ public func deleteObject(_ type: PQBaseModel.Type, filter: String) {
|
|
|
guard let deleteObjecs = queryObjects(type, filter: filter) else { return }
|
|
|
do {
|
|
|
try realmEntry?.write {
|
|
@@ -191,7 +191,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func updateObject(object: PQVideoListModel) {
|
|
|
+ public func updateObject(object: PQVideoListModel) {
|
|
|
guard let newObject = realmEntry?.objects(PQVideoListModel.self).filter("videoId == \(object.videoId)") else { BFLog(message: "更新 newObject 为空")
|
|
|
return
|
|
|
}
|
|
@@ -211,11 +211,11 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
super.init()
|
|
|
}
|
|
|
|
|
|
- override func copy() -> Any {
|
|
|
+ override public func copy() -> Any {
|
|
|
return self
|
|
|
}
|
|
|
|
|
|
- override func mutableCopy() -> Any {
|
|
|
+ override public func mutableCopy() -> Any {
|
|
|
return self
|
|
|
}
|
|
|
|
|
@@ -226,7 +226,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmAdd(realm: Realm, object: Object) {
|
|
|
+ public func realmAdd(realm: Realm, object: Object) {
|
|
|
try! realm.write {
|
|
|
realm.add(object, update: .modified)
|
|
|
}
|
|
@@ -235,7 +235,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmAdds(realm: Realm, objects: [Object]) {
|
|
|
+ public func realmAdds(realm: Realm, objects: [Object]) {
|
|
|
try! realm.write {
|
|
|
realm.add(objects, update: .modified)
|
|
|
}
|
|
@@ -246,7 +246,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmDelete(realm: Realm, object: Object) {
|
|
|
+ public func realmDelete(realm: Realm, object: Object) {
|
|
|
try! realm.write {
|
|
|
realm.delete(object)
|
|
|
}
|
|
@@ -255,7 +255,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmDeletes(realm: Realm, objects: [Object]) {
|
|
|
+ public func realmDeletes(realm: Realm, objects: [Object]) {
|
|
|
try! realm.write {
|
|
|
realm.delete(objects)
|
|
|
}
|
|
@@ -266,7 +266,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmDeletesWithPredicate(realm: Realm, object: Object.Type, predicate: NSPredicate) {
|
|
|
+ public func realmDeletesWithPredicate(realm: Realm, object: Object.Type, predicate: NSPredicate) {
|
|
|
let results: [Object] = realmQueryWithParameters(realm: realm, object: object, predicate: predicate)
|
|
|
if results.count > 0 {
|
|
|
try! realm.write {
|
|
@@ -278,7 +278,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmDeleteTypeList(realm: Realm, object: Object.Type) {
|
|
|
+ public func realmDeleteTypeList(realm: Realm, object: Object.Type) {
|
|
|
let objListResults = realmQueryWithType(realm: realm, object: object)
|
|
|
if objListResults.count > 0 {
|
|
|
try! realm.write {
|
|
@@ -288,7 +288,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
}
|
|
|
|
|
|
|
|
|
- func realmDeleteAll(realm: Realm) {
|
|
|
+ public func realmDeleteAll(realm: Realm) {
|
|
|
try! realm.write {
|
|
|
realm.deleteAll()
|
|
|
}
|
|
@@ -299,7 +299,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmUpdte(realm: Realm, object _: Object) {
|
|
|
+ public func realmUpdte(realm: Realm, object _: Object) {
|
|
|
try! realm.write {
|
|
|
|
|
|
}
|
|
@@ -308,7 +308,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmUpdtes(realm: Realm, objects _: [Object]) {
|
|
|
+ public func realmUpdtes(realm: Realm, objects _: [Object]) {
|
|
|
try! realm.write {
|
|
|
|
|
|
}
|
|
@@ -317,7 +317,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmUpdateWithTranstion(realm: Realm, action: (Bool) -> Void) {
|
|
|
+ public func realmUpdateWithTranstion(realm: Realm, action: (Bool) -> Void) {
|
|
|
try! realm.write {
|
|
|
action(true)
|
|
|
}
|
|
@@ -328,13 +328,13 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func reamlQueryObjects(realm: Realm, _ type: Object.Type, filter: String) -> Results<Object>? {
|
|
|
+ public func reamlQueryObjects(realm: Realm, _ type: Object.Type, filter: String) -> Results<Object>? {
|
|
|
let puppies = realm.objects(type).filter(filter)
|
|
|
BFLog(message: "查询已缓存数据:type = \(type) \(puppies)")
|
|
|
return puppies
|
|
|
}
|
|
|
|
|
|
- func reamlQueryObjectsV2(realm: Realm, _ type: Object.Type, filter: String) -> String {
|
|
|
+ public func reamlQueryObjectsV2(realm: Realm, _ type: Object.Type, filter: String) -> String {
|
|
|
var json: String?
|
|
|
try! realm.write {
|
|
|
let puppies: Results<Object> = realm.objects(type).filter(filter)
|
|
@@ -352,7 +352,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmQueryWith(realm: Realm, object: Object.Type) -> [Object] {
|
|
|
+ public func realmQueryWith(realm: Realm, object: Object.Type) -> [Object] {
|
|
|
let results = realmQueryWithType(realm: realm, object: object)
|
|
|
var resultsArray = [Object]()
|
|
|
if results.count > 0 {
|
|
@@ -369,7 +369,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmQueryWithParameters(realm: Realm, object: Object.Type, predicate: NSPredicate) -> [Object] {
|
|
|
+ public func realmQueryWithParameters(realm: Realm, object: Object.Type, predicate: NSPredicate) -> [Object] {
|
|
|
let results = realmQueryWith(realm: realm, object: object, predicate: predicate)
|
|
|
var resultsArray = [Object]()
|
|
|
if results.count > 0 {
|
|
@@ -387,7 +387,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmQueryWithParametersPage(realm: Realm, object: Object.Type, fromIndex: Int, pageSize: Int) -> [Object] {
|
|
|
+ public func realmQueryWithParametersPage(realm: Realm, object: Object.Type, fromIndex: Int, pageSize: Int) -> [Object] {
|
|
|
let results = realmQueryWithType(realm: realm, object: object)
|
|
|
var resultsArray = [Object]()
|
|
|
if results.count <= pageSize * (fromIndex - 1) || fromIndex <= 0 {
|
|
@@ -409,7 +409,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmQueryWithParametersAndSorted(realm: Realm, object: Object.Type, predicate: NSPredicate, sortedKey: String, isAssending: Bool) -> [Object] {
|
|
|
+ public func realmQueryWithParametersAndSorted(realm: Realm, object: Object.Type, predicate: NSPredicate, sortedKey: String, isAssending: Bool) -> [Object] {
|
|
|
let results = realmQueryWithSorted(realm: realm, object: object, predicate: predicate, sortedKey: sortedKey, isAssending: isAssending)
|
|
|
var resultsArray = [Object]()
|
|
|
if results.count > 0 {
|
|
@@ -430,7 +430,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- func realmQueryWithParametersAndSortedAndPaged(realm: Realm, object: Object.Type, predicate: NSPredicate, sortedKey: String, isAssending: Bool, fromIndex: Int, pageSize: Int) -> [Object] {
|
|
|
+ public func realmQueryWithParametersAndSortedAndPaged(realm: Realm, object: Object.Type, predicate: NSPredicate, sortedKey: String, isAssending: Bool, fromIndex: Int, pageSize: Int) -> [Object] {
|
|
|
let results = realmQueryWithSorted(realm: realm, object: object, predicate: predicate, sortedKey: sortedKey, isAssending: isAssending)
|
|
|
var resultsArray = [Object]()
|
|
|
|
|
@@ -452,7 +452,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- private func realmQueryWithType(realm: Realm, object: Object.Type) -> Results<Object> {
|
|
|
+ public func realmQueryWithType(realm: Realm, object: Object.Type) -> Results<Object> {
|
|
|
return realm.objects(object)
|
|
|
}
|
|
|
|
|
@@ -462,7 +462,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- private func realmQueryWith(realm: Realm, object: Object.Type, predicate: NSPredicate) -> Results<Object> {
|
|
|
+ public func realmQueryWith(realm: Realm, object: Object.Type, predicate: NSPredicate) -> Results<Object> {
|
|
|
return realm.objects(object).filter(predicate)
|
|
|
}
|
|
|
|
|
@@ -474,7 +474,7 @@ class PQSingletoRealmUtil: NSObject {
|
|
|
|
|
|
|
|
|
|
|
|
- private func realmQueryWithSorted(realm: Realm, object: Object.Type, predicate: NSPredicate, sortedKey: String, isAssending: Bool) -> Results<Object> {
|
|
|
+ public func realmQueryWithSorted(realm: Realm, object: Object.Type, predicate: NSPredicate, sortedKey: String, isAssending: Bool) -> Results<Object> {
|
|
|
return realm.objects(object).filter(predicate)
|
|
|
.sorted(byKeyPath: sortedKey, ascending: isAssending)
|
|
|
}
|