diff --git a/dev_wms_client/src/api/pickPlan.js b/dev_wms_client/src/api/pickPlan.js new file mode 100644 index 0000000..08d6222 --- /dev/null +++ b/dev_wms_client/src/api/pickPlan.js @@ -0,0 +1,9 @@ +import request from "@/http/request"; + +export const queryPickPlansByPage = (params) => { + return request({ + url: '/pickPlan/queryPickPlansByPage', + method: 'post', + data: params + }) +} \ No newline at end of file diff --git a/dev_wms_client/src/layout/pickPlan.vue b/dev_wms_client/src/layout/pickPlan.vue new file mode 100644 index 0000000..7cf18b8 --- /dev/null +++ b/dev_wms_client/src/layout/pickPlan.vue @@ -0,0 +1,235 @@ + + + + + \ No newline at end of file diff --git a/dev_wms_client/src/router/index.js b/dev_wms_client/src/router/index.js index d8f5a4c..4dec4b9 100644 --- a/dev_wms_client/src/router/index.js +++ b/dev_wms_client/src/router/index.js @@ -39,6 +39,7 @@ const routes = [ {path: '/imageTable', component: () => import('@/layout/ImageTable.vue')}, {path: '/equipment', component: () => import('@/layout/equipment.vue')}, {path: '/job', component: () => import('@/layout/job.vue')}, + {path: '/pickPlan', component: () => import('@/layout/pickPlan.vue')}, ] }, { diff --git a/dev_wms_serve/src/main/java/com/wms_main/controller/wms/PickPlanController.java b/dev_wms_serve/src/main/java/com/wms_main/controller/wms/PickPlanController.java new file mode 100644 index 0000000..1e4d337 --- /dev/null +++ b/dev_wms_serve/src/main/java/com/wms_main/controller/wms/PickPlanController.java @@ -0,0 +1,31 @@ +package com.wms_main.controller.wms; + +import com.wms_main.model.dto.query.PickPlanQuery; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.vo.wms.PageVo; +import com.wms_main.model.vo.wms.PickPlanVo; +import com.wms_main.service.controller.IPickPlanControllerService; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +/** + * 卡特相关控制类 + */ +@RestController +@ResponseBody +@CrossOrigin +@RequiredArgsConstructor +@RequestMapping("/wms/pickPlan") +public class PickPlanController { + private final IPickPlanControllerService pickPlanControllerService; + + /** + * 分页查询拣选计划 + * @param pickPlanQuery 查询参数 + * @return 查询结果 + */ + @PostMapping("/queryPickPlansByPage") + public WmsApiResponse> queryPickPlansByPage(@RequestBody PickPlanQuery pickPlanQuery) { + return pickPlanControllerService.queryPickPlanInfoByPage(pickPlanQuery); + } +} diff --git a/dev_wms_serve/src/main/java/com/wms_main/model/dto/query/PickPlanQuery.java b/dev_wms_serve/src/main/java/com/wms_main/model/dto/query/PickPlanQuery.java new file mode 100644 index 0000000..fc4f112 --- /dev/null +++ b/dev_wms_serve/src/main/java/com/wms_main/model/dto/query/PickPlanQuery.java @@ -0,0 +1,51 @@ +package com.wms_main.model.dto.query; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class PickPlanQuery extends PageQuery { + /** + * 主键 + */ + @JsonProperty(value = "planId") + private String planId; + /** + * 载具号 + */ + @JsonProperty(value = "vehicleId") + private String vehicleId; + /** + * 料号 + */ + @JsonProperty(value = "goodsId") + private String goodsId; + /** + * 计划拣选数量 + */ + @JsonProperty(value = "planPickQty") + private Integer planPickQty; + /** + * 拣选类型 + * 1. 工作拣选 + * 2. 出库单 + */ + @JsonProperty(value = "pickType") + private Integer pickType; + /** + * 工作index/出库单 + */ + @JsonProperty(value = "workIndex") + private String workIndex; + /** + * 工作index/出库单 + */ + @JsonProperty(value = "standId") + private String standId; +} diff --git a/dev_wms_serve/src/main/java/com/wms_main/model/vo/wms/PickPlanVo.java b/dev_wms_serve/src/main/java/com/wms_main/model/vo/wms/PickPlanVo.java new file mode 100644 index 0000000..6979e6b --- /dev/null +++ b/dev_wms_serve/src/main/java/com/wms_main/model/vo/wms/PickPlanVo.java @@ -0,0 +1,70 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.po.TAppPickPlan; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class PickPlanVo { + /** + * 主键 + */ + @JsonProperty(value = "planId") + private String planId; + /** + * 载具号 + */ + @JsonProperty(value = "vehicleId") + private String vehicleId; + /** + * 料号 + */ + @JsonProperty(value = "goodsId") + private String goodsId; + /** + * 计划拣选数量 + */ + @JsonProperty(value = "planPickQty") + private Integer planPickQty; + /** + * 拣选类型 + * 1. 工作拣选 + * 2. 出库单 + */ + @JsonProperty(value = "pickType") + private Integer pickType; + /** + * 工作index/出库单 + */ + @JsonProperty(value = "workIndex") + private String workIndex; + /** + * 工作index/出库单 + */ + @JsonProperty(value = "standId") + private String standId; + + /** + * 将Po转化为Vo + * @param po 数据库实体 + * @return 转化结果 + */ + public static PickPlanVo of(TAppPickPlan po) { + if (po == null) { + return new PickPlanVo(); + } + return new PickPlanVo( + po.getPlanId(), + po.getVehicleId(), + po.getGoodsId(), + po.getPlanPickQty(), + po.getPickType(), + po.getWorkIndex(), + po.getStandId() + ); + } +} diff --git a/dev_wms_serve/src/main/java/com/wms_main/service/controller/IPickPlanControllerService.java b/dev_wms_serve/src/main/java/com/wms_main/service/controller/IPickPlanControllerService.java new file mode 100644 index 0000000..cc1de07 --- /dev/null +++ b/dev_wms_serve/src/main/java/com/wms_main/service/controller/IPickPlanControllerService.java @@ -0,0 +1,10 @@ +package com.wms_main.service.controller; + +import com.wms_main.model.dto.query.PickPlanQuery; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.vo.wms.PageVo; +import com.wms_main.model.vo.wms.PickPlanVo; + +public interface IPickPlanControllerService { + WmsApiResponse> queryPickPlanInfoByPage(PickPlanQuery pickPlanQuery); +} diff --git a/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/PickPlanControllerServiceImpl.java b/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/PickPlanControllerServiceImpl.java new file mode 100644 index 0000000..875406b --- /dev/null +++ b/dev_wms_serve/src/main/java/com/wms_main/service/controller/serviceImpl/PickPlanControllerServiceImpl.java @@ -0,0 +1,44 @@ +package com.wms_main.service.controller.serviceImpl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.wms_main.dao.ITAppPickPlanService; +import com.wms_main.model.dto.query.PickPlanQuery; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.po.TAppPickPlan; +import com.wms_main.model.vo.wms.PageVo; +import com.wms_main.model.vo.wms.PickPlanVo; +import com.wms_main.service.controller.IPickPlanControllerService; +import com.wms_main.repository.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +@Service +@RequiredArgsConstructor +@Slf4j +public class PickPlanControllerServiceImpl implements IPickPlanControllerService { + + private final ITAppPickPlanService pickPlanService; + + /** + * 查询拣选计划信息(分页)---实现 + * + * @param pickPlanQuery 查询参数 + * @return 查询结果 + */ + @Override + public WmsApiResponse> queryPickPlanInfoByPage(PickPlanQuery pickPlanQuery) { + if (pickPlanQuery == null) { + return WmsApiResponse.error("查询参数不能为NULL", null); + } + Page page = pickPlanQuery.toMpPage(); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper() + .eq(StringUtils.isNotEmpty(pickPlanQuery.getVehicleId()), TAppPickPlan::getVehicleId, pickPlanQuery.getVehicleId()) + .eq(StringUtils.isNotEmpty(pickPlanQuery.getStandId()), TAppPickPlan::getStandId, pickPlanQuery.getStandId()); + Page poPage = pickPlanService.page(page, lambdaQueryWrapper); + + PageVo pageVo = PageVo.of(poPage, PickPlanVo::of); + return WmsApiResponse.success("查询拣选计划成功", pageVo); + } +}