futian.liu
2023-12-11 2c706a5d58e8315980ea92d6b82e0e4959bad8ca
consum-base/src/main/java/com/consum/base/service/LWarehouseFlowCoreService.java
@@ -1,10 +1,11 @@
package com.consum.base.service;
import com.consum.base.core.utils.LockManage;
import com.consum.model.po.*;
import com.walker.infrastructure.utils.CollectionUtils;
import com.walker.infrastructure.utils.NumberGenerator;
import lombok.extern.slf4j.Slf4j;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import javax.annotation.PostConstruct;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.jdbc.core.JdbcTemplate;
@@ -12,11 +13,19 @@
import org.springframework.jdbc.core.namedparam.SqlParameterSource;
import org.springframework.jdbc.core.simple.SimpleJdbcCall;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.PostConstruct;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.consum.base.core.utils.IdUtil;
import com.consum.base.core.utils.LockManage;
import com.consum.model.po.BaseWarehouse;
import com.consum.model.po.LWarehouseFlow;
import com.consum.model.po.LWhFormProcure;
import com.consum.model.po.LWhGoodsRecord;
import com.consum.model.po.LWhProcureModel;
import com.walker.infrastructure.utils.CollectionUtils;
import lombok.extern.slf4j.Slf4j;
/**
 * @ClassName LWarehouseFlowService
@@ -26,14 +35,15 @@
 **/
@Service
@Slf4j
@Transactional(propagation = Propagation.REQUIRED)
public class LWarehouseFlowCoreService {
    private final JdbcTemplate jdbcTemplate;
    private SimpleJdbcCall simpleJdbcCall;
    private LWarehouseFlowService lWarehouseFlowService;
    private LWhGoodsService lWhGoodsService;
    private LWhGoodsRecordService lWhGoodsRecordService;
    private BaseGoodsTemplateServiceImpl baseGoodsTemplateService;
    private LWhGoodsRecordService lWhGoodsRecordServiceImpl;
    private BaseGoodsTemplateService baseGoodsTemplateService;
    @Value("${spring.datasource.dataBaseName}")
    private String dataBaseName;
@@ -45,12 +55,12 @@
    @Autowired
    public LWarehouseFlowCoreService(JdbcTemplate jdbcTemplate, LWarehouseFlowService lWarehouseFlowService, LWhGoodsService lWhGoodsService,
                                     BaseGoodsTemplateServiceImpl baseGoodsTemplateService, LWhGoodsRecordService lWhGoodsRecordService) {
                                     BaseGoodsTemplateService baseGoodsTemplateService, LWhGoodsRecordService lWhGoodsRecordServiceImpl) {
        this.jdbcTemplate = jdbcTemplate;
        this.lWarehouseFlowService = lWarehouseFlowService;
        this.baseGoodsTemplateService = baseGoodsTemplateService;
        this.lWhGoodsService = lWhGoodsService;
        this.lWhGoodsRecordService = lWhGoodsRecordService;
        this.lWhGoodsRecordServiceImpl = lWhGoodsRecordServiceImpl;
    }
    /**
@@ -78,8 +88,8 @@
        //采购方式(1:集采;2=自采)
        short buyType = lWhFormProcure.getBuyType().shortValue();
        //采购时间
        Long procureTime = lWhFormProcure.getProcureTime();
        Long procureTime2 = lWhFormProcure.getProcureTime();
        Long procureTime = procureTime2 == null ? dealTime : procureTime2;
        // 插入流水总表
        int flowInsertFlag = lWarehouseFlowService.insert(warehouseFlow);
        if (flowInsertFlag == 0) {
@@ -109,7 +119,7 @@
            String goodsUnit = (String) tempGoodsInfo.get("unit");
            // 插入 各规格物品的进出库记录 L_WH_GOODS_RECORD
            long whGoodsRecordId = NumberGenerator.getLongSequenceNumberNano();
            long whGoodsRecordId = IdUtil.generateId();
            LWhGoodsRecord whGoodsRecord = new LWhGoodsRecord();
            whGoodsRecord.setId(whGoodsRecordId);
            whGoodsRecord.setWarehouseId(warehouseId);
@@ -150,7 +160,7 @@
                ;
                whGoodsRecord.setTotalPrice(totalPrice);
            }
            lWhGoodsRecordService.insert(whGoodsRecord);
            lWhGoodsRecordServiceImpl.insert(whGoodsRecord);
        });
        return 1;