|
@@ -119,13 +119,11 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* @desc : 修改原总单数据(订单,出库单)
|
|
* @desc : 修改原总单数据(订单,出库单)
|
|
|
- * posNegFlag :正负标识 true:正数,false:负数
|
|
|
|
|
- * 默认传值过来的是负数
|
|
|
|
|
* @date : 2024/3/29 10:43
|
|
* @date : 2024/3/29 10:43
|
|
|
* @author : 寇珊珊
|
|
* @author : 寇珊珊
|
|
|
*/
|
|
*/
|
|
|
@Transactional(rollbackFor = {Exception.class})
|
|
@Transactional(rollbackFor = {Exception.class})
|
|
|
- public void updatePrimaryTotal(OutboundVO outboundVO, Boolean posNegFlag) {
|
|
|
|
|
|
|
+ public void updatePrimaryTotal(OutboundVO outboundVO) {
|
|
|
|
|
|
|
|
//region 原入库单
|
|
//region 原入库单
|
|
|
Map<String, List<OutboundItemVO>> outboundItemVOListOutPri = outboundVO.getItemList().stream().filter(it -> it.getSOrderId() != null).collect(Collectors.groupingBy(OutboundItemVO::getSOutId));
|
|
Map<String, List<OutboundItemVO>> outboundItemVOListOutPri = outboundVO.getItemList().stream().filter(it -> it.getSOrderId() != null).collect(Collectors.groupingBy(OutboundItemVO::getSOutId));
|
|
@@ -148,13 +146,8 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
}
|
|
}
|
|
|
Outbound outboundPri = new Outbound();
|
|
Outbound outboundPri = new Outbound();
|
|
|
outboundPri.setOutId(str);
|
|
outboundPri.setOutId(str);
|
|
|
- if (posNegFlag) {
|
|
|
|
|
- outboundPri.setReturnQty((returnSumQty.add(returnIngSumQty)).negate());
|
|
|
|
|
- outboundPri.setReturnAmt((returnSumAmt.add(returnIngSumAmt)).negate());
|
|
|
|
|
- } else {
|
|
|
|
|
- outboundPri.setReturnQty(returnSumQty.add(returnIngSumQty));
|
|
|
|
|
- outboundPri.setReturnAmt(returnSumAmt.add(returnIngSumAmt));
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ outboundPri.setReturnQty( outboundResponse.getReturnQty().subtract( (returnSumQty.add(returnIngSumQty)).negate() ).abs() );
|
|
|
|
|
+ outboundPri.setReturnAmt( outboundResponse.getReturnAmt().subtract( (returnSumAmt.add(returnIngSumAmt)).negate() ).abs() );
|
|
|
outboundMapper.updateReturnMessage(outboundPri);
|
|
outboundMapper.updateReturnMessage(outboundPri);
|
|
|
}
|
|
}
|
|
|
//endregion
|
|
//endregion
|
|
@@ -181,13 +174,8 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
}
|
|
}
|
|
|
Order orderPri = new Order();
|
|
Order orderPri = new Order();
|
|
|
orderPri.setOrderId(str);
|
|
orderPri.setOrderId(str);
|
|
|
- if (posNegFlag) {
|
|
|
|
|
- orderPri.setReturnQty((returnSumQty.add(returnIngSumQty)).negate());
|
|
|
|
|
- orderPri.setReturnAmt((returnSumAmt.add(returnIngSumAmt)).negate());
|
|
|
|
|
- } else {
|
|
|
|
|
- orderPri.setReturnQty(returnSumQty.add(returnIngSumQty));
|
|
|
|
|
- orderPri.setReturnAmt(returnSumAmt.add(returnIngSumAmt));
|
|
|
|
|
- }
|
|
|
|
|
|
|
+ orderPri.setReturnQty( orderResponse.getReturnQty().subtract( (returnSumQty.add(returnIngSumQty)).negate() ).abs() ) ;
|
|
|
|
|
+ orderPri.setReturnAmt( orderResponse.getReturnAmt().subtract( (returnSumAmt.add(returnIngSumAmt)).negate() ).abs() );
|
|
|
orderMapper.updateReturnMessage(orderPri);
|
|
orderMapper.updateReturnMessage(orderPri);
|
|
|
}
|
|
}
|
|
|
//endregion
|
|
//endregion
|
|
@@ -216,11 +204,11 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
OutboundItem outboundItemPri = new OutboundItem();
|
|
OutboundItem outboundItemPri = new OutboundItem();
|
|
|
outboundItemPri.setItemId(outboundItemVO.getSOutItemId());
|
|
outboundItemPri.setItemId(outboundItemVO.getSOutItemId());
|
|
|
if (posNegFlag) {
|
|
if (posNegFlag) {
|
|
|
- outboundItemPri.setReturnQty(isOutEdit ? outboundItemVO.getOutQty().negate() : outboundItemVO.getOutingQty().negate());
|
|
|
|
|
- outboundItemPri.setReturnAmt(isOutEdit ? outboundItemVO.getOutAmt().negate() : outboundItemVO.getOutingAmt().negate());
|
|
|
|
|
|
|
+ outboundItemPri.setReturnQty(isOutEdit ? outboundItemResponse.getReturnQty().subtract(outboundItemVO.getOutQty().negate()).abs() : outboundItemResponse.getReturnQty().subtract(outboundItemVO.getOutingQty().negate()).abs());
|
|
|
|
|
+ outboundItemPri.setReturnAmt(isOutEdit ? outboundItemResponse.getReturnAmt().subtract(outboundItemVO.getOutAmt().negate()).abs() : outboundItemResponse.getReturnAmt().subtract(outboundItemVO.getOutingAmt().negate()).abs());
|
|
|
} else {
|
|
} else {
|
|
|
- outboundItemPri.setReturnQty(isOutEdit ? outboundItemVO.getOutQty() : outboundItemVO.getOutingQty());
|
|
|
|
|
- outboundItemPri.setReturnAmt(isOutEdit ? outboundItemVO.getOutAmt() : outboundItemVO.getOutingAmt());
|
|
|
|
|
|
|
+ outboundItemPri.setReturnQty(isOutEdit ? outboundItemResponse.getReturnQty().subtract(outboundItemVO.getOutQty()).abs() : outboundItemResponse.getReturnQty().subtract(outboundItemVO.getOutingQty()).abs());
|
|
|
|
|
+ outboundItemPri.setReturnAmt(isOutEdit ? outboundItemResponse.getReturnAmt().subtract(outboundItemVO.getOutAmt()).abs() : outboundItemResponse.getReturnAmt().subtract(outboundItemVO.getOutingAmt()).abs());
|
|
|
}
|
|
}
|
|
|
outboundItemMapper.updateReturnMessage(outboundItemPri);
|
|
outboundItemMapper.updateReturnMessage(outboundItemPri);
|
|
|
//endregion
|
|
//endregion
|
|
@@ -547,7 +535,7 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
//endregion
|
|
//endregion
|
|
|
|
|
|
|
|
//region 原入库单 原销售订单
|
|
//region 原入库单 原销售订单
|
|
|
- this.updatePrimaryTotal(outboundVO, true);
|
|
|
|
|
|
|
+ this.updatePrimaryTotal(outboundVO);
|
|
|
//endregion
|
|
//endregion
|
|
|
|
|
|
|
|
//region 账款
|
|
//region 账款
|
|
@@ -611,6 +599,7 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
|
|
|
|
|
//region 已出库编辑
|
|
//region 已出库编辑
|
|
|
if (Constant.OutStatus.YICHUKU.getName().equals(outboundVO.getOutStatus())) {
|
|
if (Constant.OutStatus.YICHUKU.getName().equals(outboundVO.getOutStatus())) {
|
|
|
|
|
+
|
|
|
//region 退账
|
|
//region 退账
|
|
|
if (outboundVO.getReceivableId() != null) {
|
|
if (outboundVO.getReceivableId() != null) {
|
|
|
accountService.reverseReceivable(outboundVO.getOutId(), Constant.InventoryDocCode.OUTBOUND.getTableName());
|
|
accountService.reverseReceivable(outboundVO.getOutId(), Constant.InventoryDocCode.OUTBOUND.getTableName());
|
|
@@ -622,8 +611,7 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
//endregion
|
|
//endregion
|
|
|
|
|
|
|
|
//region 修改明细
|
|
//region 修改明细
|
|
|
- List<OutboundItemVO> itemList = outboundVO.getItemList();
|
|
|
|
|
- for (OutboundItemVO outboundItemVO : itemList) {
|
|
|
|
|
|
|
+ for (OutboundItemVO outboundItemVO : outboundVO.getItemList()) {
|
|
|
|
|
|
|
|
//根据id查询
|
|
//根据id查询
|
|
|
OutboundItemResponse outboundItemResponse = outboundItemMapper.selectById(outboundItemVO.getItemId());
|
|
OutboundItemResponse outboundItemResponse = outboundItemMapper.selectById(outboundItemVO.getItemId());
|
|
@@ -655,6 +643,9 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
new UpdateWrapper<OutboundItem>().lambda()
|
|
new UpdateWrapper<OutboundItem>().lambda()
|
|
|
.eq(OutboundItem::getItemId, UUID.fromString(outboundItem.getItemId()))
|
|
.eq(OutboundItem::getItemId, UUID.fromString(outboundItem.getItemId()))
|
|
|
);
|
|
);
|
|
|
|
|
+ //这里给出库中赋值为0,后续要反写上游单据的退货数量,这里要是有值数量会不对
|
|
|
|
|
+ outboundItemVO.setOutingQty(BigDecimal.ZERO);
|
|
|
|
|
+ outboundItemVO.setOutingAmt(BigDecimal.ZERO);
|
|
|
}
|
|
}
|
|
|
//endregion
|
|
//endregion
|
|
|
|
|
|
|
@@ -729,7 +720,7 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
//endregion
|
|
//endregion
|
|
|
|
|
|
|
|
//region 反写出库总单 反写订单总单
|
|
//region 反写出库总单 反写订单总单
|
|
|
- this.updatePrimaryTotal(outboundVO, true);
|
|
|
|
|
|
|
+ this.updatePrimaryTotal(outboundVO);
|
|
|
//endregion
|
|
//endregion
|
|
|
|
|
|
|
|
//region 入账
|
|
//region 入账
|
|
@@ -756,8 +747,7 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
//endregion
|
|
//endregion
|
|
|
|
|
|
|
|
//region 修改明细
|
|
//region 修改明细
|
|
|
- List<OutboundItemVO> itemList = outboundVO.getItemList();
|
|
|
|
|
- for (OutboundItemVO outboundItemVO : itemList) {
|
|
|
|
|
|
|
+ for (OutboundItemVO outboundItemVO : outboundVO.getItemList()) {
|
|
|
|
|
|
|
|
//region 编辑明细
|
|
//region 编辑明细
|
|
|
if (outboundItemVO.getItemId() != null) {
|
|
if (outboundItemVO.getItemId() != null) {
|
|
@@ -772,6 +762,9 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
new UpdateWrapper<OutboundItem>().lambda()
|
|
new UpdateWrapper<OutboundItem>().lambda()
|
|
|
.eq(OutboundItem::getItemId, UUID.fromString(outboundItem.getItemId()))
|
|
.eq(OutboundItem::getItemId, UUID.fromString(outboundItem.getItemId()))
|
|
|
);
|
|
);
|
|
|
|
|
+ //这里给出库中赋值为0,后续要反写上游单据的退货数量,这里要是有值数量会不对
|
|
|
|
|
+ outboundItemVO.setOutingQty(BigDecimal.ZERO);
|
|
|
|
|
+ outboundItemVO.setOutingAmt(BigDecimal.ZERO);
|
|
|
}
|
|
}
|
|
|
//endregion
|
|
//endregion
|
|
|
|
|
|
|
@@ -835,7 +828,7 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
//endregion
|
|
//endregion
|
|
|
|
|
|
|
|
//region 反写出库总单 反写订单总单
|
|
//region 反写出库总单 反写订单总单
|
|
|
- this.updatePrimaryTotal(outboundVO, true);
|
|
|
|
|
|
|
+ this.updatePrimaryTotal(outboundVO);
|
|
|
//endregion
|
|
//endregion
|
|
|
}
|
|
}
|
|
|
//endregion
|
|
//endregion
|
|
@@ -1117,7 +1110,7 @@ public class OutboundSaleReturnService extends BaseService<Outbound> {
|
|
|
//endregion
|
|
//endregion
|
|
|
|
|
|
|
|
//region 反写出库总单 反写订单总单
|
|
//region 反写出库总单 反写订单总单
|
|
|
- this.updatePrimaryTotal(outboundVO, true);
|
|
|
|
|
|
|
+ this.updatePrimaryTotal(outboundVO);
|
|
|
//endregion
|
|
//endregion
|
|
|
|
|
|
|
|
//region 入账
|
|
//region 入账
|