|
|
@@ -12,19 +12,18 @@ import com.dk.common.response.ResponseResultVO;
|
|
|
import com.dk.mdm.infrastructure.convert.ivt.TransferConvert;
|
|
|
import com.dk.mdm.infrastructure.convert.ivt.TransferItemConvert;
|
|
|
import com.dk.mdm.mapper.ivt.InboundItemMapper;
|
|
|
+import com.dk.mdm.mapper.ivt.OutboundItemMapper;
|
|
|
import com.dk.mdm.mapper.ivt.TransferItemMapper;
|
|
|
-import com.dk.mdm.model.pojo.ivt.CheckItem;
|
|
|
-import com.dk.mdm.model.pojo.ivt.InboundItem;
|
|
|
-import com.dk.mdm.model.pojo.ivt.Transfer;
|
|
|
+import com.dk.mdm.model.pojo.ivt.*;
|
|
|
import com.dk.mdm.mapper.ivt.TransferMapper;
|
|
|
import com.dk.common.service.BaseService;
|
|
|
import com.dk.common.mapper.BaseMapper;
|
|
|
-import com.dk.mdm.model.pojo.ivt.TransferItem;
|
|
|
import com.dk.mdm.model.pojo.mac.RecPay;
|
|
|
import com.dk.mdm.model.pojo.mac.RecPayItem;
|
|
|
import com.dk.mdm.model.pojo.sale.Order;
|
|
|
import com.dk.mdm.model.query.ivt.TransferQuery;
|
|
|
import com.dk.mdm.model.response.ivt.InboundItemResponse;
|
|
|
+import com.dk.mdm.model.response.ivt.OutboundItemResponse;
|
|
|
import com.dk.mdm.model.response.ivt.TransferResponse;
|
|
|
import com.dk.mdm.model.vo.ivt.*;
|
|
|
import com.dk.mdm.service.common.CommonService;
|
|
|
@@ -78,6 +77,9 @@ public class TransferService extends BaseService<Transfer> {
|
|
|
@Autowired
|
|
|
private InboundItemMapper inboundItemMapper;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private OutboundItemMapper outboundItemMapper;
|
|
|
+
|
|
|
|
|
|
/**
|
|
|
* @desc : 重写主键
|
|
|
@@ -145,7 +147,7 @@ public class TransferService extends BaseService<Transfer> {
|
|
|
.setScale(6, BigDecimal.ROUND_HALF_UP);*/
|
|
|
// 获取入库表实体
|
|
|
InboundVO inboundVO = new InboundVO();
|
|
|
- List<InboundItem> inboundItemList=new ArrayList<>();
|
|
|
+ List<InboundItemVO> inboundItemVOList=new ArrayList<>();
|
|
|
// 获取出库表实体
|
|
|
OutboundVO outboundVO = new OutboundVO();
|
|
|
List<OutboundItemVO> outboundItemVOList=new ArrayList<>();
|
|
|
@@ -167,28 +169,46 @@ public class TransferService extends BaseService<Transfer> {
|
|
|
// 获取入库明细实体
|
|
|
for (TransferItemVO transferItemVO : transferVO.getItemList()) {
|
|
|
// 赋值入库明细实体
|
|
|
- InboundItem inboundItem=new InboundItem();
|
|
|
- inboundItem.setIntoingQty(transferItemVO.getTransferQty()).setFromId(transfer.getTransferId())
|
|
|
- .setIntoingAmt(BigDecimal.ZERO).setPriceInto(BigDecimal.ZERO).setIntoId(transferItemVO.getInvId())
|
|
|
- .setWhId(transferItemVO.getWhId()).setSkuId(transferItemVO.getSkuId())
|
|
|
- .setNonStdCode(transferItemVO.getONonStdCode()).setItemIndex(transferItemVO.getItemIndex());
|
|
|
- inboundItemList.add(inboundItem);
|
|
|
+ InboundItemVO inboundItemVO=new InboundItemVO();
|
|
|
+ inboundItemVO.setItemIndex(transferItemVO.getItemIndex()).setSkuId(transferItemVO.getSkuId())
|
|
|
+ .setIntoingQty(transferItemVO.getTransferQty()).setFromId(transfer.getTransferId())
|
|
|
+ .setIntoingAmt(BigDecimal.ZERO).setPriceInto(BigDecimal.ZERO)
|
|
|
+ .setWhId(transferItemVO.getWhId()).setNonStdCode(transferItemVO.getONonStdCode());
|
|
|
+
|
|
|
+ inboundItemVOList.add(inboundItemVO);
|
|
|
+
|
|
|
+ // 赋值出库明细信息。
|
|
|
+ OutboundItemVO outboundItemVO =new OutboundItemVO();
|
|
|
+ outboundItemVO.setItemIndex(transferItemVO.getItemIndex()).setSkuId(transferItemVO.getSkuId())
|
|
|
+ .setOutingQty(transferItemVO.getTransferQty()).setFromId(transfer.getTransferId())
|
|
|
+ .setOutingAmt(BigDecimal.ZERO).setPriceOut(BigDecimal.ZERO)
|
|
|
+ .setWhId(transferItemVO.getWhId()).setNonStdCode(transferItemVO.getONonStdCode());
|
|
|
+
|
|
|
+ outboundItemVOList.add(outboundItemVO);
|
|
|
}
|
|
|
+
|
|
|
+ // 赋值出库接口参数 总表和明细
|
|
|
+ outboundCheckMap.put("total",outboundVO);
|
|
|
+ outboundCheckMap.put("detail",outboundItemVOList);
|
|
|
+ // 调用盘点出库接口
|
|
|
+ OutboundVO outboundTransferVO = outboundCheckService.otherOutboundInsert(outboundCheckMap);
|
|
|
+
|
|
|
// 赋值入库接口参数 总表和明细
|
|
|
inboundMap.put("total", inboundVO);
|
|
|
- inboundMap.put("detail", inboundItemList);
|
|
|
+ inboundMap.put("detail", inboundItemVOList);
|
|
|
// 调用入库接口
|
|
|
InboundVO inboundTransferVO = inboundCheckService.checkInboundInsert(inboundMap);
|
|
|
// 如果库存接口返回成功,则插入调整单明细数据
|
|
|
if (transferVO.getItemList() != null && transferVO.getItemList().size() > 0) {
|
|
|
for (TransferItemVO transferItemVO : transferVO.getItemList()) {
|
|
|
- // 转换
|
|
|
+ // 转换库存调整单明细
|
|
|
TransferItem transferItem = transferItemConvert.convertToPo(transferItemVO);
|
|
|
// 在入库接口中获取入库明细数据
|
|
|
- List<InboundItemVO> inboundItemVOList = inboundTransferVO.getItemList().stream()
|
|
|
+ inboundItemVOList = inboundTransferVO.getItemList().stream()
|
|
|
.filter(it -> it.getItemIndex().equals(transferItemVO.getItemIndex())).collect(Collectors.toList());
|
|
|
// 通过入库明细数据的item_id查询出inv_id
|
|
|
InboundItemResponse inboundItemResponse = inboundItemMapper.selectById(inboundItemVOList.get(0).getItemId());
|
|
|
+
|
|
|
// 获取调整主表uuid
|
|
|
transferItem.setTransferId(transfer.getTransferId()).setTransferDate(LocalDate.now())
|
|
|
.setInvId(inboundItemResponse.getInvId());
|
|
|
@@ -198,19 +218,18 @@ public class TransferService extends BaseService<Transfer> {
|
|
|
InboundItem inboundItem= new InboundItem();
|
|
|
inboundItem.setFromItemId(transferItem.getItemId()).setItemId(inboundItemResponse.getItemId());
|
|
|
inboundItemService.updateByUuid(inboundItem);
|
|
|
- // 赋值出库明细信息。
|
|
|
- OutboundItemVO outboundItemVO =new OutboundItemVO();
|
|
|
- outboundItemVO.setFromItemId(transferItem.getItemId()).setItemIndex(transferItem.getItemIndex())
|
|
|
- .setOutingQty(transferItem.getTransferQty()).setFromId(transferItem.getTransferId())
|
|
|
- .setSkuId(transferItem.getSkuId()).setNonStdCode(transferItem.getONonStdCode())
|
|
|
- .setInvId(transferItem.getOInvId()).setPriceOut(BigDecimal.ZERO).setOutingAmt(BigDecimal.ZERO);
|
|
|
- outboundItemVOList.add(outboundItemVO);
|
|
|
+
|
|
|
+ // 在出库接口中获取入库明细数据
|
|
|
+ outboundItemVOList = outboundTransferVO.getItemList().stream()
|
|
|
+ .filter(it -> it.getItemIndex().equals(transferItemVO.getItemIndex())).collect(Collectors.toList());
|
|
|
+ // 通过出库明细数据的item_id查询出inv_id
|
|
|
+ OutboundItemResponse outboundItemResponse = outboundItemMapper.selectById(outboundItemVOList.get(0).getItemId());
|
|
|
+
|
|
|
+ // 赋值出库明细值 并修改出库明细from_item_id值
|
|
|
+ OutboundItem outboundItem= new OutboundItem();
|
|
|
+ outboundItem.setFromItemId(transferItem.getItemId()).setItemId(outboundItemResponse.getItemId());
|
|
|
+ inboundItemService.updateByUuid(inboundItem);
|
|
|
}
|
|
|
- // 赋值出库接口参数 总表和明细
|
|
|
- outboundCheckMap.put("total",outboundVO);
|
|
|
- outboundCheckMap.put("detail",outboundItemVOList);
|
|
|
- // 调用盘点出库接口
|
|
|
- outboundCheckService.otherOutboundInsert(outboundCheckMap);
|
|
|
}
|
|
|
}
|
|
|
// 非标号调整
|
|
|
@@ -231,50 +250,60 @@ public class TransferService extends BaseService<Transfer> {
|
|
|
// 获取入库明细实体
|
|
|
for (TransferItemVO transferItemVO : transferVO.getItemList()) {
|
|
|
// 赋值入库明细实体
|
|
|
- InboundItem inboundItem=new InboundItem();
|
|
|
- inboundItem.setIntoingQty(transferItemVO.getTransferQty()).setFromId(transfer.getTransferId())
|
|
|
- .setIntoingAmt(BigDecimal.ZERO).setPriceInto(BigDecimal.ZERO).setIntoId(transferItemVO.getInvId())
|
|
|
- .setWhId(transferItemVO.getOWhId()).setSkuId(transferItemVO.getSkuId())
|
|
|
- .setNonStdCode(transferItemVO.getNonStdCode()).setItemIndex(transferItemVO.getItemIndex());
|
|
|
- inboundItemList.add(inboundItem);
|
|
|
+ InboundItemVO inboundItemVO=new InboundItemVO();
|
|
|
+ inboundItemVO.setItemIndex(transferItemVO.getItemIndex()).setSkuId(transferItemVO.getSkuId())
|
|
|
+ .setIntoingQty(transferItemVO.getTransferQty()).setFromId(transfer.getTransferId())
|
|
|
+ .setIntoingAmt(BigDecimal.ZERO).setPriceInto(BigDecimal.ZERO)
|
|
|
+ .setWhId(transferItemVO.getOWhId()).setNonStdCode(transferItemVO.getNonStdCode());
|
|
|
+ inboundItemVOList.add(inboundItemVO);
|
|
|
+
|
|
|
+ // 赋值出库明细信息。
|
|
|
+ OutboundItemVO outboundItemVO =new OutboundItemVO();
|
|
|
+ outboundItemVO.setItemIndex(transferItemVO.getItemIndex()).setSkuId(transferItemVO.getSkuId())
|
|
|
+ .setOutingQty(transferItemVO.getTransferQty()).setFromId(transfer.getTransferId())
|
|
|
+ .setOutingAmt(BigDecimal.ZERO).setPriceOut(BigDecimal.ZERO)
|
|
|
+ .setWhId(transferItemVO.getWhId()).setNonStdCode(transferItemVO.getONonStdCode());
|
|
|
+ outboundItemVOList.add(outboundItemVO);
|
|
|
}
|
|
|
+ // 赋值出库接口参数 总表和明细
|
|
|
+ outboundCheckMap.put("total",outboundVO);
|
|
|
+ outboundCheckMap.put("detail",outboundItemVOList);
|
|
|
+ // 调用盘点出库接口
|
|
|
+ OutboundVO outboundTransferVO = outboundCheckService.otherOutboundInsert(outboundCheckMap);
|
|
|
+
|
|
|
// 赋值入库接口参数 总表和明细
|
|
|
inboundMap.put("total", inboundVO);
|
|
|
- inboundMap.put("detail", inboundItemList);
|
|
|
+ inboundMap.put("detail", inboundItemVOList);
|
|
|
// 调用入库接口
|
|
|
InboundVO inboundTransferVO = inboundCheckService.checkInboundInsert(inboundMap);
|
|
|
// 如果库存接口返回成功,则插入调整单明细数据
|
|
|
if (transferVO.getItemList() != null && transferVO.getItemList().size() > 0) {
|
|
|
for (TransferItemVO transferItemVO : transferVO.getItemList()) {
|
|
|
- // 转换
|
|
|
+ // 转换库存调整单明细
|
|
|
TransferItem transferItem = transferItemConvert.convertToPo(transferItemVO);
|
|
|
- // 在入库接口中获取入库明细数据
|
|
|
- List<InboundItemVO> inboundItemVOList = inboundTransferVO.getItemList().stream()
|
|
|
- .filter(it -> it.getItemIndex().equals(transferItemVO.getItemIndex())).collect(Collectors.toList());
|
|
|
- // 通过入库明细数据的item_id查询出inv_id
|
|
|
- InboundItemResponse inboundItemResponse = inboundItemMapper.selectById(inboundItemVOList.get(0).getItemId());
|
|
|
- // 获取调整主表uuid
|
|
|
- transferItem.setTransferId(transfer.getTransferId()).setTransferDate(LocalDate.now())
|
|
|
- .setInvId(inboundItemResponse.getInvId());
|
|
|
- // 插入调整单明细数据
|
|
|
- transferItemMapper.insert(transferItem);
|
|
|
- // 赋值入库明细值 并修改入库明细from_item_id值
|
|
|
- InboundItem inboundItem= new InboundItem();
|
|
|
- inboundItem.setFromItemId(transferItem.getItemId()).setItemId(inboundItemResponse.getItemId());
|
|
|
- inboundItemService.updateByUuid(inboundItem);
|
|
|
- // 赋值出库明细信息。
|
|
|
- OutboundItemVO outboundItemVO =new OutboundItemVO();
|
|
|
- outboundItemVO.setFromItemId(transferItem.getItemId()).setItemIndex(transferItem.getItemIndex())
|
|
|
- .setOutingQty(transferItem.getTransferQty()).setFromId(transferItem.getTransferId())
|
|
|
- .setSkuId(transferItem.getSkuId()).setNonStdCode(transferItem.getONonStdCode())
|
|
|
- .setInvId(transferItem.getOInvId()).setPriceOut(BigDecimal.ZERO).setOutingAmt(BigDecimal.ZERO);
|
|
|
- outboundItemVOList.add(outboundItemVO);
|
|
|
+ // 在入库接口中获取入库明细数据
|
|
|
+ inboundItemVOList = inboundTransferVO.getItemList().stream()
|
|
|
+ .filter(it -> it.getItemIndex().equals(transferItemVO.getItemIndex())).collect(Collectors.toList());
|
|
|
+ // 通过入库明细数据的item_id查询出inv_id
|
|
|
+ InboundItemResponse inboundItemResponse = inboundItemMapper.selectById(inboundItemVOList.get(0).getItemId());
|
|
|
+
|
|
|
+ // 获取调整主表uuid
|
|
|
+ transferItem.setTransferId(transfer.getTransferId()).setTransferDate(LocalDate.now())
|
|
|
+ .setInvId(inboundItemResponse.getInvId());
|
|
|
+ // 插入调整单明细数据
|
|
|
+ transferItemMapper.insert(transferItem);
|
|
|
+ // 赋值入库明细值 并修改入库明细from_item_id值
|
|
|
+ InboundItem inboundItem= new InboundItem();
|
|
|
+ inboundItem.setFromItemId(transferItem.getItemId()).setItemId(inboundItemResponse.getItemId());
|
|
|
+ inboundItemService.updateByUuid(inboundItem);
|
|
|
+
|
|
|
+ // 在出库接口中获取入库明细数据
|
|
|
+ outboundItemVOList = outboundTransferVO.getItemList().stream()
|
|
|
+ .filter(it -> it.getItemIndex().equals(transferItemVO.getItemIndex())).collect(Collectors.toList());
|
|
|
+ // 通过出库明细数据的item_id查询出inv_id
|
|
|
+ OutboundItemResponse outboundItemResponse = outboundItemMapper.selectById(outboundItemVOList.get(0).getItemId());
|
|
|
}
|
|
|
- // 赋值出库接口参数 总表和明细
|
|
|
- outboundCheckMap.put("total",outboundVO);
|
|
|
- outboundCheckMap.put("detail",outboundItemVOList);
|
|
|
- // 调用盘点出库接口
|
|
|
- outboundCheckService.otherOutboundInsert(outboundCheckMap);
|
|
|
+
|
|
|
}
|
|
|
}
|
|
|
}
|