Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Open sidebar
MOOC packages by hacklab
django-courses
Commits
20452ec6
Commit
20452ec6
authored
Jun 29, 2020
by
Virgilio Santos
Browse files
certificates: exchange contract references to workspace ones
parent
71dc144d
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
10 additions
and
7 deletions
+10
-7
courses/certification/views.py
courses/certification/views.py
+10
-7
No files found.
courses/certification/views.py
View file @
20452ec6
...
...
@@ -24,6 +24,9 @@ from courses.certification.models import (
CertificateTemplate
,
)
from
courses.models
import
Course
from
courses.workspaces.models
import
Workspace
class
CertificateDataMixin
(
viewsets
.
ModelViewSet
):
def
get_queryset
(
self
):
...
...
@@ -32,9 +35,9 @@ class CertificateDataMixin(viewsets.ModelViewSet):
if
course
:
queryset
=
queryset
.
filter
(
certificate_template__course
=
course
)
contr
ac
t
=
self
.
request
.
query_params
.
get
(
'contract'
,
None
)
if
contr
ac
t
:
queryset
=
queryset
.
filter
(
contract
=
contr
ac
t
)
worksp
ac
e
=
self
.
request
.
query_params
.
get
(
'contract'
,
None
)
if
worksp
ac
e
:
queryset
=
queryset
.
filter
(
workspace
=
worksp
ac
e
)
return
queryset
...
...
@@ -49,27 +52,27 @@ class CertificateDataViewSet(CertificateDataMixin, viewsets.ModelViewSet):
if
generate
:
data
=
request
.
data
current
=
CertificateData
.
objects
.
filter
(
certificate_template__course__id
=
data
.
get
(
'course'
,
None
),
contr
ac
t
__id
=
data
.
get
(
'
contr
ac
t
'
,
None
))
worksp
ac
e
__id
=
data
.
get
(
'
worksp
ac
e
'
,
None
))
if
len
(
current
)
>=
2
:
return
Response
({
'error'
:
'Os templates já existem'
},
status
=
status
.
HTTP_400_BAD_REQUEST
)
else
:
course
=
Course
.
objects
.
get
(
pk
=
data
.
get
(
'course'
,
None
))
contr
ac
t
=
Contr
ac
t
.
objects
.
get
(
pk
=
data
.
get
(
'contract'
,
None
))
worksp
ac
e
=
Worksp
ac
e
.
objects
.
get
(
pk
=
data
.
get
(
'contract'
,
None
))
if
len
(
current
)
>
0
:
ct
=
CertificateTemplate
(
course
=
course
)
ct
.
save
()
t
=
CertificateData
.
TYPES
[
0
]
if
'receipt'
==
current
[
0
].
type
:
t
=
CertificateData
.
TYPES
[
1
]
cd
=
CertificateData
(
type
=
t
[
0
],
contract
=
contr
ac
t
,
certificate_template
=
ct
)
cd
=
CertificateData
(
type
=
t
[
0
],
workspace
=
worksp
ac
e
,
certificate_template
=
ct
)
cd
.
save
()
return
Response
({
'message'
:
'Os templates foram criados com sucesso'
})
else
:
for
t
in
CertificateData
.
TYPES
:
ct
=
CertificateTemplate
(
course
=
course
)
ct
.
save
()
cd
=
CertificateData
(
type
=
t
[
0
],
contract
=
contr
ac
t
,
certificate_template
=
ct
)
cd
=
CertificateData
(
type
=
t
[
0
],
workspace
=
worksp
ac
e
,
certificate_template
=
ct
)
cd
.
save
()
return
Response
({
'message'
:
'Os templates foram criados com sucesso'
})
...
...
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