package com.zy.acs.manager.core.service;
|
|
import com.zy.acs.common.domain.AgvProtocol;
|
import com.zy.acs.manager.common.domain.param.HandlerPublishParam;
|
import com.zy.acs.manager.manager.controller.param.OpenBusSubmitParam;
|
import com.zy.acs.manager.manager.entity.Bus;
|
import com.zy.acs.manager.manager.entity.Jam;
|
import com.zy.acs.manager.manager.entity.Segment;
|
import com.zy.acs.manager.manager.entity.Task;
|
import com.zy.acs.manager.manager.enums.TaskTypeType;
|
|
import java.util.Date;
|
import java.util.List;
|
|
/**
|
* Created by vincent on 2023/6/14
|
*/
|
public interface IMainService {
|
|
|
//Bus generateBusAndTask(OpenBusSubmitParam busSubmitParam, String memo);
|
|
/**
|
* 任务分配给车辆 ( 车辆此时是空闲且静止的 )
|
*/
|
void allocateTask(Bus bus);
|
|
/**
|
* 解析取放货集合任务,进行最优的排列组合顺序 ( 车辆此时是空闲且静止的 )
|
* todo: {@link com.zy.acs.manager.core.HandlerController#controlAgv(String, HandlerPublishParam)}
|
*/
|
void buildMajorTask(Long agvId, List<Task> taskList);
|
|
|
/**
|
* 充电 回待机位任务
|
*/
|
//boolean buildMinorTask(Long agvId, TaskTypeType taskType, String destination, Jam jam);
|
|
/**
|
* 根据分片生成动作 ( 车辆可能已经做过一些任务了,正在等待下一段任务 )
|
*/
|
void generateAction(Long agvId, List<Segment> segmentList, List<String> pathList, Date algoStartTime);
|
|
void publishAction(String actionGroupId);
|
|
void upDataSubscribe(AgvProtocol protocol);
|
|
void settleSegmentList(List<Segment> segmentList, String serialNo);
|
|
}
|