Files
yinmeng-ios/xplan-ios/Base/MVP/Model/BaseObject.h

39 lines
937 B
Objective-C

//
// BaseObject.h
// xplan-ios
//
// Created by 冯硕 on 2021/9/9.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@interface BaseObject : NSObject
/// 依据数组初始化一个实例数组
/// @param json json 数据
+ (NSArray *)modelsWithArray:(id)json;
/// 依据字典初始化一个实例
/// @param dictionary 字典
+ (instancetype)modelWithDictionary:(NSDictionary *)dictionary;
/// 依据JSON对象初始化一个实例
/// @param json json 数据
+ (instancetype)modelWithJSON:(id)json;
///model 转字典
- (NSDictionary *)model2dictionary;
///model 转 json
- (NSString *)model2json;
///扩展方法 按需索取 重写即可
///如果一个模型中 包含一个数组 数组中是另一个模型
+ (NSDictionary *)objectClassInArray;
///如果一个模型中需要字段映射的话 比如id -> ID name -> other.name
+ (NSDictionary *)replacedKeyFromPropertyName;
@end
NS_ASSUME_NONNULL_END