FeedbackRequestModel.m 4.6 KB
//
//  FeedbackRequestModel.m
//  DreamSleep
//
//  Created by peter on 2022/4/26.
//

#import "FeedbackRequestModel.h"

@implementation FeedbackRequestModel

+ (NSURLSessionDataTask *)adviceFeedbackRequestWithCompletion:(void (^)(FeedbackRequestModel *requestModel))completion {
    FeedbackRequestModel * requestModel = [[FeedbackRequestModel alloc] init];
    NSString *api = @"advice_feedback";
    NSString *argStr = [NSString stringWithFormat:@"mutation{%@(title:\"%@\",content:\"%@\",content_img:\"%@\")}", api, @"title", @"content", @"content_img"];
    return [self httpPostBodyRequestWithAPI:api params:@{@"query" : argStr} view:nil hasNetActivity:YES loadingInfo:nil hasFailInfo:YES success:^(NSDictionary * _Nonnull apiDic) {
        DSLog(@"用户反馈接口apiDic:%@", apiDic);
        requestModel.resCode = DSResCodeSuccess;
        completion(requestModel);
    } failure:^(id _Nonnull failureInfo) {
        requestModel.resCode = DSResCodeNetFail;
        requestModel.errorInfo = failureInfo;
        completion(requestModel);
    }];
}

+ (NSURLSessionDataTask *)queryUserAdviceListWithCompletion:(void (^)(FeedbackRequestModel *requestModel))completion {
    FeedbackRequestModel * requestModel = [[FeedbackRequestModel alloc] init];
    NSString *api = @"query_user_advice_list";
    int user_id = [LoginUtils getUserID];
    NSString *argStr = [NSString stringWithFormat:@"query{%@(user_id:%d)}", api, user_id];
    return [self httpPostBodyRequestWithAPI:api params:@{@"query" : argStr} view:nil hasNetActivity:YES loadingInfo:nil hasFailInfo:YES success:^(NSDictionary * _Nonnull apiDic) {
        DSLog(@"用户反馈建议列表接口apiDic:%@", apiDic);
        // 字典转模型
        
        
        requestModel.resCode = DSResCodeSuccess;
        completion(requestModel);
    } failure:^(id _Nonnull failureInfo) {
        requestModel.resCode = DSResCodeNetFail;
        requestModel.errorInfo = failureInfo;
        completion(requestModel);
    }];
}

+ (NSURLSessionDataTask *)deleteAdviceFeedbackWithAdviceID:(int)adviceID completion:(void (^)(FeedbackRequestModel *requestModel))completion {
    FeedbackRequestModel * requestModel = [[FeedbackRequestModel alloc] init];
    NSString *api = @"delete_advice_feedback";
    NSString *argStr = [NSString stringWithFormat:@"mutation{%@(advice_id:%d)}", api, adviceID];
    return [self httpPostBodyRequestWithAPI:api params:@{@"query" : argStr} view:nil hasNetActivity:YES loadingInfo:nil hasFailInfo:YES success:^(NSDictionary * _Nonnull apiDic) {
        DSLog(@"用户删除反馈接口apiDic:%@", apiDic);
        requestModel.resCode = DSResCodeSuccess;
        completion(requestModel);
    } failure:^(id _Nonnull failureInfo) {
        requestModel.resCode = DSResCodeNetFail;
        requestModel.errorInfo = failureInfo;
        completion(requestModel);
    }];
}

+ (NSURLSessionDataTask *)queryAdviceDetailWithAdviceID:(int)adviceID completion:(void (^)(FeedbackRequestModel *requestModel))completion {
    FeedbackRequestModel * requestModel = [[FeedbackRequestModel alloc] init];
    NSString *api = @"query_advice_detail";
    NSString *argStr = [NSString stringWithFormat:@"query{%@(id:%d)}", api, adviceID];
    return [self httpPostBodyRequestWithAPI:api params:@{@"query" : argStr} view:nil hasNetActivity:YES loadingInfo:nil hasFailInfo:YES success:^(NSDictionary * _Nonnull apiDic) {
        DSLog(@"用户反馈建议详情接口apiDic:%@", apiDic);
        // 字典转模型
        
        
        requestModel.resCode = DSResCodeSuccess;
        completion(requestModel);
    } failure:^(id _Nonnull failureInfo) {
        requestModel.resCode = DSResCodeNetFail;
        requestModel.errorInfo = failureInfo;
        completion(requestModel);
    }];
}

+ (NSURLSessionDataTask *)queryUserTotalReplysRequest:(void (^)(FeedbackRequestModel *requestModel))completion {
    FeedbackRequestModel * requestModel = [[FeedbackRequestModel alloc] init];
    NSString *api = @"query_user_total_replys";
    NSString *argStr = [NSString stringWithFormat:@"query{%@}", api];
    return [self httpPostBodyRequestWithAPI:api params:@{@"query" : argStr} view:nil hasNetActivity:YES loadingInfo:nil hasFailInfo:YES success:^(NSDictionary * _Nonnull apiDic) {
        DSLog(@"用户反馈数接口apiDic:%@", apiDic);
        // 未读的回复数
        int unreadCount = [apiDic[@"result"] intValue];
        requestModel.resCode = DSResCodeSuccess;
        requestModel.unreadCount = unreadCount;
        completion(requestModel);
    } failure:^(id _Nonnull failureInfo) {
        requestModel.resCode = DSResCodeNetFail;
        requestModel.errorInfo = failureInfo;
        completion(requestModel);
    }];
}

@end