package com.prolog.rdc.tms.service;

import java.util.List;

import com.prolog.product.core.framework.entity.UserEntity;
import com.prolog.rdc.tms.model.dto.fleetManagement.VehicleAndDriverDTO;
import com.prolog.rdc.tms.model.entity.TmsShipbillDetailModel;
import com.prolog.rdc.tms.model.vo.CustomerSignVO;
import com.prolog.rdc.tms.model.vo.fleetManagement.VehicleAndVehicleVO;

/**
 * 
 *
 * 运单公共处理服务层
 *
 * @className :ShipbillCommonService
 * @author :fanzw
 * @creationTime :2022/09/08
 * @description :
 *
 * @modifier :fanzw
 * @modifyTime :2022/09/08
 * @reviseRemarks:
 *
 * @version :1.0.0
 *
 */
public interface ShipbillCommonService {


	/**
	 * 运单推送BMS
	 *
	 * @param shipbillIds
	 */
	void pushShipbillBmsData(List<String> shipbillIds,UserEntity...user);

	/**
	 * 运单明细查询
	 * 
	 * @param shipbillId
	 * @return
	 */
	List<TmsShipbillDetailModel> listShipbillDetailData(String shipbillId, UserEntity user);

	/**
	 * 调度时自动注册司机车辆
	 * 
	 * @param vehicleAndVehicleVO
	 * @return
	 */
	VehicleAndDriverDTO shipbillVehicleAutomaticData(VehicleAndVehicleVO vehicleAndVehicleVO);

	/**
	 * 订单签收同步
	 * @param customerSignVO
	 */
	void customerSign(CustomerSignVO customerSignVO);
}
