package com.ycwl.basic.service.printer;

import com.ycwl.basic.model.pc.printer.entity.PrinterEntity;
import com.ycwl.basic.model.printer.req.PrinterSyncReq;
import com.ycwl.basic.model.printer.resp.PrintTaskResp;
import com.ycwl.basic.model.printer.req.WorkerAuthReqVo;
import com.ycwl.basic.utils.ApiResponse;

import java.util.List;

public interface PrinterService {
    ApiResponse<List<PrinterEntity>> list(PrinterEntity condition);
    
    ApiResponse<PrinterEntity> get(Integer id);
    
    ApiResponse<Integer> add(PrinterEntity entity);
    
    ApiResponse<Integer> update(PrinterEntity entity);
    
    ApiResponse<Integer> delete(Integer id);

    List<PrintTaskResp> sync(PrinterSyncReq req);

    void taskSuccess(Integer taskId, WorkerAuthReqVo req);

    void taskFail(Integer taskId, WorkerAuthReqVo req);
}