Commit dbf5046f authored by Gladys Forte's avatar Gladys Forte

Merge pull request #390 in RMS/api-main-service from gladys-dev2 to RMSv2

* commit '043c02a8':
  uploaded y as object
  forgot password
parents e88f6902 043c02a8
......@@ -158,7 +158,7 @@ class ForgotPassword(APIView):
created=date_now,
timeout_at=timeout_at
).save()
url = f"{settings.FRONT_END_URL}/forgot-password/reset"\
f"?token={TOKEN}"
......@@ -190,10 +190,15 @@ class ValidateForgotPasswordResetToken(APIView):
def post(self, request, *args, **kwargs):
token = request.data['token']
date_now = datetime.now()
existingToken = AuthToken.objects.filter(token=token).first()
if existingToken:
if not existingToken.is_active:
raise Exception('Request is no longer active')
elif existingToken.timeout_at < date_now:
raise Exception('Token already expired')
return Response(data={
"username": existingToken.user.username,
"email": existingToken.user.email
......
......@@ -32,6 +32,18 @@ class ChangeRequestFormAttachmentsSerializer(
class ChangeRequestFormAttachmentsFileUploadSerializer(
serializers.ModelSerializer
):
def to_representation(self, instance):
ret = super().to_representation(instance)
user_object = {
"id": instance.uploaded_by.id,
"name": instance.uploaded_by.name,
"username": instance.uploaded_by.username,
"code": instance.uploaded_by.code,
"email": instance.uploaded_by.email,
"contact_no": instance.uploaded_by.contact_no
}
ret['uploaded_by'] = user_object
return ret
class Meta:
model = models.ChangeRequestFormAttachments
......
......@@ -760,10 +760,6 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet):
approver_instance.date_sent)
elif action.lower() == 'rejected':
models.ChangeRequestFormHeader.objects.filter(
form_code=form_code
).update(status='Rejected')
# send email to vendor
if delegation.lower() == 'requestor':
......@@ -774,7 +770,33 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet):
notification_msg, action,
remarks, level
)
prev_level = int(level) - 1
# reset last vendor details
models.ChangeRequestFormApprovers.objects.filter(
Q(form_code=form_code)&
Q(level=int(prev_level))
).update(
is_action=True,
action='Acknowledged',
action_date=None,
date_sent=datetime.now()
)
else:
# prev_vendor = models.ChangeRequestFormApprovers.objects.filter(
# Q(form_code=form_code) &
# Q(level__lte=int(level) &
# Q(action='Completed') &
# Q(delegation='Vendor/Implementor')
# )
# if prev_vendor.count() > 0:
models.ChangeRequestFormHeader.objects.filter(
form_code=form_code
).update(status='Rejected')
# EMAIL CODE FOR REQUESTOR
requestor_notification_msg = REQUESTOR_REJECT_MESSAGE.split(';')[0]
......
# Generated by Django 2.2 on 2019-10-16 12:46
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('entities', '0020_masterattachment_attch_ref'),
]
operations = [
migrations.AddField(
model_name='changerequestformapprovers',
name='tmp_approver',
field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='entities.ChangeRequestTemplateApprovers', to_field='code'),
),
]
......@@ -746,6 +746,12 @@ class ChangeRequestFormApprovers(BaseApprover):
null=True)
is_action = models.BooleanField(
default=False)
tmp_approver = models.ForeignKey(
ChangeRequestTemplateApprovers,
on_delete=models.PROTECT,
blank=True,
null=True,
to_field='code')
class Meta:
db_table = 'change_request_form_approvers'
......
......@@ -9,7 +9,7 @@
<h3 style="color:#888888;">Change Request Rejected</h3><br>
<p>Dear {name},</p><br>
<p>A change request you have completed has been rejected by the requestor.Please see the details of your change request below.</p><br>
<p>A change request you have completed has been rejected by the {delegation}.Please see the details of your change request below.</p><br>
<b>Rejected By</b><br>{action_by}<br><br>
<b>Routing Level</b><br>{routing_level}<br><br>
......
Markdown is supported
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