You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
udi-wms-java/src/main/java/com/glxp/api/service/inout/IoGenInvService.java

471 lines
27 KiB
Java

package com.glxp.api.service.inout;
import com.glxp.api.service.inout.impl.IoCodeService;
import com.glxp.api.service.inv.impl.InvProductDetailService;
import com.glxp.api.service.inv.impl.InvProductService;
import org.springframework.beans.BeanUtils;
import cn.hutool.core.util.StrUtil;
import com.glxp.api.constant.BusinessType;
import com.glxp.api.constant.ConstantStatus;
import com.glxp.api.constant.ConstantType;
import com.glxp.api.entity.basic.BasicBusTypePreEntity;
import com.glxp.api.entity.basic.BasicBussinessTypeEntity;
import com.glxp.api.entity.inout.IoCodeEntity;
import com.glxp.api.entity.inout.IoOrderDetailResultEntity;
import com.glxp.api.entity.inout.IoOrderEntity;
import com.glxp.api.entity.inv.*;
import com.glxp.api.service.basic.IBasicBusTypePreService;
import com.glxp.api.service.basic.IBasicBussinessTypeService;
import com.glxp.api.service.inv.*;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.*;
@Service
public class IoGenInvService {
@Resource
InvProductService invProductService;
@Resource
InvProductDetailService invProductDetailService;
@Resource
InvPreinOrderService invPreinOrderService;
@Resource
InvPreinDetailService invPreinDetailService;
@Resource
IoOrderService orderService;
@Resource
IoOrderDetailResultService orderDetailResultService;
@Resource
IoCodeService codeService;
@Resource
IBasicBusTypePreService basicBusTypePreService;
@Resource
InvUserProductService invUserProductService;
@Resource
InvUserProductDetailService invUserProductDetailService;
@Resource
IBasicBussinessTypeService basicBussinessTypeService;
@Resource
IoChangeInoutService ioChangeInoutService;
//生成普通库存
public void genNorInv(String orderId) {
IoOrderEntity orderEntity = orderService.findByBillNo(orderId);
List<IoOrderDetailResultEntity> orderDetailResultEntities = orderDetailResultService.findByOrderId(orderId);
List<IoCodeEntity> codeEnttities = codeService.findByOrderId(orderId);
//补齐单据信息
BasicBussinessTypeEntity bussinessTypeEntity = basicBussinessTypeService.findByAction(orderEntity.getAction());
if (bussinessTypeEntity.getCorpType() == ConstantStatus.CORP_TYPE_INPUT && bussinessTypeEntity.isGenUnit()) {
orderEntity.setOutSickInfo(orderEntity.getFromCorp());
orderService.update(orderEntity);
}
//生成库存产品表
for (IoOrderDetailResultEntity orderDetailResultEntity : orderDetailResultEntities) {
InvProductEntity invProductEntity = invProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(), orderDetailResultEntity.getPrice());
if (invProductEntity == null) {
invProductEntity = new InvProductEntity();
invProductEntity.setRelIdFk(orderDetailResultEntity.getBindRlFk());
invProductEntity.setNameCode(orderDetailResultEntity.getNameCode());
invProductEntity.setBatchNo(orderDetailResultEntity.getBatchNo());
invProductEntity.setProductionDate(orderDetailResultEntity.getProductDate());
invProductEntity.setExpireDate(orderDetailResultEntity.getExpireDate());
invProductEntity.setInCount(0);
invProductEntity.setOutCount(0);
invProductEntity.setSupId(orderDetailResultEntity.getSupId());
invProductEntity.setDeptCode(orderEntity.getDeptCode());
invProductEntity.setInvCode(orderEntity.getInvCode());
invProductEntity.setCreateTime(new Date());
invProductEntity.setUpdateTime(new Date());
invProductEntity.setPrice(orderDetailResultEntity.getPrice());
//添加产品表入院批次号
invProductEntity.setInBatchNo(orderEntity.getBillNo().substring(orderEntity.getBillNo().length() - 12));
invProductService.insert(invProductEntity);
}
if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invProductEntity.setOutCount(invProductEntity.getOutCount() + orderDetailResultEntity.getReCount());
} else if (orderEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invProductEntity.setInCount(invProductEntity.getInCount() + orderDetailResultEntity.getReCount());
}
invProductEntity.setReCount(invProductEntity.getInCount() - invProductEntity.getOutCount());
invProductEntity.setUpdateTime(new Date());
invProductService.update(invProductEntity);
}
//生成库存码详情
List<InvProductDetailEntity> invProductDetailEntities = new ArrayList<>();
for (IoCodeEntity codeEntity : codeEnttities) {
InvProductDetailEntity invProductDetailEntity = new InvProductDetailEntity();
BeanUtils.copyProperties(codeEntity, invProductDetailEntity);
invProductDetailEntity.setRelId(codeEntity.getRelId());
invProductDetailEntity.setUpdateTime(new Date());
invProductDetailEntity.setId(null);
invProductDetailEntity.setInvSpaceCode(codeEntity.getWarehouseCode());
invProductDetailEntity.setPurchaseType(ConstantStatus.PRUCHASE_COMMON);
if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invProductDetailEntity.setInCount(invProductDetailEntity.getReCount());
} else if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invProductDetailEntity.setOutCount(invProductDetailEntity.getReCount());
}
invProductDetailEntities.add(invProductDetailEntity);
}
BasicBusTypePreEntity basicBusTypePreEntity = basicBusTypePreService.findByOriginAction(orderEntity.getAction());
if (basicBusTypePreEntity != null) { //进行单据流转
ioChangeInoutService.genNewOrder(orderEntity, invProductDetailEntities);
} else { //生成库存结束
invProductDetailService.insertList(invProductDetailEntities);
}
}
//生成用户普通库存
public void genNorInvUser(String orderId) {
IoOrderEntity orderEntity = orderService.findByBillNo(orderId);
List<IoOrderDetailResultEntity> orderDetailResultEntities = orderDetailResultService.findByOrderId(orderId);
List<IoCodeEntity> codeEnttities = codeService.findByOrderId(orderId);
//生成库存产品表
for (IoOrderDetailResultEntity orderDetailResultEntity : orderDetailResultEntities) {
InvUserProductEntity invUserProductEntity = invUserProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(), orderEntity.getCreateUser(), ConstantStatus.ACTION_TYPE_NORMAL);
if (invUserProductEntity == null) {
invUserProductEntity = new InvUserProductEntity();
invUserProductEntity.setRelIdFk(orderDetailResultEntity.getBindRlFk());
invUserProductEntity.setNameCode(orderDetailResultEntity.getNameCode());
invUserProductEntity.setBatchNo(orderDetailResultEntity.getBatchNo());
invUserProductEntity.setProductionDate(orderDetailResultEntity.getProductDate());
invUserProductEntity.setExpireDate(orderDetailResultEntity.getExpireDate());
invUserProductEntity.setInCount(0);
invUserProductEntity.setType(ConstantStatus.ACTION_TYPE_NORMAL);
invUserProductEntity.setOutCount(0);
invUserProductEntity.setSupId(orderDetailResultEntity.getSupId());
invUserProductEntity.setDeptCode(orderEntity.getDeptCode());
invUserProductEntity.setInvCode(orderEntity.getInvCode());
invUserProductEntity.setCreateTime(new Date());
invUserProductEntity.setUpdateTime(new Date());
invUserProductService.addInvUserProduct(invUserProductEntity);
}
if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invUserProductEntity.setOutCount(invUserProductEntity.getOutCount() + orderDetailResultEntity.getReCount());
} else if (orderEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invUserProductEntity.setInCount(invUserProductEntity.getInCount() + orderDetailResultEntity.getReCount());
}
invUserProductEntity.setReCount(invUserProductEntity.getInCount() - invUserProductEntity.getOutCount());
invUserProductEntity.setUpdateTime(new Date());
invUserProductService.updateInvUserProduct(invUserProductEntity);
}
//生成库存码详情
List<InvUserProductDetailEntity> invUserProductDetailEntityList = new ArrayList<>();
for (IoCodeEntity codeEntity : codeEnttities) {
InvUserProductDetailEntity invUserProductDetailEntity = new InvUserProductDetailEntity();
BeanUtils.copyProperties(codeEntity, invUserProductDetailEntity);
invUserProductDetailEntity.setRelId(codeEntity.getRelId());
invUserProductDetailEntity.setUpdateTime(new Date());
invUserProductDetailEntity.setId(null);
invUserProductDetailEntity.setInvSpaceCode(codeEntity.getWarehouseCode());
invUserProductDetailEntity.setPurchaseType(ConstantStatus.PRUCHASE_COMMON);
if (invUserProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invUserProductDetailEntity.setInCount(invUserProductDetailEntity.getReCount());
} else if (invUserProductDetailEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invUserProductDetailEntity.setOutCount(invUserProductDetailEntity.getReCount());
}
invUserProductDetailEntityList.add(invUserProductDetailEntity);
}
invUserProductDetailService.addInvUserProductDetailList(invUserProductDetailEntityList);
}
@Resource
InvPreProductService invPreProductService;
@Resource
InvPreProductDetailService invPreProductDetailService;
@Resource
InvPreinProductDetailService invPreinProductDetailService;
//生成寄售库存
public void genPreInv(String orderId) {
IoOrderEntity orderEntity = orderService.findByBillNo(orderId);
List<IoOrderDetailResultEntity> orderDetailResultEntities = orderDetailResultService.findByOrderId(orderId);
List<IoCodeEntity> codeEnttities = codeService.findByOrderId(orderId);
//生成库存产品表
for (IoOrderDetailResultEntity orderDetailResultEntity : orderDetailResultEntities) {
InvPreProductEntity invPreProductEntity = invPreProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(), orderDetailResultEntity.getPrice());
if (invPreProductEntity == null) {
invPreProductEntity = new InvPreProductEntity();
invPreProductEntity.setRelIdFk(orderDetailResultEntity.getBindRlFk());
invPreProductEntity.setNameCode(orderDetailResultEntity.getNameCode());
invPreProductEntity.setBatchNo(orderDetailResultEntity.getBatchNo());
invPreProductEntity.setProductionDate(orderDetailResultEntity.getProductDate());
invPreProductEntity.setExpireDate(orderDetailResultEntity.getExpireDate());
invPreProductEntity.setInCount(0);
invPreProductEntity.setOutCount(0);
invPreProductEntity.setPrice(orderDetailResultEntity.getPrice());
invPreProductEntity.setSupId(orderDetailResultEntity.getSupId());
invPreProductEntity.setDeptCode(orderEntity.getDeptCode());
invPreProductEntity.setInvCode(orderEntity.getInvCode());
invPreProductEntity.setCreateTime(new Date());
invPreProductEntity.setUpdateTime(new Date());
invPreProductService.insert(invPreProductEntity);
}
if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invPreProductEntity.setOutCount(invPreProductEntity.getOutCount() + orderDetailResultEntity.getReCount());
} else if (orderEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invPreProductEntity.setInCount(invPreProductEntity.getInCount() + orderDetailResultEntity.getReCount());
}
invPreProductEntity.setReCount(invPreProductEntity.getInCount() - invPreProductEntity.getOutCount());
invPreProductEntity.setUpdateTime(new Date());
invPreProductService.update(invPreProductEntity);
}
//生成库存码详情
List<InvPreProductDetailEntity> invProductDetailEntities = new ArrayList<>();
for (IoCodeEntity codeEntity : codeEnttities) {
InvPreProductDetailEntity invProductDetailEntity = new InvPreProductDetailEntity();
BeanUtils.copyProperties(codeEntity, invProductDetailEntity);
invProductDetailEntity.setRelId(codeEntity.getRelId());
invProductDetailEntity.setUpdateTime(new Date());
invProductDetailEntity.setId(null);
invProductDetailEntity.setInvSpaceCode(codeEntity.getPreSpaceCode());
invProductDetailEntity.setPurchaseType(ConstantStatus.PRUCHASE_COMMON);
if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invProductDetailEntity.setInCount(invProductDetailEntity.getReCount());
} else if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invProductDetailEntity.setOutCount(invProductDetailEntity.getReCount());
}
invProductDetailEntities.add(invProductDetailEntity);
}
invPreProductDetailService.insertList(invProductDetailEntities);
}
//生成用户寄售库存
public void genUserPreInv(String orderId) {
IoOrderEntity orderEntity = orderService.findByBillNo(orderId);
List<IoOrderDetailResultEntity> orderDetailResultEntities = orderDetailResultService.findByOrderId(orderId);
List<IoCodeEntity> codeEnttities = codeService.findByOrderId(orderId);
//生成库存产品表
for (IoOrderDetailResultEntity orderDetailResultEntity : orderDetailResultEntities) {
InvUserProductEntity invUserProductEntity = invUserProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(), orderEntity.getCreateUser(), ConstantStatus.ACTION_TYPE_PREIN);
if (invUserProductEntity == null) {
invUserProductEntity = new InvUserProductEntity();
invUserProductEntity.setRelIdFk(orderDetailResultEntity.getBindRlFk());
invUserProductEntity.setNameCode(orderDetailResultEntity.getNameCode());
invUserProductEntity.setBatchNo(orderDetailResultEntity.getBatchNo());
invUserProductEntity.setProductionDate(orderDetailResultEntity.getProductDate());
invUserProductEntity.setExpireDate(orderDetailResultEntity.getExpireDate());
invUserProductEntity.setInCount(0);
invUserProductEntity.setType(ConstantStatus.ACTION_TYPE_PREIN);
invUserProductEntity.setOutCount(0);
invUserProductEntity.setSupId(orderDetailResultEntity.getSupId());
invUserProductEntity.setDeptCode(orderEntity.getDeptCode());
invUserProductEntity.setInvCode(orderEntity.getInvCode());
invUserProductEntity.setCreateTime(new Date());
invUserProductEntity.setUpdateTime(new Date());
invUserProductService.addInvUserProduct(invUserProductEntity);
}
if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invUserProductEntity.setOutCount(invUserProductEntity.getOutCount() + orderDetailResultEntity.getReCount());
} else if (orderEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invUserProductEntity.setInCount(invUserProductEntity.getInCount() + orderDetailResultEntity.getReCount());
}
invUserProductEntity.setReCount(invUserProductEntity.getInCount() - invUserProductEntity.getOutCount());
invUserProductEntity.setUpdateTime(new Date());
invUserProductService.updateInvUserProduct(invUserProductEntity);
}
//生成库存码详情
List<InvUserProductDetailEntity> invUserProductDetailEntityList = new ArrayList<>();
for (IoCodeEntity codeEntity : codeEnttities) {
InvUserProductDetailEntity invUserProductDetailEntity = new InvUserProductDetailEntity();
BeanUtils.copyProperties(codeEntity, invUserProductDetailEntity);
invUserProductDetailEntity.setRelId(codeEntity.getRelId());
invUserProductDetailEntity.setUpdateTime(new Date());
invUserProductDetailEntity.setId(null);
invUserProductDetailEntity.setInvSpaceCode(codeEntity.getWarehouseCode());
invUserProductDetailEntity.setPurchaseType(ConstantStatus.PRUCHASE_COMMON);
if (invUserProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invUserProductDetailEntity.setInCount(invUserProductDetailEntity.getReCount());
} else if (invUserProductDetailEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invUserProductDetailEntity.setOutCount(invUserProductDetailEntity.getReCount());
}
invUserProductDetailEntityList.add(invUserProductDetailEntity);
}
invUserProductDetailService.addInvUserProductDetailList(invUserProductDetailEntityList);
}
@Resource
InvPreinProductService invPreinProductService;
//生成预验收库存
public void genPreInInv(String orderId) {
//入库预验收进入到实际在库码表
IoOrderEntity orderEntity = orderService.findByBillNo(orderId);
if (orderEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
InvPreinOrderEntity invPreinOrderEntity = new InvPreinOrderEntity();
BeanUtils.copyProperties(orderEntity, invPreinOrderEntity);
invPreinOrderService.insert(invPreinOrderEntity);
List<IoCodeEntity> codeEnttities = codeService.findByOrderId(orderId);
List<InvPreinDetailEntity> invPreinDetailEntities = new ArrayList<>();
codeEnttities.forEach(codeEntity ->
{
InvPreinDetailEntity invPreinDetailEntity = new InvPreinDetailEntity();
BeanUtils.copyProperties(codeEntity, invPreinDetailEntity);
invPreinDetailEntity.setId(null);
invPreinDetailEntity.setStatus(ConstantStatus.INVIN_IN);
invPreinDetailEntity.setOriginCount(codeEntity.getCount());
invPreinDetailEntity.setOriginReCount(codeEntity.getReCount());
invPreinDetailEntities.add(invPreinDetailEntity);
});
invPreinDetailService.insertList(invPreinDetailEntities);
}
//走正常流程,生成对应库存
// 生成库存产品信息表
List<IoOrderDetailResultEntity> orderDetailResultEntities = orderDetailResultService.findByOrderId(orderId);
//生成库存产品表
for (IoOrderDetailResultEntity orderDetailResultEntity : orderDetailResultEntities) {
InvPreinProductEntity invProductEntity = invPreinProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(), orderDetailResultEntity.getPrice());
if (invProductEntity == null) {
invProductEntity = new InvPreinProductEntity();
invProductEntity.setRelIdFk(orderDetailResultEntity.getBindRlFk());
invProductEntity.setNameCode(orderDetailResultEntity.getNameCode());
invProductEntity.setBatchNo(orderDetailResultEntity.getBatchNo());
invProductEntity.setProductionDate(orderDetailResultEntity.getProductDate());
invProductEntity.setExpireDate(orderDetailResultEntity.getExpireDate());
invProductEntity.setInCount(0);
invProductEntity.setOutCount(0);
invProductEntity.setSupId(orderDetailResultEntity.getSupId());
invProductEntity.setDeptCode(orderEntity.getDeptCode());
invProductEntity.setPrice(orderDetailResultEntity.getPrice());
invProductEntity.setInvCode(orderEntity.getInvCode());
invProductEntity.setCreateTime(new Date());
invProductEntity.setUpdateTime(new Date());
invPreinProductService.insert(invProductEntity);
}
if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invProductEntity.setOutCount(invProductEntity.getOutCount() + orderDetailResultEntity.getReCount());
} else if (orderEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invProductEntity.setInCount(invProductEntity.getInCount() + orderDetailResultEntity.getReCount());
}
invProductEntity.setReCount(invProductEntity.getInCount() - invProductEntity.getOutCount());
invProductEntity.setUpdateTime(new Date());
invPreinProductService.update(invProductEntity);
}
List<IoCodeEntity> codeEnttities = codeService.findByOrderId(orderId);
//生成库存码详情
List<InvPreInProductDetailEntity> invProductDetailEntities = new ArrayList<>();
for (IoCodeEntity codeEntity : codeEnttities) {
InvPreInProductDetailEntity invProductDetailEntity = new InvPreInProductDetailEntity();
BeanUtils.copyProperties(codeEntity, invProductDetailEntity);
invProductDetailEntity.setRelId(codeEntity.getRelId());
invProductDetailEntity.setUpdateTime(new Date());
invProductDetailEntity.setId(null);
if (StrUtil.isNotEmpty(codeEntity.getPreInSpaceCode())) {
invProductDetailEntity.setInvSpaceCode(codeEntity.getPreInSpaceCode());
} else {
invProductDetailEntity.setInvSpaceCode(codeEntity.getWarehouseCode());
}
invProductDetailEntity.setPurchaseType(ConstantStatus.PRUCHASE_COMMON);
if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invProductDetailEntity.setInCount(invProductDetailEntity.getReCount());
} else if (invProductDetailEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invProductDetailEntity.setOutCount(invProductDetailEntity.getReCount());
}
invProductDetailEntities.add(invProductDetailEntity);
}
invPreinProductDetailService.insertList(invProductDetailEntities);
}
//生成用户预验收库存
public void genUserPreInInv(String orderId) {
IoOrderEntity orderEntity = orderService.findByBillNo(orderId);
List<IoOrderDetailResultEntity> orderDetailResultEntities = orderDetailResultService.findByOrderId(orderId);
List<IoCodeEntity> codeEnttities = codeService.findByOrderId(orderId);
//生成库存产品表
for (IoOrderDetailResultEntity orderDetailResultEntity : orderDetailResultEntities) {
InvUserProductEntity invUserProductEntity = invUserProductService.selectByUnique(orderDetailResultEntity.getBindRlFk(), orderDetailResultEntity.getBatchNo(), orderDetailResultEntity.getSupId(), orderEntity.getDeptCode(), orderEntity.getInvCode(), orderEntity.getCreateUser(), ConstantStatus.ACTION_TYPE_ADVANCE);
if (invUserProductEntity == null) {
invUserProductEntity = new InvUserProductEntity();
invUserProductEntity.setRelIdFk(orderDetailResultEntity.getBindRlFk());
invUserProductEntity.setNameCode(orderDetailResultEntity.getNameCode());
invUserProductEntity.setBatchNo(orderDetailResultEntity.getBatchNo());
invUserProductEntity.setProductionDate(orderDetailResultEntity.getProductDate());
invUserProductEntity.setExpireDate(orderDetailResultEntity.getExpireDate());
invUserProductEntity.setInCount(0);
invUserProductEntity.setType(ConstantStatus.ACTION_TYPE_ADVANCE);
invUserProductEntity.setOutCount(0);
invUserProductEntity.setSupId(orderDetailResultEntity.getSupId());
invUserProductEntity.setDeptCode(orderEntity.getDeptCode());
invUserProductEntity.setInvCode(orderEntity.getInvCode());
invUserProductEntity.setCreateTime(new Date());
invUserProductEntity.setUpdateTime(new Date());
invUserProductService.addInvUserProduct(invUserProductEntity);
}
if (orderEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invUserProductEntity.setOutCount(invUserProductEntity.getOutCount() + orderDetailResultEntity.getReCount());
} else if (orderEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invUserProductEntity.setInCount(invUserProductEntity.getInCount() + orderDetailResultEntity.getReCount());
}
invUserProductEntity.setReCount(invUserProductEntity.getInCount() - invUserProductEntity.getOutCount());
invUserProductEntity.setUpdateTime(new Date());
invUserProductService.updateInvUserProduct(invUserProductEntity);
}
//生成库存码详情
List<InvUserProductDetailEntity> invUserProductDetailEntityList = new ArrayList<>();
for (IoCodeEntity codeEntity : codeEnttities) {
InvUserProductDetailEntity invUserProductDetailEntity = new InvUserProductDetailEntity();
BeanUtils.copyProperties(codeEntity, invUserProductDetailEntity);
invUserProductDetailEntity.setRelId(codeEntity.getRelId());
invUserProductDetailEntity.setUpdateTime(new Date());
invUserProductDetailEntity.setId(null);
invUserProductDetailEntity.setInvSpaceCode(codeEntity.getWarehouseCode());
invUserProductDetailEntity.setPurchaseType(ConstantStatus.PRUCHASE_COMMON);
if (invUserProductDetailEntity.getMainAction().equals(ConstantType.TYPE_PUT)) {
invUserProductDetailEntity.setInCount(invUserProductDetailEntity.getReCount());
} else if (invUserProductDetailEntity.getMainAction().equals(ConstantType.TYPE_OUT)) {
invUserProductDetailEntity.setOutCount(invUserProductDetailEntity.getReCount());
}
invUserProductDetailEntityList.add(invUserProductDetailEntity);
}
invUserProductDetailService.addInvUserProductDetailList(invUserProductDetailEntityList);
}
}