elderly_doctor_order.sql 6.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. -- ============================================================
  2. -- 医嘱模块(长期医嘱 / 临时医嘱 / 护士执行记录)
  3. -- 说明:业务表统一使用 elderly_ 前缀,与本项目其他业务表保持一致。
  4. -- 频次(frequency)/给药时间(medTime)/途径(route) 均以缩写存储,后端不翻译。
  5. -- ============================================================
  6. CREATE TABLE elderly_long_doctor_order (
  7. id BIGINT NOT NULL AUTO_INCREMENT,
  8. elder_id BIGINT NOT NULL,
  9. elder_name VARCHAR(64) DEFAULT '',
  10. gender TINYINT DEFAULT NULL,
  11. gender_name VARCHAR(16) DEFAULT '',
  12. bed_name VARCHAR(64) DEFAULT '',
  13. nurse_level_name VARCHAR(64) DEFAULT '',
  14. tenant_id BIGINT DEFAULT NULL,
  15. creator VARCHAR(64) DEFAULT '' COMMENT '创建者',
  16. create_time DATETIME DEFAULT NULL COMMENT '创建时间',
  17. updater VARCHAR(64) DEFAULT '' COMMENT '更新者',
  18. update_time DATETIME DEFAULT NULL COMMENT '更新时间',
  19. PRIMARY KEY (id)
  20. ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COMMENT = '长期医嘱主单';
  21. CREATE TABLE elderly_long_doctor_order_entry (
  22. id BIGINT NOT NULL AUTO_INCREMENT,
  23. long_doctor_order_id BIGINT NOT NULL,
  24. order_time DATETIME DEFAULT NULL COMMENT '开医嘱时间',
  25. order_content VARCHAR(512) DEFAULT '' COMMENT '医嘱内容',
  26. frequency VARCHAR(20) DEFAULT '' COMMENT '给药频次缩写',
  27. med_time VARCHAR(20) DEFAULT '' COMMENT '给药时间缩写',
  28. route VARCHAR(20) DEFAULT '' COMMENT '给药途径缩写',
  29. plan_exec_time VARCHAR(20) DEFAULT '' COMMENT '计划执行时间 HH:mm,定时任务按「日期 + 计划执行时间」生成执行记录',
  30. doctor_sign VARCHAR(64) DEFAULT '' COMMENT '医生签名',
  31. nurse_sign VARCHAR(64) DEFAULT '' COMMENT '护士签名',
  32. stop_time DATETIME DEFAULT NULL COMMENT '停止时间',
  33. stop_doctor_sign VARCHAR(64) DEFAULT '' COMMENT '停止医生签名',
  34. stop_nurse_sign VARCHAR(64) DEFAULT '' COMMENT '停止护士签名',
  35. remark VARCHAR(500) DEFAULT '' COMMENT '备注',
  36. status TINYINT NOT NULL DEFAULT 0 COMMENT '0未开始 1在用 2已停止',
  37. creator VARCHAR(64) DEFAULT '' COMMENT '创建者',
  38. create_time DATETIME DEFAULT NULL COMMENT '创建时间',
  39. updater VARCHAR(64) DEFAULT '' COMMENT '更新者',
  40. update_time DATETIME DEFAULT NULL COMMENT '更新时间',
  41. PRIMARY KEY (id),
  42. KEY idx_long_order (long_doctor_order_id)
  43. ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COMMENT = '长期医嘱条目';
  44. CREATE TABLE elderly_short_doctor_order (
  45. id BIGINT NOT NULL AUTO_INCREMENT,
  46. elder_id BIGINT NOT NULL,
  47. elder_name VARCHAR(64) DEFAULT '',
  48. gender TINYINT DEFAULT NULL,
  49. gender_name VARCHAR(16) DEFAULT '',
  50. bed_name VARCHAR(64) DEFAULT '',
  51. nurse_level_name VARCHAR(64) DEFAULT '',
  52. tenant_id BIGINT DEFAULT NULL,
  53. creator VARCHAR(64) DEFAULT '' COMMENT '创建者',
  54. create_time DATETIME DEFAULT NULL COMMENT '创建时间',
  55. updater VARCHAR(64) DEFAULT '' COMMENT '更新者',
  56. update_time DATETIME DEFAULT NULL COMMENT '更新时间',
  57. PRIMARY KEY (id)
  58. ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COMMENT = '临时医嘱主单';
  59. CREATE TABLE elderly_short_doctor_order_entry (
  60. id BIGINT NOT NULL AUTO_INCREMENT,
  61. short_doctor_order_id BIGINT NOT NULL,
  62. order_time DATETIME DEFAULT NULL COMMENT '开医嘱时间',
  63. order_content VARCHAR(512) DEFAULT '' COMMENT '医嘱内容',
  64. frequency VARCHAR(20) DEFAULT '' COMMENT '给药频次缩写',
  65. med_time VARCHAR(20) DEFAULT '' COMMENT '给药时间缩写',
  66. route VARCHAR(20) DEFAULT '' COMMENT '给药途径缩写',
  67. doctor_sign VARCHAR(64) DEFAULT '' COMMENT '医生签名',
  68. execute_time DATETIME DEFAULT NULL COMMENT '执行时间(临时医嘱即时执行)',
  69. nurse_sign VARCHAR(64) DEFAULT '' COMMENT '护士签名',
  70. remark VARCHAR(500) DEFAULT '' COMMENT '备注',
  71. creator VARCHAR(64) DEFAULT '' COMMENT '创建者',
  72. create_time DATETIME DEFAULT NULL COMMENT '创建时间',
  73. updater VARCHAR(64) DEFAULT '' COMMENT '更新者',
  74. update_time DATETIME DEFAULT NULL COMMENT '更新时间',
  75. PRIMARY KEY (id),
  76. KEY idx_short_order (short_doctor_order_id)
  77. ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COMMENT = '临时医嘱条目';
  78. CREATE TABLE elderly_doctor_order_execution (
  79. id BIGINT NOT NULL AUTO_INCREMENT,
  80. order_type TINYINT NOT NULL COMMENT '1=长期医嘱 2=临时医嘱',
  81. order_entry_id BIGINT NOT NULL COMMENT '关联 long/short_doctor_order_entry.id',
  82. exec_type TINYINT NOT NULL DEFAULT 1 COMMENT '执行类型 1=常规执行 2=停止确认',
  83. elder_id BIGINT DEFAULT NULL,
  84. elder_name VARCHAR(64) DEFAULT '',
  85. bed_name VARCHAR(64) DEFAULT '',
  86. order_content VARCHAR(512) DEFAULT '' COMMENT '医嘱内容冗余,便于打印',
  87. frequency VARCHAR(20) DEFAULT '' COMMENT '频次缩写',
  88. med_time VARCHAR(20) DEFAULT '' COMMENT '给药时间缩写',
  89. route VARCHAR(20) DEFAULT '' COMMENT '给药途径缩写',
  90. plan_time DATETIME DEFAULT NULL COMMENT '计划执行时间,前端生成 YYYY-MM-DD HH:mm',
  91. exec_time DATETIME DEFAULT NULL COMMENT '实际执行时间',
  92. exec_nurse_sign VARCHAR(64) DEFAULT '' COMMENT '执行护士签名',
  93. doctor_sign VARCHAR(64) DEFAULT '' COMMENT '医生签名(常规执行=开嘱医生;停止确认=停止医生)',
  94. status TINYINT NOT NULL DEFAULT 0 COMMENT '0待执行 1已执行 2已跳过',
  95. remark VARCHAR(500) DEFAULT '' COMMENT '执行备注 / 跳过原因',
  96. tenant_id BIGINT DEFAULT NULL,
  97. creator VARCHAR(64) DEFAULT '' COMMENT '创建者',
  98. create_time DATETIME DEFAULT NULL COMMENT '创建时间',
  99. updater VARCHAR(64) DEFAULT '' COMMENT '更新者',
  100. update_time DATETIME DEFAULT NULL COMMENT '更新时间',
  101. PRIMARY KEY (id),
  102. UNIQUE KEY uk_exec (order_type, order_entry_id, plan_time, exec_type),
  103. KEY idx_plan (plan_time, tenant_id)
  104. ) ENGINE = InnoDB DEFAULT CHARSET = utf8mb4 COMMENT = '护士执行记录';