cy
2023-11-10 f3529363cc63b4729a429f80a4827b71df0cd5dd
consum-base/src/main/java/com/consum/base/controller/LWhFormProcureController.java
@@ -21,13 +21,11 @@
import javax.annotation.Resource;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.*;
/**
 * @ClassName LWhFormProcureController
 * @Author cy
 * @Date 2023/10/27
 * @Description
 * @Version 1.0
@@ -53,6 +51,8 @@
    private BaseGoodsTemplateServiceImpl baseGoodsTemplateService;
    @Resource
    private LWhProcureModelService lWhProcureModelService;
    @Resource
    private LOrgSupplierServiceImpl lOrgSupplierService;
    /**
     * @Description 新增
@@ -64,6 +64,9 @@
            return ResponseValue.error("仓库ID不能为空");
        }
        BaseWarehouse baseWarehouse = baseWarehouseService.getById(warehouseId);
        FinSysTenantUser sysTenantUser = this.getSysInfo();
        String tenantId = sysTenantUser.getTenantId();
        String tenantName = sysTenantUser.getTenantName();
        // 只能添加本机构仓库的进货单
        //??????
        //
@@ -79,7 +82,9 @@
        if (whFormProcureId == null) {
            whFormProcureId = NumberGenerator.getLongSequenceNumber();
        }
        long procureTime = DateUtils.getDateTimeNumber(System.currentTimeMillis());
        long procureTime = DateUtils.getDateTimeNumber(param.getProcureTime());
        Set<String> supplierList = new HashSet<>();
        ArrayList<LWhFormProcureGoods> procureGoodList = new ArrayList<>();
        ArrayList<LWhProcureModel> whProcureModeLlist = new ArrayList<>();
@@ -89,6 +94,12 @@
            Long baseCategoryId = procureGoodT.getBaseCategoryId();
            Long baseGoodsTemplateId = procureGoodT.getBaseGoodsTemplateId();
            String supplier = procureGoodT.getSupplier();
            // 判断当前供应商是否已存在
            if (!supplierList.contains(supplier) && !lOrgSupplierService.supplierIsContain(tenantId, supplier)) {
                supplierList.add(supplier);
            }
            List<LWhProcureModelParams> models = procureGoodT.getModels();
            if (CollectionUtils.isEmpty(models)) {
                return ResponseValue.error("采购单不能为空");
@@ -120,6 +131,7 @@
                if (tempGoodsInfo == null) {
                    return ResponseValue.error("采购的价型号未找到");
                }
                String modelName = (String) tempGoodsInfo.get("modelname");
                // 查询型号库存
                int goodsModelNum = lWhGoodsService.queryGoodsModelNum(0, warehouseId, baseGoodsModelsId, (short) 1, null);
                LWhProcureModel model = new LWhProcureModel();
@@ -128,6 +140,7 @@
                model.setBusinessType(WhBusinessEnum.CAIGOU.getValue() + 0);
                model.setBusinessId(whFormProcureId);
                model.setBaseGoodsModelsId(baseGoodsModelsId);
                model.setBaseGoodsModelsName(modelName);
                model.setPrice(price);
                model.setCounts(counts);
                model.setWorehouseCount(goodsModelNum);
@@ -142,7 +155,7 @@
        // 插入 采购单物品【L_WH_FORM_PROCURE_GOODS】
        LWhFormProcure lWhFormProcure = new LWhFormProcure();
        lWhFormProcure.setId(whFormProcureId);
        lWhFormProcure.setBusinessFormCode(codeGeneratorService.createCodeByPrefix(CodeGeneratorEnum.Procure_Warehouse.getValue(), 10));
        lWhFormProcure.setBusinessFormCode(codeGeneratorService.createBusinessFormCode(CodeGeneratorEnum.Procure_Warehouse));
        lWhFormProcure.setWarehouseId(warehouseId);
        lWhFormProcure.setWarehouseName(baseWarehouse.getWarehouseName());
        lWhFormProcure.setBuyerId(currentUser.getId());
@@ -154,7 +167,18 @@
        lWhFormProcure.setAgencyId(baseWarehouse.getAgencyId());
        lWhFormProcure.setAgencyName(baseWarehouse.getAgencyName());
        int result = lWhFormProcureService.insert(lWhFormProcure);
        if (result > 0) return ResponseValue.success(1);
        supplierList.forEach(supplier -> {
            LOrgSupplier lOrgSupplier = new LOrgSupplier();
            lOrgSupplier.setId(NumberGenerator.getLongSequenceNumber());
            lOrgSupplier.setAgencyId(tenantId);
            lOrgSupplier.setAgencyName(tenantName);
            lOrgSupplier.setSupplier(supplier);
            lOrgSupplierService.insert(lOrgSupplier);
        });
        if (result > 0) {
            return ResponseValue.success(1);
        }
        return ResponseValue.error("新增失败!");
    }