111 lines
3.6 KiB
Objective-C
111 lines
3.6 KiB
Objective-C
//
|
||
// CreateEventPresenter.m
|
||
// YuMi
|
||
//
|
||
// Created by P on 2025/5/9.
|
||
//
|
||
|
||
#import "CreateEventPresenter.h"
|
||
#import "Api+EventCenter.h"
|
||
|
||
@interface CreateEventPresenter()
|
||
|
||
@end
|
||
|
||
@implementation CreateEventPresenter
|
||
// Maybe 用一个方法 + 枚举指来指代一个功能类型的 api call?
|
||
|
||
- (void)loadEventSquare:(NSInteger)page {
|
||
[Api usereventSquare:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
|
||
if ([[self getView] respondsToSelector:@selector(eventSquareListSuccess:)]) {
|
||
[[self getView] eventSquareListSuccess:[EventItemModel modelsWithArray:data.data]];
|
||
}
|
||
} fail:^(NSInteger code, NSString * _Nullable msg) {
|
||
if ([[self getView] respondsToSelector:@selector(eventSquareListFailure:)]) {
|
||
[[self getView] eventSquareListFailure:msg];
|
||
}
|
||
} showLoading:YES errorToast:YES] page:@(page) pageSize:@20];
|
||
}
|
||
|
||
- (void)loadMyCreateEvents:(NSInteger)page {
|
||
[Api usereventMySquare:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
|
||
if ([[self getView] respondsToSelector:@selector(eventSquareListSuccess:)]) {
|
||
[[self getView] myCreateEventListSuccess:@[]];
|
||
}
|
||
} fail:^(NSInteger code, NSString * _Nullable msg) {
|
||
if ([[self getView] respondsToSelector:@selector(eventSquareListFailure:)]) {
|
||
[[self getView] myCreateEventListFailure:msg];
|
||
}
|
||
} showLoading:YES errorToast:YES]
|
||
page:@(page)
|
||
pageSize:@20
|
||
uid:[AccountInfoStorage instance].getUid];
|
||
}
|
||
|
||
- (void)loadMySubEvents:(NSInteger)page {
|
||
[Api usereventMySub:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
|
||
if ([[self getView] respondsToSelector:@selector(eventSquareListSuccess:)]) {
|
||
[[self getView] mySubEventListSuccess:@[]];
|
||
}
|
||
} fail:^(NSInteger code, NSString * _Nullable msg) {
|
||
if ([[self getView] respondsToSelector:@selector(eventSquareListFailure:)]) {
|
||
[[self getView] myCreateEventListFailure:msg];
|
||
}
|
||
} showLoading:YES errorToast:YES]
|
||
page:@(page)
|
||
pageSize:@20
|
||
uid:[AccountInfoStorage instance].getUid];
|
||
}
|
||
|
||
- (void)createEventWithTitle:(NSString *)title
|
||
image:(UIImage *)image
|
||
uploadToHome:(BOOL)uploadToHome
|
||
roomId:(NSString *)roomId
|
||
startTime:(NSDate *)startTime
|
||
duration:(NSInteger)duration
|
||
content:(NSString *)content
|
||
notifyFans:(BOOL)notifyFans {
|
||
// 输入验证
|
||
if (title.length == 0) {
|
||
// [[self getView] showError:@"请输入活动标题"];
|
||
return;
|
||
}
|
||
|
||
if (!image) {
|
||
// [[self getView] showError:@"请选择活动横幅图片"];
|
||
return;
|
||
}
|
||
|
||
if (roomId.length == 0) {
|
||
// [[self getView] showError:@"请选择房间"];
|
||
return;
|
||
}
|
||
|
||
if (!startTime) {
|
||
// [[self getView] showError:@"请选择开始时间"];
|
||
return;
|
||
}
|
||
|
||
if (duration <= 0) {
|
||
// [[self getView] showError:@"请选择活动时长"];
|
||
return;
|
||
}
|
||
|
||
if (content.length == 0) {
|
||
// [[self getView] showError:@"请输入活动内容"];
|
||
return;
|
||
}
|
||
|
||
// TODO: 调用网络接口创建活动
|
||
// 1. 上传图片
|
||
// 2. 创建活动
|
||
// 3. 如果uploadToHome为YES,将横幅上传到主页
|
||
|
||
// 模拟网络请求成功
|
||
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(1.0 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
|
||
// [[self getView] showCreateSuccess];
|
||
});
|
||
}
|
||
|
||
@end
|