
    TCh}              &          S SK JrJrJrJr  S SKJr  S SKJrJ	r	J
r
JrJrJr  S SKJr  S SKJr  S SKJr  S SKJr  S SKJr  S S	KJr  S S
KJr  \" 5       r\R;                  S\S9\" \R<                  5      4S\	S\R>                  4S jj5       r \RC                  S\S9\" \R<                  5      \" \5      4S\"S\R>                  S\4S jj5       r#\RC                  S\S9SSSSSSSSSSSS SSSS\" \R<                  5      4S\"S\\"   S\\"   S\\"   S\\$   S\\"   S\\"   S\\"   S\\"   S\\"   S \\"   S!\\"   S"\%S#\%S$\\"   S%\\"   S&\\"   S\R>                  4$S' jj5       r&\RC                  S(5      SSS\" \R<                  5      4S\\"   S\\"   S\\"   S\R>                  4S) jj5       r'\R;                  S*\S9\" \R<                  5      4S+\S\R>                  4S, jj5       r(\RC                  S-\S9\" \R<                  5      4S.\"S\R>                  4S/ jj5       r)\R;                  S-\S9\" \R<                  5      4S.\"S0\
S\R>                  4S1 jj5       r*\RW                  S-\S9\" \R<                  5      4S.\"S\R>                  4S2 jj5       r,\RC                  S3\S9\" \R<                  5      \" \5      4S\"S\R>                  S\4S4 jj5       r-g)5    )	APIRouterDependsHTTPExceptionBody)database)Task
TaskCreate
TaskUpdateTaskListTaskStatusUpdateRequestTaskStatusResponse)CheckListSelect)User)get_current_userdetails)tasksget_select_list)Optional)datetime/)response_modeltaskdbc                 .    [         R                  " X5      $ N)task_servicecreate_task_service)r   r   s     KC:\Suresh\moveshuttle\MDcreated\moveengine\app\v1\routers\platform\tasks.pycreate_taskr      s    ++D55    z/getchecklist/{account_id}
account_idcurrent_userc                     [        XU5      $ r   r   r!   r   r"   s      r   get_checklistr%      s    :<88r    N
   asc
service_id	task_modepriority	roundtrip	from_dateto_datecustomer_idworkforce_idfleet_idstatusqskiplimitsort_by
sort_orderschedule_idc                 @    [         R                  " XX#XEXgXXXXUU5      $ r   r   list_tasks_service)r!   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r   s                     r   list_all_tasksr;      sK    **:9Xanu  EQ  ]c  hl  u|  JU  WY  Z  Zr    z/summaryc                      U UUS.n[         R                  " XC5      $ ! [         a  n[        S[	        U5      S9eS nAff = f)N)r.   r/   r0   i  status_codedetail)r   get_task_summary_service
ValueErrorr   str)r.   r/   r0   r   payloades         r   get_task_summaryrE      sK    <&( 

 44WAA <CF;;<s    
A ;A z/update-task-statusrequestc                     [        S5        [        R                  " U R                  U R                  US9nU(       d
  [        SSS9eU$ )NzTest update-task-status)task_idtask_statusr     Task not foundr=   )printr   update_task_status_servicerH   rI   r   )rF   r   updateds      r   update_task_statusrO   +   sH    
 

#$55''G
 4DEENr    z
/{task_id}rH   c                 T    [         R                  " X5      nU(       d
  [        SSS9eU$ NrJ   rK   r=   )r   get_task_servicer   rH   r   r   s      r   get_taskrT   :   s(    ((5D4DEEKr    updatec                 V    [         R                  " XU5      nU(       d
  [        SSS9eU$ rQ   )r   update_task_servicer   )rH   rU   r   r   s       r   update_taskrX   A   s*    ++GR@D4DEEKr    c                 T    [         R                  " X5      nU(       d
  [        SSS9eU$ rQ   )r   delete_task_servicer   rS   s      r   delete_taskr[   H   s(    ++G8D4DEEKr    z/list/{account_id}/c                 .    [         R                  " X5      $ r   r9   r$   s      r   
list_tasksr]   O   s    **:::r    ).fastapir   r   r   r   app.dbr   app.v1.models.platform.tasksr   r	   r
   r   r   r   app.v1.models.platform.servicesr   app.v1.models.saas.usersmodelr   app.v1.dependencies.authr   app.v1.services.platformr   r   !app.v1.services.platform.servicesr   typingr   r   routerpostget_mongo_dbMongoDBr   getrB   r%   boolintr;   rE   rO   rT   rX   deleter[   r]    r    r   <module>rp      s   ; ;  z z ; . < : =  	S&9@AVAV9W 6j 6h&6&6 6 '6 (I:A(BWBW:Xov  xO  pP 9c 9x'7'7 9hl 9 J9 C)@Dae  BF  dh  EI  dh  GK  ko  KO  im  BF  TU  df  AE  ej  IM  fm  nv  nC	  nC	  fD	 Zs Z ZQYZ]Q^ Zqyz}q~ Z  S[  \`  Sa Z  u}  ~A  uB Z  T\  ]`  Ta Z  w  @C  wD Z  [c  dg  [h Z  {C  DG  {H Z  Ya  be  Yf Z  rz  {~  r Z  NQ Z  ^a Z  qy  z}  q~ Z  U]  ^a  Ub Z  yA  BE  yF Z  S[  Sc  Sc Z *Z J!%"&""8#8#89	<#<3-< sm< 		< <  "48 #8#8#89$ 9 L.29(:O:O2P c x//  / \$/IPQYQfQfIg  j h6F6F  0 |D15<X=R=R5S  ("2"2  2 !(;7>x?T?T7Uls  uL  mM ;3 ;H$4$4 ;ei ; <;r    