Commit 2e827f53 authored by Gladys Forte's avatar Gladys Forte

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

* commit 'd71c401f':
  updated postman
  form header update
  save and submit initial
parents ebaed2e2 d71c401f
...@@ -73,8 +73,6 @@ class ChangeRequestFormHeaderSerializer( ...@@ -73,8 +73,6 @@ class ChangeRequestFormHeaderSerializer(
): ):
frm_approvers = ChangeRequestFormApproversSerializer( frm_approvers = ChangeRequestFormApproversSerializer(
many=True, read_only=True) many=True, read_only=True)
# frm_stakes = ChangeRequestFormStakeHoldersSerializer(
# many=True, required=False)
frm_stakes = ChangeRequestFormStakeHoldersSerializer( frm_stakes = ChangeRequestFormStakeHoldersSerializer(
many=True, read_only=True) many=True, read_only=True)
frm_attachments = ChangeRequestFormAttachmentsSerializer( frm_attachments = ChangeRequestFormAttachmentsSerializer(
...@@ -82,88 +80,6 @@ class ChangeRequestFormHeaderSerializer( ...@@ -82,88 +80,6 @@ class ChangeRequestFormHeaderSerializer(
frm_details = ChangeRequestFormDetailsSerializer( frm_details = ChangeRequestFormDetailsSerializer(
many=True, read_only=True) many=True, read_only=True)
# def update(self, instance, validated_data):
# Update the book instance
# instance.requested_to_template_name = validated_data['requested_to_template_name']
# instance.requested_to_objective = validated_data['requested_to_objective']
# instance.requested_to_target_date = validated_data['requested_to_target_date']
# instance.requested_to_priority = validated_data['requested_to_priority']
# instance.description = validated_data['description']
# instance.status = validated_data['status']
# instance.company_desc = validated_data['company_desc']
# instance.department_desc = validated_data['department_desc']
# instance.requested_desc = validated_data['requested_desc']
# instance.requested_to_template_id = validated_data['requested_to_template_id']
# instance.requested_to_company = validated_data['requested_to_company']
# instance.requested_to_department = validated_data['requested_to_department']
# instance.requested_to_user = validated_data['requested_to_user']
# instance.requested_by_user = validated_data['requested_by_user']
# instance.requested_by_department = validated_data['requested_by_department']
# instance.template_no = validated_data['template_no']
# instance.save()
# Delete any pages not included in the request
# approvers_ids = [item.id for item in validated_data['frm_approvers']]
# for i in validated_data['frm_approvers']:
# print(i)
# print(approvers_ids)
# for page in instance.frm_approvers:
# if page.id not in approvers_ids:
# page.delete()
# # Create or update page instances that are in the request
# for item in validated_data['pages']:
# page = Page(id=item['page_id'], text=item['text'], book=instance)
# page.save()
# return instance
# def update(self, instance, validated_data):
# frm_approvers = validated_data.pop('frm_approvers')
# instance.requested_to_template_name = validated_data.get("requested_to_template_name", instance.requested_to_template_name)
# instance.requested_to_objective = validated_data.get("requested_to_objective", instance.requested_to_objective)
# instance.requested_to_target_date = validated_data.get("requested_to_target_date", instance.requested_to_target_date)
# instance.requested_to_priority = validated_data.get("requested_to_priority", instance.requested_to_priority)
# instance.description = validated_data.get("description", instance.description)
# instance.status = validated_data.get("status", instance.status)
# instance.company_desc = validated_data.get("company_desc", instance.company_desc)
# instance.department_desc = validated_data.get("department_desc", instance.department_desc)
# instance.requested_desc = validated_data.get("requested_desc", instance.requested_desc)
# instance.requested_to_template_id = validated_data.get("requested_to_template_id", instance.requested_to_template_id)
# instance.requested_to_company = validated_data.get("requested_to_company", instance.requested_to_company)
# instance.requested_to_department = validated_data.get("requested_to_department", instance.requested_to_department)
# instance.requested_to_user = validated_data.get("requested_to_user", instance.requested_to_user)
# instance.requested_by_user = validated_data.get("requested_by_user", instance.requested_by_user)
# instance.requested_by_department = validated_data.get("requested_by_department", instance.requested_by_department)
# instance.template_no = validated_data.get("template_no", instance.template_no)
# instance.save()
# print(instance.form_code)
# keep_choices = []
# for choice in frm_approvers:
# if "id" in choice.keys():
# if models.ChangeRequestFormApprovers.objects.filter(id=choice["id"]).exists():
# c = models.ChangeRequestFormApprovers.objects.get(id=choice["id"])
# c.text = choice.get('text', c.text)
# c.save()
# keep_choices.append(c.id)
# else:
# continue
# else:
# c = models.ChangeRequestFormApprovers.objects.create(**choice)
# keep_choices.append(c.id)
# for choice in instance.frm_approvers:
# if choice.id not in keep_choices:
# choice.delete()
# return instance
def to_representation(self, instance): def to_representation(self, instance):
ret = super().to_representation(instance) ret = super().to_representation(instance)
try: try:
......
...@@ -53,11 +53,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -53,11 +53,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
lookup_field = 'form_code' lookup_field = 'form_code'
def list(self, request, *args, **kwargs): def list(self, request, *args, **kwargs):
# id_number = self.request.user id_number = self.request.user.code
id_number = 'USER-20190913-0000006'
# print(id_number.code) self.queryset = change_request.list_by_user(id_number)
# self.queryset = change_request.list_by_user(id_number)
self.queryset = change_request.filter_base( self.queryset = change_request.filter_base(
self.queryset, self.queryset,
...@@ -88,11 +86,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -88,11 +86,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
url_path='dashboard', url_path='dashboard',
name="Dashboard Summary") name="Dashboard Summary")
def dashboard_view(self, request): def dashboard_view(self, request):
# id_number = self.request.user id_number = self.request.user.code
# print(id_number)
# self.queryset = change_request.list_by_user(id_number.code) self.queryset = change_request.list_by_user(id_number)
self.queryset = change_request.filter_base( self.queryset = change_request.filter_base(
self.queryset, self.queryset,
...@@ -154,7 +150,7 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -154,7 +150,7 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
overdue = overdue_filtered.count() overdue = overdue_filtered.count()
message = { message = {
'account_no': id_number.code, 'account_no': id_number,
'pending': pending, 'pending': pending,
'approved': approved, 'approved': approved,
'rejected': rejected, 'rejected': rejected,
...@@ -177,9 +173,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -177,9 +173,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
name="Dashboard Summary Status") name="Dashboard Summary Status")
def list_by_status_view(self, request): def list_by_status_view(self, request):
# id_number = self.request.user id_number = self.request.user.code
# self.queryset = change_request.list_by_user(id_number.code) self.queryset = change_request.list_by_user(id_number)
self.queryset = change_request.filter_status( self.queryset = change_request.filter_status(
self.queryset, self.queryset,
...@@ -209,9 +205,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -209,9 +205,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
name="Dashboard Summary Overdue") name="Dashboard Summary Overdue")
def list_by_overdue_view(self, request): def list_by_overdue_view(self, request):
# id_number = self.request.user id_number = self.request.user.code
# self.queryset = change_request.list_by_user(id_number.code) self.queryset = change_request.list_by_user(id_number)
self.queryset = change_request.filter_overdue(self.queryset) self.queryset = change_request.filter_overdue(self.queryset)
...@@ -237,11 +233,11 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -237,11 +233,11 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
name="Dashboard Summary Awaiting") name="Dashboard Summary Awaiting")
def list_by_awaiting_view(self, request): def list_by_awaiting_view(self, request):
# id_number = self.request.user id_number = self.request.user.code
# self.queryset = change_request.list_by_user(id_number.code) self.queryset = change_request.list_by_user(id_number)
# self.queryset = change_request.filter_awaiting(self.queryset, id_number.code) self.queryset = change_request.filter_awaiting(self.queryset, id_number.code)
self.queryset = change_request.filter_base( self.queryset = change_request.filter_base(
self.queryset, self.queryset,
...@@ -258,7 +254,7 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -258,7 +254,7 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
~Q(status='Rejected') | ~Q(status='Rejected') |
~Q(status='Closed') | ~Q(status='Closed') |
~Q(status='Cancelled')) ~Q(status='Cancelled'))
self.queryset = self.queryset.order_by('-created') self.queryset = self.queryset.order_by('-created')
self.queryset = QuerySetHelper.Sort(self) self.queryset = QuerySetHelper.Sort(self)
return super(ChangeRequestFormsViewset, self).list(request) return super(ChangeRequestFormsViewset, self).list(request)
...@@ -297,7 +293,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -297,7 +293,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
# save history in form header # save history in form header
crhistory_save( crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.REROUTE.value, enums.CREnum.REROUTE.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_HEADER.value, enums.CREntitiesEnum.CR_FRM_HEADER.value,
form_code, form_code,
old_instance, old_instance,
...@@ -328,7 +326,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -328,7 +326,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
# save history in form approver # save history in form approver
crhistory_save( crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.REROUTE.value, enums.CREnum.REROUTE.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_APPROVER.value, enums.CREntitiesEnum.CR_FRM_APPROVER.value,
form_code, form_code,
old_instance, old_instance,
...@@ -382,7 +382,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -382,7 +382,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
# save history in form header # save history in form header
crhistory_save( crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.RESUBMIT.value, enums.CREnum.RESUBMIT.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_HEADER.value, enums.CREntitiesEnum.CR_FRM_HEADER.value,
form_code, form_code,
old_instance, old_instance,
...@@ -413,7 +415,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -413,7 +415,9 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
# save history in form approver # save history in form approver
crhistory_save( crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.RESUBMIT.value, enums.CREnum.RESUBMIT.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_APPROVER.value, enums.CREntitiesEnum.CR_FRM_APPROVER.value,
form_code, form_code,
old_instance, old_instance,
...@@ -434,8 +438,8 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -434,8 +438,8 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
# get request data # get request data
id = request.data['id'] id = request.data['id']
current_user = request.data['user'] # current_user = request.data['user']
# current_user = self.request.user current_user = self.request.user.code
form_code = request.data['form_code'] form_code = request.data['form_code']
delegation = request.data['delegation'] delegation = request.data['delegation']
action = request.data['action'] action = request.data['action']
...@@ -464,6 +468,8 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -464,6 +468,8 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
crenum = action.upper() crenum = action.upper()
# save history in form approver # save history in form approver
crhistory_save( crhistory_save(
"BATCH-20190920-000001",
"ACTION",
crenum, crenum,
enums.CREntitiesEnum.CR_FRM_APPROVER.value, enums.CREntitiesEnum.CR_FRM_APPROVER.value,
form_code, form_code,
...@@ -583,6 +589,7 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -583,6 +589,7 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
status=status.HTTP_200_OK status=status.HTTP_200_OK
) )
@action( @action(
methods=['PATCH'], detail=True, methods=['PATCH'], detail=True,
url_path='save', url_name='save' url_path='save', url_name='save'
...@@ -594,6 +601,12 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -594,6 +601,12 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
# get pk # get pk
frm_id = models.ChangeRequestFormHeader.objects.get(form_code=form_code) frm_id = models.ChangeRequestFormHeader.objects.get(form_code=form_code)
# get old data
old_instance = models.ChangeRequestFormHeader.objects.filter(
form_code=form_code).values()
old_instance = list(old_instance)
# get data CR Form Header # get data CR Form Header
form_header = get_object_or_404( form_header = get_object_or_404(
...@@ -605,6 +618,24 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -605,6 +618,24 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
if serializer.is_valid(): if serializer.is_valid():
serializer.save() serializer.save()
# get new data
new_instance = models.ChangeRequestFormHeader.objects.filter(
form_code=form_code).values()
new_instance = list(new_instance)
# save history in form header
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_HEADER.value,
form_code,
old_instance,
new_instance
)
# ---------------------------------------------------------------------
# get approvers data # get approvers data
approver_id = models.ChangeRequestFormApprovers.objects.filter( approver_id = models.ChangeRequestFormApprovers.objects.filter(
form_code=form_code) form_code=form_code)
...@@ -624,43 +655,439 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -624,43 +655,439 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
# Delete any approvers not included in the request # Delete any approvers not included in the request
for e in existing_approver_ids: for e in existing_approver_ids:
if e not in updated_approver_ids: if e not in updated_approver_ids:
# get old data
old_instance = models.ChangeRequestFormApprovers.objects.filter(
pk=e).values()
old_instance = list(old_instance)
models.ChangeRequestFormApprovers.objects.filter( models.ChangeRequestFormApprovers.objects.filter(
pk=e).delete() pk=e).delete()
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.DELETED.value,
enums.CREntitiesEnum.CR_FRM_APPROVER.value,
form_code,
old_instance,
None
)
# Create or update approver data that are in the request # Create or update approver data that are in the request
for frm_approver in frm_approvers: for frm_approver in frm_approvers:
print(frm_approver)
if "id" in frm_approver: if "id" in frm_approver:
print(frm_approver['id'])
# get old data
old_instance = models.ChangeRequestFormApprovers.objects.filter(
pk=frm_approver['id']).values()
old_instance = list(old_instance)
models.ChangeRequestFormApprovers.objects.filter( models.ChangeRequestFormApprovers.objects.filter(
pk=frm_approver['id']).update(level=frm_approver['level'], pk=frm_approver['id']).update(level=frm_approver['level'],
delegation=frm_approver['delegation'], delegation=frm_approver['delegation'],
created=datetime.now(), created=datetime.now(),
remarks=None, remarks=None,
action=None, action=None,
action_date=None, action_date=None,
date_sent=None, date_sent=None,
user=frm_approver['user'], user=frm_approver['user'],
tmp_approver=frm_approver['tmp_approver']) tmp_approver=frm_approver['tmp_approver'])
# get new data
new_instance = models.ChangeRequestFormApprovers.objects.filter(
pk=frm_approver['id']).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_APPROVER.value,
form_code,
old_instance,
new_instance
)
else:
user_instance = models.User.objects.get(
code=frm_approver['user'])
cre = models.ChangeRequestFormApprovers.objects.create(
level=frm_approver['level'],
delegation=frm_approver['delegation'],
created=datetime.now(),
user=user_instance,
form_code=frm_id,
code='try')
code = number_generator(enums.GenerateCode.FORM_APPROVER.value, cre.id)
models.ChangeRequestFormApprovers.objects.filter(
id=cre.id).update(code=code)
# get new data
new_instance = models.ChangeRequestFormApprovers.objects.filter(
pk=cre.id).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.ADD.value,
enums.CREntitiesEnum.CR_FRM_APPROVER.value,
form_code,
None,
new_instance
)
# ---------------------------------------------------------------------
# get stakes data
stakes_id = models.ChangeRequestFormStakeHolders.objects.filter(
form_code=form_code)
# list existing id to variable
existing_stakes_ids = [item.id for item in stakes_id]
frm_stakes = form_header_data['frm_stakes']
updated_stakes_ids = []
# get all ids
for frm_stake in frm_stakes:
if "id" in frm_stake:
updated_stakes_ids.append(frm_stake['id'])
# Delete any stakes not included in the request
for e in existing_stakes_ids:
if e not in updated_stakes_ids:
# get old data
old_instance = models.ChangeRequestFormStakeHolders.objects.filter(
pk=e).values()
old_instance = list(old_instance)
models.ChangeRequestFormStakeHolders.objects.filter(
pk=e).delete()
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.DELETED.value,
enums.CREntitiesEnum.CR_FRM_STAKE.value,
form_code,
old_instance,
None
)
# Create or update stake data that are in the request
for frm_stake in frm_stakes:
if "id" in frm_stake:
# get old data
old_instance = models.ChangeRequestFormStakeHolders.objects.filter(
pk=frm_stake['id']).values()
old_instance = list(old_instance)
models.ChangeRequestFormStakeHolders.objects.filter(
pk=frm_stake['id']).update(
delegation=frm_stake['delegation'],
created=datetime.now(),
user=frm_stake['user'],
tmp_stake=frm_stake['tmp_stake'])
# get new data
new_instance = models.ChangeRequestFormStakeHolders.objects.filter(
pk=frm_stake['id']).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_STAKE.value,
form_code,
old_instance,
new_instance
)
else:
user_instance = models.User.objects.get(
code=frm_stake['user'])
cre = models.ChangeRequestFormStakeHolders.objects.create(
delegation=frm_stake['delegation'],
created=datetime.now(),
user=user_instance,
form_code=frm_id,
code='try')
code = number_generator(enums.GenerateCode.FORM_STAKE.value, cre.id)
models.ChangeRequestFormStakeHolders.objects.filter(
id=cre.id).update(code=code)
# get new data
new_instance = models.ChangeRequestFormStakeHolders.objects.filter(
pk=cre.id).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.ADD.value,
enums.CREntitiesEnum.CR_FRM_STAKE.value,
form_code,
None,
new_instance
)
# ---------------------------------------------------------------------
# get attachments data
attach_id = models.ChangeRequestFormAttachments.objects.filter(
form_code=form_code)
# list existing id to variable
existing_attach_ids = [item.id for item in attach_id]
frm_attach = form_header_data['frm_attachments']
updated_attach_ids = []
# get all ids
for frm_att in frm_attach:
if "id" in frm_att:
updated_attach_ids.append(frm_att['id'])
# Delete any attachments not included in the request
for e in existing_attach_ids:
if e not in updated_attach_ids:
# get old data
old_instance = models.ChangeRequestFormAttachments.objects.filter(
pk=e).values()
old_instance = list(old_instance)
models.ChangeRequestFormAttachments.objects.filter(
pk=e).delete()
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.DELETED.value,
enums.CREntitiesEnum.CR_FRM_ATTACHMENT.value,
form_code,
old_instance,
None
)
# Create or update attachments data that are in the request
for frm_att in frm_attach:
if "id" in frm_att:
# get old data
old_instance = models.ChangeRequestFormAttachments.objects.filter(
pk=frm_att['id']).values()
old_instance = list(old_instance)
models.ChangeRequestFormAttachments.objects.filter(
pk=frm_att['id']).update(
attachment_type=frm_att['attachment_type'],
attachment_name=frm_att['attachment_name'],
file_name=frm_att['file_name'],
description=frm_att['description'],
file_upload=frm_att['file_upload'],
uploaded_by=frm_att['uploaded_by'],
created=datetime.now())
# get new data
new_instance = models.ChangeRequestFormAttachments.objects.filter(
pk=frm_att['id']).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_ATTACHMENT.value,
form_code,
old_instance,
new_instance
)
else: else:
user_instance = models.User.objects.get(
code=frm_att['uploaded_by'])
cre = models.ChangeRequestFormAttachments.objects.create(
attachment_type=frm_att['attachment_type'],
attachment_name=frm_att['attachment_name'],
file_name=frm_att['file_name'],
description=frm_att['description'],
file_upload=frm_att['file_upload'],
uploaded_by=user_instance,
created=datetime.now(),
form_code=frm_id,
code='try')
code = number_generator(enums.GenerateCode.FORM_ATTACH.value, cre.id)
models.ChangeRequestFormAttachments.objects.filter(
id=cre.id).update(code=code)
# get new data
new_instance = models.ChangeRequestFormAttachments.objects.filter(
pk=cre.id).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.ADD.value,
enums.CREntitiesEnum.CR_FRM_ATTACHMENT.value,
form_code,
None,
new_instance
)
# ---------------------------------------------------------------------
# get details data
detail_id = models.ChangeRequestFormDetails.objects.filter(
form_code=form_code)
# list existing id to variable
existing_detail_ids = [item.id for item in detail_id]
frm_details = form_header_data['frm_details']
updated_detail_ids = []
# get all ids
for frm_detail in frm_details:
if "id" in frm_detail:
updated_detail_ids.append(frm_detail['id'])
# Delete any attachments not included in the request
for e in existing_detail_ids:
if e not in updated_detail_ids:
# get old data
old_instance = models.ChangeRequestFormDetails.objects.filter(
pk=e).values()
old_instance = list(old_instance)
models.ChangeRequestFormDetails.objects.filter(
pk=e).delete()
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.DELETED.value,
enums.CREntitiesEnum.CR_FRM_DETAIL.value,
form_code,
old_instance,
None
)
# Create or update attachments data that are in the request
for frm_detail in frm_details:
if "id" in frm_detail:
# get old data
old_instance = models.ChangeRequestFormDetails.objects.filter(
pk=frm_detail['id']).values()
old_instance = list(old_instance)
models.ChangeRequestFormDetails.objects.filter(
pk=frm_detail['id']).update(
field_idx=frm_detail['field_idx'],
field_ref=frm_detail['field_ref'],
field_val=frm_detail['field_val'],
field_props=frm_detail['field_props'],
created=datetime.now())
# get new data
new_instance = models.ChangeRequestFormDetails.objects.filter(
pk=frm_detail['id']).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_DETAIL.value,
form_code,
old_instance,
new_instance
)
user_instance = models.User.objects.get(code=frm_approver['user']) else:
form_code_instance = models.ChangeRequestFormHeader.objects.get(code=form_code)
cre = models.ChangeRequestFormDetails.objects.create(
field_idx=frm_detail['field_idx'],
field_ref=frm_detail['field_ref'],
field_val=frm_detail['field_val'],
field_props=frm_detail['field_props'],
created=datetime.now(),
code='try',
form_code=frm_id)
code = number_generator(enums.GenerateCode.FORM_DETAIL.value, cre.id)
models.ChangeRequestFormDetails.objects.filter(
id=cre.id).update(code=code)
models.ChangeRequestFormApprovers.objects.create( # get new data
level=frm_approver['level'], new_instance = models.ChangeRequestFormDetails.objects.filter(
delegation=frm_approver['delegation'], pk=cre.id).values()
created=datetime.now(),
user=user_instance, new_instance = list(new_instance)
form_code=form_code_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SAVE.value,
enums.CREnum.ADD.value,
enums.CREntitiesEnum.CR_FRM_DETAIL.value,
form_code,
None,
new_instance
)
return Response(serializer.data) return Response(serializer.data)
return Response(
"Change request form successfully re routed",
status=status.HTTP_200_OK
)
@action( @action(
methods=['PATCH'], detail=True, methods=['PATCH'], detail=True,
url_path='submit', url_name='submit' url_path='submit', url_name='submit'
...@@ -668,12 +1095,496 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet): ...@@ -668,12 +1095,496 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
def submit(self, request, *args, **kwargs): def submit(self, request, *args, **kwargs):
form_code = kwargs['form_code'] form_code = kwargs['form_code']
form_header_data = request.data
# get pk
frm_id = models.ChangeRequestFormHeader.objects.get(form_code=form_code)
return Response( # get old data
"Change request form successfully re routed", old_instance = models.ChangeRequestFormHeader.objects.filter(
status=status.HTTP_200_OK form_code=form_code).values()
old_instance = list(old_instance)
# get data CR Form Header
form_header = get_object_or_404(
models.ChangeRequestFormHeader.objects.all(), pk=frm_id.id)
serializer = serializers.ChangeRequestFormHeaderSerializer(
form_header, data=form_header_data)
if serializer.is_valid():
serializer.save()
# get new data
new_instance = models.ChangeRequestFormHeader.objects.filter(
form_code=form_code).values()
new_instance = list(new_instance)
# save history in form header
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_HEADER.value,
form_code,
old_instance,
new_instance
) )
# ---------------------------------------------------------------------
# get approvers data
approver_id = models.ChangeRequestFormApprovers.objects.filter(
form_code=form_code)
# list existing id to variable
existing_approver_ids = [item.id for item in approver_id]
frm_approvers = form_header_data['frm_approvers']
updated_approver_ids = []
# get all ids
for frm_approver in frm_approvers:
if "id" in frm_approver:
updated_approver_ids.append(frm_approver['id'])
# Delete any approvers not included in the request
for e in existing_approver_ids:
if e not in updated_approver_ids:
# get old data
old_instance = models.ChangeRequestFormApprovers.objects.filter(
pk=e).values()
old_instance = list(old_instance)
models.ChangeRequestFormApprovers.objects.filter(
pk=e).delete()
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.DELETED.value,
enums.CREntitiesEnum.CR_FRM_APPROVER.value,
form_code,
old_instance,
None
)
# Create or update approver data that are in the request
for frm_approver in frm_approvers:
if "id" in frm_approver:
# get old data
old_instance = models.ChangeRequestFormApprovers.objects.filter(
pk=frm_approver['id']).values()
old_instance = list(old_instance)
models.ChangeRequestFormApprovers.objects.filter(
pk=frm_approver['id']).update(level=frm_approver['level'],
delegation=frm_approver['delegation'],
created=datetime.now(),
remarks=None,
action=None,
action_date=None,
date_sent=None,
user=frm_approver['user'],
tmp_approver=frm_approver['tmp_approver'])
# get new data
new_instance = models.ChangeRequestFormApprovers.objects.filter(
pk=frm_approver['id']).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_APPROVER.value,
form_code,
old_instance,
new_instance
)
else:
user_instance = models.User.objects.get(
code=frm_approver['user'])
cre = models.ChangeRequestFormApprovers.objects.create(
level=frm_approver['level'],
delegation=frm_approver['delegation'],
created=datetime.now(),
user=user_instance,
form_code=frm_id,
code='try')
code = number_generator(enums.GenerateCode.FORM_APPROVER.value, cre.id)
models.ChangeRequestFormApprovers.objects.filter(
id=cre.id).update(code=code)
# get new data
new_instance = models.ChangeRequestFormApprovers.objects.filter(
pk=cre.id).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.ADD.value,
enums.CREntitiesEnum.CR_FRM_APPROVER.value,
form_code,
None,
new_instance
)
# ---------------------------------------------------------------------
# get stakes data
stakes_id = models.ChangeRequestFormStakeHolders.objects.filter(
form_code=form_code)
# list existing id to variable
existing_stakes_ids = [item.id for item in stakes_id]
frm_stakes = form_header_data['frm_stakes']
updated_stakes_ids = []
# get all ids
for frm_stake in frm_stakes:
if "id" in frm_stake:
updated_stakes_ids.append(frm_stake['id'])
# Delete any stakes not included in the request
for e in existing_stakes_ids:
if e not in updated_stakes_ids:
# get old data
old_instance = models.ChangeRequestFormStakeHolders.objects.filter(
pk=e).values()
old_instance = list(old_instance)
models.ChangeRequestFormStakeHolders.objects.filter(
pk=e).delete()
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.DELETED.value,
enums.CREntitiesEnum.CR_FRM_STAKE.value,
form_code,
old_instance,
None
)
# Create or update stake data that are in the request
for frm_stake in frm_stakes:
if "id" in frm_stake:
# get old data
old_instance = models.ChangeRequestFormStakeHolders.objects.filter(
pk=frm_stake['id']).values()
old_instance = list(old_instance)
models.ChangeRequestFormStakeHolders.objects.filter(
pk=frm_stake['id']).update(
delegation=frm_stake['delegation'],
created=datetime.now(),
user=frm_stake['user'],
tmp_stake=frm_stake['tmp_stake'])
# get new data
new_instance = models.ChangeRequestFormStakeHolders.objects.filter(
pk=frm_stake['id']).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_STAKE.value,
form_code,
old_instance,
new_instance
)
else:
user_instance = models.User.objects.get(
code=frm_stake['user'])
cre = models.ChangeRequestFormStakeHolders.objects.create(
delegation=frm_stake['delegation'],
created=datetime.now(),
user=user_instance,
form_code=frm_id,
code='try')
code = number_generator(enums.GenerateCode.FORM_STAKE.value, cre.id)
models.ChangeRequestFormStakeHolders.objects.filter(
id=cre.id).update(code=code)
# get new data
new_instance = models.ChangeRequestFormStakeHolders.objects.filter(
pk=cre.id).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.ADD.value,
enums.CREntitiesEnum.CR_FRM_STAKE.value,
form_code,
None,
new_instance
)
# ---------------------------------------------------------------------
# get attachments data
attach_id = models.ChangeRequestFormAttachments.objects.filter(
form_code=form_code)
# list existing id to variable
existing_attach_ids = [item.id for item in attach_id]
frm_attach = form_header_data['frm_attachments']
updated_attach_ids = []
# get all ids
for frm_att in frm_attach:
if "id" in frm_att:
updated_attach_ids.append(frm_att['id'])
# Delete any attachments not included in the request
for e in existing_attach_ids:
if e not in updated_attach_ids:
# get old data
old_instance = models.ChangeRequestFormAttachments.objects.filter(
pk=e).values()
old_instance = list(old_instance)
models.ChangeRequestFormAttachments.objects.filter(
pk=e).delete()
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.DELETED.value,
enums.CREntitiesEnum.CR_FRM_ATTACHMENT.value,
form_code,
old_instance,
None
)
# Create or update attachments data that are in the request
for frm_att in frm_attach:
if "id" in frm_att:
# get old data
old_instance = models.ChangeRequestFormAttachments.objects.filter(
pk=frm_att['id']).values()
old_instance = list(old_instance)
models.ChangeRequestFormAttachments.objects.filter(
pk=frm_att['id']).update(
attachment_type=frm_att['attachment_type'],
attachment_name=frm_att['attachment_name'],
file_name=frm_att['file_name'],
description=frm_att['description'],
file_upload=frm_att['file_upload'],
uploaded_by=frm_att['uploaded_by'],
created=datetime.now())
# get new data
new_instance = models.ChangeRequestFormAttachments.objects.filter(
pk=frm_att['id']).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_ATTACHMENT.value,
form_code,
old_instance,
new_instance
)
else:
user_instance = models.User.objects.get(
code=frm_att['uploaded_by'])
cre = models.ChangeRequestFormAttachments.objects.create(
attachment_type=frm_att['attachment_type'],
attachment_name=frm_att['attachment_name'],
file_name=frm_att['file_name'],
description=frm_att['description'],
file_upload=frm_att['file_upload'],
uploaded_by=user_instance,
created=datetime.now(),
form_code=frm_id,
code='try')
code = number_generator(enums.GenerateCode.FORM_ATTACH.value, cre.id)
models.ChangeRequestFormAttachments.objects.filter(
id=cre.id).update(code=code)
# get new data
new_instance = models.ChangeRequestFormAttachments.objects.filter(
pk=cre.id).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.ADD.value,
enums.CREntitiesEnum.CR_FRM_ATTACHMENT.value,
form_code,
None,
new_instance
)
# ---------------------------------------------------------------------
# get details data
detail_id = models.ChangeRequestFormDetails.objects.filter(
form_code=form_code)
# list existing id to variable
existing_detail_ids = [item.id for item in detail_id]
frm_details = form_header_data['frm_details']
updated_detail_ids = []
# get all ids
for frm_detail in frm_details:
if "id" in frm_detail:
updated_detail_ids.append(frm_detail['id'])
# Delete any attachments not included in the request
for e in existing_detail_ids:
if e not in updated_detail_ids:
# get old data
old_instance = models.ChangeRequestFormDetails.objects.filter(
pk=e).values()
old_instance = list(old_instance)
models.ChangeRequestFormDetails.objects.filter(
pk=e).delete()
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.DELETED.value,
enums.CREntitiesEnum.CR_FRM_DETAIL.value,
form_code,
old_instance,
None
)
# Create or update attachments data that are in the request
for frm_detail in frm_details:
if "id" in frm_detail:
# get old data
old_instance = models.ChangeRequestFormDetails.objects.filter(
pk=frm_detail['id']).values()
old_instance = list(old_instance)
models.ChangeRequestFormDetails.objects.filter(
pk=frm_detail['id']).update(
field_idx=frm_detail['field_idx'],
field_ref=frm_detail['field_ref'],
field_val=frm_detail['field_val'],
field_props=frm_detail['field_props'],
created=datetime.now())
# get new data
new_instance = models.ChangeRequestFormDetails.objects.filter(
pk=frm_detail['id']).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.UPDATE.value,
enums.CREntitiesEnum.CR_FRM_DETAIL.value,
form_code,
old_instance,
new_instance
)
else:
cre = models.ChangeRequestFormDetails.objects.create(
field_idx=frm_detail['field_idx'],
field_ref=frm_detail['field_ref'],
field_val=frm_detail['field_val'],
field_props=frm_detail['field_props'],
created=datetime.now(),
code='try',
form_code=frm_id)
code = number_generator(enums.GenerateCode.FORM_DETAIL.value, cre.id)
models.ChangeRequestFormDetails.objects.filter(
id=cre.id).update(code=code)
# get new data
new_instance = models.ChangeRequestFormDetails.objects.filter(
pk=cre.id).values()
new_instance = list(new_instance)
# save history in form approver
crhistory_save(
"BATCH-20190920-000001",
enums.CREnum.SUBMIT.value,
enums.CREnum.ADD.value,
enums.CREntitiesEnum.CR_FRM_DETAIL.value,
form_code,
None,
new_instance
)
return Response(serializer.data)
class ChangeRequestFormApproversViewset(meviewsets.ModelViewSet): class ChangeRequestFormApproversViewset(meviewsets.ModelViewSet):
queryset = models.ChangeRequestFormApprovers.objects.all() queryset = models.ChangeRequestFormApprovers.objects.all()
...@@ -765,8 +1676,7 @@ class ChangeRequestFormAttachmentsViewset(meviewsets.ModelViewSet): ...@@ -765,8 +1676,7 @@ class ChangeRequestFormAttachmentsViewset(meviewsets.ModelViewSet):
if ObjectId: if ObjectId:
dbExisting = models.ChangeRequestFormAttachments.objects.filter( dbExisting = models.ChangeRequestFormAttachments.objects.filter(
id=ObjectId, id=ObjectId).first()
archived_at=None).first()
if dbExisting: if dbExisting:
dbExisting.archived_at = datetime.now() dbExisting.archived_at = datetime.now()
...@@ -816,11 +1726,9 @@ class ChangeRequestFormStakeHoldersViewset(meviewsets.ModelViewSet): ...@@ -816,11 +1726,9 @@ class ChangeRequestFormStakeHoldersViewset(meviewsets.ModelViewSet):
if ObjectId: if ObjectId:
dbExisting = models.ChangeRequestFormStakeHolders.objects.filter( dbExisting = models.ChangeRequestFormStakeHolders.objects.filter(
id=ObjectId, id=ObjectId).first()
archived_at=None).first()
if dbExisting: if dbExisting:
dbExisting.archived_at = datetime.now()
dbExisting.save() dbExisting.save()
self.perform_create(serializer) self.perform_create(serializer)
...@@ -857,11 +1765,9 @@ class ChangeRequestFormDetailsViewset(meviewsets.ModelViewSet): ...@@ -857,11 +1765,9 @@ class ChangeRequestFormDetailsViewset(meviewsets.ModelViewSet):
if ObjectId: if ObjectId:
dbExisting = models.ChangeRequestFormDetails.objects.filter( dbExisting = models.ChangeRequestFormDetails.objects.filter(
id=ObjectId, id=ObjectId).first()
archived_at=None).first()
if dbExisting: if dbExisting:
dbExisting.archived_at = datetime.now()
dbExisting.save() dbExisting.save()
self.perform_create(serializer) self.perform_create(serializer)
......
...@@ -14,6 +14,7 @@ from django.forms.models import model_to_dict ...@@ -14,6 +14,7 @@ from django.forms.models import model_to_dict
from rest_framework.exceptions import ParseError from rest_framework.exceptions import ParseError
from django.db import IntegrityError from django.db import IntegrityError
from rest_framework.exceptions import APIException from rest_framework.exceptions import APIException
from django.db.models import Max
CR_FRONT_LINK = settings.CR_FRONT_LINK CR_FRONT_LINK = settings.CR_FRONT_LINK
...@@ -395,13 +396,18 @@ def cancel_overdue(request): ...@@ -395,13 +396,18 @@ def cancel_overdue(request):
return True return True
def crhistory_save(action, entity, form_code, fromValue, toValue): def crhistory_save(batch_no, main_action,
action, entity, form_code,
fromValue, toValue):
models.ChangeRequestHistory.objects.create( models.ChangeRequestHistory.objects.create(
batch_no=batch_no,
main_action=main_action,
action=action, action=action,
entity=entity, entity=entity,
form_code=form_code, form_code=form_code,
fromValue=fromValue, fromValue=fromValue,
toValue=toValue toValue=toValue
) )
return True return True
\ No newline at end of file
# Generated by Django 2.2 on 2019-09-20 16:23
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('entities', '0005_auto_20190919_1625'),
]
operations = [
migrations.AddField(
model_name='changerequesthistory',
name='batch_no',
field=models.CharField(blank=True, max_length=255, null=True),
),
migrations.AddField(
model_name='changerequesthistory',
name='main_action',
field=models.CharField(blank=True, max_length=255, null=True),
),
]
...@@ -875,6 +875,14 @@ CR HISTORY ...@@ -875,6 +875,14 @@ CR HISTORY
''' '''
class ChangeRequestHistory(AuditClass): class ChangeRequestHistory(AuditClass):
batch_no = models.CharField(
max_length=255,
blank=True,
null=True)
main_action = models.CharField(
max_length=255,
blank=True,
null=True)
action = models.CharField( action = models.CharField(
max_length=50) max_length=50)
entity = models.CharField( entity = models.CharField(
......
{
"info": {
"_postman_id": "2ac809fa-c206-4ba6-afe2-becadeaa551c",
"name": "RMSv2",
"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
},
"item": [
{
"name": "Access Token",
"item": [
{
"name": "current-user",
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "f7421584fd27d789376db52a41a10b42b8385caf",
"type": "string"
}
]
},
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/auth/current-user/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"auth",
"current-user",
""
]
}
},
"response": []
},
{
"name": "Login",
"request": {
"auth": {
"type": "noauth"
},
"method": "POST",
"header": [
{
"key": "Authorization",
"value": "JWT eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxLCJ1c2VybmFtZSI6ImFkbWluIiwiZXhwIjoxNTU2OTM5MDI4LCJlbWFpbCI6IiJ9.eAA6vSTOhrto5yfy3IQsCdR7iaZxfApNcvdJsFdFmsc",
"type": "text",
"disabled": true
}
],
"body": {
"mode": "formdata",
"formdata": [
{
"key": "username",
"value": "superuser",
"type": "text"
},
{
"key": "password",
"value": "password123",
"type": "text"
}
]
},
"url": {
"raw": "http://localhost:8000/api/v1/auth/login/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"auth",
"login",
""
]
}
},
"response": []
},
{
"name": "Forgot Password",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n\t\"email\": \"johnredsmedrano@gmail.com\"\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/auth/forgot-password/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"auth",
"forgot-password",
""
]
}
},
"response": []
},
{
"name": "Validate Token",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n\t\"token\": \"31290f51d6ea2d476b02942d1d53b7200ed13a89\"\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/auth/reset-password-link/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"auth",
"reset-password-link",
""
]
}
},
"response": []
},
{
"name": "Forgot Password Reset",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"username\": \"213\",\n \"password\": \"password123\",\n \"password_confirm\": \"password123\",\n \"passcode\": \"9676\",\n \"token\": \"c90b0833d83b97cdbfd181f8685e06c2ab646e35\"\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/auth/forgot-password-reset/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"auth",
"forgot-password-reset",
""
]
}
},
"response": []
}
]
},
{
"name": "Change Request",
"item": [
{
"name": "CR Forms",
"item": [
{
"name": "CR Form Header",
"item": [
{
"name": "Create Form Header",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"type": "text",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n\t\"requested_to_template_name\": \"Sample Template\",\r\n\t\"requested_to_template_id\": \"JTC\",\r\n\t\"requested_to_objective\": \"Sample Objective\",\r\n\t\"requested_to_target_date\": \"2019-09-03 13:59:29.694560\",\r\n\t\"requested_to_priority\": \"High\",\r\n\t\"description\": \"sample description\",\r\n\t\"status\": \"Pending\",\r\n\t\"company_desc\": \"Oneberry\",\r\n\t\"department_desc\": \"Oneberry Superuser\",\r\n\t\"requested_desc\": \"Super User\",\r\n\t\"requested_by_department\": \"admin\",\r\n\t\"requested_by_user\": \"USER-20190913-0000006\",\r\n\t\"requested_to_company\": \"COMPANY-20190909-0000002\",\r\n\t\"requested_to_department\": \"DEPARTMENT-20190909-0000002\",\r\n\t\"requested_to_user\": \"USER-20190913-0000007\",\r\n\t\"template_no\": \"TMP-20190916-0000002\",\r\n\t\r\n\t\"frm_approvers\": [{\r\n\t\t\t\"level\": \"1\",\r\n\t\t\t\"delegation\": \"HOD\",\r\n\t\t\t\"user\": \"USER-20190913-0000008\",\r\n\t\t\t\"tmp_approver\": \"TMPAPR-20190916-0000004\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"level\": \"2\",\r\n\t\t\t\"delegation\": \"Approver\",\r\n\t\t\t\"user\": \"USER-20190913-0000009\",\r\n\t\t\t\"tmp_approver\": \"TMPAPR-20190913-0000002\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"level\": \"3\",\r\n\t\t\t\"delegation\": \"Approver\",\r\n\t\t\t\"user\": \"USER-20190913-0000008\",\r\n\t\t\t\"tmp_approver\": \"TMPAPR-20190913-0000003\"\r\n\t\t}\r\n\t],\r\n\t\r\n\t\"frm_stakes\": [{\r\n\t\t\t\"date_added\": \"2019-09-03 13:59:29.694560\",\r\n\t\t\t\"delegation\": \"Mandatory Stakeholder\",\r\n\t\t\t\"user\": \"USER-20190913-0000009\",\r\n\t\t\t\"tmp_stake\": \"TMPSTK-20190913-0000001\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"date_added\": \"2019-09-03 13:59:29.694560\",\r\n\t\t\t\"delegation\": \"Stake Approver\",\r\n\t\t\t\"user\": \"USER-20190913-0000008\",\r\n\t\t\t\"tmp_stake\": \"TMPSTK-20190913-0000002\"\r\n\t\t}\r\n\t],\r\n\t\r\n\t\"frm_attachments\": [{\r\n\t\t\t\"attachment_type\": \"Hello\",\r\n\t\t\t\"attachment_name\": \"heyu\",\r\n\t\t\t\"file_name\": \"Sample\",\r\n\t\t\t\"description\": \"Sameple Desc\",\r\n\t\t\t\"uploaded_by\": \"USER-20190913-0000006\",\r\n\t\t\t\"tmp_attach\": \"TMPATCH-20190913-0000001\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"attachment_type\": \"Hello\",\r\n\t\t\t\"attachment_name\": \"heyu\",\r\n\t\t\t\"file_name\": \"Sample\",\r\n\t\t\t\"description\": \"Sameple Desc\",\r\n\t\t\t\"uploaded_by\": \"USER-20190913-0000006\",\r\n\t\t\t\"tmp_attach\": \"TMPATCH-20190913-0000002\"\r\n\t\t}\r\n\t],\r\n\t\r\n\t\"frm_details\": [{\r\n\t\t\t\"field_idx\": \"Hello\",\r\n\t\t\t\"field_ref\": \"heyu\",\r\n\t\t\t\"field_val\": \"Sample\",\r\n\t\t\t\"field_props\": \"Sameple Desc\",\r\n\t\t\t\"tmp_detail\": \"TMPDETAIL-20190913-0000001\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"field_idx\": \"Hello\",\r\n\t\t\t\"field_ref\": \"heyu\",\r\n\t\t\t\"field_val\": \"Sample\",\r\n\t\t\t\"field_props\": \"Sameple Desc\",\r\n\t\t\t\"tmp_detail\": \"TMPDETAIL-20190913-0000002\"\r\n\t\t}\r\n\t]\r\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form-post/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form-post",
""
]
}
},
"response": []
},
{
"name": "List of Forms",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form",
""
]
}
},
"response": []
},
{
"name": "View Form",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form/FRM-20190913-0000002/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form",
"FRM-20190913-0000002",
""
]
}
},
"response": []
},
{
"name": "Delete Form",
"request": {
"method": "DELETE",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form/FRM-20190909-0000006/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form",
"FRM-20190909-0000006",
""
]
}
},
"response": []
},
{
"name": "Re Route for Approval",
"request": {
"method": "PATCH",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form/FRM-20190913-0000001/re_route/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form",
"FRM-20190913-0000001",
"re_route",
""
]
}
},
"response": []
},
{
"name": "Resubmit",
"request": {
"method": "PATCH",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form/FRM-20190913-0000001/re_submit/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form",
"FRM-20190913-0000001",
"re_submit",
""
]
}
},
"response": []
},
{
"name": "CR Action",
"request": {
"method": "PATCH",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n \"id\": 1,\r\n \"form_code\": \"FRM-20190913-0000001\",\r\n \"delegation\": \"Requestor\",\r\n \"action\": \"Rejected\",\r\n \"level\": \"1\",\r\n \"remarks\": \"\",\r\n \"form_status\": \"previous status\"\r\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form/actions/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form",
"actions",
""
]
}
},
"response": []
},
{
"name": "Submit",
"request": {
"method": "PATCH",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n \"requested_to_template_name\": \"Sample Templatess\",\r\n \"requested_to_objective\": \"Sasmple Ossbjective\",\r\n \"requested_to_target_date\": \"2019-09-03T13:59:29.694560\",\r\n \"requested_to_priority\": \"High\",\r\n \"description\": \"sample description\",\r\n \"company_desc\": \"Oneberry\",\r\n \"department_desc\": \"Oneberry Superuser\",\r\n \"requested_desc\": \"Super User\",\r\n \"requested_to_company\": \"COMPANY-20190909-0000002\",\r\n \"requested_to_department\": \"DEPARTMENT-20190909-0000002\",\r\n \"requested_to_user\": \"USER-20190913-0000007\",\r\n \"requested_by_user\": \"USER-20190913-0000006\",\r\n \"requested_by_department\": \"admin\",\r\n \"template_no\": \"TMP-20190913-0000001\",\r\n \"frm_approvers\": [\r\n {\r\n \"id\": 2,\r\n \"level\": \"2\",\r\n \"delegation\": \"ddApprovssser\",\r\n \"user\": \"USER-20190913-0000009\",\r\n \"form_code\": \"FRM-20190913-0000002\",\r\n \"tmp_approver\": \"TMPAPR-20190913-0000002\"\r\n },\r\n {\r\n \"level\": \"3\",\r\n \"delegation\": \"ssHODs\",\r\n \"user\": \"USER-20190913-0000009\"\r\n }\r\n ],\r\n \"frm_stakes\": [\r\n {\r\n \"id\": 1,\r\n \"delegation\": \"sMandssatory Stakehssolder\",\r\n \"user\": \"USER-20190913-0000009\",\r\n \"form_code\": \"FRM-20190913-0000002\",\r\n \"tmp_stake\": \"TMPSTK-20190913-0000001\"\r\n },\r\n {\r\n \"delegation\": \"Stake Approver\",\r\n \"user\": \"USER-20190913-0000008\",\r\n \"form_code\": \"FRM-20190913-0000002\"\r\n }\r\n ],\r\n \"frm_attachments\": [\r\n {\r\n \"attachment_type\": \"ddHeldlo\",\r\n \"attachment_name\": \"heyu\",\r\n \"file_name\": \"Sample\",\r\n \"description\": \"Sameple Desc\",\r\n \"file_upload\": null,\r\n \"uploaded_by\": \"USER-20190913-0000006\",\r\n \"form_code\": \"FRM-20190913-0000002\",\r\n \"tmp_attach\": \"TMPATCH-20190913-0000001\"\r\n }\r\n ],\r\n \"frm_details\": [\r\n {\r\n \"id\": 1,\r\n \"field_idx\": \"Heldloss\",\r\n \"field_ref\": \"heyu\",\r\n \"field_val\": \"Sample\",\r\n \"field_props\": \"Sameple Desc\"\r\n },\r\n\t {\r\n \"field_idx\": \"added Hello\",\r\n \"field_ref\": \"heyu\",\r\n \"field_val\": \"Sample\",\r\n \"field_props\": \"Sameple Desc\",\r\n \"created\": \"2019-09-13T17:52:29.199518\",\r\n \"code\": \"FRMDETAIL-20190913-0000002\",\r\n \"form_code\": \"FRM-20190913-0000002\",\r\n \"tmp_detail\": \"TMPDETAIL-20190913-0000002\"\r\n }\r\n ]\r\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form/FRM-20190913-0000002/submit/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form",
"FRM-20190913-0000002",
"submit",
""
]
}
},
"response": []
},
{
"name": "Save",
"request": {
"method": "PATCH",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n \"requested_to_template_name\": \"Sample Templatess\",\r\n \"requested_to_objective\": \"Sasmple Ossbjective\",\r\n \"requested_to_target_date\": \"2019-09-03T13:59:29.694560\",\r\n \"requested_to_priority\": \"High\",\r\n \"description\": \"sample description\",\r\n \"company_desc\": \"Oneberry\",\r\n \"department_desc\": \"Oneberry Superuser\",\r\n \"requested_desc\": \"Super User\",\r\n \"requested_to_company\": \"COMPANY-20190909-0000002\",\r\n \"requested_to_department\": \"DEPARTMENT-20190909-0000002\",\r\n \"requested_to_user\": \"USER-20190913-0000007\",\r\n \"requested_by_user\": \"USER-20190913-0000006\",\r\n \"requested_by_department\": \"admin\",\r\n \"template_no\": \"TMP-20190913-0000001\",\r\n \"frm_approvers\": [\r\n {\r\n \"id\": 2,\r\n \"level\": \"2\",\r\n \"delegation\": \"ddApprovssser\",\r\n \"user\": \"USER-20190913-0000009\",\r\n \"form_code\": \"FRM-20190913-0000002\",\r\n \"tmp_approver\": \"TMPAPR-20190913-0000002\"\r\n },\r\n {\r\n \"level\": \"3\",\r\n \"delegation\": \"ssHODs\",\r\n \"user\": \"USER-20190913-0000009\"\r\n }\r\n ],\r\n \"frm_stakes\": [\r\n {\r\n \"id\": 1,\r\n \"delegation\": \"sMandssatory Stakehssolder\",\r\n \"user\": \"USER-20190913-0000009\",\r\n \"form_code\": \"FRM-20190913-0000002\",\r\n \"tmp_stake\": \"TMPSTK-20190913-0000001\"\r\n },\r\n {\r\n \"delegation\": \"Stake Approver\",\r\n \"user\": \"USER-20190913-0000008\",\r\n \"form_code\": \"FRM-20190913-0000002\"\r\n }\r\n ],\r\n \"frm_attachments\": [\r\n {\r\n \"attachment_type\": \"ddHeldlo\",\r\n \"attachment_name\": \"heyu\",\r\n \"file_name\": \"Sample\",\r\n \"description\": \"Sameple Desc\",\r\n \"file_upload\": null,\r\n \"uploaded_by\": \"USER-20190913-0000006\",\r\n \"form_code\": \"FRM-20190913-0000002\",\r\n \"tmp_attach\": \"TMPATCH-20190913-0000001\"\r\n }\r\n ],\r\n \"frm_details\": [\r\n {\r\n \"id\": 1,\r\n \"field_idx\": \"Heldloss\",\r\n \"field_ref\": \"heyu\",\r\n \"field_val\": \"Sample\",\r\n \"field_props\": \"Sameple Desc\"\r\n },\r\n\t {\r\n \"field_idx\": \"added Hello\",\r\n \"field_ref\": \"heyu\",\r\n \"field_val\": \"Sample\",\r\n \"field_props\": \"Sameple Desc\",\r\n \"created\": \"2019-09-13T17:52:29.199518\",\r\n \"code\": \"FRMDETAIL-20190913-0000002\",\r\n \"form_code\": \"FRM-20190913-0000002\",\r\n \"tmp_detail\": \"TMPDETAIL-20190913-0000002\"\r\n }\r\n ]\r\n}",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form/FRM-20190913-0000002/save/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form",
"FRM-20190913-0000002",
"save",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
},
{
"name": "CR Form Approver",
"item": [
{
"name": "List of Approvers",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form-approvers/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form-approvers",
""
]
}
},
"response": []
},
{
"name": "View Approver",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form-approvers/TMPAPR-20190909-0000001/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form-approvers",
"TMPAPR-20190909-0000001",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
},
{
"name": "CR Form Stakeholder",
"item": [
{
"name": "List of Stakeholders",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form-stakeholders/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form-stakeholders",
""
]
}
},
"response": []
},
{
"name": "View Stakeholder",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form-stakeholders/TMPSTK-20190909-0000001/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form-stakeholders",
"TMPSTK-20190909-0000001",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
},
{
"name": "CR Form Attachment",
"item": [
{
"name": "List of Attachments",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form-attachments/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form-attachments",
""
]
}
},
"response": []
},
{
"name": "View Attachment",
"protocolProfileBehavior": {
"disableBodyPruning": true
},
"request": {
"method": "GET",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n \"attachment_type\": \"Mandatory Attached\",\r\n \"attachment_name\": \"Mandatory Stakeholder\",\r\n \"file_name\": \"USER-20190909-0000005\",\r\n \"description\": \"Sample Desc 1\",\r\n \"file_upload\": null,\r\n \"code\": \"FRMATCH-20190909-0000001\",\r\n \"uploaded_by\": \"USER-20190909-0000005\",\r\n \"form_code\": \"FRM-20190909-0000005\",\r\n \"tmp_attach\": \"TMPATCH-20190909-0000001\"\r\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form-attachments/FRMATCH-20190909-0000001/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form-attachments",
"FRMATCH-20190909-0000001",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
},
{
"name": "CR Form Detail",
"item": [
{
"name": "List of Details",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form-details/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form-details",
""
]
}
},
"response": []
},
{
"name": "View Detail",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/form-details/FRMDETAIL-20190909-0000001/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"form-details",
"FRMDETAIL-20190909-0000001",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
}
],
"_postman_isSubFolder": true
},
{
"name": "CR Templates",
"item": [
{
"name": "CR Template Header",
"item": [
{
"name": "Template Header Post",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n\t\"requested_to_template_name\": \"Sample Template\",\r\n\t\"requested_to_template_id\": \"JTC5\",\r\n\t\"requested_to_objective\": \"Sample Objective\",\r\n\t\"requested_to_target_date\": \"10\",\r\n\t\"requested_to_priority\": \"High\",\r\n\t\"description\": \"sample description\",\r\n\t\"created_by_department\": \"admin\",\r\n\t\"created_by_user\": \"USER-20190913-0000006\",\r\n\t\"requested_to_company\": \"COMPANY-20190909-0000002\",\r\n\t\"requested_to_department\": \"DEPARTMENT-20190909-0000002\",\r\n\t\"requested_to_user\": \"USER-20190913-0000007\",\r\n\t\r\n\t\r\n\t\"tmp_approvers\": [{\r\n\t\t\t\"level\": \"1\",\r\n\t\t\t\"delegation\": \"HOD\",\r\n\t\t\t\"user\": \"\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"level\": \"2\",\r\n\t\t\t\"delegation\": \"Approver\",\r\n\t\t\t\"user\": \"USER-20190913-0000009\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"level\": \"3\",\r\n\t\t\t\"delegation\": \"Approver\",\r\n\t\t\t\"user\": \"USER-20190913-0000008\"\r\n\t\t}\r\n\t],\r\n\t\r\n\t\"tmp_stakes\": [{\r\n\t\t\t\"delegation\": \"Mandatory Stakeholder\",\r\n\t\t\t\"user\": \"USER-20190913-0000009\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"delegation\": \"Stake Approver\",\r\n\t\t\t\"user\": \"USER-20190913-0000008\"\r\n\t\t}\r\n\t],\r\n\t\r\n\t\"tmp_attachments\": [{\r\n\t\t\t\"attachment_type\": \"Hello\",\r\n\t\t\t\"attachment_name\": \"heyu\",\r\n\t\t\t\"file_name\": \"Sample\",\r\n\t\t\t\"description\": \"Sameple Desc\",\r\n\t\t\t\"uploaded_by\": \"USER-20190913-0000006\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"attachment_type\": \"Hello\",\r\n\t\t\t\"attachment_name\": \"heyu\",\r\n\t\t\t\"file_name\": \"Sample\",\r\n\t\t\t\"description\": \"Sameple Desc\",\r\n\t\t\t\"uploaded_by\": \"USER-20190913-0000006\"\r\n\t\t}\r\n\t],\r\n\t\r\n\t\"tmp_details\": [{\r\n\t\t\t\"field_idx\": \"Hello\",\r\n\t\t\t\"field_ref\": \"heyu\",\r\n\t\t\t\"field_val\": \"Sample\",\r\n\t\t\t\"field_props\": \"Sameple Desc\"\r\n\t\t},\r\n\t\t{\r\n\t\t\t\"field_idx\": \"Hello\",\r\n\t\t\t\"field_ref\": \"heyu\",\r\n\t\t\t\"field_val\": \"Sample\",\r\n\t\t\t\"field_props\": \"Sameple Desc\"\r\n\t\t}\r\n\t]\r\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template-post/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template-post",
""
]
}
},
"response": []
},
{
"name": "List of Templates",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template",
""
]
}
},
"response": []
},
{
"name": "View Template",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template/TMP-20190913-0000001/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template",
"TMP-20190913-0000001",
""
]
}
},
"response": []
},
{
"name": "Edit Template",
"request": {
"method": "PATCH",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n \"template_no\": \"TMP-20190918-0000004\",\r\n \"requested_to_template_name\": \"Sample Template\",\r\n \"requested_to_objective\": \"Sample Objective\",\r\n \"requested_to_target_date\": \"10\",\r\n \"requested_to_priority\": \"High\",\r\n \"description\": \"sample description\",\r\n \"created\": \"2019-09-18T15:01:45.303107\",\r\n \"requested_to_template_id\": \"JTC5\",\r\n \"requested_to_company\": \"COMPANY-20190909-0000002\",\r\n \"requested_to_department\": \"DEPARTMENT-20190909-0000002\",\r\n \"requested_to_user\": \"USER-20190913-0000007\",\r\n \"created_by_user\": \"USER-20190913-0000006\",\r\n \"created_by_department\": \"admin\",\r\n \"tmp_approvers\": [\r\n {\r\n \"id\": 7,\r\n \"level\": \"2\",\r\n \"delegation\": \"HOD\",\r\n \"created\": \"2019-09-18T15:01:45.360109\",\r\n \"code\": \"TMPAPR-20190918-0000007\",\r\n \"archived_at\": null,\r\n \"user\": null,\r\n \"template_no\": \"TMP-20190918-0000004\"\r\n },\r\n {\r\n \"id\": 9,\r\n \"level\": \"3\",\r\n \"delegation\": \"Approver\",\r\n \"created\": \"2019-09-18T15:01:45.413106\",\r\n \"code\": \"TMPAPR-20190918-0000009\",\r\n \"archived_at\": null,\r\n \"user\": \"USER-20190913-0000008\",\r\n \"template_no\": \"TMP-20190918-0000004\"\r\n },\r\n {\r\n \"id\": 10,\r\n \"level\": \"10\",\r\n \"delegation\": \"HODss\",\r\n \"created\": \"2019-09-18T15:06:19.496306\",\r\n \"code\": \"TMPAPR-20190918-0000010\",\r\n \"archived_at\": null,\r\n \"user\": null,\r\n \"template_no\": \"TMP-20190918-0000004\"\r\n }\r\n ],\r\n \"tmp_stakes\": [\r\n {\r\n \"id\": 5,\r\n \"delegation\": \"Mandatory Stakeholder\",\r\n \"created\": \"2019-09-18T15:01:45.423110\",\r\n \"code\": \"TMPSTK-20190918-0000005\",\r\n \"archived_at\": null,\r\n \"user\": \"USER-20190913-0000009\",\r\n \"template_no\": \"TMP-20190918-0000004\"\r\n },\r\n {\r\n \"id\": 6,\r\n \"delegation\": \"Stake Approver\",\r\n \"created\": \"2019-09-18T15:01:45.426109\",\r\n \"code\": \"TMPSTK-20190918-0000006\",\r\n \"archived_at\": null,\r\n \"user\": \"USER-20190913-0000008\",\r\n \"template_no\": \"TMP-20190918-0000004\"\r\n }\r\n ],\r\n \"tmp_attachments\": [\r\n {\r\n \"id\": 5,\r\n \"attachment_type\": \"Hello\",\r\n \"attachment_name\": \"heyu\",\r\n \"file_name\": \"Sample\",\r\n \"description\": \"Sameple Desc\",\r\n \"file_upload\": null,\r\n \"created\": \"2019-09-18T15:01:45.434107\",\r\n \"code\": \"TMPATCH-20190918-0000005\",\r\n \"archived_at\": null,\r\n \"uploaded_by\": \"USER-20190913-0000006\",\r\n \"template_no\": \"TMP-20190918-0000004\"\r\n },\r\n {\r\n \"id\": 6,\r\n \"attachment_type\": \"Hello\",\r\n \"attachment_name\": \"heyu\",\r\n \"file_name\": \"Sample\",\r\n \"description\": \"Sameple Desc\",\r\n \"file_upload\": null,\r\n \"created\": \"2019-09-18T15:01:45.484112\",\r\n \"code\": \"TMPATCH-20190918-0000006\",\r\n \"archived_at\": null,\r\n \"uploaded_by\": \"USER-20190913-0000006\",\r\n \"template_no\": \"TMP-20190918-0000004\"\r\n }\r\n ],\r\n \"tmp_details\": [\r\n {\r\n \"id\": 5,\r\n \"field_idx\": \"Hello\",\r\n \"field_ref\": \"heyu\",\r\n \"field_val\": \"Sample\",\r\n \"field_props\": \"Sameple Desc\",\r\n \"created\": \"2019-09-18T15:01:45.494107\",\r\n \"code\": \"TMPDETAIL-20190918-0000005\",\r\n \"archived_at\": null,\r\n \"template_no\": \"TMP-20190918-0000004\"\r\n },\r\n {\r\n \"id\": 6,\r\n \"field_idx\": \"Hello\",\r\n \"field_ref\": \"heyu\",\r\n \"field_val\": \"Sample\",\r\n \"field_props\": \"Sameple Desc\",\r\n \"created\": \"2019-09-18T15:01:45.495108\",\r\n \"code\": \"TMPDETAIL-20190918-0000006\",\r\n \"archived_at\": null,\r\n \"template_no\": \"TMP-20190918-0000004\"\r\n }\r\n ]\r\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template/TMP-20190918-0000004/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template",
"TMP-20190918-0000004",
""
]
}
},
"response": []
},
{
"name": "Archive Template",
"request": {
"method": "PATCH",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template/archived/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template",
"archived",
""
]
}
},
"response": []
},
{
"name": "Retrieve Template",
"request": {
"method": "PATCH",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template/TMP-20190909-0000002/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template",
"TMP-20190909-0000002",
""
]
}
},
"response": []
},
{
"name": "Delete Template",
"request": {
"method": "DELETE",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template/TMP-20190909-0000002/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template",
"TMP-20190909-0000002",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
},
{
"name": "CR Template Approver",
"item": [
{
"name": "List of Approvers",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template-approvers/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template-approvers",
""
]
}
},
"response": []
},
{
"name": "View Approver",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template-approvers/TMPAPR-20190911-0000001/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template-approvers",
"TMPAPR-20190911-0000001",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
},
{
"name": "CR Template Stakeholder",
"item": [
{
"name": "List of Stakeholders",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template-stakeholders/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template-stakeholders",
""
]
}
},
"response": []
},
{
"name": "View Stakeholder",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template-stakeholders/TMPSTK-20190909-0000001/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template-stakeholders",
"TMPSTK-20190909-0000001",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
},
{
"name": "CR Template Attachment",
"item": [
{
"name": "List of Attachments",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template-attachments/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template-attachments",
""
]
}
},
"response": []
},
{
"name": "View Attachment",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template-attachments/TMPATCH-20190909-0000001/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template-attachments",
"TMPATCH-20190909-0000001",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
},
{
"name": "CR Template Detail",
"item": [
{
"name": "List of Details",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template-details/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template-details",
""
]
}
},
"response": []
},
{
"name": "View Detail",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/change-request/template-details/TMPDETAIL-20190909-0000001/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"change-request",
"template-details",
"TMPDETAIL-20190909-0000001",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
}
],
"_postman_isSubFolder": true
}
]
},
{
"name": "Notifications",
"item": [
{
"name": "List Notifications by account_no",
"protocolProfileBehavior": {
"disableBodyPruning": true
},
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "951574546a6d45af34dfef101840bba27f1ab574",
"type": "string"
}
]
},
"method": "GET",
"header": [],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "http://localhost:8000/api/v1/management/notifications/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"notifications",
""
]
}
},
"response": []
},
{
"name": "Create Notification",
"request": {
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "37d5c7c08f82cc0f8a3a73634d3b6a78ead3da37",
"type": "string"
}
]
},
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"type": "text",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"form_header_code\": \"FRM-20190902-000001\",\n \"notif_type\": \"ACTIVITY\",\n \"message\": \"Oneberry CCTV Replacement Request due in 5 days\",\n \"is_read\": false,\n \"app\": \"APP-20190903-0000002\",\n \"account_no\": \"USER-20190904-0000002\",\n \"sender_account_no\": \"USER-20190904-0000002\"\n}"
},
"url": {
"raw": "http://devapi.rmsv2.oneberrysystem.com:7020/api/v1/notifications/",
"protocol": "http",
"host": [
"devapi",
"rmsv2",
"oneberrysystem",
"com"
],
"port": "7020",
"path": [
"api",
"v1",
"notifications",
""
]
}
},
"response": []
},
{
"name": "Update Read Status by ids",
"request": {
"auth": {
"type": "basic",
"basic": [
{
"key": "password",
"value": "password123",
"type": "string"
},
{
"key": "username",
"value": "admin",
"type": "string"
}
]
},
"method": "PATCH",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"type": "text",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\n\t\"ids\": [8]\n}"
},
"url": {
"raw": "http://devapi.rmsv2.oneberrysystem.com/api/v1/notifications/USER-20190903-0000002/seen/",
"protocol": "http",
"host": [
"devapi",
"rmsv2",
"oneberrysystem",
"com"
],
"path": [
"api",
"v1",
"notifications",
"USER-20190903-0000002",
"seen",
""
]
}
},
"response": []
},
{
"name": "Update Read Status by account_no",
"request": {
"auth": {
"type": "basic",
"basic": [
{
"key": "password",
"value": "password123",
"type": "string"
},
{
"key": "username",
"value": "admin",
"type": "string"
}
]
},
"method": "PATCH",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"type": "text",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "http://devapi.rmsv2.oneberrysystem.com/api/v1/notifications/USER-20190903-0000002/seenall/",
"protocol": "http",
"host": [
"devapi",
"rmsv2",
"oneberrysystem",
"com"
],
"path": [
"api",
"v1",
"notifications",
"USER-20190903-0000002",
"seenall",
""
]
}
},
"response": []
}
]
},
{
"name": "Master",
"item": [
{
"name": "Company Listing",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/master/companies/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"master",
"companies",
""
]
}
},
"response": []
},
{
"name": "Department Listing",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/master/departments/?company=1",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"master",
"departments",
""
],
"query": [
{
"key": "company",
"value": "1"
}
]
}
},
"response": []
},
{
"name": "User type listing",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/master/user-types/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"master",
"user-types",
""
]
}
},
"response": []
}
]
},
{
"name": "Management",
"item": [
{
"name": "Application Management",
"item": [
{
"name": "List of Applications",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/management/applications/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"applications",
""
]
}
},
"response": []
},
{
"name": "View Application",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/management/applications/1/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"applications",
"1",
""
]
}
},
"response": []
},
{
"name": "Create Application",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"type": "text",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\n\t\"name\": \"Asset Management System\"\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/applications/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"applications",
""
]
}
},
"response": []
},
{
"name": "Edit Application",
"request": {
"method": "PUT",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n\t\"name\": \"rms2\"\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/applications/APP-20190917-0000001/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"applications",
"APP-20190917-0000001",
""
]
}
},
"response": []
},
{
"name": "Delete Application",
"request": {
"method": "DELETE",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"type": "text",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\n\t\"name\": \"rms2\"\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/applications/APP-20190917-0000004/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"applications",
"APP-20190917-0000004",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
},
{
"name": "Companies Management",
"item": [
{
"name": "List of Companies",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/management/companies/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"companies",
""
]
}
},
"response": []
},
{
"name": "View Company",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/management/companies/COMPANY-20190909-0000001/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"companies",
"COMPANY-20190909-0000001",
""
]
}
},
"response": []
},
{
"name": "Create Company",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n\t\"name\": \"Total Integrated Resources\",\n\t\"contact_details\": \"2152509\"\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/companies/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"companies",
""
]
}
},
"response": []
},
{
"name": "Edit Company",
"request": {
"method": "PUT",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n\t\"name\": \"TIR2\",\n\t\"contact_details\": \"2152509\"\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/companies/4/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"companies",
"4",
""
]
}
},
"response": []
},
{
"name": "Delete Company",
"request": {
"method": "DELETE",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"type": "text",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\n\t\"name\": \"TIR2\",\n\t\"contact_details\": \"2152509\"\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/companies/4/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"companies",
"4",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
},
{
"name": "Department Management",
"item": [
{
"name": "List of Department",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/management/departments/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"departments",
""
]
}
},
"response": []
},
{
"name": "View Department",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/management/departments/DEPARTMENT-20190909-0000002/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"departments",
"DEPARTMENT-20190909-0000002",
""
]
}
},
"response": []
},
{
"name": "Create Department",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"name\": \"Business Development\",\n \"company\": \"COMPANY-20190909-0000001\"\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/departments/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"departments",
""
]
}
},
"response": []
},
{
"name": "Edit Department",
"request": {
"method": "PUT",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"type": "text",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"name\": \"Business Developments\",\n \"company\": \"COMPANY-20190909-0000001\"\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/departments/DEPARTMENT-20190917-0000002/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"departments",
"DEPARTMENT-20190917-0000002",
""
]
}
},
"response": []
},
{
"name": "Delete Department",
"request": {
"method": "DELETE",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"type": "text",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"name\": \"Business Developments\",\n \"company\": 2\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/departments/2/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"departments",
"2",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
},
{
"name": "Module Management",
"item": [
{
"name": "List of Module",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/management/modules/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"modules",
""
]
}
},
"response": []
},
{
"name": "View Module",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/management/modules/5/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"modules",
"5",
""
]
}
},
"response": []
},
{
"name": "Create Module",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"name\": \"User Management\",\n \"parent\": 0,\n \"sort_id\": 1,\n \"application\": \"APP-20190917-0000001\"\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/modules/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"modules",
""
]
}
},
"response": []
},
{
"name": "Edit Module",
"request": {
"method": "PUT",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"type": "text",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"name\": \"Assets NVM\",\n \"parent\": 10,\n \"sort_id\": 1,\n \"application\": 2\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/modules/12/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"modules",
"12",
""
]
}
},
"response": []
},
{
"name": "Edit Module Copy",
"request": {
"method": "DELETE",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"type": "text",
"value": "application/json"
}
],
"body": {
"mode": "raw",
"raw": "{\n \"name\": \"Assets NVM\",\n \"parent\": 10,\n \"sort_id\": 1,\n \"application\": 2\n}"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/modules/12/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"modules",
"12",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
},
{
"name": "User",
"item": [
{
"name": "List of Users",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/management/users/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"users",
""
]
}
},
"response": []
},
{
"name": "View Users",
"request": {
"method": "GET",
"header": [],
"url": {
"raw": "http://localhost:8000/api/v1/management/users/USER-20190909-0000005/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"users",
"USER-20190909-0000005",
""
]
}
},
"response": []
},
{
"name": "Create User",
"request": {
"method": "POST",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n\t\"application\":[\"APP-20190909-0000002\",\"APP-20190909-0000003\"],\r\n\t\"department\": \"DEPARTMENT-20190909-0000002\",\r\n\t\"user_type\": \"OUA\",\r\n\t\"name\": \"Gladys Forte\",\r\n\t\"username\": \"gforte\",\r\n\t\"doa\":\"\",\r\n\t\"default_app\": \"app\",\r\n\t\"contact_no\": \"1312313\",\r\n\t\"email\": \"gladys@tirsolutions.com\"\r\n}\r\n",
"options": {
"raw": {
"language": "json"
}
}
},
"url": {
"raw": "http://localhost:8000/api/v1/management/users/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"users",
""
]
}
},
"response": []
},
{
"name": "Edit User",
"request": {
"method": "PUT",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n\t\"application\":[\"APP-20190917-0000001\",\"APP-20190917-0000003\"],\r\n\t\"department\": \"DEPARTMENT-20190917-0000002\",\r\n\t\"user_type\": \"OUA\",\r\n\t\"name\": \"Ritas\",\r\n\t\"username\": \"obrita\",\r\n\t\"doa\":\"\",\r\n\t\"default_app\": \"APP-20190917-0000001\",\r\n\t\"contact_no\": \"1312313\",\r\n\t\"email\": \"test@gmail.com\"\r\n}\r\n"
},
"url": {
"raw": "http://localhost:8000/api/v1/management/users/USER-20190917-0000026/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"management",
"users",
"USER-20190917-0000026",
""
]
}
},
"response": []
},
{
"name": "Change Password",
"request": {
"method": "PUT",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": "{\r\n\t\"application\":[1,3],\r\n\t\"department\": 1,\r\n\t\"user_type\": \"OUA\",\r\n\t\"name\": \"Ritas\",\r\n\t\"username\": \"OBRITA\",\r\n\t\"password\": \"password123\",\r\n\t\"doa\":\"\",\r\n\t\"default_app\": \"RMS\",\r\n\t\"contact_no\": \"1312313\",\r\n\t\"email\": \"test@gmail.com\"\r\n}\r\n"
},
"url": {
"raw": "http://localhost:8000/api/v1/users/3/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"users",
"3",
""
]
}
},
"response": []
},
{
"name": "Delete User",
"request": {
"method": "DELETE",
"header": [
{
"key": "Content-Type",
"name": "Content-Type",
"value": "application/json",
"type": "text"
}
],
"body": {
"mode": "raw",
"raw": ""
},
"url": {
"raw": "http://localhost:8000/api/v1/users/3/",
"protocol": "http",
"host": [
"localhost"
],
"port": "8000",
"path": [
"api",
"v1",
"users",
"3",
""
]
}
},
"response": []
}
],
"_postman_isSubFolder": true
}
]
}
],
"auth": {
"type": "bearer",
"bearer": [
{
"key": "token",
"value": "cdbde3c86a79abdf8b7e62956c0e008ae4a0d7f3",
"type": "string"
}
]
},
"event": [
{
"listen": "prerequest",
"script": {
"id": "ab5de420-cb55-4194-97ae-c22e953c38ce",
"type": "text/javascript",
"exec": [
""
]
}
},
{
"listen": "test",
"script": {
"id": "6de844e2-8111-4f18-ac32-517a9571afb2",
"type": "text/javascript",
"exec": [
""
]
}
}
],
"protocolProfileBehavior": {}
}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
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