package com.gingersoft.coldchain_module.mvp.model.service;

import com.gingersoft.coldchain_module.mvp.model.bean.CancelLogisticsBean;
import com.gingersoft.coldchain_module.mvp.model.bean.ReadBean;
import com.gingersoft.coldchain_module.mvp.model.bean.ShipAnyOrdersNewBean;
import com.gingersoft.coldchain_module.mvp.model.bean.UpdateOrderStatusBean;
import com.gingersoft.gsa.cloud.common.bean.BaseResult;
import com.gingersoft.gsa.cloud.common.core.delivery.OrderDetails;
import io.reactivex.Observable;
import me.jessyan.retrofiturlmanager.RetrofitUrlManager;
import okhttp3.RequestBody;
import retrofit2.http.Body;
import retrofit2.http.GET;
import retrofit2.http.Headers;
import retrofit2.http.POST;
import retrofit2.http.Query;

public interface OrderDetailService {

    @Headers({"Domain-Name: ricepon_wechat"})
    @POST("wechat/findOrderDetails" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
    Observable<OrderDetails> findOrderDetails(@Body RequestBody requestBody);

    @Headers({"Domain-Name: member-web"})
    @POST("order/updateOrderInfoIsRead" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
    Observable<ReadBean> setIsRead(@Body RequestBody requestBody);

    @Headers({"Domain-Name: member_web_ricepon_gsa"})
    @POST("gsa/shipAnyOrdersNew" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
    Observable<ShipAnyOrdersNewBean> thirdDelivery(@Body RequestBody requestBody);

//    @Headers({"Domain-Name: member-web"})
//    @POST("order/updateOrderStatus" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
//    Observable<UpdateOrderStatusBean> cancelOrder(@Body RequestBody requestBody);

    @Headers({"Domain-Name: member-web"})
    @POST("order/updateOrderStatus" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
    Observable<UpdateOrderStatusBean> gsUpdateOrderStatus(@Body RequestBody requestBody);


    @Headers({"Domain-Name: member_web_ricepon_gsa"})
    @POST("gsa/cancelOrder" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
    Observable<CancelLogisticsBean> cancelLogistics(@Body RequestBody requestBody);

    @POST("printerRecording/add" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
    Observable<BaseResult> addPrj(@Body RequestBody requestBody);

    @Headers({"Domain-Name: ricepon_gsa"})
    @POST("shipanyTransportOrderInfo/update" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
    Observable<BaseResult> updatePrintPdfStatus(@Body RequestBody requestBody);

    @Headers({"Domain-Name: ricepon_order"})
    @GET("orderInfo/getOrderInfoById" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
    Observable<BaseResult> getNotPrintedOrderList(@Query("restaurantId") int restaurantId);

    @Headers({"Domain-Name: ricepon_order"})
    @POST("orderInfo/updateOrderInfoExt" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
    Observable<BaseResult> updatePrintOrderStatus(@Body RequestBody requestBody);


}
