#
Junjie
昨天 65fd58ba961fb0f9d6680361f9ba7ab1226dadb2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package com.zy.core.thread;
 
import com.zy.core.ThreadHandler;
import com.zy.core.enums.StationCommandType;
import com.zy.core.model.CommandResponse;
import com.zy.core.model.command.StationCommand;
import com.zy.core.model.protocol.StationProtocol;
import java.util.List;
import java.util.Map;
 
public interface StationThread extends ThreadHandler {
 
    List<StationProtocol> getStatus();
 
    Map<Integer, StationProtocol> getStatusMap();
 
    StationCommand getCommand(StationCommandType commandType, Integer taskNo, Integer stationId, Integer targetStationId, Integer palletSize);
 
    default StationCommand getCommand(StationCommandType commandType,
                                      Integer taskNo,
                                      Integer stationId,
                                      Integer targetStationId,
                                      Integer palletSize,
                                      Double pathLenFactor) {
        return getCommand(commandType, taskNo, stationId, targetStationId, palletSize);
    }
 
    default StationCommand getRunBlockRerouteCommand(Integer taskNo,
                                                     Integer stationId,
                                                     Integer targetStationId,
                                                     Integer palletSize) {
        return getCommand(StationCommandType.MOVE, taskNo, stationId, targetStationId, palletSize);
    }
 
    default StationCommand getRunBlockRerouteCommand(Integer taskNo,
                                                     Integer stationId,
                                                     Integer targetStationId,
                                                     Integer palletSize,
                                                     Double pathLenFactor) {
        return getCommand(StationCommandType.MOVE, taskNo, stationId, targetStationId, palletSize, pathLenFactor);
    }
 
    CommandResponse sendCommand(StationCommand command);
 
    CommandResponse sendOriginCommand(String address, short[] data);
 
    byte[] readOriginCommand(String address, int length);
 
}