Commit cee29210869b8c6fe0ab621e1d5b6901082dc382
1 parent
82dc69e8
解决事务嵌套问题
Signed-off-by: TanYibin <5491541@qq.com>
Showing
6 changed files
with
39 additions
and
17 deletions
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/mes/servuce/impl/MesServiceImpl.java
... | ... | @@ -150,7 +150,11 @@ public class MesServiceImpl implements IMesService { |
150 | 150 | if (!success) { |
151 | 151 | throw new JeecgBootException("MES下发入库信息,更新入库组盘头失败"); |
152 | 152 | } |
153 | - return huahengMultiHandlerService.createReceiptTask(receiptContainerHeader, warehouseCode); | |
153 | + result = receiptContainerHeaderService.createReceiptTask(receiptContainerHeader, warehouseCode); | |
154 | + if (!result.isSuccess()) { | |
155 | + throw new JeecgBootException(result.getMessage()); | |
156 | + } | |
157 | + return result; | |
154 | 158 | } |
155 | 159 | |
156 | 160 | @Override |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/api/wms/service/WmsServiceImpl.java
... | ... | @@ -162,7 +162,11 @@ public class WmsServiceImpl implements WmsService { |
162 | 162 | if (!success) { |
163 | 163 | throw new JeecgBootException("WMS下发入库信息,更新入库组盘头失败"); |
164 | 164 | } |
165 | - return huahengMultiHandlerService.createReceiptTask(receiptContainerHeader, warehouseCode); | |
165 | + result = receiptContainerHeaderService.createReceiptTask(receiptContainerHeader, warehouseCode); | |
166 | + if (!result.isSuccess()) { | |
167 | + throw new JeecgBootException(result.getMessage()); | |
168 | + } | |
169 | + return result; | |
166 | 170 | } |
167 | 171 | |
168 | 172 | @Override |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/framework/service/impl/HuahengMultiHandlerServiceImpl.java
... | ... | @@ -72,12 +72,10 @@ public class HuahengMultiHandlerServiceImpl extends HuahengBaseController implem |
72 | 72 | @Override |
73 | 73 | @Transactional(rollbackFor = Exception.class) |
74 | 74 | public Result createReceiptTask(ReceiptContainerHeader receiptContainerHeader, String warehouseCode) { |
75 | - String lockKey = warehouseCode; | |
76 | - Result result = handleMultiProcess("createReceiptTask", lockKey, new MultiProcessListener() { | |
75 | + Result result = handleMultiProcess("createReceiptTask", warehouseCode, new MultiProcessListener() { | |
77 | 76 | @Override |
78 | 77 | public Result<?> doProcess() { |
79 | - Result result = receiptContainerHeaderService.createReceiptTask(receiptContainerHeader, warehouseCode); | |
80 | - return result; | |
78 | + return receiptContainerHeaderService.createReceiptTask(receiptContainerHeader, warehouseCode); | |
81 | 79 | } |
82 | 80 | }); |
83 | 81 | return result; |
... | ... | @@ -89,8 +87,7 @@ public class HuahengMultiHandlerServiceImpl extends HuahengBaseController implem |
89 | 87 | Result result = handleMultiProcess("combination", new MultiProcessListener() { |
90 | 88 | @Override |
91 | 89 | public Result<?> doProcess() { |
92 | - Result result = shipmentCombinationService.combination(combinationModel); | |
93 | - return result; | |
90 | + return shipmentCombinationService.combination(combinationModel); | |
94 | 91 | } |
95 | 92 | }); |
96 | 93 | return result; |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/receipt/receiptContainerHeader/service/impl/ReceiptContainerHeaderServiceImpl.java
... | ... | @@ -57,26 +57,37 @@ public class ReceiptContainerHeaderServiceImpl extends ServiceImpl<ReceiptContai |
57 | 57 | |
58 | 58 | @Autowired |
59 | 59 | private ReceiptContainerHeaderMapper receiptContainerHeaderMapper; |
60 | + | |
60 | 61 | @Autowired |
61 | 62 | private ReceiptContainerDetailMapper receiptContainerDetailMapper; |
63 | + | |
62 | 64 | @Resource |
63 | 65 | private IContainerService containerService; |
66 | + | |
64 | 67 | @Resource |
65 | 68 | private IReceiptContainerDetailService receiptContainerDetailService; |
69 | + | |
66 | 70 | @Resource |
67 | 71 | private ILocationService locationService; |
72 | + | |
68 | 73 | @Resource |
69 | 74 | private IReceiptContainerHeaderService receiptContainerHeaderService; |
75 | + | |
70 | 76 | @Resource |
71 | 77 | private ITaskHeaderService taskHeaderService; |
78 | + | |
72 | 79 | @Resource |
73 | 80 | private ITaskDetailService taskDetailService; |
81 | + | |
74 | 82 | @Resource |
75 | 83 | private IReceiptDetailService receiptDetailService; |
84 | + | |
76 | 85 | @Resource |
77 | 86 | private IReceiptHeaderService receiptHeaderService; |
87 | + | |
78 | 88 | @Resource |
79 | 89 | private IInventoryHeaderService inventoryHeaderService; |
90 | + | |
80 | 91 | @Resource |
81 | 92 | private IParameterConfigurationService parameterConfigurationService; |
82 | 93 | |
... | ... | @@ -106,7 +117,7 @@ public class ReceiptContainerHeaderServiceImpl extends ServiceImpl<ReceiptContai |
106 | 117 | } |
107 | 118 | |
108 | 119 | @Override |
109 | - @Transactional(rollbackFor = JeecgBootException.class, propagation = Propagation.REQUIRES_NEW) | |
120 | + @Transactional | |
110 | 121 | @OperationLog(bizId = "''", bizType = "'入库单追踪'", tag = "'入库任务生成'", extra = "#extraJsonString1", msg = "'任务ID:' + #taskHeader.getId()", |
111 | 122 | condition = "#receiptContainerDetailList.size() > 0", recordReturnValue = true) |
112 | 123 | @OperationLog(bizId = "''", bizType = "'任务追踪'", tag = "'入库任务生成'", extra = "#extraJsonString2", |
... | ... | @@ -115,7 +126,7 @@ public class ReceiptContainerHeaderServiceImpl extends ServiceImpl<ReceiptContai |
115 | 126 | public Result<TaskHeader> createReceiptTask(ReceiptContainerHeader receiptContainerHeader, String warehouseCode) { |
116 | 127 | log.info("开始创建入库任务"); |
117 | 128 | if (!receiptContainerHeader.getWarehouseCode().equals(warehouseCode)) { |
118 | - return Result.error("创建入库任务, id:" + receiptContainerHeader.getId() + "的入库组盘不能在" + warehouseCode + "仓库操作"); | |
129 | + throw new JeecgBootException("创建入库任务, id:" + receiptContainerHeader.getId() + "的入库组盘不能在" + warehouseCode + "仓库操作"); | |
119 | 130 | } |
120 | 131 | String containerCode = receiptContainerHeader.getContainerCode(); |
121 | 132 | String fromLocationCode = receiptContainerHeader.getFromLocationCode(); |
... | ... | @@ -125,11 +136,11 @@ public class ReceiptContainerHeaderServiceImpl extends ServiceImpl<ReceiptContai |
125 | 136 | List<ReceiptContainerDetail> receiptContainerDetailList = |
126 | 137 | receiptContainerDetailService.getReceiptContainerDetailListByHeaderId(receiptContainerHeader.getId()); |
127 | 138 | if (receiptContainerDetailList.size() == 0) { |
128 | - return Result.error("创建入库任务, id:" + receiptContainerHeader.getId() + "的入库组盘,没有组盘明细,请先组盘!"); | |
139 | + throw new JeecgBootException("创建入库任务, id:" + receiptContainerHeader.getId() + "的入库组盘,没有组盘明细,请先组盘!"); | |
129 | 140 | } |
130 | 141 | int receiptContainerStatus = receiptContainerHeader.getStatus(); |
131 | 142 | if (receiptContainerStatus != QuantityConstant.RECEIPT_CONTAINER_BUILD) { |
132 | - return Result.error("创建入库任务, 入库组盘状态不是创建状态"); | |
143 | + throw new JeecgBootException("创建入库任务, 入库组盘状态不是创建状态"); | |
133 | 144 | } |
134 | 145 | String containerFillStatus = QuantityConstant.STATUS_CONTAINER_FILL_SOME; |
135 | 146 | if (!StringUtils.isEmpty(receiptContainerHeader.getContainerFillStatus())) { |
... | ... | @@ -411,30 +422,36 @@ public class ReceiptContainerHeaderServiceImpl extends ServiceImpl<ReceiptContai |
411 | 422 | } |
412 | 423 | |
413 | 424 | @Override |
425 | + @Transactional | |
414 | 426 | public Result cancelReceiving(List<Integer> ids) { |
415 | 427 | Result result = null; |
416 | 428 | for (Integer id : ids) { |
417 | - result = cancelReceiving(id); | |
429 | + result = receiptContainerHeaderService.cancelReceiving(id); | |
430 | + if (!result.isSuccess()) { | |
431 | + throw new JeecgBootException(result.getMessage()); | |
432 | + } | |
418 | 433 | } |
419 | 434 | return result; |
420 | 435 | } |
421 | 436 | |
422 | 437 | @Override |
438 | + @Transactional | |
423 | 439 | public boolean updateToPortById(String toPort, int id) { |
424 | 440 | ReceiptContainerHeader receiptContainerHeader = new ReceiptContainerHeader(); |
425 | 441 | receiptContainerHeader.setToPort(toPort); |
426 | 442 | receiptContainerHeader.setId(id); |
427 | - boolean success = updateById(receiptContainerHeader); | |
443 | + boolean success = receiptContainerHeaderService.updateById(receiptContainerHeader); | |
428 | 444 | return success; |
429 | 445 | } |
430 | 446 | |
431 | 447 | @Override |
448 | + @Transactional | |
432 | 449 | public boolean updateToPortAndStatus(String toPort, int status, int id) { |
433 | 450 | ReceiptContainerHeader receiptContainerHeader = new ReceiptContainerHeader(); |
434 | 451 | receiptContainerHeader.setToPort(toPort); |
435 | 452 | receiptContainerHeader.setStatus(status); |
436 | 453 | receiptContainerHeader.setId(id); |
437 | - boolean success = updateById(receiptContainerHeader); | |
454 | + boolean success = receiptContainerHeaderService.updateById(receiptContainerHeader); | |
438 | 455 | return success; |
439 | 456 | } |
440 | 457 | |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/shipment/shipmentCombination/service/impl/ShipmentCombinationServiceImpl.java
... | ... | @@ -222,7 +222,7 @@ public class ShipmentCombinationServiceImpl implements IShipmentCombinationServi |
222 | 222 | combinationModel.setShipQty(inventoryQty); |
223 | 223 | shipmentQty = shipmentQty.subtract(inventoryQty); |
224 | 224 | } |
225 | - Result result = huahengMultiHandlerService.combination(combinationModel); | |
225 | + Result result = shipmentCombinationService.combination(combinationModel); | |
226 | 226 | if (!result.isSuccess()) { |
227 | 227 | throw new JeecgBootException(result.getMessage()); |
228 | 228 | } |
... | ... |
huaheng-wms-core/src/main/java/org/jeecg/modules/wms/task/taskHeader/service/impl/TaskHeaderServiceImpl.java
... | ... | @@ -867,7 +867,7 @@ public class TaskHeaderServiceImpl extends ServiceImpl<TaskHeaderMapper, TaskHea |
867 | 867 | } |
868 | 868 | |
869 | 869 | @Override |
870 | - @Transactional(rollbackFor = Exception.class, propagation = Propagation.REQUIRES_NEW) | |
870 | + @Transactional | |
871 | 871 | public Result sendTaskToWcs(Integer taskId) { |
872 | 872 | TaskHeader taskHeader = taskHeaderService.getById(taskId); |
873 | 873 | if (taskHeader == null) { |
... | ... |