From c58572a4fb4823ed111c084642368fded9a6ae4e Mon Sep 17 00:00:00 2001 From: yangsb Date: Sun, 28 Apr 2024 16:27:59 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=A0=B9=E6=8D=AE=E6=8E=92?= =?UTF-8?q?=E5=8D=95id=E8=8E=B7=E5=8F=96=E5=B0=8F=E6=9D=BF=E4=B8=BA?= =?UTF-8?q?=E5=88=86=E9=A1=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../web/core/filter/DataSourceFilter.java | 1 + .../controller/admin/plan/PlanController.java | 8 ++--- .../admin/plan/vo/GetPlateByPlanIdVO.java | 17 +++++----- .../executor/dal/mysql/plate/PlateMapper.java | 2 +- .../executor/service/plan/PlanService.java | 2 +- .../service/plan/PlanServiceImpl.java | 31 ++++++++++--------- 6 files changed, 33 insertions(+), 28 deletions(-) diff --git a/cf-framework/cf-spring-boot-starter-web/src/main/java/com/cf/imes/framework/web/core/filter/DataSourceFilter.java b/cf-framework/cf-spring-boot-starter-web/src/main/java/com/cf/imes/framework/web/core/filter/DataSourceFilter.java index e32adc454..e66ddc5e4 100644 --- a/cf-framework/cf-spring-boot-starter-web/src/main/java/com/cf/imes/framework/web/core/filter/DataSourceFilter.java +++ b/cf-framework/cf-spring-boot-starter-web/src/main/java/com/cf/imes/framework/web/core/filter/DataSourceFilter.java @@ -45,6 +45,7 @@ public class DataSourceFilter extends OncePerRequestFilter { protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException { String dataCode = request.getHeader(DATA_SOURCE_CODE); if(StrUtil.isEmpty(dataCode)) { + //TODO 如果要严谨一点,应该再去校验一下token ServletUtils.writeJSON(response, CommonResult.error(GlobalErrorCodeConstants.UNAUTHORIZED.getCode(), "访问令牌已过期")); log.info("Let the user log in because there is no data-code! requestURI==>{}", request.getRequestURI()); return; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/PlanController.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/PlanController.java index 3714ab615..c90122321 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/PlanController.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/PlanController.java @@ -87,9 +87,9 @@ public class PlanController { } @GetMapping("getPlateByPlanId") - @Operation(summary = "根据排单id获取板材列表") + @Operation(summary = "根据排单id获取小板分页") @PreAuthorize("@ss.hasPermission('executor:plan:query')") - public CommonResult> getPlateByPlanId(@Valid GetPlateByPlanIdVO vo) { + public CommonResult> getPlateByPlanId(@Valid GetPlateByPlanIdVO vo) { return success(planService.getPlateByPlanId(vo)); } @@ -149,10 +149,10 @@ public class PlanController { @OperateLog(type = EXPORT) public void exportPlateExcel(@Valid GetPlateByPlanIdVO vo, HttpServletResponse response) throws IOException { - List plateByPlanId = planService.getPlateByPlanId(vo); + PageResult plateByPlanId = planService.getPlateByPlanId(vo); // 导出 Excel ExcelUtils.write(response, "排单板材.xls", "数据", PlateResList.class, - BeanUtils.toBean(plateByPlanId, PlateResList.class)); + BeanUtils.toBean(plateByPlanId.getList(), PlateResList.class)); } diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/GetPlateByPlanIdVO.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/GetPlateByPlanIdVO.java index a45e2ad58..75fb4bfb1 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/GetPlateByPlanIdVO.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/controller/admin/plan/vo/GetPlateByPlanIdVO.java @@ -1,5 +1,6 @@ package com.cf.imes.module.executor.controller.admin.plan.vo; +import com.cf.imes.framework.common.pojo.PageParam; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import org.springframework.format.annotation.DateTimeFormat; @@ -11,22 +12,24 @@ import java.util.Date; import static com.cf.imes.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; @Data -public class GetPlateByPlanIdVO { +public class GetPlateByPlanIdVO extends PageParam { @Schema(description = "排单id") @NotNull(message = "排单id不能空") private Long planId; @Schema(description = "矩形") - private boolean rectangle; + private Boolean rectangle; @Schema(description = "异形") - private boolean specialShaped; + private Boolean specialShaped; @Schema(description = "造型") - private boolean sculpt; + private Boolean sculpt; @Schema(description = "有挖穿造型") - private boolean holeThrough; + private Boolean holeThrough; @Schema(description = "有挖穿孔") - private boolean burrow; + private Boolean burrow; @Schema(description = "有二维纹路") - private boolean twoDimensionalToolPath; + private Boolean twoDimensionalToolPath; + @Schema(description = "门板") + private Boolean isDoor; @Schema(description = "开始时间") @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) private Date beginDate; diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java index 8074544e8..ce4b887e2 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/dal/mysql/plate/PlateMapper.java @@ -66,7 +66,7 @@ public interface PlateMapper extends BaseMapperX { IPage selectPlatePage(@Param("page") IPage page, @Param("orderId")Long organId, @Param("goodsId") String goodsId); - List selectPlateByPlanId(@Param(Constants.WRAPPER) Wrapper wrapper); + IPage selectPlateByPlanId(@Param("page") IPage page, @Param(Constants.WRAPPER) Wrapper wrapper); List selectPlateList(Long planId); diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanService.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanService.java index eb6089ce7..3f1d3936a 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanService.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanService.java @@ -61,7 +61,7 @@ public interface PlanService { Boolean cancellation(Long id); - List getPlateByPlanId(GetPlateByPlanIdVO vo); + PageResult getPlateByPlanId(GetPlateByPlanIdVO vo); PageResult getOrderByPlanId(PlanOrderPageReqVO pageReqVO); } \ No newline at end of file diff --git a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java index 9fc720b68..0e0cc8eb7 100644 --- a/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java +++ b/cf-module-prod-executor/cf-module-prod-executor-biz/src/main/java/com/cf/imes/module/executor/service/plan/PlanServiceImpl.java @@ -3,6 +3,7 @@ package com.cf.imes.module.executor.service.plan; import cn.hutool.core.collection.CollectionUtil; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.PageDTO; import com.cf.imes.framework.mybatis.core.query.LambdaQueryWrapperX; import com.cf.imes.framework.mybatis.core.query.MPJLambdaWrapperX; @@ -315,34 +316,34 @@ public class PlanServiceImpl implements PlanService { } @Override - public List getPlateByPlanId(GetPlateByPlanIdVO vo) { + public PageResult getPlateByPlanId(GetPlateByPlanIdVO vo) { validatePlanExists(vo.getPlanId()); QueryWrapperX queryWrapperX = new QueryWrapperX<>(); List filterTypes = new ArrayList<>(); - if (vo.isHoleThrough()) { + if (Objects.nonNull(vo.getHoleThrough()) && vo.getHoleThrough()) { filterTypes.add(1); } - if (vo.isBurrow()) { + if (Objects.nonNull(vo.getBurrow()) && vo.getBurrow()) { filterTypes.add(2); } - if (vo.isTwoDimensionalToolPath()) { + if (Objects.nonNull(vo.getTwoDimensionalToolPath()) && vo.getTwoDimensionalToolPath()) { filterTypes.add(4); } - queryWrapperX.betweenIfPresent("a.width", new BigDecimal[]{vo.getWidthMinRang(), vo.getWidthMaxRang()}) + + queryWrapperX.eq("p.plan_id", vo.getPlanId()) + .eqIfPresent("a.is_door", vo.getIsDoor()) + .betweenIfPresent("a.width", new BigDecimal[]{vo.getWidthMinRang(), vo.getWidthMaxRang()}) .betweenIfPresent("a.height", new BigDecimal[]{vo.getLongMinRang(), vo.getLongMaxRang()}) .inIfPresent("a.filter_type", filterTypes) - .betweenIfPresent("f.delivery_date", new Date[]{vo.getBeginDate(), vo.getEndDate()}) - .inIfPresent("a.filter_type", filterTypes) - .eq("p.plan_id", vo.getPlanId()) - ; + .betweenIfPresent("f.delivery_date", new Date[]{vo.getBeginDate(), vo.getEndDate()}); - - List list = plateMapper.selectPlateByPlanId(queryWrapperX); - Set bodyIds = list.stream().map(PlateResList::getBodyId).collect(Collectors.toSet()); - Set roomIds = list.stream().map(PlateResList::getRoomId).collect(Collectors.toSet()); + PageDTO page = new PageDTO<>(vo.getPageNo(), vo.getPageSize()); + IPage pageResult = plateMapper.selectPlateByPlanId(page, queryWrapperX); + Set bodyIds = pageResult.getRecords().stream().map(PlateResList::getBodyId).collect(Collectors.toSet()); + Set roomIds = pageResult.getRecords().stream().map(PlateResList::getRoomId).collect(Collectors.toSet()); if (CollectionUtil.isNotEmpty(bodyIds)) { List orderBodyDOS = orderBodyMapper.selectBatchIds(bodyIds); - for (PlateResList resList : list) { + for (PlateResList resList : pageResult.getRecords()) { resList.setBodyName(orderBodyDOS.stream().filter(e -> Objects.equals(e.getId(), resList.getBodyId())).map(OrderBodyDO::getName).findAny().orElse(null)); resList.setRoomName(orderBodyDOS.stream().filter(e -> Objects.equals(e.getId(), resList.getRoomId())).map(OrderBodyDO::getRoomName).findAny().orElse(null)); } @@ -355,7 +356,7 @@ public class PlanServiceImpl implements PlanService { resList.setBodyName(moduleDOS.stream().filter(e -> Objects.equals(e.getId(), resList.getBodyId())).map(ModuleDO::getName).findAny().orElse(null)); resList.setRoomName(moduleDOS.stream().filter(e -> Objects.equals(e.getId(), resList.getRoomId())).map(ModuleDO::getName).findAny().orElse(null)); }*/ - return list; + return new PageResult<>(pageResult.getRecords(), pageResult.getTotal()); } @Override