|
@@ -2,9 +2,11 @@ package com.fjhx.victoriatourist.service.stock.impl;
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
import cn.hutool.core.bean.BeanUtil;
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
import cn.hutool.core.util.ObjectUtil;
|
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
import com.fjhx.item.service.product.ProductInfoService;
|
|
import com.fjhx.item.service.product.ProductInfoService;
|
|
|
|
+import com.fjhx.victoriatourist.entity.abnormal.po.AbnormalInfo;
|
|
import com.fjhx.victoriatourist.entity.stock.dto.StockTransferDto;
|
|
import com.fjhx.victoriatourist.entity.stock.dto.StockTransferDto;
|
|
import com.fjhx.victoriatourist.entity.stock.dto.StockTransferSelectDto;
|
|
import com.fjhx.victoriatourist.entity.stock.dto.StockTransferSelectDto;
|
|
import com.fjhx.victoriatourist.entity.stock.po.StockTransfer;
|
|
import com.fjhx.victoriatourist.entity.stock.po.StockTransfer;
|
|
@@ -12,6 +14,7 @@ import com.fjhx.victoriatourist.entity.stock.po.StockTransferDetails;
|
|
import com.fjhx.victoriatourist.entity.stock.vo.StockTransferDetailsVo;
|
|
import com.fjhx.victoriatourist.entity.stock.vo.StockTransferDetailsVo;
|
|
import com.fjhx.victoriatourist.entity.stock.vo.StockTransferVo;
|
|
import com.fjhx.victoriatourist.entity.stock.vo.StockTransferVo;
|
|
import com.fjhx.victoriatourist.mapper.stock.StockTransferMapper;
|
|
import com.fjhx.victoriatourist.mapper.stock.StockTransferMapper;
|
|
|
|
+import com.fjhx.victoriatourist.service.abnormal.AbnormalInfoService;
|
|
import com.fjhx.victoriatourist.service.stock.StockTransferDetailsService;
|
|
import com.fjhx.victoriatourist.service.stock.StockTransferDetailsService;
|
|
import com.fjhx.victoriatourist.service.stock.StockTransferService;
|
|
import com.fjhx.victoriatourist.service.stock.StockTransferService;
|
|
import com.fjhx.victoriatourist.utils.CodeEnum;
|
|
import com.fjhx.victoriatourist.utils.CodeEnum;
|
|
@@ -30,6 +33,9 @@ import org.springframework.transaction.annotation.Transactional;
|
|
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
import java.util.List;
|
|
|
|
+import java.util.Map;
|
|
|
|
+import java.util.function.Function;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -55,6 +61,8 @@ public class StockTransferServiceImpl extends ServiceImpl<StockTransferMapper, S
|
|
StockJournalService stockJournalService;
|
|
StockJournalService stockJournalService;
|
|
@Autowired
|
|
@Autowired
|
|
StockJournalDetailsService stockJournalDetailsService;
|
|
StockJournalDetailsService stockJournalDetailsService;
|
|
|
|
+ @Autowired
|
|
|
|
+ AbnormalInfoService abnormalInfoService;
|
|
|
|
|
|
@Override
|
|
@Override
|
|
public Page<StockTransferVo> getPage(StockTransferSelectDto dto) {
|
|
public Page<StockTransferVo> getPage(StockTransferSelectDto dto) {
|
|
@@ -128,10 +136,24 @@ public class StockTransferServiceImpl extends ServiceImpl<StockTransferMapper, S
|
|
List<Stock> stockList = new ArrayList<>();
|
|
List<Stock> stockList = new ArrayList<>();
|
|
List<StockTransferDetails> stockTransferDetailsList = stockTransferDto.getStockTransferDetailsList();
|
|
List<StockTransferDetails> stockTransferDetailsList = stockTransferDto.getStockTransferDetailsList();
|
|
stockTransferDetailsService.updateBatchById(stockTransferDetailsList);
|
|
stockTransferDetailsService.updateBatchById(stockTransferDetailsList);
|
|
|
|
+ //获取数据库中的数据
|
|
|
|
+ List<StockTransferDetails> oldstockTransferDetailsList = stockTransferDetailsService.listByIds(stockTransferDetailsList);
|
|
|
|
+ Map<Long, StockTransferDetails> oldstockTransferDetailsMap = oldstockTransferDetailsList.stream().collect(Collectors.toMap(StockTransferDetails::getId, Function.identity()));
|
|
for (StockTransferDetails stockTransferDetails : stockTransferDetailsList) {
|
|
for (StockTransferDetails stockTransferDetails : stockTransferDetailsList) {
|
|
Stock stock = new Stock();
|
|
Stock stock = new Stock();
|
|
stock.setProductId(stockTransferDetails.getProductId());
|
|
stock.setProductId(stockTransferDetails.getProductId());
|
|
stock.setQuantity(stockTransferDetails.getInQuantity());
|
|
stock.setQuantity(stockTransferDetails.getInQuantity());
|
|
|
|
+
|
|
|
|
+ //调仓接收数量与发出数量不一致
|
|
|
|
+ StockTransferDetails oldstockTransferDetails = oldstockTransferDetailsMap.get(stockTransferDetails.getId());
|
|
|
|
+ if (stockTransferDetails.getInQuantity()!=oldstockTransferDetails.getOutQuantity()) {
|
|
|
|
+ AbnormalInfo abnormalInfo = new AbnormalInfo();
|
|
|
|
+ abnormalInfo.setId(IdWorker.getId());
|
|
|
|
+ abnormalInfo.setType(30);
|
|
|
|
+ abnormalInfo.setLinkId(stockTransfer.getId());
|
|
|
|
+ abnormalInfo.setTitle("调仓接收数量与发出数量不一致");
|
|
|
|
+ abnormalInfoService.save(abnormalInfo);
|
|
|
|
+ }
|
|
}
|
|
}
|
|
//创建出入库记录
|
|
//创建出入库记录
|
|
StockJournal stockJournal = new StockJournal();
|
|
StockJournal stockJournal = new StockJournal();
|
|
@@ -142,9 +164,9 @@ public class StockTransferServiceImpl extends ServiceImpl<StockTransferMapper, S
|
|
//保存出入库记录
|
|
//保存出入库记录
|
|
stockJournalService.save(stockJournal);
|
|
stockJournalService.save(stockJournal);
|
|
//出库
|
|
//出库
|
|
- List<StockJournalDetails> stockJournalDetailsList = stockService.ModifyInventory(stockJournal.getId(), 2, stockList, stockTransfer.getOutWarehouseId());
|
|
|
|
|
|
+ stockService.ModifyInventory(stockJournal.getId(), 2, stockList, stockTransfer.getOutWarehouseId());
|
|
//入库
|
|
//入库
|
|
- stockService.ModifyInventory(stockJournal.getId(), 1, stockList, stockTransfer.getInWarehouseId());
|
|
|
|
|
|
+ List<StockJournalDetails> stockJournalDetailsList = stockService.ModifyInventory(stockJournal.getId(), 1, stockList, stockTransfer.getInWarehouseId());
|
|
//保存出入库记录明细
|
|
//保存出入库记录明细
|
|
stockJournalDetailsService.saveBatch(stockJournalDetailsList);
|
|
stockJournalDetailsService.saveBatch(stockJournalDetailsList);
|
|
}
|
|
}
|