From 054f0bdeb6ba56bc8171936085ecd7a6a4b39d49 Mon Sep 17 00:00:00 2001 From: mashuai Date: Tue, 17 Dec 2024 14:16:14 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=93=E5=AD=98=E6=97=A5=E5=BF=97=E8=B0=83?= =?UTF-8?q?=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/biz/aspect/StoreLogAspect.java | 39 ++++++++++++++++--- .../bonus/common/biz/domain/BmStorageLog.java | 3 ++ .../biz/domain/lease/LeaseOutDetails.java | 3 ++ .../impl/LeaseOutDetailsServiceImpl.java | 1 - .../material/basic/BmStorageLogMapper.xml | 4 +- 5 files changed, 42 insertions(+), 8 deletions(-) diff --git a/bonus-common-biz/src/main/java/com/bonus/common/biz/aspect/StoreLogAspect.java b/bonus-common-biz/src/main/java/com/bonus/common/biz/aspect/StoreLogAspect.java index 9467787f..4803a776 100644 --- a/bonus-common-biz/src/main/java/com/bonus/common/biz/aspect/StoreLogAspect.java +++ b/bonus-common-biz/src/main/java/com/bonus/common/biz/aspect/StoreLogAspect.java @@ -7,6 +7,7 @@ import com.bonus.common.biz.domain.BmStorageLog; import com.bonus.common.biz.domain.lease.LeaseOutDetails; import com.bonus.common.biz.domain.lease.LeaseOutRequestVo; import com.bonus.common.biz.domain.purchase.PurchaseDto; +import com.bonus.common.biz.enums.MaTypeManageTypeEnum; import com.bonus.common.biz.service.AsyncStoreLogService; import com.bonus.common.biz.utils.HttpResult; import com.bonus.common.core.constant.SecurityConstants; @@ -33,6 +34,7 @@ import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.Objects; +import java.util.stream.Collectors; /** * @author : 阮世耀 @@ -133,20 +135,42 @@ public class StoreLogAspect { // 领料出库库存变化 if (joinPoint.getArgs()[0] instanceof LeaseOutRequestVo) { LeaseOutRequestVo lod = (LeaseOutRequestVo) joinPoint.getArgs()[0]; + //数量类型设备 for (LeaseOutDetails leaseOutDetails : lod.getLeaseOutDetailsList()) { + if (leaseOutDetails.getManageType().equals(MaTypeManageTypeEnum.NUMBER_DEVICE.getTypeId())) { + BmStorageLog bmStorageLog = new BmStorageLog(); + bmStorageLog.setTaskId(String.valueOf(leaseOutDetails.getParentId())); + bmStorageLog.setTypeId(leaseOutDetails.getTypeId()); + bmStorageLog.setTypeName(leaseOutDetails.getTypeModelName()); + bmStorageLog.setManageType(String.valueOf(leaseOutDetails.getManageType())); + bmStorageLog.setTypeModelName(leaseOutDetails.getTypeName()); + bmStorageLog.setPreStoreNum(leaseOutDetails.getPreStoreNum()); + bmStorageLog.setOutNum(leaseOutDetails.getInputNum()); + bmStorageLog.setPostStoreNum(leaseOutDetails.getPostStoreNum()); + bmStorageLogList.add(bmStorageLog); + } + } + //编码类型设备 + LeaseOutDetails leaseOutDetails = lod.getLeaseOutDetailsList().get(0); + if (leaseOutDetails.getManageType().equals(MaTypeManageTypeEnum.CODE_DEVICE.getTypeId())) { BmStorageLog bmStorageLog = new BmStorageLog(); bmStorageLog.setTaskId(String.valueOf(leaseOutDetails.getParentId())); bmStorageLog.setTypeId(leaseOutDetails.getTypeId()); - bmStorageLog.setTypeName(leaseOutDetails.getTypeModelName()); + bmStorageLog.setTypeName(leaseOutDetails.getTypeName()); bmStorageLog.setManageType(String.valueOf(leaseOutDetails.getManageType())); - bmStorageLog.setTypeModelName(leaseOutDetails.getTypeName()); + bmStorageLog.setTypeModelName(leaseOutDetails.getTypeModelName()); + String maCode = lod.getLeaseOutDetailsList().stream() + .map(LeaseOutDetails::getMaCode) + .filter(Objects::nonNull) + .collect(Collectors.joining(",")); + bmStorageLog.setMaCode(maCode); bmStorageLog.setPreStoreNum(leaseOutDetails.getPreStoreNum()); - bmStorageLog.setOutNum(Objects.isNull(leaseOutDetails.getInputNum()) ? BigDecimal.ZERO : leaseOutDetails.getInputNum()); - bmStorageLog.setPostStoreNum(leaseOutDetails.getPostStoreNum()); + bmStorageLog.setOutNum(BigDecimal.valueOf(lod.getLeaseOutDetailsList().size())); + bmStorageLog.setPostStoreNum(leaseOutDetails.getPreStoreNum().subtract(bmStorageLog.getOutNum())); bmStorageLogList.add(bmStorageLog); } } - // 新购验收任务 PurchaseMacodeInfoController.modifyManageStatus + // 新购验收任务 if (joinPoint.getArgs()[0] instanceof PurchaseDto) { PurchaseDto purchaseDto = (PurchaseDto) joinPoint.getArgs()[0]; BmStorageLog bmStorageLog = new BmStorageLog(); @@ -161,6 +185,11 @@ public class StoreLogAspect { // 根据 InPutList 设置 InNum if (CollectionUtils.isNotEmpty(purchaseDto.getInPutList())) { bmStorageLog.setInNum(BigDecimal.valueOf(purchaseDto.getInPutList().size())); + String maCode = purchaseDto.getInPutList().stream() + .filter(Objects::nonNull) + .map(PurchaseDto::getMaCode) + .collect(Collectors.joining(",")); + bmStorageLog.setMaCode(maCode); } else { bmStorageLog.setInNum(purchaseDto.getInputNum()); } diff --git a/bonus-common-biz/src/main/java/com/bonus/common/biz/domain/BmStorageLog.java b/bonus-common-biz/src/main/java/com/bonus/common/biz/domain/BmStorageLog.java index 349f3ace..41476291 100644 --- a/bonus-common-biz/src/main/java/com/bonus/common/biz/domain/BmStorageLog.java +++ b/bonus-common-biz/src/main/java/com/bonus/common/biz/domain/BmStorageLog.java @@ -40,6 +40,9 @@ public class BmStorageLog extends BaseEntity @ApiModelProperty(value = "规格id") private Long typeId; + @ApiModelProperty(value = "机具id") + private String maCode; + /** 操作前库存数量 */ @Excel(name = "操作前库存数量") @ApiModelProperty(value = "操作前库存数量") diff --git a/bonus-common-biz/src/main/java/com/bonus/common/biz/domain/lease/LeaseOutDetails.java b/bonus-common-biz/src/main/java/com/bonus/common/biz/domain/lease/LeaseOutDetails.java index 2347c9c1..3972823c 100644 --- a/bonus-common-biz/src/main/java/com/bonus/common/biz/domain/lease/LeaseOutDetails.java +++ b/bonus-common-biz/src/main/java/com/bonus/common/biz/domain/lease/LeaseOutDetails.java @@ -39,6 +39,9 @@ public class LeaseOutDetails extends BaseEntity { @ApiModelProperty(value = "机具ID") private Long maId; + @ApiModelProperty(value = "机具code") + private String maCode; + /** 预领料数 */ @Excel(name = "预领料数") @ApiModelProperty(value = "预领料数") diff --git a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseOutDetailsServiceImpl.java b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseOutDetailsServiceImpl.java index 20e5ddbe..c97d47c6 100644 --- a/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseOutDetailsServiceImpl.java +++ b/bonus-modules/bonus-material/src/main/java/com/bonus/material/lease/service/impl/LeaseOutDetailsServiceImpl.java @@ -180,7 +180,6 @@ public class LeaseOutDetailsServiceImpl implements ILeaseOutDetailsService { if (res == 0) { throw new RuntimeException("出库失败,插入结算记录失败"); } - record.setPostStoreNum(getStorageNum(record)); } else { return AjaxResult.error("领料出库失败,机具库存不足"); } diff --git a/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmStorageLogMapper.xml b/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmStorageLogMapper.xml index 68246e82..3e8963ba 100644 --- a/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmStorageLogMapper.xml +++ b/bonus-modules/bonus-material/src/main/resources/mapper/material/basic/BmStorageLogMapper.xml @@ -121,14 +121,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" insert into bm_storage_log (model_title, `method`, task_id, type_id, - create_time, creator, remark, manage_type, + ma_code, create_time, creator, remark, manage_type, type_name, type_model_name, pre_store_num, in_num, out_num, back_num, pass_num, repair_num, agreement_id, scrap_num, `status`, post_store_num, result_code, result_msg, json_result ) values ( - #{item.modelTitle}, #{item.method}, #{item.taskId}, #{item.typeId}, + #{item.modelTitle}, #{item.method}, #{item.taskId}, #{item.typeId},#{item.maCode}, now(), #{item.creator}, #{item.remark}, #{item.manageType},#{item.typeName}, #{item.typeModelName}, #{item.preStoreNum}, #{item.inNum},#{item.outNum}, #{item.backNum}, #{item.passNum}, #{item.repairNum}, #{item.agreementId},