.
This commit is contained in:
+25
-6
@@ -37,6 +37,10 @@ def image_directory_path(instance, filename):
|
|||||||
return u"rapids/picture/{0}".format(filename)
|
return u"rapids/picture/{0}".format(filename)
|
||||||
|
|
||||||
|
|
||||||
|
def get_answer_compare(string):
|
||||||
|
s = string.strip().lower()
|
||||||
|
s = s.translate(str.maketrans('', '', string.punctuation.replace("#", "")))
|
||||||
|
return s
|
||||||
|
|
||||||
class Abnormality(models.Model):
|
class Abnormality(models.Model):
|
||||||
name = models.CharField(max_length=200,
|
name = models.CharField(max_length=200,
|
||||||
@@ -101,12 +105,7 @@ class Answer(models.Model):
|
|||||||
|
|
||||||
def clean(self):
|
def clean(self):
|
||||||
if self.answer:
|
if self.answer:
|
||||||
self.answer = self.answer.strip()
|
self.answer_compare = get_answer_compare(self.answer)
|
||||||
|
|
||||||
s = self.answer.lower()
|
|
||||||
s = s.translate(str.maketrans('', '', string.punctuation.replace("#", "")))
|
|
||||||
|
|
||||||
self.answer_compare = s
|
|
||||||
|
|
||||||
|
|
||||||
@reversion.register
|
@reversion.register
|
||||||
@@ -255,6 +254,14 @@ class Rapid(models.Model):
|
|||||||
def get_unmarked_answer_count(self):
|
def get_unmarked_answer_count(self):
|
||||||
return len(self.get_unmarked_answers())
|
return len(self.get_unmarked_answers())
|
||||||
|
|
||||||
|
def get_compare_answers(self):
|
||||||
|
return set(
|
||||||
|
[
|
||||||
|
i.answer_compare
|
||||||
|
for i in self.answers.filter()
|
||||||
|
]
|
||||||
|
)
|
||||||
|
|
||||||
def get_marked_answers(self):
|
def get_marked_answers(self):
|
||||||
return set(
|
return set(
|
||||||
[
|
[
|
||||||
@@ -300,6 +307,18 @@ class Rapid(models.Model):
|
|||||||
#def GetNonFeedbackQuestionImages(self):
|
#def GetNonFeedbackQuestionImages(self):
|
||||||
#return self.get_images()
|
#return self.get_images()
|
||||||
|
|
||||||
|
def get_suggested_answers(self):
|
||||||
|
answers = []
|
||||||
|
for r in self.region.all():
|
||||||
|
for a in self.abnormality.all():
|
||||||
|
answers.append("{} {}".format(r.name, a.name))
|
||||||
|
|
||||||
|
compare_answers = self.get_compare_answers()
|
||||||
|
|
||||||
|
new_answers = [a for a in answers if get_answer_compare(a) not in compare_answers]
|
||||||
|
|
||||||
|
return new_answers
|
||||||
|
|
||||||
|
|
||||||
class RapidImage(models.Model):
|
class RapidImage(models.Model):
|
||||||
rapid = models.ForeignKey(Rapid,
|
rapid = models.ForeignKey(Rapid,
|
||||||
|
|||||||
@@ -59,9 +59,21 @@
|
|||||||
{% endfor %}
|
{% endfor %}
|
||||||
</ul>
|
</ul>
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
<summary>
|
||||||
|
<detail><h3>Suggested answers<h3></detail>
|
||||||
|
<ul>
|
||||||
|
{% for ans in question.get_suggested_answers %}
|
||||||
|
<li>{{ans}}</li>
|
||||||
|
{% endfor %}
|
||||||
|
</ul>
|
||||||
|
</div>
|
||||||
|
</summary>
|
||||||
|
|
||||||
|
<summary>
|
||||||
|
<detail><h3>Image viewer</h3></detail>
|
||||||
<div id="single-dicom-viewer" class="dicom-viewer" data-images="{{ question.get_image_urls }}" data-annotations=''></div>
|
<div id="single-dicom-viewer" class="dicom-viewer" data-images="{{ question.get_image_urls }}" data-annotations=''></div>
|
||||||
</div>
|
</div>
|
||||||
|
</summary>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
$(document).ready(function () {
|
$(document).ready(function () {
|
||||||
|
|||||||
Reference in New Issue
Block a user