package cn.superdesk.uniorder.dubbo.facade.order.receive;

import cn.superdesk.uniorder.common.pagination.PageQueryParam;
import cn.superdesk.uniorder.common.rest.response.R;
import cn.superdesk.uniorder.dao.entity.base.UnifiedOrder;
import cn.superdesk.uniorder.dto.receive.consumer.superdeskappservices.flashdeliver.FlashDeliverOrderReceiveParam;
import cn.superdesk.uniorder.dto.receive.consumer.superdeskappservices.flashdeliver.FlashDeliverRefundOrderReceiveParam;

import java.util.List;

/**
 * @Description: kafka 一般订单 服务之窗 楼闪送
 * @Author: linjinyu
 * @CreateDate: 2020/10/27 下午8:58
 * @UpdateUser: linjinyu
 * @UpdateDate: 2020/10/27 下午8:58
 * @UpdateRemark: 修改内容
 * @Version: 1.0
 */
public interface DubboReceiveFlashDeliverOrderService {


	/****************************************** kafka 一般订单 服务之窗 楼闪送 start ******************************************/

	R<String> httpFlashDeliverOrderReceive(FlashDeliverOrderReceiveParam orderReceiveParam);

	R<String> httpFlashDeliverOrderRefundReceive(FlashDeliverRefundOrderReceiveParam refundOrderReceiveParam);

	void kafkaFlashDeliverOrderReceive(String message);

	void kafkaFlashDeliverOrderRefundReceive(String message);

	void kafkaFlashDeliverOrderReceiveStateUpdate(String message);

	/****************************************** kafka 一般订单 服务之窗 楼闪送   end ******************************************/

	/****************************************** kafka patchUnifiedOrderFieldOutVirt start ******************************************/

	R<List<UnifiedOrder>> patchFlashDeliverPatchUnifiedOrderFieldOutVirt(PageQueryParam pageQueryParam);

	void kafkaFlashDeliverPatchUnifiedOrderFieldOutVirt(String message);

	/****************************************** kafka patchUnifiedOrderFieldOutVirt   end ******************************************/


}
