| | |
| | | import java.util.List; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Propagation; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | /** |
| | | * @Description 盘点单物品 |
| | |
| | | */ |
| | | @Slf4j |
| | | @Service |
| | | @Transactional(propagation = Propagation.REQUIRED) |
| | | public class LWhFormInventoryGoodsServiceImpl extends BaseServiceImpl { |
| | | |
| | | /** |
| | |
| | | return this.select(inventoryGoods); |
| | | } |
| | | |
| | | /** |
| | | * @return |
| | | * @Description 新增盘点单物品记录 |
| | | * @Author 卢庆阳 |
| | | * @Date 2023/10/31 |
| | | */ |
| | | // public int add(List<Map<String, Object>> list, Long warehouseId) { |
| | | // List<LWhFormInventoryGoods> inventoryGoodsList = new ArrayList<>(); |
| | | // for (Map<String, Object> map : list) { |
| | | // LWhFormInventoryGoods inventoryGoods = new LWhFormInventoryGoods(); |
| | | // inventoryGoods.setId(IdUtil.generateId()); |
| | | // inventoryGoods.setWhFormInventoryId(warehouseId); |
| | | // inventoryGoods.setBaseGoodsTemplateId((Long) map.get("id")); |
| | | // inventoryGoods.setGoodsTemplateName((String) map.get("goodsname")); |
| | | // inventoryGoods.setUnit((String) map.get("unit")); |
| | | // inventoryGoods.setBaseGoodsModelsId((Long) map.get("modelsid")); |
| | | // inventoryGoods.setBaseGoodsModelsName((String) map.get("goodsTemplateId")); |
| | | // inventoryGoods.setInitCounts((Integer) map.get("endcount")); |
| | | // |
| | | // inventoryGoodsList.add(inventoryGoods); |
| | | // } |
| | | // return this.insert(inventoryGoodsList); |
| | | // } |
| | | public int add(List<FormInventoryGoodsVO> inventoryGoodsList, Long warehouseId) { |
| | | |
| | | public List<FormInventoryGoodsVO> add(List<FormInventoryGoodsVO> inventoryGoodsList, Long inventoryId) { |
| | | List<LWhFormInventoryGoods> goodsList = new ArrayList<>(); |
| | | for (FormInventoryGoodsVO inventoryGoods : inventoryGoodsList) { |
| | | LWhFormInventoryGoods lWhFormInventoryGoods = new LWhFormInventoryGoods(); |
| | | lWhFormInventoryGoods.setId(IdUtil.generateId()); |
| | | lWhFormInventoryGoods.setWhFormInventoryId(warehouseId); |
| | | lWhFormInventoryGoods.setWhFormInventoryId(inventoryId); |
| | | lWhFormInventoryGoods.setBaseGoodsTemplateId(inventoryGoods.getBaseGoodsTemplateId()); |
| | | lWhFormInventoryGoods.setGoodsTemplateName(inventoryGoods.getGoodsTemplateName()); |
| | | lWhFormInventoryGoods.setUnit(inventoryGoods.getUnit()); |
| | | lWhFormInventoryGoods.setBaseGoodsModelsId(inventoryGoods.getId()); |
| | | lWhFormInventoryGoods.setBaseGoodsModelsName(inventoryGoods.getBaseGoodsModelsName()); |
| | | Integer inventoryCount = inventoryGoods.getInventoryCount(); |
| | | Integer realNum = inventoryGoods.getRealNum(); |
| | | int errorCount = inventoryCount - realNum; |
| | | lWhFormInventoryGoods.setInventoryCounts(realNum); |
| | | lWhFormInventoryGoods.setErrorCounts(errorCount); |
| | | //盘点结果(1=正常;2=盘盈;3=盘亏) |
| | | lWhFormInventoryGoods.setInventoryResult((errorCount > 0) ? 2 : (errorCount < 0) ? 3 : 1); |
| | | lWhFormInventoryGoods.setInitCounts(inventoryGoods.getInventoryCount()); |
| | | //保存成功后返回id,用来进行记录的更新 |
| | | inventoryGoods.setId(lWhFormInventoryGoods.getId()); |
| | | goodsList.add(lWhFormInventoryGoods); |
| | | } |
| | | return this.insert(goodsList); |
| | | this.insert(goodsList); |
| | | return inventoryGoodsList; |
| | | } |
| | | |
| | | public int updateInventoryGoods(List<FormInventoryGoodsVO> inventoryGoodsList) { |
| | | List<LWhFormInventoryGoods> goodsList = new ArrayList<>(); |
| | | for (FormInventoryGoodsVO inventoryGoods : inventoryGoodsList) { |
| | | LWhFormInventoryGoods lWhFormInventoryGoods = new LWhFormInventoryGoods(); |
| | | lWhFormInventoryGoods.setId(inventoryGoods.getId()); |
| | | Integer inventoryCount = inventoryGoods.getInventoryCount(); |
| | | Integer realNum = inventoryGoods.getRealNum(); |
| | | if (realNum != null) { |
| | | int errorCount = realNum - inventoryCount; |
| | | lWhFormInventoryGoods.setInventoryCounts(realNum); |
| | | lWhFormInventoryGoods.setErrorCounts(Math.abs(errorCount)); |
| | | //盘点结果(1=正常;2=盘盈;3=盘亏) |
| | | lWhFormInventoryGoods.setInventoryResult((errorCount > 0) ? 2 : (errorCount < 0) ? 3 : 1); |
| | | // TODO 批量更新 |
| | | this.update(lWhFormInventoryGoods); |
| | | // goodsList.add(lWhFormInventoryGoods); |
| | | } |
| | | |
| | | } |
| | | return 1; |
| | | } |
| | | |
| | | /** |