|
|
@@ -127,7 +127,7 @@ public class InboundReturnService extends BaseService<Inbound> {
|
|
|
//查询采购订单
|
|
|
PurchaseResponse purchaseResponse = purchaseMapper.selectById(inboundVO.getSPurId());
|
|
|
|
|
|
- if(purchaseResponse != null){
|
|
|
+ if (purchaseResponse != null) {
|
|
|
//反写采购订单退货数量、金额
|
|
|
purchaseMapper.updateAmount(new Purchase().setPurId(inboundVO.getSPurId())
|
|
|
.setReturnQty(purchaseResponse.getReturnQty().add(inboundVO.getReturnQty()))
|
|
|
@@ -137,7 +137,7 @@ public class InboundReturnService extends BaseService<Inbound> {
|
|
|
|
|
|
//反写入库单退货数量金额
|
|
|
InboundResponse inboundResponse = inboundMapper.selectById(inboundVO.getFromId());
|
|
|
- if(inboundResponse != null){
|
|
|
+ if (inboundResponse != null) {
|
|
|
inboundMapper.updateAmount(new Inbound().setIntoId(inboundVO.getFromId())
|
|
|
.setReturnQty(inboundResponse.getReturnQty().add(inboundVO.getReturnQty()))
|
|
|
.setReturnAmt(inboundResponse.getReturnAmt().add(inboundVO.getReturnAmt())));
|
|
|
@@ -148,7 +148,7 @@ public class InboundReturnService extends BaseService<Inbound> {
|
|
|
for (InboundItemVO inboundItemVO : itemList) {
|
|
|
//查询采购订单明细数据
|
|
|
PurchaseItemResponse purchaseItemResponse = purchaseItemMapper.selectById(inboundItemVO.getSPurItemId());
|
|
|
- if(purchaseItemResponse != null){
|
|
|
+ if (purchaseItemResponse != null) {
|
|
|
//反写订单明细退货数量和退货金额
|
|
|
purchaseItemMapper.updateAmount(
|
|
|
new PurchaseItem()
|
|
|
@@ -162,7 +162,7 @@ public class InboundReturnService extends BaseService<Inbound> {
|
|
|
|
|
|
//根据退货明细中入库明细id查询入库明细数据
|
|
|
InboundItemResponse inboundItemResponse = inboundItemMapper.selectById(inboundItemVO.getSIntoItemId());
|
|
|
- if(purchaseItemResponse != null){
|
|
|
+ if (purchaseItemResponse != null) {
|
|
|
inboundItemMapper.updateAmount(
|
|
|
new InboundItem()
|
|
|
.setItemId(inboundItemVO.getSIntoItemId())
|
|
|
@@ -183,115 +183,90 @@ public class InboundReturnService extends BaseService<Inbound> {
|
|
|
*/
|
|
|
@Transactional(rollbackFor = {Exception.class})
|
|
|
public ResponseResultVO<String> update(InboundVO inboundVO) {
|
|
|
- inboundVO.setReturnQty(inboundVO.getReturnQty().abs());
|
|
|
- inboundVO.setReturnAmt(inboundVO.getReturnAmt().abs());
|
|
|
+
|
|
|
//查询编辑之前的采退单
|
|
|
InboundResponse inboundReturnResponse = inboundMapper.selectById(inboundVO.getIntoId());
|
|
|
- inboundReturnResponse.setReturnQty(inboundReturnResponse.getReturnQty().abs());
|
|
|
- inboundReturnResponse.setReturnAmt(inboundReturnResponse.getReturnAmt().abs());
|
|
|
-
|
|
|
- inboundVO.setReturnAmt(inboundVO.getReturnAmt().abs());
|
|
|
- if(inboundVO.getFromId() != null ){
|
|
|
- //查询采购订单
|
|
|
- PurchaseResponse purchaseResponse = purchaseMapper.selectById(inboundVO.getFromId());
|
|
|
- //采购订单原始退货数量 - 原始退货单退货数量
|
|
|
- BigDecimal purchaseReturnQty = purchaseResponse.getReturnQty().subtract(inboundReturnResponse.getReturnQty());
|
|
|
- BigDecimal purchaseReturnAmt = purchaseResponse.getReturnAmt().subtract(inboundReturnResponse.getReturnAmt());
|
|
|
- //反写采购订单已入库退货数量、金额
|
|
|
- purchaseMapper.updateAmount(new Purchase().setPurId(inboundVO.getFromId())
|
|
|
- .setReturnQty(purchaseReturnQty.add(inboundVO.getReturnAmt()))
|
|
|
- .setReturnAmt(purchaseReturnAmt.add(inboundVO.getReturnQty()))
|
|
|
- );
|
|
|
+ //原入库单
|
|
|
+ if (inboundReturnResponse.getFromId() != null) {
|
|
|
+ //反写上游入库单退货数量金额
|
|
|
+ InboundResponse sInboundResponse = inboundMapper.selectById(inboundReturnResponse.getFromId());
|
|
|
+ if (sInboundResponse != null) {
|
|
|
+ inboundMapper.updateAmount(new Inbound()
|
|
|
+ .setIntoId(sInboundResponse.getIntoId())
|
|
|
+ .setReturnQty(sInboundResponse.getReturnQty().subtract(inboundReturnResponse.getIntoQty().abs()).add(inboundVO.getIntoQty().abs()))
|
|
|
+ .setReturnAmt(sInboundResponse.getReturnAmt().subtract(inboundReturnResponse.getIntoAmt().abs()).add(inboundVO.getIntoAmt().abs())));
|
|
|
+ }
|
|
|
+ //反写上游采购单退货数量金额
|
|
|
+ if (sInboundResponse.getFromId() != null) {
|
|
|
+ //查询采购单
|
|
|
+ PurchaseResponse purchaseResponse = purchaseMapper.selectById(sInboundResponse.getFromId());
|
|
|
+ purchaseMapper.updateAmount(
|
|
|
+ new Purchase()
|
|
|
+ .setPurId(purchaseResponse.getPurId())
|
|
|
+ .setReturnQty(sInboundResponse.getReturnQty().subtract(inboundReturnResponse.getIntoQty().abs()).add(inboundVO.getIntoQty().abs()))
|
|
|
+ .setReturnAmt(sInboundResponse.getReturnAmt().subtract(inboundReturnResponse.getIntoAmt().abs()).add(inboundVO.getIntoAmt().abs())));
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
//校验明细
|
|
|
if (inboundVO.getItemList() != null && inboundVO.getItemList().size() > 0) {
|
|
|
- for (InboundItemVO inboundItemVO : inboundVO.getItemList()) {
|
|
|
- inboundItemVO.setReturnQty(inboundItemVO.getReturnQty().abs());
|
|
|
- inboundItemVO.setReturnAmt(inboundItemVO.getReturnAmt().abs());
|
|
|
- if(inboundItemVO.getSIntoItemId() != null ){
|
|
|
- InboundItemResponse inboundItemReturnResponse = inboundItemMapper.selectById(inboundItemVO.getSIntoItemId());
|
|
|
- inboundItemReturnResponse.setReturnQty(inboundItemReturnResponse.getReturnQty().abs());
|
|
|
- inboundItemReturnResponse.setReturnAmt(inboundItemReturnResponse.getReturnAmt().abs());
|
|
|
+ for (InboundItemVO inboundItemVO : inboundVO.getItemList()) { //查询原退货明细
|
|
|
+ InboundItemResponse inboundItem = inboundItemMapper.selectById(inboundItemVO.getItemId());
|
|
|
+ if (inboundItemVO.getSIntoItemId() != null) {
|
|
|
|
|
|
+ //查询上游入库明细
|
|
|
+ InboundItemResponse inboundItemReturnResponse = inboundItemMapper.selectById(inboundItemVO.getSIntoItemId());
|
|
|
+ if (inboundItemReturnResponse != null) {
|
|
|
+ //修改入库单明细 已入库退货数量/金额
|
|
|
+ inboundItemMapper.updateAmount(new InboundItem()
|
|
|
+ .setItemId(inboundItemReturnResponse.getItemId())
|
|
|
+ .setReturnQty(inboundItemReturnResponse.getReturnQty().subtract(inboundItem.getIntoQty().abs()).add(inboundItemVO.getIntoQty().abs()))
|
|
|
+ .setReturnAmt(inboundItemReturnResponse.getReturnAmt().subtract(inboundItem.getIntoAmt().abs()).add(inboundItemVO.getIntoAmt().abs())));
|
|
|
+ }
|
|
|
|
|
|
- //查询采购订单明细数据
|
|
|
+ }
|
|
|
+ //修改上游采购明细
|
|
|
+ if (inboundItemVO.getSPurItemId() != null) {
|
|
|
+ //查询上游采购订单明细
|
|
|
PurchaseItemResponse purchaseItemResponse = purchaseItemMapper.selectById(inboundItemVO.getSPurItemId());
|
|
|
- BigDecimal purchaseItemReturnQty = purchaseItemResponse.getReturnQty().subtract(inboundItemReturnResponse.getReturnQty());
|
|
|
- BigDecimal purchaseItemReturnAmt = purchaseItemResponse.getReturnAmt().subtract(inboundItemReturnResponse.getReturnAmt());
|
|
|
- //反写采购订单明细退货数量和退货金额
|
|
|
purchaseItemMapper.updateAmount(
|
|
|
new PurchaseItem()
|
|
|
- .setItemId(inboundItemVO.getSPurItemId())
|
|
|
- .setReturnQty(purchaseItemReturnQty.add(inboundItemVO.getReturnQty().setScale(6, BigDecimal.ROUND_HALF_UP)))
|
|
|
- .setReturnAmt(purchaseItemReturnAmt.add(inboundItemVO.getReturnAmt().setScale(6, BigDecimal.ROUND_HALF_UP)))
|
|
|
- );
|
|
|
- //根据退货明细中入库明细id查询入库明细数据
|
|
|
- InboundItemResponse inboundItemResponse = inboundItemMapper.selectById(inboundItemVO.getSIntoItemId());
|
|
|
- BigDecimal inboundItemReturnQty = inboundItemResponse.getReturnQty().subtract(inboundItemReturnResponse.getReturnQty());
|
|
|
- BigDecimal inboundItemReturnAmt = inboundItemResponse.getReturnAmt().subtract(inboundItemReturnResponse.getReturnAmt());
|
|
|
-
|
|
|
-
|
|
|
- BigDecimal ReturnQty = inboundItemReturnQty.add(inboundItemVO.getReturnQty().setScale(6, BigDecimal.ROUND_HALF_UP));
|
|
|
- BigDecimal ReturnAm = inboundItemReturnAmt.add(inboundItemVO.getReturnAmt().setScale(6, BigDecimal.ROUND_HALF_UP));
|
|
|
- //反写原始入库单明细 不是负向的入库单
|
|
|
- inboundItemMapper.updateAmount(
|
|
|
- new InboundItem()
|
|
|
- .setItemId(inboundItemResponse.getItemId())
|
|
|
- .setReturnQty(ReturnQty)
|
|
|
- .setReturnAmt(ReturnAm)
|
|
|
- );
|
|
|
- //反写原始入库单
|
|
|
- InboundResponse inboundResponse = inboundMapper.selectById(inboundItemVO.getSIntoId());
|
|
|
- BigDecimal inboundReturnQty = inboundResponse.getReturnQty().subtract(inboundItemReturnResponse.getReturnQty());
|
|
|
- BigDecimal inboundReturnAmt = inboundResponse.getReturnAmt().subtract(inboundItemReturnResponse.getReturnAmt());
|
|
|
- inboundMapper.updateAmount(new Inbound().setIntoId(inboundItemVO.getSIntoId())
|
|
|
- .setReturnQty(inboundReturnQty.add(inboundItemVO.getReturnQty()))
|
|
|
- .setReturnAmt(inboundReturnAmt.add(inboundItemVO.getReturnAmt())));
|
|
|
+ .setItemId(purchaseItemResponse.getItemId())
|
|
|
+ .setReturnQty(purchaseItemResponse.getReturnQty().subtract(inboundItem.getIntoQty().abs()).add(inboundItemVO.getIntoQty().abs()))
|
|
|
+ .setReturnAmt(purchaseItemResponse.getReturnAmt().subtract(inboundItem.getIntoAmt().abs()).add(inboundItemVO.getIntoAmt().abs())));
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
- //修改采退明细
|
|
|
- InboundItem inboundItem = new InboundItem();
|
|
|
- inboundItem.setItemId(inboundItemVO.getItemId());
|
|
|
- inboundItem.setReturnQty(inboundItemVO.getReturnQty().multiply(new BigDecimal(-1)));
|
|
|
- inboundItem.setReturnAmt(inboundItemVO.getReturnAmt().multiply(new BigDecimal(-1)));
|
|
|
- //修改
|
|
|
- inboundItemMapper.update(inboundItem,
|
|
|
- new UpdateWrapper<InboundItem>().lambda()
|
|
|
- .eq(InboundItem::getItemId, UUID.fromString(inboundItem.getItemId()))
|
|
|
- );
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //删除 采退入库明细
|
|
|
+ //删除明细
|
|
|
if (inboundVO.getDeleteItemList() != null && inboundVO.getDeleteItemList().size() > 0) {
|
|
|
for (InboundItemVO inboundItemVO : inboundVO.getDeleteItemList()) {
|
|
|
- if (inboundItemVO.getItemId() != null) {
|
|
|
- //修改 采退明细 状态
|
|
|
- InboundItem inboundItem = inboundItemConvert.convertToPo(inboundItemVO);
|
|
|
- inboundItem.setFlgValid(false);
|
|
|
- //修改
|
|
|
- inboundItemMapper.update(inboundItem,
|
|
|
- new UpdateWrapper<InboundItem>().lambda()
|
|
|
- .eq(InboundItem::getItemId, UUID.fromString(inboundItem.getItemId()))
|
|
|
- );
|
|
|
+ //查询原退货明细
|
|
|
+ InboundItemResponse inboundItem = inboundItemMapper.selectById(inboundItemVO.getItemId());
|
|
|
+ if (inboundItemVO.getSIntoItemId() != null) {
|
|
|
+ //查询上游入库明细
|
|
|
+ InboundItemResponse inboundItemReturnResponse = inboundItemMapper.selectById(inboundItemVO.getSIntoItemId());
|
|
|
+ if (inboundItemReturnResponse != null) {
|
|
|
+ //修改入库单明细 已入库退货数量/金额
|
|
|
+ inboundItemMapper.updateAmount(new InboundItem()
|
|
|
+ .setItemId(inboundItemReturnResponse.getItemId())
|
|
|
+ .setReturnQty(inboundItemReturnResponse.getReturnQty().subtract(inboundItem.getIntoQty().abs()))
|
|
|
+ .setReturnAmt(inboundItemReturnResponse.getReturnAmt().subtract(inboundItem.getIntoAmt().abs())));
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+ if (inboundItemVO.getSPurItemId() != null) {
|
|
|
+ //查询上游采购订单明
|
|
|
+ PurchaseItemResponse purchaseItemResponse = purchaseItemMapper.selectById(inboundItemVO.getSPurItemId());
|
|
|
+ purchaseItemMapper.updateAmount(
|
|
|
+ new PurchaseItem()
|
|
|
+ .setItemId(purchaseItemResponse.getItemId())
|
|
|
+ .setReturnQty(purchaseItemResponse.getReturnQty().subtract(inboundItem.getIntoQty().abs()))
|
|
|
+ .setReturnAmt(purchaseItemResponse.getReturnAmt().subtract(inboundItem.getIntoAmt().abs())));
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- //修改采退总单
|
|
|
- Inbound inbound = new Inbound();
|
|
|
- inbound.setIntoId(inboundVO.getIntoId());
|
|
|
- inbound.setReturnQty(inboundVO.getReturnQty().multiply(new BigDecimal(-1)));
|
|
|
- inbound.setReturnAmt(inboundVO.getReturnAmt().multiply(new BigDecimal(-1)));
|
|
|
- //修改
|
|
|
- inboundMapper.update(inbound,
|
|
|
- new UpdateWrapper<Inbound>().lambda().eq(Inbound::getIntoId, UUID.fromString(inbound.getIntoId()))
|
|
|
- );
|
|
|
-
|
|
|
|
|
|
inboundPurchaseReturnService.purchaseReturnInboundUpdate(inboundVO);
|
|
|
return ResponseResultUtil.success();
|
|
|
@@ -306,16 +281,16 @@ public class InboundReturnService extends BaseService<Inbound> {
|
|
|
public ResponseResultVO<String> cancel(InboundVO inboundVO) {
|
|
|
//查询当前 采退入库单 负
|
|
|
InboundResponse inboundResponse = inboundMapper.selectInboundReturnById(inboundVO.getIntoId());
|
|
|
- if(inboundResponse.getFromId()!=null){
|
|
|
+ if (inboundResponse.getFromId() != null) {
|
|
|
//反写上游入库单退货数量金额
|
|
|
InboundResponse sInboundResponse = inboundMapper.selectById(inboundResponse.getFromId());
|
|
|
- if(sInboundResponse != null){
|
|
|
+ if (sInboundResponse != null) {
|
|
|
inboundMapper.updateAmount(new Inbound().setIntoId(sInboundResponse.getIntoId())
|
|
|
.setReturnQty(sInboundResponse.getReturnQty().subtract(inboundResponse.getIntoQty().abs()))
|
|
|
.setReturnAmt(sInboundResponse.getReturnAmt().subtract(inboundResponse.getIntoAmt().abs())));
|
|
|
}
|
|
|
//反写上游采购订单退货数量金额
|
|
|
- if(sInboundResponse.getFromId()!=null){
|
|
|
+ if (sInboundResponse.getFromId() != null) {
|
|
|
//查询采购单
|
|
|
PurchaseResponse purchaseResponse = purchaseMapper.selectById(sInboundResponse.getFromId());
|
|
|
purchaseMapper.updateAmount(
|
|
|
@@ -329,7 +304,7 @@ public class InboundReturnService extends BaseService<Inbound> {
|
|
|
List<InboundItemResponse> inboundItemResponses = inboundItemMapper.selectByCond(new InboundItemQuery().setIntoId(inboundResponse.getIntoId()));
|
|
|
for (InboundItemResponse inboundItemRespons : inboundItemResponses) {
|
|
|
|
|
|
- if(inboundItemRespons.getSIntoItemId() != null){
|
|
|
+ if (inboundItemRespons.getSIntoItemId() != null) {
|
|
|
//查询源入库单明细
|
|
|
InboundItemResponse inboundItem = inboundItemMapper.selectById(inboundItemRespons.getSIntoItemId());
|
|
|
//修改入库单明细 已入库退货数量/金额
|
|
|
@@ -339,7 +314,7 @@ public class InboundReturnService extends BaseService<Inbound> {
|
|
|
.setReturnAmt(inboundItem.getReturnAmt().subtract(inboundItemRespons.getIntoAmt().abs()))
|
|
|
);
|
|
|
}
|
|
|
- if(inboundItemRespons.getSPurItemId()!=null){
|
|
|
+ if (inboundItemRespons.getSPurItemId() != null) {
|
|
|
//查询采购单明细
|
|
|
PurchaseItemResponse purchaseItemResponse = purchaseItemMapper.selectById(inboundItemRespons.getSPurItemId());
|
|
|
//修改采购单明细 已入库退货数量/金额
|
|
|
@@ -372,7 +347,7 @@ public class InboundReturnService extends BaseService<Inbound> {
|
|
|
}
|
|
|
inboundVO.setReturnQty(inboundVO.getReturnQty().abs());
|
|
|
inboundVO.setReturnAmt(inboundVO.getReturnAmt().abs());
|
|
|
- if(inboundVO.getFromId() != null){
|
|
|
+ if (inboundVO.getFromId() != null) {
|
|
|
//查询采购订单
|
|
|
PurchaseResponse purchaseResponse = purchaseMapper.selectById(inboundVO.getFromId()); //采购订单id
|
|
|
|
|
|
@@ -389,7 +364,7 @@ public class InboundReturnService extends BaseService<Inbound> {
|
|
|
inboundItemVO.setReturnQty(inboundItemVO.getReturnQty().abs());
|
|
|
inboundItemVO.setReturnAmt(inboundItemVO.getReturnAmt().abs());
|
|
|
//根据退货明细中入库明细id查询入库明细数据
|
|
|
- if(inboundItemVO.getSIntoItemId() != null){
|
|
|
+ if (inboundItemVO.getSIntoItemId() != null) {
|
|
|
InboundItemResponse inboundItemResponse = inboundItemMapper.selectById(inboundItemVO.getSIntoItemId()); //原入库单明细id
|
|
|
BigDecimal returnQty = inboundItemResponse.getReturnQty().add(inboundItemVO.getReturnQty().setScale(6, BigDecimal.ROUND_HALF_UP));
|
|
|
BigDecimal returnAmt = inboundItemResponse.getReturnAmt().add(inboundItemVO.getReturnAmt().setScale(6, BigDecimal.ROUND_HALF_UP));
|
|
|
@@ -406,7 +381,7 @@ public class InboundReturnService extends BaseService<Inbound> {
|
|
|
.setReturnAmt(returnAmt)
|
|
|
);
|
|
|
}
|
|
|
- if(inboundItemVO.getSPurItemId() != null){
|
|
|
+ if (inboundItemVO.getSPurItemId() != null) {
|
|
|
//反写订单出库明细 退货数量和退货金额
|
|
|
//查询采购订单明细数据
|
|
|
PurchaseItemResponse purchaseItemResponse = purchaseItemMapper.selectById(inboundItemVO.getSPurItemId());
|