GDBManager.h 3.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. //
  2. // GDBManager.h
  3. // Pods
  4. //
  5. // Created by gan on 2025/3/24.
  6. //
  7. #ifndef GDBManager_h
  8. #define GDBManager_h
  9. #endif /* GDBManager_h */
  10. #import "GIMobj.h"
  11. #define kOnDatabaseReadyNotice @"kOnDatabaseReadyNotice"
  12. typedef void (^DBFail)(NSString * _Nullable error);
  13. typedef void (^DBSucc)(NSArray * _Nullable array);
  14. @class GDBManager;
  15. @protocol GDBManagerDelegate <NSObject>
  16. @optional
  17. - (void)GDBManagerAction:(NSString *_Nullable)message;
  18. @end
  19. @interface GDBManager : NSObject
  20. @property (nonatomic, readonly) BOOL isReadey;
  21. + (GDBManager *_Nonnull)shareInstance;
  22. @property (nonatomic,weak) id <GDBManagerDelegate> delegate;
  23. -(BOOL)initDataBase;
  24. -(void)replayAllData;
  25. //消息表
  26. -(void)deleteDB;
  27. -(void)delLocalmsglistTable:(NSString *_Nullable)userid;
  28. -(void)insertLocalmsg:(NSDictionary *_Nonnull)msg succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
  29. - (void)batchInsertLocalMessages:(NSArray<NSDictionary *> *_Nullable)messages success:(DBSucc _Nullable)succ failure:(DBFail _Nullable)fail;
  30. //插入数据,存在则替换
  31. -(void)insertRplaceLocalmsg:(NSDictionary *_Nonnull)msg succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
  32. -(void)selectLocalmsg:(NSString *_Nonnull)chatId page:(NSInteger)page succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
  33. -(void)selectnextmsg:(NSString *_Nonnull)chatId timestp:(NSInteger)timestp succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
  34. //删除自己的本地缓存消息
  35. -(void)deleteMyLocalmsg:(NSDictionary *_Nullable)msg;
  36. //删除数据指定消息
  37. -(void)deleteLocalmsg:(NSDictionary *_Nullable)msg;
  38. //删除数据指定聊天窗消息
  39. -(void)deletechatLocalmsg:(NSString *_Nullable)chatId;
  40. //按分类查询消息
  41. -(void)selectLocalmsgType:(NSString *_Nullable)chatId messageType:(NSString *_Nullable)messageType succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
  42. //按分类查询下一页消息
  43. -(void)selectNextmsgType:(NSString *_Nullable)chatId messageType:(NSString *_Nullable)messageType timestp:(NSInteger)timestp succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
  44. //根据本地时间查询本地消息
  45. -(void)selectLocalmsgWithLocaltime:(NSString *_Nullable)localtime succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
  46. //聊天窗表
  47. -(void)delchatlistTable:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;//删除聊天窗表lcChatlist_
  48. -(void)insertLocalchat:(NSDictionary *_Nonnull)msg succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
  49. -(void)selectLocalchats:(NSString *_Nullable)top succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
  50. ///删除单个聊天
  51. - (void)deleteChatListItem:(NSDictionary *_Nonnull)item succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
  52. //聊天窗最后已读时间表
  53. -(void)insertLastreadtime:(NSDictionary *_Nonnull)msg succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
  54. -(void)selectchatLastreadtime:(NSString *_Nonnull)chatId succ:(DBSucc _Nullable )succ fail:(DBFail _Nullable )fail;
  55. //好友群组表
  56. @end