Files
param-hub-python/modules/routes/__pycache__/api_reviews.cpython-310.pyc
T

46 lines
4.5 KiB
Plaintext
Raw Normal View History

o
¿,QjŠã@dZddlZddlZddlmZddlmZmZmZmZddl m
Z
m Z m Z m
Z
ddlmZmZedeƒZe
dZe d ¡d
dƒZe d ¡d d
ƒZe d¡ddƒZejddgdddƒZejddgdddƒZddZdddZdS)u
产å“审核 API
éN)Údatetime)Ú BlueprintÚrequestÚjsonifyÚsession)ÚDATA_DIRÚ MODELS_FILEÚ GPUS_FILEÚ CPUS_FILE)Ú load_dataÚ save_dataÚ api_reviewszpending_reviews.jsonz /api/reviewscsdttƒ}tj dd¡ttj dd¡ƒ}ˆdkr!‡fdd|Dƒ}t|dd „d
d }t|d |ƒS)
u获å–待审核列表ÚstatusÚpendingÚlimitédÚallcs g|] }| dd¡ˆkr|qS©rr©Úget©Ú.0Úr©ú4works/param-hub-python/modules/routes/api_reviews.pyÚ
<listcomp>ó zapi_reviews.<locals>.<listcomp>cSs | dd¡S)
created_atÚr)ÚxrrrÚ<lambda>s zapi_reviews.<locals>.<lambda>T)ÚkeyÚreverseN)r Ú PENDING_FILErÚargsrÚintÚsortedr)Úreviewsrrrrr
sz/api/reviews/countcCs&ttƒ}tdd|Dƒƒ}td|iƒS)u获å–待审核数é‡cSs g|] }| dd¡dkr|qSrrrrrrr&rz%api_reviews_count.<locals>.<listcomp>Úcount)r r$Úlenr)r(Ú
pending_countrrrÚapi_reviews_count"s r,z/api/reviews/<review_id>cs<ttƒ}tfdd|Dƒdƒ}|stddiƒdfSt|ƒS)u获å–审核详情c3ó |] }|dˆkr|VqdS©ÚidNrr©Ú review_idrrÚ <genexpr>.óz$api_review_detail.<locals>.<genexpr>NÚerrorúReview not foundé”)r r$Únextr)r1r(Úreviewrr0rÚapi_review_detail*s
r9z /api/reviews/<review_id>/approveÚPOST)Úmethodscs<ttƒ}tfdd|Dƒdƒ}|stddiƒdfS| d¡dkr)tdd iƒd
fS| d ¡}t|ƒ}|s<tdd iƒd
fSt|ƒ}| d
i¡}d|vsN|dsYt ¡jdd|d<t  
¡  d¡|d<d|d<d|d<t  
¡  d¡|d<|  |¡t
||ƒd|d<t  
¡  d¡|d<t dd¡|d<t
t|ƒtd|dœƒS)u 通过审核c3r-r.rrr0rrr28r3z%api_approve_review.<locals>.<genexpr>Nr4r5r6rrõ该申请已处ç†éÚ category_idzUnknown categoryÚdatar/é ú%Y-%m-%d %H:%M:%SrvisibleÚapprovedÚ approved_atÚusernameÚadminÚ approved_by)ÚsuccessÚitem)r r$r7rrÚ
get_data_fileÚuuidÚuuid4ÚhexrÚnowÚstrftimeÚappendr r)r1r(r8r>Ú data_fileÚitemsÚ item_datarr0rÚapi_approve_review4s2
 


rTz/api/reviews/<review_id>/rejectcttƒ}tfdd|Dƒdƒ}|stddiƒdfS| d¡dkr)tdd iƒd
fSt ¡p.i}| d d ¡}d
|d<t ¡  d¡|d<t
 dd¡|d<||d<t t|ƒtddiƒS)u æ‹’ç»å®¡æ ¸c3r-r.rrr0rrr2ar3z$api_reject_review.<locals>.<genexpr>Nr4r5r6rrr<r=ÚreasonrÚrejectedrAÚ rejected_atrErFÚ rejected_byÚ
reject_reasonrHT) r r$r7rrrÚget_jsonrrNrOrr )r1r(r8r?rUrr0rÚapi_reject_review]s  
 r[cCs,tttdœ}||vr||Std|dS)u!获å–ç±»åˆ«å¯¹åº”çš„æ•°æ®æ–‡ä»¶)z ai-modelsÚgpusÚcpusÚitems_z.json)rr r
r)r>Ú builtin_maprrrrJusýrJÚwebc CsPttƒ}t ¡jdd||||pddt ¡ d¡dœ}| |¡t t|ƒ|S)
æäº¤äº§å“到审核队列
傿•°:
category_id: 分类ID
data: äº§å“æ•°æ®(dict)
source: æ¥æº web/api
submitter: æäº¤è€…
Nr@Ú anonymousrrA)r/r>r?ÚsourceÚ submitterrr)
r r$rKrLrMrrNrOrPr )r>r?rbrcr(r8rrrÚsubmit_for_review†s