package com.consum.base.service;
|
|
import com.consum.base.core.utils.IdUtil;
|
import com.consum.base.pojo.response.FormInventoryGoodsVO;
|
import com.consum.model.po.LWhFormInventoryGoods;
|
import com.walker.jdbc.service.BaseServiceImpl;
|
import java.util.ArrayList;
|
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 盘点单物品
|
* @Author 卢庆阳
|
* @Date 2023/10/31
|
*/
|
@Slf4j
|
@Service
|
@Transactional(propagation = Propagation.REQUIRED)
|
public class LWhFormInventoryGoodsServiceImpl extends BaseServiceImpl {
|
|
/**
|
* @return
|
* @Description 根据盘点单id查询盘点单物品
|
* @Author 卢庆阳
|
* @Date 2023/10/31
|
*/
|
public List<LWhFormInventoryGoods> getByInventoryId(Long id) {
|
LWhFormInventoryGoods inventoryGoods = new LWhFormInventoryGoods();
|
inventoryGoods.setWhFormInventoryId(id);
|
return this.select(inventoryGoods);
|
}
|
|
|
public int 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(inventoryId);
|
lWhFormInventoryGoods.setBaseGoodsTemplateId(inventoryGoods.getBaseGoodsTemplateId());
|
lWhFormInventoryGoods.setGoodsTemplateName(inventoryGoods.getGoodsTemplateName());
|
lWhFormInventoryGoods.setUnit(inventoryGoods.getUnit());
|
lWhFormInventoryGoods.setBaseGoodsModelsId(inventoryGoods.getId());
|
lWhFormInventoryGoods.setBaseGoodsModelsName(inventoryGoods.getBaseGoodsModelsName());
|
lWhFormInventoryGoods.setInitCounts(inventoryGoods.getInventoryCount());
|
goodsList.add(lWhFormInventoryGoods);
|
}
|
return this.insert(goodsList);
|
}
|
|
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;
|
}
|
|
/**
|
* @Description 根据盘点单id删除盘点单物品
|
* @Author 卢庆阳
|
* @Date 2023/10/31
|
*/
|
public void delByFormInventoryId(Long id) {
|
|
}
|
|
|
}
|