jiangping
2024-09-02 843d0abd014ec20424844546fc57a9f976f366ba
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
package com.doumee.cloud.openapi;
 
import com.doumee.api.BaseController;
import com.doumee.config.annotation.LoginNoRequired;
import com.doumee.core.annotation.pr.PreventRepeat;
import com.doumee.core.model.ApiResponse;
import com.doumee.core.utils.Constants;
import com.doumee.dao.openapi.request.*;
import com.doumee.dao.openapi.response.*;
import com.doumee.service.business.PlatformJobService;
import com.doumee.service.business.PlatformLogService;
import com.doumee.service.business.PlatformService;
import com.doumee.service.business.PlatformWaterGasService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
 
import java.util.ArrayList;
import java.util.List;
 
/**
 * @author 江蹄蹄
 * @date 2023/11/30 15:33
 */
@Api(tags = "提供安防平台对接接口(数据大屏基础数据等)")
@RestController
@RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/hk/api")
public class HkOpenApiController extends BaseController {
 
    @Autowired
    private PlatformService platformService;
 
    @Autowired
    private PlatformLogService platformLogService;
 
    @Autowired
    private PlatformJobService platformJobService;
 
    @Autowired
    private PlatformWaterGasService platformWaterGasService;
 
    @PreventRepeat
    @ApiOperation("【用水量】本月、上月和去年同月")
    @PostMapping("/water/dataByMonth")
    @LoginNoRequired
    public ApiResponse<WaterByMonthResponse> waterDataByMonth(@RequestBody WaterByMonthRequest param) {
        return ApiResponse.success(platformWaterGasService.waterDataByMonth(param));
    }
    @PreventRepeat
    @ApiOperation("【用气量】本月、上月和去年同月")
    @PostMapping("/gas/dataByMonth")
    @LoginNoRequired
    public ApiResponse<GasByMonthResponse> gasDataByMonth(@RequestBody GasByMonthRequest param) {
        return ApiResponse.success(platformWaterGasService.gasDataByMonth(param));
    }
    @PreventRepeat
    @ApiOperation("【月台】按天统计运单请求参数")
    @PostMapping("/platform/orderNumByDate")
    @LoginNoRequired
    public ApiResponse<PlatformOrderNumByDateResponse> orderNumByDate(@RequestBody PlatformOrderNumByDateRequest param) {
        return ApiResponse.success(platformJobService.orderNumByDate(param));
    }
    @PreventRepeat
    @ApiOperation("【月台】月台状态数量统计")
    @PostMapping("/platform/totalNumByStatus")
    @LoginNoRequired
    public ApiResponse<PlatformNumByStatusResponse> totalNumByStatus(@RequestBody PlatformNumByStatusRequest param) {
        return ApiResponse.success(platformService.getPlatformNumByStatusResponse());
    }
    @PreventRepeat
    @ApiOperation("【月台】月台当前作业信息列表")
    @PostMapping("/platform/workingDataList")
    @LoginNoRequired
    public ApiResponse<List<PlatformDataListResponse>> platformWorkingDataList(@RequestBody PlatformDataListRequest param) {
        return ApiResponse.success(platformJobService.platformWorkingDataList(param));
    }
    @PreventRepeat
    @ApiOperation("【月台】月台作业详情信息")
    @PostMapping("/platform/workDataInfo")
    @LoginNoRequired
    public ApiResponse<PlatformDataInfoResponse> platformWorkingDataList(@RequestBody PlatformDataInfoRequest param) {
        return ApiResponse.success(platformJobService.platformWorkingDataList(param));
    }
    @PreventRepeat
    @ApiOperation("【月台】当前车辆状态数量统计")
    @PostMapping("/platform/carStatusNum")
    @LoginNoRequired
    public ApiResponse<CarNumByStatusResponse> carStatusNum(@RequestBody CarNumByStatusRequest param) {
        return ApiResponse.success(platformJobService.carStatusNum(param));
    }
 
    @PreventRepeat
    @ApiOperation("【月台】车辆事件列表数据集合(最新N条)")
    @PostMapping("/platform/carLogsList")
    @LoginNoRequired
    public ApiResponse<List<CarLogsListResponse>> carLogsList(@RequestBody CarLogsListRequest param) {
        return ApiResponse.success(platformLogService.getCarLogsListResponse(param));
    }
    @PreventRepeat
    @ApiOperation("【月台】排队队列列表集合")
    @PostMapping("/platform/queueList")
    @LoginNoRequired
    public ApiResponse<PlatformQueuingListResponse> queueList(@RequestBody PlatformQueuingListRequest param) {
        return ApiResponse.success(platformJobService.queueList(param));
    }
 
    @PreventRepeat
    @ApiOperation("【月台】预警事件集合列表")
    @PostMapping("/platform/warningEventList")
    @LoginNoRequired
    public ApiResponse<List<PlatformWarnEventListResponse>> warningEventList(@RequestBody PlatformWarnEventListRequest param) {
        return ApiResponse.success(new ArrayList<>());
    }
}