feat(oms,wms): 出库业务单反审——已出库/已审核单据回退已创建
- 新增 POST /reservationStockOutOrderApi/reverseAudit,按issueStatus(2-已审核/4-已出库)判断可反审 - 主单回退已创建并打reverseStatus标记,进【已反审】tab(list status=-2),重新审核通过自动复位 - 执行单/明细软删+reverseFlag=1,预约库存调整记录软删 - WMS新增/stockOutOrderApi/omsReverseExecutionOrder:已出库还原实物库存+推OMS,未出库仅还原分配占用,WMS无数据幂等成功 - W出库/拣货/复核/交接单软删+reverseFlag=1,列表支持delFlag=2&reverseFlag=1【已反审】tab - 四页面新增归档详情接口getReverseInfo* - 生成出库异常记录【反审记录】(abnormalType=3,前缀FSYC) - 需先执行SQL: 20260908两个反审脚本(OMS库+WMS库)
This commit is contained in:
@@ -21,7 +21,7 @@ import java.util.Map;
|
||||
* @description: TODO
|
||||
* @date 2024/5/10 8:58
|
||||
**/
|
||||
@FeignClient(contextId = "remoteWmsServiceFeign",value = ServiceNameConstants.WMS_SERVICE,url = "http://10.33.0.109:8016",fallbackFactory = RemoteWmsFallbackFactory.class, configuration = FeignAutoConfiguration.class)
|
||||
@FeignClient(contextId = "remoteWmsServiceFeign",value = ServiceNameConstants.WMS_SERVICE,fallbackFactory = RemoteWmsFallbackFactory.class, configuration = FeignAutoConfiguration.class)
|
||||
public interface WmsServiceFeign {
|
||||
|
||||
/**
|
||||
@@ -133,6 +133,27 @@ public interface WmsServiceFeign {
|
||||
@PostMapping(value = "/stockInOrderApi/omsCancelInOrder")
|
||||
public AjaxResult omsCancelInOrder(@RequestBody StockInOrder stockInOrder);
|
||||
|
||||
/**
|
||||
* oms出库执行单反审(已出库/已复核单据客户通知回退场景):WMS侧还原实物库存并推送OMS库存、
|
||||
* 逻辑删除出库链路单据、生成1条出库异常【反审记录】;反审原因经 remark 透传。
|
||||
* 已产生下游不可逆数据时返回错误,OMS据此整体回滚。
|
||||
*/
|
||||
@ApiOperation("oms出库执行单反审WMS回退")
|
||||
@PostMapping(value = "/stockOutOrderApi/omsReverseExecutionOrder")
|
||||
public AjaxResult omsReverseExecutionOrder(@RequestBody StockOutOrder stockOutOrder);
|
||||
|
||||
/**
|
||||
* oms入库业务单反审:WMS侧一个事务内回退已入库/收货中/上架中单据——
|
||||
* 校验未产生出库(按入库单号+动作"分配库存/出库"查库存调整记录>0即有出库) ->
|
||||
* 按库存行整行回退库存扣减 -> 软删W入库单/W收货单/W上架单全链并打已反审标记
|
||||
* (各页面【已反审】tab按"已软删+已反审"查询归档数据)-> 写1条入库异常【反审记录】(type=3)。
|
||||
* 入参: inOrderNumber=执行入库单号, remark=业务单号+反审原因, updateBy/updateByName=反审人;
|
||||
* WMS无该单数据时幂等返回成功(未下发单反审不产生WMS数据)。
|
||||
*/
|
||||
@ApiOperation("oms入库单反审WMS回退")
|
||||
@PostMapping(value = "/stockInOrderApi/omsReverseInOrder")
|
||||
public AjaxResult omsReverseInOrder(@RequestBody StockInOrder stockInOrder);
|
||||
|
||||
@ApiOperation("oms查询物料列表")
|
||||
@GetMapping("/materialBaseInfoApi/queryList")
|
||||
public TableDataInfo getMaterialBaseInfoList(MaterialInfoDTO materialInfoDTO);
|
||||
|
||||
+12
@@ -82,6 +82,12 @@ public class RemoteWmsFallbackFactory implements FallbackFactory<WmsServiceFeign
|
||||
return AjaxResult.error("WMS取消下发清理失败:" + cause.getMessage());
|
||||
}
|
||||
|
||||
@Override
|
||||
public AjaxResult omsReverseExecutionOrder(StockOutOrder stockOutOrder) {
|
||||
//返回错误而非静默成功,让OMS反审事务能感知失败并整体回滚
|
||||
return AjaxResult.error("WMS出库执行单反审失败(服务降级):" + cause.getMessage());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void omsAutoAssign(StockOutOrderDTO stockOutOrderDTO) {
|
||||
|
||||
@@ -110,6 +116,12 @@ public class RemoteWmsFallbackFactory implements FallbackFactory<WmsServiceFeign
|
||||
return AjaxResult.error("WMS取消下发清理失败:" + cause.getMessage());
|
||||
}
|
||||
|
||||
@Override
|
||||
public AjaxResult omsReverseInOrder(StockInOrder stockInOrder) {
|
||||
//返回错误而非静默成功,让OMS侧反审能感知回退失败并整体回滚(反审可重试,WMS回退幂等)
|
||||
return AjaxResult.error("WMS入库单反审回退失败(服务降级):" + cause.getMessage());
|
||||
}
|
||||
|
||||
@Override
|
||||
public TableDataInfo getMaterialBaseInfoList(MaterialInfoDTO materialInfoDTO) {
|
||||
TableDataInfo tableDataInfo = new TableDataInfo();
|
||||
|
||||
Reference in New Issue
Block a user