From 84e0ad09d58944fc1fe43615ed81942a2eee1eb0 Mon Sep 17 00:00:00 2001 From: gaowdong Date: Wed, 9 Jul 2025 16:33:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=93=E5=AD=98=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ImsIntoInventoryController.java | 2 +- .../controller/ImsInventoryController.java | 2 +- .../controller/ImsOutInventoryController.java | 2 +- .../ims/domain/ImsOutInventoryDetail.java | 56 ++++++++++++++++++ .../domain/vo/ImsOutInventoryDetailVO.java | 57 +++++++++++++++++++ .../ims/mapper/ImsIntoInventoryMapper.java | 3 +- .../impl/ImsOutInventoryServiceImpl.java | 13 +++-- .../mapper/ims/ImsOutInventoryMapper.xml | 31 ++++++++-- 8 files changed, 153 insertions(+), 13 deletions(-) diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/ImsIntoInventoryController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/ImsIntoInventoryController.java index 34385b5..30c27f6 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/ImsIntoInventoryController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/ImsIntoInventoryController.java @@ -113,7 +113,7 @@ public class ImsIntoInventoryController extends BaseController //@PreventRepeatSubmit //@RequiresPermissions("ims:inventory:remove") @SysLog(title = "入库记录", businessType = OperaType.DELETE, logType = 1,module = "入库记录->删除入库记录") - @DeleteMapping("/{intoIds}") + @PostMapping("/{intoIds}") public AjaxResult remove(@PathVariable Long[] intoIds) { return toAjax(imsIntoInventoryService.deleteImsIntoInventoryByIntoIds(intoIds)); diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/ImsInventoryController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/ImsInventoryController.java index 0050276..7906865 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/ImsInventoryController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/ImsInventoryController.java @@ -118,7 +118,7 @@ public class ImsInventoryController extends BaseController //@PreventRepeatSubmit //@RequiresPermissions("ims:inventory:remove") @SysLog(title = "库存", businessType = OperaType.DELETE, logType = 1,module = "库存->删除库存") - @DeleteMapping("/{inventoryIds}") + @PostMapping("/{inventoryIds}") public AjaxResult remove(@PathVariable Long[] inventoryIds) { return toAjax(imsInventoryService.deleteImsInventoryByInventoryIds(inventoryIds)); diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/ImsOutInventoryController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/ImsOutInventoryController.java index 4ae029e..73d6d7f 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/ImsOutInventoryController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/ImsOutInventoryController.java @@ -113,7 +113,7 @@ public class ImsOutInventoryController extends BaseController //@PreventRepeatSubmit //@RequiresPermissions("ims:inventory:remove") @SysLog(title = "出库记录", businessType = OperaType.DELETE, logType = 1,module = "出库记录->删除出库记录") - @DeleteMapping("/{outIds}") + @PostMapping("/{outIds}") public AjaxResult remove(@PathVariable Long[] outIds) { return toAjax(imsOutInventoryService.deleteImsOutInventoryByOutIds(outIds)); diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/ImsOutInventoryDetail.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/ImsOutInventoryDetail.java index 9a9212b..343b9a8 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/ImsOutInventoryDetail.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/ImsOutInventoryDetail.java @@ -2,10 +2,13 @@ package com.bonus.canteen.core.ims.domain; import com.bonus.common.core.annotation.Excel; import com.bonus.common.core.web.domain.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.ToString; import java.math.BigDecimal; +import java.time.LocalDate; +import java.time.LocalDateTime; /** * 出库记录明细对象 ims_out_inventory_detail @@ -75,4 +78,57 @@ public class ImsOutInventoryDetail extends BaseEntity /** 删除标志(0代表存在 2代表删除) */ private String delFlag; + @ApiModelProperty(value = "仓库名称") + @Excel(name = "仓库名称") + private String warehouseName; + + @ApiModelProperty(value = "材料名称") + @Excel(name = "材料名称") + private String materialName; + + @ApiModelProperty(value = "货品类别") + @Excel(name = "货品类别") + private String materialTypeName; + + @ApiModelProperty(value = "计量单位") + @Excel(name = "计量单位") + private String unitName; + + @ApiModelProperty(value = "条码") + @Excel(name = "条码") + private String barCode; + + @ApiModelProperty(value = "货品规格") + @Excel(name = "货品规格") + private String materialSize; + + @ApiModelProperty(value = "区域名称") + @Excel(name = "区域名称") + private String areaName; + + @ApiModelProperty(value = "区域ID") + @Excel(name = "区域ID") + private String areaId; + + @ApiModelProperty(value = "货品编码") + @Excel(name = "货品编码") + private String materialCode; + + @ApiModelProperty(value = "入库单号") + @Excel(name = "入库单号") + private String intoCode; + + @ApiModelProperty(value = "入库时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "入库时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime intoDate; + + @ApiModelProperty(value = "当前批次剩余库存数量") + @Excel(name = "当前批次剩余库存数量") + private BigDecimal inventoryNum; + + @ApiModelProperty(value = "到期时间(保质期)") + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "到期时间(保质期)", width = 30, dateFormat = "yyyy-MM-dd") + private LocalDate expireTime; } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/vo/ImsOutInventoryDetailVO.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/vo/ImsOutInventoryDetailVO.java index c0f937f..12421a7 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/vo/ImsOutInventoryDetailVO.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/domain/vo/ImsOutInventoryDetailVO.java @@ -2,10 +2,13 @@ package com.bonus.canteen.core.ims.domain.vo; import com.bonus.common.core.annotation.Excel; import com.bonus.common.core.web.domain.BaseEntity; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import lombok.ToString; import java.math.BigDecimal; +import java.time.LocalDate; +import java.time.LocalDateTime; /** * 出库记录明细对象 ims_out_inventory_detail @@ -72,4 +75,58 @@ public class ImsOutInventoryDetailVO extends BaseEntity @Excel(name = "是否透支库存明细(1是2否)") private Long ifOverdraft; + @ApiModelProperty(value = "仓库名称") + @Excel(name = "仓库名称") + private String warehouseName; + + @ApiModelProperty(value = "材料名称") + @Excel(name = "材料名称") + private String materialName; + + @ApiModelProperty(value = "货品类别") + @Excel(name = "货品类别") + private String materialTypeName; + + @ApiModelProperty(value = "计量单位") + @Excel(name = "计量单位") + private String unitName; + + @ApiModelProperty(value = "条码") + @Excel(name = "条码") + private String barCode; + + @ApiModelProperty(value = "货品规格") + @Excel(name = "货品规格") + private String materialSize; + + @ApiModelProperty(value = "区域名称") + @Excel(name = "区域名称") + private String areaName; + + @ApiModelProperty(value = "区域ID") + @Excel(name = "区域ID") + private String areaId; + + @ApiModelProperty(value = "货品编码") + @Excel(name = "货品编码") + private String materialCode; + + @ApiModelProperty(value = "入库单号") + @Excel(name = "入库单号") + private String intoCode; + + @ApiModelProperty(value = "入库时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "入库时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime intoDate; + + @ApiModelProperty(value = "当前批次剩余库存数量") + @Excel(name = "当前批次剩余库存数量") + private BigDecimal inventoryNum; + + @ApiModelProperty(value = "到期时间(保质期)") + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "到期时间(保质期)", width = 30, dateFormat = "yyyy-MM-dd") + private LocalDate expireTime; + } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/mapper/ImsIntoInventoryMapper.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/mapper/ImsIntoInventoryMapper.java index d75206d..fdd111d 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/mapper/ImsIntoInventoryMapper.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/mapper/ImsIntoInventoryMapper.java @@ -4,6 +4,7 @@ import java.math.BigDecimal; import java.util.List; import com.bonus.canteen.core.ims.domain.ImsIntoInventory; import com.bonus.canteen.core.ims.domain.ImsIntoInventoryDetail; +import org.apache.ibatis.annotations.Param; /** * 入库记录Mapper接口 @@ -87,5 +88,5 @@ public interface ImsIntoInventoryMapper { public List selectImsIntoInventoryDetailListByInventoryId(Long inventoryId); - public int updateIntoInventoryNum(Long intoDetailId, BigDecimal inventoryNum); + public int updateIntoInventoryNum(@Param("intoDetailId") Long intoDetailId, @Param("fetchNum") BigDecimal fetchNum); } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/ImsOutInventoryServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/ImsOutInventoryServiceImpl.java index d03fdb4..ec31ebc 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/ImsOutInventoryServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/ImsOutInventoryServiceImpl.java @@ -203,7 +203,7 @@ public class ImsOutInventoryServiceImpl implements IImsOutInventoryService imsOutInventoryDetail.setIfOverdraft(CommonFlagEnum.NO.getKey()); } imsOutInventoryDetail.setDelFlag(String.valueOf(DelFlagEnum.DEL_FALSE.key())); - list.add(imsOutInventoryDetail); + if(Long.valueOf(2).equals(imsOutInventory.getStatus())) { if(Objects.isNull(imsOutInventoryDetail.getInventoryId()) || imsOutInventoryDetail.getInventoryId() < 0) { @@ -214,7 +214,6 @@ public class ImsOutInventoryServiceImpl implements IImsOutInventoryService } ImsInventoryUpdate imsInventoryUpdate = new ImsInventoryUpdate(); imsInventoryUpdate.setInventoryId(imsOutInventoryDetail.getInventoryId()); - imsInventoryUpdate.setFetchNum(imsOutInventoryDetail.getFetchNum()); int rows = imsInventoryService.updateImsInventory(imsInventoryUpdate); if(rows < 1) { throw new ServiceException("库存不足"); @@ -232,17 +231,23 @@ public class ImsOutInventoryServiceImpl implements IImsOutInventoryService int updateRows = imsIntoInventoryMapper. updateIntoInventoryNum(imsIntoInventoryDetail.getIntoDetailId(), imsIntoInventoryDetail.getInventoryNum()); if(updateRows > 0) { - tempFetchLeftNum = tempFetchLeftNum.subtract(imsIntoInventoryDetail.getInventoryNum()); totalPrice += (imsIntoInventoryDetail.getInventoryNum() .multiply(BigDecimal.valueOf(imsIntoInventoryDetail.getUnitPrice()))).longValue(); + imsOutInventoryDetail.setIntoDetailId(imsIntoInventoryDetail.getIntoDetailId()); + imsOutInventoryDetail.setFetchNum(imsIntoInventoryDetail.getInventoryNum()); + list.add(imsOutInventoryDetail); + tempFetchLeftNum = tempFetchLeftNum.subtract(imsIntoInventoryDetail.getInventoryNum()); } }else { int updateRows = imsIntoInventoryMapper. updateIntoInventoryNum(imsIntoInventoryDetail.getIntoDetailId(), tempFetchLeftNum); if(updateRows > 0) { - tempFetchLeftNum = tempFetchLeftNum.subtract(tempFetchLeftNum); totalPrice += (tempFetchLeftNum .multiply(BigDecimal.valueOf(imsIntoInventoryDetail.getUnitPrice()))).longValue(); + imsOutInventoryDetail.setIntoDetailId(imsIntoInventoryDetail.getIntoDetailId()); + imsOutInventoryDetail.setFetchNum(tempFetchLeftNum); + list.add(imsOutInventoryDetail); + tempFetchLeftNum = tempFetchLeftNum.subtract(tempFetchLeftNum); } } } diff --git a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/ImsOutInventoryMapper.xml b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/ImsOutInventoryMapper.xml index 2903e45..559a7aa 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/ImsOutInventoryMapper.xml +++ b/bonus-modules/bonus-smart-canteen/src/main/resources/mapper/ims/ImsOutInventoryMapper.xml @@ -52,6 +52,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + + + + + + + + + + @@ -104,11 +117,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"