
    ,ht                        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
  S SKJr  S SKJrJrJr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\R3                  S\S9\" \R,                  5      4S\S
\R.                  4S jj5       r\R3                  S\S9\" \R,                  5      4S\S
\R.                  4S jj5       r\R;                  S\S9\" \R,                  5      4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 \R3                  S\S9\" SSS9\" S S SS9\" SS SSS9\" SSS9SSSSSS\" S S!S9S"\" \R,                  5      4S\S#\!S$\!S%\\   S&\\   S'\\   S(\\   S)\\   S*\\   S+\\   S,\\   S-\\!   S
\R.                  4S. jj5       r"g)/    )	APIRouterDependsHTTPExceptionQuery)database)OptionalListDict)datetime)ScheduleScheduleCreateScheduleUpdate	Schedules)	schedules/)response_modelscheduledbc                 D    [        S5        [        R                  " X5      $ )N=create_schedulecreate_schedulecreate_schedule1010101010101010)printschedule_servicecreate_schedule_service)r   r   s     OC:\Suresh\moveshuttle\MDcreated\moveengine\app\v1\routers\platform\schedules.pycreate_scheduler   
   s    	
IJ33HAA    z/{schedule_id}schedule_idc                 T    [         R                  " X5      nU(       d
  [        SSS9eU$ Ni  zSchedule not found)status_codedetail)r   get_schedule_servicer   )r   r   r   s      r   get_accountr#      s(    44[EH4HIIOr   z/list/{account_id}
account_idc                 .    [         R                  " X5      $ )Nr   list_schedules_service)r$   r   s     r   list_schedulesr(      s    22:BBr   schedule_updatec                 V    [         R                  " XU5      nU(       d
  [        SSS9eU$ r   )r   update_schedule_servicer   )r   r)   r   updateds       r   update_scheduler-      s+    66{UWXG4HIINr   c                 T    [         R                  " X5      nU(       d
  [        SSS9eU$ r   )r   delete_schedule_servicer   )r   r   deleteds      r   delete_scheduler1   !   s(    66{GG4HIINr   .z
Account ID)descriptionzPagination start)ger2   
   d   zMax number of items to return)gtler2   NzOptional search keywordcreated_datezField to sort by   skiplimitqstatusstart_date_fromstart_date_tocustomer_idworkforce_idfleet_idsort_byorder_byc                 B    [         R                  " U UUUUUUUUU	U
UUS9$ )N)r$   r:   r;   search_queryr=   r>   r?   r@   rA   rB   rC   rD   r   r&   )r$   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   r   s                r   list_schedules_with_queryrG   (   s>      22'#! r   )#fastapir   r   r   r   app.dbr   typingr   r	   r
   r    app.v1.models.platform.schedulesr   r   r   r   app.v1.services.platformr   r   routerpostget_mongo_dbMongoDBr   getstrr#   r(   putr-   deleter1   intrG    r   r   <module>rW      s   < <  ' '  ` ` B	S*ELXMbMbEc Bn B(2B2B B +B X69@AVAV9W S h&6&6  7  ;;B8CXCX;Y Cs C(8(8 C <C X6^efnf{f{^|  ~ 8K[K[  7 9=DXEZEZ=[  (*:*:  : C	*C\:aA+=>raC5TUT/HI %)#'!%"&"">?QR"8#8#89
  }	
 SM c] C= # 3- sm c] sm 	 +r   