Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
O
OpenQuizz
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
10
Issues
10
List
Board
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
Weber Rodolphe
OpenQuizz
Commits
981e99de
Commit
981e99de
authored
3 years ago
by
Jérémie Passerat
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Rectificatifs suite tests utilisateurs Vue
parent
0c0f316e
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
34 additions
and
13 deletions
+34
-13
app.py
app.py
+8
-4
contenu_dao.py
modele/contenu_dao.py
+11
-5
demande_pubDao.py
modele/demande_pubDao.py
+15
-4
No files found.
app.py
View file @
981e99de
...
@@ -80,7 +80,7 @@ class CreerUtilisateur(Resource):
...
@@ -80,7 +80,7 @@ class CreerUtilisateur(Resource):
@
users
.
doc
(
description
=
"vérification qu'un utilisateur est enrengistré dans la base"
)
@
users
.
doc
(
description
=
"vérification qu'un utilisateur est enrengistré dans la base"
)
class
VerifierUtilisateur
(
Resource
):
class
VerifierUtilisateur
(
Resource
):
@
users
.
response
(
200
,
"Vérification de l'utilisateur effectuée"
)
@
users
.
response
(
200
,
"Vérification de l'utilisateur effectuée"
)
@
users
.
response
(
2
00
,
"Vérification de l'utilisateur ratée"
)
@
users
.
response
(
4
00
,
"Vérification de l'utilisateur ratée"
)
## vérification qu'un utilisateur est enrengistré dans la base
## vérification qu'un utilisateur est enrengistré dans la base
def
get
(
self
):
def
get
(
self
):
...
@@ -88,7 +88,7 @@ class VerifierUtilisateur(Resource):
...
@@ -88,7 +88,7 @@ class VerifierUtilisateur(Resource):
access_token
=
create_access_token
(
identity
=
request
.
args
.
get
(
"login"
))
access_token
=
create_access_token
(
identity
=
request
.
args
.
get
(
"login"
))
return
make_response
(
jsonify
(
access_token
=
access_token
),
200
)
return
make_response
(
jsonify
(
access_token
=
access_token
),
200
)
else
:
else
:
return
"L'utilisateur n'existe pas"
,
40
4
return
"L'utilisateur n'existe pas"
,
40
0
@
users
.
route
(
'/changePassword'
)
@
users
.
route
(
'/changePassword'
)
...
@@ -233,7 +233,10 @@ class SupprimerTiers(Resource):
...
@@ -233,7 +233,10 @@ class SupprimerTiers(Resource):
version
=
contenu_dao
.
get_version_tiers_avec_id
(
id_tiers
[
"$oid"
],
request
.
args
.
get
(
'auteur'
))
version
=
contenu_dao
.
get_version_tiers_avec_id
(
id_tiers
[
"$oid"
],
request
.
args
.
get
(
'auteur'
))
contenu_dao
.
supprimer_tiers
(
id_tiers
[
"$oid"
],
request
.
args
.
get
(
'auteur'
),
version
)
contenu_dao
.
supprimer_tiers
(
id_tiers
[
"$oid"
],
request
.
args
.
get
(
'auteur'
),
version
)
return
str
(
contenu_dao
.
existe_en_tiers
(
id_tiers
[
"$oid"
])),
200
if
request
.
args
.
get
(
'auteur'
)
==
"Aucun"
:
return
str
(
contenu_dao
.
existe_en_tiers
(
id_tiers
[
"$oid"
])),
200
else
:
return
'1'
,
200
@
contenus
.
route
(
"/newContenu"
)
@
contenus
.
route
(
"/newContenu"
)
...
@@ -349,6 +352,7 @@ class gerer_maj_tiers(Resource):
...
@@ -349,6 +352,7 @@ class gerer_maj_tiers(Resource):
## gérer la réponse à une maj tiers
## gérer la réponse à une maj tiers
@
jwt_required
()
@
jwt_required
()
def
patch
(
self
):
def
patch
(
self
):
id_tiers
=
json
.
loads
(
request
.
json
[
"id_tiers"
])
id_tiers
=
json
.
loads
(
request
.
json
[
"id_tiers"
])
if
request
.
json
[
"reponse"
]
==
'o'
:
if
request
.
json
[
"reponse"
]
==
'o'
:
...
@@ -615,4 +619,4 @@ class supprimer_evaluation(Resource):
...
@@ -615,4 +619,4 @@ class supprimer_evaluation(Resource):
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
app
.
run
(
host
=
'0.0.0.0'
)
app
.
run
()
This diff is collapsed.
Click to expand it.
modele/contenu_dao.py
View file @
981e99de
...
@@ -222,7 +222,7 @@ class ContenuDao:
...
@@ -222,7 +222,7 @@ class ContenuDao:
for
i
in
range
(
len
(
tiers
)):
for
i
in
range
(
len
(
tiers
)):
tmp
=
tiers
[
i
]
tmp
=
tiers
[
i
]
if
tmp
[
0
][
"contenu"
]
==
ObjectId
(
id_contenu
):
if
tmp
[
0
][
"contenu"
]
==
ObjectId
(
id_contenu
):
return
int
(
tmp
[
1
][
"version"
])
return
tmp
[
1
][
"version"
]
return
0
return
0
## mise à jour d'un contenu
## mise à jour d'un contenu
...
@@ -344,10 +344,17 @@ class ContenuDao:
...
@@ -344,10 +344,17 @@ class ContenuDao:
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
{
"version"
:
nouvelle_version
}]}})
{
"version"
:
nouvelle_version
}]}})
else
:
else
:
# on vire le précédent
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
{
"$pull"
:
{
"tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)},
{
"version"
:
nouvelle_version
-
1
}]}})
# et on ajoute la version maj
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
self
.
base_donnees
.
utilisateur
.
update
({
"nom"
:
auteur
},
{
"$push"
:
{
{
"$push"
:
{
"
majRejetees"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)
,
"
tiers"
:
[{
"contenu"
:
ObjectId
(
id_tiers
)}
,
"version"
:
nouvelle_version
}]}})
{
"version"
:
str
(
nouvelle_version
-
1
)
+
'r'
}]}})
## Permet de savoir si au moins un tiers est mettable à jour pour un auteur
## Permet de savoir si au moins un tiers est mettable à jour pour un auteur
# @param auteur l'auteur concerné
# @param auteur l'auteur concerné
...
@@ -372,11 +379,10 @@ class ContenuDao:
...
@@ -372,11 +379,10 @@ class ContenuDao:
liste
=
list
()
liste
=
list
()
# On réfcupère tous les ties d'un auteur
# On réfcupère tous les ties d'un auteur
tiers
=
self
.
get_contenus_tiers
(
auteur
)
tiers
=
self
.
get_contenus_tiers
(
auteur
)
for
(
id
,
version
)
in
tiers
:
for
(
id
,
version
)
in
tiers
:
versionCourante
=
self
.
get_version_courante
(
id
[
"contenu"
])
versionCourante
=
self
.
get_version_courante
(
id
[
"contenu"
])
if
version
[
"version"
]
<
versionCourante
:
if
version
[
"version"
]
<
versionCourante
:
liste
+=
self
.
get_contenu_par_id
(
id
[
"contenu"
]
)
liste
.
append
(
self
.
get_contenu_par_id
(
id
[
"contenu"
])
)
return
liste
return
liste
...
...
This diff is collapsed.
Click to expand it.
modele/demande_pubDao.py
View file @
981e99de
...
@@ -28,14 +28,12 @@ class DemandePubDao:
...
@@ -28,14 +28,12 @@ class DemandePubDao:
self
.
base_donnees
.
encours
.
update_one
({
"_id"
:
ObjectId
(
id_contenu_en_cours
)},
{
"$set"
:
{
"isPublie"
:
"oui"
}})
self
.
base_donnees
.
encours
.
update_one
({
"_id"
:
ObjectId
(
id_contenu_en_cours
)},
{
"$set"
:
{
"isPublie"
:
"oui"
}})
## Récupérer une demande de publication via son id
## Récupérer une demande de publication via son id
# @param id_demande_pub un id de demande de publication
# @param id_demande_pub un id de demande de publication
# @return la demande de publication désirée
# @return la demande de publication désirée
def
get_demande_pub_via_id
(
self
,
id_demande_pub
):
def
get_demande_pub_via_id
(
self
,
id_demande_pub
):
return
self
.
base_donnees
.
demandesPub
.
find_one
({
"_id"
:
ObjectId
(
id_demande_pub
)})
return
self
.
base_donnees
.
demandesPub
.
find_one
({
"_id"
:
ObjectId
(
id_demande_pub
)})
## Récupérer la dernière insertion dasn les demaindes de publication
## Récupérer la dernière insertion dasn les demaindes de publication
# @return le dernier id inséré dans les demandes de publication
# @return le dernier id inséré dans les demandes de publication
def
id_derniere_demande_publication_ajoutee
(
self
):
def
id_derniere_demande_publication_ajoutee
(
self
):
...
@@ -66,13 +64,27 @@ class DemandePubDao:
...
@@ -66,13 +64,27 @@ class DemandePubDao:
# On met à jour le tiers (chez le 'demandeur' de la publication)
# On met à jour le tiers (chez le 'demandeur' de la publication)
version
=
ContenuDao
()
.
get_version_courante
(
id_contenu
)
version
=
ContenuDao
()
.
get_version_courante
(
id_contenu
)
ContenuDao
()
.
maj_tiers
(
id_contenu
,
version
,
auteur_en_cours
)
ContenuDao
()
.
maj_tiers
(
id_contenu
,
version
,
auteur_en_cours
)
self
.
rendre_publications_obsoletes
(
id_contenu
,
auteur_en_cours
)
else
:
else
:
# on change l'état de la demande de publication
# on change l'état de la demande de publication
self
.
base_donnees
.
demandesPub
.
update_one
({
"_id"
:
ObjectId
(
id_publication
)},
{
"$set"
:
{
"etat"
:
"refus"
}})
self
.
base_donnees
.
demandesPub
.
update_one
({
"_id"
:
ObjectId
(
id_publication
)},
{
"$set"
:
{
"etat"
:
"refus"
}})
## Quand unhe publication est validée, toutes les autres publications en cours sur le contenu passent en statut "obsolete"
# @param id_contenu l'id du contenu lié à la publication acceptée
def
rendre_publications_obsoletes
(
self
,
id_contenu
,
auteur_en_cours
):
# 1. On récupère toutes les publications liées à l'id id_contenu
all_publications
=
self
.
base_donnees
.
demandesPub
.
find
({
"$and"
:
[{
"idContenu"
:
ObjectId
(
id_contenu
)},
{
"etat"
:
"enCours"
},
{
"auteurDemande"
:
{
"$ne"
:
auteur_en_cours
}}
]})
for
all_entries
in
all_publications
:
self
.
base_donnees
.
demandesPub
.
update
({
"_id"
:
all_entries
[
"_id"
]},
{
"$set"
:
{
"etat"
:
"obsolete"
}})
## Supprimer une demande de publication
## Supprimer une demande de publication
# @param idPub l'id de la demande de publication
# @param idPub l'id de la demande de publication
def
supprimer_publication
(
self
,
idPub
):
def
supprimer_publication
(
self
,
idPub
):
self
.
base_donnees
.
demandesPub
.
delete_one
({
"_id"
:
ObjectId
(
idPub
)})
self
.
base_donnees
.
demandesPub
.
delete_one
({
"_id"
:
ObjectId
(
idPub
)})
...
@@ -97,7 +109,6 @@ class DemandePubDao:
...
@@ -97,7 +109,6 @@ class DemandePubDao:
def
get_id_contenu_en_cours_associe_a_une_publication
(
self
,
id_dde_publication
):
def
get_id_contenu_en_cours_associe_a_une_publication
(
self
,
id_dde_publication
):
if
type
(
id_dde_publication
)
==
str
:
if
type
(
id_dde_publication
)
==
str
:
id_dde_publication
=
ObjectId
(
id_dde_publication
)
id_dde_publication
=
ObjectId
(
id_dde_publication
)
print
(
"id dde publication"
,
id_dde_publication
,
" de type "
,
type
(
id_dde_publication
))
return
self
.
base_donnees
.
demandesPub
.
find_one
({
"_id"
:
id_dde_publication
})[
"idContenuEnCours"
]
return
self
.
base_donnees
.
demandesPub
.
find_one
({
"_id"
:
id_dde_publication
})[
"idContenuEnCours"
]
...
...
This diff is collapsed.
Click to expand it.
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