patient.dart 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. import 'package:fis_jsonrpc/rpc.dart';
  2. import 'package:vnoteapp/managers/interfaces/patient.dart';
  3. import 'package:vnoteapp/rpc.dart';
  4. import 'package:fis_common/logger/logger.dart';
  5. import 'package:vnoteapp/store/store.dart';
  6. class PatientManager implements IPatientManager {
  7. @override
  8. Future<String?> create(CreatePatientRequest request) async {
  9. try {
  10. request.token = Store.user.token;
  11. final result = await rpc.patient.createPatientAsync(request);
  12. return result;
  13. } catch (e) {
  14. logger.e("PatientManager create patient error.", e);
  15. return null;
  16. }
  17. }
  18. @override
  19. Future<PatientDTO?> getDetail(String code) async {
  20. try {
  21. final result = await rpc.patient.getPatientDetailAsync(
  22. GetPatientRequest(code: code, token: Store.user.token),
  23. );
  24. return result;
  25. } catch (e) {
  26. logger.e("PatientManager query patient detail error.", e);
  27. return null;
  28. }
  29. }
  30. @override
  31. Future<PageCollection<PatientDTO>?> getPagedList(
  32. PatientPageRequest request) async {
  33. try {
  34. request.token = Store.user.token;
  35. final result = await rpc.patient.getPatientPageAsync(request);
  36. return result;
  37. } catch (e) {
  38. logger.e("PatientManager query patient paged list error.", e);
  39. return null;
  40. }
  41. }
  42. }