Ver código fonte

feat(supplier): 新增供应商工商信息保存功能

- 添加了SupplierBusinessInfo和SupplierBusinessInfoVo实体类引用
- 注入SupplierBusinessInfoMapper数据访问层
- 实现供应商工商信息保存逻辑
- 使用JSONUtil将otherCustomers字段转换为工商信息对象
- 添加供应商ID关联关系设置
- 实现工商信息为空时的数据插入判断逻辑
肖路 2 dias atrás
pai
commit
46c951cc7a

+ 18 - 0
ruoyi-modules/ruoyi-customer/src/main/java/org/dromara/customer/service/impl/SupplierInfoTemporaryServiceImpl.java

@@ -1,6 +1,8 @@
 package org.dromara.customer.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.dromara.common.core.utils.MapstructUtils;
 import org.dromara.common.core.utils.StringUtils;
@@ -11,8 +13,11 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.RequiredArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
+import org.dromara.customer.domain.SupplierBusinessInfo;
 import org.dromara.customer.domain.SupplierInfo;
+import org.dromara.customer.domain.vo.SupplierBusinessInfoVo;
 import org.dromara.customer.domain.vo.SupplierInfoVo;
+import org.dromara.customer.mapper.SupplierBusinessInfoMapper;
 import org.dromara.customer.mapper.SupplierInfoMapper;
 import org.springframework.stereotype.Service;
 import org.dromara.customer.domain.bo.SupplierInfoTemporaryBo;
@@ -41,6 +46,8 @@ public class SupplierInfoTemporaryServiceImpl  extends ServiceImpl<SupplierInfoT
 
     private final SupplierInfoMapper supplierInfoMapper;
 
+    private final SupplierBusinessInfoMapper supplierBusinessInfoMapper;
+
     /**
      * 查询供应商临时信息
      *
@@ -197,6 +204,17 @@ public class SupplierInfoTemporaryServiceImpl  extends ServiceImpl<SupplierInfoT
                 supplierInfo.setSupplierNo(supplierNo);
                 supplierInfoMapper.insert(supplierInfo);
                 add.setSupplierId(supplierInfo.getId());
+
+                SupplierBusinessInfoVo supplierBusinessInfoVo = supplierBusinessInfoMapper.selectVoOne(new LambdaQueryWrapper<SupplierBusinessInfo>()
+                    .eq(SupplierBusinessInfo::getSupplierId, bo.getId()))
+                    ;
+                //保存工商信息
+                if (ObjectUtil.isEmpty(supplierBusinessInfoVo)) {
+                    String otherCustomers = bo.getOtherCustomers();
+                    SupplierBusinessInfo businessInfo = JSONUtil.toBean(otherCustomers, SupplierBusinessInfo.class);
+                    businessInfo.setSupplierId(supplierInfo.getId());
+                    supplierBusinessInfoMapper.insert(businessInfo);
+                }
             }
             add.setId(null);
             add.setSupplierNo(supplierNo);