Browse Source

util异常处理。

master
刘忱 2 years ago
parent
commit
6a41b64a58
  1. 15
      win-framework/win-spring-boot-starter-web/src/main/java/com/win/framework/web/core/handler/GlobalExceptionHandler.java
  2. 31
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectJob/InspectJobMainServiceImpl.java
  3. 10
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java

15
win-framework/win-spring-boot-starter-web/src/main/java/com/win/framework/web/core/handler/GlobalExceptionHandler.java

@ -1,6 +1,7 @@
package com.win.framework.web.core.handler;
import cn.hutool.core.exceptions.ExceptionUtil;
import cn.hutool.core.exceptions.UtilException;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.StrUtil;
import com.win.framework.apilog.core.service.ApiErrorLog;
@ -89,6 +90,9 @@ public class GlobalExceptionHandler {
if (ex instanceof AccessDeniedException) {
return accessDeniedExceptionHandler(request, (AccessDeniedException) ex);
}
if (ex instanceof UtilException) {
return utilExceptionHandler((UtilException) ex);
}
return defaultExceptionHandler(request, ex);
}
@ -211,6 +215,17 @@ public class GlobalExceptionHandler {
return CommonResult.error(ex.getCode(), ex.getMessage());
}
/**
* 处理业务异常 ServiceException
*
* 例如说商品库存不足用户手机号已存在
*/
@ExceptionHandler(value = UtilException.class)
public CommonResult<?> utilExceptionHandler(UtilException ex) {
log.info("[utilExceptionHandler]", ex);
return CommonResult.error(600, ex.getMessage());
}
/**
* 处理系统异常兜底处理所有的一切
*/

31
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectJob/InspectJobMainServiceImpl.java

@ -17,6 +17,7 @@ import com.win.module.wms.dal.dataobject.businesstype.BusinesstypeDO;
import com.win.module.wms.dal.dataobject.inspectJob.InspectJobMainDO;
import com.win.module.wms.dal.dataobject.inspectRecord.InspectRecordDetailDO;
import com.win.module.wms.dal.dataobject.inspectRecord.InspectRecordMainDO;
import com.win.module.wms.dal.dataobject.inspectRequest.InspectRequestDetailDO;
import com.win.module.wms.dal.dataobject.inspectRequest.InspectRequestMainDO;
import com.win.module.wms.dal.dataobject.transactiontype.TransactiontypeDO;
import com.win.module.wms.dal.mysql.balance.BalanceMapper;
@ -29,6 +30,7 @@ import com.win.module.wms.enums.job.JobStatusEnum;
import com.win.module.wms.enums.job.JobStatusState;
import com.win.module.wms.enums.request.RequestStatusEnum;
import com.win.module.wms.service.expectin.ExpectinService;
import com.win.module.wms.service.inspectRequest.InspectRequestDetailService;
import com.win.module.wms.service.transaction.TransactionService;
import com.win.module.wms.util.JobUtils;
import org.springframework.beans.BeanUtils;
@ -81,6 +83,8 @@ public class InspectJobMainServiceImpl implements InspectJobMainService {
private ExpectinService expectinService;
@Resource
private BalanceMapper balanceMapper;
@Resource
private InspectRequestDetailService inspectRequestDetailService;
@Override
public InspectJobMainDO getInspectJobMain(Long id) {
@ -311,8 +315,35 @@ public class InspectJobMainServiceImpl implements InspectJobMainService {
inspectRequestMainDO.setStatus(RequestStatusEnum.PARTIAL.getCode());
inspectRequestMainMapper.updateById(inspectRequestMainDO);
}
//全检,再次生成检验申请
if(inspectJobMainUpdateReqVO.getNextAction().equals("FULL_INSPECT")) {
InspectRequestMainDO requestMainDO = inspectRequestMainMapper.selectByNumber(inspectJobMainUpdateReqVO.getRequestNumber());
String requestNumber = serialNumberApi.generateCode(RuleCodeEnum.INSPECT_REQUEST.getCode());
requestMainDO.setNumber(requestNumber);
requestMainDO.setSampleQty(requestMainDO.getReceiveQty());
requestMainDO.setInspectType("FULL");
requestMainDO.setSampleMethod("QTY");
requestMainDO.setStatus(RequestStatusEnum.NEW.getCode());
requestMainDO.setId(null);
requestMainDO.setCreator(null);
requestMainDO.setCreateTime(null);
requestMainDO.setUpdater(null);
requestMainDO.setUpdateTime(null);
inspectRequestMainMapper.insert(requestMainDO);
List<InspectRequestDetailDO> requestDetailDOList = inspectRequestDetailService.selectList(requestMainDO.getId());
for(InspectRequestDetailDO inspectRequestDetailDO : requestDetailDOList) {
inspectRequestDetailDO.setId(null);
inspectRequestDetailDO.setCreator(null);
inspectRequestDetailDO.setCreateTime(null);
inspectRequestDetailDO.setUpdater(null);
inspectRequestDetailDO.setUpdateTime(null);
inspectRequestDetailDO.setMasterId(requestMainDO.getId());
inspectRequestDetailDO.setNumber(requestNumber);
}
} else {
//增加库存事务
transactionService.createTransaction(transactionCreateReqVOList);
}
//移除预计入
expectinService.deleteExpectinByJobNumber(inspectJobMainDO.getNumber());
//变更记录

10
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/inspectRequest/InspectRequestMainServiceImpl.java

@ -376,6 +376,11 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService
inspectJobMainDO.setStatus(JobStatusEnum.PENDING.getCode());
inspectJobMainDO.setRequestNumber(mainDO.getNumber());
inspectJobMainDO.setWarehouseCode(mainDO.getFromWarehouseCode());
inspectJobMainDO.setId(null);
inspectJobMainDO.setCreator(null);
inspectJobMainDO.setCreateTime(null);
inspectJobMainDO.setUpdater(null);
inspectJobMainDO.setUpdateTime(null);
String number = serialNumberApi.generateCode(RuleCodeEnum.INSPECT_JOB.getCode());
inspectJobMainDO.setNumber(number);
//增加业务类型
@ -387,6 +392,11 @@ public class InspectRequestMainServiceImpl implements InspectRequestMainService
InspectJobDetailDO inspectJobDetailDO = InspectJobDetailConvert.INSTANCE.convert(inspectRequestDetailDO);
inspectJobDetailDO.setNumber(number);
inspectJobDetailDO.setMasterId(inspectJobMainDO.getId());
inspectJobDetailDO.setId(null);
inspectJobDetailDO.setCreator(null);
inspectJobDetailDO.setCreateTime(null);
inspectJobDetailDO.setUpdater(null);
inspectJobDetailDO.setUpdateTime(null);
inspectJobDetailDOList.add(inspectJobDetailDO);
//预计出
ExpectoutCreateReqVO expectoutCreateReqVO = new ExpectoutCreateReqVO();

Loading…
Cancel
Save