1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- //
- // RQExerciseOptionSureBtnItemViewModel.m
- // JSJP
- //
- // Created by 张嵘 on 2021/8/23.
- //
- #import "RQExerciseOptionSureBtnItemViewModel.h"
- @implementation RQExerciseOptionSureBtnItemViewModel
- - (instancetype)initWithRQExerciseModel:(RQExerciseModel *)exerciseModel {
- if (self = [super init]) {
- self.rowHeight = 56.f;
- NSArray *allOptionsArr = [@[exerciseModel.ydtQuestionModel.An1,exerciseModel.ydtQuestionModel.An2,exerciseModel.ydtQuestionModel.An3,exerciseModel.ydtQuestionModel.An4].rac_sequence.signal filter:^BOOL(NSString *optStr) {
- return RQStringIsNotEmpty(optStr);
- }].toArray;
-
- self.operation = ^{
- if ([exerciseModel.userAnswer containsObject:@"预选Option"]) {
- NSMutableArray *userAnswerArr = exerciseModel.userAnswer.mutableCopy;
- [userAnswerArr removeObject:@"预选Option"];
- if(userAnswerArr.count==0){
- //提示
- ShowMsg(@"请先选择答案!");
- return;
- }
- exerciseModel.userAnswer = userAnswerArr.copy;
- NSString *userAnswerIndexStr = [[[userAnswerArr.rac_sequence.signal map:^id _Nullable(NSString *optStr) {
- return @([allOptionsArr indexOfObject:optStr] + 1);
- }].toArray arraySortASC] componentsJoinedByString:@""];
- // [RQ_YDT_USER_Question_Module doQuestionWithID:exerciseModel.ydtQuestionModel.ID myAnswer:userAnswerIndexStr.integerValue trueAnswer:exerciseModel.ydtQuestionModel.AnswerTrue.integerValue carType:RQ_YDTQuestion_Module.carType subject:RQ_YDTQuestion_Module.subject exerciseType:RQExerciseType_Sequential];
- // if (userAnswerIndexStr.integerValue == exerciseModel.ydtQuestionModel.AnswerTrue.integerValue) {
- // [RQNotificationCenter postNotificationName:RQAutoJumpNextNotification object:nil];
- // [RQNotificationCenter postNotificationName:RQCancelWrongNotification object:nil];
- // }
- [NYTools saveExerciseModel:exerciseModel userKey:RQ_USER_MANAGER.currentUser.outId carType:RQ_YDTQuestion_Module.carType subject:RQ_YDTQuestion_Module.subject exerciseType:RQ_Exercise_Module.currentExerciseType];//记录用户做的题目
- if (userAnswerIndexStr.integerValue == exerciseModel.ydtQuestionModel.AnswerTrue.integerValue) {
- // [RQ_YDTQuestion_Module saveHistoryQuestionNumWithQuestionId:exerciseModel.ydtQuestionModel.num];
- [RQNotificationCenter postNotificationName:RQAutoJumpNextNotification object:nil];
- if (RQ_Exercise_Module.isRightAutoRemoveError) {
- [RQ_YDT_USER_Question_Module doQuestionWithID:exerciseModel.ydtQuestionModel.ID myAnswer:userAnswerIndexStr.integerValue trueAnswer:exerciseModel.ydtQuestionModel.AnswerTrue.integerValue carType:RQ_YDTQuestion_Module.carType subject:RQ_YDTQuestion_Module.subject exerciseType:RQExerciseType_Sequential];
- [RQNotificationCenter postNotificationName:RQCancelWrongNotification object:nil];
- NSString *ydt_id = [NSString stringWithFormat:@"%ld",(long)exerciseModel.ydtQuestionModel.ID];
- [RQ_YDTQuestion_Module.errorRemoveArr addObject:ydt_id];
- // [[[RQ_HTTP_Service deleteFavQuestionWithQuestionId:exerciseModel.ydtQuestionModel.ID type:RQSaveFavQuestionType_Wrong] deliverOnMainThread] subscribeNext:^(id _Nullable x) {
- // [RQ_YDT_USER_Question_Module doQuestionWithID:exerciseModel.ydtQuestionModel.ID myAnswer:userAnswerIndexStr.integerValue trueAnswer:exerciseModel.ydtQuestionModel.AnswerTrue.integerValue carType:RQ_YDTQuestion_Module.carType subject:RQ_YDTQuestion_Module.subject exerciseType:RQExerciseType_Sequential];
- // [RQNotificationCenter postNotificationName:RQCancelWrongNotification object:nil];
- // } error:^(NSError * _Nullable error) {
- //
- // }];
- }
- } else {
- [RQ_YDT_USER_Question_Module doQuestionWithID:exerciseModel.ydtQuestionModel.ID myAnswer:userAnswerIndexStr.integerValue trueAnswer:exerciseModel.ydtQuestionModel.AnswerTrue.integerValue carType:RQ_YDTQuestion_Module.carType subject:RQ_YDTQuestion_Module.subject exerciseType:RQExerciseType_Sequential];
- // [[[RQ_HTTP_Service saveFavQuestionWithQuestionId:exerciseModel.ydtQuestionModel.ID type:RQSaveFavQuestionType_Wrong] deliverOnMainThread] subscribeNext:^(id _Nullable x) {
- // [RQ_YDT_USER_Question_Module doQuestionWithID:exerciseModel.ydtQuestionModel.ID myAnswer:userAnswerIndexStr.integerValue trueAnswer:exerciseModel.ydtQuestionModel.AnswerTrue.integerValue carType:RQ_YDTQuestion_Module.carType subject:RQ_YDTQuestion_Module.subject exerciseType:RQExerciseType_Sequential];
- // } error:^(NSError * _Nullable error) {
- // }];
- }
- }
- };
- }
- return self;
- }
- - (NSString *)itemClassName {
- return @"RQExerciseOptionSureBtnCell";
- }
- @end
|