Browse Source

fix: question & answer entities & models

pull/33/head
AmirrezaChegini 2 days ago
parent
commit
f49e38d8dd
  1. 6
      lib/features/question/data/model/answer_model.dart
  2. 12
      lib/features/question/domain/entity/answer_entity.dart
  3. 17
      lib/features/question/domain/entity/answer_entity.g.dart
  4. 3
      lib/features/question/domain/entity/question_entity.dart

6
lib/features/question/data/model/answer_model.dart

@ -9,6 +9,8 @@ class AnswerModel extends AnswerEntity {
super.imageInfo,
super.order,
super.isActive,
super.audioID,
super.audioInfo,
});
factory AnswerModel.fromJson(Map<String, dynamic> json) {
@ -21,6 +23,10 @@ class AnswerModel extends AnswerEntity {
: FileModel.fromJson(json['image_info']),
order: json['order'],
isActive: json['is_active'],
audioID: json['audio_id'],
audioInfo: json['audio_info'] == null
? null
: FileModel.fromJson(json['audio_info']),
);
}
}

12
lib/features/question/domain/entity/answer_entity.dart

@ -1,3 +1,5 @@
import 'package:hadi_hoda_flutter/core/constants/my_constants.dart';
import 'package:hadi_hoda_flutter/core/utils/local_storage.dart';
import 'package:hadi_hoda_flutter/core/utils/storage_path.dart';
import 'package:hadi_hoda_flutter/features/question/domain/entity/file_entity.dart';
import 'package:hive/hive.dart';
@ -20,6 +22,12 @@ class AnswerEntity extends HiveObject {
bool? isActive;
@HiveField(6)
String? image;
@HiveField(7)
String? audioID;
@HiveField(8)
FileEntity? audioInfo;
@HiveField(9)
String? audio;
AnswerEntity({
this.id,
@ -28,8 +36,10 @@ class AnswerEntity extends HiveObject {
this.imageInfo,
this.order,
this.isActive,
this.image,
this.audioID,
this.audioInfo,
}){
image = '${StoragePath.documentDir.path}/images/${imageInfo?.filename}';
audio = '${StoragePath.documentDir.path}/${LocalStorage.readData(key: MyConstants.selectLanguage)}/answer_audio/${audioInfo?.filename}';
}
}

17
lib/features/question/domain/entity/answer_entity.g.dart

@ -23,14 +23,17 @@ class AnswerEntityAdapter extends TypeAdapter<AnswerEntity> {
imageInfo: fields[3] as FileEntity?,
order: fields[4] as int?,
isActive: fields[5] as bool?,
image: fields[6] as String?,
);
audioID: fields[7] as String?,
audioInfo: fields[8] as FileEntity?,
)
..image = fields[6] as String?
..audio = fields[9] as String?;
}
@override
void write(BinaryWriter writer, AnswerEntity obj) {
writer
..writeByte(7)
..writeByte(10)
..writeByte(0)
..write(obj.id)
..writeByte(1)
@ -44,7 +47,13 @@ class AnswerEntityAdapter extends TypeAdapter<AnswerEntity> {
..writeByte(5)
..write(obj.isActive)
..writeByte(6)
..write(obj.image);
..write(obj.image)
..writeByte(7)
..write(obj.audioID)
..writeByte(8)
..write(obj.audioInfo)
..writeByte(9)
..write(obj.audio);
}
@override

3
lib/features/question/domain/entity/question_entity.dart

@ -38,7 +38,6 @@ class QuestionEntity extends HiveObject {
this.isActive,
this.answers,
}){
audio =
'${StoragePath.documentDir.path}/${LocalStorage.readData(key: MyConstants.selectLanguage)}/audio/${audioInfo?.filename}';
audio = '${StoragePath.documentDir.path}/${LocalStorage.readData(key: MyConstants.selectLanguage)}/question_audio/${audioInfo?.filename}';
}
}
Loading…
Cancel
Save