package com.example.rehabilitation.Retrofit import com.example.rehabilitation.Appeals.TabLayout.Model.AppealsNewListModel import com.example.rehabilitation.Appeals.TabLayout.Model.AppealsOldListModel import com.example.rehabilitation.Auth.Model.AuthModel import com.example.rehabilitation.Auth.Model.CheckTokenModel import com.example.rehabilitation.Auth.Model.UserModel import com.example.rehabilitation.Calendare.CalendareListModel import com.example.rehabilitation.Calendare.CalendareModel import com.example.rehabilitation.MessageModel import com.example.rehabilitation.Progress.ProgressListModel import com.example.rehabilitation.Progress.ProgressModel import com.example.rehabilitation.Questionnaire.Model.AfterLookModel import com.example.rehabilitation.Questionnaire.Model.AfterQuestionnaireMessage import com.example.rehabilitation.Questionnaire.Model.AfterQuestionnaireModel import com.example.rehabilitation.Questionnaire.Model.BeforeLookModel import com.example.rehabilitation.Questionnaire.Model.BeforeQuestionnaireMessage import com.example.rehabilitation.Questionnaire.Model.BeforeQuestionnaireModel import com.example.rehabilitation.Questionnaire.Model.QuestionnaireModel import com.example.rehabilitation.Sport.DayListModel import com.example.rehabilitation.Sport.DayModel import com.example.rehabilitation.Sport.SportDayOneModel import com.example.rehabilitation.Sport.SportForDayListModel import com.example.rehabilitation.Sport.SportForDayModel import com.example.rehabilitation.Sport.SportListModel import com.example.rehabilitation.Sport.UpdateSportTrueFalseModel import com.example.rehabilitation.Sport.ViewFragmentModel import com.example.rehabilitation.Sport.ViewVisibleModel import retrofit2.Response import retrofit2.http.Body import retrofit2.http.GET import retrofit2.http.Header import retrofit2.http.Headers import retrofit2.http.POST import retrofit2.http.PUT import retrofit2.http.Query interface PatientApi { //Проверка токена @Headers("Content-Type: application/json") @GET("CheckTokenPatient") suspend fun CheckToken(@Header("Authorization") token:String) :Response //Авторизация @Headers("Content-Type: application/json") @POST("LoginPatient") suspend fun LoginPatient(@Body authModel: AuthModel): Response //Выход из аккаунта @Headers("Content-Type: application/json") @POST("LogoutPatient") suspend fun LogoutPatient(@Header("Authorization") token:String):Response //Заполнение анкеты ДО @Headers("Content-Type: application/json") @POST("AddBeforeQuestionnaire2") suspend fun AddBeforeQuestionnaire2(@Header("Authorization") token:String,@Body beforeQuestionnaireModel: BeforeQuestionnaireModel): Response //Заполнение анкеты ПОСЛЕ @Headers("Content-Type: application/json") @POST("AddAfterQuestionnaire2") suspend fun AddAfterQuestionnaire2(@Header("Authorization") token:String,@Body afterQuestionnaireModel: AfterQuestionnaireModel) : Response //Добавление курса на сегодня @Headers("Content-Type: application/json") @POST("AddCourses2") suspend fun AddCourses2(@Header("Authorization") token:String) //Вывод списка спортивных задания на 1 день @Headers("Content-Type: application/json") @GET("CoutSportCourses") suspend fun CoutSportCourses(@Header("Authorization") token:String) //Вывод нужного экрана @Headers("Content-Type: application/json") @GET("VisibleView3") suspend fun VisibleView3(@Header("Authorization") token:String) :Response //Вывод календаря @Headers("Content-Type: application/json") @GET("PatientCalendareDay") suspend fun PatientCalendareDay(@Header("Authorization") token:String):Response //Вывод списка упражнений @Headers("Content-Type: application/json") @GET("GetSportDay") suspend fun GetSportDay(@Header("Authorization") token:String):Response //Вывод определенного упражнения @Headers("Content-Type: application/json") @GET("GetSportDayOne") suspend fun GetSportDayOne(@Header("Authorization") token:String,@Query("id") id:Int):Response //Подтвержденеи упражнения @Headers("Content-Type: application/json") @PUT("AddSportCheck") suspend fun AddSportCheck(@Header("Authorization") token:String,@Query("id") id:Int, @Query("check") check:Int):Response //Список прогресса по дням @Headers("Content-Type: application/json") @GET("ProgressPatientCourses") suspend fun ProgressPatientCourses(@Header("Authorization") token:String):Response //Вывод необработанных сообщений @Headers("Content-Type: application/json") @GET("GetAppealsPatientNew") suspend fun GetAppealsPatientNew(@Header("Authorization") token:String) :Response //Вывод необработанных сообщений @Headers("Content-Type: application/json") @GET("GetAppealsPatientOld") suspend fun GetAppealsPatientOld(@Header("Authorization") token:String) :Response //Подтверждение необработанных сообщений @Headers("Content-Type: application/json") @PUT("UpdateMessagePatient") suspend fun UpdateMessagePatient(@Header("Authorization") token:String,@Query("id") id:Int) :Response //Отправка сообщения пациенту @Headers("Content-Type: application/json") @POST("AddMessagePatient") suspend fun AddMessagePatient(@Header("Authorization") token:String, @Query("text") text:String) :Response //Вывод есть ли анкета ДО @Headers("Content-Type: application/json") @GET("LookBefore") suspend fun LookBefore(@Header("Authorization") token:String) :Response //Вывод есть ли анкета ПОСЛЕ @Headers("Content-Type: application/json") @GET("LookAfter") suspend fun LookAfter(@Header("Authorization") token:String) :Response //Вывод есть ли анкета ПОСЛЕ @Headers("Content-Type: application/json") @GET("GetCalendare") suspend fun GetCalendare(@Header("Authorization") token:String) :Response }