Files
cdtestplant_v1/apps/user/__pycache__/controllers.cpython-313.pyc

55 lines
12 KiB
Plaintext
Raw Normal View History

2025-04-29 18:09:00 +08:00
<EFBFBD>
2026-01-28 16:50:40 +08:00
<00>[di:!<00><00><><00>SSKJr SSKJrJrJr SSKJrJrJr SSK J
2025-04-29 18:09:00 +08:00
r
SSK J r SSK JrJr SSKJr SSKJr SS KJr SS
2026-01-28 16:50:40 +08:00
KJr SS KJr SS KJr SS KJr SSKJr SSKJ r SSK!J"r"J#r#J$r$J%r%J&r&J'r'J(r(J)r)J*r*J+r+J,r,J-r-J.r.J/r/ SSK0J1r1J2r3 SSK4J5r5 SSK6J7r7J8r8 SSK9J:r: \"5r2\"SS/S9"SS\55r;\"SS/\"5S9"SS\55r<\"SS /\"5S9"S!S"\55r=g#)$<24>)<01>get_user_model)<03>datetime<6D> timedelta<74>timezone)<03>api_controller<65>ControllerBase<73>route)<01>paginate)<01> MyPagination)<02>IsAuthenticated<65> IsAdminUser)<01>Query)<01> transaction)<01> authenticate)<01>get_object_or_404)<01>JWTAuth)<01>TokenObtainPairController)<01>schema)<01>List<73><01> ChenResponse)<0E>UserInfoOutSchema<6D>CreateUserSchema<6D>CreateUserOutSchema<6D>UserRetrieveInputSchema<6D>UserRetrieveOutSchema<6D>UpdateDeleteUserSchema<6D>UpdateDeleteUserOutSchema<6D>DeleteUserSchema<6D> LogOutSchema<6D>LogInputSchema<6D>LogDeleteInSchema<6D>AdminModifyPasswordSchema<6D>MyTokenObtainPairOutSchema<6D>MyTokenObtainPairInputSchema)<02>TableOperationLog<6F>Users)<01>Project)<02>update<74> multi_delete)<01>load_ldap_usersz/systemu 用户token控制和登录接口)<01>tagsc<00><><00>\rSrSrSr\R "S\SS9S\4Sj5r \R"S\ S \ "5S
9S 5r \R "S S \ "5S9S5rSrg)<12>UserTokenController<65>Tz/login<69>login)<02>response<73>url_name<6D>
user_tokenc<00>B<00>UR5 UR5$<00>N)<02>check_user_authentication_rule<6C>to_response_schema)<02>selfr3s <20>:E:\pycharmProjects\cdtestplant_v1\apps\user\controllers.py<70> obtain_token<65> UserTokenController.obtain_token"s<00><00><12>1<>1<>3<><19>,<2C>,<2C>.<2E>.<2E>z/getInfo<66>get_info<66>r1r2<00>authc<00>B<00>URRR$r5)<03>context<78>requestr?<00>r8s r9<00> get_user_info<66>!UserTokenController.get_user_info's<00><00><14>|<7C>|<7C>#<23>#<23>(<28>(<28>(r<z/logout<75>logout)r2r?c<00><00>[SSS9$)N<><4E>u退出登录成功)<02>code<64>messagerrCs r9rF<00>UserTokenController.logout,s<00><00><1B><13>.B<>C<>Cr<<00>N)<10>__name__<5F>
__module__<EFBFBD> __qualname__<5F>__firstlineno__<5F> auto_importr <00>postr$r%r:<00>getrrrDrF<00>__static_attributes__rLr<r9r.r.s~<00><00><16>K<EFBFBD>
<EFBFBD>Z<EFBFBD>Z<EFBFBD><08>#=<3D><07>P<>/<2F>'C<>/<2F>Q<01>/<2F> <0B>Y<EFBFBD>Y<EFBFBD>z<EFBFBD>$5<>
<EFBFBD>QX<EFBFBD>QZ<EFBFBD>[<5B>)<29>\<01>)<29> <0B>Z<EFBFBD>Z<EFBFBD> <09>H<EFBFBD>7<EFBFBD>9<EFBFBD>=<3D>D<01>><3E>Dr<r.z /system/useru 用户管理)r,r?c<00>b<00>\rSrSr\R
2025-04-29 18:09:00 +08:00
"S\S\"5\\ /S9S\
4Sj5r \R"S\ \SS S
9\R S+S \4S jj55r\R"S \ \S9\"\5\"S54S\4Sjj55r\R0"S\\\ /SS9S\S\4Sj5r\R8"S\\ /SS9S\4Sj5r\R"S\"5\\ /SS9S \S!\4S"j5r \R
2026-01-28 16:50:40 +08:00
"S#\"5\\ /S$9S\!4S%j5r"\R"S&S'S(9S)5r#S*r$g ),<2C>UserManageController<65>1z/save<76> user_create)r1r2r?<00> permissions<6E> user_schemac<00>&<00>UR5nU$r5)<01>create)r8rZ<00>users r9<00> create_user<65> UserManageController.create_user4s<00><00><1B>!<21>!<21>#<23><04><13> r<z/list<73> user_listNr><00>
2025-04-29 18:09:00 +08:00
project_idc<00><00>[RR5nUb^[[US9nUR
nUR UR
2026-01-28 16:50:40 +08:00
;aURUR 5 URUS9nU$)uC如果传了project_id则返回项目中的成员而非全部用户<E794A8><01>id)<01>name__in) r'<00>objects<74>allrr(<00>member<65> duty_person<6F>append<6E>filter)r8ra<00>qs<71> project_obj<62>
all_members r9<00> list_user<65>UserManageController.list_user;sp<00><00><13>]<5D>]<5D> <1E> <1E> <20><02> <15> !<21>+<2B>G<EFBFBD>
<EFBFBD>C<>K<EFBFBD>*<2A>1<>1<>J<EFBFBD><1A>&<26>&<26>k<EFBFBD>.@<40>.@<40>@<40><1A>!<21>!<21>+<2B>"9<>"9<>:<3A><13><19><19>J<EFBFBD><19>/<2F>B<EFBFBD><11> r<z/index)r1.<2E>filtersc<00><00>URR5Hup#[X5bM[XS5 M! URR
2025-04-29 18:09:00 +08:00
R RS5nUcSnURR
R RS5nUcSnXE/n[RRURURURURUS9RS5nU$)N<>zcreate_datetime[0]z
2000-01-01zcreate_datetime[1]z
2026-01-28 16:50:40 +08:00
8000-01-01)<05>name__icontains<6E>username__icontains<6E>phone__icontains<6E>status__contains<6E>create_datetime__range<67>-create_datetime)<10>__dict__<5F>items<6D>getattr<74>setattrrArB<00>GETrSr'rfrk<00>name<6D>username<6D>phone<6E>status<75>order_by)r8rq<00>attr<74>value<75>
start_time<EFBFBD>end_time<6D> date_listrls r9<00>
index_user<EFBFBD>UserManageController.index_userJs<><00><00>#<23>+<2B>+<2B>1<>1<>3<>K<EFBFBD>D<EFBFBD><16>w<EFBFBD>%<25>-<2D><17><07>r<EFBFBD>*<2A>4<><1A>\<5C>\<5C>)<29>)<29>-<2D>-<2D>1<>1<>2F<32>G<>
<EFBFBD> <15> <1D>%<25>J<EFBFBD><17><<3C><<3C>'<27>'<27>+<2B>+<2B>/<2F>/<2F>0D<30>E<><08> <13> <1B>#<23>H<EFBFBD><1F>*<2A> <09> <12>]<5D>]<5D> !<21> !<21>'<27>,<2C>,<2C>T[<5B>Td<54>Td<54>3:<3A>=<3D>=<3D>SZ<53>Sa<53>Sa<53>9B<39>"<22>D<01>DL<44>H<EFBFBD>M_<4D>D`<60> <0B><12> r<z/update/{user_id}z user-update)r1rYr2<00>user_id<69>payloadc<00><><00>URS:Xa [SSSS9$URU5 [URR
2025-04-29 18:09:00 +08:00
X[ 5nSS0$)N<>
2026-01-28 16:50:40 +08:00
superAdmin<EFBFBD><EFBFBD>u$无法编辑唯一管理员账号<E8B4A6>rIr<>rJrJu用户更新成功)r<>r<00>validate_unique_usernamer)rArBr')r8r<>r<><00> update_users r9r<><00> UserManageController.update_user]sT<00><00> <13> <1B> <1B>|<7C> +<2B><1F>S<EFBFBD><13>>d<>e<> e<><0F>(<28>(<28><17>1<><1C>T<EFBFBD>\<5C>\<5C>1<>1<>7<EFBFBD>U<EFBFBD>K<> <0B><19>/<2F>0<>0r<z/deletez user-delete)rYr2<00>datac<00><><00>URnUHnUS:XdM URU5 M [U[5 [ SSSS9$)N<>rHu 删除成功r<E58A9F>)<05>ids<64>popr*r'r)r8r<>r<><00>items r9<00> delete_user<65> UserManageController.delete_usergsB<00><00><12>h<EFBFBD>h<EFBFBD><03><17>D<EFBFBD><13>q<EFBFBD>y<EFBFBD><13><07><07><04> <0A><18> <15>S<EFBFBD>%<25> <20><1B><13>S<EFBFBD>.<2E>I<>Ir<z/change_statusz user-change)r?rYr2<00> user_status<75>userIdc<00><><00>[RRUS9R5nU(d [ SSSS9$UR
S:Xa [ SSSS9$XlUR5 UR $)Nrcr<>u用户未找到<E689BE>r<>rIrJr<>u*管理员不能被禁用,此操作无效)r'rfrk<00>firstrrdr<><00>save)r8r<>r<>r]s r9<00>change_user_status<75>'UserManageController.change_user_statusrsj<00><00><15>}<7D>}<7D>#<23>#<23>v<EFBFBD>#<23>.<2E>4<>4<>6<><04><13><1F>s<EFBFBD><13>>O<>P<> P<> <0F>7<EFBFBD>7<EFBFBD>a<EFBFBD><<3C><1F>s<EFBFBD><13>>j<>k<> k<>!<21> <0B> <0C> <09> <09> <0B><13>{<7B>{<7B>r<z/modifyPassword)r?rYc<00><00>URRRnU(af[URUR
S9nU(d [ SSSS9$URUR5 UR5 [ SSSS9$g)N)r<><00>passwordi<64>u旧密码错误请检查r<E69FA5>rHu管理员修改密码成功)
rArBr]rr<><00> oldPasswordr<00> set_password<72> newPasswordr<64>)r8r<>r]<00>user_olds r9<00>modify_password<72>$UserManageController.modify_password~ss<00><00><1E>,<2C>,<2C>.<2E>.<2E>3<>3<><04> <0F>#<23>T<EFBFBD>]<5D>]<5D>W<EFBFBD>EX<45>EX<45>Y<>H<EFBFBD><1B>#<23>3<EFBFBD>S<EFBFBD>B_<42>`<60>`<60> <10> <1D> <1D>g<EFBFBD>1<>1<> 2<> <10>I<EFBFBD>I<EFBFBD>K<EFBFBD><1F>s<EFBFBD><13>>[<5B>\<5C> \<5C>r<z/ldapz user-ldap)r2c<00><><00>[5 [SSSS9$![a n[U5 [SSSS9sSnA$SnAff=f)NrHu.连接LDAP服务器成功同步用户数据r<E68DAE>u欢迎您,正在外网访问)r+r<00> Exception<6F>print)r8<00>excs r9<00> load_ldap<61>UserManageController.load_ldap<61>sG<00><00> `<01> <1B> <1D><1F>s<EFBFBD><13>>n<>o<> o<><6F><18> `<01> <11>#<23>J<EFBFBD><1F>s<EFBFBD><13>>^<5E>_<> _<><5F> `<01>s<00><00>
A<03><<03>A<03>ArLr5)%rMrNrOrPr rRrrr r rr^rSrrr<00>atomic<69>intror
r rrr<><00>putrrr<><00>deleterr<><00>strr<72>r#r<>r<>rTrLr<r9rVrV1s<><00><00> <0B>Z<EFBFBD>Z<EFBFBD><07>"5<> <0A>T[<5B>T]<5D>,<2C>k<EFBFBD>:<3A><<3C><14>'7<><14><<3C><14>
2025-04-29 18:09:00 +08:00
 <0B>Y<EFBFBD>Y<EFBFBD>w<EFBFBD><14>&;<3B>!<<3C>{<7B>Y]<5D>^<5E><10><17><17>
<12>C<EFBFBD>
<12><18>_<01>
2025-11-18 10:52:10 +08:00
<12> <0B>Y<EFBFBD>Y<EFBFBD>x<EFBFBD>$<24>'<<3C>"=<3D>><3E> <0A>l<EFBFBD><1B><A<>#<23>J<EFBFBD><12>"9<><12><1C>?<3F><12>" <0B>Y<EFBFBD>Y<EFBFBD>"<22>-F<>+<2B>[<5B>9<>%<25>'<27>1<>3<EFBFBD>1<>1G<31>1<>'<27>1<> <0B>\<5C>\<5C>)<29>/<2F>;<3B>)G<>R_<52>`<60>J<01> 0<>J<01>a<01>J<01> <0B>Y<EFBFBD>Y<EFBFBD><1F>g<EFBFBD>i<EFBFBD>o<EFBFBD>{<7B>=[<5B>%<25>'<27><1B>c<EFBFBD><1B>3<EFBFBD><1B>'<27><1B> <0B>Z<EFBFBD>Z<EFBFBD>!<21><07> <09><0F>Q\<5C>?]<5D>^<5E>
<14>'@<40>
<14>_<01>
2026-01-28 16:50:40 +08:00
<14> <0B>Y<EFBFBD>Y<EFBFBD>w<EFBFBD><1B>-<2D>`<01>.<2E>`r<rVz /system/logu 日志记录c<00><><00>\rSrSr\R
2025-04-29 18:09:00 +08:00
"SS\\SS9\"\ 5S\
\ 4Sj55r \R
"SS \ \/\"5S
9\
2026-01-28 16:50:40 +08:00
"S 54S\4S jj5rS rg)<0E> LogController<65><72>z/operation_list<73>log_listN)r2r1r?r<>c<00>4<00>UR5R5Hup#[X5bM[XS5 M! [R
R SSSSS5RS5nURURURS9nU$) Nrsrd<00>user__username<6D> operate_obj<62>create_datetime<6D> operate_desry)<02>user__username__icontainsrx) <0B>
model_dumpr{r|r}r&rf<00>valuesr<73>rkr]r<>)r8r<>r<>r<><00>logss r9r<><00>LogController.log_list<73>s<><00><00> <20>?<3F>?<3F>,<2C>2<>2<>4<>K<EFBFBD>D<EFBFBD><16>t<EFBFBD>"<22>*<2A><17><04>B<EFBFBD>'<27>5<>!<21>(<28>(<28>/<2F>/<2F><04>6F<36> <0A>Wh<57>0=<3D>?<3F>?G<>x<EFBFBD> <1E>@ <20> <0A><14>{<7B>{<7B>T<EFBFBD>Y<EFBFBD>Y<EFBFBD>W[<5B>Wk<57>Wk<57>{<7B>l<><04><13> r<z/operation_delete<74>
log_delete)r2rYr?.c<00><00>[R"5[URS9-
2025-04-29 18:09:00 +08:00
n[R
2026-01-28 16:50:40 +08:00
R US9nUR5 URS:<3A>a[SURS3S9$[SS9$)N)<01>days)<01>create_datetime__ltru删除u天前数据成功)rJu全部日志删除成功) r<00>nowr<00>dayr&rfrkr<>r)r8r<><00>time<6D>log_qss r9r<><00>LogController.log_delete<74>so<00><00><18>|<7C>|<7C>~<7E> <09>t<EFBFBD>x<EFBFBD>x<EFBFBD> 8<>8<><04>"<22>*<2A>*<2A>1<>1<>d<EFBFBD>1<>K<><06><0E> <0A> <0A><0F> <0F>8<EFBFBD>8<EFBFBD>a<EFBFBD><<3C><1F>&<26><14><18><18>
<EFBFBD>:L<>(M<>N<> N<><1F>(B<>C<> Cr<rL)rMrNrOrPr rSrr r
r rr!r<>r r rr"r<>rTrLr<r9r<>r<><00>s<><00><00>
<EFBFBD>Y<EFBFBD>Y<EFBFBD> <20>:<3A><04>\<5C>@R<>Y]<5D>^<5E> <0A>l<EFBFBD><1B> <14>U<EFBFBD>><3E>2<> <14><1C>_<01> <14> <0B>Y<EFBFBD>Y<EFBFBD>"<22>\<5C><0F>Yd<59>Ge<47><1B>I<EFBFBD><1F>38<33><13>:<3A>D<01>0<>D<01><1F>Dr<r<>N)><3E>django.contrib.authrrrr<00> ninja_extrarrr <00>ninja.paginationr
<00>utils.chen_paginationr <00>ninja_extra.permissionsr r <00>ninjar<00> django.dbrr<00>django.shortcutsr<00>ninja_jwt.authenticationr<00>ninja_jwt.controllerr<00> ninja_jwtr<00>typingr<00>utils.chen_responser<00>apps.user.schemarrrrrrrrr r!r"r#r$r%<00>apps.user.modelsr&r'<00> UserClass<73>apps.project.modelsr(<00>utils.chen_crudr)r*<00>apps.user.tools.ldap_toolsr+r.rVr<>rLr<r9<00><module>r<>s<><00><01>.<2E>2<>2<>=<3D>=<3D>%<25>.<2E>@<40><17>!<21>,<2C>.<2E>,<2C>:<3A><1C><17>,<2C>!<21>!<21>!<21>!<21>
C<01>'<27>0<>6<><16><18><05><10> <09>!C<> D<>E<>D<01>3<>D<01>F<01>D<01>$<10><0E>n<EFBFBD>%5<>G<EFBFBD>I<EFBFBD>F<>a`<01>><3E>a`<01>G<01>a`<01>H<10> <0A>^<5E>$4<>7<EFBFBD>9<EFBFBD>E<>D<01>N<EFBFBD>D<01>F<01>Dr<