|
@@ -327,7 +327,7 @@ public class FzssServiceImpl implements IFzssService {
|
|
|
FactorSpatialVo factorSpatialVo = factorUseDTO.getConditionInfoObj();
|
|
|
if (factorSpatialVo.equals("intersect")) {
|
|
|
// 1.先切割因子地块
|
|
|
- String calculateEwkt = getFactorEwkt(factorUseDTO.getFactorBsm(), ewkt, factorSpatialVo.getDefaultValue(), 0);
|
|
|
+ String calculateEwkt = getFactorEwkt(factorUseDTO.getFactorBsm(), ewkt, Float.parseFloat(factorSpatialVo.getDefaultValue()), 0);
|
|
|
if (factorSpatialVo.isClip()) {
|
|
|
// 切割地块
|
|
|
if (factorSpatialVo.getDefaultType().equals("intersect")) {
|
|
@@ -355,7 +355,7 @@ public class FzssServiceImpl implements IFzssService {
|
|
|
}
|
|
|
} else if (factorSpatialVo.getSpatialType().equals("contain")) {
|
|
|
// 1.先切割因子地块
|
|
|
- String calculateEwkt = getFactorEwkt(factorUseDTO.getFactorBsm(), ewkt, factorSpatialVo.getDefaultValue(), 0);
|
|
|
+ String calculateEwkt = getFactorEwkt(factorUseDTO.getFactorBsm(), ewkt, Float.parseFloat(factorSpatialVo.getDefaultValue()), 0);
|
|
|
if (factorSpatialVo.isClip()) {
|
|
|
// 包含判断
|
|
|
if (factorSpatialVo.getDefaultType().equals("contain")) {
|
|
@@ -382,7 +382,9 @@ public class FzssServiceImpl implements IFzssService {
|
|
|
}
|
|
|
}
|
|
|
} else if (factorSpatialVo.getSpatialType().equals("distance")) {
|
|
|
- String calculateEwkt = getFactorEwkt(factorUseDTO.getFactorBsm(), ewkt, factorSpatialVo.getDefaultValue(), factorSpatialVo.getDefaultValue());
|
|
|
+ String calculateEwkt = getFactorEwkt(factorUseDTO.getFactorBsm(), ewkt,
|
|
|
+ Float.parseFloat(factorSpatialVo.getDefaultValue()),
|
|
|
+ Float.parseFloat(factorSpatialVo.getDefaultValue()));
|
|
|
|
|
|
if (factorSpatialVo.isClip()) {
|
|
|
// 距离判断
|
|
@@ -418,17 +420,20 @@ public class FzssServiceImpl implements IFzssService {
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
- } else if (factorSpatialVo.getDefaultType().equals("sy_dsm")) {
|
|
|
+ } else if (factorSpatialVo.getSpatialType().equals("slope") || factorSpatialVo.getSpatialType().equals("dsm")) {
|
|
|
// 坡度计算
|
|
|
if (factorSpatialVo.getDefaultType().equals("lt") || factorSpatialVo.getDefaultType().equals("let")) {
|
|
|
// 小于等于
|
|
|
-
|
|
|
+ rawTable = createUtilsDBService.getLtBandValue(rawTable, factorUseDTO.getFactorBsm(), Double.valueOf(factorSpatialVo.getDefaultValue()));
|
|
|
} else if (factorSpatialVo.getDefaultType().equals("gt") || factorSpatialVo.getDefaultType().equals("get")) {
|
|
|
// 大于等于
|
|
|
-
|
|
|
+ rawTable = createUtilsDBService.getGtBandValue(rawTable, factorUseDTO.getFactorBsm(), Double.valueOf(factorSpatialVo.getDefaultValue()));
|
|
|
} else {
|
|
|
// 介于
|
|
|
-
|
|
|
+ String defaultValues = factorSpatialVo.getDefaultValue();
|
|
|
+ String[] valueArray = defaultValues.split(",");
|
|
|
+ rawTable = createUtilsDBService.getLtBandValue(rawTable, factorUseDTO.getFactorBsm(), Double.valueOf(valueArray[0]));
|
|
|
+ rawTable = createUtilsDBService.getGtBandValue(rawTable, factorUseDTO.getFactorBsm(), Double.valueOf(valueArray[1]));
|
|
|
}
|
|
|
}
|
|
|
Integer tableCount = tableDateService.getTableCount(rawTable);
|