def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: diagnoses = (self.get_psychiatric_diagnoses(req) + self.get_medical_diagnoses()) return [ CtvInfo( heading=ws.webify(self.wxstring(req, "discharge_reason")), content=self.get_discharge_reason(req), ), CtvInfo( heading=ws.webify(self.wxstring(req, "referral_reason_t")), content=", ".join(self.get_referral_reasons(req)), ), CtvInfo( heading=ws.webify(self.wxstring(req, "diagnoses_t")), content=", ".join(diagnoses), ), CtvInfo( heading=ws.webify(self.wxstring(req, "management_t")), content=", ".join(self.get_managements(req)), ), CtvInfo( heading=ws.webify(self.wxstring(req, "outcome_t")), content=self.outcome, ), ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE infolist = [ CtvInfo(content="Pertains to: {}. Category: {}.".format( format_datetime(self.date_pertains_to, DateFormat.LONG_DATE), self.get_full_description(req))) ] if self.comments: infolist.append(CtvInfo(content=ws.webify(self.comments))) return infolist
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE category = (("Meets" if self.meets_criteria() else "Does not meet") + " criteria for mixed affective episode") infolist = [ CtvInfo(content="Pertains to: {}. {}.".format( format_datetime(self.date_pertains_to, DateFormat.LONG_DATE), category)) ] if self.comments: infolist.append(CtvInfo(content=ws.webify(self.comments))) return infolist
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content="PSWQ total score {} (range {}–{})".format( self.total_score(), self.MIN_TOTAL, self.MAX_TOTAL)) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content="BADLS total score {}/60 (lower is better)".format( self.total_score())) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo( content=f"CAGE score {self.total_score()}/{self.NQUESTIONS}") ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: return [ CtvInfo( heading=ws.webify(self.wxstring(req, "f_referral_reason_t")), content=self.referral_reason, ) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content="{} total score {}/{}".format( self.shortname, self.total_score(), self.MAX_SCORE)) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content=f"PSWQ total score {self.total_score()} " f"(range {self.MIN_TOTAL}–{self.MAX_TOTAL})") ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content=(f"{ws.webify(self.bdi_scale)} " f"total score {self.total_score()}/{MAX_SCORE}")) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content=f"WSAS total score " f"{self.total_score()}/{self.max_score()}") ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content=(f"{self.shortname} total score " f"{self.total_score()}/{self.MAX_SCORE}")) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo( content="CGI-I rating: {}".format(self.get_rating_text(req))) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo( content="AUDIT-C total score {}/12".format(self.total_score())) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content="WSAS total score {t}/{m}".format( t=self.total_score(), m=self.max_score())) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE a = self.attn_score() m = self.mem_score() f = self.fluency_score() lang = self.lang_score() v = self.vsp_score() t = a + m + f + lang + v text = ("ACE-III total: {t}/{tmax} " "(attention {a}/{amax}, memory {m}/{mmax}, " "fluency {f}/{fmax}, language {lang}/{lmax}, " "visuospatial {v}/{vmax})").format(t=t, a=a, m=m, f=f, lang=lang, v=v, tmax=TOTAL_MAX, amax=ATTN_MAX, mmax=MEMORY_MAX, fmax=FLUENCY_MAX, lmax=LANG_MAX, vmax=VSP_MAX) return [CtvInfo(content=text)]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content="SMAST total score {}/{} ({})".format( self.total_score(), self.NQUESTIONS, self.likelihood(req))) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: infolist = [] for item in self.items: infolist.append( CtvInfo(content="<b>{}</b>: {}".format( ws.webify(item.code), ws.webify(item.description)))) return infolist
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content="Quality of life: {}".format( ws.number_to_dp(self.utility, DP))) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content="HAM-D-7 total score {}/{} ({})".format( self.total_score(), self.MAX_SCORE, self.severity(req))) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content=( f"Total score {ws.number_to_dp(self.total_score(), DP)} " f"(range {self.MIN_SCORE}–{self.MAX_SCORE}, higher better)")) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE contact_type = "Patient" if self.patient_contact else "Non-patient" return [ CtvInfo(content="{} contact. Duration (hours:minutes) {}.".format( contact_type, get_duration_h_m(self.start, self.end))) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content=( f"PHQ-15 total score {self.total_score()}/{self.MAX_TOTAL} " # noqa: E501 f"({self.severity( req)})")) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content=f"SLUMS total score " f"{self.total_score()}/{self.MAX_SCORE} " f"({self.category(req)})") ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE classification = "positive" if self.is_positive() else "negative" return [ CtvInfo(content="FAST total score {}/{} ({})".format( self.total_score(), self.MAX_SCORE, classification)) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content=( f"GAD-7 total score {self.total_score()}/{self.MAX_SCORE} " f"({self.severity(req)})")) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo( content="anxiety score {}/{}, depression score {}/21".format( self.anxiety_score(), self.MAX_ANX_SCORE, self.depression_score())) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content=( "PANSS total score {} (P {}, N {}, G {}, " "composite P–N {})".format(self.total_score(), self.score_p( ), self.score_n(), self.score_g(), self.composite()))) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: if not self.is_complete(): return CTV_INCOMPLETE t = self.total_score() c = ws.number_to_dp(self.composite_score(), DP, default="?") return [ CtvInfo(content="PDSS total score {t}/{mt} (composite {c}/{mc})". format(t=t, mt=self.MAX_TOTAL, c=c, mc=self.MAX_COMPOSITE)) ]
def get_clinical_text(self, req: CamcopsRequest) -> List[CtvInfo]: scoredict = self.get_score() if not self.is_complete(): return CTV_INCOMPLETE return [ CtvInfo(content=( f"Total: {scoredict['total']}/{self.MAX_TOTAL}; " f"working memory index {scoredict['wm']}/{self.MAX_WM}")) ]