package com.bigfish.salecenter.api; import static com.dayu.common.Constants.API_8600; import com.bigfish.salecenter.model.CollectProductData; import com.bigfish.salecenter.model.OrdersBean; import com.bigfish.salecenter.model.ProductDetailBean; import com.bigfish.salecenter.model.ProductListBean; import com.bigfish.salecenter.model.RewardRecordBean; import com.bigfish.salecenter.model.SalTabNumBean; import com.bigfish.salecenter.model.SaleOrderDetailsBean; import com.bigfish.salecenter.model.SaleProduct; import com.dayu.base.api.protocol.BasePageBean; import com.dayu.base.api.protocol.BaseResponse; import com.dayu.base.api.protocol.CommentBean; import com.dayu.base.api.protocol.CommentPostData; import com.dayu.base.api.protocol.CommentReplyData; import com.dayu.common.Constants; import io.reactivex.Observable; import okhttp3.ResponseBody; import retrofit2.Call; import retrofit2.http.Body; import retrofit2.http.GET; import retrofit2.http.POST; import retrofit2.http.Path; import retrofit2.http.Query; /** * Created by mReturn * on 2020/2/21 **/ public interface SaleService { String kaApi = "/api-ka-base"; /** * 商品列表 * * @param engineerId * @param page * @param pageSize * @return */ @GET(kaApi + "/goods/mobileGoods") Observable<BaseResponse<BasePageBean<ProductListBean>>> getProducts(@Query("engineerId") int engineerId, @Query("key") String key, @Query("status") int status, @Query("page") int page, @Query("pageSize") int pageSize); @GET(API_8600 + "/bdOrder/engineer") Observable<BaseResponse<BasePageBean<SaleProduct>>> getBdOrder(@Query("engineerId") int engineerId, @Query("key") String key, @Query("status") int status, @Query("page") int page, @Query("pageSize") int pageSize); /** * 奖励记录 * * @param engineerId * @return */ @GET(API_8600 + "/bdOrder/rewardRecordTop/engineerId/{engineerId}") Observable<BaseResponse<RewardRecordBean>> getrewardRecord(@Path("engineerId") int engineerId); /** * 收藏列表 * * @param engineerId * @param page * @param pageSize * @return */ @GET(kaApi + "/goods/mobileCollectionGoods") Observable<BaseResponse<BasePageBean<ProductListBean>>> getCollections(@Query("engineerId") int engineerId, @Query("key") String key, @Query("status") int status, @Query("page") int page, @Query("pageSize") int pageSize); /** * 商品详情 */ @GET(Constants.API_7900 + "/goods/id/{id}/accountId/{accountId}") Observable<BaseResponse<ProductDetailBean>> getProductDetail(@Path("id") int goodId, @Path("accountId") int accountId); /** * 商品是否能分享 */ @GET(kaApi + "/goodsCollections/goodsId/{goodsId}/engineerId/{engineerId}") Observable<BaseResponse<Boolean>> canShare(@Path("goodsId") int goodsId, @Path("engineerId") int engineerId); /** * 取消收藏商品 */ @GET(kaApi + "/goodsCollections/cancel/goodsId/{goodsId}/engineerId/{engineerId}") Observable<BaseResponse<Boolean>> unCollectProdcut(@Path("goodsId") int goodsId, @Path("engineerId") int engineerId); /** * 收藏商品 */ @POST(kaApi + "/goodsCollections") Observable<BaseResponse<Boolean>> collectProdcut(@Body CollectProductData data); /** * 销售列表 * * @return */ @GET(API_8600 + "/orderGoods/mobile") Observable<BaseResponse<BasePageBean<OrdersBean>>> getSaleOrders(@Query("engineerId") int engineerId, @Query("state") int state, @Query("key") String key, @Query("page") int page, @Query("pageSize") int pageSize); /** * 订单详情 * * @param id * @return */ @GET(API_8600 + "/orderGoods/{id}") Observable<BaseResponse<SaleOrderDetailsBean>> getOrderDetail(@Path("id") int id); /** * 销售tab数量 * * @param engineerId * @return */ @GET(Constants.API_7900 + "/goods/bdOrderEngineerCount/{engineerId}") Observable<BaseResponse<SalTabNumBean>> getTabNums(@Path("engineerId") int engineerId); /** * 获取留言 * * @return */ @GET(Constants.API_7400 + "/leaveMessage/goods/engineer/goodsId/{goodsId}") Observable<BaseResponse<BasePageBean<CommentBean>>> getComment(@Path("goodsId") int goodsId, @Query("page") int page, @Query("pageSize") int pageSize); /** * 留言 */ @POST(Constants.API_7400 + "/leaveMessage/goods/engineer") Observable<BaseResponse<Boolean>> addComment(@Body CommentPostData data); /** * 回复 */ @POST(Constants.API_7400 + "/leaveMessage/goods/engineer") Observable<BaseResponse<Boolean>> addCommentReply(@Body CommentReplyData data); @GET("/api-third/WXUser/getWxQrCode") Call<ResponseBody> createWxUrl(@Query("path") String path, @Query("width") int width); }