diff --git a/src/main/java/com/glxp/api/controller/auth/SysWorkplaceLayerController.java b/src/main/java/com/glxp/api/controller/auth/SysWorkplaceLayerController.java index 1780378bf..93fc8d8cd 100644 --- a/src/main/java/com/glxp/api/controller/auth/SysWorkplaceLayerController.java +++ b/src/main/java/com/glxp/api/controller/auth/SysWorkplaceLayerController.java @@ -1,7 +1,9 @@ package com.glxp.api.controller.auth; +import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.github.pagehelper.PageInfo; +import com.glxp.api.common.enums.ResultEnum; import com.glxp.api.common.res.BaseResponse; import com.glxp.api.common.util.ResultVOUtils; import com.glxp.api.controller.BaseController; @@ -11,6 +13,7 @@ import com.glxp.api.req.basic.SysWorkplaceLayerRequest; import com.glxp.api.res.PageSimpleResponse; import com.glxp.api.res.basic.SysWorkplaceFreightResponse; import com.glxp.api.res.basic.SysWorkplaceLayerResponse; +import com.glxp.api.res.basic.SysWorkplaceQueueViewResponse; import com.glxp.api.service.basic.SysWorkplaceFreightService; import com.glxp.api.service.basic.SysWorkplaceLayerService; import com.glxp.api.service.basic.SysWorkplaceQueueService; @@ -85,4 +88,15 @@ public class SysWorkplaceLayerController extends BaseController { return ResultVOUtils.success(list); } + @GetMapping("/udiwms/WorkplaceLayer/getListByFreightCodeView") + public BaseResponse getListByFreightCodeView(SysWorkplaceLayerRequest request) { + String freightCode = request.getFreightCode(); + if ( StrUtil.isBlank(freightCode)) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL, "参数不能为空"); + } + //摆货层的数据有了 + List list = sysWorkplaceQueueService.getListByFreightCodeView(freightCode); + return ResultVOUtils.success(list); + } + } diff --git a/src/main/java/com/glxp/api/dao/basic/SysWorkplaceQueueMapper.java b/src/main/java/com/glxp/api/dao/basic/SysWorkplaceQueueMapper.java index a5380338e..690a46910 100644 --- a/src/main/java/com/glxp/api/dao/basic/SysWorkplaceQueueMapper.java +++ b/src/main/java/com/glxp/api/dao/basic/SysWorkplaceQueueMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.glxp.api.entity.basic.SysWorkplaceQueue; import com.glxp.api.req.basic.SysWorkplaceQueueRequest; import com.glxp.api.res.basic.SysWorkplaceQueueResponse; +import com.glxp.api.res.basic.SysWorkplaceQueueViewResponse; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -26,4 +27,5 @@ public interface SysWorkplaceQueueMapper extends BaseMapper { void updateByRelId(SysWorkplaceQueueRequest request); void removeQueueMac(SysWorkplaceQueueRequest request); + List getListByFreightCodeView(@Param("freightCode") String freightCode); } diff --git a/src/main/java/com/glxp/api/res/basic/SysWorkplaceQueueViewResponse.java b/src/main/java/com/glxp/api/res/basic/SysWorkplaceQueueViewResponse.java new file mode 100644 index 000000000..de58f0f55 --- /dev/null +++ b/src/main/java/com/glxp/api/res/basic/SysWorkplaceQueueViewResponse.java @@ -0,0 +1,74 @@ +package com.glxp.api.res.basic; + +import com.baomidou.mybatisplus.annotation.TableField; +import io.swagger.annotations.ApiModelProperty; +import io.swagger.models.auth.In; +import lombok.Data; + +import java.util.Date; +import java.util.List; + +/** + * @author : zhuzhu + * @date : 2024/11/4 11:08 + * @modyified By : + */ + +@Data +public class SysWorkplaceQueueViewResponse { + private Integer id; + + /** + * 货架编码 + */ + @TableField(value = "code") + @ApiModelProperty(value = "货架编码") + private String code; + + /** + * 货架名称 + */ + @TableField(value = "`name`") + @ApiModelProperty(value = "货架名称") + private String name; + + + private String layerCode; + + + /** + * 红灯 + */ + @TableField(value = "red") + @ApiModelProperty(value = "红灯") + private Long red; + + /** + * 橘灯 + */ + @TableField(value = "orange") + @ApiModelProperty(value = "橘灯") + private Long orange; + + /** + * 蓝色 + */ + @TableField(value = "blue") + @ApiModelProperty(value = "蓝色") + private Long blue; + + /** + * 绿色 + */ + @TableField(value = "green") + @ApiModelProperty(value = "绿色") + private Long green; + + + + private Integer row; + private Integer height; + private List sysWorkplaceQueues; + + +} diff --git a/src/main/java/com/glxp/api/service/basic/SysWorkplaceQueueService.java b/src/main/java/com/glxp/api/service/basic/SysWorkplaceQueueService.java index 04ce093df..a7fc54274 100644 --- a/src/main/java/com/glxp/api/service/basic/SysWorkplaceQueueService.java +++ b/src/main/java/com/glxp/api/service/basic/SysWorkplaceQueueService.java @@ -1,5 +1,6 @@ package com.glxp.api.service.basic; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.IdUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; @@ -11,6 +12,7 @@ import com.glxp.api.req.basic.SysWorkplaceFreightRequest; import com.glxp.api.req.basic.SysWorkplaceQueueRequest; import com.glxp.api.res.basic.SysWorkplaceFreightResponse; import com.glxp.api.res.basic.SysWorkplaceQueueResponse; +import com.glxp.api.res.basic.SysWorkplaceQueueViewResponse; import com.glxp.api.res.basic.SysWorkplaceResponse; import com.glxp.api.task.SyncThirdSysTask; import groovyjarjarantlr.debug.NewLineEvent; @@ -21,10 +23,8 @@ import com.glxp.api.entity.basic.SysWorkplaceQueue; import com.glxp.api.dao.basic.SysWorkplaceQueueMapper; import javax.annotation.Resource; -import java.util.ArrayList; -import java.util.Collections; -import java.util.Date; -import java.util.List; +import java.util.*; +import java.util.stream.Collectors; @Service public class SysWorkplaceQueueService extends ServiceImpl { @@ -226,4 +226,26 @@ public class SysWorkplaceQueueService extends ServiceImpl getListByFreightCodeView(String freightCode) { + List respList = new ArrayList<>(); + List list = sysWorkplaceQueueMapper.getListByFreightCodeView(freightCode); + if (CollUtil.isNotEmpty(list)){ + + // 使用Stream API根据layerCode字段进行分组 + Map> groupedByLayerCode = list.stream() + .collect(Collectors.groupingBy(SysWorkplaceQueueViewResponse::getLayerCode)); + final int[] i = {1}; + groupedByLayerCode.forEach((layerCode, responseList) -> { + SysWorkplaceQueueViewResponse sysWorkplaceQueueViewResponse = new SysWorkplaceQueueViewResponse(); + sysWorkplaceQueueViewResponse.setSysWorkplaceQueues(responseList); + sysWorkplaceQueueViewResponse.setHeight(80); + sysWorkplaceQueueViewResponse.setRow(i[0]); + respList.add(sysWorkplaceQueueViewResponse); + i[0]++; + }); + } + return respList; + } + } diff --git a/src/main/resources/mybatis/mapper/basic/SysWorkplaceQueueMapper.xml b/src/main/resources/mybatis/mapper/basic/SysWorkplaceQueueMapper.xml index bc90a33ed..cad81cf95 100644 --- a/src/main/resources/mybatis/mapper/basic/SysWorkplaceQueueMapper.xml +++ b/src/main/resources/mybatis/mapper/basic/SysWorkplaceQueueMapper.xml @@ -203,4 +203,18 @@ WHERE code = #{code} + + + +