
    nik                        d dl mZ d dlmZmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ d dlmZ dd	lmZmZmZmZmZmZ d d
lmZmZ d dlmZ  e       Zej9                  dd       ee       ee      fdededefd       Zej=                  ded       ee       ee      fdededefd       Z ej=                  ded       ee       ee      fdededefd       Z!ej=                  dd       ee       ee      fde"dedefd       Z#ejI                  de
d       ee       ee      fdee   dedefd       Z%ej=                  dee   d       ee       ee      fde"dedefd       Z&ej9                  d d!g"       ee       ee      fdededefd#       Z'ej=                  d$e%       ee       ee      fdededefd&       Z(ej=                  d'ed!g(       ee       ee      fdededefd)       Z)y*)+    )List)	APIRouterDepends)Session)service)GroupResponse)get_db)CategoryCreate   )GetSimulationGroupGroupCreateGroupResposeGroupUpdateStudentInfoGroupCategoryResponse)get_current_userJWTPayloadSchema)MainDataSchemaz/groupT)response_model_exclude_nonerequestdbtokenc                 h   K   t        j                  ||      j                  |        d {   S 7 wN)r   GroupServicecreate_groupr   r   r   s      ;/var/www/html/retail-simulation-api/app/api/group/router.pyr   r      *     %%b%0==gFFFF   )202z/group/{group_id})response_modelr   group_idc                 h   K   t        j                  ||      j                  |        d {   S 7 wr   )r   r   	get_groupr"   r   r   s      r   get_simulationr&      s*     %%b%0::8DDDDr    z/category/{group_id}c                 h   K   t        j                  ||      j                  |        d {   S 7 wr   )r   r   get_group_categoryr%   s      r   get_simulation1r)      s*     %%b%0CCHMMMMr    z"/get_simulation_group/{group_code}
group_codec                 h   K   t        j                  ||      j                  |        d {   S 7 wr   )r   r   get_simulation_groupr*   r   r   s      r   r,   r,      s*     %%b%0EEjQQQQr    z/group/updatec                 h   K   t        j                  ||      j                  |        d {   S 7 wr   )r   r   update_groupr   s      r   update_segmentr0      r   r    z/group/{group_id}/studentsc                 h   K   t        j                  ||      j                  |        d {   S 7 wr   )r   r   get_group_studentsr-   s      r   r2   r2   "   s*     %%b%0CCJOOOOr    z	/categoryCategory)tagsc                 L    t        j                  ||      j                  |       S r   )r   r   create_categoryr   s      r   assign_categoryr7   &   s     5)99'BB    z /groupbased/{group_id}/main-data)r!   c                 L    t        j                  ||      j                  |       S r   )r   r   get_main_data_by_group_servicer%   s      r   get_main_data_by_groupr;   *   s     E*II(SSr8   z/group/category/{group_id})r!   r4   c                 L    t        j                  ||      j                  |       S r   )r   r   get_group_category_servicer%   s      r   r(   r(   .   s     5)DDXNNr8   N)*typingr   fastapir   r   sqlalchemy.ormr   app.api.groupr   app.api.student.schemasr   app.database.main.mysqlr	   app.models.main.categoryr
   schemasr   r   r   r   r   r   app.dependency.authanticationr   r   app.api.group.schemasr   group_routerpostr   getintr&   r)   strr,   putr0   r2   r7   r;   r(    r8   r   <module>rO      s4    & " ! 1 * 3 t t L 0{8>:A&/dkl|d} G G GQa G ?G %l`de6=foahiyaz E3 EG EN^ E fE (9Nlpq7>vbijzb{ NC NW NO_ N rN 6TXY>Efoip  rB  jC R3 RG RVf R ZR /-]abBI&/ls  uE  mF G${"3 G GYi G cG .tK?Pnrs<CFOgno  hA P P' PTd P tP ;j\2;B6?elm}e~ C^ C CRb C 3C 4^T8?bijzb{ TS Tg TO_ T UT .?T\f[gh4;FO^efv^w O O' OK[ O iOr8   