update conditions
This commit is contained in:
+32
-31
@@ -187,29 +187,33 @@ def series_detail(request, pk, finding_pk=None):
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_atlas_editor
|
||||
#@user_is_atlas_editor
|
||||
def condition_detail(request, pk):
|
||||
condition = get_object_or_404(Condition, pk=pk)
|
||||
|
||||
form = ConditionAutocompleteForm()
|
||||
|
||||
can_merge = False
|
||||
|
||||
if request.user.is_superuser or request.user.groups.filter(name="atlas_editor").exists():
|
||||
can_merge = True
|
||||
|
||||
# logging.debug(atlas.subspecialty.first().name.all())
|
||||
return render(
|
||||
request,
|
||||
"atlas/condition_detail.html",
|
||||
{
|
||||
"condition": condition,
|
||||
"form": form
|
||||
},
|
||||
{"condition": condition, "form": form, "can_merge": can_merge},
|
||||
)
|
||||
|
||||
#class GetConditionAutocomplete(HTMXAutoComplete):
|
||||
|
||||
# class GetConditionAutocomplete(HTMXAutoComplete):
|
||||
# name = "conditions"
|
||||
# multiselect = False
|
||||
#
|
||||
# class Meta:
|
||||
# model = Condition
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_atlas_editor
|
||||
def condition_merge(request, pk_to_merge):
|
||||
@@ -217,7 +221,7 @@ def condition_merge(request, pk_to_merge):
|
||||
raise Http404
|
||||
|
||||
condition_to_merge = get_object_or_404(Condition, pk=pk_to_merge)
|
||||
#condition_to_merge_into = get_object_or_404(Condition, pk=pk_to_merge_into)
|
||||
# condition_to_merge_into = get_object_or_404(Condition, pk=pk_to_merge_into)
|
||||
|
||||
print(condition_to_merge.case_set)
|
||||
if condition_to_merge.rcr_curriculum:
|
||||
@@ -233,26 +237,24 @@ def condition_merge(request, pk_to_merge):
|
||||
if condition_to_merge == condition_to_merge_into:
|
||||
return HttpResponse("You cannot merge into the same condition.")
|
||||
|
||||
|
||||
# move all relevant relationships
|
||||
cases = condition_to_merge.case_set.all().values_list("id", flat=True)
|
||||
condition_to_merge_into.case_set.add(cases)
|
||||
#cases = Case.objects.filter(condition=condition_to_merge)
|
||||
#cases.update(condition=condition_to_merge_into)
|
||||
# cases = Case.objects.filter(condition=condition_to_merge)
|
||||
# cases.update(condition=condition_to_merge_into)
|
||||
|
||||
differentials = Differential.objects.filter(condition=condition_to_merge)
|
||||
differentials.update(condition=condition_to_merge_into)
|
||||
|
||||
return HttpResponse("Merged")
|
||||
|
||||
#conditions = Condition.objects.all()
|
||||
|
||||
#return render(request, "atlas/condition_options.html", {"conditions": conditions})
|
||||
# conditions = Condition.objects.all()
|
||||
|
||||
# return render(request, "atlas/condition_options.html", {"conditions": conditions})
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_atlas_editor
|
||||
#@user_is_atlas_editor
|
||||
def subspecialty_detail(request, pk):
|
||||
subspecialty = get_object_or_404(Subspecialty, pk=pk)
|
||||
|
||||
@@ -267,7 +269,7 @@ def subspecialty_detail(request, pk):
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_atlas_editor
|
||||
#@user_is_atlas_editor
|
||||
def presentation_detail(request, pk):
|
||||
presentation = get_object_or_404(Presentation, pk=pk)
|
||||
|
||||
@@ -282,7 +284,7 @@ def presentation_detail(request, pk):
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_atlas_editor
|
||||
#@user_is_atlas_editor
|
||||
def pathological_process_detail(request, pk):
|
||||
pathological_process = get_object_or_404(PathologicalProcess, pk=pk)
|
||||
|
||||
@@ -297,7 +299,7 @@ def pathological_process_detail(request, pk):
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_atlas_editor
|
||||
#@user_is_atlas_editor
|
||||
def structure_detail(request, pk):
|
||||
structure = get_object_or_404(Structure, pk=pk)
|
||||
|
||||
@@ -312,7 +314,7 @@ def structure_detail(request, pk):
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_atlas_editor
|
||||
#@user_is_atlas_editor
|
||||
def finding_detail(request, pk):
|
||||
finding = get_object_or_404(Finding, pk=pk)
|
||||
|
||||
@@ -356,9 +358,9 @@ def user_collections(request):
|
||||
|
||||
return render(request, "atlas/user_collections.html", {"collections": collections})
|
||||
|
||||
|
||||
@login_required
|
||||
def user_uploads_series(request, series_instance_uid: str):
|
||||
|
||||
# We don't restrict to teh uploading user here. Should we?
|
||||
dicoms = UncategorisedDicom.objects.filter(series_instance_uid=series_instance_uid)
|
||||
|
||||
@@ -366,9 +368,10 @@ def user_uploads_series(request, series_instance_uid: str):
|
||||
raise Http404("Series not found")
|
||||
|
||||
return render(
|
||||
request, "atlas/user_upload_viewer.html", {"dicoms": dicoms, "series_id": series_instance_uid}
|
||||
request,
|
||||
"atlas/user_upload_viewer.html",
|
||||
{"dicoms": dicoms, "series_id": series_instance_uid},
|
||||
)
|
||||
|
||||
|
||||
|
||||
@login_required
|
||||
@@ -655,9 +658,7 @@ class SeriesUpdate(
|
||||
return super().form_invalid(form)
|
||||
|
||||
|
||||
class ConditionUpdate(
|
||||
RevisionMixin, LoginRequiredMixin, AuthorOrCheckerRequiredMixin, UpdateView
|
||||
):
|
||||
class ConditionUpdate(RevisionMixin, LoginRequiredMixin, UpdateView):
|
||||
model = Condition
|
||||
form_class = ConditionForm
|
||||
|
||||
@@ -667,9 +668,7 @@ class ConditionCreate(RevisionMixin, LoginRequiredMixin, CreateView):
|
||||
form_class = ConditionForm
|
||||
|
||||
|
||||
class FindingUpdate(
|
||||
RevisionMixin, LoginRequiredMixin, AuthorOrCheckerRequiredMixin, UpdateView
|
||||
):
|
||||
class FindingUpdate(RevisionMixin, LoginRequiredMixin, UpdateView):
|
||||
model = Finding
|
||||
form_class = FindingForm
|
||||
|
||||
@@ -679,9 +678,7 @@ class FindingCreate(RevisionMixin, LoginRequiredMixin, CreateView):
|
||||
form_class = FindingForm
|
||||
|
||||
|
||||
class StructureUpdate(
|
||||
RevisionMixin, LoginRequiredMixin, AuthorOrCheckerRequiredMixin, UpdateView
|
||||
):
|
||||
class StructureUpdate(RevisionMixin, LoginRequiredMixin, UpdateView):
|
||||
model = Structure
|
||||
form_class = StructureForm
|
||||
|
||||
@@ -995,12 +992,14 @@ def series_order_dicom(request, pk):
|
||||
|
||||
return redirect("atlas:series_detail", pk=pk)
|
||||
|
||||
|
||||
@login_required
|
||||
def series_image_dicom(request, pk):
|
||||
image = get_object_or_404(SeriesImage, pk=pk)
|
||||
|
||||
return render(request, "atlas/series_image_dicom.html", {"image": image})
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_author_or_atlas_series_checker
|
||||
def series_anonymise_dicom(request, pk):
|
||||
@@ -1114,6 +1113,7 @@ class ConditionAutocomplete(autocomplete.Select2QuerySetView):
|
||||
|
||||
return qs
|
||||
|
||||
|
||||
class ConditionAutocompleteRCRCurriculum(autocomplete.Select2QuerySetView):
|
||||
def get_queryset(self):
|
||||
# Don't forget to filter out results depending on the visitor !
|
||||
@@ -1131,6 +1131,7 @@ class ConditionAutocompleteRCRCurriculum(autocomplete.Select2QuerySetView):
|
||||
|
||||
return qs
|
||||
|
||||
|
||||
class PresentationAutocomplete(autocomplete.Select2QuerySetView):
|
||||
def get_queryset(self):
|
||||
# Don't forget to filter out results depending on the visitor !
|
||||
@@ -1186,7 +1187,7 @@ class StructureAutocomplete(autocomplete.Select2QuerySetView):
|
||||
|
||||
|
||||
@login_required
|
||||
@user_is_atlas_editor
|
||||
# @user_is_atlas_editor
|
||||
def categories_list(request):
|
||||
# condition = get_object_or_404(Condition, pk=pk)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user