server/system_service/src/main/java/com/doumee/core/utils/Constants.java
@@ -44,6 +44,7 @@ public static final String HK_ROOTORG_CODE ="HK_ROOTORG_CODE" ; public static final String HK_ROOTORG_NAME ="HK_ROOTORG_NAME" ; public static final String PLATFORM ="PLATFORM" ; public static final String POWER_MINUTE ="POWER_MINUTE" ; public static final String RESERVATION_TOTAL_NUM ="RESERVATION_TOTAL_NUM" ; public static final String SIGN_IN_PLACE_LAT ="SIGN_IN_PLACE_LAT" ; public static final String SIGN_IN_PLACE_LNT ="SIGN_IN_PLACE_LNT" ; @@ -745,6 +746,55 @@ } public enum PlatformWarnEvent { STOP_TIMEOUT(0, "åé è¶ æ¶","${carCode}æå°åé è¶ æ¶" ), STOP_ERROR(1, "åé é误","${carCode}æå°åé é误" ); // æååé private int key; private String name; private String info; // æé æ¹æ³ PlatformWarnEvent(int key, String name,String info ) { this.key = key; this.info = info; this.name = name; } public static String getName(int index) { for (PlatformWarnEvent c : PlatformWarnEvent.values()) { if (c.getKey() == index) { return c.name; } } return null; } public int getKey() { return key; } public void setKey(int key) { this.key = key; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getInfo() { return info; } public void setInfo(String info) { this.info = info; } } /** * æå°ä½ä¸ ç¶æ server/system_service/src/main/java/com/doumee/core/utils/DateUtil.java
@@ -1229,6 +1229,20 @@ } /** * å¾å°Xåéåçæ¶é´(æ¶é´æ ¼å¼) * * @param date * @param minute * @return */ public static Date getXMinuteAfterDate(Date date, int minute) { Calendar now = Calendar.getInstance(); now.setTime(date); now.set(Calendar.MINUTE, now.get(Calendar.MINUTE) + minute); return now.getTime(); } /** * å¾å°ä¸¤ä¸ªæ¥æä¹é´ç¸å·®çå¤©æ° * * @param newDate server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformCloudController.java
@@ -96,6 +96,13 @@ return ApiResponse.success(platformService.findPage(pageWrap)); } @ApiOperation("æå°ä½ä¸ç»è®¡") @PostMapping("/platformWorkReportPage") @CloudRequiredPermission("business:platform:query") public ApiResponse<List<Platform>> platformWorkReportPage (@RequestBody Platform platform,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ return ApiResponse.success(platformService.platformWorkReportList(platform)); } @ApiOperation("æ ¹æ®æå°ç»è·åæå°å表信æ¯") @GetMapping("/listByGroupId") @@ -117,8 +124,6 @@ public ApiResponse findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ return ApiResponse.success(platformService.findById(id)); } @ApiOperation("è·åæå°ç»ä¿¡æ¯") @@ -159,7 +164,8 @@ @PostMapping("/platformInPark") public ApiResponse platformInPark (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.platformInPark(jobOperateDTO); PlatformJob platformJob = platformJobService.platformInPark(jobOperateDTO); platformJobService.sendInPark(platformJob); return ApiResponse.success("æä½æå"); } @@ -167,7 +173,11 @@ @PostMapping("/platformCallNumber") public ApiResponse platformCallNumber (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.platformCallNumber(jobOperateDTO); PlatformJob oldPlatformJob = platformJobService.findById(jobOperateDTO.getJobId()); PlatformJob platformJob = platformJobService.platformCallNumber(jobOperateDTO); if(Constants.equalsInteger(oldPlatformJob.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.getKey())){ platformJobService.sendInPark(platformJob); } return ApiResponse.success("æä½æå"); } @@ -200,7 +210,8 @@ @PostMapping("/beginWork") public ApiResponse beginWork (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.beginWork(jobOperateDTO); PlatformJob platformJob = platformJobService.beginWork(jobOperateDTO); platformJobService.cancelInPark(platformJob); return ApiResponse.success("æä½æå"); } @@ -209,7 +220,9 @@ @PostMapping("/finishWork") public ApiResponse finishWork (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.finishWork(jobOperateDTO); PlatformJob platformJob = platformJobService.finishWork(jobOperateDTO); //ä¸å离åæé platformJobService.sendInPark(platformJob); return ApiResponse.success("æä½æå"); } server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformJobCloudController.java
@@ -70,6 +70,8 @@ return ApiResponse.success(platformJobService.findPage(pageWrap)); } @ApiOperation("导åºExcel") @PostMapping("/exportExcel") @CloudRequiredPermission("business:platformjob:exportExcel") server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformWarnEventCloudController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,90 @@ package com.doumee.cloud.admin; import com.doumee.api.BaseController; import com.doumee.core.annotation.excel.ExcelExporter; import com.doumee.core.annotation.pr.PreventRepeat; import com.doumee.core.model.ApiResponse; import com.doumee.core.model.PageWrap; import com.doumee.core.model.PageData; import com.doumee.dao.business.model.PlatformWarnEvent; import com.doumee.service.business.PlatformWarnEventService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.List; /** * @author æ±è¹è¹ * @date 2024/09/25 09:41 */ @Api(tags = "æå°é¢è¦ä¿¡æ¯") @RestController @RequestMapping("/business/platformWarnEvent") public class PlatformWarnEventCloudController extends BaseController { @Autowired private PlatformWarnEventService platformWarnEventService; @PreventRepeat @ApiOperation("æ°å»º") @PostMapping("/create") @RequiresPermissions("business:platformwarnevent:create") public ApiResponse create(@RequestBody PlatformWarnEvent platformWarnEvent) { return ApiResponse.success(platformWarnEventService.create(platformWarnEvent)); } @ApiOperation("æ ¹æ®IDå é¤") @GetMapping("/delete/{id}") @RequiresPermissions("business:platformwarnevent:delete") public ApiResponse deleteById(@PathVariable Integer id) { platformWarnEventService.deleteById(id); return ApiResponse.success(null); } @ApiOperation("æ¹éå é¤") @GetMapping("/delete/batch") @RequiresPermissions("business:platformwarnevent:delete") public ApiResponse deleteByIdInBatch(@RequestParam String ids) { String [] idArray = ids.split(","); List<Integer> idList = new ArrayList<>(); for (String id : idArray) { idList.add(Integer.valueOf(id)); } platformWarnEventService.deleteByIdInBatch(idList); return ApiResponse.success(null); } @ApiOperation("æ ¹æ®IDä¿®æ¹") @PostMapping("/updateById") @RequiresPermissions("business:platformwarnevent:update") public ApiResponse updateById(@RequestBody PlatformWarnEvent platformWarnEvent) { platformWarnEventService.updateById(platformWarnEvent); return ApiResponse.success(null); } @ApiOperation("å页æ¥è¯¢") @PostMapping("/page") @RequiresPermissions("business:platformwarnevent:query") public ApiResponse<PageData<PlatformWarnEvent>> findPage (@RequestBody PageWrap<PlatformWarnEvent> pageWrap) { return ApiResponse.success(platformWarnEventService.findPage(pageWrap)); } @ApiOperation("导åºExcel") @PostMapping("/exportExcel") @RequiresPermissions("business:platformwarnevent:exportExcel") public void exportExcel (@RequestBody PageWrap<PlatformWarnEvent> pageWrap, HttpServletResponse response) { ExcelExporter.build(PlatformWarnEvent.class).export(platformWarnEventService.findPage(pageWrap).getRecords(), "æå°é¢è¦ä¿¡æ¯", response); } @ApiOperation("æ ¹æ®IDæ¥è¯¢") @GetMapping("/{id}") @RequiresPermissions("business:platformwarnevent:query") public ApiResponse findById(@PathVariable Integer id) { return ApiResponse.success(platformWarnEventService.findById(id)); } } server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/admin/PlatformWmsJobCloudController.java
@@ -84,8 +84,7 @@ @ApiOperation("æ ¹æ®IDæ¥è¯¢") @GetMapping("/{id}") @RequiresPermissions("business:platformwmsjob:query") public ApiResponse findById(@PathVariable Integer id) { return ApiResponse.success(platformWmsJobService.findById(id)); public ApiResponse<PlatformWmsJob> findById(@PathVariable Integer id,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { return ApiResponse.success(platformWmsJobService.findByDetailId(id)); } } server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/DriverPlatformController.java
@@ -56,6 +56,9 @@ @Autowired private PlatformReasonService platformReasonService; @Autowired private PlatformWmsJobService platformWmsJobService; @ApiOperation("å ¥ååå ") @@ -149,4 +152,12 @@ return ApiResponse.success(platformJobService.lineUpDetail(lineUpDetailDTO)); } @ApiOperation("WMSè¿è¾å详æ ") @GetMapping("/wmsJobDetail") public ApiResponse<PlatformWmsJob> wmsJobDetail(@RequestParam Integer id) { return ApiResponse.success(platformWmsJobService.findByDetailId(id)); } } server/visits/dmvisit_admin/src/main/java/com/doumee/cloud/web/PdaPlatformController.java
@@ -55,6 +55,9 @@ @Autowired private PlatformService platformService; @Autowired private PlatformWmsJobService platformWmsJobService; @ApiOperation("è·åæå°ç»ä¿¡æ¯") @PostMapping("/getPlatformGroupList") public ApiResponse<List<PlatformGroup>> getPlatformGroupList (@RequestBody PlatformDataDTO platformDataDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token){ @@ -100,7 +103,8 @@ @PostMapping("/platformInPark") public ApiResponse platformInPark (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.platformInPark(jobOperateDTO); PlatformJob platformJob = platformJobService.platformInPark(jobOperateDTO); platformJobService.sendInPark(platformJob); return ApiResponse.success("æä½æå"); } @@ -108,7 +112,11 @@ @PostMapping("/platformCallNumber") public ApiResponse platformCallNumber (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.platformCallNumber(jobOperateDTO); PlatformJob oldPlatformJob = platformJobService.findById(jobOperateDTO.getJobId()); PlatformJob platformJob = platformJobService.platformCallNumber(jobOperateDTO); if(Constants.equalsInteger(oldPlatformJob.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.getKey())){ platformJobService.sendInPark(platformJob); } return ApiResponse.success("æä½æå"); } @@ -141,7 +149,8 @@ @PostMapping("/beginWork") public ApiResponse beginWork (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.beginWork(jobOperateDTO); PlatformJob platformJob = platformJobService.beginWork(jobOperateDTO); platformJobService.cancelInPark(platformJob); return ApiResponse.success("æä½æå"); } @@ -150,9 +159,18 @@ @PostMapping("/finishWork") public ApiResponse finishWork (@RequestBody JobOperateDTO jobOperateDTO, @RequestHeader(Constants.HEADER_USER_TOKEN) String token) { jobOperateDTO.setLoginUserInfo(getLoginUser(token)); platformJobService.finishWork(jobOperateDTO); PlatformJob platformJob = platformJobService.finishWork(jobOperateDTO); //ä¸å离åæé platformJobService.sendInPark(platformJob); return ApiResponse.success("æä½æå"); } @ApiOperation("WMSè¿è¾å详æ ") @GetMapping("/wmsJobDetail") public ApiResponse<PlatformWmsJob> wmsJobDetail(@RequestParam Integer id) { return ApiResponse.success(platformWmsJobService.findByDetailId(id)); } } server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/model/HKConstants.java
@@ -32,12 +32,19 @@ * 2ãç©ä¸åå¤ï¼wyhq * 3ãè¡æ¿åå ¬ï¼xzbg * 4ãè¿è¥ä¸å¿ï¼yyzx * * 1ãå®é²ä¸å¿ï¼afzx * 2ãæ¶æ§ä¸å¿ï¼xkzx * 3ãè½ç®¡ä¸å¿ï¼ngzx */ public interface MenuPageId{ String zhaf = "zhaf";//综åå®é² String wyhq = "wyhq";//ç©ä¸åå¤ String xzbg = "xzbg";//è¡æ¿åå ¬ String yyzx = "yyzx";//è¿è¥ä¸å¿ String afzx = "afzx";//å®é²ä¸å¿ String zhaf = "zhaf";//æ¶æ§ä¸å¿ String ngzx = "ngzx";//è½ç®¡ä¸å¿ String wyhq = "wyhq";//ç©ä¸åå¤ String xkzx = "xkzx";//综åå®é² String xzbg = "xzbg";//è¡æ¿åå ¬ String yyzx = "yyzx";//è¿è¥ä¸å¿ } server/visits/dmvisit_service/src/main/java/com/doumee/core/haikang/service/HKService.java
@@ -387,7 +387,7 @@ public static BaseResponse parkReservationDeletion(ParkReservationDelRequest param){ log.info("ãæµ·åº·è½¦ä½åæ¶é¢çº¦ã================å¼å§===="+JSONObject.toJSONString(param)); try { String res = HKTools.carChargeDeletion(JSONObject.toJSONString(param)); String res = HKTools.parkDeletion(JSONObject.toJSONString(param)); TypeReference typeReference = new TypeReference< BaseResponse>(){}; BaseResponse result = JSONObject.parseObject(res, typeReference.getType()); server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/PlatformWarnEventMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,12 @@ package com.doumee.dao.business; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.doumee.dao.business.model.PlatformWarnEvent; /** * @author æ±è¹è¹ * @date 2024/09/25 09:41 */ public interface PlatformWarnEventMapper extends BaseMapper<PlatformWarnEvent> { } server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/Platform.java
@@ -12,6 +12,8 @@ import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; import org.springframework.format.annotation.DateTimeFormat; import java.util.Date; import java.math.BigDecimal; import java.util.List; @@ -187,7 +189,33 @@ @TableField(exist = false) private String workCarCode; @ApiModelProperty(value = "å¼å§æ¶é´ yyyy-MM-dd", example = "1") @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") @TableField(exist = false) private Date queryDateStart; @ApiModelProperty(value = "ç»ææ¶é´ yyyy-MM-dd", example = "1") @DateTimeFormat(pattern = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") @TableField(exist = false) private Date queryDateEnd; @ApiModelProperty(value = "åé æ¬¡æ°", example = "1") @TableField(exist = false) private Integer stopCount; @ApiModelProperty(value = "工使¶é¿ åä½h", example = "1") @TableField(exist = false) private BigDecimal workCountTime; @ApiModelProperty(value = "æå°å·¥ä½å¼æ¾æ¶é¿" ,hidden = true) @TableField(exist = false) private BigDecimal openTime ; @ApiModelProperty(value = "使ç¨ç", example = "1") @TableField(exist = false) private BigDecimal useRata; @ApiModelProperty(value = "æå°ä½ä¸æ°æ®") @TableField(exist = false) server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformJob.java
@@ -355,14 +355,33 @@ @TableField(exist = false) private Integer jobType; @ApiModelProperty(value = "å¼å§ä»»å¡æ¶é´èµ·") @ApiModelProperty(value = "å¼å§ä½ä¸æ¶é´èµ·") @TableField(exist = false) private Date beginWorkDateStart; @ApiModelProperty(value = "å¼å§ä»»å¡æ¶é´æ¢") @ApiModelProperty(value = "å¼å§ä½ä¸æ¶é´æ¢") @TableField(exist = false) private Date beginWorkDateEnd; @ApiModelProperty(value = "å建æ¶é´èµ·") @TableField(exist = false) private Date createDateStart; @ApiModelProperty(value = "å建æ¶é´æ¢") @TableField(exist = false) private Date createDateEnd; @ApiModelProperty(value = "æå°ç»åç§°") @TableField(exist = false) private String platformGroupName ; @ApiModelProperty(value = "æå°å·¥ä½æ¶é¿" ,hidden = true) @TableField(exist = false) private BigDecimal workTimes ; @ApiModelProperty(value = "å¤ç¶ææ¥è¯¢ å¤ä¸ªä»¥,åå²") @TableField(exist = false) private String queryStatus; server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformWarnEvent.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,75 @@ package com.doumee.dao.business.model; import com.doumee.core.annotation.excel.ExcelColumn; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; import java.util.Date; /** * æå°é¢è¦ä¿¡æ¯ * @author æ±è¹è¹ * @date 2024/09/25 09:41 */ @Data @ApiModel("æå°é¢è¦ä¿¡æ¯") @TableName("`platform_warn_event`") public class PlatformWarnEvent { @ApiModelProperty(value = "主é®", example = "1") @ExcelColumn(name="主é®") private Integer id; @ApiModelProperty(value = "å建人ç¼ç ", example = "1") @ExcelColumn(name="å建人ç¼ç ") private Integer creator; @ApiModelProperty(value = "å建æ¶é´") @ExcelColumn(name="å建æ¶é´") @JsonFormat(pattern = "yyyy-MM-dd") private Date createDate; @ApiModelProperty(value = "æ´æ°äººç¼ç ", example = "1") @ExcelColumn(name="æ´æ°äººç¼ç ") private Integer editor; @ApiModelProperty(value = "æ´æ°æ¶é´") @ExcelColumn(name="æ´æ°æ¶é´") @JsonFormat(pattern = "yyyy-MM-dd") private Date editDate; @ApiModelProperty(value = "æ¯å¦å é¤0å¦ 1æ¯", example = "1") @ExcelColumn(name="æ¯å¦å é¤0å¦ 1æ¯") private Integer isdeleted; @ApiModelProperty(value = "夿³¨") @ExcelColumn(name="夿³¨") private String remark; @ApiModelProperty(value = "æå°ä¸»é®", example = "1") @ExcelColumn(name="æå°ä¸»é®") private Integer platformId; @ApiModelProperty(value = "é¢è¦æ é¢") @ExcelColumn(name="é¢è¦æ é¢") private String title; @ApiModelProperty(value = "车çå·") @ExcelColumn(name="车çå·") private String carCode; @ApiModelProperty(value = "äºä»¶å 容") @ExcelColumn(name="äºä»¶å 容") private String eventContent; @ApiModelProperty(value = "ä»»å¡ä¸»é®", example = "1") @ExcelColumn(name="ä»»å¡ä¸»é®") private Integer platformJobId; @ApiModelProperty(value = "é¢è¦ç±»å 0 = ä½ä¸è¶ æ¶ ï¼1=åé é误", example = "1") @ExcelColumn(name="é¢è¦ç±»å 0 = ä½ä¸è¶ æ¶ ï¼1=åé é误") private Integer eventType; } server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/PlatformWmsJob.java
@@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.doumee.core.annotation.excel.ExcelColumn; import com.doumee.dao.business.vo.WmsJobContractVO; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import com.baomidou.mybatisplus.annotation.IdType; @@ -9,6 +10,8 @@ import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; import com.fasterxml.jackson.annotation.JsonFormat; import java.math.BigDecimal; import java.util.Date; import java.util.List; @@ -109,11 +112,21 @@ @ApiModelProperty(value = "ååå·`") @ExcelColumn(name="ååå·`") private String contractNum; @ApiModelProperty(value = "æ¯å¦æ°æ°æ®`") @TableField(exist = false) private int isNew; @ApiModelProperty(value = "æ»æ°é") @TableField(exist = false) private BigDecimal ioQty; @ApiModelProperty(value = "æå°_WMSä½ä¸éç¥åæç»") @TableField(exist = false) private List<PlatformWmsDetail> platformWmsDetailList; @ApiModelProperty(value = "ååå表") @TableField(exist = false) private List<WmsJobContractVO> wmsJobContractVOList; } server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/model/VisitPark.java
@@ -67,12 +67,12 @@ @ExcelColumn(name="车çå·") private String carCode; @ApiModelProperty(value = "海康æ è¯", example = "1") @ApiModelProperty(value = "海康æ è¯ é¢çº¦æ è¯ reserveOrderNo", example = "1") @ExcelColumn(name="海康æ è¯") private Integer hkId; private String hkId; @ApiModelProperty(value = "æµ·åº·åæ¥ç¶æ 0æªåæ¥ 1已忥 2åæ¥å¤±è´¥", example = "1") @ExcelColumn(name="æµ·åº·åæ¥ç¶æ 0æªåæ¥ 1已忥 2åæ¥å¤±è´¥") @ApiModelProperty(value = "æµ·åº·åæ¥ç¶æ 0æªåæ¥ 1已忥 2åæ¥å¤±è´¥ 3已忶", example = "1") @ExcelColumn(name="æµ·åº·åæ¥ç¶æ 0æªåæ¥ 1已忥 2åæ¥å¤±è´¥ 3已忶") private Integer hkStatus; @ApiModelProperty(value = "海康æè¿åæ¥æ¶é´") @@ -91,6 +91,10 @@ @ExcelColumn(name="åè½¦åºæµ·åº·ç¼ç ") private String parkHkId; @ApiModelProperty(value = "ä¸å¡ç±»åï¼0=访客æ¥å¤ï¼1=æå°ç©æµè½¦", example = "1") @ExcelColumn(name="ä¸å¡ç±»åï¼0=访客æ¥å¤ï¼1=æå°ç©æµè½¦") private Integer objType; @ApiModelProperty(value = "å车åºåç§°", example = "1") @TableField(exist = false) private String parksName; server/visits/dmvisit_service/src/main/java/com/doumee/dao/business/vo/WmsJobContractVO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,29 @@ package com.doumee.dao.business.vo; import com.doumee.dao.business.model.Approve; import com.doumee.dao.business.model.Platform; import com.doumee.dao.business.model.PlatformWmsDetail; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.List; /** * Created by IntelliJ IDEA. * * @Author : Rk * @create 2024/5/23 14:56 */ @Data public class WmsJobContractVO { @ApiModelProperty(value = "ååå·") private String contractCode; @ApiModelProperty(value = "æ¶è´§å°") private String address; @ApiModelProperty(value = "æç»ä¿¡æ¯") private List<PlatformWmsDetail> platformWmsDetailList; } server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformDataInfoResponse.java
@@ -32,5 +32,7 @@ private String repertotyAddress; @ApiModelProperty(value = "æ¥æºå°ï¼ä¾åºåå¤ä¸ªï¼") private List<String> inRepertotyCode; @ApiModelProperty(value = "æ¶è´§ä¿¡æ¯") private List<PlatformDataWmsInfoResponse> platformDataWmsInfoResponseList; } server/visits/dmvisit_service/src/main/java/com/doumee/dao/openapi/response/PlatformDataWmsInfoResponse.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,24 @@ package com.doumee.dao.openapi.response; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.math.BigDecimal; import java.util.List; /** * Created by IntelliJ IDEA. * * @Author : Rk * @create 2023/12/7 11:19 */ @Data @ApiModel("ãæå°ãæå°å½åä½ä¸ä¿¡æ¯WMS详æ è¿ååæ°") public class PlatformDataWmsInfoResponse { @ApiModelProperty(value = "è®¡åæ¶è´§æ°é", example = "1") private BigDecimal ioQty; @ApiModelProperty(value = "ç©æåç§°", example = "1") private String materialName; } server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/JobOperateDTO.java
@@ -24,6 +24,9 @@ @ApiModelProperty(value = "å车çå· èªå¨å¼å§ä»»å¡ä½¿ç¨") private String carCodeBack; @ApiModelProperty(value = "夿³¨") private String remark; @ApiModelProperty(value = "æå°ç¸æºä¸»é® èªå¨å¼å§ä»»å¡ä½¿ç¨") private Integer deviceId; server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/reqeust/SavePlatformWarnEventDTO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,32 @@ package com.doumee.dao.web.reqeust; import com.baomidou.mybatisplus.annotation.TableName; import com.doumee.core.annotation.excel.ExcelColumn; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; /** * æå°é¢è¦ä¿¡æ¯ * @author æ±è¹è¹ * @date 2024/09/25 09:41 */ @Data public class SavePlatformWarnEventDTO { @ApiModelProperty(value = "æå°ä¸»é®", example = "1") private Integer platformId; @ApiModelProperty(value = "车çå·") private String carCode; @ApiModelProperty(value = "ä»»å¡ä¸»é®", example = "1") private Integer platformJobId; @ApiModelProperty(value = "é¢è¦ç±»å 0 = ä½ä¸è¶ æ¶ ï¼1=åé é误", example = "1") private Integer eventType; } server/visits/dmvisit_service/src/main/java/com/doumee/dao/web/response/PlatformWorkVO.java
@@ -22,7 +22,7 @@ @ApiModelProperty(value = "å·²å«å·æ°é") private Integer callNum = 0; @ApiModelProperty(value = "çå¾ æ°é") @ApiModelProperty(value = "çå¾ æ°é 转移 + æå°ç»ä¸ å·²ç¾å°æ°æ®") private Integer waitNum = 0; @ApiModelProperty(value = "å¼å¸¸æ°é") server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformJobService.java
@@ -137,13 +137,25 @@ * éç¥å ¥å * @param jobOperateDTO */ void platformInPark(JobOperateDTO jobOperateDTO); PlatformJob platformInPark(JobOperateDTO jobOperateDTO); /** * ä¸åå ¥åæé * @param platformJob */ void sendInPark(PlatformJob platformJob); /** * åæ¶å ¥åæé * @param platformJob */ void cancelInPark(PlatformJob platformJob); /** * æå°å«å· * @param jobOperateDTO */ void platformCallNumber(JobOperateDTO jobOperateDTO); PlatformJob platformCallNumber(JobOperateDTO jobOperateDTO); /** * 转移æå° @@ -167,7 +179,7 @@ * æå¨å¼å§ä½ä¸ * @param jobOperateDTO */ void beginWork(JobOperateDTO jobOperateDTO); PlatformJob beginWork(JobOperateDTO jobOperateDTO); /** * æå°ç¸æº å¼å§ä½ä¸ @@ -179,7 +191,7 @@ * 宿ä½ä¸ * @param jobOperateDTO */ void finishWork(JobOperateDTO jobOperateDTO); PlatformJob finishWork(JobOperateDTO jobOperateDTO); /** * æå¨ææè½¦è¾ç¦»åº server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformService.java
@@ -104,4 +104,5 @@ List<PlatformStatusListResponse> getPlatformStatusList(); List<Platform> platformWorkReportList(Platform platform); } server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformWarnEventService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,101 @@ package com.doumee.service.business; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.dao.business.model.PlatformWarnEvent; import com.doumee.dao.web.reqeust.SavePlatformWarnEventDTO; import java.util.List; /** * æå°é¢è¦ä¿¡æ¯Serviceå®ä¹ * @author æ±è¹è¹ * @date 2024/09/25 09:41 */ public interface PlatformWarnEventService { /** * å建 * * @param platformWarnEvent å®ä½å¯¹è±¡ * @return Integer */ Integer create(PlatformWarnEvent platformWarnEvent); /** * 主é®å é¤ * * @param id ä¸»é® */ void deleteById(Integer id); /** * å é¤ * * @param platformWarnEvent å®ä½å¯¹è±¡ */ void delete(PlatformWarnEvent platformWarnEvent); /** * æ¹é主é®å é¤ * * @param ids 主é®é */ void deleteByIdInBatch(List<Integer> ids); /** * 䏻鮿´æ° * * @param platformWarnEvent å®ä½å¯¹è±¡ */ void updateById(PlatformWarnEvent platformWarnEvent); /** * æ¹é䏻鮿´æ° * * @param platformWarnEvents å®ä½é */ void updateByIdInBatch(List<PlatformWarnEvent> platformWarnEvents); /** * 䏻鮿¥è¯¢ * * @param id ä¸»é® * @return PlatformWarnEvent */ PlatformWarnEvent findById(Integer id); /** * æ¡ä»¶æ¥è¯¢åæ¡è®°å½ * * @param platformWarnEvent å®ä½å¯¹è±¡ * @return PlatformWarnEvent */ PlatformWarnEvent findOne(PlatformWarnEvent platformWarnEvent); /** * æ¡ä»¶æ¥è¯¢ * * @param platformWarnEvent å®ä½å¯¹è±¡ * @return List<PlatformWarnEvent> */ List<PlatformWarnEvent> findList(PlatformWarnEvent platformWarnEvent); /** * å页æ¥è¯¢ * * @param pageWrap å页对象 * @return PageData<PlatformWarnEvent> */ PageData<PlatformWarnEvent> findPage(PageWrap<PlatformWarnEvent> pageWrap); /** * æ¡ä»¶ç»è®¡ * * @param platformWarnEvent å®ä½å¯¹è±¡ * @return long */ long count(PlatformWarnEvent platformWarnEvent); void savePlatformWarnEvent(SavePlatformWarnEventDTO savePlatformWarnEventDTO); } server/visits/dmvisit_service/src/main/java/com/doumee/service/business/PlatformWmsJobService.java
@@ -94,4 +94,7 @@ * @return long */ long count(PlatformWmsJob platformWmsJob); PlatformWmsJob findByDetailId(Integer id); } server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/ApproveServiceImpl.java
@@ -7,6 +7,8 @@ import com.doumee.core.haikang.model.HKConstants; import com.doumee.core.haikang.model.param.BaseResponse; import com.doumee.core.haikang.model.param.request.CarChargeAddRequest; import com.doumee.core.haikang.model.param.request.ParkReservationAddRequest; import com.doumee.core.haikang.model.param.respose.ParkReservationAddResponse; import com.doumee.core.haikang.service.HKService; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; @@ -1467,16 +1469,24 @@ visitPark.setStartTime(visits.getStarttime()); visitPark.setEndTime(visits.getEndtime()); visitPark.setParkHkId(parks.getHkId()); visitPark.setObjType(Constants.ZERO); CarChargeAddRequest param = new CarChargeAddRequest(); param.setPlateNo(visitPark.getCarCode()); param.setParkSyscode(visitPark.getParkHkId()); param.setStartTime(Objects.isNull(visitPark.getStartTime())?DateUtil.getDate(new Date(),"yyyy-MM-dd"):DateUtil.getShortTimeToNull(visitPark.getStartTime())); param.setEndTime(Objects.isNull(visitPark.getEndTime())?"2999-12-31":DateUtil.getShortTimeToNull(visitPark.getEndTime())); BaseResponse response = HKService.carChargeAddtion(param); ParkReservationAddRequest request = new ParkReservationAddRequest(); request.setPlateNo(visitPark.getCarCode()); request.setParkSyscode(visitPark.getParkHkId()); request.setPhoneNo(visits.getPhone()); request.setOwner(visits.getName()); request.setAllowTimes(Constants.ONE+""); request.setIsCharge(Constants.ONE+""); request.setStartTime(Objects.isNull(visitPark.getStartTime())?DateUtil.getISO8601Timestamp2(new Date()):DateUtil.getISO8601Timestamp2(visitPark.getStartTime())); request.setEndTime(Objects.isNull(visitPark.getEndTime())?"2999-12-31T00:00:00+08:00":DateUtil.getISO8601Timestamp2(visitPark.getEndTime())); BaseResponse response = HKService.parkReservationAddition(request); visitPark.setHkDate(new Date()); if(response!=null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){ ParkReservationAddResponse parkReservationAddResponse = (ParkReservationAddResponse) response.getData(); visitPark.setHkId(parkReservationAddResponse.getReserveOrderNo()); visitPark.setHkStatus(Constants.ONE); visitPark.setRemark("å ææå"); }else{ @@ -1486,6 +1496,7 @@ sendStatus = false; } parkBookList.add(visitPark); } visitParkMapper.insert(parkBookList); } server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformGroupServiceImpl.java
@@ -261,7 +261,9 @@ Constants.PlatformJobStatus.CALLED.getKey(), Constants.PlatformJobStatus.WORKING.getKey(), Constants.PlatformJobStatus.EXCEPTION.getKey(), Constants.PlatformJobStatus.OVER_NUMBER.getKey() Constants.PlatformJobStatus.OVER_NUMBER.getKey(), Constants.PlatformJobStatus.TRANSFERING.getKey() ) // .like(PlatformJob::getArriveDate,DateUtil.getCurrDate()) .orderByDesc(PlatformJob::getCreateDate) @@ -282,7 +284,8 @@ 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()); List<PlatformJob> platformJobs = platformJobList.stream().filter(i->Constants.equalsInteger(i.getPlatformId(),platformId) && !Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.getKey())).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() @@ -291,7 +294,11 @@ 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() platformJobs.stream().filter(i->Constants.equalsInteger(i.getStatus(),Constants.PlatformJobStatus.TRANSFERING.getKey()) ).collect(Collectors.toList()).size() + platformJobList.stream().filter(i->Constants.equalsInteger(platformId,i.getPlatformId()) && 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() server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformJobServiceImpl.java
@@ -4,6 +4,13 @@ import com.doumee.biz.system.SystemDictDataBiz; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.haikang.model.HKConstants; import com.doumee.core.haikang.model.param.BaseResponse; import com.doumee.core.haikang.model.param.request.CarChargeAddRequest; import com.doumee.core.haikang.model.param.request.ParkReservationAddRequest; import com.doumee.core.haikang.model.param.request.ParkReservationDelRequest; import com.doumee.core.haikang.model.param.respose.ParkReservationAddResponse; import com.doumee.core.haikang.service.HKService; import com.doumee.core.model.LoginUserInfo; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; @@ -83,6 +90,12 @@ @Autowired private PlatformShowParamMapper platformShowParamMapper; @Autowired private ParksMapper parksMapper; @Autowired private VisitParkMapper visitParkMapper; @Override public Integer create(PlatformJob platformJob) { @@ -158,10 +171,12 @@ queryWrapper .selectAll(PlatformJob.class) .selectAs(Platform::getName,PlatformJob::getPlatformName) .selectAs(PlatformGroup::getName,PlatformJob::getPlatformGroupName) .selectAs(Platform::getWorkRate,PlatformJob::getWorkRate) .selectAs(PlatformWmsJob::getCarrierName,PlatformJob::getCarrierName) .selectAs(SystemUser::getUsername,PlatformJob::getOutUserName) .leftJoin(Platform.class,Platform::getId,PlatformJob::getPlatformId) .leftJoin(PlatformGroup.class,PlatformGroup::getId,Platform::getGroupId) .leftJoin(PlatformWmsJob.class,PlatformWmsJob::getCarryBillCode,PlatformJob::getBillCode) .leftJoin(SystemUser.class,SystemUser::getId,PlatformJob::getOutUserId) .eq(pageWrap.getModel().getId() != null, PlatformJob::getId, pageWrap.getModel().getId()) @@ -239,8 +254,11 @@ .eq(pageWrap.getModel().getPlatformGroupId() != null, PlatformJob::getPlatformGroupId, pageWrap.getModel().getPlatformGroupId()) .apply(pageWrap.getModel().getQueryStatus() != null, " find_in_set(t.`STATUS`,'"+pageWrap.getModel().getQueryStatus()+"')") .ge(pageWrap.getModel().getBeginWorkDateStart() != null, PlatformJob::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getBeginWorkDateStart())) .le(pageWrap.getModel().getBeginWorkDateEnd() != null, PlatformJob::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getBeginWorkDateEnd())) .ge(pageWrap.getModel().getBeginWorkDateStart() != null, PlatformJob::getStartDate, Utils.Date.getStart(pageWrap.getModel().getBeginWorkDateStart())) .le(pageWrap.getModel().getBeginWorkDateEnd() != null, PlatformJob::getStartDate, Utils.Date.getEnd(pageWrap.getModel().getBeginWorkDateEnd())) .ge(pageWrap.getModel().getCreateDateStart() != null, PlatformJob::getStartDate, Utils.Date.getStart(pageWrap.getModel().getCreateDateStart())) .le(pageWrap.getModel().getCreateDateEnd() != null, PlatformJob::getStartDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDateEnd())) .eq(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ONE,pageWrap.getModel().getJobType()), PlatformJob::getType, Constants.platformJobType.sgscxh) .ne(pageWrap.getModel().getJobType() != null && Constants.equalsInteger(Constants.ZERO,pageWrap.getModel().getJobType()), PlatformJob::getType, Constants.platformJobType.sgscxh) ; @@ -277,15 +295,31 @@ .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() // .eq(Objects.nonNull(pageWrap.getModel().getCallType()) // &&Constants.equalsInteger(pageWrap.getModel().getCallType(),Constants.ONE), // PlatformJob::getStatus,Constants.PlatformJobStatus.WAIT_CALL.getKey() // ) .apply(Objects.nonNull(pageWrap.getModel().getCallType()) &&Constants.equalsInteger(pageWrap.getModel().getCallType(),Constants.ONE), " ( " + " ( t.`STATUS` = "+Constants.PlatformJobStatus.WAIT_CALL.getKey()+" and t.PLATFORM_GROUP_ID = ( SELECT p.group_id FROM platform p WHERE p.id = "+pageWrap.getModel().getPlatformId()+" LIMIT 1 ) )" + ") " ) .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()+" ) ") .apply(Objects.nonNull(pageWrap.getModel().getCallType()) &&Constants.equalsInteger(pageWrap.getModel().getCallType(),Constants.TWO), " ( " + " ( t.`STATUS` = "+Constants.PlatformJobStatus.WAIT_CALL.getKey()+" and t.PLATFORM_GROUP_ID = ( SELECT p.group_id FROM platform p WHERE p.id = "+pageWrap.getModel().getPlatformId()+" LIMIT 1 ) )" + " or " + " (t.`STATUS` = "+Constants.PlatformJobStatus.IN_WAIT.getKey()+" and t.PLATFORM_ID = "+pageWrap.getModel().getPlatformId()+" )" + " or " + " (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() @@ -356,7 +390,7 @@ //计ç®é¢è®¡çå¾ æ¶é´ 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 ){ 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; @@ -510,6 +544,8 @@ ){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"ä¸å¡ç¶æå·²æµè½¬ï¼è¯·å·æ°æ¥ç"); } platformJob.setArriveDate(Objects.isNull(platformJob.getArriveDate())?new Date():null); platformJob.setConfirmTaskDate(Objects.isNull(platformJob.getConfirmTaskDate())?new Date():null); }else{ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"ç¾å°ç±»åé误"); } @@ -705,9 +741,10 @@ */ @Override @Transactional(rollbackFor = {Exception.class,BusinessException.class}) public void platformInPark(JobOperateDTO jobOperateDTO){ public PlatformJob platformInPark(JobOperateDTO jobOperateDTO){ if(Objects.isNull(jobOperateDTO) || Objects.isNull(jobOperateDTO.getJobId())){ || Objects.isNull(jobOperateDTO.getJobId()) || Objects.isNull(jobOperateDTO.getPlatformId())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); } PlatformJob platformJob = platformJobMapper.selectById(jobOperateDTO.getJobId()); @@ -717,26 +754,136 @@ if(!Constants.equalsInteger(platformJob.getStatus(),Constants.PlatformJobStatus.WAIT_CALL.getKey())){ throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"对ä¸èµ·,ä¸å¡ç¶æå·²æµè½¬ï¼"); } Platform platform = platformJoinMapper.selectById(jobOperateDTO.getPlatformId()); if(Objects.isNull(platform)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"æªæ¥è¯¢å°æå°ä¿¡æ¯"); } //夿æ¯å¦éè¦å¡«å è¿å» if(StringUtils.isBlank(platformJob.getPlatforms())){ platformJob.setPlatforms(jobOperateDTO.getPlatformId().toString()); platformJob.setPlatformNames(platform.getName()); }else{ if(!Constants.equalsInteger(platform.getId(),platformJob.getPlatformId())){ platformJob.setPlatforms(platformJob.getPlatforms() + "," +jobOperateDTO.getPlatformId().toString()); platformJob.setPlatformNames(platformJob.getPlatformNames() + "," +platform.getName()); } } PlatformJob oldPlatformJob = new PlatformJob(); BeanUtils.copyProperties(platformJob,oldPlatformJob); platformJob.setPlatformId(platform.getId()); platformJob.setInwaitDate(new Date()); platformJob.setInwaitUserId(jobOperateDTO.getLoginUserInfo().getId()); platformJob.setStatus(Constants.PlatformJobStatus.IN_WAIT.getKey()); platformJob.setEditDate(new Date()); platformJobMapper.updateById(platformJob); if(Constants.equalsInteger(platformJob.getType(),Constants.TWO) || Constants.equalsInteger(platformJob.getType(),Constants.THREE) || Constants.equalsInteger(platformJob.getType(),Constants.FOUR)){ //TODO ä¸åå ¥åæé } //å卿使¥å¿ savePlatformLog(Constants.PlatformJobLogType.IN_WAIT.getKey(),oldPlatformJob,platformJob, Constants.PlatformJobLogType.IN_WAIT.getInfo()); return platformJob; } @Override public void sendInPark(PlatformJob platformJob){ if(Constants.equalsInteger(platformJob.getType(),Constants.TWO) || Constants.equalsInteger(platformJob.getType(),Constants.THREE) || Constants.equalsInteger(platformJob.getType(),Constants.FOUR)){ //æ¥è¯¢å½åå¯ç¨çåè½¦åº List<Parks> parksList = parksMapper.selectList(new QueryWrapper<Parks>() .lambda() .isNotNull(Parks::getHkId) .eq(Parks::getIsdeleted,Constants.ZERO)); List<VisitPark> visitParkList = new ArrayList<>(); if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(parksList)){ Boolean sendStatus = true; if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(parksList)){ for (Parks parks:parksList) { VisitPark visitPark = new VisitPark(); visitPark.setIsdeleted(Constants.ZERO); visitPark.setCreateDate(new Date()); visitPark.setVisitApplyId(platformJob.getId().toString()); visitPark.setCarCode(platformJob.getCarCodeFront()); visitPark.setParkId(parks.getId().toString()); visitPark.setStartTime(new Date()); visitPark.setEndTime(DateUtil.getXMinuteAfterDate(visitPark.getStartTime(),Integer.valueOf(systemDictDataBiz.queryByCode(Constants.PLATFORM,Constants.POWER_MINUTE).getCode()))); visitPark.setParkHkId(parks.getHkId()); visitPark.setObjType(Constants.ONE); ParkReservationAddRequest request = new ParkReservationAddRequest(); request.setPlateNo(visitPark.getCarCode()); request.setParkSyscode(visitPark.getParkHkId()); request.setPhoneNo(platformJob.getDrivierPhone()); request.setOwner(platformJob.getDriverName()); request.setAllowTimes(Constants.ONE+""); request.setIsCharge(Constants.ONE+""); request.setStartTime(Objects.isNull(visitPark.getStartTime())?DateUtil.getISO8601Timestamp2(new Date()):DateUtil.getISO8601Timestamp2(visitPark.getStartTime())); request.setEndTime(Objects.isNull(visitPark.getEndTime())?"2999-12-31T00:00:00+08:00":DateUtil.getISO8601Timestamp2(visitPark.getEndTime())); BaseResponse response = HKService.parkReservationAddition(request); visitPark.setHkDate(new Date()); if(response!=null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){ ParkReservationAddResponse parkReservationAddResponse = (ParkReservationAddResponse) response.getData(); visitPark.setHkId(parkReservationAddResponse.getReserveOrderNo()); visitPark.setHkStatus(Constants.ONE); visitPark.setRemark("å ææå"); }else{ visitPark.setHkStatus(Constants.TWO); visitPark.setRemark("å æå¤±è´¥~"); //ä¸å失败 æ 记主ä¸å¡ç¶æä¸ºä¸å失败 sendStatus = false; } visitParkList.add(visitPark); } visitParkMapper.insert(visitParkList); platformJob.setInHkdate(new Date()); if(sendStatus){ platformJob.setInHkstatus(Constants.TWO); }else{ platformJob.setInHkstatus(Constants.THREE); } platformJobMapper.updateById(platformJob); } } } } @Override public void cancelInPark(PlatformJob platformJob){ if(Constants.equalsInteger(platformJob.getType(),Constants.TWO) || Constants.equalsInteger(platformJob.getType(),Constants.THREE) || Constants.equalsInteger(platformJob.getType(),Constants.FOUR)){ List<VisitPark> visitParkList = visitParkMapper.selectList(new QueryWrapper<VisitPark>().lambda() .eq(VisitPark::getVisitApplyId,platformJob.getId()) .eq(VisitPark::getObjType,Constants.ONE) .eq(VisitPark::getHkStatus,Constants.ONE) .isNotNull(VisitPark::getHkId) .apply(" END_TIME > now() ") ); if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(visitParkList)){ for (VisitPark visitPark:visitParkList) { ParkReservationDelRequest param = new ParkReservationDelRequest(); param.setReserveOrderNo(visitPark.getHkId()); BaseResponse response = HKService.parkReservationDeletion(param); if(response!=null && StringUtils.equals(response.getCode(), HKConstants.RESPONSE_SUCCEE)){ visitPark.setHkStatus(Constants.THREE); visitPark.setIsdeleted(Constants.ONE); visitPark.setEditDate(new Date()); visitParkMapper.updateById(visitPark); } } } } } /** @@ -744,7 +891,7 @@ */ @Override @Transactional(rollbackFor = {Exception.class,BusinessException.class}) public void platformCallNumber(JobOperateDTO jobOperateDTO){ public PlatformJob platformCallNumber(JobOperateDTO jobOperateDTO){ if(Objects.isNull(jobOperateDTO) || Objects.isNull(jobOperateDTO.getJobId())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); @@ -764,10 +911,19 @@ if(Objects.isNull(platform)){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"æªæ¥è¯¢å°æå°ä¿¡æ¯"); } //æ¥è¯¢æå°ä»»å¡çå¾ ä½ä¸æ°é if(platformJobMapper.selectCount(new QueryWrapper<PlatformJob>().lambda() .eq(PlatformJob::getPlatformId,platform.getId()) .in(PlatformJob::getStatus,Constants.PlatformJobStatus.CALLED.getKey(),Constants.PlatformJobStatus.WORKING.getKey()) )>platform.getWorkingNum()){ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"è¶ åºæå°å¯åæ¶ä½ä¸æ°é["+platform.getWorkingNum()+"è¾]"); }; PlatformJob oldPlatformJob = new PlatformJob(); BeanUtils.copyProperties(platformJob,oldPlatformJob); platformJob.setCallDate(new Date()); platformJob.setCallDate(Objects.isNull(platformJob.getCallDate())?new Date():null); platformJob.setCallUserId(jobOperateDTO.getLoginUserInfo().getId()); platformJob.setStatus(Constants.PlatformJobStatus.CALLED.getKey()); platformJob.setPlatformId(jobOperateDTO.getPlatformId()); @@ -776,14 +932,17 @@ platformJob.setPlatforms(jobOperateDTO.getPlatformId().toString()); platformJob.setPlatformNames(platform.getName()); }else{ platformJob.setPlatforms(platformJob.getPlatforms() + "," +jobOperateDTO.getPlatformId().toString()); platformJob.setPlatformNames(platformJob.getPlatformNames() + "," +platform.getName()); if(!Constants.equalsInteger(platform.getId(),platformJob.getPlatformId())){ platformJob.setPlatforms(platformJob.getPlatforms() + "," +jobOperateDTO.getPlatformId().toString()); platformJob.setPlatformNames(platformJob.getPlatformNames() + "," +platform.getName()); } } platformJob.setEditDate(new Date()); platformJobMapper.updateById(platformJob); //å卿使¥å¿ savePlatformLog(Constants.PlatformJobLogType.CALLED.getKey(),oldPlatformJob,platformJob, Constants.PlatformJobLogType.CALLED.getInfo().replace("{data}",platform.getName())); return platformJob; } @@ -906,7 +1065,7 @@ */ @Override @Transactional(rollbackFor = {Exception.class,BusinessException.class}) public void beginWork(JobOperateDTO jobOperateDTO){ public PlatformJob beginWork(JobOperateDTO jobOperateDTO){ if(Objects.isNull(jobOperateDTO) || Objects.isNull(jobOperateDTO.getJobId())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); @@ -924,10 +1083,9 @@ throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(),"æªæ¥è¯¢å°æå°ä¿¡æ¯"); } PlatformJob oldPlatformJob = new PlatformJob(); BeanUtils.copyProperties(platformJob,oldPlatformJob); if(Objects.isNull(platformJob.getStartDate())){ platformJob.setStartDate(new Date()); } @@ -938,6 +1096,8 @@ //å卿使¥å¿ savePlatformLog(Constants.PlatformJobLogType.WORKING.getKey(),oldPlatformJob,platformJob, Constants.PlatformJobLogType.WORKING.getInfo().replace("{data}",platform.getName())); return platformJob; } @@ -946,7 +1106,7 @@ */ @Override @Transactional(rollbackFor = {Exception.class,BusinessException.class}) public void finishWork(JobOperateDTO jobOperateDTO){ public PlatformJob finishWork(JobOperateDTO jobOperateDTO){ if(Objects.isNull(jobOperateDTO) || Objects.isNull(jobOperateDTO.getJobId())){ throw new BusinessException(ResponseStatus.BAD_REQUEST); @@ -973,9 +1133,10 @@ //TODO å¤åè½¦è£ è´§ æ¥è¯¢TMS çµåéæ åµ }else if(Constants.equalsInteger(platformJob.getType(),Constants.ONE) || Constants.equalsInteger(platformJob.getType(),Constants.FOUR)){ //TODO å¤å车å¸è´§ æè å¸å ¬å¸è½¦å¸è´§ åæ ¹æ®ä»»å¡æ åµè¿è¡ä¸å离åæé //TODO å¤å车å¸è´§ æè å¸å ¬å¸è½¦å¸è´§ åæ ¹æ®ä»»å¡æ åµ } return platformJob; } @@ -1006,7 +1167,6 @@ //å卿使¥å¿ savePlatformLog(Constants.PlatformJobLogType.AUTHED_LEAVE.getKey(),oldPlatformJob,platformJob , Constants.PlatformJobLogType.AUTHED_LEAVE.getInfo()); //TODO ææè½¦è¾ç¦»åºæé } @@ -1372,7 +1532,16 @@ 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); List<PlatformDataWmsInfoResponse> platformDataWmsInfoResponseList = new ArrayList<>(); for (PlatformWmsDetail platformWmsDetail:platformWmsDetailList) { PlatformDataWmsInfoResponse platformDataWmsInfoResponse = new PlatformDataWmsInfoResponse(); platformDataWmsInfoResponse.setMaterialName(platformWmsDetail.getMaterialName()); platformDataWmsInfoResponse.setIoQty(platformWmsDetail.getIoQty()); platformDataWmsInfoResponseList.add(platformDataWmsInfoResponse); } response.setPlatformDataWmsInfoResponseList(platformDataWmsInfoResponseList); } } } return response; server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformServiceImpl.java
@@ -7,10 +7,13 @@ import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.core.utils.DateUtil; import com.doumee.core.utils.Utils; import com.doumee.dao.business.DeviceMapper; import com.doumee.dao.business.PlatformDeviceMapper; import com.doumee.dao.business.PlatformJobMapper; import com.doumee.dao.business.PlatformMapper; import com.doumee.dao.business.join.PlatformJobJoinMapper; import com.doumee.dao.business.join.PlatformJoinMapper; import com.doumee.dao.business.model.*; import com.doumee.dao.openapi.response.PlatformNumByStatusResponse; @@ -29,6 +32,7 @@ import org.springframework.transaction.annotation.Transactional; import org.springframework.util.CollectionUtils; import java.math.BigDecimal; import java.util.*; import java.util.stream.Collectors; @@ -48,6 +52,8 @@ private PlatformDeviceMapper platformDeviceMapper; @Autowired private DeviceMapper deviceMapper; @Autowired private PlatformJobJoinMapper platformJobJoinMapper; @@ -294,10 +300,66 @@ ); } } } return platformPageData; } @Override public List<Platform> platformWorkReportList(Platform platform) { if(Objects.isNull(platform) || Objects.isNull(platform.getQueryDateStart()) || Objects.isNull(platform.getQueryDateEnd())){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"åæ°é误"); } MPJLambdaWrapper<Platform> queryWrapper = new MPJLambdaWrapper<>(); queryWrapper.selectAll(Platform.class) .selectAs(PlatformGroup::getName,Platform::getGroupName) .select(" (select ifnull(TIMESTAMPDIFF(HOUR, '2023-01-01 '||pg.start_time||':00', '2023-01-01 '||pg.end_time||':00' ),0) from platform_group pg " + " where t.group_id = pg.id ) as openTime ") .leftJoin(PlatformGroup.class,PlatformGroup::getId,Platform::getGroupId); queryWrapper .eq(platform.getGroupId() != null, Platform::getGroupId, platform.getGroupId()) .eq( Platform::getIsdeleted, Constants.ZERO) .like(platform.getName() != null, Platform::getName, platform.getName()) .orderByDesc(Platform::getId); List<Platform> platformList = platformJoinMapper.selectList(queryWrapper); if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformList)){ //æ¥è¯¢æææå°æ°æ®ä¸ç 任塿°æ® 任塿°æ®ä¸º List<PlatformJob> platformJobList = platformJobJoinMapper.selectJoinList(PlatformJob.class, new MPJLambdaWrapper<PlatformJob>() .selectAll(PlatformJob.class) .select(" ( select ROUND( ifnull(SUM(pl.PARAM3),0) / 3600 , 2 ) from platform_log pl where pl.OBJ_ID = t.id " + " ) as workTimes ") .in(PlatformJob::getStatus,Constants.PlatformJobStatus.WORKING.getKey(), Constants.PlatformJobStatus.DONE.getKey(), Constants.PlatformJobStatus.TRANSFERING.getKey(), Constants.PlatformJobStatus.EXCEPTION.getKey(), Constants.PlatformJobStatus.AUTHED_LEAVE.getKey(), Constants.PlatformJobStatus.LEAVED.getKey() ) .in(PlatformJob::getPlatformId,platformList.stream().map(i->i.getId()).collect(Collectors.toList())) .ge(platform.getQueryDateStart() != null, PlatformJob::getStartDate, Utils.Date.getStart(platform.getQueryDateStart())) .le(platform.getQueryDateEnd() != null, PlatformJob::getStartDate, Utils.Date.getEnd(platform.getQueryDateEnd())) ); //æ¥è¯¢2æ¥æç¸å·®å¤©æ° Integer sumDays = DateUtil.daysBetweenDates(platform.getQueryDateEnd(),platform.getQueryDateStart())+1; for (Platform bean:platformList) { List<PlatformJob> beanJobList = platformJobList.stream().filter(i->Constants.equalsInteger(i.getPlatformId(),bean.getId())).collect(Collectors.toList()); bean.setStopCount(beanJobList.size()); bean.setWorkCountTime( beanJobList.stream().map(i->i.getWorkTimes()).reduce(BigDecimal.ZERO,BigDecimal::add) ); if(Objects.isNull(bean.getOpenTime())||bean.getOpenTime().compareTo(BigDecimal.ZERO)<=0){ bean.setUseRata(BigDecimal.ZERO); continue; } BigDecimal sumTime = BigDecimal.valueOf(sumDays).multiply(bean.getOpenTime()); bean.setUseRata( bean.getWorkCountTime().divide(sumTime,BigDecimal.ROUND_HALF_DOWN,2) ); } } return platformList; } @Override @@ -352,17 +414,17 @@ if(Constants.equalsInteger(platform.getPlatformStatus(),Constants.ONE)){ response.setCarCode(platform.getWorkCarCode()); } } } return platformStatusListResponses; } } server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformWarnEventServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,185 @@ package com.doumee.service.business.impl; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; 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.PlatformWarnEventMapper; import com.doumee.dao.business.model.PlatformWarnEvent; import com.doumee.dao.web.reqeust.SavePlatformWarnEventDTO; import com.doumee.service.business.PlatformWarnEventService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.util.Date; import java.util.List; import java.util.Objects; /** * æå°é¢è¦ä¿¡æ¯Serviceå®ç° * @author æ±è¹è¹ * @date 2024/09/25 09:41 */ @Service public class PlatformWarnEventServiceImpl implements PlatformWarnEventService { @Autowired private PlatformWarnEventMapper platformWarnEventMapper; @Override public Integer create(PlatformWarnEvent platformWarnEvent) { platformWarnEventMapper.insert(platformWarnEvent); return platformWarnEvent.getId(); } @Override public void deleteById(Integer id) { platformWarnEventMapper.deleteById(id); } @Override public void delete(PlatformWarnEvent platformWarnEvent) { UpdateWrapper<PlatformWarnEvent> deleteWrapper = new UpdateWrapper<>(platformWarnEvent); platformWarnEventMapper.delete(deleteWrapper); } @Override public void deleteByIdInBatch(List<Integer> ids) { if (CollectionUtils.isEmpty(ids)) { return; } platformWarnEventMapper.deleteBatchIds(ids); } @Override public void updateById(PlatformWarnEvent platformWarnEvent) { platformWarnEventMapper.updateById(platformWarnEvent); } @Override public void updateByIdInBatch(List<PlatformWarnEvent> platformWarnEvents) { if (CollectionUtils.isEmpty(platformWarnEvents)) { return; } for (PlatformWarnEvent platformWarnEvent: platformWarnEvents) { this.updateById(platformWarnEvent); } } @Override public PlatformWarnEvent findById(Integer id) { return platformWarnEventMapper.selectById(id); } @Override public PlatformWarnEvent findOne(PlatformWarnEvent platformWarnEvent) { QueryWrapper<PlatformWarnEvent> wrapper = new QueryWrapper<>(platformWarnEvent); return platformWarnEventMapper.selectOne(wrapper); } @Override public List<PlatformWarnEvent> findList(PlatformWarnEvent platformWarnEvent) { QueryWrapper<PlatformWarnEvent> wrapper = new QueryWrapper<>(platformWarnEvent); return platformWarnEventMapper.selectList(wrapper); } @Override public PageData<PlatformWarnEvent> findPage(PageWrap<PlatformWarnEvent> pageWrap) { IPage<PlatformWarnEvent> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity()); QueryWrapper<PlatformWarnEvent> queryWrapper = new QueryWrapper<>(); Utils.MP.blankToNull(pageWrap.getModel()); if (pageWrap.getModel().getId() != null) { queryWrapper.lambda().eq(PlatformWarnEvent::getId, pageWrap.getModel().getId()); } if (pageWrap.getModel().getCreator() != null) { queryWrapper.lambda().eq(PlatformWarnEvent::getCreator, pageWrap.getModel().getCreator()); } if (pageWrap.getModel().getCreateDate() != null) { queryWrapper.lambda().ge(PlatformWarnEvent::getCreateDate, Utils.Date.getStart(pageWrap.getModel().getCreateDate())); queryWrapper.lambda().le(PlatformWarnEvent::getCreateDate, Utils.Date.getEnd(pageWrap.getModel().getCreateDate())); } if (pageWrap.getModel().getEditor() != null) { queryWrapper.lambda().eq(PlatformWarnEvent::getEditor, pageWrap.getModel().getEditor()); } if (pageWrap.getModel().getEditDate() != null) { queryWrapper.lambda().ge(PlatformWarnEvent::getEditDate, Utils.Date.getStart(pageWrap.getModel().getEditDate())); queryWrapper.lambda().le(PlatformWarnEvent::getEditDate, Utils.Date.getEnd(pageWrap.getModel().getEditDate())); } if (pageWrap.getModel().getIsdeleted() != null) { queryWrapper.lambda().eq(PlatformWarnEvent::getIsdeleted, pageWrap.getModel().getIsdeleted()); } if (pageWrap.getModel().getRemark() != null) { queryWrapper.lambda().eq(PlatformWarnEvent::getRemark, pageWrap.getModel().getRemark()); } if (pageWrap.getModel().getPlatformId() != null) { queryWrapper.lambda().eq(PlatformWarnEvent::getPlatformId, pageWrap.getModel().getPlatformId()); } if (pageWrap.getModel().getTitle() != null) { queryWrapper.lambda().eq(PlatformWarnEvent::getTitle, pageWrap.getModel().getTitle()); } if (pageWrap.getModel().getCarCode() != null) { queryWrapper.lambda().eq(PlatformWarnEvent::getCarCode, pageWrap.getModel().getCarCode()); } if (pageWrap.getModel().getEventContent() != null) { queryWrapper.lambda().eq(PlatformWarnEvent::getEventContent, pageWrap.getModel().getEventContent()); } if (pageWrap.getModel().getPlatformJobId() != null) { queryWrapper.lambda().eq(PlatformWarnEvent::getPlatformJobId, pageWrap.getModel().getPlatformJobId()); } if (pageWrap.getModel().getEventType() != null) { queryWrapper.lambda().eq(PlatformWarnEvent::getEventType, pageWrap.getModel().getEventType()); } for(PageWrap.SortData sortData: pageWrap.getSorts()) { if (sortData.getDirection().equalsIgnoreCase(PageWrap.DESC)) { queryWrapper.orderByDesc(sortData.getProperty()); } else { queryWrapper.orderByAsc(sortData.getProperty()); } } return PageData.from(platformWarnEventMapper.selectPage(page, queryWrapper)); } @Override public long count(PlatformWarnEvent platformWarnEvent) { QueryWrapper<PlatformWarnEvent> wrapper = new QueryWrapper<>(platformWarnEvent); return platformWarnEventMapper.selectCount(wrapper); } @Override public void savePlatformWarnEvent(SavePlatformWarnEventDTO savePlatformWarnEventDTO){ if(Objects.isNull(savePlatformWarnEventDTO) || Objects.isNull(savePlatformWarnEventDTO.getEventType()) || StringUtils.isBlank(savePlatformWarnEventDTO.getCarCode()) ){ return; } PlatformWarnEvent platformWarnEvent = new PlatformWarnEvent(); platformWarnEvent.setCreateDate(new Date()); platformWarnEvent.setIsdeleted(Constants.ZERO); platformWarnEvent.setPlatformId(savePlatformWarnEventDTO.getPlatformId()); Constants.PlatformWarnEvent cPl = Constants.PlatformWarnEvent.STOP_TIMEOUT; if(Constants.equalsInteger(savePlatformWarnEventDTO.getEventType(),Constants.ZERO)){ if(Objects.isNull(savePlatformWarnEventDTO.getPlatformJobId())){ return; } platformWarnEvent.setPlatformJobId(savePlatformWarnEventDTO.getPlatformJobId()); }else if(Constants.equalsInteger(savePlatformWarnEventDTO.getEventType(),Constants.ONE)){ cPl = Constants.PlatformWarnEvent.STOP_ERROR; } platformWarnEvent.setTitle(cPl.getName()); platformWarnEvent.setEventContent(cPl.getInfo().replace("${carCode}",savePlatformWarnEventDTO.getCarCode())); platformWarnEventMapper.insert(platformWarnEvent); } } server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/PlatformWmsJobServiceImpl.java
@@ -1,10 +1,15 @@ package com.doumee.service.business.impl; import com.doumee.core.constants.ResponseStatus; import com.doumee.core.exception.BusinessException; import com.doumee.core.model.PageData; import com.doumee.core.model.PageWrap; import com.doumee.core.utils.Utils; import com.doumee.dao.business.PlatformWmsDetailMapper; import com.doumee.dao.business.PlatformWmsJobMapper; import com.doumee.dao.business.model.PlatformWmsDetail; import com.doumee.dao.business.model.PlatformWmsJob; import com.doumee.dao.business.vo.WmsJobContractVO; import com.doumee.service.business.PlatformWmsJobService; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; @@ -14,7 +19,9 @@ import org.springframework.stereotype.Service; import org.springframework.util.CollectionUtils; import java.util.List; import java.math.BigDecimal; import java.util.*; import java.util.stream.Collectors; /** * æå°_WMSä½ä¸éç¥åè¡æ°æ®Serviceå®ç° @@ -26,6 +33,9 @@ @Autowired private PlatformWmsJobMapper platformWmsJobMapper; @Autowired private PlatformWmsDetailMapper platformWmsDetailMapper; @Override public Integer create(PlatformWmsJob platformWmsJob) { @@ -72,6 +82,41 @@ return platformWmsJobMapper.selectById(id); } @Override public PlatformWmsJob findByDetailId(Integer id) { PlatformWmsJob platformWmsJob = platformWmsJobMapper.selectOne(new QueryWrapper<PlatformWmsJob>().lambda().eq(PlatformWmsJob::getJobId,id).last(" limit 1 ")); if(Objects.isNull(platformWmsJob)){ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"æªæ¥è¯¢å°è¿åä¿¡æ¯"); } List<PlatformWmsDetail> platformWmsDetailList = platformWmsDetailMapper.selectList(new QueryWrapper<PlatformWmsDetail>() .lambda().eq(PlatformWmsDetail::getJobId,id)); if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(platformWmsDetailList)){ platformWmsJob.setIoQty( platformWmsDetailList.stream().map(m->m.getIoQty()).reduce(BigDecimal.ZERO,BigDecimal::add) ); //è·åææååå· List<String> ioCodeList = platformWmsDetailList.stream().map(m->m.getIocode()).collect(Collectors.toList()); Set<String> ioCodeSet = new HashSet<String>(ioCodeList); List<WmsJobContractVO> wmsJobContractVOList = new ArrayList<>(); for (String ioCode:ioCodeSet) { WmsJobContractVO wmsJobContractVO = new WmsJobContractVO(); wmsJobContractVO.setContractCode(ioCode); wmsJobContractVO.setAddress(platformWmsJob.getRepertotyAddress()); wmsJobContractVO.setPlatformWmsDetailList( platformWmsDetailList.stream().filter(i->i.getIocode().equals(ioCode)).collect(Collectors.toList()) ); wmsJobContractVOList.add(wmsJobContractVO); } platformWmsJob.setWmsJobContractVOList(wmsJobContractVOList); }else{ platformWmsJob.setIoQty(BigDecimal.ZERO); } return platformWmsJob; } @Override public PlatformWmsJob findOne(PlatformWmsJob platformWmsJob) { QueryWrapper<PlatformWmsJob> wrapper = new QueryWrapper<>(platformWmsJob); server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncParkServiceImpl.java
@@ -103,7 +103,6 @@ }catch (Exception e){ } } @Override server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/hksync/HkSyncPushServiceImpl.java
@@ -21,9 +21,11 @@ import com.doumee.dao.business.join.VisitsJoinMapper; import com.doumee.dao.business.model.*; import com.doumee.dao.system.model.SystemUser; import com.doumee.dao.web.reqeust.SavePlatformWarnEventDTO; import com.doumee.service.business.DeviceEventService; import com.doumee.service.business.InterfaceLogService; import com.doumee.service.business.MemberService; import com.doumee.service.business.impl.PlatformWarnEventServiceImpl; import com.github.yulichang.interfaces.MPJBaseJoin; import com.github.yulichang.wrapper.MPJLambdaWrapper; import com.hikvision.artemis.sdk.config.ArtemisConfig; @@ -82,6 +84,8 @@ private PlatformEventMapper platformEventMapper; @Autowired private PlatformLogMapper platformLogMapper; @Autowired private PlatformWarnEventServiceImpl platformWarnEventService; /** * 海康é¨ç¦äºä»¶æ¨é * @param param @@ -1026,7 +1030,14 @@ * @param status */ private void dealCarsInErrorPlatformBiz( PlatformJob model,EventPlatformCarsStatusInfoRequest status) { //TODO-----------------å¤ç车è¾è¿å ¥é误æå°ä¸å¡é»è¾ //å¤ç车è¾è¿å ¥é误æå°ä¸å¡é»è¾ SavePlatformWarnEventDTO savePlatformWarnEventDTO = new SavePlatformWarnEventDTO(); savePlatformWarnEventDTO.setPlatformJobId(model.getId()); savePlatformWarnEventDTO.setPlatformId(model.getPlatformId()); savePlatformWarnEventDTO.setCarCode(model.getCarCodeFront()); savePlatformWarnEventDTO.setEventType(Constants.PlatformWarnEvent.STOP_ERROR.getKey()); platformWarnEventService.savePlatformWarnEvent(savePlatformWarnEventDTO); List<PlatformDevice> deviceList = platformDeviceMapper.selectList(new QueryWrapper<PlatformDevice>().lambda() .eq(PlatformDevice::getPlatformId,model.getPlatformId()) .eq(PlatformDevice::getIsdeleted,Constants.ZERO)); server/visits/dmvisit_service/src/main/java/com/doumee/service/business/impl/wms/WmsServiceImpl.java
@@ -317,7 +317,7 @@ } PlatformGroup group = platformGroupMapper.selectOne(new QueryWrapper<PlatformGroup>().lambda() .eq(PlatformGroup::getIsdeleted,Constants.ZERO) .eq(PlatformGroup::getType,Constants.ONE) .eq(PlatformGroup::getType,type==0?Constants.ONE:Constants.ZERO) .last("limit 1") );//æ¥è¯¢å¸è´§æå°ç»ç¼ç job.setPlatformGroupId(group!=null?group.getId():null); Member driver = memberMapper.selectJoinOne(Member.class,new MPJLambdaWrapper<Member>()