forked from gzzfw/backEnd/gz-dyh

liyj
2024-09-10 76f4b32326c77b6a3b6742ab5d72f0b02320b62f
dyh-service/dyh-sys/src/main/java/cn/huge/module/kind/service/SyRegionService.java
@@ -5,8 +5,10 @@
import cn.huge.base.common.utils.IdUtils;
import cn.huge.module.client.api.impl.UtilsClientImpl;
import cn.huge.module.kind.dao.mapper.SyRegionMapper;
import cn.huge.module.kind.domain.dto.RegionSelectJSDTO;
import cn.huge.module.kind.domain.po.SyRegion;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import lombok.extern.slf4j.Slf4j;
@@ -17,6 +19,7 @@
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.PostConstruct;
import javax.swing.plaf.synth.Region;
import java.util.Date;
import java.util.List;
import java.util.Map;
@@ -130,4 +133,34 @@
        }
    }
    /**
     * 递归保存树形结构
     * @param childrenList
     * @param level
     */
    public void webSaveByJSTree(List<RegionSelectJSDTO> childrenList, int level){
        try{
            Date nowDate = new Date();
            for (RegionSelectJSDTO regionSelectJSDTO: childrenList){
                SyRegion region = new SyRegion();
                region.setId(regionSelectJSDTO.getValue());
                region.setKind(level);
                region.setName(regionSelectJSDTO.getLabel());
                region.setLevel(level);
                region.setParentId(regionSelectJSDTO.getParentId());
                region.setCreateTime(nowDate);
                region.setUpdateTime(nowDate);
                this.saveOrUpdate(region);
                if (CollectionUtils.isNotEmpty(regionSelectJSDTO.getChildren())) {
                    this.webSaveByJSTree(regionSelectJSDTO.getChildren(), level + 1);
                }
            }
        }catch (Exception e){
            log.error("[SyRegionService.webSaveByJSTree]调用失败,异常信息:"+e, e);
            throw new ServiceException("SyRegionService.webSaveByJSTree", e);
        }
    }
}