From 6b9a7ae981171c1bb6ff6c7d6d0c0103ed1f9348 Mon Sep 17 00:00:00 2001 From: k94314517 <8417338+k94314517@user.noreply.gitee.com> Date: 星期五, 30 八月 2024 17:18:40 +0800 Subject: [PATCH] 代码初始化 --- server/system_service/src/main/java/com/doumee/core/utils/Constants.java | 25 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/PlatformWorkVO.java | 31 + server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/WaterByMonthResponse.java | 4 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/LineUpVO.java | 3 server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformDataListResponse.java | 2 server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/CarNumByStatusResponse.java | 11 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java | 10 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java | 606 ++++++++++++++++++++++---- server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformWaterGasService.java | 9 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java | 62 ++ server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformDataInfoResponse.java | 1 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java | 18 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java | 41 + server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformGroupService.java | 8 server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/GasByMonthRequest.java | 3 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformWaterGasServiceImpl.java | 95 ++++ server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/DriverHomeVO.java | 3 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformLogService.java | 5 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Platform.java | 7 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java | 24 server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformWaterGas.java | 4 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java | 33 + server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/PdaPlatformController.java | 52 + server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformBooksService.java | 6 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformServiceImpl.java | 37 + server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformGroup.java | 9 server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformOrderNumByDateRequest.java | 3 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java | 113 ++++ server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformLog.java | 2 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/ConfirmTaskDTO.java | 29 + server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformService.java | 6 server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/DriverPlatformController.java | 17 server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformNumByStatusResponse.java | 9 server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/PlatformDataDTO.java | 25 + server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformOrderNumByDateResponse.java | 5 server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/GasByMonthResponse.java | 4 server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/WaterByMonthRequest.java | 2 server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformLogServiceImpl.java | 32 + server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformGroupCloudController.java | 13 39 files changed, 1,182 insertions(+), 187 deletions(-) diff --git a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java index 69bfdaa..76f1b7f 100644 --- a/server/system_service/src/main/java/com/doumee/core/utils/Constants.java +++ b/server/system_service/src/main/java/com/doumee/core/utils/Constants.java @@ -746,17 +746,18 @@ * 0浠诲姟鍒涘缓 1鍙告満纭浠诲姟 2鍙告満绛惧埌 3鍏ュ洯绛夊緟 4鏈堝彴鍙彿 5寮�濮嬩綔涓� 6浣滀笟瀹屾垚 7鏈堝彴杞Щ 8浠诲姟鎸傝捣 9涓嬪彂鎺堟潈绂诲洯 10绂诲洯 */ public enum PlatformJobLogType { - CREATE(0, "浠诲姟鍒涘缓","浠诲姟鍒涘缓" ), - CONFIRM_TASK(1, "鍙告満纭浠诲姟","鍙告満纭浠诲姟" ), - SIGN(2, "鍙告満绛惧埌","鍙告満绛惧埌"), - IN_WAIT(3, "鍏ュ洯绛夊緟","鍏ュ洯绛夊緟" ), - CALLED(4, "鏈堝彴鍙彿","鏈堝彴鍙彿" ), - WORKING(5, "寮�濮嬩綔涓�","寮�濮嬩綔涓�" ), - DONE(6, "浣滀笟瀹屾垚 ","浣滀笟瀹屾垚 " ), - TRANSFERING(7, "鏈堝彴杞Щ","鏈堝彴杞Щ" ), - EXCEPTION(8, "浠诲姟鎸傝捣","浠诲姟鎸傝捣" ), + CREATE(0, "浠诲姟鍒涘缓","鍏ュ洯棰勭害鎴愬姛" ), + CONFIRM_TASK(1, "鍙告満纭浠诲姟","宸插畬鎴愭椂闂寸‘璁�" ), + SIGN(2, "鍙告満绛惧埌","鎺掗槦绛夊緟鍙彿"), + IN_WAIT(3, "鍏ュ洯绛夊緟","鍙彿鍏ュ洯绛夊緟" ), + CALLED(4, "鏈堝彴鍙彿","{data}鍙彿" ), + WORKING(5, "寮�濮嬩綔涓�","杩涘叆{data}寮�濮嬩綔涓�" ), + DONE(6, "浣滀笟瀹屾垚 ","鏈堝彴浣滀笟瀹屾垚锛岄┒绂绘湀鍙�" ), + TRANSFERING(7, "鏈堝彴杞Щ","{data}鍙戣捣鏈堝彴杞Щ" ), + EXCEPTION(8, "浠诲姟鎸傝捣","浣滀笟寮傚父琚寕璧�" ), AUTHED_LEAVE(9, "涓嬪彂鎺堟潈绂诲洯","涓嬪彂鎺堟潈绂诲洯" ), - LEAVED(10, "宸茬鍥� ","宸茬鍥� " ), + LEAVED(10, "宸茬鍥� ","杞﹁締浠巤data}绂诲満 " ), + OVER_NUMBER(11, "宸茶繃鍙�","瓒呮椂鏈埌鎸囧畾鏈堝彴鑷姩杩囧彿" ), ; // 鎴愬憳鍙橀噺 @@ -811,8 +812,8 @@ public enum PlatformJobStatus { WAIT_CONFIRM(0, "寰呯‘璁�","寰呯‘璁�" ), WART_SIGN_IN(1, "寰呯鍒�","寰呯鍒�" ), - WAIT_CALL(2, "宸茬鍒�","宸茬鍒�"), //绛夊緟鍙彿鍏ュ洯 - IN_WAIT(3, "鍏ュ洯绛夊緟","鍏ュ洯绛夊緟" ),//宸插叆鍥� 鏈彨鍙疯繘鍏ユ湀鍙� + WAIT_CALL(2, "宸茬鍒�","宸茬鍒�"), + IN_WAIT(3, "鍏ュ洯绛夊緟","鍏ュ洯绛夊緟" ), CALLED(4, "宸插彨鍙�","宸插彨鍙�" ), WORKING(5, "浣滀笟涓�","浣滀笟涓�" ), DONE(6, "浣滀笟瀹屾垚 ","浣滀笟瀹屾垚 " ), diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java index 3ac0fde..5acfa7d 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java @@ -9,8 +9,15 @@ import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.dao.business.model.Platform; +import com.doumee.dao.business.model.PlatformGroup; +import com.doumee.dao.business.model.PlatformJob; +import com.doumee.dao.web.reqeust.JobOperateDTO; +import com.doumee.dao.web.reqeust.PlatformDataDTO; +import com.doumee.dao.web.response.PlatformWorkVO; +import com.doumee.service.business.PlatformGroupService; import com.doumee.service.business.PlatformJobService; import com.doumee.service.business.PlatformService; +import com.doumee.service.business.PlatformShowParamService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -23,7 +30,7 @@ * @author 姹熻箘韫� * @since 2024/04/28 16:06 */ -@Api(tags = "鏈堝彴淇℃伅琛�") +@Api(tags = "銆愬悗绔�戞湀鍙颁俊鎭〃") @RestController @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/business/platform") public class PlatformCloudController extends BaseController { @@ -32,7 +39,13 @@ private PlatformService platformService; @Autowired + private PlatformGroupService platformGroupService; + + @Autowired private PlatformJobService platformJobService; + + @Autowired + private PlatformShowParamService platformShowParamService; @PreventRepeat @ApiOperation("鏂板缓") @@ -103,4 +116,102 @@ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ return ApiResponse.success(platformService.findById(id)); } + + + + + @ApiOperation("鑾峰彇鏈堝彴缁勪俊鎭�") + @PostMapping("/getPlatformGroupList") + public ApiResponse<List<PlatformGroup>> getPlatformGroupList (@RequestBody PlatformDataDTO platformDataDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + return ApiResponse.success(platformGroupService.getAllPlatformGroup(platformDataDTO,getLoginUser(token))); + } + + @ApiOperation("鑾峰彇鏈堝彴浠诲姟淇℃伅") + @GetMapping("/getPlatformWorkData") + public ApiResponse<PlatformWorkVO> getPlatformWorkData (@RequestParam Integer platformId, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + return ApiResponse.success(platformJobService.getPlatformWorkVOById(platformId)); + } + + @ApiOperation("鏇存柊鏈堝彴閰嶇疆淇℃伅") + @GetMapping("/updUserPlatformConfig") + public ApiResponse updUserPlatformConfig (@RequestParam List<Integer> ids, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + platformShowParamService.updUserConfig(ids,getLoginUser(token)); + return ApiResponse.success("鎿嶄綔鎴愬姛"); + } + + + @ApiOperation("杞﹁締鎺掗槦鎯呭喌") + @PostMapping("/platformLineUpPage") + public ApiResponse<PageData<PlatformJob>> platformLineUpPage (@RequestBody PageWrap<PlatformJob> pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + return ApiResponse.success(platformJobService.platformCallList(pageWrap)); + } + + + @ApiOperation("鍙彿鍒楄〃") + @PostMapping("/platformCallList") + public ApiResponse<PageData<PlatformJob>> platformCallList (@RequestBody PageWrap<PlatformJob> pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + return ApiResponse.success(platformJobService.platformCallList(pageWrap)); + } + + + @ApiOperation("鍙彿鍏ュ洯") + @PostMapping("/platformInPark") + public ApiResponse platformInPark (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + jobOperateDTO.setLoginUserInfo(getLoginUser(token)); + platformJobService.platformInPark(jobOperateDTO); + return ApiResponse.success("鎿嶄綔鎴愬姛"); + } + + @ApiOperation("鏈堝彴鍙彿") + @PostMapping("/platformCallNumber") + public ApiResponse platformCallNumber (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + jobOperateDTO.setLoginUserInfo(getLoginUser(token)); + platformJobService.platformCallNumber(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.platformMove(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.platformOverNumber(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.platformErr(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.beginWork(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.finishWork(jobOperateDTO); + return ApiResponse.success("鎿嶄綔鎴愬姛"); + } + + + } diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformGroupCloudController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformGroupCloudController.java index a614144..c4a02f9 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformGroupCloudController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformGroupCloudController.java @@ -9,8 +9,11 @@ import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.dao.business.model.PlatformGroup; +import com.doumee.dao.web.reqeust.PlatformDataDTO; import com.doumee.service.business.PlatformGroupService; import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; @@ -92,4 +95,14 @@ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ return ApiResponse.success(platformGroupService.findById(id)); } + + @ApiOperation("鑾峰彇鏈堝彴缁勪俊鎭�") + @PostMapping("/getPlatformGroupList") + @CloudRequiredPermission("business:platformgroup:query") + public ApiResponse<List<PlatformGroup>> getPlatformGroupList (@RequestBody PlatformDataDTO platformDataDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + return ApiResponse.success(platformGroupService.getAllPlatformGroup(platformDataDTO,getLoginUser(token))); + } + + + } diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java index a1af0d7..686dbf0 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/openapi/HkOpenApiController.java @@ -7,8 +7,13 @@ 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; @@ -26,54 +31,66 @@ @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(new WaterByMonthResponse()); + return ApiResponse.success(platformWaterGasService.waterDataByMonth(param)); } @PreventRepeat @ApiOperation("銆愮敤姘旈噺銆戞湰鏈堛�佷笂鏈堝拰鍘诲勾鍚屾湀") @PostMapping("/gas/dataByMonth") @LoginNoRequired public ApiResponse<GasByMonthResponse> gasDataByMonth(@RequestBody GasByMonthRequest param) { - return ApiResponse.success(new GasByMonthResponse()); + return ApiResponse.success(platformWaterGasService.gasDataByMonth(param)); } @PreventRepeat @ApiOperation("銆愭湀鍙般�戞寜澶╃粺璁¤繍鍗曡姹傚弬鏁�") @PostMapping("/platform/orderNumByDate") @LoginNoRequired public ApiResponse<PlatformOrderNumByDateResponse> orderNumByDate(@RequestBody PlatformOrderNumByDateRequest param) { - return ApiResponse.success(new PlatformOrderNumByDateResponse()); + return ApiResponse.success(platformJobService.orderNumByDate(param)); } @PreventRepeat - @ApiOperation("銆愭湀鍙般�戞湀鍙颁釜鐘舵�佹暟閲忕粺璁�") + @ApiOperation("銆愭湀鍙般�戞湀鍙扮姸鎬佹暟閲忕粺璁�") @PostMapping("/platform/totalNumByStatus") @LoginNoRequired public ApiResponse<PlatformNumByStatusResponse> totalNumByStatus(@RequestBody PlatformNumByStatusRequest param) { - return ApiResponse.success(new PlatformNumByStatusResponse()); + return ApiResponse.success(platformService.getPlatformNumByStatusResponse()); } @PreventRepeat @ApiOperation("銆愭湀鍙般�戞湀鍙板綋鍓嶄綔涓氫俊鎭垪琛�") @PostMapping("/platform/workingDataList") @LoginNoRequired public ApiResponse<List<PlatformDataListResponse>> platformWorkingDataList(@RequestBody PlatformDataListRequest param) { - return ApiResponse.success(new ArrayList<>()); + return ApiResponse.success(platformJobService.platformWorkingDataList(param)); } @PreventRepeat @ApiOperation("銆愭湀鍙般�戞湀鍙颁綔涓氳鎯呬俊鎭�") @PostMapping("/platform/workDataInfo") @LoginNoRequired public ApiResponse<PlatformDataInfoResponse> platformWorkingDataList(@RequestBody PlatformDataInfoRequest param) { - return ApiResponse.success(new PlatformDataInfoResponse()); + return ApiResponse.success(platformJobService.platformWorkingDataList(param)); } @PreventRepeat @ApiOperation("銆愭湀鍙般�戝綋鍓嶈溅杈嗙姸鎬佹暟閲忕粺璁�") @PostMapping("/platform/carStatusNum") @LoginNoRequired public ApiResponse<CarNumByStatusResponse> carStatusNum(@RequestBody CarNumByStatusRequest param) { - return ApiResponse.success(new CarNumByStatusResponse()); + return ApiResponse.success(platformJobService.carStatusNum(param)); } @PreventRepeat @@ -81,21 +98,21 @@ @PostMapping("/platform/carLogsList") @LoginNoRequired public ApiResponse<List<CarLogsListResponse>> carLogsList(@RequestBody CarLogsListRequest param) { - return ApiResponse.success(new ArrayList<>()); + return ApiResponse.success(platformLogService.getCarLogsListResponse(param)); } @PreventRepeat @ApiOperation("銆愭湀鍙般�戞帓闃熼槦鍒楀垪琛ㄩ泦鍚�") @PostMapping("/platform/queueList") @LoginNoRequired - public ApiResponse< PlatformQueuingListResponse> carLogsList(@RequestBody PlatformQueuingListRequest param) { - return ApiResponse.success(new PlatformQueuingListResponse()); + public ApiResponse<PlatformQueuingListResponse> queueList(@RequestBody PlatformQueuingListRequest param) { + return ApiResponse.success(platformJobService.queueList(param)); } @PreventRepeat @ApiOperation("銆愭湀鍙般�戦璀︿簨浠堕泦鍚堝垪琛�") @PostMapping("/platform/warningEventList") @LoginNoRequired - public ApiResponse<List<CarLogsListResponse>> carLogsList(@RequestBody PlatformWarnEventListRequest param) { + public ApiResponse<List<PlatformWarnEventListResponse>> warningEventList(@RequestBody PlatformWarnEventListRequest param) { return ApiResponse.success(new ArrayList<>()); } } diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/DriverPlatformController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/DriverPlatformController.java index 688be9f..b87d935 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/DriverPlatformController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/DriverPlatformController.java @@ -87,6 +87,16 @@ return ApiResponse.success(platformBooksService.apply(platformBooksApplyDTO)); } + + @ApiOperation("鐗╂祦杞﹂绾︿慨鏀�") + @PostMapping("/applyEdit") + public ApiResponse<Integer> applyEdit (@RequestBody PlatformBooksApplyDTO platformBooksApplyDTO , @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + LoginUserInfo loginUserInfo = getLoginUser(token); + platformBooksApplyDTO.setUserId(loginUserInfo.getMemberId()); + platformBooksApplyDTO.setDriverId(loginUserInfo.getMemberId()); + return ApiResponse.success(platformBooksService.edit(platformBooksApplyDTO)); + } + @ApiOperation("鐗╂祦杞﹂绾﹁褰�") @PostMapping("/page") public ApiResponse<PageData<PlatformBooks>> findPage (@RequestBody PageWrap<PlatformBooks> pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { @@ -111,6 +121,13 @@ } /******************************************************鍙告満浠诲姟鎺ュ彛************************************************************************/ + @ApiOperation("浠诲姟纭") + @PostMapping("/confirmTask") + public ApiResponse confirmTask (@RequestBody ConfirmTaskDTO confirmTaskDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + confirmTaskDTO.setLoginUserInfo(getLoginUser(token)); + platformJobService.confirmTask(confirmTaskDTO); + return ApiResponse.success("鎿嶄綔鎴愬姛"); + } @ApiOperation("浠诲姟绛惧埌") @PostMapping("/signIn") diff --git a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/PdaPlatformController.java b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/PdaPlatformController.java index bee4a37..8be5af1 100644 --- a/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/PdaPlatformController.java +++ b/server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/PdaPlatformController.java @@ -12,6 +12,7 @@ import com.doumee.dao.web.reqeust.*; import com.doumee.dao.web.response.DriverHomeVO; import com.doumee.dao.web.response.LineUpVO; +import com.doumee.dao.web.response.PlatformWorkVO; import com.doumee.service.business.*; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; @@ -55,17 +56,20 @@ private PlatformService platformService; @ApiOperation("鑾峰彇鏈堝彴缁勪俊鎭�") - @ApiImplicitParams({ - @ApiImplicitParam(name = "queryType", dataType = "Integer", value = "0=鍏ㄩ儴鏈堝彴锛�1=鍚敤鏈堝彴 2=閰嶇疆鏄剧ず鏈堝彴", required = false) - }) - @GetMapping("/getPlatformGroupList") - public ApiResponse<List<PlatformGroup>> getPlatformGroupList (@RequestParam Integer queryType, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ - return ApiResponse.success(platformGroupService.getAllPlatformGroup(queryType,getLoginUser(token))); + @PostMapping("/getPlatformGroupList") + public ApiResponse<List<PlatformGroup>> getPlatformGroupList (@RequestBody PlatformDataDTO platformDataDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + return ApiResponse.success(platformGroupService.getAllPlatformGroup(platformDataDTO,getLoginUser(token))); + } + + @ApiOperation("鑾峰彇鏈堝彴浠诲姟淇℃伅") + @GetMapping("/getPlatformWorkData") + public ApiResponse<PlatformWorkVO> getPlatformWorkData (@RequestParam Integer platformId, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + return ApiResponse.success(platformJobService.getPlatformWorkVOById(platformId)); } @ApiOperation("鏇存柊鏈堝彴閰嶇疆淇℃伅") - @PostMapping("/updUserPlatformConfig") - public ApiResponse updUserPlatformConfig (@RequestBody List<Integer> ids, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + @GetMapping("/updUserPlatformConfig") + public ApiResponse updUserPlatformConfig (@RequestParam List<Integer> ids, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ platformShowParamService.updUserConfig(ids,getLoginUser(token)); return ApiResponse.success("鎿嶄綔鎴愬姛"); } @@ -73,22 +77,38 @@ @ApiOperation("淇敼绂佸惎鐢ㄧ姸鎬�") @PostMapping("/updPlatformStatus") public ApiResponse updPlatformStatus (@RequestBody Platform platform, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ + platform.setLoginUserInfo(getLoginUser(token)); platformService.updateStatusById(platform); return ApiResponse.success("鎿嶄綔鎴愬姛"); } @ApiOperation("杞﹁締鎺掗槦鎯呭喌") @PostMapping("/platformLineUpPage") - public ApiResponse<PageData<PlatformJob>> platformLineUpPage (@RequestBody PageWrap<PlatformJob> pageWrap) { - return ApiResponse.success(platformJobService.findPage(pageWrap)); + public ApiResponse<PageData<PlatformJob>> platformLineUpPage (@RequestBody PageWrap<PlatformJob> pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + return ApiResponse.success(platformJobService.platformCallList(pageWrap)); } + + @ApiOperation("鍙彿鍒楄〃") + @PostMapping("/platformCallList") + public ApiResponse<PageData<PlatformJob>> platformCallList (@RequestBody PageWrap<PlatformJob> pageWrap, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + return ApiResponse.success(platformJobService.platformCallList(pageWrap)); + } + + + @ApiOperation("鍙彿鍏ュ洯") + @PostMapping("/platformInPark") + public ApiResponse platformInPark (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { + jobOperateDTO.setLoginUserInfo(getLoginUser(token)); + platformJobService.platformInPark(jobOperateDTO); + return ApiResponse.success("鎿嶄綔鎴愬姛"); + } @ApiOperation("鏈堝彴鍙彿") @PostMapping("/platformCallNumber") public ApiResponse platformCallNumber (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); - platformJobService.platformInPark(jobOperateDTO); + platformJobService.platformCallNumber(jobOperateDTO); return ApiResponse.success("鎿嶄綔鎴愬姛"); } @@ -97,7 +117,7 @@ @PostMapping("/platformMove") public ApiResponse platformMove (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); - platformJobService.platformInPark(jobOperateDTO); + platformJobService.platformMove(jobOperateDTO); return ApiResponse.success("鎿嶄綔鎴愬姛"); } @@ -105,7 +125,7 @@ @PostMapping("/platformOverNumber") public ApiResponse platformOverNumber (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); - platformJobService.platformInPark(jobOperateDTO); + platformJobService.platformOverNumber(jobOperateDTO); return ApiResponse.success("鎿嶄綔鎴愬姛"); } @@ -113,7 +133,7 @@ @PostMapping("/platformErr") public ApiResponse platformErr (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); - platformJobService.platformInPark(jobOperateDTO); + platformJobService.platformErr(jobOperateDTO); return ApiResponse.success("鎿嶄綔鎴愬姛"); } @@ -121,7 +141,7 @@ @PostMapping("/beginWork") public ApiResponse beginWork (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); - platformJobService.platformInPark(jobOperateDTO); + platformJobService.beginWork(jobOperateDTO); return ApiResponse.success("鎿嶄綔鎴愬姛"); } @@ -130,7 +150,7 @@ @PostMapping("/finishWork") public ApiResponse finishWork (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); - platformJobService.platformInPark(jobOperateDTO); + platformJobService.finishWork(jobOperateDTO); return ApiResponse.success("鎿嶄綔鎴愬姛"); } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Platform.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Platform.java index 7f6c4b6..fafc0aa 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Platform.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Platform.java @@ -4,6 +4,7 @@ import com.doumee.core.annotation.excel.ExcelColumn; import com.doumee.core.model.LoginUserInfo; import com.doumee.core.model.LoginUserModel; +import com.doumee.dao.web.response.PlatformWorkVO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.baomidou.mybatisplus.annotation.IdType; @@ -183,4 +184,10 @@ @ApiModelProperty(value = "浣滀笟鐘舵�侊細0=绌洪棽锛�1=浣滀笟涓�") @TableField(exist = false) private Integer workStatus; + + + + @ApiModelProperty(value = "鏈堝彴浣滀笟鏁版嵁") + @TableField(exist = false) + private PlatformWorkVO platformWorkVO; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformGroup.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformGroup.java index 364d303..a82275a 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformGroup.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformGroup.java @@ -81,4 +81,13 @@ @ApiModelProperty(value = "鏈堝彴缁勪笅鐨勬湀鍙�") @TableField(exist = false) private List<Platform> platformList; + + + @ApiModelProperty(value = "浣滀笟涓帓闃熻溅杈�", example = "1") + @TableField(exist = false) + private List<PlatformJob> workJobList; + + @ApiModelProperty(value = "宸茬鍒版帓闃熻溅杈�", example = "1") + @TableField(exist = false) + private List<PlatformJob> signJobList; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java index f3e24c0..cce09ae 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java @@ -274,13 +274,21 @@ @TableField(exist = false) private String finishTimeStr; - @ApiModelProperty(value = "鍏宠仈鏈堝彴缁勭紪鐮侊紙鍏宠仈platform_group琛級", example = "1") - @TableField(exist = false) - private Integer groupId; - @ApiModelProperty(value = "浣滀笟鏈堝彴鍚嶇О") @TableField(exist = false) private String platformName ; + + @ApiModelProperty(value = "wms涓氬姟涓婚敭") + @TableField(exist = false) + private Integer wmsId ; + + @ApiModelProperty(value = "鏈堝彴缁勭被鍨嬶細0瀹夋嘲鐗╂祦瑁呰揣 1瀹夋嘲鐗╂祦鍗歌揣 2甯傚叕鍙稿嵏璐�") + @TableField(exist = false) + private Integer groupType ; + + @ApiModelProperty(value = "鎵胯繍鍟�") + @TableField(exist = false) + private String carrierName ; @ApiModelProperty(value = "璺濈绛惧埌鐐硅窛绂�") @TableField(exist = false) @@ -302,6 +310,14 @@ @TableField(exist = false) private PlatformWmsJob platformWmsJob; + @ApiModelProperty(value = "鏀惰揣鍦帮紙鐩殑鍦帮級") + @TableField(exist = false) + private String repertotyAddress; + + @ApiModelProperty(value = "鍙彿绫诲瀷锛�1=鍙彿鍏ュ洯 锛� 2=鏈堝彴鍙彿 锛� 3=鎺掗槦鎯呭喌", example = "1") + @TableField(exist = false) + private Integer callType; + public void dealTime(){ if(Constants.equalsInteger(this.getStatus(),Constants.PlatformJobStatus.WAIT_CONFIRM.getKey()) || Constants.equalsInteger(this.getStatus(),Constants.PlatformJobStatus.WART_SIGN_IN.getKey()) diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformLog.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformLog.java index dc52393..5ed449e 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformLog.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformLog.java @@ -91,7 +91,7 @@ @ExcelColumn(name="鍙傛暟3") private String param3; - @ApiModelProperty(value = "鍙傛暟4") + @ApiModelProperty(value = "鍙傛暟4 杞︾墝鐓�") @ExcelColumn(name="鍙傛暟4") private String param4; diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformWaterGas.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformWaterGas.java index a801e0d..ec20891 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformWaterGas.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformWaterGas.java @@ -60,8 +60,8 @@ @ExcelColumn(name="鎺掑簭鐮�") private Integer sortnum; - @ApiModelProperty(value = "绫诲瀷 0鐢ㄧ數 1鐢ㄧ數 2娌硅��", example = "1") - @ExcelColumn(name="绫诲瀷 0鐢ㄧ數 1鐢ㄧ數 2娌硅��") + @ApiModelProperty(value = "绫诲瀷 0鐢ㄦ按 1鐢ㄦ皵 2鐢ㄦ补", example = "1") + @ExcelColumn(name="绫诲瀷 0鐢ㄦ按 1鐢ㄦ皵 2鐢ㄦ补") private Integer type; @ApiModelProperty(value = "鏁伴噺 (鐢ㄧ數椤匡紝鐢ㄧ數搴︼紱 娌硅�桳锛�", example = "1") diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/GasByMonthRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/GasByMonthRequest.java index 23c3552..0131957 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/GasByMonthRequest.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/GasByMonthRequest.java @@ -1,11 +1,12 @@ package com.doumee.dao.openapi.request; -import com.doumee.core.utils.Date; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.Date; + /** * Created by IntelliJ IDEA. * diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformOrderNumByDateRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformOrderNumByDateRequest.java index ee8d53b..8277dd6 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformOrderNumByDateRequest.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/PlatformOrderNumByDateRequest.java @@ -1,11 +1,12 @@ package com.doumee.dao.openapi.request; -import com.doumee.core.utils.Date; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.util.Date; + /** * Created by IntelliJ IDEA. * diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/WaterByMonthRequest.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/WaterByMonthRequest.java index 556e6ea..816c6db 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/WaterByMonthRequest.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/request/WaterByMonthRequest.java @@ -1,6 +1,5 @@ package com.doumee.dao.openapi.request; -import com.doumee.core.utils.Date; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.Api; import io.swagger.annotations.ApiModel; @@ -9,6 +8,7 @@ import org.springframework.format.annotation.DateTimeFormat; import javax.validation.constraints.NotBlank; +import java.util.Date; /** * Created by IntelliJ IDEA. diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/CarNumByStatusResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/CarNumByStatusResponse.java index 3c36936..8b0a5d3 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/CarNumByStatusResponse.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/CarNumByStatusResponse.java @@ -13,13 +13,12 @@ @Data @ApiModel("銆愭湀鍙般�戝綋鍓嶈溅杈嗙姸鎬佺粺璁℃暟閲忚繑鍥炲弬鏁�") public class CarNumByStatusResponse { - @ApiModelProperty(value = "鎺掗槦涓暟鎺�", example = "1") - private int queuingNum; - + @ApiModelProperty(value = "鎺掗槦涓暟閲�", example = "1") + private Long queuingNum; @ApiModelProperty(value = "宸茶繘鍦烘暟閲�", example = "1") - private int inNum; + private Long inNum; @ApiModelProperty(value = "浣滀笟涓暟閲�", example = "1") - private int workingNum; + private Long workingNum; @ApiModelProperty(value = "宸茬鍦烘暟閲�", example = "1") - private int doneNum; + private Long doneNum; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/GasByMonthResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/GasByMonthResponse.java index b0da793..9706276 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/GasByMonthResponse.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/GasByMonthResponse.java @@ -20,9 +20,9 @@ private BigDecimal currentMonth; @ApiModelProperty(value = "涓婁釜鏈堢敤姘旈噺锛堢珛鏂圭背锛�", example = "1") - private String lastMonth; + private BigDecimal lastMonth; @ApiModelProperty(value = "鍘诲勾鍚屾湀鐢ㄦ皵閲忥紙绔嬫柟绫筹級", example = "1") - private String lastYearMonth; + private BigDecimal lastYearMonth; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformDataInfoResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformDataInfoResponse.java index 1e8bef3..cf2adf0 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformDataInfoResponse.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformDataInfoResponse.java @@ -21,6 +21,7 @@ private String hkId; @ApiModelProperty(value = "鏈堝彴鍚嶇О") private String name; + @ApiModelProperty(value = "鎵胯繍鍗曞彿") private String orderCode; @ApiModelProperty(value = "浣滀笟杞﹁締") diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformDataListResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformDataListResponse.java index 0ac0001..4d6ee20 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformDataListResponse.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformDataListResponse.java @@ -22,7 +22,7 @@ @ApiModelProperty(value = "鏈堝彴鍚嶇О") private String name; @ApiModelProperty(value = "褰撳墠浣滀笟鏃堕暱", example = "1") - private int workTime; + private Long workTime; @ApiModelProperty(value = "浣滀笟杞﹁締") private String carCode; @ApiModelProperty(value = "浣滀笟绫诲瀷锛�0=鍏ュ簱 1鍑哄簱", example = "1") diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformNumByStatusResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformNumByStatusResponse.java index 5112567..f2f3b8e 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformNumByStatusResponse.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformNumByStatusResponse.java @@ -13,11 +13,14 @@ @Data @ApiModel("銆愭湀鍙般�戞寜鐘舵�佺粺璁℃湀鍙版暟閲�") public class PlatformNumByStatusResponse { + @ApiModelProperty(value = "浣跨敤涓暟閲�", example = "1") - private int usingNum; + private int usingNum = 0; @ApiModelProperty(value = "绌洪棽鏁伴噺", example = "1") - private int idleNum; + private int idleNum = 0; + @ApiModelProperty(value = "鍋滅敤鏁伴噺", example = "1") - private int forbiddenNum; + private int forbiddenNum = 0; + } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformOrderNumByDateResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformOrderNumByDateResponse.java index fa34c24..6286d6e 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformOrderNumByDateResponse.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformOrderNumByDateResponse.java @@ -17,9 +17,10 @@ @Data @ApiModel("銆愭湀鍙般�戞寜澶╃粺璁¤繍鍗曡繑鍥炲弬鏁�") public class PlatformOrderNumByDateResponse { + @ApiModelProperty(value = "杩愬崟瀹屾垚閲�", example = "1") - private int doneNum; + private Long doneNum; @ApiModelProperty(value = "杩愬崟鎬婚噺", example = "1") - private int totalNum; + private Long totalNum; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/WaterByMonthResponse.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/WaterByMonthResponse.java index 9793420..1fa7ed4 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/WaterByMonthResponse.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/WaterByMonthResponse.java @@ -21,9 +21,9 @@ private BigDecimal currentMonth; @ApiModelProperty(value = "涓婁釜鏈堢敤姘撮噺锛堝惃锛�", example = "1") - private String lastMonth; + private BigDecimal lastMonth; @ApiModelProperty(value = "鍘诲勾鍚屾湀鐢ㄦ按閲忥紙鍚級", example = "1") - private String lastYearMonth; + private BigDecimal lastYearMonth; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/ConfirmTaskDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/ConfirmTaskDTO.java new file mode 100644 index 0000000..e68fbf6 --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/ConfirmTaskDTO.java @@ -0,0 +1,29 @@ +package com.doumee.dao.web.reqeust; + +import com.doumee.core.model.LoginUserInfo; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * Created by IntelliJ IDEA. + * + * @Author : Rk + * @create 2024/8/15 10:49 + */ +@Data +public class ConfirmTaskDTO { + + @ApiModelProperty(value = "璁板綍涓婚敭") + private Integer id; + + @ApiModelProperty(value = "鍒板満鏃ユ湡") + private Date arriveDate; + + @ApiModelProperty(value = "鍚庤溅鐗岀収") + private String carCodeBack; + + @ApiModelProperty(value = "鐢ㄦ埛", hidden = true) + private LoginUserInfo loginUserInfo; +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/PlatformDataDTO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/PlatformDataDTO.java new file mode 100644 index 0000000..ffd05e0 --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/PlatformDataDTO.java @@ -0,0 +1,25 @@ +package com.doumee.dao.web.reqeust; + +import com.doumee.core.model.LoginUserInfo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * Created by IntelliJ IDEA. + * + * @Author : Rk + * @create 2023/12/7 11:19 + */ +@Data +@Api(tags = "鏈堝彴淇℃伅鏌ヨ涓氬姟" ) +public class PlatformDataDTO { + + @ApiModelProperty(value = "鏌ヨ鏈堝彴绫诲瀷锛�0=鍏ㄩ儴鏈堝彴锛�1=閰嶇疆鏄剧ず鏈堝彴") + private Integer queryType; + + @ApiModelProperty(value = "鏄惁鏌ヨ鏈堝彴浠诲姟鏁版嵁锛�0=鍚�;1=鏄� 鍚庡彴浣跨敤锛屽墠绔叆0") + private Integer queryData; + + +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/DriverHomeVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/DriverHomeVO.java index 430b316..5b3e933 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/DriverHomeVO.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/DriverHomeVO.java @@ -7,6 +7,7 @@ import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import java.math.BigDecimal; import java.util.List; @Data @@ -25,5 +26,7 @@ @ApiModelProperty(value = "鍥尯瀵艰鍥�") private String reservationMap; + @ApiModelProperty(value = "绛惧埌闄愬埗璺濈") + private BigDecimal signDistance; } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/LineUpVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/LineUpVO.java index 3c7b6c7..c59b0ea 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/LineUpVO.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/LineUpVO.java @@ -2,6 +2,7 @@ import com.doumee.core.model.LoginUserInfo; import com.doumee.dao.business.model.Platform; +import com.doumee.dao.business.model.PlatformGroup; import com.doumee.dao.business.model.PlatformJob; import io.swagger.annotations.Api; import io.swagger.annotations.ApiModelProperty; @@ -20,7 +21,7 @@ public class LineUpVO { @ApiModelProperty(value = "鏈堝彴缁勪俊鎭�") - private List<Platform> platformList; + private List<PlatformGroup> platformGroupList; @ApiModelProperty(value = "鐢ㄦ埛", hidden = true) private LoginUserInfo loginUserInfo; diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/PlatformWorkVO.java b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/PlatformWorkVO.java new file mode 100644 index 0000000..7fcd0c9 --- /dev/null +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/PlatformWorkVO.java @@ -0,0 +1,31 @@ +package com.doumee.dao.web.response; + +import com.doumee.dao.business.model.PlatformJob; +import com.doumee.dao.system.model.Multifile; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.List; + +@Data +@ApiModel("鏈堝彴浠诲姟鏁版嵁") +public class PlatformWorkVO { + + @ApiModelProperty(value = "浠诲姟鍒楄〃") + private List<PlatformJob> platformJobList; + + @ApiModelProperty(value = "浣滀笟鏁伴噺") + private Integer workNum = 0; + + @ApiModelProperty(value = "宸插彨鍙锋暟閲�") + private Integer callNum = 0; + + @ApiModelProperty(value = "绛夊緟鏁伴噺") + private Integer waitNum = 0; + + @ApiModelProperty(value = "寮傚父鏁伴噺") + private Integer exceptionNum = 0; + +} diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformBooksService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformBooksService.java index 8931030..0a8dd08 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformBooksService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformBooksService.java @@ -130,4 +130,10 @@ */ void revoke(RevokeDTO revokeDTO, LoginUserInfo loginUserInfo); + /** + * 淇敼棰勭害鐢宠 + * @param platformBooksApplyDTO + * @return + */ + Integer edit(PlatformBooksApplyDTO platformBooksApplyDTO); } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformGroupService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformGroupService.java index 5f98d89..1b843fc 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformGroupService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformGroupService.java @@ -4,6 +4,9 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.PlatformGroup; +import com.doumee.dao.web.reqeust.PlatformDataDTO; +import com.doumee.dao.web.response.PlatformWorkVO; + import java.util.List; /** @@ -100,12 +103,11 @@ /** * 鑾峰彇鏈堝彴缁勪俊鎭� - * @param queryType + * @param platformDataDTO * @param loginUserInfo * @return */ - List<PlatformGroup> getAllPlatformGroup(Integer queryType, LoginUserInfo loginUserInfo); - + List<PlatformGroup> getAllPlatformGroup(PlatformDataDTO platformDataDTO, LoginUserInfo loginUserInfo); diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java index a842e2d..483569a 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java @@ -5,12 +5,12 @@ import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.Platform; import com.doumee.dao.business.model.PlatformJob; -import com.doumee.dao.web.reqeust.JobDetailDTO; -import com.doumee.dao.web.reqeust.JobOperateDTO; -import com.doumee.dao.web.reqeust.LineUpDetailDTO; -import com.doumee.dao.web.reqeust.SignInDTO; +import com.doumee.dao.openapi.request.*; +import com.doumee.dao.openapi.response.*; +import com.doumee.dao.web.reqeust.*; import com.doumee.dao.web.response.DriverHomeVO; import com.doumee.dao.web.response.LineUpVO; +import com.doumee.dao.web.response.PlatformWorkVO; import java.util.List; @@ -97,6 +97,12 @@ PageData<PlatformJob> findPage(PageWrap<PlatformJob> pageWrap); /** + * 鍙彿鍒楄〃鏁版嵁 + * @param pageWrap + * @return + */ + PageData<PlatformJob> platformCallList(PageWrap<PlatformJob> pageWrap); + /** * 鏉′欢缁熻 * * @param platformJob 瀹炰綋瀵硅薄 @@ -182,4 +188,23 @@ */ List<Platform> getPlatformList(Integer groupId, LoginUserInfo loginUserInfo); + void confirmTask(ConfirmTaskDTO confirmTaskDTO); + + /** + * 鑾峰彇鏈堝彴浠诲姟鏁版嵁 + * @param platformId + * @return + */ + PlatformWorkVO getPlatformWorkVOById(Integer platformId); + + + PlatformOrderNumByDateResponse orderNumByDate(PlatformOrderNumByDateRequest param); + + List<PlatformDataListResponse> platformWorkingDataList(PlatformDataListRequest param); + + PlatformDataInfoResponse platformWorkingDataList(PlatformDataInfoRequest param); + + CarNumByStatusResponse carStatusNum(CarNumByStatusRequest param); + + PlatformQueuingListResponse queueList(PlatformQueuingListRequest param); } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformLogService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformLogService.java index 6ba2888..e892949 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformLogService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformLogService.java @@ -3,6 +3,9 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.PlatformLog; +import com.doumee.dao.openapi.request.CarLogsListRequest; +import com.doumee.dao.openapi.response.CarLogsListResponse; + import java.util.List; /** @@ -94,4 +97,6 @@ * @return long */ long count(PlatformLog platformLog); + + List<CarLogsListResponse> getCarLogsListResponse(CarLogsListRequest carLogsListRequest); } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformService.java index 01093fb..beaa70c 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformService.java @@ -3,6 +3,8 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.Platform; +import com.doumee.dao.openapi.response.PlatformNumByStatusResponse; + import java.util.List; /** @@ -95,4 +97,8 @@ * @return long */ long count(Platform platform); + + + PlatformNumByStatusResponse getPlatformNumByStatusResponse(); + } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformWaterGasService.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformWaterGasService.java index 320008c..100767b 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformWaterGasService.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformWaterGasService.java @@ -5,6 +5,11 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.PlatformWaterGas; +import com.doumee.dao.openapi.request.GasByMonthRequest; +import com.doumee.dao.openapi.request.WaterByMonthRequest; +import com.doumee.dao.openapi.response.GasByMonthResponse; +import com.doumee.dao.openapi.response.WaterByMonthResponse; + import java.util.List; /** @@ -98,4 +103,8 @@ * @return long */ long count(PlatformWaterGas platformWaterGas); + + WaterByMonthResponse waterDataByMonth(WaterByMonthRequest param); + + GasByMonthResponse gasDataByMonth(GasByMonthRequest param); } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java index b698dd5..9cef87e 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java @@ -96,6 +96,8 @@ private PlatformJobMapper platformJobMapper; @Autowired private PlatformLogMapper platformLogMapper; + @Autowired + private PlatformReasonMapper platformReasonMapper; @@ -1410,9 +1412,13 @@ platformBooks.setStatus(approveDTO.getStatus()); platformBooks.setEditDate(new Date()); platformBooks.setEditor(approveDTO.getLoginUserInfo().getMemberId()); + PlatformReason platformReason = platformReasonMapper.selectById(platformBooks.getReasonId()); //鐢熸垚浠诲姟璁板綍 PlatformJob platformJob = platformBooks.toPlatformJob(); + platformJob.setPlatformGroupId(platformReason.getGroupId().intValue()); + platformJob.setType(Constants.platformJobType.sgscxh); + platformJob.setStatus(Constants.PlatformJobStatus.WART_SIGN_IN.getKey()); platformJobMapper.insert(platformJob); platformBooks.setJobId(platformJob.getId()); platformBooksMapper.updateById(platformBooks); @@ -1421,7 +1427,9 @@ platformLog.setCreateDate(new Date()); platformLog.setJobId(platformJob.getId()); platformLog.setIsdeleted(Constants.ZERO); - platformLog.setObjType(Constants.PlatformJobStatus.WART_SIGN_IN.getKey()); + platformLog.setParam4(platformJob.getCarCodeFront()); + platformLog.setContent(Constants.PlatformJobLogType.CREATE.getInfo()); + platformLog.setObjType(Constants.PlatformJobLogType.CREATE.getKey()); platformLog.setObjId(platformJob.getId().toString()); platformLog.setAfterContent(JSONObject.toJSONString(platformJob)); platformLogMapper.insert(platformLog); diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java index 68318b2..e47c027 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformBooksServiceImpl.java @@ -18,6 +18,7 @@ import com.doumee.dao.business.join.ApproveJoinMapper; import com.doumee.dao.business.model.*; import com.doumee.dao.business.vo.ApproveDataVO; +import com.doumee.dao.web.reqeust.ConfirmTaskDTO; import com.doumee.dao.web.reqeust.PlatformBooksApplyDTO; import com.doumee.dao.web.reqeust.PlatformBooksCheckNumDTO; import com.doumee.dao.web.reqeust.RevokeDTO; @@ -158,14 +159,8 @@ .eq(pageWrap.getModel().getPlateNum() != null, PlatformBooks::getPlateNum, pageWrap.getModel().getPlateNum()) .eq(pageWrap.getModel().getDriverPhone() != null, PlatformBooks::getDriverPhone, pageWrap.getModel().getDriverPhone()) .ge(pageWrap.getModel().getQueryDate() != null, PlatformBooks::getCreateDate, pageWrap.getModel().getQueryDate()) + .orderByDesc(PlatformBooks::getCreateDate) ; - for(PageWrap.SortData sortData: pageWrap.getSorts()) { - if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { - queryWrapper.orderByDesc(sortData.getProperty()); - } else { - queryWrapper.orderByAsc(sortData.getProperty()); - } - } return PageData.from(platformBooksMapper.selectPage(page, queryWrapper)); } @@ -250,7 +245,7 @@ -// @Override + @Override @Transactional(rollbackFor = {BusinessException.class,Exception.class}) public Integer edit(PlatformBooksApplyDTO platformBooksApplyDTO){ if(Objects.isNull(platformBooksApplyDTO) @@ -265,8 +260,6 @@ || StringUtils.isBlank(platformBooksApplyDTO.getDriverPhone()) || StringUtils.isBlank(platformBooksApplyDTO.getDriverName()) || StringUtils.isBlank(platformBooksApplyDTO.getTransportImg()) - || Objects.isNull(platformBooksApplyDTO.getReasonId()) - || StringUtils.isBlank(platformBooksApplyDTO.getInReason()) ){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } @@ -279,7 +272,9 @@ } BeanUtils.copyProperties(platformBooksApplyDTO,platformBooks); platformBooks.setEditDate(new Date()); - platformBooksMapper.insert(platformBooks); + platformBooks.setReasonId(null); + platformBooks.setInReason(null); + platformBooksMapper.updateById(platformBooks); return platformBooks.getId(); } @@ -358,7 +353,6 @@ .eq(Approve::getObjId,revokeDTO.getId()) ); } - } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java index 05ad10f..578a97b 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java @@ -16,6 +16,8 @@ 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.PlatformDataDTO; +import com.doumee.dao.web.response.PlatformWorkVO; import com.doumee.service.business.PlatformGroupService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -202,10 +204,16 @@ @Override - public List<PlatformGroup> getAllPlatformGroup(Integer queryType,LoginUserInfo loginUserInfo) { + public List<PlatformGroup> getAllPlatformGroup(PlatformDataDTO platformDataDTO, LoginUserInfo loginUserInfo) { + if(Objects.isNull(platformDataDTO) + || Objects.isNull(platformDataDTO.getQueryType()) + || Objects.isNull(platformDataDTO.getQueryData())){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } List<PlatformGroup> platformGroups = platformGroupMapper.selectList( new QueryWrapper<PlatformGroup>() - .lambda().eq(PlatformGroup::getIsdeleted, Constants.ZERO) + .lambda() + .eq(PlatformGroup::getIsdeleted, Constants.ZERO) .orderByAsc(PlatformGroup::getSortnum) ); //鏌ヨ鏈堝彴缁勪笅鎵�鏈夋湀鍙� @@ -214,10 +222,12 @@ .selectAll(Platform.class) .select(" ( select count(1) from platform_job pj where t.id = pj.PLATFORM_ID and pj.STATUS = "+Constants.PlatformJobStatus.WORKING.getKey()+" ) as workStatus ") .eq(Platform::getIsdeleted, Constants.ZERO) - .eq(Objects.nonNull(queryType)&&!Constants.equalsInteger(queryType,Constants.ZERO),Platform::getStatus,Constants.ZERO) + .eq(Objects.nonNull(platformDataDTO.getQueryType())&&!Constants.equalsInteger(platformDataDTO.getQueryType(),Constants.ZERO), + Platform::getStatus,Constants.ZERO) ); //澶勭悊鎴戠殑鏈堝彴淇℃伅 鏄惁閰嶇疆闅愯棌 - if(Constants.equalsInteger(queryType,Constants.TWO)){ + if(Constants.equalsInteger(platformDataDTO.getQueryType(),Constants.ONE)){ + //鏌ヨ褰撳墠鐧诲綍浜洪厤缃殑鍙煡鐪嬫湀鍙� List<PlatformShowParam> platformShowParamList = platformShowParamMapper.selectList(new QueryWrapper<PlatformShowParam>() .lambda() .eq(PlatformShowParam::getIsdeleted, Constants.ZERO) @@ -240,6 +250,26 @@ } } } + if(Constants.equalsInteger(platformDataDTO.getQueryData(),Constants.ONE)){ + //鏌ヨ浠婂ぉ鎵�鏈夌殑浠诲姟鏁版嵁 + List<PlatformJob> platformJobList = platformJobJoinMapper.selectList(new QueryWrapper<PlatformJob>().lambda() + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .in(PlatformJob::getStatus, + Constants.PlatformJobStatus.WAIT_CALL.getKey(), + Constants.PlatformJobStatus.IN_WAIT.getKey(), + Constants.PlatformJobStatus.CALLED.getKey(), + Constants.PlatformJobStatus.WORKING.getKey(), + Constants.PlatformJobStatus.EXCEPTION.getKey(), + Constants.PlatformJobStatus.OVER_NUMBER.getKey() + ) +// .like(PlatformJob::getArriveDate,DateUtil.getCurrDate()) + .orderByDesc(PlatformJob::getCreateDate) + ); + for (Platform platform:allPlatformList) { + PlatformWorkVO platformWorkVO = PlatformGroupServiceImpl.getPlatformWorkVO(platform.getId(),platformJobList); + platform.setPlatformWorkVO(platformWorkVO); + } + } for (PlatformGroup platformGroup:platformGroups) { platformGroup.setPlatformList(allPlatformList.stream().filter(m->Constants.equalsInteger(m.getGroupId(),platformGroup.getId())).collect(Collectors.toList())); } @@ -247,7 +277,31 @@ } + public static PlatformWorkVO getPlatformWorkVO(Integer platformId,List<PlatformJob> platformJobList){ + PlatformWorkVO platformWorkVO = new PlatformWorkVO(); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformJobList)){ + //鑾峰彇鏈堝彴涓嬬殑鎵�鏈変綔涓氭暟鎹� + List<PlatformJob> platformJobs = platformJobList.stream().filter(i->Constants.equalsInteger(i.getPlatformId(),platformId)).collect(Collectors.toList()); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformJobs)){ + platformWorkVO.setWorkNum( + platformJobs.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.WORKING.getKey())).collect(Collectors.toList()).size() + ); + platformWorkVO.setCallNum( + platformJobs.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.CALLED.getKey())).collect(Collectors.toList()).size() + ); + platformWorkVO.setWaitNum( + platformJobs.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.IN_WAIT.getKey())).collect(Collectors.toList()).size() + ); + platformWorkVO.setExceptionNum( + platformJobs.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.EXCEPTION.getKey())).collect(Collectors.toList()).size() + ); + platformWorkVO.setPlatformJobList(platformJobs); + } + } + return platformWorkVO; + } } + diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java index 2544ffb..a4b0ac7 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java @@ -15,12 +15,12 @@ import com.doumee.dao.business.join.PlatformJobJoinMapper; import com.doumee.dao.business.join.PlatformJoinMapper; import com.doumee.dao.business.model.*; -import com.doumee.dao.web.reqeust.JobDetailDTO; -import com.doumee.dao.web.reqeust.JobOperateDTO; -import com.doumee.dao.web.reqeust.LineUpDetailDTO; -import com.doumee.dao.web.reqeust.SignInDTO; +import com.doumee.dao.openapi.request.*; +import com.doumee.dao.openapi.response.*; +import com.doumee.dao.web.reqeust.*; import com.doumee.dao.web.response.DriverHomeVO; import com.doumee.dao.web.response.LineUpVO; +import com.doumee.dao.web.response.PlatformWorkVO; import com.doumee.service.business.PlatformJobService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -33,9 +33,11 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; +import org.springframework.web.bind.annotation.RequestBody; import java.math.BigDecimal; import java.math.RoundingMode; +import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Objects; @@ -61,6 +63,9 @@ @Autowired private SystemDictDataBiz systemDictDataBiz; + @Autowired + private PlatformWmsDetailMapper platformWmsDetailMapper; + @Autowired private PlatformJoinMapper platformJoinMapper; @@ -70,9 +75,6 @@ @Autowired private PlatformWmsJobMapper platformWmsJobMapper; - - @Autowired - private PlatformWmsDetailMapper platformWmsDetailMapper; @Autowired private PlatformGroupMapper platformGroupMapper; @@ -147,7 +149,9 @@ .selectAll(PlatformJob.class) .selectAs(Platform::getName,PlatformJob::getPlatformName) .selectAs(Platform::getWorkRate,PlatformJob::getWorkRate) + .selectAs(PlatformWmsJob::getCarrierName,PlatformJob::getCarrierName) .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) + .leftJoin(PlatformWmsJob.class,PlatformWmsJob::getCarryBillCode,PlatformJob::getBillCode) .eq(pageWrap.getModel().getId() != null, PlatformJob::getId, pageWrap.getModel().getId()) .eq(pageWrap.getModel().getCreator() != null, PlatformJob::getCreator, pageWrap.getModel().getCreator()) .ge(pageWrap.getModel().getCreateDate() != null, PlatformJob::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())) @@ -234,21 +238,61 @@ platformJobIPage.getRecords().forEach(i->{ i.dealTime(); this.getWmsJobData(i); + this.queryWaitNum(i); }); return PageData.from(platformJobIPage); -// PageData<PlatformJob> pageData = PageData.from(platformJobMapper.selectPage(page, queryWrapper)); -// pageData.getRecords().forEach(i->{ -// i.dealTime(); -// this.getWmsJobData(i); -// }); -// return pageData; + } + + + + @Override + public PageData<PlatformJob> platformCallList(PageWrap<PlatformJob> pageWrap) { + IPage<PlatformJob> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); + MPJLambdaWrapper<PlatformJob> queryWrapper = new MPJLambdaWrapper<>(); + Utils.MP.blankToNull(pageWrap.getModel()); + queryWrapper + .selectAll(PlatformJob.class) + .selectAs(Platform::getName,PlatformJob::getPlatformName) + .selectAs(Platform::getWorkRate,PlatformJob::getWorkRate) + .selectAs(PlatformWmsJob::getCarrierName,PlatformJob::getCarrierName) + .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) + .leftJoin(PlatformWmsJob.class,PlatformWmsJob::getCarryBillCode,PlatformJob::getBillCode) + .eq(pageWrap.getModel().getPlatformGroupId() != null, PlatformJob::getPlatformGroupId, pageWrap.getModel().getPlatformGroupId()) + .like(pageWrap.getModel().getCarCodeFront() != null, PlatformJob::getCarCodeFront, pageWrap.getModel().getCarCodeFront()) + .eq(Objects.nonNull(pageWrap.getModel().getCallType()) + &&Constants.equalsInteger(pageWrap.getModel().getCallType(),Constants.ONE),PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CALL.getKey() + ) + .and(Objects.nonNull(pageWrap.getModel().getCallType()) + &&Constants.equalsInteger(pageWrap.getModel().getCallType(),Constants.TWO), + i->i.eq(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CALL.getKey()).or() + .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.IN_WAIT.getKey()).or() + .apply(" ( t.status = "+Constants.PlatformJobStatus.TRANSFERING.getKey()+" and t.PLATFORM_ID = "+pageWrap.getModel().getPlatformId()+" ) ") + ) + .and(Objects.nonNull(pageWrap.getModel().getCallType()) + &&Constants.equalsInteger(pageWrap.getModel().getCallType(),Constants.THREE), + i->i.eq(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CALL.getKey()).or() + .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.IN_WAIT.getKey()).or() + .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey()).or() + .apply(" ( t.status = "+Constants.PlatformJobStatus.TRANSFERING.getKey()+" and t.PLATFORM_GROUP_ID = "+pageWrap.getModel().getPlatformGroupId()+" ) ") + ) + .like(PlatformJob::getArriveDate,DateUtil.dateTypeToString(new Date(),"yyyy-MM-dd")) + .orderByDesc(PlatformJob::getStatus) + ; + IPage<PlatformJob> platformJobIPage = platformJobJoinMapper.selectJoinPage(page,PlatformJob.class,queryWrapper); + platformJobIPage.getRecords().forEach(i->{ + i.dealTime(); + this.getWmsJobData(i); + this.queryWaitNum(i); + }); + return PageData.from(platformJobIPage); } public void getWmsJobData(PlatformJob platformJob){ if(Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.zycxh) - || Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.zyczh) - || Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.sgscxh)) { + || Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.zyczh) + || Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.wxcxh) + || Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.wxczh)) { PlatformWmsJob platformWmsJob = platformWmsJobMapper.selectOne(new QueryWrapper<PlatformWmsJob>().lambda() .eq(PlatformWmsJob::getIsdeleted,Constants.ZERO) @@ -283,29 +327,33 @@ ,Constants.PlatformJobStatus.TRANSFERING.getKey()) .gt(PlatformJob::getSignDate,platformJob.getSignDate()) .eq(PlatformJob::getPlatformGroupId,platformJob.getPlatformGroupId()) - .like(PlatformJob::getArriveDate,DateUtil.getDate(platformJob.getArriveDate(),"yyyy-MM-dd"))); + .like(PlatformJob::getArriveDate,DateUtil.dateTypeToString(platformJob.getArriveDate(),"yyyy-MM-dd"))); platformJob.setLineUpNum(lineUpNum.size()); BigDecimal sumWorkRate = platformJob.getTotalNum(); for (PlatformJob linePlatformJob:lineUpNum) { this.getWmsJobData(linePlatformJob); sumWorkRate = sumWorkRate.add(linePlatformJob.getTotalNum()); } - //璁$畻棰勮绛夊緟鏃堕棿 - List<Platform> platformList = platformJoinMapper.selectList(new QueryWrapper<Platform>().lambda().eq(Platform::getIsdeleted,Constants.ZERO).eq(Platform::getGroupId,platformJob.getPlatformGroupId())); - BigDecimal workRate = platformList.stream().map(m->m.getWorkRate()).reduce(BigDecimal.ZERO,BigDecimal::add); - if(sumWorkRate.compareTo(BigDecimal.ZERO) == Constants.ZERO|| workRate.compareTo(BigDecimal.ZERO) == Constants.ZERO ){ - BigDecimal sumMinute = sumWorkRate.divide(workRate,1, RoundingMode.HALF_DOWN).multiply(BigDecimal.valueOf(60L)); - Integer sumMinuteInteger = sumMinute.intValue(); - Integer hours = sumMinuteInteger/60; - Integer minus = sumMinuteInteger%60; - String waitTime = "棰勮绛夊緟锛�"; - if(!Constants.equalsInteger(hours,Constants.ZERO)){ - waitTime = waitTime + hours + "灏忔椂"; + if(lineUpNum.size()>Constants.ZERO){ + //璁$畻棰勮绛夊緟鏃堕棿 + List<Platform> platformList = platformJoinMapper.selectList(new QueryWrapper<Platform>().lambda().eq(Platform::getIsdeleted,Constants.ZERO).eq(Platform::getGroupId,platformJob.getPlatformGroupId())); + BigDecimal workRate = platformList.stream().map(m->m.getWorkRate()).reduce(BigDecimal.ZERO,BigDecimal::add); + if(sumWorkRate.compareTo(BigDecimal.ZERO) == Constants.ZERO|| workRate.compareTo(BigDecimal.ZERO) == Constants.ZERO ){ + BigDecimal sumMinute = sumWorkRate.divide(workRate,1, RoundingMode.HALF_DOWN).multiply(BigDecimal.valueOf(60L)); + Integer sumMinuteInteger = sumMinute.intValue(); + Integer hours = sumMinuteInteger/60; + Integer minus = sumMinuteInteger%60; + String waitTime = "棰勮绛夊緟锛�"; + if(!Constants.equalsInteger(hours,Constants.ZERO)){ + waitTime = waitTime + hours + "灏忔椂"; + } + if(!Constants.equalsInteger(hours,Constants.ZERO)){ + waitTime = waitTime + minus + "鍒嗛挓"; + } + platformJob.setWaitTime(waitTime); } - if(!Constants.equalsInteger(hours,Constants.ZERO)){ - waitTime = waitTime + minus + "鍒嗛挓"; - } - platformJob.setWaitTime(waitTime); + }else{ + platformJob.setWaitTime("绛夊緟鍙彿"); } }else if(Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.WORKING.getKey())){ //鏌ヨ鏈�鍚庡紑濮嬩换鍔$殑鏈堝彴璁板綍 鏃ュ織琛� 鍥犱负瀛樺湪寮傚父鎸傝捣 杞Щ 绛夐棶棰� @@ -319,6 +367,15 @@ BigDecimal sumMinute = platformJob.getTotalNum().divide(platformJob.getWorkRate(),1, RoundingMode.HALF_DOWN).multiply(BigDecimal.valueOf(60L)); platformJob.setFinishTimeStr(DateUtil.DateToStr(DateUtil.afterMinutesDate(platformLog.getCreateDate(),sumMinute.intValue()),"HH:mm")); } + //澶勭悊浣滀笟鏃堕暱 + List<PlatformLog> platformLogList = platformLogMapper.selectList(new QueryWrapper<PlatformLog>().lambda() + .eq(PlatformLog::getJobId,platformJob.getId()) + .isNotNull(PlatformLog::getParam3) + .ne(PlatformLog::getParam3,Constants.ZERO+"") + .orderByDesc(PlatformLog::getCreateDate)); + platformJob.setWorkTime(platformLogList.stream().map(m->Long.valueOf(m.getParam3())).reduce(Long.valueOf(0),Long::sum)); + + } } @@ -334,7 +391,6 @@ public DriverHomeVO getDriverHome(LoginUserInfo loginUserInfo){ DriverHomeVO driverHomeVO = new DriverHomeVO(); //TODO 杞挱鍥� - List<PlatformJob> platformJobList = platformJobJoinMapper.selectJoinList(PlatformJob.class,new MPJLambdaWrapper<PlatformJob>() .selectAll(PlatformJob.class) .selectAs(Platform::getName,PlatformJob::getPlatformName) @@ -359,10 +415,44 @@ driverHomeVO.setReservationMap(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.PLATFORM_GUIDEMAP).getCode()); // 棰勭害鎸囧崡 鏂囨湰 driverHomeVO.setBookingTips(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.PLATFORM_BOOKING_TIPS).getCode()); + driverHomeVO.setSignDistance(new BigDecimal(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_PLACE_DISTANCE).getCode())); return driverHomeVO; } + + + @Override + public void confirmTask(ConfirmTaskDTO confirmTaskDTO){ + if(Objects.isNull(confirmTaskDTO) + || Objects.isNull(confirmTaskDTO.getId()) + || Objects.isNull(confirmTaskDTO.getArriveDate()) + || StringUtils.isBlank(confirmTaskDTO.getCarCodeBack()) + ){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + PlatformJob platformJob = platformJobMapper.selectById(confirmTaskDTO.getId()); + if(Objects.isNull(platformJob)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY); + } + if(!Constants.equalsInteger(platformJob.getStatus(),Constants.ZERO)){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"涓氬姟鐘舵�佸凡娴佽浆,鏃犳硶杩涜璇ユ搷浣�"); + } + if(confirmTaskDTO.getArriveDate().getTime()<=System.currentTimeMillis()){ + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"棰勮鍒板巶鏃堕棿蹇呴』澶т簬褰撳墠鏃堕棿"); + } + + PlatformJob oldPlatformJob = new PlatformJob(); + BeanUtils.copyProperties(platformJob,oldPlatformJob); + + platformJob.setArriveDate(confirmTaskDTO.getArriveDate()); + platformJob.setStatus(Constants.PlatformJobStatus.WART_SIGN_IN.getKey()); + platformJob.setEditDate(new Date()); + platformJobMapper.updateById(platformJob); + //瀛樺偍鎿嶄綔鏃ュ織 + savePlatformLog(Constants.PlatformJobLogType.CONFIRM_TASK.getKey(),oldPlatformJob,platformJob , + Constants.PlatformJobLogType.CONFIRM_TASK.getInfo()); + } /** * 璺濈绛惧埌 @@ -396,7 +486,8 @@ platformJob.setStatus(Constants.PlatformJobStatus.WAIT_CALL.getKey()); platformJobMapper.updateById(platformJob); //瀛樺偍鎿嶄綔鏃ュ織 - savePlatformLog(Constants.PlatformJobStatus.WAIT_CALL.getKey(),oldPlatformJob,platformJob); + savePlatformLog(Constants.PlatformJobLogType.SIGN.getKey(),oldPlatformJob,platformJob, + Constants.PlatformJobLogType.SIGN.getInfo()); } @@ -409,12 +500,12 @@ Double lat = Double.parseDouble(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_PLACE_LAT).getCode()); Double lnt = Double.parseDouble(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_PLACE_LNT).getCode()); BigDecimal distance = new BigDecimal(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.SIGN_IN_PLACE_DISTANCE).getCode()); - //鑾峰彇2涓偣鐨勮窛绂籜绫� + //鑾峰彇2涓偣鐨勮窛绂� 鍗曚綅锛氱背 Double getDistanceDouble = PositionUtil.getDistance(signInDTO.getLnt(),signInDTO.getLat(),lnt,lat); //杞崲km BigDecimal getDistance = BigDecimal.valueOf(getDistanceDouble).divide(new BigDecimal(1000),2,BigDecimal.ROUND_HALF_UP); if(distance.compareTo(getDistance)<Constants.ZERO){ - throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瓒呭嚭鍙鍒拌窛绂伙紝鍙鍒拌窛绂籟"+distance+"]鍏噷]"); + throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瓒呭嚭鍙鍒拌窛绂伙紝鍙鍒拌窛绂讳负["+distance+"]鍏噷]"); } platformJob.setSignDistance(BigDecimal.valueOf(getDistanceDouble)); } @@ -483,6 +574,9 @@ List<PlatformJob> platformJobList = platformJobJoinMapper.selectJoinList(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>() .selectAll(PlatformJob.class) + .selectAs(Platform::getName,PlatformJob::getPlatformName) + .selectAs(Platform::getWorkRate,PlatformJob::getWorkRate) + .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) .eq(PlatformJob::getIsdeleted,Constants.ZERO) .eq(Constants.equalsInteger(lineUpDetailDTO.getQueryType(),Constants.ZERO) ,PlatformJob::getDrivierPhone,lineUpDetailDTO.getMobile()) @@ -495,36 +589,45 @@ ); //鑾峰彇鎵�鏈夋湀鍙扮粍 List<Integer> platformIdList = platformJobList.stream().map(m->m.getPlatformGroupId()).collect(Collectors.toList()); - List<Platform> platformList = platformJoinMapper.selectList(new QueryWrapper<Platform>().lambda() - .eq(Platform::getIsdeleted,Constants.ZERO) - .in(Platform::getId,platformIdList)); + if(CollectionUtils.isEmpty(platformIdList)){ + return lineUpVO; + } + List<PlatformGroup> platformGroupList = platformGroupMapper.selectList(new QueryWrapper<PlatformGroup>().lambda() + .eq(PlatformGroup::getIsdeleted,Constants.ZERO) + .in(PlatformGroup::getId,platformIdList)); - for (Platform platform:platformList) { + for (PlatformGroup platformGroup:platformGroupList) { //鏌ヨ鏈湀鍙扮粍涓� 鑷繁鐨勬暟鎹� 鏈�鏃╃鍒扮殑 - PlatformJob platformJob = platformJobList.stream().filter(i->Constants.equalsInteger(i.getPlatformId(),platform.getId())).findFirst().orElse(null); + PlatformJob platformJob = platformJobList.stream().filter(i->Constants.equalsInteger(i.getPlatformGroupId(),platformGroup.getId())).findFirst().orElse(null); //鏌ヨ鍦ㄥ綋鍓嶆湀鍙扮粍涓� 绛惧埌鎺掗槦杞﹁締鏁版嵁 List<PlatformJob> platformJobSignInList = platformJobJoinMapper.selectJoinList(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>() .selectAll(PlatformJob.class) + .selectAs(Platform::getName,PlatformJob::getPlatformName) + .selectAs(Platform::getWorkRate,PlatformJob::getWorkRate) + .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) .eq(PlatformJob::getIsdeleted,Constants.ZERO) - .eq(PlatformJob::getPlatformGroupId,platform.getGroupId()) - .ge(Objects.nonNull(platformJob),PlatformJob::getSignDate,DateUtil.getDate(platformJob.getSignDate(),"yyyy-MM-dd HH:mm:ss")) + .eq(PlatformJob::getPlatformGroupId,platformGroup.getId()) + .ge(Objects.nonNull(platformJob),PlatformJob::getSignDate,DateUtil.dateTypeToString(platformJob.getSignDate(),"yyyy-MM-dd HH:mm:ss")) .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CALL.getKey(), Constants.PlatformJobStatus.IN_WAIT.getKey(), Constants.PlatformJobStatus.CALLED.getKey()) .orderByDesc(PlatformJob::getSignDate)); - platform.setSignJobList(platformJobSignInList); + platformGroup.setSignJobList(platformJobSignInList); //鏌ヨ褰撳墠鏈堝彴缁勪笅 List<PlatformJob> platformJobWorkList = platformJobJoinMapper.selectJoinList(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>() .selectAll(PlatformJob.class) + .selectAs(Platform::getName,PlatformJob::getPlatformName) + .selectAs(Platform::getWorkRate,PlatformJob::getWorkRate) + .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) .eq(PlatformJob::getIsdeleted,Constants.ZERO) - .eq(PlatformJob::getPlatformGroupId,platform.getGroupId()) + .eq(PlatformJob::getPlatformGroupId,platformGroup.getId()) .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.WORKING.getKey()) .orderByDesc(PlatformJob::getSignDate)); - platform.setWorkJobList(platformJobWorkList); + platformGroup.setWorkJobList(platformJobWorkList); } - lineUpVO.setPlatformList(platformList); + lineUpVO.setPlatformGroupList(platformGroupList); return lineUpVO; } @@ -533,7 +636,7 @@ * 鑾峰彇宸蹭綔涓氭椂闂� * @param platformJob */ - public void getWorkTime(PlatformJob platformJob){ + public Long getWorkTime(PlatformJob platformJob){ List<PlatformLog> platformLogList = platformLogMapper.selectList(new QueryWrapper<PlatformLog>() .lambda().eq(PlatformLog::getIsdeleted,Constants.ZERO) .eq(PlatformLog::getJobId,platformJob.getId()) @@ -561,6 +664,7 @@ } } platformJob.setWorkTime(optTime); + return optTime; } /** @@ -595,9 +699,9 @@ //TODO 涓嬪彂鍏ュ洯鏉冮檺 } - //瀛樺偍鎿嶄綔鏃ュ織 - savePlatformLog(Constants.PlatformJobStatus.WAIT_CALL.getKey(),oldPlatformJob,platformJob); + savePlatformLog(Constants.PlatformJobLogType.IN_WAIT.getKey(),oldPlatformJob,platformJob, + Constants.PlatformJobLogType.IN_WAIT.getInfo()); } @@ -621,17 +725,31 @@ ) ){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧�,涓氬姟鐘舵�佸凡娴佽浆锛�"); } - + + Platform platform = platformJoinMapper.selectById(jobOperateDTO.getPlatformId()); + if(Objects.isNull(platform)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鏈堝彴淇℃伅"); + } PlatformJob oldPlatformJob = new PlatformJob(); BeanUtils.copyProperties(platformJob,oldPlatformJob); platformJob.setCallDate(new Date()); platformJob.setCallUserId(jobOperateDTO.getLoginUserInfo().getId()); platformJob.setStatus(Constants.PlatformJobStatus.CALLED.getKey()); + platformJob.setPlatformId(jobOperateDTO.getPlatformId()); + //鍒ゆ柇鏄惁闇�瑕佸~鍏呰繘鍘� + if(StringUtils.isBlank(platformJob.getPlatforms())){ + platformJob.setPlatforms(jobOperateDTO.getPlatformId().toString()); + platformJob.setPlatformNames(platform.getName()); + }else{ + platformJob.setPlatforms(platformJob.getPlatforms() + "," +jobOperateDTO.getPlatformId().toString()); + platformJob.setPlatformNames(platformJob.getPlatformNames() + "," +platform.getName()); + } platformJob.setEditDate(new Date()); platformJobMapper.updateById(platformJob); //瀛樺偍鎿嶄綔鏃ュ織 - savePlatformLog(Constants.PlatformJobStatus.CALLED.getKey(),oldPlatformJob,platformJob); + savePlatformLog(Constants.PlatformJobLogType.CALLED.getKey(),oldPlatformJob,platformJob, + Constants.PlatformJobLogType.CALLED.getInfo().replace("{data}",platform.getName())); } @@ -659,9 +777,18 @@ if(Constants.equalsInteger(platformJob.getPlatformId(),jobOperateDTO.getPlatformId())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"鏃犳硶杞Щ鏈湀鍙�"); } + Platform oldPlatform = platformJoinMapper.selectById(platformJob.getPlatformId()); + + Platform platform = platformJoinMapper.selectById(jobOperateDTO.getPlatformId()); + if(Objects.isNull(platform)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鏈堝彴淇℃伅"); + } PlatformJob oldPlatformJob = new PlatformJob(); BeanUtils.copyProperties(platformJob,oldPlatformJob); + + platformJob.setPlatforms(platformJob.getPlatforms() + "," +jobOperateDTO.getPlatformId().toString()); + platformJob.setPlatformNames(platformJob.getPlatformNames() + "," +platform.getName()); platformJob.setTransPlatformDate(new Date()); platformJob.setTransPlatformUserId(jobOperateDTO.getLoginUserInfo().getId()); @@ -672,7 +799,8 @@ //TODO 璋冭捣WMS 閫氱煡鏈堝彴杞Щ //瀛樺偍鎿嶄綔鏃ュ織 - savePlatformLog(Constants.PlatformJobStatus.TRANSFERING.getKey(),oldPlatformJob,platformJob); + savePlatformLog(Constants.PlatformJobLogType.TRANSFERING.getKey(),oldPlatformJob,platformJob, + Constants.PlatformJobLogType.TRANSFERING.getInfo().replace("{data}",oldPlatform.getName())); } @@ -683,18 +811,16 @@ @Transactional(rollbackFor = {Exception.class,BusinessException.class}) public void platformOverNumber(JobOperateDTO jobOperateDTO){ if(Objects.isNull(jobOperateDTO) - || Objects.isNull(jobOperateDTO.getJobId()) - || Objects.isNull(jobOperateDTO.getPlatformId())){ + || Objects.isNull(jobOperateDTO.getJobId())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } PlatformJob platformJob = platformJobMapper.selectById(jobOperateDTO.getJobId()); if(Objects.isNull(platformJob)){ throw new BusinessException(ResponseStatus.DATA_EMPTY); } - if(!Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.WORKING.getKey())){ + if(!Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.CALLED.getKey())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧�,涓氬姟鐘舵�佸凡娴佽浆锛�"); } - PlatformJob oldPlatformJob = new PlatformJob(); BeanUtils.copyProperties(platformJob,oldPlatformJob); @@ -702,7 +828,8 @@ platformJob.setEditDate(new Date()); platformJobMapper.updateById(platformJob); //瀛樺偍鎿嶄綔鏃ュ織 - savePlatformLog(Constants.PlatformJobStatus.WART_SIGN_IN.getKey(),oldPlatformJob,platformJob); + savePlatformLog(Constants.PlatformJobLogType.OVER_NUMBER.getKey(),oldPlatformJob,platformJob, + Constants.PlatformJobLogType.OVER_NUMBER.getInfo()); } @@ -715,8 +842,7 @@ @Transactional(rollbackFor = {Exception.class,BusinessException.class}) public void platformErr(JobOperateDTO jobOperateDTO){ if(Objects.isNull(jobOperateDTO) - || Objects.isNull(jobOperateDTO.getJobId()) - || Objects.isNull(jobOperateDTO.getPlatformId())){ + || Objects.isNull(jobOperateDTO.getJobId())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } PlatformJob platformJob = platformJobMapper.selectById(jobOperateDTO.getJobId()); @@ -736,7 +862,8 @@ platformJob.setEditDate(new Date()); platformJobMapper.updateById(platformJob); //瀛樺偍鎿嶄綔鏃ュ織 - savePlatformLog(Constants.PlatformJobStatus.EXCEPTION.getKey(),oldPlatformJob,platformJob); + savePlatformLog(Constants.PlatformJobLogType.EXCEPTION.getKey(),oldPlatformJob,platformJob, + Constants.PlatformJobLogType.EXCEPTION.getInfo()); } @@ -747,8 +874,7 @@ @Transactional(rollbackFor = {Exception.class,BusinessException.class}) public void beginWork(JobOperateDTO jobOperateDTO){ if(Objects.isNull(jobOperateDTO) - || Objects.isNull(jobOperateDTO.getJobId()) - || Objects.isNull(jobOperateDTO.getPlatformId())){ + || Objects.isNull(jobOperateDTO.getJobId())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } PlatformJob platformJob = platformJobMapper.selectById(jobOperateDTO.getJobId()); @@ -758,24 +884,26 @@ if(!Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.CALLED.getKey())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧�,涓氬姟鐘舵�佸凡娴佽浆锛�"); } - platformJobMapper.update(null,new UpdateWrapper<PlatformJob>() - .lambda() - .set(Objects.isNull(platformJob.getStartDate()),PlatformJob::getStartDate,new Date()) - .set(PlatformJob::getEditDate,new Date()) - .set(PlatformJob::getStatus,Constants.PlatformJobStatus.WORKING.getKey()) - .eq(PlatformJob::getId,jobOperateDTO.getJobId()) - ); + + Platform platform = platformJoinMapper.selectById(platformJob.getPlatformId()); + if(Objects.isNull(platform)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鏈堝彴淇℃伅"); + } PlatformJob oldPlatformJob = new PlatformJob(); BeanUtils.copyProperties(platformJob,oldPlatformJob); + + if(Objects.isNull(platformJob.getStartDate())){ platformJob.setStartDate(new Date()); } platformJob.setStatus(Constants.PlatformJobStatus.WORKING.getKey()); platformJob.setEditDate(new Date()); platformJobMapper.updateById(platformJob); + //瀛樺偍鎿嶄綔鏃ュ織 - savePlatformLog(Constants.PlatformJobStatus.WORKING.getKey(),oldPlatformJob,platformJob); + savePlatformLog(Constants.PlatformJobLogType.WORKING.getKey(),oldPlatformJob,platformJob, + Constants.PlatformJobLogType.WORKING.getInfo().replace("{data}",platform.getName())); } @@ -800,11 +928,12 @@ BeanUtils.copyProperties(platformJob,oldPlatformJob); platformJob.setDoneDate(new Date()); - platformJob.setStatus(Constants.PlatformJobStatus.EXCEPTION.getKey()); + platformJob.setStatus(Constants.PlatformJobStatus.DONE.getKey()); platformJob.setEditDate(new Date()); platformJobMapper.updateById(platformJob); //瀛樺偍鎿嶄綔鏃ュ織 - savePlatformLog(Constants.PlatformJobStatus.EXCEPTION.getKey(),oldPlatformJob,platformJob); + savePlatformLog(Constants.PlatformJobLogType.DONE.getKey(),oldPlatformJob,platformJob , + Constants.PlatformJobLogType.DONE.getInfo()); if(Constants.equalsInteger(platformJob.getType(),Constants.TWO)){ //TODO 澶栧崗杞﹁璐� 鏌ヨTMS 鐢靛瓙閿佹儏鍐� @@ -858,7 +987,8 @@ platformJob.setEditDate(new Date()); platformJobMapper.updateById(platformJob); //瀛樺偍鎿嶄綔鏃ュ織 - savePlatformLog(Constants.PlatformJobStatus.WORKING.getKey(),oldPlatformJob,platformJob); + savePlatformLog(Constants.PlatformJobLogType.WORKING.getKey(),oldPlatformJob,platformJob , + Constants.PlatformJobLogType.DONE.getInfo()); } @@ -868,34 +998,33 @@ * @param platformJobBefor * @param platformJobAfter */ - public void savePlatformLog(Integer objType,PlatformJob platformJobBefor,PlatformJob platformJobAfter){ + public void savePlatformLog(Integer objType,PlatformJob platformJobBefor,PlatformJob platformJobAfter,String content){ PlatformLog platformLog = new PlatformLog(); platformLog.setIsdeleted(Constants.ZERO); platformLog.setCreateDate(new Date()); platformLog.setJobId(platformJobAfter.getId()); platformLog.setObjType(objType); + platformLog.setContent(content); + platformLog.setParam4(platformJobAfter.getCarCodeFront()); platformLog.setBeforeContent(JSONObject.toJSONString(platformJobBefor)); platformLog.setAfterContent(JSONObject.toJSONString(platformJobAfter)); platformLog.setObjId(platformJobAfter.getId().toString()); - //鏌ヨ鏈�鍚庝竴娆″紑濮嬩綔涓氱殑鏃ュ織 - PlatformLog lastBeginPlatform = platformLogMapper.selectOne(new QueryWrapper<PlatformLog>().lambda() - .eq(PlatformLog::getIsdeleted,Constants.ZERO) - .eq(PlatformLog::getObjType,Constants.PlatformJobStatus.WORKING.getKey()) - .eq(PlatformLog::getJobId,platformLog.getJobId()) - .orderByDesc(PlatformLog::getCreateDate) - .last(" limit 1 ") - ); - if(Objects.isNull(lastBeginPlatform)){ - return; - } - if(Constants.equalsInteger(objType,Constants.PlatformJobStatus.EXCEPTION.getKey()) - || Constants.equalsInteger(objType,Constants.PlatformJobStatus.TRANSFERING.getKey())){ + + if(Constants.equalsInteger(objType,Constants.PlatformJobLogType.EXCEPTION.getKey())){ + //鏌ヨ鏈�鍚庝竴娆″紑濮嬩綔涓氱殑鏃ュ織 + PlatformLog lastBeginPlatform = platformLogMapper.selectOne(new QueryWrapper<PlatformLog>().lambda() + .eq(PlatformLog::getIsdeleted,Constants.ZERO) + .eq(PlatformLog::getObjType,Constants.PlatformJobLogType.WORKING.getKey()) + .eq(PlatformLog::getJobId,platformLog.getJobId()) + .orderByDesc(PlatformLog::getCreateDate) + .last(" limit 1 ") + ); //寮傚父鎸傝捣 涓庤浆绉讳腑 璁板綍鏈 浣滀笟鏃堕棿 - platformLog.setParam1(DateUtil.getDate(lastBeginPlatform.getCreateDate(),"yyyy-MM-dd HH:mm:ss")); - platformLog.setParam2(DateUtil.getDate(platformLog.getCreateDate(),"yyyy-MM-dd HH:mm:ss")); - String v = Long.toString(platformJobAfter.getDoneDate().getTime() - platformJobBefor.getStartDate().getTime() / 1000) ; + platformLog.setParam1(lastBeginPlatform.getParam1()); + platformLog.setParam2(DateUtil.dateTypeToString(platformLog.getCreateDate(),"yyyy-MM-dd HH:mm:ss")); + String v = Long.toString((platformLog.getCreateDate().getTime() - DateUtil.StringToDate(lastBeginPlatform.getParam1(),"yyyy-MM-dd HH:mm:ss").getTime() )/ 1000) ; platformLog.setParam3(v); - }else if(Constants.equalsInteger(objType,Constants.PlatformJobStatus.DONE.getKey())){ + }else if(Constants.equalsInteger(objType,Constants.PlatformJobLogType.TRANSFERING.getKey())){ //鏌ヨ鏈�鍚庝竴娆℃棩蹇楁槸鍚︿负寮傚父鎸傝捣锛屽紓甯告寕璧峰悗鍙繘琛岃浆绉� 濡傛灉杩涜杞Щ閭d箞涓氬姟灏遍渶瑕侀噸鏂拌繘琛屽紑濮嬪氨涓嶉渶瑕佺壒娈婂鐞� 锛屽鏋滀笉鏄紓甯告寕璧疯繘琛屾暟鎹粨鏉� 鍒欑洿鎺ユ煡璇㈡渶鍚庝竴娆″紑濮嬬殑鏃堕棿 PlatformLog lastPlatformLog = platformLogMapper.selectOne(new QueryWrapper<PlatformLog>().lambda() .eq(PlatformLog::getIsdeleted,Constants.ZERO) @@ -903,15 +1032,51 @@ .orderByDesc(PlatformLog::getCreateDate) .last(" limit 1 ") ); - if(Objects.nonNull(lastPlatformLog) && Constants.equalsInteger(lastPlatformLog.getObjType(),Constants.PlatformJobStatus.EXCEPTION.getKey())){ + if(!Constants.equalsInteger(lastPlatformLog.getObjType(),Constants.PlatformJobLogType.EXCEPTION.getKey())){ + //鏌ヨ鏈�鍚庝竴娆″紑濮嬩綔涓氱殑鏃ュ織 + PlatformLog lastBeginPlatform = platformLogMapper.selectOne(new QueryWrapper<PlatformLog>().lambda() + .eq(PlatformLog::getIsdeleted,Constants.ZERO) + .eq(PlatformLog::getObjType,Constants.PlatformJobLogType.WORKING.getKey()) + .eq(PlatformLog::getJobId,platformLog.getJobId()) + .orderByDesc(PlatformLog::getCreateDate) + .last(" limit 1 ") + ); + //寮傚父鎸傝捣 涓庤浆绉讳腑 璁板綍鏈 浣滀笟鏃堕棿 + platformLog.setParam1(lastBeginPlatform.getParam1()); + platformLog.setParam2(DateUtil.dateTypeToString(platformLog.getCreateDate(),"yyyy-MM-dd HH:mm:ss")); + String v = Long.toString((platformLog.getCreateDate().getTime() - DateUtil.StringToDate(lastBeginPlatform.getParam1(),"yyyy-MM-dd HH:mm:ss").getTime() )/ 1000) ; + platformLog.setParam3(v); + }else{ + platformLog.setParam3("0"); + } + }else if(Constants.equalsInteger(objType,Constants.PlatformJobLogType.DONE.getKey())){ + //鏌ヨ鏈�鍚庝竴娆℃棩蹇楁槸鍚︿负寮傚父鎸傝捣锛屽紓甯告寕璧峰悗鍙繘琛岃浆绉� 濡傛灉杩涜杞Щ閭d箞涓氬姟灏遍渶瑕侀噸鏂拌繘琛屽紑濮嬪氨涓嶉渶瑕佺壒娈婂鐞� 锛屽鏋滀笉鏄紓甯告寕璧疯繘琛屾暟鎹粨鏉� 鍒欑洿鎺ユ煡璇㈡渶鍚庝竴娆″紑濮嬬殑鏃堕棿 + PlatformLog lastPlatformLog = platformLogMapper.selectOne(new QueryWrapper<PlatformLog>().lambda() + .eq(PlatformLog::getIsdeleted,Constants.ZERO) + .eq(PlatformLog::getJobId,platformLog.getJobId()) + .orderByDesc(PlatformLog::getCreateDate) + .last(" limit 1 ") + ); + if(Objects.nonNull(lastPlatformLog) && Constants.equalsInteger(lastPlatformLog.getObjType(),Constants.PlatformJobLogType.EXCEPTION.getKey())){ platformLog.setParam3("0"); }else{ + //鏌ヨ鏈�鍚庝竴娆″紑濮嬩綔涓氱殑鏃ュ織 + PlatformLog lastBeginPlatform = platformLogMapper.selectOne(new QueryWrapper<PlatformLog>().lambda() + .eq(PlatformLog::getIsdeleted,Constants.ZERO) + .eq(PlatformLog::getObjType,Constants.PlatformJobLogType.WORKING.getKey()) + .eq(PlatformLog::getJobId,platformLog.getJobId()) + .orderByDesc(PlatformLog::getCreateDate) + .last(" limit 1 ") + ); //闈炲紓甯告寕璧� 鍒欑洿鎺ヨ繃鍘绘渶鍚庝竴娆″紑濮嬩綔涓氱殑鏃ュ織鐨勫紑濮嬫椂闂� - platformLog.setParam1(DateUtil.getDate(lastBeginPlatform.getCreateDate(),"yyyy-MM-dd HH:mm:ss")); - platformLog.setParam2(DateUtil.getDate(platformLog.getCreateDate(),"yyyy-MM-dd HH:mm:ss")); - String v = Long.toString(platformJobAfter.getDoneDate().getTime() - platformJobBefor.getStartDate().getTime() / 1000) ; + platformLog.setParam1(lastBeginPlatform.getParam1()); + platformLog.setParam2(DateUtil.dateTypeToString(platformLog.getCreateDate(),"yyyy-MM-dd HH:mm:ss")); + String v = Long.toString((platformJobAfter.getDoneDate().getTime() - DateUtil.StringToDate(lastBeginPlatform.getParam1(),"yyyy-MM-dd HH:mm:ss").getTime()) / 1000) ; platformLog.setParam3(v); } + }else if(Constants.equalsInteger(objType,Constants.PlatformJobLogType.WORKING.getKey())){ + platformLog.setParam1(DateUtil.dateTypeToString(platformLog.getCreateDate(),"yyyy-MM-dd HH:mm:ss")); + platformLog.setParam3("0"); }else{ platformLog.setParam3("0"); } @@ -982,6 +1147,14 @@ .eq(PlatformJob::getPlatformId,platform.getId()) .eq(PlatformJob::getIsdeleted,Constants.ZERO) .eq(PlatformJob::getDrivierPhone,loginUserInfo.getMobile()) + .in(PlatformJob::getStatus, + Constants.PlatformJobStatus.WAIT_CALL.getKey(), + Constants.PlatformJobStatus.IN_WAIT.getKey(), + Constants.PlatformJobStatus.CALLED.getKey(), + Constants.PlatformJobStatus.WORKING.getKey(), + Constants.PlatformJobStatus.EXCEPTION.getKey(), + Constants.PlatformJobStatus.OVER_NUMBER.getKey() + ) .like(PlatformJob::getArriveDate, DateUtil.getCurrDate()) .orderByDesc(PlatformJob::getId) ); @@ -994,4 +1167,247 @@ platform.setWorkJobList(platformJobList); } + @Override + public PlatformWorkVO getPlatformWorkVOById(Integer platformId){ + //鑾峰彇鏈堝彴涓嬬殑鎵�鏈変綔涓氭暟鎹� + List<PlatformJob> platformJobList = platformJobJoinMapper.selectJoinList(PlatformJob.class,new MPJLambdaWrapper<PlatformJob>() + .selectAll(PlatformJob.class) + .selectAs(Platform::getName,PlatformJob::getPlatformName) + .selectAs(Platform::getWorkRate,PlatformJob::getWorkRate) + .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) + .eq(PlatformJob::getPlatformId,platformId) + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .in(PlatformJob::getStatus, + Constants.PlatformJobStatus.WAIT_CALL.getKey(), + Constants.PlatformJobStatus.IN_WAIT.getKey(), + Constants.PlatformJobStatus.CALLED.getKey(), + Constants.PlatformJobStatus.WORKING.getKey(), + Constants.PlatformJobStatus.EXCEPTION.getKey(), + Constants.PlatformJobStatus.OVER_NUMBER.getKey() + ) + .like(PlatformJob::getArriveDate, DateUtil.getCurrDate()) + .orderByDesc(PlatformJob::getId) + ); + for (PlatformJob platformJob:platformJobList) { + //澶勭悊WSM鏁伴噺 + this.getWmsJobData(platformJob); + //鏌ヨ鍓嶆柟鎺掗槦鏁伴噺 + this.queryWaitNum(platformJob); + } + PlatformWorkVO platformWorkVO = PlatformGroupServiceImpl.getPlatformWorkVO(platformId,platformJobList); + return platformWorkVO; + } + + + @Override + public PlatformOrderNumByDateResponse orderNumByDate(PlatformOrderNumByDateRequest param){ + PlatformOrderNumByDateResponse platformOrderNumByDateResponse = new PlatformOrderNumByDateResponse(); + Date queryDate = (Objects.nonNull(param)&&Objects.nonNull(param.getTimeInfo()))?param.getTimeInfo():new Date(); + String queryDateStr = DateUtil.getDate(queryDate,"yyyy-MM-dd"); + //鏌ヨ浠婃棩鍏ㄩ儴浠诲姟 + platformOrderNumByDateResponse.setTotalNum( + platformJobMapper.selectCount(new QueryWrapper<PlatformJob>().lambda() + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .and(i-> + i.like(PlatformJob::getDoneDate,queryDateStr) + .or().ne(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey()) + ) + ) + ); + //鏌ヨ浠婃棩瀹屾垚浠诲姟 + platformOrderNumByDateResponse.setDoneNum( + platformJobMapper.selectCount(new QueryWrapper<PlatformJob>().lambda() + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .like(PlatformJob::getDoneDate,queryDateStr) + .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.DONE.getKey()) + ) + ); + return platformOrderNumByDateResponse; + } + + + + @Override + public List<PlatformDataListResponse> platformWorkingDataList(PlatformDataListRequest param){ + List<PlatformDataListResponse> platformDataListResponseList = new ArrayList<>(); + List<Platform> platformList = platformJoinMapper.selectList( + new MPJLambdaWrapper<Platform>().eq(Platform::getIsdeleted,Constants.ZERO) + .eq(Platform::getStatus,Constants.ZERO) + ); + for (Platform platform:platformList) { + PlatformDataListResponse platformDataListResponse = new PlatformDataListResponse(); + platformDataListResponse.setId(platform.getId()); + platformDataListResponse.setHkId(platform.getHkId()); + platformDataListResponse.setName(platform.getName()); + platformDataListResponse.setWorkStatus(Constants.ZERO); + //鏌ヨ褰撳墠浣滀笟杞﹁締 + PlatformJob platformJob = platformJobMapper.selectOne(new QueryWrapper<PlatformJob>().lambda() + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.WORKING.getKey()) + .orderByDesc(PlatformJob::getWorkTime) + .last(" limit 1") + ); + if(Objects.nonNull(platformJob)){ + platformDataListResponse.setCarCode(platformJob.getCarCodeFront()); + platformDataListResponse.setWorkType( + Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.zycxh) + ||Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.wxcxh) + ||Constants.equalsInteger(platformJob.getType(),Constants.platformJobType.sgscxh)?Constants.ZERO:Constants.ONE + ); + platformDataListResponse.setWorkStatus(Constants.ONE); + //鏌ヨ浣滀笟鏃堕暱 + platformDataListResponse.setWorkTime( + this.getWorkTime(platformJob) + ); + } + } + return platformDataListResponseList; + } + + @Override + public PlatformDataInfoResponse platformWorkingDataList(PlatformDataInfoRequest param){ + if(Objects.isNull(param) + || Objects.isNull(param.getId())){ + throw new BusinessException(ResponseStatus.BAD_REQUEST); + } + PlatformDataInfoResponse response = new PlatformDataInfoResponse(); + Platform platform = platformJoinMapper.selectById(param.getId()); + if(Objects.isNull(platform)){ + throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"鏈煡璇㈠埌鏈堝彴淇℃伅"); + } + response.setId(platform.getId()); + response.setHkId(platform.getHkId()); + response.setName(platform.getName()); + + PlatformJob platformJob = platformJobJoinMapper.selectJoinOne(PlatformJob.class,new MPJLambdaWrapper<PlatformJob>() + .selectAll(PlatformJob.class) + .selectAs(Platform::getName,PlatformJob::getPlatformName) + .selectAs(Platform::getWorkRate,PlatformJob::getWorkRate) + .selectAs(PlatformWmsJob::getId,PlatformJob::getWmsId) + .selectAs(PlatformWmsJob::getCarrierName,PlatformJob::getCarrierName) + .selectAs(PlatformWmsJob::getRepertotyAddress,PlatformJob::getRepertotyAddress) + .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) + .leftJoin(PlatformWmsJob.class,PlatformWmsJob::getCarryBillCode,PlatformJob::getBillCode) + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.WORKING.getKey()) + .eq(PlatformJob::getPlatformId,platform.getId()) + .orderByDesc(PlatformJob::getDoneDate) + ); + if(Objects.nonNull(platformJob)){ + response.setCarCode(platformJob.getCarCodeFront()); + response.setCarrierName(platformJob.getCarrierName()); + response.setOrderCode(platformJob.getBillCode()); + response.setRepertotyAddress(platformJob.getRepertotyAddress()); + //鏌ヨ渚涘簲鍟嗕俊鎭� 鍙湁瀛樺湪鎵胯繍鍗曞彿鎵嶆湁 + if(Objects.nonNull(platformJob.getWmsId())){ + List<PlatformWmsDetail> platformWmsDetailList = platformWmsDetailMapper.selectList(new QueryWrapper<PlatformWmsDetail>().lambda() + .eq(PlatformWmsDetail::getIsdeleted,Constants.ZERO) + .eq(PlatformWmsDetail::getJobId,platformJob.getId())); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformWmsDetailList)){ + List<String> stringList = platformWmsDetailList.stream().map(m->m.getInRepertotyCode()).collect(Collectors.toList()); + response.setInRepertotyCode(stringList); + } + } + } + return response; + } + + + @Override + public CarNumByStatusResponse carStatusNum(CarNumByStatusRequest param){ + CarNumByStatusResponse response = new CarNumByStatusResponse(); + response.setQueuingNum( + platformJobMapper.selectCount(new QueryWrapper<PlatformJob>().lambda() + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CALL.getKey()) + ) + ); + response.setInNum( + platformJobMapper.selectCount(new QueryWrapper<PlatformJob>().lambda() + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .and(i->i.eq(PlatformJob::getStatus,Constants.PlatformJobStatus.IN_WAIT.getKey()) + .or() + .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey()) + ) + ) + ); + response.setWorkingNum( + platformJobMapper.selectCount(new QueryWrapper<PlatformJob>().lambda() + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.WORKING.getKey()) + ) + ); + response.setDoneNum( + platformJobMapper.selectCount(new QueryWrapper<PlatformJob>().lambda() + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .eq(PlatformJob::getStatus,Constants.PlatformJobStatus.LEAVED.getKey()) + .like(PlatformJob::getOutDate,DateUtil.getDate(new Date(),"yyyy-MM-dd")) + ) + ); + return response; + } + + + @Override + public PlatformQueuingListResponse queueList(PlatformQueuingListRequest param){ + PlatformQueuingListResponse response = new PlatformQueuingListResponse(); + + List<PlatformJob> platformJobList = platformJobJoinMapper.selectJoinList(PlatformJob.class,new MPJLambdaWrapper<PlatformJob>() + .selectAll(PlatformJob.class) + .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) + .leftJoin(PlatformGroup.class,PlatformGroup::getId,PlatformJob::getPlatformGroupId) + .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CALL.getKey()) + .in(PlatformJob::getStatus,Constants.PlatformJobStatus.IN_WAIT.getKey()) + .in(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey()) + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .isNotNull(PlatformJob::getCarCodeFront) + .orderByDesc(PlatformJob::getCreateDate) + .eq(PlatformGroup::getType,Constants.ZERO)); + + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformJobList)){ + response.setOutboundList( + platformJobList.stream().map(m->m.getCarCodeFront()).collect(Collectors.toList()) + ); + } + + platformJobList = platformJobJoinMapper.selectJoinList(PlatformJob.class,new MPJLambdaWrapper<PlatformJob>() + .selectAll(PlatformJob.class) + .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) + .leftJoin(PlatformGroup.class,PlatformGroup::getId,PlatformJob::getPlatformGroupId) + .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CALL.getKey()) + .in(PlatformJob::getStatus,Constants.PlatformJobStatus.IN_WAIT.getKey()) + .in(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey()) + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .isNotNull(PlatformJob::getCarCodeFront) + .orderByDesc(PlatformJob::getCreateDate) + .eq(PlatformGroup::getType,Constants.ONE)); + + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformJobList)){ + response.setInboundList( + platformJobList.stream().map(m->m.getCarCodeFront()).collect(Collectors.toList()) + ); + } + + platformJobList = platformJobJoinMapper.selectJoinList(PlatformJob.class,new MPJLambdaWrapper<PlatformJob>() + .selectAll(PlatformJob.class) + .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) + .leftJoin(PlatformGroup.class,PlatformGroup::getId,PlatformJob::getPlatformGroupId) + .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CALL.getKey()) + .in(PlatformJob::getStatus,Constants.PlatformJobStatus.IN_WAIT.getKey()) + .in(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey()) + .eq(PlatformJob::getIsdeleted,Constants.ZERO) + .isNotNull(PlatformJob::getCarCodeFront) + .orderByDesc(PlatformJob::getCreateDate) + .eq(PlatformGroup::getType,Constants.TWO)); + + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformJobList)){ + response.setMunicipalComList( + platformJobList.stream().map(m->m.getCarCodeFront()).collect(Collectors.toList()) + ); + } + return response; + } + + + } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformLogServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformLogServiceImpl.java index 4008597..5811b1b 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformLogServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformLogServiceImpl.java @@ -2,9 +2,12 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; +import com.doumee.core.utils.Constants; import com.doumee.core.utils.Utils; import com.doumee.dao.business.PlatformLogMapper; import com.doumee.dao.business.model.PlatformLog; +import com.doumee.dao.openapi.request.CarLogsListRequest; +import com.doumee.dao.openapi.response.CarLogsListResponse; import com.doumee.service.business.PlatformLogService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -14,7 +17,10 @@ import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import java.util.ArrayList; +import java.util.Date; import java.util.List; +import java.util.Objects; /** * 鏈堝彴_浣滀笟鎿嶄綔鍘嗗彶琛⊿ervice瀹炵幇 @@ -126,4 +132,30 @@ QueryWrapper<PlatformLog> wrapper = new QueryWrapper<>(platformLog); return platformLogMapper.selectCount(wrapper); } + + + + @Override + public List<CarLogsListResponse> getCarLogsListResponse(CarLogsListRequest carLogsListRequest){ + List<CarLogsListResponse> carLogsListResponseList = new ArrayList<>(); + + List<PlatformLog> platformLogList = platformLogMapper.selectList(new QueryWrapper<PlatformLog>().lambda() + .notIn(PlatformLog::getObjType, + Constants.PlatformJobLogType.CREATE.getKey(), + Constants.PlatformJobLogType.CONFIRM_TASK.getKey() + ) + .orderByDesc(PlatformLog::getCreateDate) + .last(Objects.nonNull(carLogsListRequest)&&Objects.nonNull(carLogsListRequest.getLimitNum())," limit " +carLogsListRequest.getLimitNum()) + ); + for (PlatformLog platformLog:platformLogList) { + CarLogsListResponse carLogsListResponse = new CarLogsListResponse(); + carLogsListResponse.setCarCode(platformLog.getParam4()); + carLogsListResponse.setContent(platformLog.getContent()); + carLogsListResponse.setCreateDate(new Date()); + carLogsListResponseList.add(carLogsListResponse); + } + return carLogsListResponseList; + } + + } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformServiceImpl.java index 82709a7..4acdb01 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformServiceImpl.java @@ -8,9 +8,11 @@ import com.doumee.core.utils.Constants; import com.doumee.core.utils.Utils; import com.doumee.dao.business.PlatformMapper; +import com.doumee.dao.business.join.PlatformJoinMapper; import com.doumee.dao.business.model.Member; import com.doumee.dao.business.model.Platform; import com.doumee.dao.business.model.PlatformGroup; +import com.doumee.dao.openapi.response.PlatformNumByStatusResponse; import com.doumee.service.business.PlatformService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -24,6 +26,7 @@ import java.util.Date; import java.util.List; +import java.util.stream.Collectors; /** * 鏈堝彴淇℃伅琛⊿ervice瀹炵幇 @@ -35,6 +38,8 @@ @Autowired private PlatformMapper platformMapper; + @Autowired + private PlatformJoinMapper platformJoinMapper; @Override public Integer create(Platform platform) { @@ -65,6 +70,7 @@ public void updateById(Platform platform) { platformMapper.updateById(platform); } + @Override public void updateStatusById(Platform platform) { Platform model =platformMapper.selectById(platform.getId()); @@ -162,4 +168,35 @@ QueryWrapper<Platform> wrapper = new QueryWrapper<>(platform); return platformMapper.selectCount(wrapper); } + + + @Override + public PlatformNumByStatusResponse getPlatformNumByStatusResponse(){ + PlatformNumByStatusResponse platformNumByStatusResponse = new PlatformNumByStatusResponse(); + List<Platform> platformList = platformJoinMapper.selectJoinList(Platform.class,new MPJLambdaWrapper<Platform>() + .selectAll(Platform.class) + .select(" ( select count(1) from platform_job pj where t.id = pj.PLATFORM_ID and pj.STATUS = "+Constants.PlatformJobStatus.WORKING.getKey()+" ) as workStatus ") + .eq(Platform::getIsdeleted,Constants.ZERO) + ); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformList)){ + //鍋滅敤鏁伴噺 + platformNumByStatusResponse.setForbiddenNum( + platformList.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.ONE)).collect(Collectors.toList()).size() + ); + //宸ヤ綔鏁伴噺 + platformNumByStatusResponse.setUsingNum( + platformList.stream().filter(i->i.getWorkStatus()>Constants.ZERO).collect(Collectors.toList()).size() + ); + //绌洪棽鏁伴噺 + platformNumByStatusResponse.setIdleNum( + platformList.stream().filter(i->i.getWorkStatus()<=Constants.ZERO).collect(Collectors.toList()).size() + ); + } + return platformNumByStatusResponse; + } + + + + + } diff --git a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformWaterGasServiceImpl.java b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformWaterGasServiceImpl.java index 202d2b0..5ba00a4 100644 --- a/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformWaterGasServiceImpl.java +++ b/server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformWaterGasServiceImpl.java @@ -12,6 +12,10 @@ import com.doumee.dao.business.PlatformWaterGasMapper; import com.doumee.dao.business.model.PlatformReason; import com.doumee.dao.business.model.PlatformWaterGas; +import com.doumee.dao.openapi.request.GasByMonthRequest; +import com.doumee.dao.openapi.request.WaterByMonthRequest; +import com.doumee.dao.openapi.response.GasByMonthResponse; +import com.doumee.dao.openapi.response.WaterByMonthResponse; import com.doumee.service.business.PlatformWaterGasService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -22,9 +26,13 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; +import org.springframework.web.bind.annotation.RequestBody; +import java.math.BigDecimal; +import java.util.Calendar; import java.util.Date; import java.util.List; +import java.util.Objects; /** * 鏈堝彴_鐢ㄦ按鐢ㄦ皵淇℃伅璁板綍琛⊿ervice瀹炵幇 @@ -207,4 +215,91 @@ QueryWrapper<PlatformWaterGas> wrapper = new QueryWrapper<>(platformWaterGas); return platformWaterGasMapper.selectCount(wrapper); } + + + @Override + public WaterByMonthResponse waterDataByMonth(WaterByMonthRequest param){ + Date queryDate = (Objects.nonNull(param)&&Objects.nonNull(param.getTimeInfo()))?param.getTimeInfo():new Date(); + //鑾峰彇涓婁釜鏈堟棩鏈� + Calendar calendar = Calendar.getInstance(); + calendar.setTime(queryDate); + calendar.add(Calendar.MONTH, -1); + Date beforMonth = calendar.getTime(); + calendar.add(Calendar.MONTH, -11); + Date beforYearMonth = calendar.getTime(); + + WaterByMonthResponse waterByMonthResponse = new WaterByMonthResponse(); + + List<PlatformWaterGas> list = platformWaterGasMapper.selectList(new QueryWrapper<PlatformWaterGas>().lambda() + .eq(PlatformWaterGas::getIsdeleted,Constants.ZERO) + .eq(PlatformWaterGas::getType,Constants.ZERO) + .like(PlatformWaterGas::getTimeInfo,DateUtil.getDate(queryDate,"yyyy-MM")) + ); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(list)){ + waterByMonthResponse.setCurrentMonth(list.stream().map(m->m.getNum()).reduce(BigDecimal.ZERO,BigDecimal::add)); + } + + list = platformWaterGasMapper.selectList(new QueryWrapper<PlatformWaterGas>().lambda() + .eq(PlatformWaterGas::getIsdeleted,Constants.ZERO) + .eq(PlatformWaterGas::getType,Constants.ZERO) + .like(PlatformWaterGas::getTimeInfo,beforMonth) + ); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(list)){ + waterByMonthResponse.setLastMonth(list.stream().map(m->m.getNum()).reduce(BigDecimal.ZERO,BigDecimal::add)); + } + + list = platformWaterGasMapper.selectList(new QueryWrapper<PlatformWaterGas>().lambda() + .eq(PlatformWaterGas::getIsdeleted,Constants.ZERO) + .eq(PlatformWaterGas::getType,Constants.ZERO) + .like(PlatformWaterGas::getTimeInfo,beforYearMonth) + ); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(list)){ + waterByMonthResponse.setLastYearMonth(list.stream().map(m->m.getNum()).reduce(BigDecimal.ZERO,BigDecimal::add)); + } + return waterByMonthResponse; + } + + + @Override + public GasByMonthResponse gasDataByMonth(GasByMonthRequest param){ + Date queryDate = (Objects.nonNull(param)&&Objects.nonNull(param.getTimeInfo()))?param.getTimeInfo():new Date(); + //鑾峰彇涓婁釜鏈堟棩鏈� + Calendar calendar = Calendar.getInstance(); + calendar.setTime(queryDate); + calendar.add(Calendar.MONTH, -1); + Date beforMonth = calendar.getTime(); + calendar.add(Calendar.MONTH, -11); + Date beforYearMonth = calendar.getTime(); + + GasByMonthResponse response = new GasByMonthResponse(); + + List<PlatformWaterGas> list = platformWaterGasMapper.selectList(new QueryWrapper<PlatformWaterGas>().lambda() + .eq(PlatformWaterGas::getIsdeleted,Constants.ZERO) + .eq(PlatformWaterGas::getType,Constants.ONE) + .like(PlatformWaterGas::getTimeInfo,DateUtil.getDate(queryDate,"yyyy-MM")) + ); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(list)){ + response.setCurrentMonth(list.stream().map(m->m.getNum()).reduce(BigDecimal.ZERO,BigDecimal::add)); + } + + list = platformWaterGasMapper.selectList(new QueryWrapper<PlatformWaterGas>().lambda() + .eq(PlatformWaterGas::getIsdeleted,Constants.ZERO) + .eq(PlatformWaterGas::getType,Constants.ONE) + .like(PlatformWaterGas::getTimeInfo,beforMonth) + ); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(list)){ + response.setLastMonth(list.stream().map(m->m.getNum()).reduce(BigDecimal.ZERO,BigDecimal::add)); + } + + list = platformWaterGasMapper.selectList(new QueryWrapper<PlatformWaterGas>().lambda() + .eq(PlatformWaterGas::getIsdeleted,Constants.ZERO) + .eq(PlatformWaterGas::getType,Constants.ONE) + .like(PlatformWaterGas::getTimeInfo,beforYearMonth) + ); + if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(list)){ + response.setLastYearMonth(list.stream().map(m->m.getNum()).reduce(BigDecimal.ZERO,BigDecimal::add)); + } + return response; + } + } -- Gitblit v1.9.3