package com.doumee.cloud.web; import com.doumee.api.BaseController; import com.doumee.config.annotation.LoginNoRequired; import com.doumee.core.annotation.trace.Trace; import com.doumee.core.model.ApiResponse; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.core.utils.DateUtil; import com.doumee.dao.business.model.PlatformBooks; import com.doumee.dao.business.model.PlatformGroup; import com.doumee.dao.business.model.PlatformJob; import com.doumee.dao.business.model.PlatformShowParam; import com.doumee.dao.web.reqeust.*; import com.doumee.dao.web.response.DriverHomeVO; import com.doumee.dao.web.response.LineUpVO; import com.doumee.service.business.*; 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.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.math.BigDecimal; import java.util.Date; import java.util.List; /** * Created by IntelliJ IDEA. * * @Author : Rk * @create 2023/12/28 14:31 */ @Api(tags = "【公众号】PDA月台业务") @Trace(exclude = true) @RestController @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/pdaPlatform") @Slf4j @LoginNoRequired public class PdaPlatformController extends BaseController { @Autowired private PlatformJobService platformJobService; @Autowired private PlatformGroupService platformGroupService; @Autowired private PlatformShowParamService platformShowParamService; @ApiOperation("获取月台组信息") @ApiImplicitParams({ @ApiImplicitParam(name = "queryType", dataType = "Integer", value = "0=全部月台;1=启用月台 2=配置显示月台", required = false) }) @GetMapping("/getPlatformGroupList") public ApiResponse> getPlatformGroupList (@RequestParam Integer queryType, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ return ApiResponse.success(platformGroupService.getAllPlatformGroup(queryType,getLoginUser(token))); } @ApiOperation("更新月台配置信息") @GetMapping("/updUserPlatformConfig") public ApiResponse updUserPlatformConfig (@RequestBody List ids, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ platformShowParamService.updUserConfig(ids,getLoginUser(token)); return ApiResponse.success("操作成功"); } @ApiOperation("车辆排队情况") @PostMapping("/platformLineUpPage") public ApiResponse> platformLineUpPage (@RequestBody PageWrap pageWrap) { return ApiResponse.success(platformJobService.findPage(pageWrap)); } @ApiOperation("月台叫号") @PostMapping("/platformCallNumber") public ApiResponse platformCallNumber (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.platformInPark(jobOperateDTO); return ApiResponse.success("操作成功"); } @ApiOperation("转移月台") @PostMapping("/platformMove") public ApiResponse platformMove (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.platformInPark(jobOperateDTO); return ApiResponse.success("操作成功"); } @ApiOperation("月台过号") @PostMapping("/platformOverNumber") public ApiResponse platformOverNumber (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.platformInPark(jobOperateDTO); return ApiResponse.success("操作成功"); } @ApiOperation("异常挂起") @PostMapping("/platformErr") public ApiResponse platformErr (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.platformInPark(jobOperateDTO); return ApiResponse.success("操作成功"); } @ApiOperation("手动开始作业") @PostMapping("/beginWork") public ApiResponse beginWork (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.platformInPark(jobOperateDTO); return ApiResponse.success("操作成功"); } @ApiOperation("完成作业") @PostMapping("/finishWork") public ApiResponse finishWork (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.platformInPark(jobOperateDTO); return ApiResponse.success("操作成功"); } }