Skip to content
Snippets Groups Projects
Commit edc2177f authored by dcz's avatar dcz
Browse files

LU assigment bugfix.

parent 5d32fd25
Branches
Tags
No related merge requests found
...@@ -22,7 +22,7 @@ export default { ...@@ -22,7 +22,7 @@ export default {
take () { take () {
$.ajax({ $.ajax({
type : 'post', type : 'post',
url : `/${lang}/semantics/frame_assign/${this.frame.id}/`, url : `/${lang}/semantics/frame_assign/${this.unifiedFrame.pk}/`,
dataType : 'json', dataType : 'json',
timeout : 60000, timeout : 60000,
}).then(() => { this.$emit('goToEdit', this.unifiedFrame.pk); }); }).then(() => { this.$emit('goToEdit', this.unifiedFrame.pk); });
...@@ -43,10 +43,13 @@ export default { ...@@ -43,10 +43,13 @@ export default {
timeout: 60000, timeout: 60000,
}).then(() => { this.$emit('refresh'); }); }).then(() => { this.$emit('refresh'); });
}, },
isReadyToProcess() { isReadyToProcess () {
return this.isLeksykograf() || (this.frame?.status === 'O' || this.frame?.status === 'G') && this.unifiedFrame?.status === 'O'; return (!this.isLeksykograf() && this.unifiedFrame?.status === 'G') || (this.isLeksykograf() && this.frame?.status === 'O');
}, },
isLeksykograf() { isReadyToGet () {
return this.isLeksykograf() && this.frame?.status === 'N';
},
isLeksykograf () {
return !has_permission("users.view_assignment"); return !has_permission("users.view_assignment");
}, },
setup_notes () { setup_notes () {
...@@ -84,11 +87,11 @@ export default { ...@@ -84,11 +87,11 @@ export default {
<div id="semantics-frames"></div> <div id="semantics-frames"></div>
<div class="text-center mb-3"> <div class="text-center mb-3">
<div v-if="unifiedFrame"> <div v-if="unifiedFrame">
<a class="btn btn-sm btn-outline-dark mr-2" v-if="frame?.status === 'N'" @click="markAsInvalid">{{ gettext('Błędna') }}</a> <a class="btn btn-sm btn-outline-dark mr-2" v-if="frame?.status === 'N'" @click="markAsInvalid">{{ !isLeksykograf() ? gettext('Zła') : gettext('Błędna') }}</a>
<a class="btn btn-sm btn-outline-dark mr-2" v-if="frame?.status === 'N'" @click="take">{{ gettext('Pobierz') }}</a> <a class="btn btn-sm btn-outline-dark mr-2" v-if="isReadyToGet()" @click="take">{{ gettext('Pobierz') }}</a>
<a <a
class="btn btn-sm btn-outline-dark mr-2" class="btn btn-sm btn-outline-dark mr-2"
v-if="isReadyToProcess() || isLeksykograf" v-if="isReadyToProcess()"
@click="$emit('goToEdit', this.unifiedFrame.pk)" @click="$emit('goToEdit', this.unifiedFrame.pk)"
> >
{{ isLeksykograf() ? gettext('Obrabiaj') : gettext('Sprawdź') }} {{ isLeksykograf() ? gettext('Obrabiaj') : gettext('Sprawdź') }}
......
...@@ -51,6 +51,7 @@ function slowal_frames2selecional_preferencies(unified_frame, slowal_frames) { ...@@ -51,6 +51,7 @@ function slowal_frames2selecional_preferencies(unified_frame, slowal_frames) {
var slowal_frame_argument_mapping = slowal_frame_mapping.slowal_frame_argument_mapping[j]; var slowal_frame_argument_mapping = slowal_frame_mapping.slowal_frame_argument_mapping[j];
let slowal_frame_argument = slowal_frame.arguments.find(o => o.argument_id === slowal_frame_argument_mapping.slowal_frame_agrument_id); let slowal_frame_argument = slowal_frame.arguments.find(o => o.argument_id === slowal_frame_argument_mapping.slowal_frame_agrument_id);
let unified_frame_argument = unified_frame.arguments.find(o => o.argument_id === slowal_frame_argument_mapping.unified_frame_agrument_id);
let preferenceEntry = unified_argument_2_selecional_preferencies[slowal_frame_argument_mapping.unified_frame_agrument_id]; let preferenceEntry = unified_argument_2_selecional_preferencies[slowal_frame_argument_mapping.unified_frame_agrument_id];
if(preferenceEntry == null) { if(preferenceEntry == null) {
......
...@@ -6,7 +6,7 @@ app_name = 'semantics' ...@@ -6,7 +6,7 @@ app_name = 'semantics'
urlpatterns = [ urlpatterns = [
path('frame_mark_as_invalid/<int:frame_pk>/', views.frame_mark_as_invalid, name='frame_mark_as_invalid'), path('frame_mark_as_invalid/<int:frame_pk>/', views.frame_mark_as_invalid, name='frame_mark_as_invalid'),
path('frame_assign/<int:frame_pk>/', views.frame_assign, name='frame_assign'), path('frame_assign/<int:unified_frame_pk>/', views.frame_assign, name='frame_assign'),
path('frame_confirm_invalid/<int:frame_pk>/', views.frame_confirm_invalid, name='frame_confirm_invalid'), path('frame_confirm_invalid/<int:frame_pk>/', views.frame_confirm_invalid, name='frame_confirm_invalid'),
path('frame_reject_invalid/<int:frame_pk>/', views.frame_reject_invalid, name='frame_reject_invalid'), path('frame_reject_invalid/<int:frame_pk>/', views.frame_reject_invalid, name='frame_reject_invalid'),
] ]
...@@ -4,6 +4,7 @@ from django.db import transaction ...@@ -4,6 +4,7 @@ from django.db import transaction
from django.shortcuts import get_object_or_404 from django.shortcuts import get_object_or_404
from common.decorators import ajax from common.decorators import ajax
from unifier.models import UnifiedFrame, UnifiedFrame2SlowalFrameMapping
from users.models import Assignment from users.models import Assignment
from . import choices from . import choices
...@@ -21,14 +22,19 @@ def frame_mark_as_invalid(request, frame_pk): ...@@ -21,14 +22,19 @@ def frame_mark_as_invalid(request, frame_pk):
@ajax(login_required=True, method='post') @ajax(login_required=True, method='post')
@transaction.atomic @transaction.atomic
def frame_assign(request, frame_pk): def frame_assign(request, unified_frame_pk):
frame = get_object_or_404( unifiedFrame = get_object_or_404(
Frame.objects.filter(status=choices.FrameStatus.NEW).select_for_update(), UnifiedFrame.objects,
pk=frame_pk, pk=unified_frame_pk,
) )
frame.status = choices.FrameStatus.PROCESSING
Assignment.assign(user=request.user, subject=frame) slowal_frames = [connection.slowal_frame for connection in unifiedFrame.unified_frame_2_slowal_frame.all()]
frame.save()
for slowal_frame in slowal_frames:
slowal_frame.status = choices.FrameStatus.PROCESSING
Assignment.assign(user=request.user, subject=slowal_frame)
slowal_frame.save()
return {} return {}
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment