diff --git a/src/main/java/com/gaotao/modules/automatedWarehouse/service/impl/PalletAutoGoToWCSImpl.java b/src/main/java/com/gaotao/modules/automatedWarehouse/service/impl/PalletAutoGoToWCSImpl.java index a818db3..85a678c 100644 --- a/src/main/java/com/gaotao/modules/automatedWarehouse/service/impl/PalletAutoGoToWCSImpl.java +++ b/src/main/java/com/gaotao/modules/automatedWarehouse/service/impl/PalletAutoGoToWCSImpl.java @@ -132,7 +132,17 @@ public class PalletAutoGoToWCSImpl implements PalletAutoGoToWCS { //组盘里面判断 结束组盘 才会修改栈板不可用标记 if("Y".equals(endFlag)) { - String username = ((SysUserEntity) SecurityUtils.getSubject().getPrincipal()).getUsername(); + // 获取当前用户,定时任务场景下使用默认值 - rqrq + String username = "sys_wms"; + try { + SysUserEntity currentUser = (SysUserEntity) SecurityUtils.getSubject().getPrincipal(); + if (currentUser != null) { + username = currentUser.getUsername(); + } + } catch (Exception e) { + // 定时任务或异步线程中无法获取Shiro上下文,使用默认用户 - rqrq + username = "sys_wms"; + } // 更新栈板calling_flag为Y wcsIntegrationMapper.updatePalletCallingFlag(site, palletId, "Y", "组盘操作", username); palletOperationLogService.logPalletOperation(palletId, site,"调用托盘","组盘操作","是否调用","N","Y",username,"");