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
25e13d79
Commit
25e13d79
authored
Sep 26, 2019
by
John Red Medrano
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'RMSv2' of
http://42.61.118.105:7990/scm/rms/api-main-service
into red-develop
parents
4a39a154
d45f7afb
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
131 additions
and
145 deletions
+131
-145
app/applicationlayer/cms/form/serializers.py
app/applicationlayer/cms/form/serializers.py
+6
-0
app/applicationlayer/cms/form/views.py
app/applicationlayer/cms/form/views.py
+80
-115
app/applicationlayer/cms/template/views.py
app/applicationlayer/cms/template/views.py
+33
-30
app/applicationlayer/cms/utils_cr.py
app/applicationlayer/cms/utils_cr.py
+12
-0
No files found.
app/applicationlayer/cms/form/serializers.py
View file @
25e13d79
...
...
@@ -2,6 +2,7 @@ from app.entities import models
from
rest_framework
import
serializers
from
django.db.models
import
Q
from
drf_writable_nested
import
WritableNestedModelSerializer
from
django.forms.models
import
model_to_dict
from
app.applicationlayer.cms.utils_cr
import
(
get_account_details
,
get_dept_details
,
get_companies_details
)
...
...
@@ -27,6 +28,11 @@ class ChangeRequestFormApproversSerializer(
ret
[
'name'
]
=
name
ret
[
'department'
]
=
department
ret
[
'company'
]
=
company
# ret['company'] = model_to_dict(instance.user.department.company)
# ret['department'] = model_to_dict(instance.user.department)
# ret['name'] = model_to_dict(instance.user)
return
ret
except
Exception
as
e
:
...
...
app/applicationlayer/cms/form/views.py
View file @
25e13d79
...
...
@@ -375,12 +375,21 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
form_code
=
kwargs
[
'form_code'
]
# get prefix from template header
frm
=
models
.
ChangeRequestFormHeader
.
objects
.
get
(
form_code
=
form_code
)
tmp_prefix
=
models
.
ChangeRequestTemplateHeader
.
objects
.
get
(
template_no
=
frm
.
template_no
.
template_no
)
status_update
=
{
"status"
:
'Draft'
}
data_update
=
{
"status"
:
'Draft'
,
"created"
:
datetime
.
now
(),
"requested_to_template_id"
:
tmp_prefix
.
requested_to_template_id
}
serializer
=
self
.
get_serializer
(
instance
,
data
=
status
_update
,
data
=
data
_update
,
partial
=
partial
)
serializer
.
is_valid
(
raise_exception
=
True
)
...
...
@@ -415,7 +424,8 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
'action'
:
None
,
'remarks'
:
None
,
'date_sent'
:
None
,
'action_date'
:
None
'action_date'
:
None
,
'created'
:
datetime
.
now
()
}
approver_data
.
append
(
approver_add
)
...
...
@@ -602,7 +612,7 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
)
def
save
(
self
,
request
,
*
args
,
**
kwargs
):
partial
=
kwargs
.
pop
(
'partial'
,
Fals
e
)
partial
=
kwargs
.
pop
(
'partial'
,
Tru
e
)
instance
=
self
.
get_object
()
form_code
=
kwargs
[
'form_code'
]
...
...
@@ -698,7 +708,7 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
)
def
submit
(
self
,
request
,
*
args
,
**
kwargs
):
partial
=
kwargs
.
pop
(
'partial'
,
Fals
e
)
partial
=
kwargs
.
pop
(
'partial'
,
Tru
e
)
instance
=
self
.
get_object
()
form_code
=
kwargs
[
'form_code'
]
...
...
@@ -707,16 +717,31 @@ class ChangeRequestFormsViewset(meviewsets.ModelViewSet):
# generate batchno history
batchno
=
get_max_batchno
(
"batch"
)
# generate requested_to_template_id
data_update
=
{
"status"
:
'Pendsing'
,
"created"
:
datetime
.
now
(),
"requested_to_template_id"
:
"JTC"
}
data
=
{
**
form_data
,
**
data_update
}
# update form header
serializer
=
self
.
get_serializer
(
instance
,
data
=
form_
data
,
data
=
data
,
partial
=
partial
)
serializer
.
is_valid
(
raise_exception
=
True
)
old_instance
=
model_to_dict
(
instance
)
self
.
perform_update
(
serializer
)
new_instance
=
serializer
.
data
print
(
serializer
.
errors
)
form_header
=
get_object_or_404
(
models
.
ChangeRequestFormHeader
,
pk
=
instance
.
id
)
new_instance
=
model_to_dict
(
form_header
)
# print(serializer.errors)
# save history in form header
crhistory_save
(
...
...
@@ -794,59 +819,6 @@ class ChangeRequestFormApproversViewset(meviewsets.ModelViewSet):
pagination_class
=
paginators
.
SimplePageNumberPagination
lookup_field
=
'code'
# def create(self, request, *args, **kwargs):
# ObjectId = request.data.get('id')
# sent = False
# if 'form_status' in request.data:
# # for email
# if str(request.data['level']) == '1' and request.data['form_status'].lower() == 'pending':
# user = request.data['user']
# form_code = request.data['form_code']
# delegation = request.data['delegation']
# # initial_email(user, form_code, delegation)
# # EMAIL CODE FOR APPROVER
# notification_msg = APPROVER_MESSAGE.split(';')[0]
# email_code = APPROVER_MESSAGE.split(';')[1]
# next_appover_email(
# user, form_code, delegation,
# notification_msg, 'initial', email_code
# )
# request.data['date_sent'] = datetime.now().strftime('%Y-%m-%d, %H:%M:%S')
# request.data['created'] = datetime.now().strftime('%Y-%m-%d, %H:%M:%S') #correct
# sent = True
# serializer = self.get_serializer(data=request.data)
# serializer.is_valid(raise_exception=True)
# if ObjectId:
# dbExisting = models.ChangeRequestFormApprovers.objects.filter(
# id=ObjectId,
# archived_at=None).first()
# if dbExisting:
# dbExisting.archived_at = datetime.now()
# dbExisting.save()
# # x = self.perform_create(serializer)
# serializer.id = None
# x = serializer.save()
# if sent == True:
# x.date_sent = datetime.now().strftime('%Y-%m-%d, %H:%M:%S')
# x.created = datetime.now().strftime('%Y-%m-%d, %H:%M:%S') #correct
# x.save()
# headers = self.get_success_headers(serializer.data)
# return Response(
# serializer.data,
# status=status.HTTP_201_CREATED,
# headers=headers
# )
def
list
(
self
,
request
,
*
args
,
**
kwargs
):
self
.
queryset
=
QuerySetHelper
.
Sort
(
self
)
return
super
(
ChangeRequestFormApproversViewset
,
self
)
.
list
(
request
)
...
...
@@ -1018,12 +990,7 @@ class ChangeRequestFormPost(APIView):
'template_no'
:
form_header
[
'template_no'
]
}
frm_approvers
=
form_header
[
'frm_approvers'
]
frm_stakes
=
form_header
[
'frm_stakes'
]
frm_attachments
=
form_header
[
'frm_attachments'
]
frm_details
=
form_header
[
'frm_details'
]
# sp1 = transaction.savepoint() # nothing will save to db
sp1
=
transaction
.
savepoint
()
# nothing will save to db
serializer
=
serializers
.
ChangeRequestFormHeaderSerializer
(
data
=
form_header_data
)
...
...
@@ -1033,27 +1000,23 @@ class ChangeRequestFormPost(APIView):
template_no
=
serializer
.
data
[
'template_no'
]
tmp_counter
=
models
.
ChangeRequestFormHeader
.
objects
.
filter
(
template_no
=
template_no
)
.
count
()
# tmp_counter = tmp_counter + 1
CR_Prefix
=
serializer
.
data
[
'requested_to_template_id'
]
generate_tmp
=
number_generator
(
CR_Prefix
,
tmp_counter
)
frm_id
=
serializer
.
data
[
'form_code'
]
print
(
frm_id
)
models
.
ChangeRequestFormHeader
.
objects
.
filter
(
form_code
=
frm_id
)
.
update
(
requested_to_template_id
=
generate_tmp
)
# generate requested template id
# create template approvers
frm_approvers
=
form_header
[
'frm_approvers'
]
counter
=
0
for
frm_approver
in
frm_approvers
:
frm_approver
[
'form_code'
]
=
frm_id
counter
=
counter
+
1
data_list_approver
.
append
(
frm_approver
)
#append vendor and requestor in routing table
counter
=
counter
+
1
vendor_data
=
{
'level'
:
counter
,
...
...
@@ -1063,7 +1026,6 @@ class ChangeRequestFormPost(APIView):
}
data_list_approver
.
append
(
vendor_data
)
counter
=
counter
+
1
requestor_data
=
{
'level'
:
counter
,
...
...
@@ -1081,7 +1043,8 @@ class ChangeRequestFormPost(APIView):
serializerApprover
.
save
()
# create template stakes
if
form_header
[
'frm_stakes'
]:
frm_stakes
=
form_header
[
'frm_stakes'
]
for
frm_stake
in
frm_stakes
:
frm_stake
[
'form_code'
]
=
frm_id
data_list_stake
.
append
(
frm_stake
)
...
...
@@ -1093,7 +1056,8 @@ class ChangeRequestFormPost(APIView):
serializerStake
.
save
()
# create template attachments
if
form_header
[
'frm_attachments'
]:
frm_attachments
=
form_header
[
'frm_attachments'
]
for
frm_attachment
in
frm_attachments
:
frm_attachment
[
'form_code'
]
=
frm_id
data_list_attach
.
append
(
frm_attachment
)
...
...
@@ -1105,7 +1069,8 @@ class ChangeRequestFormPost(APIView):
serializerAttach
.
save
()
# create template details
if
form_header
[
'frm_details'
]:
frm_details
=
form_header
[
'frm_details'
]
for
frm_detail
in
frm_details
:
frm_detail
[
'form_code'
]
=
frm_id
data_list_detail
.
append
(
frm_detail
)
...
...
@@ -1126,7 +1091,7 @@ class ChangeRequestFormPost(APIView):
return
Response
(
message
,
status
=
status
.
HTTP_201_CREATED
)
except
ValidationError
as
e
:
#
transaction.savepoint_rollback(sp1)
transaction
.
savepoint_rollback
(
sp1
)
message
=
{
'code'
:
400
,
'status'
:
'failed'
,
...
...
@@ -1135,7 +1100,7 @@ class ChangeRequestFormPost(APIView):
return
Response
(
message
,
status
=
status
.
HTTP_400_BAD_REQUEST
)
except
Exception
as
e
:
#
transaction.savepoint_rollback(sp1)
transaction
.
savepoint_rollback
(
sp1
)
message
=
{
'code'
:
500
,
'status'
:
'failed'
,
...
...
app/applicationlayer/cms/template/views.py
View file @
25e13d79
...
...
@@ -256,6 +256,7 @@ class ChangeRequestTemplatesViewset(meviewsets.ModelViewSet):
template_no
)
if
body_data
[
'tmp_stakes'
]:
tmp_add_edit_delete
(
body_data
[
'tmp_stakes'
],
models
.
ChangeRequestTemplateStakeHolders
,
...
...
@@ -266,6 +267,7 @@ class ChangeRequestTemplatesViewset(meviewsets.ModelViewSet):
template_no
)
if
body_data
[
'tmp_attachments'
]:
tmp_add_edit_delete
(
body_data
[
'tmp_attachments'
],
models
.
ChangeRequestTemplateAttachments
,
...
...
@@ -276,6 +278,7 @@ class ChangeRequestTemplatesViewset(meviewsets.ModelViewSet):
template_no
)
if
body_data
[
'tmp_details'
]:
tmp_add_edit_delete
(
body_data
[
'tmp_details'
],
models
.
ChangeRequestTemplateDetails
,
...
...
@@ -300,7 +303,7 @@ class ChangeRequestTemplatesViewset(meviewsets.ModelViewSet):
"Unable to edit due to existing transaction"
,
status
=
status
.
HTTP_400_BAD_REQUEST
)
#try
class
ChangeRequestTemplatePost
(
APIView
):
...
...
app/applicationlayer/cms/utils_cr.py
View file @
25e13d79
...
...
@@ -471,3 +471,15 @@ def crhistory_log_bulk_delete(queryset, entity, tbl, form_code,
return
True
except
IntegrityError
as
exc
:
raise
APIException
(
detail
=
exc
)
def
generate_template_id
(
prefix
,
form_code
,
template_no
):
print
(
"hello"
)
tmp_counter
=
models
.
ChangeRequestFormHeader
.
objects
.
filter
(
template_no
=
template_no
)
.
count
()
generate_tmp
=
number_generator
(
prefix
,
tmp_counter
)
models
.
ChangeRequestFormHeader
.
objects
.
filter
(
form_code
=
frm_id
)
.
update
(
requested_to_template_id
=
generate_tmp
)
\ No newline at end of file
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