From 6e269354acce73943f46bf9f5f096d23ac477a46 Mon Sep 17 00:00:00 2001 From: "zangch@mesnac.com" Date: Tue, 2 Sep 2025 18:05:43 +0800 Subject: [PATCH] =?UTF-8?q?feat(wms):=20=E5=AE=8C=E5=96=84wms?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 实现调拨打印的 CRUD功能 - 修改供应商和客户基础信息bug - 入库单子表新加agv相关字段,当入库单为agv入库时更新agv入库任务界面并且状态为未打印(未调用),当agv入库单子表打印时调用agv接口(待完善逻辑) --- .../BaseMaterialInfoController.java | 2 +- .../BaseMaterialTypeController.java | 2 +- .../BaseMeasurementUnitInfoController.java | 2 +- .../BaseSupplierInfoController.java | 23 ++- .../controller/WmsAllocateTaskController.java | 117 ++++++++++++++ .../dromara/wms/domain/BaseMaterialInfo.java | 4 +- .../dromara/wms/domain/BaseSupplierInfo.java | 35 +++-- .../dromara/wms/domain/WmsAllocateTask.java | 107 +++++++++++++ .../dromara/wms/domain/WmsBaseCustomer.java | 2 +- .../dromara/wms/domain/WmsInstockDetail.java | 25 +++ .../dromara/wms/domain/WmsPurchaseOrder.java | 7 + .../wms/domain/bo/BaseSupplierInfoBo.java | 2 +- .../domain/bo/WmsAllocateOrderDetailBo.java | 30 ++++ .../wms/domain/bo/WmsAllocateTaskBo.java | 106 +++++++++++++ .../wms/domain/bo/WmsInstockDetailBo.java | 19 ++- .../wms/domain/vo/BaseSupplierInfoVo.java | 4 +- .../domain/vo/WmsAllocateOrderDetailVo.java | 25 +++ .../wms/domain/vo/WmsAllocateTaskVo.java | 130 ++++++++++++++++ .../wms/domain/vo/WmsInstockDetailVo.java | 21 +++ .../wms/domain/vo/WmsPurchaseOrderVo.java | 8 +- .../wms/mapper/WmsAllocateTaskMapper.java | 15 ++ .../wms/service/IWmsAllocateTaskService.java | 69 ++++++++ .../BaseMeasurementUnitInfoServiceImpl.java | 1 - .../impl/BaseSupplierInfoServiceImpl.java | 20 +-- .../impl/WmsAllocateTaskServiceImpl.java | 147 ++++++++++++++++++ .../impl/WmsOutstockDetailServiceImpl.java | 9 +- .../impl/WmsPurchaseOrderServiceImpl.java | 2 +- .../mapper/wms/WmsAllocateTaskMapper.xml | 7 + 28 files changed, 884 insertions(+), 57 deletions(-) create mode 100644 ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/WmsAllocateTaskController.java create mode 100644 ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsAllocateTask.java create mode 100644 ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsAllocateTaskBo.java create mode 100644 ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsAllocateTaskVo.java create mode 100644 ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsAllocateTaskMapper.java create mode 100644 ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsAllocateTaskService.java create mode 100644 ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsAllocateTaskServiceImpl.java create mode 100644 ruoyi-modules/hwmom-wms/src/main/resources/mapper/wms/WmsAllocateTaskMapper.xml diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseMaterialInfoController.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseMaterialInfoController.java index 7e646a50..106fb77d 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseMaterialInfoController.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseMaterialInfoController.java @@ -26,7 +26,7 @@ import org.dromara.common.mybatis.core.page.TableDataInfo; /** * 物料信息 - * 前端访问路由地址为:/mes/baseMaterialInfo + * 前端访问路由地址为:/wms/baseMaterialInfo * * @author zangch * @date 2025-01-07 diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseMaterialTypeController.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseMaterialTypeController.java index 56402773..18e03323 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseMaterialTypeController.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseMaterialTypeController.java @@ -22,7 +22,7 @@ import java.util.List; /** * 物料类型信息 - * 前端访问路由地址为:/mes/baseMaterialType + * 前端访问路由地址为:/wms/baseMaterialType * * @author zangch * @date 2025-01-07 diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseMeasurementUnitInfoController.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseMeasurementUnitInfoController.java index 6acbd5a9..97db366e 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseMeasurementUnitInfoController.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseMeasurementUnitInfoController.java @@ -23,7 +23,7 @@ import java.util.List; /** * 计量单位信息 - * 前端访问路由地址为:/mes/baseMeasurementUnitInfo + * 前端访问路由地址为:/wms/baseMeasurementUnitInfo * * @author zangch * @date 2025-01-08 diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseSupplierInfoController.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseSupplierInfoController.java index 44b617c2..8843e978 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseSupplierInfoController.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/BaseSupplierInfoController.java @@ -1,6 +1,5 @@ package org.dromara.wms.controller; -import cn.dev33.satoken.annotation.SaCheckPermission; import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.NotNull; @@ -50,9 +49,9 @@ public class BaseSupplierInfoController extends BaseController { /** * 导出供应商信息列表 */ - @SaCheckPermission("mes:baseSupplierInfo:export") + //@SaCheckPermission("mes:baseSupplierInfo:export") @Log(title = "供应商信息", businessType = BusinessType.EXPORT) -// @PostMapping("/export") + @PostMapping("/export") public void export(BaseSupplierInfoBo bo, HttpServletResponse response) { List list = baseSupplierInfoService.queryList(bo); ExcelUtil.exportExcel(list, "供应商信息", BaseSupplierInfoVo.class, response); @@ -63,8 +62,8 @@ public class BaseSupplierInfoController extends BaseController { * * @param supplierId 主键 */ - @SaCheckPermission("mes:baseSupplierInfo:query") -// @GetMapping("/{supplierId}") + //@SaCheckPermission("mes:baseSupplierInfo:query") + @GetMapping("/{supplierId}") public R getInfo(@NotNull(message = "主键不能为空") @PathVariable Long supplierId) { return R.ok(baseSupplierInfoService.queryById(supplierId)); @@ -73,10 +72,10 @@ public class BaseSupplierInfoController extends BaseController { /** * 新增供应商信息 */ - @SaCheckPermission("mes:baseSupplierInfo:add") + //@SaCheckPermission("mes:baseSupplierInfo:add") @Log(title = "供应商信息", businessType = BusinessType.INSERT) @RepeatSubmit() -// @PostMapping() + @PostMapping() public R add(@Validated(AddGroup.class) @RequestBody BaseSupplierInfoBo bo) { return toAjax(baseSupplierInfoService.insertByBo(bo)); } @@ -84,10 +83,10 @@ public class BaseSupplierInfoController extends BaseController { /** * 修改供应商信息 */ - @SaCheckPermission("mes:baseSupplierInfo:edit") + // @SaCheckPermission("mes:baseSupplierInfo:edit") @Log(title = "供应商信息", businessType = BusinessType.UPDATE) @RepeatSubmit() -// @PutMapping() + @PutMapping() public R edit(@Validated(EditGroup.class) @RequestBody BaseSupplierInfoBo bo) { return toAjax(baseSupplierInfoService.updateByBo(bo)); } @@ -97,9 +96,9 @@ public class BaseSupplierInfoController extends BaseController { * * @param supplierIds 主键串 */ - @SaCheckPermission("mes:baseSupplierInfo:remove") + // @SaCheckPermission("mes:baseSupplierInfo:remove") @Log(title = "供应商信息", businessType = BusinessType.DELETE) -// @DeleteMapping("/{supplierIds}") + @DeleteMapping("/{supplierIds}") public R remove(@NotEmpty(message = "主键不能为空") @PathVariable Long[] supplierIds) { return toAjax(baseSupplierInfoService.deleteWithValidByIds(List.of(supplierIds), true)); @@ -108,7 +107,7 @@ public class BaseSupplierInfoController extends BaseController { /** * 下拉框查询供应商信息列表 */ - // @GetMapping("getBaseSupplierInfoList") + @GetMapping("getBaseSupplierInfoList") public R> getBaseSupplierInfolist(BaseSupplierInfoBo bo) { List list = baseSupplierInfoService.queryList(bo); return R.ok(list); diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/WmsAllocateTaskController.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/WmsAllocateTaskController.java new file mode 100644 index 00000000..2c618fae --- /dev/null +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/controller/WmsAllocateTaskController.java @@ -0,0 +1,117 @@ +package org.dromara.wms.controller; + +import java.util.List; + +import lombok.RequiredArgsConstructor; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.constraints.*; +import cn.dev33.satoken.annotation.SaCheckPermission; +import org.springframework.web.bind.annotation.*; +import org.springframework.validation.annotation.Validated; +import org.dromara.common.idempotent.annotation.RepeatSubmit; +import org.dromara.common.log.annotation.Log; +import org.dromara.common.web.core.BaseController; +import org.dromara.common.mybatis.core.page.PageQuery; +import org.dromara.common.core.domain.R; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import org.dromara.common.log.enums.BusinessType; +import org.dromara.common.excel.utils.ExcelUtil; +import org.dromara.wms.domain.vo.WmsAllocateTaskVo; +import org.dromara.wms.domain.bo.WmsAllocateTaskBo; +import org.dromara.wms.service.IWmsAllocateTaskService; +import org.dromara.common.mybatis.core.page.TableDataInfo; + +/** + * 调拨打印 + * 前端访问路由地址为:/wms/wmsAllocateTask + * + * @author zch + * @date 2025-09-01 + */ +@Validated +@RequiredArgsConstructor +@RestController +@RequestMapping("/wmsAllocateTask") +public class WmsAllocateTaskController extends BaseController { + + private final IWmsAllocateTaskService wmsAllocateTaskService; + + /** + * 查询调拨打印列表 + */ + @SaCheckPermission("wms:wmsAllocateTask:list") + @GetMapping("/list") + public TableDataInfo list(WmsAllocateTaskBo bo, PageQuery pageQuery) { + return wmsAllocateTaskService.queryPageList(bo, pageQuery); + } + + /** + * 导出调拨打印列表 + */ + @SaCheckPermission("wms:wmsAllocateTask:export") + @Log(title = "调拨打印", businessType = BusinessType.EXPORT) + @PostMapping("/export") + public void export(WmsAllocateTaskBo bo, HttpServletResponse response) { + List list = wmsAllocateTaskService.queryList(bo); + ExcelUtil.exportExcel(list, "调拨打印", WmsAllocateTaskVo.class, response); + } + + /** + * 获取调拨打印详细信息 + * + * @param allocateTaskId 主键 + */ + @SaCheckPermission("wms:wmsAllocateTask:query") + @GetMapping("/{allocateTaskId}") + public R getInfo(@NotNull(message = "主键不能为空") + @PathVariable Long allocateTaskId) { + return R.ok(wmsAllocateTaskService.queryById(allocateTaskId)); + } + + /** + * 新增调拨打印 + */ + @SaCheckPermission("wms:wmsAllocateTask:add") + @Log(title = "调拨打印", businessType = BusinessType.INSERT) + @RepeatSubmit() + @PostMapping() + public R add(@Validated(AddGroup.class) @RequestBody WmsAllocateTaskBo bo) { + return toAjax(wmsAllocateTaskService.insertByBo(bo)); + } + + /** + * 修改调拨打印 + */ + @SaCheckPermission("wms:wmsAllocateTask:edit") + @Log(title = "调拨打印", businessType = BusinessType.UPDATE) + @RepeatSubmit() + @PutMapping() + public R edit(@Validated(EditGroup.class) @RequestBody WmsAllocateTaskBo bo) { + return toAjax(wmsAllocateTaskService.updateByBo(bo)); + } + + /** + * 删除调拨打印 + * + * @param allocateTaskIds 主键串 + */ + @SaCheckPermission("wms:wmsAllocateTask:remove") + @Log(title = "调拨打印", businessType = BusinessType.DELETE) + @DeleteMapping("/{allocateTaskIds}") + public R remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] allocateTaskIds) { + return toAjax(wmsAllocateTaskService.deleteWithValidByIds(List.of(allocateTaskIds), true)); + } + + + /** + * 下拉框查询调拨打印列表 + */ + + @GetMapping("/getWmsAllocateTaskList") + public R> getWmsAllocateTaskList(WmsAllocateTaskBo bo) { + List list = wmsAllocateTaskService.queryList(bo); + return R.ok(list); + } +} diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/BaseMaterialInfo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/BaseMaterialInfo.java index dbd78b5b..1b2db9e4 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/BaseMaterialInfo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/BaseMaterialInfo.java @@ -18,7 +18,7 @@ import java.io.Serial; */ @Data @EqualsAndHashCode(callSuper = true) -@TableName("base_material_info") +@TableName("base_material_info_copy1") public class BaseMaterialInfo extends TenantEntity { @Serial @@ -27,7 +27,7 @@ public class BaseMaterialInfo extends TenantEntity { /** * 主键标识 */ - @TableId(type = IdType.AUTO) + @TableId(value = "material_id", type = IdType.ASSIGN_ID) private Long materialId; /** diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/BaseSupplierInfo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/BaseSupplierInfo.java index 106424a7..ed691c23 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/BaseSupplierInfo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/BaseSupplierInfo.java @@ -2,8 +2,6 @@ package org.dromara.wms.domain; import com.baomidou.mybatisplus.annotation.*; import lombok.Data; -import lombok.EqualsAndHashCode; -import org.dromara.common.tenant.core.TenantEntity; import java.io.Serial; import java.util.Date; @@ -75,7 +73,7 @@ public class BaseSupplierInfo { /** * 资质到期日期 */ - private Date qualificationExpireDate; +// private Date qualificationExpireDate; /** * 银行账户名 @@ -97,15 +95,15 @@ public class BaseSupplierInfo { */ private String cooperationStatus; - /** - * 审核状态(1通过 0待审核 2拒绝) - */ - private String auditStatus; - - /** - * 审核备注 - */ - private String auditRemark; +// /** +// * 审核状态(1通过 0待审核 2拒绝) +// */ +// private String auditStatus; +// +// /** +// * 审核备注 +// */ +// private String auditRemark; /** * erp的主键 @@ -117,10 +115,10 @@ public class BaseSupplierInfo { */ private String supplierStatus; - /** - * 审核日期 - */ - private Date auditDate; +// /** +// * 审核日期 +// */ +// private Date auditDate; /** * erp最后更新时间 @@ -162,5 +160,10 @@ public class BaseSupplierInfo { @TableField(fill = FieldFill.INSERT_UPDATE) private Date updateTime; + /** + * 删除标志(0代表存在 2代表删除) + */ + @TableLogic + private String delFlag; } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsAllocateTask.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsAllocateTask.java new file mode 100644 index 00000000..8e0c1edb --- /dev/null +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsAllocateTask.java @@ -0,0 +1,107 @@ +package org.dromara.wms.domain; + +import org.dromara.common.tenant.core.TenantEntity; +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; +import lombok.EqualsAndHashCode; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +import java.io.Serial; + +/** + * 调拨打印对象 wms_allocate_task + * + * @author zch + * @date 2025-09-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@TableName("wms_allocate_task") +public class WmsAllocateTask extends TenantEntity { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 调拨任务表主键 + */ + private Long allocateTaskId; + + /** + * 单号 + */ + private String allocateCode; + + /** + * 批次码 + */ + private String batchCode; + + /** + * 条码数量 + */ + private Long materialQty; + + /** + * 分包数量 + */ + private Long apportionQty; + + /** + * 物料id + */ + private Long materialId; + + /** + * 物料编码 + */ + private String materialCode; + + /** + * 物料名称 + */ + private String materialName; + + /** + * 物料规格 + */ + private String materialSpe; + + /** + * 计量单位名称 + */ + private String unitName; + + /** + * 是否有条码 + */ + private String codeYesNo; + + /** + * 物料大类 + */ + private String materialCategories; + + /** + * 推荐库位id + */ + private Long locationId; + + /** + * 入库状态(0-待入库,1-已入库,2-入库中) + */ + private String inboundStatus; + + /** + * 实际入库时间 + */ + private Date actualInboundTime; + + /** + * 子表id + */ + private Long aoDId; + + +} diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsBaseCustomer.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsBaseCustomer.java index d7cbc830..dfd5e489 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsBaseCustomer.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsBaseCustomer.java @@ -24,7 +24,7 @@ public class WmsBaseCustomer extends TenantEntity { /** * 客户ID */ - @TableId(value = "customer_id", type = IdType.AUTO) + @TableId(value = "customer_id", type = IdType.ASSIGN_ID) private Long customerId; /** diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInstockDetail.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInstockDetail.java index 5907fd0b..fbff6cbf 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInstockDetail.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsInstockDetail.java @@ -82,6 +82,8 @@ public class WmsInstockDetail{ */ private String codeYesNo; + + /** * 物料大类 */ @@ -143,4 +145,27 @@ public class WmsInstockDetail{ @TableField(exist = false) private String materialCategoryName;//字段映射 + + /** + * 是否为AGV任务(0是,1否) + */ + private String isAgv; + + /** + * 完成数量 + */ + private BigDecimal completeQty; + + /** + * AGV状态(0待拾取 / 1运输中 / 2完成) + */ + private String agvStatus; + + + /** + * 打印时间(打印记录的创建时间按) + */ + @TableField(exist = false) + private String printTime; + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsPurchaseOrder.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsPurchaseOrder.java index b45cfd72..6c41c459 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsPurchaseOrder.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/WmsPurchaseOrder.java @@ -122,4 +122,11 @@ public class WmsPurchaseOrder { @TableField(exist = false) private String materialCategoryName;//字段映射 + + /** + * 供应商名称 + */ + @TableField(exist = false) + private String supplierName;//join + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/BaseSupplierInfoBo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/BaseSupplierInfoBo.java index 9802ec8e..ee18a5f6 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/BaseSupplierInfoBo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/BaseSupplierInfoBo.java @@ -77,7 +77,7 @@ public class BaseSupplierInfoBo extends BaseEntity { /** * 资质到期日期 */ - private Date qualificationExpireDate; +// private Date qualificationExpireDate; /** * 银行账户名 diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsAllocateOrderDetailBo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsAllocateOrderDetailBo.java index 281ae94b..79b2a123 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsAllocateOrderDetailBo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsAllocateOrderDetailBo.java @@ -59,5 +59,35 @@ public class WmsAllocateOrderDetailBo extends BaseEntity { private Long erpSynchronousQty; private String tenantId; + /** + * 物料编码(仅用于前端显示和数据传输,来源于库存选择组件) + */ + private String materialCode; + + /** + * 物料名称(仅用于前端显示和数据传输,来源于库存选择组件) + */ + private String materialName; + + /** + * 批次码(仅用于前端显示和数据传输,来源于库存选择组件) + */ + private String batchCode; + + /** + * 库位编码(仅用于前端显示和数据传输,来源于库存选择组件) + */ + private String locationCode; + + /** + * 仓库ID(仅用于前端显示和数据传输,来源于库存选择组件) + */ + private Long storeId; + + /** + * 库存数量(仅用于前端显示和数据传输,用于调拨数量验证,来源于库存选择组件) + */ + private BigDecimal inventoryQty; + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsAllocateTaskBo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsAllocateTaskBo.java new file mode 100644 index 00000000..7ffa34b9 --- /dev/null +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsAllocateTaskBo.java @@ -0,0 +1,106 @@ +package org.dromara.wms.domain.bo; + +import org.dromara.wms.domain.WmsAllocateTask; +import org.dromara.common.mybatis.core.domain.BaseEntity; +import org.dromara.common.core.validate.AddGroup; +import org.dromara.common.core.validate.EditGroup; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; +import lombok.EqualsAndHashCode; +import jakarta.validation.constraints.*; +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; + +/** + * 调拨打印业务对象 wms_allocate_task + * + * @author zch + * @date 2025-09-01 + */ +@Data +@EqualsAndHashCode(callSuper = true) +@AutoMapper(target = WmsAllocateTask.class, reverseConvertGenerate = false) +public class WmsAllocateTaskBo extends BaseEntity { + + /** + * 调拨任务表主键 + */ + private Long allocateTaskId; + + /** + * 单号 + */ + private String allocateCode; + + /** + * 批次码 + */ + private String batchCode; + + /** + * 条码数量 + */ + private Long materialQty; + + /** + * 分包数量 + */ + private Long apportionQty; + + /** + * 物料id + */ + private Long materialId; + + /** + * 物料编码 + */ + private String materialCode; + + /** + * 物料名称 + */ + private String materialName; + + /** + * 物料规格 + */ + private String materialSpe; + + /** + * 计量单位名称 + */ + private String unitName; + + /** + * 是否有条码 + */ + private String codeYesNo; + + /** + * 物料大类 + */ + private String materialCategories; + + /** + * 推荐库位id + */ + private Long locationId; + + /** + * 入库状态(0-待入库,1-已入库,2-入库中) + */ + private String inboundStatus; + + /** + * 实际入库时间 + */ + private Date actualInboundTime; + + /** + * 子表id + */ + private Long aoDId; + + +} diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsInstockDetailBo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsInstockDetailBo.java index d2cf1a9a..745818f7 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsInstockDetailBo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/bo/WmsInstockDetailBo.java @@ -191,16 +191,31 @@ public class WmsInstockDetailBo{ */ private String inspectionRequest; + /** + * 是否为AGV任务(0是,1否) + */ + private String isAgv; + + /** + * 完成数量 + */ + private BigDecimal completeQty; + + /** + * AGV状态(0待拾取 / 1运输中 / 2完成) + */ + private String agvStatus; + + /** * 每包数量列表(当分包数量>1时使用) */ - @TableField(exist = false) private List packageQtyList; /** * 分包模式(average:平均分包, custom:自定义每包数量) */ - @TableField(exist = false) private String packageMode; + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/BaseSupplierInfoVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/BaseSupplierInfoVo.java index b1202a19..e3654f04 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/BaseSupplierInfoVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/BaseSupplierInfoVo.java @@ -96,8 +96,8 @@ public class BaseSupplierInfoVo implements Serializable { /** * 资质到期日期 */ - @ExcelProperty(value = "资质到期日期") - private Date qualificationExpireDate; +// @ExcelProperty(value = "资质到期日期") +// private Date qualificationExpireDate; /** * 银行账户名 diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsAllocateOrderDetailVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsAllocateOrderDetailVo.java index 25e74003..6b5096cc 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsAllocateOrderDetailVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsAllocateOrderDetailVo.java @@ -93,5 +93,30 @@ public class WmsAllocateOrderDetailVo implements Serializable { private String materialCode; + /** + * 物料名称(仅用于前端显示,来源于库存选择组件) + */ + private String materialName; + + /** + * 批次码(仅用于前端显示,来源于库存选择组件) + */ + private String batchCode; + + /** + * 库位编码(仅用于前端显示,来源于库存选择组件) + */ + private String locationCode; + + /** + * 仓库ID(仅用于前端显示,来源于库存选择组件) + */ + private Long storeId; + + /** + * 库存数量(仅用于前端显示,用于调拨数量验证,来源于库存选择组件) + */ + private BigDecimal inventoryQty; + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsAllocateTaskVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsAllocateTaskVo.java new file mode 100644 index 00000000..05fbaf80 --- /dev/null +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsAllocateTaskVo.java @@ -0,0 +1,130 @@ +package org.dromara.wms.domain.vo; + +import java.util.Date; +import com.fasterxml.jackson.annotation.JsonFormat; +import org.dromara.wms.domain.WmsAllocateTask; +import com.alibaba.excel.annotation.ExcelIgnoreUnannotated; +import com.alibaba.excel.annotation.ExcelProperty; +import org.dromara.common.excel.annotation.ExcelDictFormat; +import org.dromara.common.excel.convert.ExcelDictConvert; +import io.github.linpeilie.annotations.AutoMapper; +import lombok.Data; + +import java.io.Serial; +import java.io.Serializable; +import java.util.Date; + + + +/** + * 调拨打印视图对象 wms_allocate_task + * + * @author zch + * @date 2025-09-01 + */ +@Data +@ExcelIgnoreUnannotated +@AutoMapper(target = WmsAllocateTask.class) +public class WmsAllocateTaskVo implements Serializable { + + @Serial + private static final long serialVersionUID = 1L; + + /** + * 调拨任务表主键 + */ + @ExcelProperty(value = "调拨任务表主键") + private Long allocateTaskId; + + /** + * 单号 + */ + @ExcelProperty(value = "单号") + private String allocateCode; + + /** + * 批次码 + */ + @ExcelProperty(value = "批次码") + private String batchCode; + + /** + * 条码数量 + */ + @ExcelProperty(value = "条码数量") + private Long materialQty; + + /** + * 分包数量 + */ + @ExcelProperty(value = "分包数量") + private Long apportionQty; + + /** + * 物料id + */ + @ExcelProperty(value = "物料id") + private Long materialId; + + /** + * 物料编码 + */ + @ExcelProperty(value = "物料编码") + private String materialCode; + + /** + * 物料名称 + */ + @ExcelProperty(value = "物料名称") + private String materialName; + + /** + * 物料规格 + */ + @ExcelProperty(value = "物料规格") + private String materialSpe; + + /** + * 计量单位名称 + */ + @ExcelProperty(value = "计量单位名称") + private String unitName; + + /** + * 是否有条码 + */ + @ExcelProperty(value = "是否有条码") + private String codeYesNo; + + /** + * 物料大类 + */ + @ExcelProperty(value = "物料大类") + private String materialCategories; + + /** + * 推荐库位id + */ + @ExcelProperty(value = "推荐库位id") + private Long locationId; + + /** + * 入库状态(0-待入库,1-已入库,2-入库中) + */ + @ExcelProperty(value = "入库状态(0-待入库,1-已入库,2-入库中)") + private String inboundStatus; + + /** + * 实际入库时间 + */ + @ExcelProperty(value = "实际入库时间") + private Date actualInboundTime; + + /** + * 子表id + */ + @ExcelProperty(value = "子表id") + private Long aoDId; + + +} diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInstockDetailVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInstockDetailVo.java index abbc4c1e..26c33b83 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInstockDetailVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsInstockDetailVo.java @@ -161,4 +161,25 @@ public class WmsInstockDetailVo implements Serializable { private String inspectionRequest; + /** + * 是否为AGV任务(0是,1否) + */ + private String isAgv; + + /** + * 完成数量 + */ + private BigDecimal completeQty; + + /** + * AGV状态(0待拾取 / 1运输中 / 2完成) + */ + private String agvStatus; + + + /** + * 打印时间(打印记录的创建时间按) + */ + private String printTime; + } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsPurchaseOrderVo.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsPurchaseOrderVo.java index a9589ce2..119d89b3 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsPurchaseOrderVo.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/domain/vo/WmsPurchaseOrderVo.java @@ -137,10 +137,16 @@ public class WmsPurchaseOrderVo implements Serializable { */ @ExcelProperty(value = "审核意见") private String auditComments; + /** * 供应商编号 */ - private String supplierCode; + private String supplierCode;//join + + /** + * 供应商名称 + */ + private String supplierName;//join } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsAllocateTaskMapper.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsAllocateTaskMapper.java new file mode 100644 index 00000000..6271acec --- /dev/null +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/mapper/WmsAllocateTaskMapper.java @@ -0,0 +1,15 @@ +package org.dromara.wms.mapper; + +import org.dromara.wms.domain.WmsAllocateTask; +import org.dromara.wms.domain.vo.WmsAllocateTaskVo; +import org.dromara.common.mybatis.core.mapper.BaseMapperPlus; + +/** + * 调拨打印Mapper接口 + * + * @author zch + * @date 2025-09-01 + */ +public interface WmsAllocateTaskMapper extends BaseMapperPlus { + +} diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsAllocateTaskService.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsAllocateTaskService.java new file mode 100644 index 00000000..543bf42d --- /dev/null +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/IWmsAllocateTaskService.java @@ -0,0 +1,69 @@ +package org.dromara.wms.service; + +import org.dromara.wms.domain.WmsAllocateTask; +import org.dromara.wms.domain.vo.WmsAllocateTaskVo; +import org.dromara.wms.domain.bo.WmsAllocateTaskBo; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; + +import java.util.Collection; +import java.util.List; + +/** + * 调拨打印Service接口 + * + * @author zch + * @date 2025-09-01 + */ +public interface IWmsAllocateTaskService { + + /** + * 查询调拨打印 + * + * @param allocateTaskId 主键 + * @return 调拨打印 + */ + WmsAllocateTaskVo queryById(Long allocateTaskId); + + /** + * 分页查询调拨打印列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 调拨打印分页列表 + */ + TableDataInfo queryPageList(WmsAllocateTaskBo bo, PageQuery pageQuery); + + /** + * 查询符合条件的调拨打印列表 + * + * @param bo 查询条件 + * @return 调拨打印列表 + */ + List queryList(WmsAllocateTaskBo bo); + + /** + * 新增调拨打印 + * + * @param bo 调拨打印 + * @return 是否新增成功 + */ + Boolean insertByBo(WmsAllocateTaskBo bo); + + /** + * 修改调拨打印 + * + * @param bo 调拨打印 + * @return 是否修改成功 + */ + Boolean updateByBo(WmsAllocateTaskBo bo); + + /** + * 校验并批量删除调拨打印信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + Boolean deleteWithValidByIds(Collection ids, Boolean isValid); +} diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/BaseMeasurementUnitInfoServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/BaseMeasurementUnitInfoServiceImpl.java index 44e1ed32..3094eccf 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/BaseMeasurementUnitInfoServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/BaseMeasurementUnitInfoServiceImpl.java @@ -81,7 +81,6 @@ public class BaseMeasurementUnitInfoServiceImpl implements IBaseMeasurementUnitI public Boolean insertByBo(BaseMeasurementUnitInfoBo bo) { BaseMeasurementUnitInfo add = MapstructUtils.convert(bo, BaseMeasurementUnitInfo.class); validEntityBeforeSave(add); - // 获取父节点信息 BaseMeasurementUnitInfoVo query = baseMapper.selectVoById(bo.getParentId()); if (ObjectUtils.isNotEmpty(query)) { diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/BaseSupplierInfoServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/BaseSupplierInfoServiceImpl.java index 09644ff4..5850de42 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/BaseSupplierInfoServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/BaseSupplierInfoServiceImpl.java @@ -82,15 +82,15 @@ public class BaseSupplierInfoServiceImpl implements IBaseSupplierInfoService { .eq(StringUtils.isNotBlank(bo.getContactEmail()), BaseSupplierInfo::getContactEmail, bo.getContactEmail()) .eq(StringUtils.isNotBlank(bo.getBusinessLicenseNo()), BaseSupplierInfo::getBusinessLicenseNo, bo.getBusinessLicenseNo()) .eq(StringUtils.isNotBlank(bo.getCooperationStatus()), BaseSupplierInfo::getCooperationStatus, bo.getCooperationStatus()) - .eq(StringUtils.isNotBlank(bo.getAuditStatus()), BaseSupplierInfo::getAuditStatus, bo.getAuditStatus()) +// .eq(StringUtils.isNotBlank(bo.getAuditStatus()), BaseSupplierInfo::getAuditStatus, bo.getAuditStatus()) .eq(bo.getErpId() != null, BaseSupplierInfo::getErpId, bo.getErpId()) .eq(StringUtils.isNotBlank(bo.getSupplierStatus()), BaseSupplierInfo::getSupplierStatus, bo.getSupplierStatus()) - .between(params.get("beginAuditDate") != null && params.get("endAuditDate") != null, - BaseSupplierInfo::getAuditDate ,params.get("beginAuditDate"), params.get("endAuditDate")) +// .between(params.get("beginAuditDate") != null && params.get("endAuditDate") != null, +// BaseSupplierInfo::getAuditDate ,params.get("beginAuditDate"), params.get("endAuditDate")) .between(params.get("beginErpModifyDate") != null && params.get("endErpModifyDate") != null, BaseSupplierInfo::getErpModifyDate ,params.get("beginErpModifyDate"), params.get("endErpModifyDate")) - .between(params.get("beginQualificationExpireDate") != null && params.get("endQualificationExpireDate") != null, - BaseSupplierInfo::getQualificationExpireDate ,params.get("beginQualificationExpireDate"), params.get("endQualificationExpireDate")) +// .between(params.get("beginQualificationExpireDate") != null && params.get("endQualificationExpireDate") != null, +// BaseSupplierInfo::getQualificationExpireDate ,params.get("beginQualificationExpireDate"), params.get("endQualificationExpireDate")) .orderByDesc(BaseSupplierInfo::getCreateTime); return lqw; } @@ -140,7 +140,7 @@ public class BaseSupplierInfoServiceImpl implements IBaseSupplierInfoService { throw new ServiceException("供应商编码已存在"); } } - + //校验营业执照编号是否重复 if (StringUtils.isNotBlank(entity.getBusinessLicenseNo())) { BaseSupplierInfoBo query = new BaseSupplierInfoBo(); @@ -151,7 +151,7 @@ public class BaseSupplierInfoServiceImpl implements IBaseSupplierInfoService { throw new ServiceException("营业执照编号已存在"); } } - + //设置默认值 if (StringUtils.isBlank(entity.getSupplierStatus())) { entity.setSupplierStatus("1"); // 默认启用 @@ -159,9 +159,9 @@ public class BaseSupplierInfoServiceImpl implements IBaseSupplierInfoService { if (StringUtils.isBlank(entity.getCooperationStatus())) { entity.setCooperationStatus("1"); // 默认正常合作 } - if (StringUtils.isBlank(entity.getAuditStatus())) { - entity.setAuditStatus("0"); // 默认待审核 - } +// if (StringUtils.isBlank(entity.getAuditStatus())) { +// entity.setAuditStatus("0"); // 默认待审核 +// } } /** diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsAllocateTaskServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsAllocateTaskServiceImpl.java new file mode 100644 index 00000000..9911aacf --- /dev/null +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsAllocateTaskServiceImpl.java @@ -0,0 +1,147 @@ +package org.dromara.wms.service.impl; + +import org.dromara.common.core.utils.MapstructUtils; +import org.dromara.common.core.utils.StringUtils; +import org.dromara.common.mybatis.core.page.TableDataInfo; +import org.dromara.common.mybatis.core.page.PageQuery; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.github.yulichang.toolkit.JoinWrappers; +import com.github.yulichang.wrapper.MPJLambdaWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.dromara.wms.domain.bo.WmsAllocateTaskBo; +import org.dromara.wms.domain.vo.WmsAllocateTaskVo; +import org.dromara.wms.domain.WmsAllocateTask; +import org.dromara.wms.mapper.WmsAllocateTaskMapper; +import org.dromara.wms.service.IWmsAllocateTaskService; + +import java.util.List; +import java.util.Map; +import java.util.Collection; + +/** + * 调拨打印Service业务层处理 + * + * @author zch + * @date 2025-09-01 + */ +@RequiredArgsConstructor +@Service +public class WmsAllocateTaskServiceImpl implements IWmsAllocateTaskService { + + private final WmsAllocateTaskMapper baseMapper; + + /** + * 查询调拨打印 + * + * @param allocateTaskId 主键 + * @return 调拨打印 + */ + @Override + public WmsAllocateTaskVo queryById(Long allocateTaskId){ + return baseMapper.selectVoById(allocateTaskId); + } + + /** + * 分页查询调拨打印列表 + * + * @param bo 查询条件 + * @param pageQuery 分页参数 + * @return 调拨打印分页列表 + */ + @Override + public TableDataInfo queryPageList(WmsAllocateTaskBo bo, PageQuery pageQuery) { + MPJLambdaWrapper lqw = buildQueryWrapper(bo); + Page result = baseMapper.selectVoPage(pageQuery.build(), lqw); + return TableDataInfo.build(result); + } + + /** + * 查询符合条件的调拨打印列表 + * + * @param bo 查询条件 + * @return 调拨打印列表 + */ + @Override + public List queryList(WmsAllocateTaskBo bo) { + MPJLambdaWrapper lqw = buildQueryWrapper(bo); + return baseMapper.selectVoList(lqw); + } + + private MPJLambdaWrapper buildQueryWrapper(WmsAllocateTaskBo bo) { + Map params = bo.getParams(); + MPJLambdaWrapper lqw = JoinWrappers.lambda(WmsAllocateTask.class) + .selectAll(WmsAllocateTask.class) + .eq(bo.getAllocateTaskId() != null, WmsAllocateTask::getAllocateTaskId, bo.getAllocateTaskId()) + .eq(StringUtils.isNotBlank(bo.getAllocateCode()), WmsAllocateTask::getAllocateCode, bo.getAllocateCode()) + .eq(StringUtils.isNotBlank(bo.getBatchCode()), WmsAllocateTask::getBatchCode, bo.getBatchCode()) + .eq(bo.getMaterialQty() != null, WmsAllocateTask::getMaterialQty, bo.getMaterialQty()) + .eq(bo.getApportionQty() != null, WmsAllocateTask::getApportionQty, bo.getApportionQty()) + .eq(bo.getMaterialId() != null, WmsAllocateTask::getMaterialId, bo.getMaterialId()) + .eq(StringUtils.isNotBlank(bo.getMaterialCode()), WmsAllocateTask::getMaterialCode, bo.getMaterialCode()) + .like(StringUtils.isNotBlank(bo.getMaterialName()), WmsAllocateTask::getMaterialName, bo.getMaterialName()) + .eq(StringUtils.isNotBlank(bo.getMaterialSpe()), WmsAllocateTask::getMaterialSpe, bo.getMaterialSpe()) + .eq(StringUtils.isNotBlank(bo.getUnitName()), WmsAllocateTask::getUnitName, bo.getUnitName()) + .eq(StringUtils.isNotBlank(bo.getCodeYesNo()), WmsAllocateTask::getCodeYesNo, bo.getCodeYesNo()) + .eq(StringUtils.isNotBlank(bo.getMaterialCategories()), WmsAllocateTask::getMaterialCategories, bo.getMaterialCategories()) + .eq(bo.getLocationId() != null, WmsAllocateTask::getLocationId, bo.getLocationId()) + .eq(StringUtils.isNotBlank(bo.getInboundStatus()), WmsAllocateTask::getInboundStatus, bo.getInboundStatus()) + .eq(bo.getActualInboundTime() != null, WmsAllocateTask::getActualInboundTime, bo.getActualInboundTime()) + .eq(bo.getAoDId() != null, WmsAllocateTask::getAoDId, bo.getAoDId()) + .orderByDesc(WmsAllocateTask::getCreateTime); + return lqw; + } + + /** + * 新增调拨打印 + * + * @param bo 调拨打印 + * @return 是否新增成功 + */ + @Override + public Boolean insertByBo(WmsAllocateTaskBo bo) { + WmsAllocateTask add = MapstructUtils.convert(bo, WmsAllocateTask.class); + validEntityBeforeSave(add); + boolean flag = baseMapper.insert(add) > 0; + if (flag) { + bo.setAllocateTaskId(add.getAllocateTaskId()); + } + return flag; + } + + /** + * 修改调拨打印 + * + * @param bo 调拨打印 + * @return 是否修改成功 + */ + @Override + public Boolean updateByBo(WmsAllocateTaskBo bo) { + WmsAllocateTask update = MapstructUtils.convert(bo, WmsAllocateTask.class); + validEntityBeforeSave(update); + return baseMapper.updateById(update) > 0; + } + + /** + * 保存前的数据校验 + */ + private void validEntityBeforeSave(WmsAllocateTask entity){ + //TODO 做一些数据校验,如唯一约束 + } + + /** + * 校验并批量删除调拨打印信息 + * + * @param ids 待删除的主键集合 + * @param isValid 是否进行有效性校验 + * @return 是否删除成功 + */ + @Override + public Boolean deleteWithValidByIds(Collection ids, Boolean isValid) { + if(isValid){ + //TODO 做一些业务上的校验,判断是否需要校验 + } + return baseMapper.deleteByIds(ids) > 0; + } +} diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockDetailServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockDetailServiceImpl.java index af0762c6..2ff1b30d 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockDetailServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsOutstockDetailServiceImpl.java @@ -93,11 +93,6 @@ public class WmsOutstockDetailServiceImpl implements IWmsOutstockDetailService { // 关联表查询物料大类名称 .select(BaseMaterialCategory::getMaterialCategoryName) .leftJoin(BaseMaterialCategory.class, BaseMaterialCategory::getMaterialCategoryId, WmsOutstockDetail::getMaterialCategoryId) - - //agv出库任务新增 - .eq(StringUtils.isNotBlank(bo.getAgvStatus()), WmsOutstockDetail::getAgvStatus, bo.getAgvStatus()) - .eq(StringUtils.isNotBlank(bo.getIsAgv()), WmsOutstockDetail::getIsAgv, bo.getIsAgv()) - // .eq(bo.getCompleteQty() != null, WmsOutstockDetail::getCompleteQty, bo.getCompleteQty()) //出库单子表原有 .eq(bo.getOutstockDetailId() != null, WmsOutstockDetail::getOutstockDetailId, bo.getOutstockDetailId()) .eq(StringUtils.isNotBlank(bo.getOutstockCode()), WmsOutstockDetail::getOutstockCode, bo.getOutstockCode()) @@ -105,6 +100,10 @@ public class WmsOutstockDetailServiceImpl implements IWmsOutstockDetailService { .eq(bo.getMaterialId() != null, WmsOutstockDetail::getMaterialId, bo.getMaterialId()) // .eq(bo.getOutstockQty() != null, WmsOutstockDetail::getOutstockQty, bo.getOutstockQty()) .eq(StringUtils.isNotBlank(bo.getMaterialCategoryId()), WmsOutstockDetail::getMaterialCategoryId, bo.getMaterialCategoryId()) + //agv出库任务新增 + .eq(StringUtils.isNotBlank(bo.getAgvStatus()), WmsOutstockDetail::getAgvStatus, bo.getAgvStatus()) + .eq(StringUtils.isNotBlank(bo.getIsAgv()), WmsOutstockDetail::getIsAgv, bo.getIsAgv()) + .eq(bo.getCompleteQty() != null, WmsOutstockDetail::getCompleteQty, bo.getCompleteQty()) .orderByDesc(WmsOutstockDetail::getCreateTime); return lqw; } diff --git a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPurchaseOrderServiceImpl.java b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPurchaseOrderServiceImpl.java index 1d3a74d3..a5c383bc 100644 --- a/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPurchaseOrderServiceImpl.java +++ b/ruoyi-modules/hwmom-wms/src/main/java/org/dromara/wms/service/impl/WmsPurchaseOrderServiceImpl.java @@ -97,7 +97,7 @@ public class WmsPurchaseOrderServiceImpl implements IWmsPurchaseOrderService { .select(BaseMaterialCategory::getMaterialCategoryName) .leftJoin(BaseMaterialCategory.class, BaseMaterialCategory::getMaterialCategoryId, WmsPurchaseOrder::getMaterialCategoryId) - .select(BaseSupplierInfo::getSupplierCode) + .select(BaseSupplierInfo::getSupplierCode,BaseSupplierInfo::getSupplierName) .leftJoin(BaseSupplierInfo.class,BaseSupplierInfo::getSupplierId,WmsPurchaseOrder::getSupplierId) .eq(StringUtils.isNotBlank(bo.getPoNo()), WmsPurchaseOrder::getPoNo, bo.getPoNo()) .eq(StringUtils.isNotBlank(bo.getPoStatus()), WmsPurchaseOrder::getPoStatus, bo.getPoStatus()) diff --git a/ruoyi-modules/hwmom-wms/src/main/resources/mapper/wms/WmsAllocateTaskMapper.xml b/ruoyi-modules/hwmom-wms/src/main/resources/mapper/wms/WmsAllocateTaskMapper.xml new file mode 100644 index 00000000..1d13d1a8 --- /dev/null +++ b/ruoyi-modules/hwmom-wms/src/main/resources/mapper/wms/WmsAllocateTaskMapper.xml @@ -0,0 +1,7 @@ + + + + +