package com.doumee.cloud.board; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.doumee.api.BaseController; import com.doumee.config.annotation.LoginNoRequired; import com.doumee.core.model.ApiResponse; import com.doumee.core.utils.Constants; import com.doumee.dao.business.PlatformLogMapper; import com.doumee.dao.business.model.PlatformLog; import com.doumee.dao.business.model.PlatformWarnEvent; import com.doumee.dao.web.response.platformReport.*; import com.doumee.service.business.PlatformLogService; import com.doumee.service.business.third.BoardService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import java.io.File; import java.util.ArrayList; import java.util.List; import java.util.Random; /** * Created by IntelliJ IDEA. * * @Author : Rk * @create 2024/10/28 13:42 */ @Api(tags = "【看板大屏】场内调度看板") @RestController @Slf4j @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/board/api/onSitDispatch") public class ChangNeiDiaoduController extends BaseController { @Autowired private BoardService boardService; @LoginNoRequired @ApiOperation("中心数据-今日车辆作业情况统计数据") @GetMapping("/centerData") public ApiResponse centerData() { OnSitDispatchBoardVO data = boardService.getCnddCenterData(); return ApiResponse.success(data); } @LoginNoRequired @ApiOperation("今日月台完成订单统计") @GetMapping("/platformGroupFinish") public ApiResponse> platformGroupFinish() { List platformGroupFinishVOList = boardService.platformGroupFinish(); return ApiResponse.success(platformGroupFinishVOList); } @LoginNoRequired @ApiOperation("今日车辆作业情况-近N条日志列表") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "size", value = "查询最近记录数的记录条数,默认7条", required = false) }) @GetMapping("/carWorkSituation") public ApiResponse carWorkSituation(@RequestParam Integer size) { int limit = Constants.formatIntegerNum(size)>0?size:7; CarWorkSituationVO carWorkSituationVO = boardService.carWorkSituation(limit); return ApiResponse.success(carWorkSituationVO); } @LoginNoRequired @ApiOperation("实时告警-近N条列表") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "size", value = "查询最近记录数的记录条数,默认7条", required = false) }) @GetMapping("/warningList") public ApiResponse> warningList(@RequestParam Integer size) { int limit = Constants.formatIntegerNum(size)>0?size:7; List data = boardService.warningList(limit); if(data ==null || data.size()==0){ } return ApiResponse.success(data); } @LoginNoRequired @ApiOperation("今日月台工作时长趋势") @GetMapping("/platformDuration") public ApiResponse> platformDuration() { List platformDurationList = boardService.platformDuration(); return ApiResponse.success(platformDurationList); } @LoginNoRequired @ApiOperation("实时作业效率") @GetMapping("/workEfficiency") @ApiImplicitParams({ @ApiImplicitParam(paramType = "query", dataType = "Integer", name = "type", value = "查询类型:0=入库;1=出库,默认 0", required = true), }) public ApiResponse> workEfficiency(@RequestParam Integer type) { List workEfficiencyVOList = boardService.workEfficiency(type); return ApiResponse.success(workEfficiencyVOList); } @LoginNoRequired @ApiOperation("实时月台作业信息") @GetMapping("/platformWorkData") public ApiResponse> platformWorkData() { List platformWorkDataVOList = boardService.platformWorkData(); return ApiResponse.success(platformWorkDataVOList); } }