| | |
| | | mat.setCode(matnr.getMatnr()).setName(matnr.getMaktx()); |
| | | if (!Objects.isNull(matnr.getGroupName())) { |
| | | MatnrGroup matnrGroup = matnrGroupService.getOne(new LambdaQueryWrapper<MatnrGroup>().eq(MatnrGroup::getName, matnr.getGroupName()).last("limit 1"), false); |
| | | if (Objects.isNull(matnrGroup)) { |
| | | if (!Objects.isNull(matnrGroup)) { |
| | | mat.setGroupCode(matnrGroup.getCode()).setGroupId(matnrGroup.getId()); |
| | | } |
| | | } |
| | |
| | | companyParams.forEach(param -> { |
| | | Companys companys = new Companys(); |
| | | BeanUtils.copyProperties(param, companys); |
| | | if (Objects.isNull(companys.getCode())) { |
| | | if (Objects.isNull(companys.getCode()) || StringUtils.isBlank(companys.getCode())) { |
| | | throw new CoolException("企业编码不能为空!!"); |
| | | } |
| | | Companys one = companysService.getOne(new LambdaQueryWrapper<Companys>().eq(Companys::getName, param.getName()).last("limit 1")); |
| | | if (Objects.isNull(one)) { |
| | | String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_COMPANYS_CODE, null); |
| | | companys.setCode(ruleCode); |
| | | } else { |
| | | throw new CoolException(one.getName() + ",企业名重复!!"); |
| | | if (Objects.isNull(companys.getName()) || StringUtils.isBlank(companys.getName())) { |
| | | throw new CoolException("企业名称不能为空!!"); |
| | | } |
| | | companys.setType(CompanysType.getCustomVal(param.getType())) |
| | | .setId(null); |
| | | if (!companysService.save(companys)) { |
| | | throw new CoolException("企业保存失败!!"); |
| | | |
| | | // 幂等同步:优先按编码匹配,找不到再按名称匹配 |
| | | Companys one = companysService.getOne(new LambdaQueryWrapper<Companys>() |
| | | .eq(Companys::getCode, param.getCode()) |
| | | .last("limit 1")); |
| | | if (Objects.isNull(one)) { |
| | | one = companysService.getOne(new LambdaQueryWrapper<Companys>() |
| | | .eq(Companys::getName, param.getName()) |
| | | .last("limit 1")); |
| | | } |
| | | |
| | | companys.setType(CompanysType.getCustomVal(param.getType())); |
| | | if (!Objects.isNull(one)) { |
| | | companys.setId(one.getId()); |
| | | // 已存在则更新,不重复报错 |
| | | if (!companysService.saveOrUpdate(companys)) { |
| | | throw new CoolException("企业更新失败!!"); |
| | | } |
| | | } else { |
| | | companys.setId(null); |
| | | // 新增时保留ERP传入编码,不再覆盖生成 |
| | | if (!companysService.save(companys)) { |
| | | throw new CoolException("企业保存失败!!"); |
| | | } |
| | | } |
| | | }); |
| | | return R.ok(); |