|
|
@@ -12,7 +12,6 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
|
|
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
|
|
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
|
|
-import com.mysql.cj.log.Log;
|
|
|
import io.swagger.annotations.*;
|
|
|
import lombok.RequiredArgsConstructor;
|
|
|
import lombok.extern.slf4j.Slf4j;
|
|
|
@@ -23,15 +22,19 @@ import org.springblade.core.secure.BladeUser;
|
|
|
import org.springblade.core.secure.utils.AuthUtil;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
import org.springblade.core.tool.utils.Func;
|
|
|
+import org.springblade.etl.EtlRegionDataTask;
|
|
|
import org.springblade.etl.entity.EtlAdCdEntity;
|
|
|
import org.springblade.etl.service.IEtlAdCdService;
|
|
|
+import org.springblade.jobtask.ReportCountProcessor;
|
|
|
+import org.springblade.jobtask.TaskManager;
|
|
|
import org.springblade.modules.baseinfo.org.entity.DeptRegionEntity;
|
|
|
import org.springblade.modules.baseinfo.org.service.IDeptRegionService;
|
|
|
import org.springblade.modules.baseinfo.region.dto.RegionInfoDTO;
|
|
|
+import org.springblade.modules.baseinfo.region.entity.BaseRegionInfoEntity;
|
|
|
import org.springblade.modules.baseinfo.region.entity.RegionInfoEntity;
|
|
|
import org.springblade.modules.baseinfo.region.entity.RegionTreeNodeEntity;
|
|
|
-import org.springblade.modules.baseinfo.region.service.IBaseInfoRegionService;
|
|
|
-import org.springblade.modules.baseinfo.region.service.IOrgRegionInfoService;
|
|
|
+import org.springblade.modules.baseinfo.region.service.IBaseRegionInfoService;
|
|
|
+import org.springblade.modules.baseinfo.region.service.IRegionInfoService;
|
|
|
import org.springblade.modules.baseinfo.region.vo.RegionInfoVO;
|
|
|
import org.springblade.modules.baseinfo.region.wrapper.RegionInfoWrapper;
|
|
|
import org.springblade.modules.system.entity.Dept;
|
|
|
@@ -44,6 +47,7 @@ import org.springframework.web.bind.annotation.*;
|
|
|
import javax.annotation.Resource;
|
|
|
import java.util.LinkedList;
|
|
|
import java.util.List;
|
|
|
+import java.util.concurrent.FutureTask;
|
|
|
|
|
|
|
|
|
/***
|
|
|
@@ -59,11 +63,15 @@ import java.util.List;
|
|
|
@RequestMapping("galaxy-business/baseinfo/region")
|
|
|
@RequiredArgsConstructor
|
|
|
@Api(value = "行政区划管理", tags = "行政区划管理")
|
|
|
-public class BaseInfoRegionController extends BladeController {
|
|
|
- private final IBaseInfoRegionService baseInfoRegionService;
|
|
|
+public class RegionInfoController extends BladeController {
|
|
|
+ private final IRegionInfoService baseInfoRegionService;
|
|
|
private final IDeptService deptService;
|
|
|
private final IEtlAdCdService etlAdCdService;
|
|
|
private final IDeptRegionService deptRegionService;
|
|
|
+ private final IBaseRegionInfoService baseRegionInfoService;
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private TaskManager taskManager;
|
|
|
|
|
|
@Value("${region-ver-config.ver}")
|
|
|
private String regionVer;
|
|
|
@@ -515,6 +523,51 @@ public class BaseInfoRegionController extends BladeController {
|
|
|
return R.status(true);
|
|
|
}
|
|
|
|
|
|
+ @GetMapping("/create/region")
|
|
|
+ @ApiOperationSupport(order = 1)
|
|
|
+ @ApiOperation(value = "", notes = "")
|
|
|
+ public R createRegion() {
|
|
|
+ EtlRegionDataTask task = new EtlRegionDataTask(etlAdCdService,baseRegionInfoService);
|
|
|
+ FutureTask<Integer> futureTask = new FutureTask<>(task);
|
|
|
+ taskManager.submitTask(futureTask);
|
|
|
+
|
|
|
+// EtlAdCdEntity etlAdCdEntity = new EtlAdCdEntity();
|
|
|
+// etlAdCdEntity.setAdcd("150000000000000");
|
|
|
+// List<EtlAdCdEntity> list =etlAdCdService.selectList(etlAdCdEntity);
|
|
|
+// for (EtlAdCdEntity entity:list){
|
|
|
+// BaseRegionInfoEntity baseRegionInfoEntity= new BaseRegionInfoEntity();
|
|
|
+// baseRegionInfoEntity.setAdcd(entity.getAdcd());
|
|
|
+// baseRegionInfoEntity.setAdnm(entity.getAdnm());
|
|
|
+// baseRegionInfoEntity.setParentCode("00");
|
|
|
+// baseRegionInfoEntity.setAncestors("00");
|
|
|
+// baseRegionInfoEntity.setAddType(entity.getAddtype());
|
|
|
+// baseRegionInfoEntity.setLgtd(entity.getLgtd());
|
|
|
+// baseRegionInfoEntity.setLttd(entity.getLttd());
|
|
|
+// baseRegionInfoService.save(baseRegionInfoEntity);
|
|
|
+// crateChildRegion(baseRegionInfoEntity,baseRegionInfoEntity.getAncestors());
|
|
|
+// }
|
|
|
+ return R.success("ok");
|
|
|
+ }
|
|
|
+
|
|
|
+ private void crateChildRegion(BaseRegionInfoEntity root,String ancestors){
|
|
|
+ EtlAdCdEntity etlAdCdEntity = new EtlAdCdEntity();
|
|
|
+ etlAdCdEntity.setSuperioradcd(root.getAdcd());
|
|
|
+ List<EtlAdCdEntity> list =etlAdCdService.selectList(etlAdCdEntity);
|
|
|
+ for (EtlAdCdEntity entity:list){
|
|
|
+ BaseRegionInfoEntity baseRegionInfoEntity= new BaseRegionInfoEntity();
|
|
|
+ baseRegionInfoEntity.setAdcd(entity.getAdcd());
|
|
|
+ baseRegionInfoEntity.setAdnm(entity.getAdnm());
|
|
|
+ baseRegionInfoEntity.setParentCode(root.getAdcd());
|
|
|
+ baseRegionInfoEntity.setAncestors(ancestors+","+root.getAdcd());
|
|
|
+ baseRegionInfoEntity.setAddType(entity.getAddtype());
|
|
|
+ baseRegionInfoEntity.setLgtd(entity.getLgtd());
|
|
|
+ baseRegionInfoEntity.setLttd(entity.getLttd());
|
|
|
+ baseRegionInfoService.save(baseRegionInfoEntity);
|
|
|
+ crateChildRegion(baseRegionInfoEntity,baseRegionInfoEntity.getAncestors());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
private boolean importAdcd(int level, int currLevel, String parentCode, String ancestors) {
|
|
|
if (currLevel > level) {
|
|
|
return true;
|