|
@@ -205,7 +205,9 @@ public class FzssServiceImpl implements IFzssService {
|
|
|
// 3.用地类型(性质)筛选
|
|
|
if (fzxzDTO.getUseLandType()) {
|
|
|
// 与用地性质保持一致,删除不符合用地性质的数据
|
|
|
- tableDateService.delByLandType(temporaryTable, fzxzDTO.getSjy(), fzxzDTO.getYdxz_bsm());
|
|
|
+ String bsmColumn = "kzxxgyddm";
|
|
|
+ if (!fzxzDTO.isInCzkfbj()) bsmColumn = "YDLXDM";
|
|
|
+ tableDateService.delByLandType(temporaryTable, fzxzDTO.getSjy(), fzxzDTO.getYdxz_bsm(), bsmColumn);
|
|
|
integer = tableDateService.getTableCount(temporaryTable);
|
|
|
if (integer == 0) {
|
|
|
iLogService.saveLog(taskId, "辅助选址", "计算完成,未找到符合用地性质条件数据", "info");
|
|
@@ -584,45 +586,86 @@ public class FzssServiceImpl implements IFzssService {
|
|
|
String rawTableName = selectionInfo.getSjy();
|
|
|
String rawItemIds = selectionRes.getDkid();
|
|
|
List<String> columns = new ArrayList<>();
|
|
|
- columns.add("dkbm");
|
|
|
- columns.add("kzxxgydmc");
|
|
|
- columns.add("jzxgd");
|
|
|
-
|
|
|
- List<String> rawItemIdList = Arrays.asList(rawItemIds.split(","));
|
|
|
- // TODO 查询多地块信息
|
|
|
- List<Map<String, Object>> rawTables = ghdkaMapper.getInfoListByColumn(rawTableName, rawItemIdList, columns);
|
|
|
-
|
|
|
- // 构建地块返回结果
|
|
|
- Map<String, Object> dkMap = new HashMap<>();
|
|
|
- float originValue = 999;
|
|
|
- for (Map<String, Object> rawTable : rawTables) {
|
|
|
- String dkbm = (String) rawTable.get("dkbm");
|
|
|
- dkbm = dkbm == null ? "无" : dkbm;
|
|
|
- if (dkMap.containsKey("dkbm")) {
|
|
|
- dkMap.put("dkbm", dkMap.get("dkbm") + "," + dkbm);// 地块编码
|
|
|
- } else {
|
|
|
- dkMap.put("dkbm", dkbm);// 地块编码
|
|
|
- }
|
|
|
- if (dkMap.containsKey("kzxxgydmc")) {
|
|
|
- dkMap.put("kzxxgydmc", dkMap.get("kzxxgydmc") + "," + rawTable.get("kzxxgydmc"));// 地块类型
|
|
|
- } else {
|
|
|
- dkMap.put("kzxxgydmc", rawTable.get("kzxxgydmc"));// 地块类型
|
|
|
+
|
|
|
+ if (rawTableName.equals(TB_GHDK)) {//规划地块
|
|
|
+ columns.add("dkbm");// 地块编码
|
|
|
+ columns.add("kzxxgydmc");//用地类型名称
|
|
|
+ columns.add("jzxgd");//建筑限高上限
|
|
|
+
|
|
|
+ List<String> rawItemIdList = Arrays.asList(rawItemIds.split(","));
|
|
|
+ List<Map<String, Object>> rawTables = ghdkaMapper.getInfoListByColumn(rawTableName, rawItemIdList, columns);
|
|
|
+
|
|
|
+ // 构建地块返回结果
|
|
|
+ Map<String, Object> dkMap = new HashMap<>();
|
|
|
+ float originValue = 999;
|
|
|
+ for (Map<String, Object> rawTable : rawTables) {
|
|
|
+ String dkbm = (String) rawTable.get("dkbm");
|
|
|
+ dkbm = dkbm == null ? "无" : dkbm;
|
|
|
+ if (dkMap.containsKey("dkbm")) {
|
|
|
+ dkMap.put("dkbm", dkMap.get("dkbm") + "," + dkbm);// 地块编码
|
|
|
+ } else {
|
|
|
+ dkMap.put("dkbm", dkbm);// 地块编码
|
|
|
+ }
|
|
|
+ if (dkMap.containsKey("kzxxgydmc")) {
|
|
|
+ dkMap.put("kzxxgydmc", dkMap.get("kzxxgydmc") + "," + rawTable.get("kzxxgydmc"));// 地块类型
|
|
|
+ } else {
|
|
|
+ dkMap.put("kzxxgydmc", rawTable.get("kzxxgydmc"));// 地块类型
|
|
|
+ }
|
|
|
+ if (dkMap.containsKey("jzxgd")) {
|
|
|
+ if (rawTable.get("jzxgd") != null) {
|
|
|
+ originValue = (float) rawTable.get("jzxgd") < originValue ? (float) rawTable.get("jzxgd") : originValue;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
- if (dkMap.containsKey("jzxgd")) {
|
|
|
- if (rawTable.get("jzxgd") != null) {
|
|
|
- originValue = (float) rawTable.get("jzxgd") < originValue ? (float) rawTable.get("jzxgd") : originValue;
|
|
|
+
|
|
|
+ dkMap.put("jzxgd", originValue == 999 ? 0 : originValue);// 限高
|
|
|
+ dkMap.put("landPrice", NumberUtil.double2TwoDecimal(selectionRes.getLandPrice()));// 地价
|
|
|
+ dkMap.put("geom", selectionRes.getGeom());
|
|
|
+ dkMap.put("id", selectionRes.getBsm());
|
|
|
+ dkMap.put("area", NumberUtil.double2TwoDecimal(UnitsUtil.m2ToMu(selectionRes.getArea())));// 面积
|
|
|
+ dkMap.put("landIds", rawItemIdList);
|
|
|
+
|
|
|
+ dkMaps.add(dkMap);
|
|
|
+ } else {//村庄规划地块
|
|
|
+ columns.add("XZQMC");//行政区名称
|
|
|
+ columns.add("YDLXMC");//用地类型名称
|
|
|
+// columns.add("jzxgd");//建筑限高上限
|
|
|
+
|
|
|
+ List<String> rawItemIdList = Arrays.asList(rawItemIds.split(","));
|
|
|
+ List<Map<String, Object>> rawTables = ghdkaMapper.getInfoListByColumn(rawTableName, rawItemIdList, columns);
|
|
|
+
|
|
|
+ // 构建地块返回结果
|
|
|
+ Map<String, Object> dkMap = new HashMap<>();
|
|
|
+ float originValue = 999;
|
|
|
+ for (Map<String, Object> rawTable : rawTables) {
|
|
|
+ String dkbm = (String) rawTable.get("XZQMC");
|
|
|
+ dkbm = dkbm == null ? "无" : dkbm;
|
|
|
+ if (dkMap.containsKey("dkbm")) {
|
|
|
+ dkMap.put("dkbm", dkMap.get("dkbm") + "," + dkbm);// 地块编码
|
|
|
+ } else {
|
|
|
+ dkMap.put("dkbm", dkbm);// 地块编码
|
|
|
}
|
|
|
+ if (dkMap.containsKey("kzxxgydmc")) {
|
|
|
+ dkMap.put("kzxxgydmc", dkMap.get("kzxxgydmc") + "," + rawTable.get("YDLXMC"));// 地块类型
|
|
|
+ } else {
|
|
|
+ dkMap.put("kzxxgydmc", rawTable.get("kzxxgydmc"));// 地块类型
|
|
|
+ }
|
|
|
+// if (dkMap.containsKey("jzxgd")) {
|
|
|
+// if (rawTable.get("jzxgd") != null) {
|
|
|
+// originValue = (float) rawTable.get("jzxgd") < originValue ? (float) rawTable.get("jzxgd") : originValue;
|
|
|
+// }
|
|
|
+// }
|
|
|
}
|
|
|
- }
|
|
|
|
|
|
- dkMap.put("jzxgd", originValue == 999 ? 0 : originValue);// 限高
|
|
|
- dkMap.put("landPrice", NumberUtil.double2TwoDecimal(selectionRes.getLandPrice()));// 地价
|
|
|
- dkMap.put("geom", selectionRes.getGeom());
|
|
|
- dkMap.put("id", selectionRes.getBsm());
|
|
|
- dkMap.put("area", NumberUtil.double2TwoDecimal(UnitsUtil.m2ToMu(selectionRes.getArea())));// 面积
|
|
|
- dkMap.put("landIds", rawItemIdList);
|
|
|
+ dkMap.put("jzxgd", originValue == 999 ? 0 : originValue);// 限高
|
|
|
+ dkMap.put("landPrice", NumberUtil.double2TwoDecimal(selectionRes.getLandPrice()));// 地价
|
|
|
+ dkMap.put("geom", selectionRes.getGeom());
|
|
|
+ dkMap.put("id", selectionRes.getBsm());
|
|
|
+ dkMap.put("area", NumberUtil.double2TwoDecimal(UnitsUtil.m2ToMu(selectionRes.getArea())));// 面积
|
|
|
+ dkMap.put("landIds", rawItemIdList);
|
|
|
|
|
|
- dkMaps.add(dkMap);
|
|
|
+ dkMaps.add(dkMap);
|
|
|
+ }
|
|
|
}
|
|
|
result.setDks(dkMaps);
|
|
|
|