exam.dart 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. import 'package:vital_local_database/index.dart';
  2. import 'syncable.dart';
  3. /// 健康体检
  4. class ExamEntity extends SyncableEntity<ExamEntity> {
  5. static const String _tableName = "exams";
  6. static final _columns = ExamColumnsDefine();
  7. // ignore: constant_identifier_names
  8. static const TABLE_CREATE_SQL = 'CREATE TABLE IF NOT EXISTS "$_tableName" ('
  9. '"id" INTEGER NOT NULL,'
  10. '"code" VARCHAR(100) NOT NULL,'
  11. '"userCode" VARCHAR(100) NOT NULL,'
  12. '"patientCode" VARCHAR(100) NOT NULL,'
  13. '"batchNumber" VARCHAR(100) NOT NULL,'
  14. '"templateKey" VARCHAR(100) NOT NULL,'
  15. '"dataJson" TEXT NOT NULL,'
  16. '"syncType" INTEGER NOT NULL,'
  17. '"syncState" INTEGER NOT NULL,'
  18. '"createTime" DATETIME NOT NULL,'
  19. '"updateTime" DATETIME NULL,'
  20. '"isValid" INTEGER NOT NULL,'
  21. 'PRIMARY KEY ("id")'
  22. ');';
  23. @override
  24. IDbColumnsDefine<IDbEntity> get columns => _columns;
  25. @override
  26. String get tableName => _tableName;
  27. /// 居民档案编码
  28. String patientCode = '';
  29. /// 批次号
  30. String batchNumber = '';
  31. /// 体检号
  32. String? physicalEaxmNumber;
  33. /// 模板Key
  34. String templateKey = '';
  35. /// 模板Code
  36. String templateCode = '';
  37. @override
  38. Map<String, dynamic> toJson() {
  39. final map = super.toJson();
  40. map['patientCode'] = patientCode;
  41. map['batchNumber'] = batchNumber;
  42. map['physicalEaxmNumber'] = physicalEaxmNumber;
  43. map['templateKey'] = templateKey;
  44. map['templateCode'] = templateCode;
  45. return map;
  46. }
  47. @override
  48. ExamEntity fromJson(Map<String, dynamic> map) {
  49. super.fromJson(map);
  50. patientCode = map['patientCode'];
  51. batchNumber = map['batchNumber'];
  52. physicalEaxmNumber = map['physicalEaxmNumber'];
  53. templateKey = map['templateKey'];
  54. templateCode = map['templateCode'];
  55. return this;
  56. }
  57. }
  58. class ExamColumnsDefine extends SyncableColumnsDefine<ExamEntity>
  59. implements IDbColumnsDefine<ExamEntity> {
  60. /// 居民档案编码
  61. final patientCode = DbColumn<String>("patientCode");
  62. /// 批次号
  63. final batchNumber = DbColumn<String>("batchNumber");
  64. /// 体检号
  65. final physicalEaxmNumber = DbColumn<String?>("physicalEaxmNumber");
  66. /// 模板Key
  67. final templateKey = DbColumn<String>("templateKey");
  68. }