将患者操作项添加到临床医生/急诊医生项目

edc-action-item的Python项目详细描述


pypitraviscodecovdownloads

EDC行动项

将患者操作项添加到EDC中

概述

操作项是提交表单的提醒。

可以将操作项配置为驱动数据收集

  • 对于不适合访问日程的表单;
  • 对于根据某些临床事件需要的表格。

跟踪操作项。每个都分配了一个唯一的操作标识符并保持状态(新建、打开、关闭)。

可以链接操作。一个操作可以创建另一个操作、一组操作或重新创建自身。

不良事件、死亡、计划外都是很好的候选者。

根据一些临床事件需要提供不良事件报告。由于必须报告该事件,因此仅保留报告用户的决定是不够的。可以根据临床事件和管理性跟踪的操作项的状态打开操作项。行动项与不良事件报告相关。报告提交后,操作项将关闭。如果在提交初始不良事件报告后需要其他数据,则可以自动打开后续操作。

如需有关示例,请参阅模块“雄心壮志”活动项目。

定义操作项

在应用程序的根目录中,定义一个操作项模块。edc操作项站点控制器将自动发现此模块并注册操作项类。

像这样在操作项模块中注册操作项类

site_action_items.register(AeInitialAction)

一个简单的操作项

在它中,使用action类定义操作。

fromedc_action_itemimportAction,site_action_itemsfromedc_constants.constantsHIGH_PRIORITYfromambition_ae.action_itemsimportAeFollowupAction,AeTmgActionclassAeInitialAction(Action):name=AE_INITIAL_ACTIONdisplay_name='Submit AE Initial Report'model='ambition_ae.aeinitial'show_on_dashboard=Trueinstructions='Complete the initial report and forward to the TMG'priority=HIGH_PRIORITY

操作项与其模型关联

fromedc_action_item.model_mixinsimportActionModelMixinfromedc_identifier.model_mixinsimportNonUniqueSubjectIdentifierFieldMixinclassAeInitial(ActionModelMixin,NonUniqueSubjectIdentifierFieldMixin,BaseUuidModel):action_cls=AeInitialAction...# field classes

在代码中的某个位置,实例化操作项

AeInitialAction(subject_identifier='12345')

此主题创建了 > ActhItIs< /CIT>模型实例,具有状态(如果不存在)。

现在创建关联的模型实例

AeInitial.objects.create(subject_identifier='12345',...)

actionitem模型实例现在的状态是closed。

更改条件以关闭操作

默认情况下,在保存关联的模型实例后,操作将关闭。有关更精细的行为,请在“操作项”类中定义“在保存时关闭操作项”。

classAeInitialAction(Action):...defclose_action_item_on_save(self):self.delete_children_if_new(action_cls=self)returnself.model_obj.report_status==CLOSED

单一行动项

要确保操作项不会为每个主题创建多个实例,请使用singleton属性。

classEnrollToSubstudyAction(Action):name='My Action'display_name='Enroll to sub-study'model='myapp.enroll'show_link_to_changelist=Trueadmin_site_name='myapp_admin'priority=HIGH_PRIORITYcreate_by_user=Falsesingleton=True

创建下一个操作项的操作项

要使一个操作项在关闭后打开另一个操作项,请设置下一个操作

classAeInitialAction(Action):name=AE_INITIAL_ACTIONdisplay_name='Submit AE Initial Report'model='ambition_ae.aeinitial'show_on_dashboard=Trueinstructions='Complete the initial report and forward to the TMG'priority=HIGH_PRIORITYnext_actions=[AeFollowupAction]

如果下一个操作的条件基于某些其他信息,请在操作项上声明“获取下一个操作”并返回所需的操作项列表。

classAeInitialAction(Action):...defget_next_actions(self):next_actions=[]try:self.reference_model_cls().objects.get(ae_initial=self.model_obj.ae_initial)exceptMultipleObjectsReturned:passelse:if(self.model_obj.ae_initial.ae_classification!=self.model_obj.ae_classification):next_actions=[self]returnnext_actions

带有通知的操作项

操作项可以与来自edc_notification的通知相关联,以便在创建操作时,将通知(电子邮件或短信)发送给注册接收它的人。

''action`,ActionWithNotification`的子类向操作添加通知。当操作由site_action_items注册时,将自动注册该操作的通知。

例如:

classAeTmgAction(ActionWithNotification):name=AE_TMG_ACTIONdisplay_name="TMG AE Report pending"notification_display_name="TMG AE Report"parent_action_names=[AE_INITIAL_ACTION],reference_model="ambition_ae.aetmg"related_reference_model="ambition_ae.aeinitial"related_reference_fk_attr="ae_initial"show_link_to_changelist=Trueadmin_site_name="ambition_ae_admin"

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
带有嵌套JAR的java RCP ClassNotFoundException   java在输入框中设置默认值,crud应用程序使用spring   java如何在Heroku中使用fs创建新文件   java将JPanel放在JFrame中   java这个正则表达式会匹配“i.imgur.com/xxx”吗?   java在片段内创建RecylerView,而无需在Android中设置片段   Android上Groovy导致java错误的双精度浮点精度损失   swing Java查找JFrame属于JPanel的内容   java Spring junit自连线自定义类本身必须有构造函数吗?   java textswitcher支持前面的文本   从Android客户端到JAXRS的java Post自定义对象   java如何检索JSON数据并使用MPAndroidChart绘制折线图,以及在安卓上的改进   拒绝用户“root”@“localhost”的java c3p0访问(使用密码“是”)   使用Selenium Webdriver自动化ExtJS应用程序时java面临的问题