Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Sign in
Toggle navigation
R
red-ci-cd
Project overview
Project overview
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
red-group-test
red-ci-cd
Commits
d8bebbcb
Commit
d8bebbcb
authored
Sep 11, 2019
by
Gladys Forte
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
commit
parent
90205001
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
108 additions
and
55 deletions
+108
-55
app/applicationlayer/cms/form/serializers.py
app/applicationlayer/cms/form/serializers.py
+52
-42
app/applicationlayer/cms/form/views.py
app/applicationlayer/cms/form/views.py
+1
-1
app/applicationlayer/cms/template/serializers.py
app/applicationlayer/cms/template/serializers.py
+5
-5
app/applicationlayer/cms/template/views.py
app/applicationlayer/cms/template/views.py
+44
-1
app/applicationlayer/cms/utils_cr.py
app/applicationlayer/cms/utils_cr.py
+1
-1
app/businesslayer/changerequest/change_request.py
app/businesslayer/changerequest/change_request.py
+5
-5
No files found.
app/applicationlayer/cms/form/serializers.py
View file @
d8bebbcb
...
...
@@ -2,44 +2,7 @@ from app.entities import models
from
rest_framework
import
serializers
from
django.db.models
import
Q
from
app.applicationlayer.cms.utils_cr
import
logged_user
class
ChangeRequestFormHeaderSerializer
(
serializers
.
ModelSerializer
):
def
to_representation
(
self
,
instance
):
ret
=
super
()
.
to_representation
(
instance
)
try
:
# id_number = self.context.get('request').META.get('user')
id_number
=
"USER-20190909-0000005"
current_level
=
models
.
ChangeRequestFormApprovers
.
objects
.
filter
(
Q
(
form_code
=
ret
[
'form_code'
])
&
Q
(
deleted_at
=
None
)
&
(
Q
(
action
=
''
)
|
Q
(
action
=
None
))
)
.
order_by
(
'level'
)
if
current_level
.
first
()[
'user'
]
==
id_number
:
if
instance
.
status
.
lower
()
==
'rejected'
:
approver
=
'No'
elif
instance
.
status
.
lower
()
==
'cancelled'
:
approver
=
'No'
elif
instance
.
status
.
lower
()
==
'closed'
:
approver
=
'No'
else
:
approver
=
'Yes'
else
:
approver
=
'No'
ret
[
'action'
]
=
approver
return
ret
except
Exception
as
e
:
ret
[
'action'
]
=
"No"
return
ret
class
Meta
:
model
=
models
.
ChangeRequestFormHeader
fields
=
'__all__'
read_only_fields
=
[
'created'
,
'deleted_at'
,
'form_code'
]
from
drf_writable_nested
import
WritableNestedModelSerializer
class
ChangeRequestFormApproversSerializer
(
...
...
@@ -69,7 +32,7 @@ class ChangeRequestFormApproversSerializer(
class
Meta
:
model
=
models
.
ChangeRequestFormApprovers
fields
=
'__all__'
read_only_fields
=
[
'created'
,
'
delet
ed_at'
,
'code'
]
read_only_fields
=
[
'created'
,
'
archiv
ed_at'
,
'code'
]
class
ChangeRequestFormStakeHoldersSerializer
(
...
...
@@ -78,7 +41,7 @@ class ChangeRequestFormStakeHoldersSerializer(
class
Meta
:
model
=
models
.
ChangeRequestFormStakeHolders
fields
=
'__all__'
read_only_fields
=
[
'created'
,
'
delet
ed_at'
,
'code'
]
read_only_fields
=
[
'created'
,
'
archiv
ed_at'
,
'code'
]
class
ChangeRequestFormAttachmentsSerializer
(
...
...
@@ -87,7 +50,7 @@ class ChangeRequestFormAttachmentsSerializer(
class
Meta
:
model
=
models
.
ChangeRequestFormAttachments
fields
=
'__all__'
read_only_fields
=
[
'created'
,
'
delet
ed_at'
,
'code'
]
read_only_fields
=
[
'created'
,
'
archiv
ed_at'
,
'code'
]
class
ChangeRequestFormDetailsSerializer
(
...
...
@@ -96,4 +59,51 @@ class ChangeRequestFormDetailsSerializer(
class
Meta
:
model
=
models
.
ChangeRequestFormDetails
fields
=
'__all__'
read_only_fields
=
[
'created'
,
'deleted_at'
,
'code'
]
read_only_fields
=
[
'created'
,
'archived_at'
,
'code'
]
class
ChangeRequestFormHeaderSerializer
(
serializers
.
ModelSerializer
):
frm_approvers
=
ChangeRequestFormApproversSerializer
(
many
=
True
,
required
=
False
)
frm_stakes
=
ChangeRequestFormStakeHoldersSerializer
(
many
=
True
,
required
=
False
)
frm_attachments
=
ChangeRequestFormAttachmentsSerializer
(
many
=
True
,
required
=
False
)
frm_details
=
ChangeRequestFormDetailsSerializer
(
many
=
True
,
required
=
False
)
def
to_representation
(
self
,
instance
):
ret
=
super
()
.
to_representation
(
instance
)
try
:
# id_number = self.context.get('request').META.get('user')
id_number
=
"USER-20190909-0000005"
current_level
=
models
.
ChangeRequestFormApprovers
.
objects
.
filter
(
Q
(
form_code
=
ret
[
'form_code'
])
&
Q
(
archived_at
=
None
)
&
(
Q
(
action
=
''
)
|
Q
(
action
=
None
))
)
.
order_by
(
'level'
)
if
current_level
.
first
()[
'user'
]
==
id_number
:
if
instance
.
status
.
lower
()
==
'rejected'
:
approver
=
'No'
elif
instance
.
status
.
lower
()
==
'cancelled'
:
approver
=
'No'
elif
instance
.
status
.
lower
()
==
'closed'
:
approver
=
'No'
else
:
approver
=
'Yes'
else
:
approver
=
'No'
ret
[
'action'
]
=
approver
return
ret
except
Exception
as
e
:
ret
[
'action'
]
=
"No"
return
ret
class
Meta
:
model
=
models
.
ChangeRequestFormHeader
fields
=
'__all__'
read_only_fields
=
[
'created'
,
'archived_at'
,
'form_code'
]
app/applicationlayer/cms/form/views.py
View file @
d8bebbcb
...
...
@@ -263,7 +263,7 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
serializer
=
self
.
get_serializer
(
instance
)
return
Response
(
serializer
.
data
)
@
transaction
.
atomic
@
transaction
.
atomic
def
partial_update
(
self
,
request
,
*
args
,
**
kwargs
):
partial
=
kwargs
.
pop
(
'partial'
,
False
)
...
...
app/applicationlayer/cms/template/serializers.py
View file @
d8bebbcb
...
...
@@ -10,7 +10,7 @@ class ChangeRequestTemplateApproversSerializer(
class
Meta
:
model
=
models
.
ChangeRequestTemplateApprovers
fields
=
'__all__'
read_only_fields
=
[
'created'
,
'
delet
ed_at'
,
'code'
]
read_only_fields
=
[
'created'
,
'
archiv
ed_at'
,
'code'
]
class
ChangeRequestTemplateStakeHoldersSerializer
(
...
...
@@ -19,7 +19,7 @@ class ChangeRequestTemplateStakeHoldersSerializer(
class
Meta
:
model
=
models
.
ChangeRequestTemplateStakeHolders
fields
=
'__all__'
read_only_fields
=
[
'created'
,
'
delet
ed_at'
,
'code'
]
read_only_fields
=
[
'created'
,
'
archiv
ed_at'
,
'code'
]
class
ChangeRequestTemplateAttachmentsSerializer
(
...
...
@@ -28,7 +28,7 @@ class ChangeRequestTemplateAttachmentsSerializer(
class
Meta
:
model
=
models
.
ChangeRequestTemplateAttachments
fields
=
'__all__'
read_only_fields
=
[
'created'
,
'
delet
ed_at'
,
'code'
]
read_only_fields
=
[
'created'
,
'
archiv
ed_at'
,
'code'
]
class
ChangeRequestTemplateDetailsSerializer
(
...
...
@@ -37,7 +37,7 @@ class ChangeRequestTemplateDetailsSerializer(
class
Meta
:
model
=
models
.
ChangeRequestTemplateDetails
fields
=
'__all__'
read_only_fields
=
[
'created'
,
'
delet
ed_at'
,
'code'
]
read_only_fields
=
[
'created'
,
'
archiv
ed_at'
,
'code'
]
class
ChangeRequestTemplatesSerializer
(
...
...
@@ -63,4 +63,4 @@ class ChangeRequestTemplatesSerializer(
'created_by_user'
,
'created_by_department'
,
'tmp_approvers'
,
'tmp_stakes'
,
'tmp_attachments'
,
'tmp_details'
)
read_only_fields
=
[
'created'
,
'deleted_at'
,
'template_no'
]
\ No newline at end of file
read_only_fields
=
[
'created'
,
'archived_at'
,
'template_no'
]
\ No newline at end of file
app/applicationlayer/cms/template/views.py
View file @
d8bebbcb
...
...
@@ -97,7 +97,50 @@ class ChangeRequestTemplatesViewset(meviewsets.ModelViewSet):
return
Response
(
serializer
.
data
)
return
Response
(
"Template cannot edit due to existing transaction/s"
,
"Unable to edit due to existing transaction"
,
status
=
status
.
HTTP_400_BAD_REQUEST
)
@
action
(
methods
=
[
'PATCH'
],
detail
=
True
,
url_path
=
'archived'
,
url_name
=
'archived'
)
def
archived
(
self
,
request
,
*
args
,
**
kwargs
):
template_no
=
kwargs
[
'template_no'
]
tmp_no_exists
=
models
.
ChangeRequestFormHeader
.
objects
.
filter
(
template_no
=
template_no
)
if
not
tmp_no_exists
:
models
.
ChangeRequestTemplateDetails
.
objects
.
filter
(
template_no
=
template_no
)
.
update
(
archived_at
=
datetime
.
now
())
models
.
ChangeRequestTemplateAttachments
.
objects
.
filter
(
template_no
=
template_no
)
.
update
(
archived_at
=
datetime
.
now
())
models
.
ChangeRequestTemplateHeader
.
objects
.
filter
(
template_no
=
template_no
)
.
update
(
archived_at
=
datetime
.
now
())
models
.
ChangeRequestTemplateApprovers
.
objects
.
filter
(
template_no
=
template_no
)
.
update
(
archived_at
=
datetime
.
now
())
models
.
ChangeRequestTemplateStakeHolders
.
objects
.
filter
(
template_no
=
template_no
)
.
update
(
archived_at
=
datetime
.
now
())
return
Response
(
"Template successfully archived"
,
status
=
status
.
HTTP_200_OK
)
return
Response
(
"Unable to archive due to existing transaction"
,
status
=
status
.
HTTP_400_BAD_REQUEST
)
...
...
app/applicationlayer/cms/utils_cr.py
View file @
d8bebbcb
...
...
@@ -153,7 +153,7 @@ def receiver_body(
def
get_template_instance
(
form_code
):
template_instance
=
models
.
ChangeRequestFormHeader
.
objects
.
filter
(
Q
(
form_code
=
form_code
)
&
Q
(
delet
ed_at
=
None
)
Q
(
archiv
ed_at
=
None
)
)
.
first
()
return
template_instance
...
...
app/businesslayer/changerequest/change_request.py
View file @
d8bebbcb
...
...
@@ -22,19 +22,19 @@ def list_by_user(user_id_number):
approver
=
models
.
ChangeRequestFormApprovers
.
objects
.
filter
(
Q
(
user
=
user_id_number
)
&
Q
(
delet
ed_at
=
None
)
Q
(
archiv
ed_at
=
None
)
)
approver
=
[
data
.
form_code
for
data
in
approver
]
stake
=
models
.
ChangeRequestFormStakeHolders
.
objects
.
filter
(
Q
(
user
=
user_id_number
)
&
Q
(
delet
ed_at
=
None
)
Q
(
archiv
ed_at
=
None
)
)
stake
=
[
data
.
form_code
for
data
in
stake
]
headers
=
models
.
ChangeRequestFormHeader
.
objects
.
filter
(
delet
ed_at
=
None
,
archiv
ed_at
=
None
,
requested_by_user
=
user_id_number
)
headers
=
[
data
.
form_code
for
data
in
headers
]
...
...
@@ -52,7 +52,7 @@ def list_by_user(user_id_number):
# priviledgedList = models.ChangeRequestFormHeader.objects.filter(
# requested_to_department__in=crViews,
#
delet
ed_at=None,
#
archiv
ed_at=None,
# )
# priviledgedCrs = [data['form_code'] for data in priviledgedList]
...
...
@@ -62,7 +62,7 @@ def list_by_user(user_id_number):
return_queryset
=
models
.
ChangeRequestFormHeader
.
objects
.
filter
(
form_code__in
=
form_code
,
delet
ed_at
=
None
,
archiv
ed_at
=
None
,
)
exclude
=
return_queryset
.
filter
(
status__iexact
=
'Draft'
,
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment