form pro - sin imagenes
This commit is contained in:
@@ -0,0 +1 @@
|
||||
export '/src/entities/profession_entity.dart';
|
||||
@@ -0,0 +1,29 @@
|
||||
import 'package:equatable/equatable.dart';
|
||||
|
||||
class ProfessionEntity extends Equatable {
|
||||
final String name;
|
||||
|
||||
const ProfessionEntity({required this.name});
|
||||
|
||||
Map<String, Object?> toDocument() {
|
||||
return {
|
||||
'name': name,
|
||||
};
|
||||
}
|
||||
|
||||
static ProfessionEntity fromDocument(Map<String, dynamic> doc) {
|
||||
return ProfessionEntity(
|
||||
name: doc['name'] as String,
|
||||
);
|
||||
}
|
||||
|
||||
@override
|
||||
List<Object?> get props => [name];
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return '''ProfessionEntity {
|
||||
name: $name
|
||||
}''';
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1 @@
|
||||
export 'profession_ui.dart';
|
||||
@@ -0,0 +1,12 @@
|
||||
import 'package:equatable/equatable.dart';
|
||||
|
||||
class ProfessionUi extends Equatable {
|
||||
final String name;
|
||||
|
||||
const ProfessionUi({
|
||||
required this.name,
|
||||
});
|
||||
|
||||
@override
|
||||
List<Object?> get props => [name];
|
||||
}
|
||||
+30
@@ -0,0 +1,30 @@
|
||||
import 'dart:developer';
|
||||
|
||||
import 'package:profession_repository/profession_repository.dart';
|
||||
import 'package:cloud_firestore/cloud_firestore.dart';
|
||||
|
||||
class FirebaseProfessionRepository implements ProfessionRepository {
|
||||
final professionsCollection =
|
||||
FirebaseFirestore.instance.collection('professions');
|
||||
|
||||
@override
|
||||
Future<Professions> getProfessions() async {
|
||||
try {
|
||||
final doc = await professionsCollection.doc("professions").get();
|
||||
return Professions.fromDocument(doc.data() as Map<String, dynamic>);
|
||||
} catch (e) {
|
||||
log('Error getting documents: $e');
|
||||
rethrow;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
class Professions {
|
||||
final List<String> professions;
|
||||
|
||||
Professions(this.professions);
|
||||
|
||||
factory Professions.fromDocument(Map<String, dynamic> json) {
|
||||
return Professions(List<String>.from(json['professions']));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,5 @@
|
||||
import 'package:profession_repository/profession_repository.dart';
|
||||
|
||||
abstract class ProfessionRepository {
|
||||
Future<Professions> getProfessions();
|
||||
}
|
||||
Reference in New Issue
Block a user