RemoteLocationService.java
2.63 KB
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
package com.huaheng.config.api;
import com.huaheng.common.core.config.SupportAutoConfiguration;
import com.huaheng.common.core.constant.ServiceNameConstants;
import com.huaheng.config.api.domain.Location;
import com.huaheng.config.api.factory.RemoteLocationFallbackFactory;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@FeignClient(contextId = "RemoteLocationService", value = ServiceNameConstants.CONFIG_SERVICE,
        fallbackFactory = RemoteLocationFallbackFactory.class, configuration = SupportAutoConfiguration.class)
public interface RemoteLocationService {
    /**
     * 查询库位
     * @return
     */
    @GetMapping("/location/getLocationByCode")
    Location getLocationByCode(@RequestParam(value = "locationCode")String locationCode);
    /**
     * 查询可用库位
     * @return
     */
    @GetMapping("/location/pickLocation")
    List<Location> pickLocation();
    /**
     * 查询库位
     * @return
     */
    @GetMapping("/location/getLocationByContainerCode")
    Location getLocationByContainerCode(@RequestParam(value = "containerCode")String containerCode);
    @PutMapping("/location/updateStatus")
    boolean updateStatus(@RequestParam(value = "code") String code, @RequestParam(value = "status") String status);
    @PutMapping("/location/updateContainerCodeAndStatus")
    boolean updateContainerCodeAndStatus(@RequestParam(value = "code") String code, @RequestParam(value = "containerCode") String containerCode, @RequestParam(value = "status") String status);
    @GetMapping("/location/executeRules")
    Location executeRules(@RequestParam("rules") String rules);
    @GetMapping("/location/emptyLocations")
    List<Location> emptyLocations();
    @GetMapping("/location/getNear")
    Location getNear(@RequestBody Location location);
    @GetMapping("/location/allocation")
    String allocation(@RequestParam("locationRule") String locationRule, @RequestParam("roadWay") String roadWay,
                      @RequestParam("warehouseCode") String warehouseCode, @RequestParam("containerCode") String containerCode);
    /**
     * 获取相邻的内侧库位
     * @param location 库位
     * @return 库位
     */
    @GetMapping("/location/getInsideNear")
    Location getInsideNear(@RequestBody Location location);
    /**
     * 获取相邻的外侧库位
     * @param location 库位
     * @return 库位
     */
    @GetMapping("/location/getOutSideNear")
    Location getOutSideNear(@RequestBody Location location);
    @GetMapping("/location/getEmptyLocation")
    Location getEmptyLocation(@RequestBody Location location);
}