package com.prolog.rdc.tms.service;

import com.prolog.framework.core.pojo.Page;
import com.prolog.rdc.tms.model.dto.ContractLogQueryDTO;
import com.prolog.rdc.tms.model.dto.LogisticsContractDTO;
import com.prolog.rdc.tms.model.dto.LogisticsContractQuery;
import com.prolog.rdc.tms.model.entity.BmsLogOperationModel;
import com.prolog.rdc.tms.model.vo.ContractLogQueryVO;
import com.prolog.rdc.tms.model.vo.LogisticsContractVO;
import com.prolog.rdc.tms.model.vo.StatusUpdate;

import java.util.List;

public interface LogisticsContractService {
    void save(LogisticsContractVO vo);

    Page<LogisticsContractDTO> findList(LogisticsContractQuery vo);

    LogisticsContractDTO detail(Long id);

    void update(LogisticsContractVO vo);

    void copy(LogisticsContractVO vo);

    void updateStatus(List<StatusUpdate> list);

    void trialTest(Long id);

    List<BmsLogOperationModel> findListForLog(Long id);

    List<ContractLogQueryDTO> logQuery(ContractLogQueryVO vo);
}
