Browse Source

if_house:新增补充orgIdPath的接口:POST /gov/org/agency/orgIdPathInit

feature/teamB_zz_wgh
wangxianzhang 3 years ago
parent
commit
e46c88fc4f
  1. 10
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java
  2. 2
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java
  3. 45
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java

10
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/HouseController.java

@ -569,4 +569,14 @@ public class HouseController implements ResultDataResolver {
return houseService.getHomeInfoByHouseCode(dto);
}
/**
* 初始化房屋的组织ID路径
* @return
*/
@PostMapping("orgIdPathInit")
public Result orgIdPathInit() {
houseService.orgIdPathInit();
return new Result();
}
}

2
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/HouseService.java

@ -173,4 +173,6 @@ public interface HouseService {
* @return com.epmet.commons.tools.utils.Result
*/
Result getHomeInfoByHouseCode(HouseInfoFormDTO dto);
void orgIdPathInit();
}

45
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/HouseServiceImpl.java

@ -5,6 +5,7 @@ import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.read.metadata.ReadSheet;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
@ -1082,5 +1083,49 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver {
return new Result().ok(house);
}
@Override
public void orgIdPathInit() {
// 循环查询所有没有fullname字段的数据
LambdaQueryWrapper<IcHouseEntity> query = new LambdaQueryWrapper<>();
query.eq(IcHouseEntity::getId, "1508686441788137474");
//query.isNull(IcHouseEntity::getOrgIdPath);
//query.last(" limit 1000 ");
while (true) {
List<IcHouseEntity> houses2Dispose = icHouseDao.selectList(query);
if (org.apache.commons.collections4.CollectionUtils.isEmpty(houses2Dispose)) {
break;
}
houses2Dispose.stream().forEach(h -> {
IcNeighborHoodDTO neighborhood = neighborHoodService.get(h.getNeighborHoodId());
ArrayList<String> pidList = new ArrayList<>();
recureAppendParentAgencyId(neighborhood.getAgencyId(), pidList);
String orgIdPath = String.join(":", pidList);
// 更新
IcHouseEntity house = new IcHouseEntity();
house.setId(h.getId());
house.setOrgIdPath(orgIdPath);
icHouseDao.updateById(house);
});
}
}
/**
* 递归拼接orgIdPath
* @param agencyId
* @param result
*/
private void recureAppendParentAgencyId(String agencyId, List result) {
result.add(0, agencyId);
CustomerAgencyEntity agency = customerAgencyDao.selectById(agencyId);
String pid = agency.getPid();
if (StringUtils.isBlank(pid) || "0".equals(pid)) {
return;
}
recureAppendParentAgencyId(pid, result);
}
}

Loading…
Cancel
Save