package com.doumee.cloud.admin; import com.doumee.api.BaseController; import com.doumee.config.annotation.LoginNoRequired; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.service.business.third.model.ApiResponse; import com.doumee.service.business.third.model.LoginUserInfo; import com.doumee.core.utils.Constants; import com.doumee.service.business.third.TmsService; import com.doumee.service.business.third.model.request.*; import com.doumee.service.business.third.model.response.*; import io.swagger.annotations.Api; 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.*; import java.util.List; /** * @author 江蹄蹄 * @date 2023/11/30 15:33 */ @Api(tags = "TMS平台数据接口") @RestController @Slf4j @LoginNoRequired @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/tms") public class TmsCloudController extends BaseController { @Autowired private TmsService tmsService; @ApiOperation("【TMS】电子锁上锁时间接口") @LoginNoRequired @PostMapping("/lockStatusQuery") public TmsBaseResponse> lockStatusQuery(@RequestBody TmsLockStatusQueryRequest request, @RequestHeader(Constants.HEADER_USER_TOKEN) String token ) { return tmsService.lockStatusQuery(request); } @ApiOperation("【TMS】合同列表接口") // @LoginNoRequired @PostMapping("/orderList") public ApiResponse> orderList(@RequestBody TmsOrderListRequest param , @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { LoginUserInfo user = this.getLoginUser(token); if(param == null){ param = new TmsOrderListRequest(); } if(param.getParameters() == null){ param.setParameters( new TmsOrderListParamRequest()); } if(param.getPager() == null){ param.setPager( new TmsPagerRequest()); } if(param.getPager().getPage() == null){ param.getPager().setPage(1); } if(param.getPager().getRows() == null){ param.getPager().setRows(10); } param.getParameters().setPhoneNumber(user.getMobile()); /* if(StringUtils.isBlank(param.getParameters().getPhoneNumber())){ param.getParameters().setPhoneNumber("00000000000");//手机号必填 }*/ if(param.getParameters().getContractNumbers()==null || param.getParameters().getContractNumbers().size()==0){ param.getParameters().setContractNumbers(null); } return ApiResponse.success(tmsService.orderList(param)); } @ApiOperation("【TMS】合同详情接口") // @LoginNoRequired @PostMapping("/orderInfo") public ApiResponse ordreInfo(@RequestBody TmsOrderInfoRequest request , @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { return ApiResponse.success(tmsService.orderInfo(request)); } @ApiOperation("【TMS】司机待办任务列表接口") @PostMapping("/taskList") public ApiResponse> taskList(@RequestBody TmsDriverTaskListRequest param , @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { if(param == null){ param = new TmsDriverTaskListRequest(); } if(param.getParameters() == null){ param.setParameters( new TmsDriverTaskParameterRequest()); } if(param.getPager() == null){ param.setPager( new TmsPagerRequest()); } if(param.getPager().getPage() == null){ param.getPager().setPage(1); } if(param.getPager().getRows() == null){ param.getPager().setRows(10); } /* if(StringUtils.isBlank(param.getParameters().getDriverTel())){ param.getParameters().setDriverTel("00000000000");//手机号必填 }*/ LoginUserInfo user = this.getLoginUser(token); if(user ==null){ throw new BusinessException(ResponseStatus.NO_LOGIN); } param.getParameters().setDriverTel(user.getUsername()); return ApiResponse.success(tmsService.getDriverTaskList(param)); } @ApiOperation("【TMS】待办任务详情接口") @PostMapping("/taskDetail") public ApiResponse getDriverTaskDetail(@RequestBody TmsDriverTaskInfoRequest request ,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { return ApiResponse.success(tmsService.getDriverTaskDetail(request)); } @ApiOperation("【TMS】司机任务启运") @PostMapping("/driverStart") public ApiResponse driverStart(@RequestBody TmsDriverStartAndArrivalRequest request ,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { tmsService.driverStart(request); return ApiResponse.success(null); } @ApiOperation("【TMS】司机任务到货提交") @PostMapping("/driverArrival") public ApiResponse driverArrival(@RequestBody TmsDriverStartAndArrivalRequest request ,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { tmsService.driverArrival(request); return ApiResponse.success(null); } }