skyouc
2 天以前 4d41ad6d6cecc008b6ecfc235686968cfc32848c
rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/MatnrServiceImpl.java
@@ -56,40 +56,62 @@
        if (result.getList().isEmpty()) {
            throw new CoolException("物料导入失败!!");
        }
        List<MatnrsTemplate> list = result.getList();
        /**
         * 获取导入物料模板
         */
        List<Matnr> matnrs = getMatnrTempletes(list);
        if (!this.saveBatch(matnrs)) {
            throw new CoolException("导入失败!!");
        }
        return R.ok("导入成功!!");
    }
    /**
     * 获取物料模板信息
     * @param list
     * @return
     */
    public List<Matnr> getMatnrTempletes(List<MatnrsTemplate> list) {
        List<Matnr> matnrs = new ArrayList<>();
        List<Map<String, String>> list = result.getList();
        list.forEach(template -> {
            Matnr matnr = new Matnr();
            matnr.setBarcode(template.get("barcode"))
                    .setCode(template.get("code"))
                    .setDescrible(template.get("describle"))
                    .setColor(template.get("color"))
                    .setFlagCheck(!Objects.isNull(template.get("flagCheck")) ? Short.parseShort(template.get("flagCheck")) : 0)
                    .setWeight(!Objects.isNull(template.get("weight")) ? Double.parseDouble(template.get("weight")) : 0.0)
                    .setValidWarn(!Objects.isNull(template.get("validWarn")) ? Integer.parseInt(template.get("validWarn")): 0)
                    .setValid(!Objects.isNull(template.get("valid")) ? Integer.parseInt( template.get("valid")) : 0)
                    .setUnit(template.get("unit"))
                    .setStockUnit(template.get("purUnit"))
                    .setSpec(template.get("spec"))
                    .setStagn(!Objects.isNull(template.get("stagn")) ? Integer.parseInt(template.get("stagn")) : 0)
                    .setModel(template.get("model"))
                    .setGroupCode(template.get("groupCode"))
                    .setPurUnit(template.get("purUnit"))
                    .setStockLevel(!Objects.isNull(template.get("stockLevel")) ? Short.parseShort(template.get("stockLevel")) : 0)
                    .setSafeQty(!Objects.isNull(template.get("safeQty")) ? Double.parseDouble(template.get("safeQty")) : 0)
                    .setMinQty(!Objects.isNull(template.get("safeQty")) ? Double.parseDouble(template.get("minQty")) : 0);
            if (Objects.isNull(template.get("groupCode")) && Objects.isNull(template.get("groupName"))) {
            matnr.setBarcode(template.getBarcode())
                    .setCode(template.getCode())
                    .setName(template.getName())
                    .setDescrible(template.getDescrible())
                    .setColor(template.getColor())
                    .setFlagCheck(!Objects.isNull(template.getFlagCheck()) ? Short.parseShort(template.getFlagCheck()) : 0)
                    .setWeight(!Objects.isNull(template.getWeight()) ? Double.parseDouble(template.getWeight()) : 0.0)
                    .setValidWarn(!Objects.isNull(template.getValidWarn()) ? Integer.parseInt(template.getValidWarn()): 0)
                    .setValid(!Objects.isNull(template.getValid()) ? Integer.parseInt( template.getValid()) : 0)
                    .setUnit(template.getUnit())
                    .setStockUnit(template.getPurUnit())
                    .setShipperId(template.getShipperId())
                    .setSize(template.getSize())
                    .setSpec(template.getSpec())
                    .setStagn(!Objects.isNull(template.getStagn()) ? Integer.parseInt(template.getStagn()) : 0)
                    .setModel(template.getModel())
                    .setGroupCode(template.getGroupCode())
                    .setPurUnit(template.getPurUnit())
                    .setStockLevel(!Objects.isNull(template.getStockLevel()) ? Short.parseShort(template.getStockLevel()) : 0)
                    .setSafeQty(!Objects.isNull(template.getSafeQty()) ? Double.parseDouble(template.getSafeQty()) : 0)
                    .setMinQty(!Objects.isNull(template.getMinQty()) ? Double.parseDouble(template.getMinQty()) : 0);
            if (Objects.isNull(template.getGroupCode()) && Objects.isNull(template.getGroupName())) {
                MatnrGroup matnrGroups = matnrGroupService.getOne(new LambdaQueryWrapper<MatnrGroup>()
                        .eq(!Objects.isNull(template.get("groupCode")), MatnrGroup::getCode, template.get("groupCode"))
                        .eq(!Objects.isNull(template.get("groupName")),MatnrGroup::getName, template.get("groupName")));
                        .eq(!Objects.isNull(template.getGroupCode()), MatnrGroup::getCode, template.getGroupCode())
                        .eq(!Objects.isNull(template.getGroupName()),MatnrGroup::getName, template.getGroupName()));
                matnr.setGroupId(matnrGroups.getId());
            }
            //获取动态字段,并保存明细内容
            if (!FieldsUtils.getFieldsSta().isEmpty()) {
                //保存物料扩展属性值
                try {
                    Map<String, Object> map = JSONObject.parseObject(JSONObject.toJSONString(template), Map.class);
                    String uuid = CommonUtil.randomUUID16();
                    boolean b = FieldsUtils.saveFields(template, uuid);
                    boolean b = FieldsUtils.saveFields(map, uuid);
                    if (b) {
                        matnr.setFieldsIndex(uuid);
                    }
@@ -99,11 +121,7 @@
            }
            matnrs.add(matnr);
        });
        if (!this.saveBatch(matnrs)) {
            throw new CoolException("导入失败!!");
        }
        return R.ok("导入成功!!");
        return matnrs;
    }
    @Override