feat:二级封闭区域申请,临时

koumen
dearLin 2026-03-23 08:42:19 +08:00
parent 9aad4222fe
commit 7c5765e0c8
7 changed files with 51 additions and 1 deletions

View File

@ -33,7 +33,11 @@ import java.util.ArrayList;
public class ClosedAreaController { public class ClosedAreaController {
private final ClosedAreaServiceI closedAreaService; private final ClosedAreaServiceI closedAreaService;
@ApiOperation("树级结构")
@GetMapping("/listTree")
public MultiResponse<ClosedAreaCO> listTree() {
return closedAreaService.listTree();
}
@ApiOperation("统计港区里所有的封闭区域数与管辖单位数") @ApiOperation("统计港区里所有的封闭区域数与管辖单位数")
@GetMapping("/getCountByHgAuthArea") @GetMapping("/getCountByHgAuthArea")
public MultiResponse<ClosedAreaCO> getCountByHgAuthArea() { public MultiResponse<ClosedAreaCO> getCountByHgAuthArea() {

View File

@ -7,6 +7,7 @@ import com.alibaba.cola.dto.SingleResponse;
import com.alibaba.cola.exception.BizException; import com.alibaba.cola.exception.BizException;
import com.zcloud.primeport.api.ClosedAreaCarApplyServiceI; import com.zcloud.primeport.api.ClosedAreaCarApplyServiceI;
import com.zcloud.primeport.api.ClosedAreaPersonApplyServiceI; import com.zcloud.primeport.api.ClosedAreaPersonApplyServiceI;
import com.zcloud.primeport.api.PersonApplyServiceI;
import com.zcloud.primeport.domain.enums.TmpApplyEnum; import com.zcloud.primeport.domain.enums.TmpApplyEnum;
import com.zcloud.primeport.dto.ClosedAreaCarApplyAddCmd; import com.zcloud.primeport.dto.ClosedAreaCarApplyAddCmd;
import com.zcloud.primeport.dto.ClosedAreaCarApplyAuditCmd; import com.zcloud.primeport.dto.ClosedAreaCarApplyAuditCmd;
@ -34,6 +35,7 @@ import java.util.HashMap;
public class ClosedTmpApplyController { public class ClosedTmpApplyController {
private final ClosedAreaCarApplyServiceI closedAreaCarApplyService; private final ClosedAreaCarApplyServiceI closedAreaCarApplyService;
private final ClosedAreaPersonApplyServiceI closedAreaPersonApplyServiceI; private final ClosedAreaPersonApplyServiceI closedAreaPersonApplyServiceI;
private final PersonApplyServiceI personApplyServiceI;
@ApiOperation("新增") @ApiOperation("新增")
@PostMapping("/save") @PostMapping("/save")
@ -44,6 +46,7 @@ public class ClosedTmpApplyController {
id = closedAreaPersonApplyServiceI.saveTmpPersonApply(cmd); id = closedAreaPersonApplyServiceI.saveTmpPersonApply(cmd);
} }
if (cmd.getTmpMkmjType().equals(TmpApplyEnum.ONE_LEVEL_PERSON_APPLY.getCode())) { if (cmd.getTmpMkmjType().equals(TmpApplyEnum.ONE_LEVEL_PERSON_APPLY.getCode())) {
personApplyServiceI.xgfPersonSave();
} }
} }
if (cmd.getTmpApplyType().equals(TmpApplyEnum.CAR_APPLY.getCode())) { if (cmd.getTmpApplyType().equals(TmpApplyEnum.CAR_APPLY.getCode())) {

View File

@ -1,5 +1,6 @@
package com.zcloud.primeport.command.query; package com.zcloud.primeport.command.query;
import com.alibaba.cola.dto.MultiResponse;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zcloud.primeport.command.convertor.ClosedAreaCoConvertor; import com.zcloud.primeport.command.convertor.ClosedAreaCoConvertor;
import com.zcloud.primeport.dto.ClosedAreaPageQry; import com.zcloud.primeport.dto.ClosedAreaPageQry;
@ -11,6 +12,7 @@ import com.alibaba.cola.dto.PageResponse;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
@ -62,5 +64,34 @@ public class ClosedAreaQueryExe {
List<ClosedAreaDO> list = closedAreaRepository.list(objectQueryWrapper); List<ClosedAreaDO> list = closedAreaRepository.list(objectQueryWrapper);
return closedAreaCoConvertor.converDOsToCOs(list); return closedAreaCoConvertor.converDOsToCOs(list);
} }
public MultiResponse<ClosedAreaCO> listTree() {
List<ClosedAreaDO> list = closedAreaRepository.list();
ArrayList<ClosedAreaCO> closedAreaDOS = new ArrayList<>();
for (ClosedAreaDO closedAreaDO : list) {
if (closedAreaDO.getParentId().equals(0L)) {
closedAreaDOS.add(closedAreaCoConvertor.converDOToCO(closedAreaDO));
}
}
for (ClosedAreaCO closedAreaCO : closedAreaDOS) {
closedAreaCO.setChildren(treeChildren(closedAreaCO.getId(), list));
}
return MultiResponse.of(closedAreaDOS);
}
private List<ClosedAreaCO> treeChildren(Long parentId, List<ClosedAreaDO> closedAreaDOS) {
List<ClosedAreaCO> childList = new ArrayList<>();
for (ClosedAreaDO closedAreaDO : closedAreaDOS) {
//遍历所有节点与上级传过来的父节点id比较
if (parentId.equals(closedAreaDO.getParentId())) {
childList.add(closedAreaCoConvertor.converDOToCO(closedAreaDO));
}
}
//递归
for (ClosedAreaCO route : childList) {
route.setChildren(treeChildren(route.getId(), closedAreaDOS));
}
return childList.isEmpty() ? null : childList;
}
} }

View File

@ -77,5 +77,10 @@ public class ClosedAreaServiceImpl implements ClosedAreaServiceI {
List<ClosedAreaCO> dataList = closedAreaQueryExe.listAllByJurisdictionalCorpId(id); List<ClosedAreaCO> dataList = closedAreaQueryExe.listAllByJurisdictionalCorpId(id);
return MultiResponse.of(dataList); return MultiResponse.of(dataList);
} }
@Override
public MultiResponse<ClosedAreaCO> listTree() {
return closedAreaQueryExe.listTree();
}
} }

View File

@ -30,5 +30,7 @@ public interface ClosedAreaServiceI {
MultiResponse<ClosedAreaCO> getCountByHgAuthArea(); MultiResponse<ClosedAreaCO> getCountByHgAuthArea();
MultiResponse<ClosedAreaCO> listAllByJurisdictionalCorpId(Long id); MultiResponse<ClosedAreaCO> listAllByJurisdictionalCorpId(Long id);
MultiResponse<ClosedAreaCO> listTree();
} }

View File

@ -25,6 +25,7 @@ public interface PersonApplyServiceI {
void removeBatch(Long[] ids); void removeBatch(Long[] ids);
void xgfPersonSave(XgfPersonApplyAddCmd cmd); void xgfPersonSave(XgfPersonApplyAddCmd cmd);
void xgfTmpPersonSave(XgfPersonApplyAddCmd cmd);
PageResponse<XgfPersonApplyCO> xgfPersonAuditList(XgfApplyPersonPageQry qry); PageResponse<XgfPersonApplyCO> xgfPersonAuditList(XgfApplyPersonPageQry qry);

View File

@ -6,6 +6,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.sql.Date; import java.sql.Date;
import java.util.List;
/** /**
@ -58,5 +59,8 @@ public class ClosedAreaCO extends ClientObject {
@ApiModelProperty(value = "是否有子集1有2没有") @ApiModelProperty(value = "是否有子集1有2没有")
private Integer hasChild; private Integer hasChild;
@ApiModelProperty
private List<ClosedAreaCO> children;
} }