From ba3489dc8c5f1219d2bc006eec2a16d3732ee51b Mon Sep 17 00:00:00 2001 From: liux <963924687@qq.com> Date: Fri, 11 Jul 2025 11:21:46 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=80=E8=B4=A7=E5=8D=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ims/controller/RefundGoodsController.java | 12 +- .../service/impl/RefundGoodsServiceImpl.java | 104 ++++++++++-------- 2 files changed, 67 insertions(+), 49 deletions(-) diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/RefundGoodsController.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/RefundGoodsController.java index ace5799..c2d1b70 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/RefundGoodsController.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/controller/RefundGoodsController.java @@ -6,11 +6,13 @@ import javax.validation.Valid; import com.bonus.canteen.core.ims.dto.*; import com.bonus.canteen.core.ims.vo.*; +import com.bonus.common.core.exception.ServiceException; import com.bonus.common.log.enums.OperaType; //import com.bonus.canteen.core.ims.common.annotation.PreventRepeatSubmit; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; @@ -56,6 +58,7 @@ public class RefundGoodsController extends BaseController { @PostMapping({"/save"}) @ApiOperation("新增退货单") + @Transactional public AjaxResult addRefundGoods(@RequestBody RefundGoodsAddDTO content) { RefundGoodsAddVO drpRefundGoodsAddVO = refundGoodsService.addRefundGoodsOrder(content); return success(drpRefundGoodsAddVO); @@ -63,9 +66,14 @@ public class RefundGoodsController extends BaseController { @PostMapping({"/commit"}) @ApiOperation("新增退货单") + @Transactional public AjaxResult commitRefundGoods(@RequestBody RefundGoodsCommitDTO content) { - RefundGoodsAddVO drpRefundGoodsAddVO = refundGoodsService.commitRefundGoodsOrder(content); - return success(drpRefundGoodsAddVO); + try{ + RefundGoodsAddVO drpRefundGoodsAddVO = refundGoodsService.commitRefundGoodsOrder(content); + return success(drpRefundGoodsAddVO); + }catch (Exception e) { + throw new ServiceException(e.getMessage()); + } } diff --git a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/RefundGoodsServiceImpl.java b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/RefundGoodsServiceImpl.java index a934536..47f1c4d 100644 --- a/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/RefundGoodsServiceImpl.java +++ b/bonus-modules/bonus-smart-canteen/src/main/java/com/bonus/canteen/core/ims/service/impl/RefundGoodsServiceImpl.java @@ -85,6 +85,8 @@ public class RefundGoodsServiceImpl implements IRefundGoodsService { @Override public RefundGoodsAddVO addRefundGoodsOrder(RefundGoodsAddDTO content) { + try{ + RefundGoods drpRefundGoods = new RefundGoods(); BeanUtil.copyProperties(content, drpRefundGoods, new String[0]); Long refundGoodsId = content.getRefundGoodsId(); @@ -119,59 +121,67 @@ public class RefundGoodsServiceImpl implements IRefundGoodsService { this.RefundGoodsDetailMapper.insertRefundGoodsDetail(drpRefundGoodsDetail); } return (new RefundGoodsAddVO()).setRefundGoodsId(drpRefundGoods.getRefundGoodsId()); + }catch (Exception e) { + throw new ServiceException(e.getMessage()); + } } @Override public RefundGoodsAddVO commitRefundGoodsOrder(RefundGoodsCommitDTO content) { - RefundGoods drpRefundGoods = new RefundGoods(); - BeanUtil.copyProperties(content, drpRefundGoods, new String[0]); - Long refundGoodsId = content.getRefundGoodsId(); - drpRefundGoods.setStatus(DrpCommitStatusEnum.SAVE.key()); - if(refundGoodsId == null){ - String fetchMaterialCode = NoGenerateUtils.generateRefundGoodsCode(); - drpRefundGoods.setRefundGoodsCode(fetchMaterialCode); - drpRefundGoods.setRelateOrderGoodsId(content.getOrderGoodsId()); - drpRefundGoods.setRefundTime(content.getRefundTime()); - drpRefundGoods.setCreateTime(DateUtils.getNowDate()); - drpRefundGoods.setCreateBy(SecurityUtils.getUsername()); - refundGoodsMapper.insertRefundGoods(drpRefundGoods); - }else{ - drpRefundGoods.setUpdateBy(SecurityUtils.getUsername()); - drpRefundGoods.setUpdateTime(DateUtils.getNowDate()); - refundGoodsMapper.updateRefundGoods(drpRefundGoods); - RefundGoodsDetailMapper.deleteRefundGoodsDetailByRefundRefundGoodsId(refundGoodsId); + try{ + RefundGoods drpRefundGoods = new RefundGoods(); + BeanUtil.copyProperties(content, drpRefundGoods, new String[0]); + Long refundGoodsId = content.getRefundGoodsId(); + drpRefundGoods.setStatus(DrpCommitStatusEnum.SAVE.key()); + if(refundGoodsId == null){ + String fetchMaterialCode = NoGenerateUtils.generateRefundGoodsCode(); + drpRefundGoods.setRefundGoodsCode(fetchMaterialCode); + drpRefundGoods.setRelateOrderGoodsId(content.getOrderGoodsId()); + drpRefundGoods.setRefundTime(content.getRefundTime()); + drpRefundGoods.setCreateTime(DateUtils.getNowDate()); + drpRefundGoods.setCreateBy(SecurityUtils.getUsername()); + refundGoodsMapper.insertRefundGoods(drpRefundGoods); + }else{ + drpRefundGoods.setUpdateBy(SecurityUtils.getUsername()); + drpRefundGoods.setUpdateTime(DateUtils.getNowDate()); + refundGoodsMapper.updateRefundGoods(drpRefundGoods); + RefundGoodsDetailMapper.deleteRefundGoodsDetailByRefundRefundGoodsId(refundGoodsId); + } + Iterator iterator1 = content.getDetailList().iterator(); + while(iterator1.hasNext()) { + RefundGoodsDetailAddDTO drpRefundGoodsDetailAddDTO = iterator1.next(); + RefundGoodsDetail drpRefundGoodsDetail = new RefundGoodsDetail(); + BeanUtil.copyProperties(drpRefundGoodsDetailAddDTO, drpRefundGoodsDetail, new String[0]); + drpRefundGoodsDetail.setRefundGoodsId(drpRefundGoods.getRefundGoodsId()); + drpRefundGoodsDetail.setCreateTime(DateUtils.getNowDate()); + drpRefundGoodsDetail.setCreateBy(SecurityUtils.getUsername()); + drpRefundGoodsDetail.setRefundGoodsCode(drpRefundGoods.getRefundGoodsCode()); + this.RefundGoodsDetailMapper.insertRefundGoodsDetail(drpRefundGoodsDetail); + } + ImsOutInventoryAdd imsOutInventoryAdd = new ImsOutInventoryAdd(); + imsOutInventoryAdd.setOutDate(content.getRefundTime()); + imsOutInventoryAdd.setFetchUser(content.getRefundContact()); + imsOutInventoryAdd.setWarehouseId(content.getRefundWarehouseId()); + imsOutInventoryAdd.setOutType(Long.valueOf(OutInventoryTypeEnum.BACK.key())); + imsOutInventoryAdd.setStatus(DrpCommitStatusEnum.COMMIT.key()); + Iterator iterator2 = content.getDetailList().iterator(); + List imsOutInventoryDetailAddList = new ArrayList<>(); + while(iterator2.hasNext()) { + RefundGoodsDetailAddDTO drpRefundGoodsDetailAddDTO = iterator2.next(); + ImsOutInventoryDetailAdd imsOutInventoryDetailAdd = new ImsOutInventoryDetailAdd(); + imsOutInventoryDetailAdd.setInventoryId(drpRefundGoodsDetailAddDTO.getInventoryId()); + imsOutInventoryDetailAdd.setFetchNum(drpRefundGoodsDetailAddDTO.getRefundNum()); + imsOutInventoryDetailAdd.setIntoDetailId(drpRefundGoodsDetailAddDTO.getIntoDetailId()); + imsOutInventoryDetailAddList.add(imsOutInventoryDetailAdd); + } + imsOutInventoryAdd.setImsOutInventoryDetailAddList(imsOutInventoryDetailAddList); + drpOutInventoryService.insertImsOutInventory( imsOutInventoryAdd); + + return (new RefundGoodsAddVO()).setRefundGoodsId(drpRefundGoods.getRefundGoodsId()); + }catch (Exception e) { + throw new ServiceException(e.getMessage()); } - Iterator iterator1 = content.getDetailList().iterator(); - while(iterator1.hasNext()) { - RefundGoodsDetailAddDTO drpRefundGoodsDetailAddDTO = iterator1.next(); - RefundGoodsDetail drpRefundGoodsDetail = new RefundGoodsDetail(); - BeanUtil.copyProperties(drpRefundGoodsDetailAddDTO, drpRefundGoodsDetail, new String[0]); - drpRefundGoodsDetail.setRefundGoodsId(drpRefundGoods.getRefundGoodsId()); - drpRefundGoodsDetail.setCreateTime(DateUtils.getNowDate()); - drpRefundGoodsDetail.setCreateBy(SecurityUtils.getUsername()); - drpRefundGoodsDetail.setRefundGoodsCode(drpRefundGoods.getRefundGoodsCode()); - this.RefundGoodsDetailMapper.insertRefundGoodsDetail(drpRefundGoodsDetail); - } - ImsOutInventoryAdd imsOutInventoryAdd = new ImsOutInventoryAdd(); - imsOutInventoryAdd.setOutDate(content.getRefundTime()); - imsOutInventoryAdd.setFetchUser(content.getRefundContact()); - imsOutInventoryAdd.setWarehouseId(content.getRefundWarehouseId()); - imsOutInventoryAdd.setOutType(Long.valueOf(OutInventoryTypeEnum.BACK.key())); - imsOutInventoryAdd.setStatus(DrpCommitStatusEnum.COMMIT.key()); - Iterator iterator2 = content.getDetailList().iterator(); - List imsOutInventoryDetailAddList = new ArrayList<>(); - while(iterator2.hasNext()) { - RefundGoodsDetailAddDTO drpRefundGoodsDetailAddDTO = iterator2.next(); - ImsOutInventoryDetailAdd imsOutInventoryDetailAdd = new ImsOutInventoryDetailAdd(); - imsOutInventoryDetailAdd.setInventoryId(drpRefundGoodsDetailAddDTO.getInventoryId()); - imsOutInventoryDetailAdd.setFetchNum(drpRefundGoodsDetailAddDTO.getRefundNum()); - imsOutInventoryDetailAdd.setIntoDetailId(drpRefundGoodsDetailAddDTO.getIntoDetailId()); - imsOutInventoryDetailAddList.add(imsOutInventoryDetailAdd); - } - imsOutInventoryAdd.setImsOutInventoryDetailAddList(imsOutInventoryDetailAddList); - drpOutInventoryService.insertImsOutInventory( imsOutInventoryAdd); - return (new RefundGoodsAddVO()).setRefundGoodsId(drpRefundGoods.getRefundGoodsId()); } @Override