Files
central-task/tasks/__pycache__/views.cpython-311.pyc

30 lines
6.7 KiB
Plaintext
Raw Normal View History

2025-12-05 13:45:16 +08:00
<EFBFBD>
fT2i<32><00><00><00>ddlmZddlmZddlmZmZddlmZddl m
Z
ddl m Z ddl mZmZdd lmZmZmZdd
lmZmZmZmZmZmZGd <0B>d ej<00><00>ZGd <0A>dej<00><00>ZGd<0F>dej<00><00>ZdS)<12>)<01>get_object_or_404)<01>timezone)<02>viewsets<74>status)<01>action)<01>IsAuthenticated)<01>Response)<02>MultiPartParser<65>
FormParser<EFBFBD>)<03>Client<6E>Task<73>
TaskResult)<06>ClientSerializer<65>TaskSerializer<65>TaskResultSerializer<65>TaskClaimSerializer<65>TaskStartSerializer<65>TaskCompleteSerializerc<00>J<00>eZdZej<00><00><00>ZeZe gZ
dS)<02> ClientViewSetN) <0B>__name__<5F>
__module__<EFBFBD> __qualname__r <00>objects<74>all<6C>querysetr<00>serializer_classr<00>permission_classes<65><00><00>2H:\学习资料\django\任务中心\tasks\views.pyrrs2<00><00><00><00><00><00><15>~<7E>!<21>!<21>#<23>#<23>H<EFBFBD>'<27><14>)<29>*<2A><16><16>r!rc<00><><00>eZdZej<00><00><00>ZeZe gZ
e ddge <0C><03><00>d<04><00><00>Z e ddge<0E><03><00>d d<07><01><00>Ze ddge<10><03><00>d d<08><01><00>ZdS)
<EFBFBD> TaskViewSetF<74>post)<03>detail<69>methodsrc<00><00>|<00>|j<00><01><00>}|<02>d<02><03><00>|jd}|jjjjjj <00>
<00><00>5tj<00> d|<03><06><00><00> <00><00><00><00><00>}|sEtj<00> dd<02><07><00><00> <00><00><00><00><00>}|s)tdd it j<00>
<EFBFBD><00>cd d d <0B><00>Sd |_||_|<04><00><00>d d d <0B><00>n #1swxYwYtt)|<04><00>jt j<00>
<EFBFBD><00>S) zClient claims an available task<73><01>dataT<61><01>raise_exception<6F> client_name<6D>pending)rr-)r<00>client_name__isnullr&zNo available tasks<6B>rN<>assigned)<16>get_serializerr*<00>is_valid<69>validated_datar<00>modelr<00> _base_manager<65>_db<64> transaction<6F>atomicr<00>filter<65>select_for_update<74>firstr r<00>HTTP_404_NOT_FOUND<4E> assigned_to<74>saver<00> HTTP_200_OK)<05>self<6C>request<73>
serializerr-<00>tasks r"<00>claimzTaskViewSet.claims<><00><00><1A>(<28>(<28>g<EFBFBD>l<EFBFBD>(<28>;<3B>;<3B>
<EFBFBD><12><1B><1B>D<EFBFBD><1B>1<>1<>1<> <20>/<2F> <0A>><3E> <0B><12>]<5D> <20> (<28> 6<> :<3A> F<> M<> M<> O<> O<> <18> <18><17><<3C>&<26>&<26> <20>'<27>'<27><0E><0E> <20><1F>!<21>!<21>%<25>%<25>'<27>'<27> <11> <18> .<2E><1B>|<7C>*<2A>*<2A>$<24>(,<2C>+<2B><12><12>$<24>#<23>%<25>%<25>e<EFBFBD>e<EFBFBD>g<EFBFBD>g<EFBFBD><15>
<18> d<01><1F><18>+?<3F> @<40><16>Ib<49>c<>c<>c<> <18> <18> <18> <18> <18> <18> <18> <18>$%<25>D<EFBFBD>K<EFBFBD>*<2A>D<EFBFBD> <1C> <10>I<EFBFBD>I<EFBFBD>K<EFBFBD>K<EFBFBD>K<EFBFBD>) <18> <18> <18> <18> <18> <18> <18> <18> <18> <18> <18><><EFBFBD><EFBFBD> <18> <18> <18> <18>,<18><0E>t<EFBFBD>,<2C>,<2C>1<>&<26>:L<>M<>M<>M<>Ms<00>1B+E<03>)"E<03>E<07>ETNc<00>:<00>|<00><00><00>}|jdkrtdditj<00><04><00>Sd|_t j<00><00>|_|<03><00><00>tt|<03><00>j tj
<00><04><00>S)zClient starts a taskr1r&zTask is not assignedr0<00>running) <0B>
get_objectrr <00>HTTP_400_BAD_REQUESTr<00>now<6F>
started_atr?rr*r@)rArB<00>pkrDs r"<00>startzTaskViewSet.start<s~<00><00><14><EFBFBD><EFBFBD> <20> <20><04> <0F>;<3B>*<2A> $<24> $<24><1B>X<EFBFBD>'=<3D>><3E>v<EFBFBD>Gb<47>c<>c<>c<> c<><1F><04> <0B>"<22>,<2C>.<2E>.<2E><04><0F> <0C> <09> <09> <0B> <0B> <0B><17><0E>t<EFBFBD>,<2C>,<2C>1<>&<26>:L<>M<>M<>M<>Mr!c<00><><00>|<00><00><00>}|<00>|j<00><01><00>}|<04>d<02><03><00>|jdkrt dditj<00><07><00>S|jd|_tj <00><00>|_
|<03> <00><00>t t|<03><00>jtj <00><07><00>S) zClient completes a taskr)Tr+rGr&zTask is not runningr0r)rHr2r*r3rr rIr4rrJ<00> completed_atr?rr@)rArBrLrDrCs r"<00>completezTaskViewSet.completeIs<><00><00><14><EFBFBD><EFBFBD> <20> <20><04><19>(<28>(<28>g<EFBFBD>l<EFBFBD>(<28>;<3B>;<3B>
<EFBFBD><12><1B><1B>D<EFBFBD><1B>1<>1<>1<> <0F>;<3B>)<29> #<23> #<23><1B>X<EFBFBD>'<<3C>=<3D>f<EFBFBD>Fa<46>b<>b<>b<> b<> <20>/<2F><08>9<><04> <0B>$<24>L<EFBFBD>N<EFBFBD>N<EFBFBD><04><19> <0C> <09> <09> <0B> <0B> <0B><17><0E>t<EFBFBD>,<2C>,<2C>1<>&<26>:L<>M<>M<>M<>Mr!<00>N)rrrrrrrrrrrrrrErrMrrPr r!r"r$r$s<><00><00><00><00><00><00><13>|<7C><1F><1F>!<21>!<21>H<EFBFBD>%<25><14>)<29>*<2A><16> <0B>V<EFBFBD>5<EFBFBD>6<EFBFBD>(<28>=P<>Q<>Q<>Q<>N<01>N<01>R<01>Q<>N<01>> <0C>V<EFBFBD>4<EFBFBD>&<26><18><O<>P<>P<>P<>
N<01>
N<01>
N<01>Q<01>P<>
N<01> <0C>V<EFBFBD>4<EFBFBD>&<26><18><R<>S<>S<>S<> N<01> N<01> N<01>T<01>S<> N<01> N<01> Nr!r$c<00><><00>eZdZej<00><00><00>ZeZe gZ
e e gZ eddg<01><03><00>dd<05><01><00>ZdS)<07>TaskResultViewSetT<74>get)r&r'Nc<00><><00>|<00><00><00>}|jstdditj<00><03><00>Sddlm}||j<00>d<06><00>d<07><08><00>S) zDownload task result filer&zNo file availabler0r)<01> FileResponse<73>rbT)<01> as_attachment)rH<00> result_filer rr=<00> django.httprV<00>open)rArBrL<00> task_resultrVs r"<00>downloadzTaskResultViewSet.download_su<00><00><1B>o<EFBFBD>o<EFBFBD>'<27>'<27> <0B><1A>&<26> _<01><1B>X<EFBFBD>':<3A>;<3B>F<EFBFBD>D]<5D>^<5E>^<5E>^<5E> ^<5E> -<2D>,<2C>,<2C>,<2C>,<2C>,<2C><1B>|<7C>K<EFBFBD>3<>8<>8<><14>><3E>><3E>d<EFBFBD>S<>S<>S<>Sr!rQ)rrrrrrrrrrrr
r <00>parser_classesrr]r r!r"rSrSYsw<00><00><00><00><00><00><19>!<21>%<25>%<25>'<27>'<27>H<EFBFBD>+<2B><14>)<29>*<2A><16>%<25>z<EFBFBD>2<>N<EFBFBD> <0B>V<EFBFBD>4<EFBFBD>%<25><17>)<29>)<29>)<29>T<01>T<01>T<01>*<2A>)<29>T<01>T<01>Tr!rSN)<1F>django.shortcutsr<00> django.utilsr<00>rest_frameworkrr<00>rest_framework.decoratorsr<00>rest_framework.permissionsr<00>rest_framework.responser <00>rest_framework.parsersr
r <00>modelsr rr<00> serializersrrrrrr<00> ModelViewSetrr$rSr r!r"<00><module>ris<><00><01>.<2E>.<2E>.<2E>.<2E>.<2E>.<2E>!<21>!<21>!<21>!<21>!<21>!<21>+<2B>+<2B>+<2B>+<2B>+<2B>+<2B>+<2B>+<2B>,<2C>,<2C>,<2C>,<2C>,<2C>,<2C>6<>6<>6<>6<>6<>6<>,<2C>,<2C>,<2C>,<2C>,<2C>,<2C>><3E>><3E>><3E>><3E>><3E>><3E>><3E>><3E>,<2C>,<2C>,<2C>,<2C>,<2C>,<2C>,<2C>,<2C>,<2C>,<2C><02><02><02><02><02><02><02><02><02><02><02><02><02><02><02><02>+<2B>+<2B>+<2B>+<2B>+<2B>H<EFBFBD>)<29>+<2B>+<2B>+<2B>
@N<01>@N<01>@N<01>@N<01>@N<01>(<28>'<27>@N<01>@N<01>@N<01>DT<01>T<01>T<01>T<01>T<01><08>-<2D>T<01>T<01>T<01>T<01>Tr!