package com.fdkankan.order.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.fdkankan.agent.vo.AgentVo;
import com.fdkankan.agent.vo.ResponseAgentCamera;
import com.fdkankan.order.entity.VirtualOrder;
import com.fdkankan.order.vo.ResponseExpansionOrder;
import com.fdkankan.user.request.RequestCamera;
import com.fdkankan.user.request.RequestDownloadOrder;
import com.fdkankan.user.request.RequestIncrementOrder;
import com.fdkankan.user.request.RequestVirtualOrder;
import com.fdkankan.user.vo.ResponseDownloadOrder;
import com.fdkankan.user.vo.ResponseIncrementOrder;
import com.fdkankan.user.vo.ResponseVirtualOrder;

/**
 * <p>
 * 充值订单表（双目相机点数充值、消费） 服务类
 * </p>
 *
 * @author 
 * @since 2021-12-24
 */
public interface IVirtualOrderService extends IService<VirtualOrder> {

    void saveVirtualOrderByAgent(Long cameraId);

    void getByStatusAndCameraId(AgentVo agentVo, String startDate, String endDate);

    ResponseAgentCamera getPointsByCameraId(Long cameraId, String startDate, String endDate);

    ResponseVirtualOrder saveByCamera(Long id, RequestCamera param);

    Page<ResponseVirtualOrder> chargeList(RequestVirtualOrder param, String token);

    Page<ResponseExpansionOrder> expansionList(RequestCamera param, String token);

    Page<ResponseIncrementOrder> incrementOrderList(RequestIncrementOrder param, String token);

    Page<ResponseDownloadOrder> downloadOrderList(RequestDownloadOrder param, String token);
}
