From c0efb2e8358f4e7ee0774c340afd453c3d0c2471 Mon Sep 17 00:00:00 2001 From: liding <756868258@qq.com> Date: 星期二, 10 六月 2025 17:19:03 +0800 Subject: [PATCH] 1.待入库煤质维护入正式库 2.电子档案tree --- main-business/src/main/java/com/ruoyi/business/service/impl/PurchaseRegistrationServiceImpl.java | 41 ++++++++++++++++++++++++++++++++++++++--- 1 files changed, 38 insertions(+), 3 deletions(-) diff --git a/main-business/src/main/java/com/ruoyi/business/service/impl/PurchaseRegistrationServiceImpl.java b/main-business/src/main/java/com/ruoyi/business/service/impl/PurchaseRegistrationServiceImpl.java index 642cfea..ec9edcf 100644 --- a/main-business/src/main/java/com/ruoyi/business/service/impl/PurchaseRegistrationServiceImpl.java +++ b/main-business/src/main/java/com/ruoyi/business/service/impl/PurchaseRegistrationServiceImpl.java @@ -6,13 +6,18 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.business.dto.PurchaseRegistrationDto; +import com.ruoyi.business.entity.PendingInventory; import com.ruoyi.business.entity.PurchaseRegistration; +import com.ruoyi.business.mapper.PendingInventoryMapper; import com.ruoyi.business.mapper.PurchaseRegistrationMapper; import com.ruoyi.business.service.PurchaseRegistrationService; import com.ruoyi.common.utils.bean.BeanUtils; import lombok.RequiredArgsConstructor; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.Assert; +import java.math.BigDecimal; import java.util.Objects; /** @@ -30,6 +35,8 @@ private final PurchaseRegistrationMapper purchaseRegistrationMapper; + private final PendingInventoryMapper pendingInventoryMapper; + @Override public IPage<PurchaseRegistration> selectPurchaseRegistrationList(Page page, PurchaseRegistrationDto purchaseRegistrationDto) { LambdaQueryWrapper<PurchaseRegistration> queryWrapper = new LambdaQueryWrapper<>(); @@ -38,17 +45,45 @@ } @Override + @Transactional(rollbackFor = Exception.class) public int addOrEditPR(PurchaseRegistrationDto purchaseRegistrationDto) { + // 鍙傛暟鏍¢獙 + Assert.notNull(purchaseRegistrationDto, "閲囪喘鐧昏淇℃伅涓嶈兘涓虹┖"); + + // 鍒涘缓閲囪喘鐧昏瀹炰綋骞跺鍒跺睘鎬� PurchaseRegistration purchaseRegistration = new PurchaseRegistration(); - BeanUtils.copyProperties(purchaseRegistrationDto,purchaseRegistration); - + BeanUtils.copyProperties(purchaseRegistrationDto, purchaseRegistration); if (Objects.isNull(purchaseRegistrationDto.getId())) { - return purchaseRegistrationMapper.insert(purchaseRegistration); + // 鏂板閲囪喘鐧昏 + int insertCount = purchaseRegistrationMapper.insert(purchaseRegistration); + if (insertCount > 0) { + // 閲囪喘鐧昏鎴愬姛锛屽悓姝ュ垱寤哄緟鍏ュ簱璁板綍 + PendingInventory pendingInventory = createPendingInventory(purchaseRegistration); + return pendingInventoryMapper.insert(pendingInventory); + } + return insertCount; } else { + // 鏇存柊閲囪喘鐧昏 return purchaseRegistrationMapper.updateById(purchaseRegistration); } } + /** + * 鏍规嵁閲囪喘鐧昏淇℃伅鍒涘缓寰呭叆搴撹褰� + * @param purchaseRegistration 閲囪喘鐧昏瀹炰綋 + * @return 寰呭叆搴撳疄浣� + */ + private PendingInventory createPendingInventory(PurchaseRegistration purchaseRegistration) { + PendingInventory pendingInventory = new PendingInventory(); + // 澶嶅埗鍩烘湰灞炴�� + BeanUtils.copyProperties(purchaseRegistration, pendingInventory); + + // 璁剧疆寰呭叆搴撹褰曠壒鏈夌殑灞炴�э紙濡傛灉鏈夛級 + pendingInventory.setInventoryQuantity(purchaseRegistration.getPurchaseQuantity()); + pendingInventory.setCostPerUnit(new BigDecimal(22)); + return pendingInventory; + } + @Override public int delByIds(Long[] ids) { // 妫�鏌ュ弬鏁� -- Gitblit v1.9.3