Commit 02810084 authored by Gladys Forte's avatar Gladys Forte

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

* commit '3191cf30':
  rejected update
parents dbf5046f 3191cf30
......@@ -774,44 +774,81 @@ class ChangeRequestFormsViewset(viewsets.ModelViewSet):
prev_level = int(level) - 1
# reset last vendor details
models.ChangeRequestFormApprovers.objects.filter(
Q(form_code=form_code)&
Q(form_code=form_code) &
Q(level=int(prev_level))
).update(
is_action=True,
is_action=True,
action='Acknowledged',
action_date=None,
action_date=datetime.now(),
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]
# SEND EMAIL AND NOTIF TO REQUESTOR
send_mail_requestor(
current_user, form_code, delegation,
requestor_notification_msg, action,
remarks, level
prev_vendor = models.ChangeRequestFormApprovers.objects.filter(
Q(form_code=form_code) &
Q(action='Completed') &
Q(delegation='Vendor/Implementor') &
Q(level__lte=int(level))
)
if not 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]
# SEND EMAIL AND NOTIF TO REQUESTOR
send_mail_requestor(
current_user, form_code, delegation,
requestor_notification_msg, action,
remarks, level
)
else:
# EMAIL CODE FOR REQUESTOR
requestor_notification_msg = REQUESTOR_REJECT_MESSAGE.split(';')[0]
# SEND EMAIL AND NOTIF TO REQUESTOR
send_mail_requestor(
current_user, form_code, delegation,
requestor_notification_msg, action,
remarks, level
)
notification_msg = VENDOR_REJECT_MESSAGE.split(';')[0]
send_mail_vendor(
current_user, form_code, 'others',
notification_msg, action,
remarks, level
)
last_action_vendor = prev_vendor.last()
models.ChangeRequestFormApprovers.objects.filter(
code=last_action_vendor
).update(
is_action=True,
action='Acknowledged',
action_date=datetime.now(),
date_sent=datetime.now()
)
# update is_action for current level
if last_action_vendor:
level = last_action_vendor.level + 1
models.ChangeRequestFormApprovers.objects.filter(
Q(form_code=form_code) & Q(level=int(level))
Q(form_code=form_code) & Q(level__gte=int(level))
).update(
is_action=False
is_action=False,
action=None,
remarks=None,
action_date=None,
date_sent=None
)
elif action.lower() == 'completed':
......
......@@ -302,7 +302,8 @@ def form_add_edit_delete(form_request_body,
"form_code": form_code
}
data = {**i, **frm_code}
serializer = serializer_data(data=data)
serializer = serializer_data(data=data,
context={"request":self.request})
serializer.is_valid(raise_exception=True)
self.perform_create(serializer)
......@@ -386,7 +387,8 @@ def attachment_add_edit_delete(form_request_body,
if not data_old == data_new:
serializer = serializer_data(frm_instance,
data=data,
partial=partial)
partial=partial,
context={"request":self.request})
serializer.is_valid(raise_exception=True)
......@@ -411,7 +413,8 @@ def attachment_add_edit_delete(form_request_body,
"uploaded_by": id_number
}
data = {**i, **frm_code}
serializer = serializer_data(data=data)
serializer = serializer_data(data=data,
context={"request":self.request})
serializer.is_valid(raise_exception=True)
self.perform_create(serializer)
......
......@@ -528,6 +528,9 @@ def admin_changepassword(args):
# RMS-CRREJECTED ; RMS-CRREJECTED-VENDOR
def routing_table_actions(args):
email_template = ''
name = args[0]
action_by = args[1]
routing_level = str(args[2])
......@@ -559,11 +562,11 @@ def routing_table_actions(args):
subject = 'Resource Management System - Change Request Accepted'
elif args[12].lower() == 'rejected':
subject = 'Resource Management System - Change Request Rejected'
if args[13].lower() == 'requestor':
if args[13].lower() == 'requestor' or args[13].lower() == 'others':
email_template = 'RMS-CRREJECTED-VENDOR.html'
else:
email_template = 'RMS-CRREJECTED.html'
F = open(os.path.join(settings.EMAIL_TEMPLATES_ROOT, email_template), 'r')
FC = F.read()
......@@ -581,6 +584,12 @@ def routing_table_actions(args):
if args[12].lower() == 'rejected':
FC = FC.replace('{remarks}', remarks)
if email_template == 'RMS-CRREJECTED-VENDOR.html':
if args[13].lower() == 'requestor':
FC = FC.replace('{delegation}', 'requestor')
else:
FC = FC.replace('{delegation}', 'approver')
try:
send_mail(
......
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