Commit 2694ed7f authored by Gladys Forte's avatar Gladys Forte

Merge pull request #735 in RMS/api-main-service from core-dev-gladys to RMSv2

* commit '4bacf8a9':
  Restrict a requestor to submit a CR without atleast 1 approver
  commeny
parents d6e8e78d 4bacf8a9
...@@ -1206,7 +1206,7 @@ class ChangeRequestFormPost(APIView): ...@@ -1206,7 +1206,7 @@ class ChangeRequestFormPost(APIView):
'template_no': form_header['template_no'] 'template_no': form_header['template_no']
} }
# sp1 = transaction.savepoint() # nothing will save to db sp1 = transaction.savepoint() # nothing will save to db
serializer = ChangeRequestFormHeaderSerializer( serializer = ChangeRequestFormHeaderSerializer(
data=form_header_data) data=form_header_data)
...@@ -1233,6 +1233,16 @@ class ChangeRequestFormPost(APIView): ...@@ -1233,6 +1233,16 @@ class ChangeRequestFormPost(APIView):
frm_approver['form_code'] = frm_id frm_approver['form_code'] = frm_id
counter = counter + 1 counter = counter + 1
data_list_approver.append(frm_approver) data_list_approver.append(frm_approver)
if counter == 2 and serializer.data['status'].lower() == 'pending':
transaction.savepoint_rollback(sp1)
message = {
'code': 400,
'status': 'failed',
'message': 'Please select at least 1 approver before submitting this request.',
}
return Response(message, status=status.HTTP_400_BAD_REQUEST)
serializerApprover = ChangeRequestFormApproversSerializer( serializerApprover = ChangeRequestFormApproversSerializer(
data=data_list_approver, many=True) data=data_list_approver, many=True)
...@@ -1364,7 +1374,7 @@ class ChangeRequestFormPost(APIView): ...@@ -1364,7 +1374,7 @@ class ChangeRequestFormPost(APIView):
return Response(message, status=status.HTTP_201_CREATED) return Response(message, status=status.HTTP_201_CREATED)
except ValidationError as e: except ValidationError as e:
# transaction.savepoint_rollback(sp1) transaction.savepoint_rollback(sp1)
message = { message = {
'code': 400, 'code': 400,
'status': 'failed', 'status': 'failed',
...@@ -1373,7 +1383,7 @@ class ChangeRequestFormPost(APIView): ...@@ -1373,7 +1383,7 @@ class ChangeRequestFormPost(APIView):
return Response(message, status=status.HTTP_400_BAD_REQUEST) return Response(message, status=status.HTTP_400_BAD_REQUEST)
except Exception as e: except Exception as e:
# transaction.savepoint_rollback(sp1) transaction.savepoint_rollback(sp1)
message = { message = {
'code': 500, 'code': 500,
'status': 'failed', 'status': 'failed',
......
...@@ -391,7 +391,7 @@ class ChangeRequestTemplatePost(APIView): ...@@ -391,7 +391,7 @@ class ChangeRequestTemplatePost(APIView):
if serializerApprover.is_valid(raise_exception=True): if serializerApprover.is_valid(raise_exception=True):
serializerApprover.save() serializerApprover.save()
# create template stakes # create template stakes
if template_header['tmp_stakes']: if template_header['tmp_stakes']:
tmp_stakes = template_header['tmp_stakes'] tmp_stakes = template_header['tmp_stakes']
......
...@@ -1192,7 +1192,7 @@ class OverdueTrigger(models.Model): ...@@ -1192,7 +1192,7 @@ class OverdueTrigger(models.Model):
class Meta: class Meta:
db_table = 'trigger_overdue' db_table = 'trigger_overdue'
# comment
""" """
********************** **********************
*** AMS TABLES *** *** AMS TABLES ***
......
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