Commit 4bacf8a9 authored by Gladys Forte's avatar Gladys Forte

Restrict a requestor to submit a CR without atleast 1 approver

parent e38d975e
...@@ -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)
...@@ -1234,6 +1234,16 @@ class ChangeRequestFormPost(APIView): ...@@ -1234,6 +1234,16 @@ class ChangeRequestFormPost(APIView):
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',
......
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