a few updates to rcr mig
This commit is contained in:
+1
-1
@@ -21,7 +21,7 @@ from django.contrib.auth.models import User
|
|||||||
class ItemForm(ModelForm):
|
class ItemForm(ModelForm):
|
||||||
class Meta:
|
class Meta:
|
||||||
model = Item
|
model = Item
|
||||||
exclude = ["rcr_platform_id", "name", "assessed_by", "assessed_date"]
|
exclude = ["rcr_platform_id", "name", "assessed_by", "assessed_date", "assigned_to"]
|
||||||
#fields = ["category", "level"]
|
#fields = ["category", "level"]
|
||||||
|
|
||||||
class AssessorAssignmentForm(Form):
|
class AssessorAssignmentForm(Form):
|
||||||
|
|||||||
@@ -0,0 +1,21 @@
|
|||||||
|
# Generated by Django 4.1.4 on 2023-12-13 20:24
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
dependencies = [
|
||||||
|
("rcr", "0005_item_assigned_to_alter_item_assessed_by"),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AddField(
|
||||||
|
model_name="item",
|
||||||
|
name="outcome_free_text",
|
||||||
|
field=models.CharField(
|
||||||
|
default="",
|
||||||
|
help_text="Reason for outcome (if not available above)",
|
||||||
|
max_length=255,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
# Generated by Django 4.1.4 on 2023-12-13 20:29
|
||||||
|
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('rcr', '0006_item_outcome_free_text'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='item',
|
||||||
|
name='outcome_free_text',
|
||||||
|
field=models.CharField(blank=True, default='', help_text='Reason for outcome (if not available above)', max_length=255),
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
# Generated by Django 4.1.4 on 2023-12-13 21:56
|
||||||
|
|
||||||
|
from django.db import migrations
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('rcr', '0007_alter_item_outcome_free_text'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterModelOptions(
|
||||||
|
name='item',
|
||||||
|
options={'ordering': ('pk',)},
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -30,9 +30,13 @@ class Item(models.Model):
|
|||||||
|
|
||||||
outcome = models.ForeignKey("Outcome", on_delete=models.SET_NULL, blank=True, null=True)
|
outcome = models.ForeignKey("Outcome", on_delete=models.SET_NULL, blank=True, null=True)
|
||||||
outcome_reason = models.ForeignKey("OutcomeReason", on_delete=models.SET_NULL, blank=True, null=True)
|
outcome_reason = models.ForeignKey("OutcomeReason", on_delete=models.SET_NULL, blank=True, null=True)
|
||||||
|
outcome_free_text = models.CharField(max_length=255, help_text="Reason for outcome (if not available above)", default="", blank=True)
|
||||||
|
|
||||||
completed = models.BooleanField(default=False)
|
completed = models.BooleanField(default=False)
|
||||||
|
|
||||||
|
class Meta:
|
||||||
|
ordering = ("pk",)
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.name
|
return self.name
|
||||||
|
|
||||||
|
|||||||
@@ -10,6 +10,11 @@
|
|||||||
<form method="post">{% csrf_token %}
|
<form method="post">{% csrf_token %}
|
||||||
{{ form|crispy }}
|
{{ form|crispy }}
|
||||||
<input type="submit" value="Update">
|
<input type="submit" value="Update">
|
||||||
|
|
||||||
|
{% if skip %}
|
||||||
|
<button> <a href="{% url 'rcr:radiology_update_next_skip_view' skip|add:1 %}">Skip</a> </button>
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
|
|
||||||
<details><summary> </summary>
|
<details><summary> </summary>
|
||||||
|
|||||||
@@ -18,5 +18,6 @@ urlpatterns = [
|
|||||||
path("radiology/completed/user/<int:user_pk>", views.radiology_index_completed_by_user, name="radiology_index_completed_by_user_view"),
|
path("radiology/completed/user/<int:user_pk>", views.radiology_index_completed_by_user, name="radiology_index_completed_by_user_view"),
|
||||||
path("radiology/item/<int:pk>/", views.ItemDetailView.as_view(), name="radiology_detail_view"),
|
path("radiology/item/<int:pk>/", views.ItemDetailView.as_view(), name="radiology_detail_view"),
|
||||||
path("radiology/item/next/update", views.ItemUpdateNextView.as_view(), name="radiology_update_next_view"),
|
path("radiology/item/next/update", views.ItemUpdateNextView.as_view(), name="radiology_update_next_view"),
|
||||||
|
path("radiology/item/next/update/skip/<int:skip>", views.ItemUpdateNextView.as_view(), name="radiology_update_next_skip_view"),
|
||||||
path("radiology/item/<int:pk>/update", views.ItemUpdateView.as_view(), name="radiology_update_view"),
|
path("radiology/item/<int:pk>/update", views.ItemUpdateView.as_view(), name="radiology_update_view"),
|
||||||
]
|
]
|
||||||
+17
-4
@@ -57,7 +57,7 @@ def radiology_index_completed(request, user_pk=None):
|
|||||||
|
|
||||||
assessor = None
|
assessor = None
|
||||||
if user_pk is not None:
|
if user_pk is not None:
|
||||||
items = Item.objects.filter(completed=True, assessed_by=user_pk)
|
items = Item.objects.filter(completed=True, assessed_by=user_pk).order_by("pk")
|
||||||
assessor = User.objects.get(pk=user_pk)
|
assessor = User.objects.get(pk=user_pk)
|
||||||
else:
|
else:
|
||||||
items = Item.objects.filter(completed=True)
|
items = Item.objects.filter(completed=True)
|
||||||
@@ -95,20 +95,33 @@ class ItemUpdateNextView(ItemUpdateBase):
|
|||||||
form_class = ItemForm
|
form_class = ItemForm
|
||||||
template_name = "rcr/item_update.html"
|
template_name = "rcr/item_update.html"
|
||||||
|
|
||||||
|
skip = 0
|
||||||
|
|
||||||
|
def get_context_data(self, **kwargs: Any) -> dict[str, Any]:
|
||||||
|
context = super().get_context_data(**kwargs)
|
||||||
|
context["skip"] = self.skip
|
||||||
|
|
||||||
|
return context
|
||||||
|
|
||||||
def get(self, request, *args, **kwargs):
|
def get(self, request, *args, **kwargs):
|
||||||
try:
|
try:
|
||||||
|
if "skip" in kwargs:
|
||||||
|
self.skip = kwargs["skip"]
|
||||||
self.object = self.get_object()
|
self.object = self.get_object()
|
||||||
print("What", self.object)
|
|
||||||
except Http404:
|
except Http404:
|
||||||
print("YES")
|
|
||||||
# redirect here
|
# redirect here
|
||||||
return redirect("rcr:radiology_index_view")
|
return redirect("rcr:radiology_index_view")
|
||||||
context = self.get_context_data(object=self.object)
|
context = self.get_context_data(object=self.object)
|
||||||
return self.render_to_response(context)
|
return self.render_to_response(context)
|
||||||
|
|
||||||
def get_object(self):
|
def get_object(self):
|
||||||
obj = Item.objects.filter(completed=False).first()
|
if self.skip < 1:
|
||||||
|
obj = Item.objects.filter(completed=False).order_by("pk").first()
|
||||||
|
else:
|
||||||
|
try:
|
||||||
|
obj = Item.objects.filter(completed=False)[self.skip]
|
||||||
|
except IndexError:
|
||||||
|
raise Http404
|
||||||
|
|
||||||
print("HELLO", obj)
|
print("HELLO", obj)
|
||||||
print(obj)
|
print(obj)
|
||||||
|
|||||||
Reference in New Issue
Block a user