From 92324ab74c5f4bed377e6e1eeb36fc8fbb5f287d Mon Sep 17 00:00:00 2001 From: linfso Date: Wed, 26 Jun 2024 18:27:53 +0800 Subject: [PATCH] md --- .../emis/EmisWaybillProblemInfoController.java | 16 +++++++++++++++- .../service/IEmisWaybillProblemInfoService.java | 5 +++-- .../impl/EmisWaybillProblemInfoServiceImpl.java | 16 ++++++++++++++-- 3 files changed, 32 insertions(+), 5 deletions(-) diff --git a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillProblemInfoController.java b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillProblemInfoController.java index eebbad27d..cd66f9a72 100644 --- a/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillProblemInfoController.java +++ b/emis-biz-web/src/main/java/com/xdadan/erp/web/emis/EmisWaybillProblemInfoController.java @@ -22,6 +22,7 @@ import com.xdadan.erp.emis.service.IEmisTmsScanRecordService; import com.xdadan.erp.emis.utils.WaybillHelper; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.dao.DuplicateKeyException; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; @@ -224,6 +225,19 @@ public class EmisWaybillProblemInfoController extends EmisBaseController @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Long[] ids) { - return toAjax(emisWaybillProblemInfoService.deleteEmisWaybillProblemInfoByIds(ids)); + if(ids==null || ids.length>=0){ + return AjaxResult.error("请先选择问题件"); + } + + try { + return toAjax(emisWaybillProblemInfoService.deleteEmisWaybillProblemInfoByIds(ids)); + }catch (Exception ex){ + ex.printStackTrace(); + // 返回子定义异常 + if(ex instanceof EmisBizError){ + return AjaxResult.error(ex.getMessage(),((EmisBizError)ex).getErrorCode()); + } + return AjaxResult.error("服务器异常,联系客服"); + } } } diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisWaybillProblemInfoService.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisWaybillProblemInfoService.java index fefc1a34c..d0a0d606a 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisWaybillProblemInfoService.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/IEmisWaybillProblemInfoService.java @@ -11,8 +11,9 @@ package com.xdadan.erp.emis.service; import java.util.List; import com.xdadan.erp.emis.domain.EmisWaybillProblemInfo; +import com.xdadan.erp.emis.domain.exception.EmisBizError; -/** + /** * @ClassName EmisWaybillProblemInfoService * @Description 问题件 * @author linfso @@ -57,7 +58,7 @@ public interface IEmisWaybillProblemInfoService * @param ids 需要删除的问题件主键集合 * @return 结果 */ - public int deleteEmisWaybillProblemInfoByIds(Long[] ids); + public int deleteEmisWaybillProblemInfoByIds(Long[] ids) throws EmisBizError; /** * 删除问题件信息 diff --git a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillProblemInfoServiceImpl.java b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillProblemInfoServiceImpl.java index 6a3c1ac38..b207bab6d 100644 --- a/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillProblemInfoServiceImpl.java +++ b/emis-biz/src/main/java/com/xdadan/erp/emis/service/impl/EmisWaybillProblemInfoServiceImpl.java @@ -14,6 +14,7 @@ import java.util.*; import com.xdadan.erp.common.core.domain.AjaxResult; import com.xdadan.erp.common.utils.DateUtils; +import com.xdadan.erp.emis.domain.enumtype.EmisBizErrorType; import com.xdadan.erp.emis.domain.enumtype.ScanType; import com.xdadan.erp.emis.domain.exception.EmisBizError; import com.xdadan.erp.emis.domain.vo.scan.ScanInfo; @@ -106,8 +107,19 @@ public class EmisWaybillProblemInfoServiceImpl extends EmisBaseService implement * @return 结果 */ @Override - public int deleteEmisWaybillProblemInfoByIds(Long[] ids) - { + public int deleteEmisWaybillProblemInfoByIds(Long[] ids) throws EmisBizError { + // 检查数据 + for(Long id:ids){ + EmisWaybillProblemInfo emisWaybillProblemInfo=emisWaybillProblemInfoMapper.selectEmisWaybillProblemInfoById(id); + if(emisWaybillProblemInfo==null){ + throw new EmisBizError(EmisBizErrorType.FAIL,"问题件不存在"); + } + + if("1".equals(emisWaybillProblemInfo.getBlReversion())){ + throw new EmisBizError(EmisBizErrorType.FAIL,"问题件已回复,不允许删除"); + } + } + return emisWaybillProblemInfoMapper.deleteEmisWaybillProblemInfoByIds(ids); }