feat: 栖息地/珍稀植物园/动物救助站描点
This commit is contained in:
parent
f6e2d49558
commit
85cf3bc358
@ -4643,8 +4643,8 @@ public class FbStationServiceImpl implements FbStationService {
|
|||||||
.append(" SELECT t.RSTCD AS stcd, COUNT(1) AS lcjStatus ")
|
.append(" SELECT t.RSTCD AS stcd, COUNT(1) AS lcjStatus ")
|
||||||
.append(" FROM SD_ENGFR_R t ")
|
.append(" FROM SD_ENGFR_R t ")
|
||||||
.append(" INNER JOIN SD_RPIMNFISH_R t1 ON t.ID = t1.RPIMN_ID ")
|
.append(" INNER JOIN SD_RPIMNFISH_R t1 ON t.ID = t1.RPIMN_ID ")
|
||||||
.append(" WHERE (t.TASK_STATUS IS NULL OR t.TASK_STATUS = 'Approved') ")
|
.append(" WHERE 1=1 ")
|
||||||
.append(" AND NVL(t.IS_DELETED, 0) = 0 AND NVL(t1.IS_DELETED, 0) = 0 ")
|
.append(" AND t.IS_DELETED = 0 AND t1.IS_DELETED = 0 ")
|
||||||
.append(" AND t.TM BETWEEN ADD_MONTHS(SYSDATE, -12) AND SYSDATE ")
|
.append(" AND t.TM BETWEEN ADD_MONTHS(SYSDATE, -12) AND SYSDATE ")
|
||||||
.append(" GROUP BY t.RSTCD ")
|
.append(" GROUP BY t.RSTCD ")
|
||||||
.append(") b ON a.STCD = b.stcd ")
|
.append(") b ON a.STCD = b.stcd ")
|
||||||
|
|||||||
@ -71,4 +71,10 @@ public class FhHabitatController {
|
|||||||
public ResponseResult getStTbYsBVoKendoListCust(@RequestBody DataSourceRequest dataSourceRequest) {
|
public ResponseResult getStTbYsBVoKendoListCust(@RequestBody DataSourceRequest dataSourceRequest) {
|
||||||
return ResponseResult.successData(fhHabitatService.getStTbYsBVoKendoListCust(dataSourceRequest));
|
return ResponseResult.successData(fhHabitatService.getStTbYsBVoKendoListCust(dataSourceRequest));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/fhvap/GetKendoListCust")
|
||||||
|
@Operation(summary = "栖息地/珍稀植物园/动物救助站描点")
|
||||||
|
public ResponseResult getFhvapKendoListCust(@RequestBody DataSourceRequest dataSourceRequest) {
|
||||||
|
return ResponseResult.successData(fhHabitatService.getFhvapKendoListCust(dataSourceRequest));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,28 @@
|
|||||||
|
package com.yfd.platform.qgc_env.fh.entity.vo;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class FhHaVapVo {
|
||||||
|
private String baseId;
|
||||||
|
private String baseName;
|
||||||
|
private String stcd;
|
||||||
|
private String stnm;
|
||||||
|
private String sttp;
|
||||||
|
private String sttpCode;
|
||||||
|
private String sttpMap;
|
||||||
|
private String anchoPointState;
|
||||||
|
private String rstcd;
|
||||||
|
private String ennm;
|
||||||
|
private String rvcd;
|
||||||
|
private String rvcdName;
|
||||||
|
private BigDecimal lgtd;
|
||||||
|
private BigDecimal lttd;
|
||||||
|
private String bldsttCcode;
|
||||||
|
private BigDecimal dtmel;
|
||||||
|
private Integer dtin;
|
||||||
|
private Integer distance;
|
||||||
|
private String titleName;
|
||||||
|
}
|
||||||
@ -5,6 +5,7 @@ import com.yfd.platform.common.DataSourceResult;
|
|||||||
import com.yfd.platform.qgc_env.fh.entity.ao.FhDefaultAo;
|
import com.yfd.platform.qgc_env.fh.entity.ao.FhDefaultAo;
|
||||||
import com.yfd.platform.qgc_env.fh.entity.vo.FhBaseInfoVo;
|
import com.yfd.platform.qgc_env.fh.entity.vo.FhBaseInfoVo;
|
||||||
import com.yfd.platform.qgc_env.fh.entity.vo.FhDefaultVo;
|
import com.yfd.platform.qgc_env.fh.entity.vo.FhDefaultVo;
|
||||||
|
import com.yfd.platform.qgc_env.fh.entity.vo.FhHaVapVo;
|
||||||
import com.yfd.platform.qgc_env.fh.entity.vo.HabitatVo;
|
import com.yfd.platform.qgc_env.fh.entity.vo.HabitatVo;
|
||||||
|
|
||||||
public interface FhHabitatService {
|
public interface FhHabitatService {
|
||||||
@ -24,4 +25,6 @@ public interface FhHabitatService {
|
|||||||
FhBaseInfoVo getStcdInfo(String stcd);
|
FhBaseInfoVo getStcdInfo(String stcd);
|
||||||
|
|
||||||
DataSourceResult getStTbYsBVoKendoListCust(DataSourceRequest dataSourceRequest);
|
DataSourceResult getStTbYsBVoKendoListCust(DataSourceRequest dataSourceRequest);
|
||||||
|
|
||||||
|
DataSourceResult<FhHaVapVo> getFhvapKendoListCust(DataSourceRequest dataSourceRequest);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -16,11 +16,13 @@ import com.yfd.platform.common.exception.BizException;
|
|||||||
import com.yfd.platform.qgc_env.fh.entity.ao.FhDefaultAo;
|
import com.yfd.platform.qgc_env.fh.entity.ao.FhDefaultAo;
|
||||||
import com.yfd.platform.qgc_env.fh.entity.vo.FhBaseInfoVo;
|
import com.yfd.platform.qgc_env.fh.entity.vo.FhBaseInfoVo;
|
||||||
import com.yfd.platform.qgc_env.fh.entity.vo.FhDefaultVo;
|
import com.yfd.platform.qgc_env.fh.entity.vo.FhDefaultVo;
|
||||||
|
import com.yfd.platform.qgc_env.fh.entity.vo.FhHaVapVo;
|
||||||
import com.yfd.platform.qgc_env.fh.entity.vo.HabitatVo;
|
import com.yfd.platform.qgc_env.fh.entity.vo.HabitatVo;
|
||||||
import com.yfd.platform.qgc_env.fh.entity.vo.FhMsstbprptVo;
|
import com.yfd.platform.qgc_env.fh.entity.vo.FhMsstbprptVo;
|
||||||
import com.yfd.platform.qgc_env.fh.entity.vo.FhSdriverdayVo;
|
import com.yfd.platform.qgc_env.fh.entity.vo.FhSdriverdayVo;
|
||||||
import com.yfd.platform.qgc_env.fh.entity.vo.FhSdrvwtsVo;
|
import com.yfd.platform.qgc_env.fh.entity.vo.FhSdrvwtsVo;
|
||||||
import com.yfd.platform.qgc_env.fh.service.FhHabitatService;
|
import com.yfd.platform.qgc_env.fh.service.FhHabitatService;
|
||||||
|
import com.yfd.platform.qgc_env.wt.utils.SiteAvoidanceUtils;
|
||||||
import com.yfd.platform.qgc_env.wq.entity.vo.StTbYsVo;
|
import com.yfd.platform.qgc_env.wq.entity.vo.StTbYsVo;
|
||||||
import com.yfd.platform.utils.QgcQueryWrapperUtil;
|
import com.yfd.platform.utils.QgcQueryWrapperUtil;
|
||||||
import jakarta.annotation.Resource;
|
import jakarta.annotation.Resource;
|
||||||
@ -1920,4 +1922,76 @@ public class FhHabitatServiceImpl implements FhHabitatService {
|
|||||||
}
|
}
|
||||||
return sql.toString();
|
return sql.toString();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public DataSourceResult<FhHaVapVo> getFhvapKendoListCust(DataSourceRequest dataSourceRequest) {
|
||||||
|
DataSourceResult<FhHaVapVo> dataSourceResult = new DataSourceResult<>();
|
||||||
|
dataSourceResult.setAggregates(new HashMap<>());
|
||||||
|
|
||||||
|
if (dataSourceRequest == null) {
|
||||||
|
dataSourceResult.setData(new ArrayList<>());
|
||||||
|
dataSourceResult.setTotal(0L);
|
||||||
|
return dataSourceResult;
|
||||||
|
}
|
||||||
|
|
||||||
|
StringBuilder sql = new StringBuilder();
|
||||||
|
sql.append("SELECT ")
|
||||||
|
.append("t.BASE_ID AS baseId, ")
|
||||||
|
.append("hb.BASENAME AS baseName, ")
|
||||||
|
.append("t.STCD AS stcd, ")
|
||||||
|
.append("t.STNM AS stnm, ")
|
||||||
|
.append("t.STTP_CODE AS sttp, ")
|
||||||
|
.append("t.STTP_CODE AS sttpCode, ")
|
||||||
|
.append("t.STTP_CODE AS sttpMap, ")
|
||||||
|
.append("t.STTP_CODE AS anchoPointState, ")
|
||||||
|
.append("t.RSTCD AS rstcd, ")
|
||||||
|
.append("eng.ENNM AS ennm, ")
|
||||||
|
.append("NVL(t.HBRVCD, eng.HBRVCD) AS rvcd, ")
|
||||||
|
.append("t.LGTD AS lgtd, ")
|
||||||
|
.append("t.LTTD AS lttd, ")
|
||||||
|
.append("t.BLDSTT_CCODE AS bldsttCcode, ")
|
||||||
|
.append("t.ELEV AS dtmel, ")
|
||||||
|
.append("t.DTIN AS dtin ")
|
||||||
|
.append("FROM ( ")
|
||||||
|
.append(" SELECT STCD, STNM, 'FH' AS STTP_CODE, RSTCD, BASE_ID, HBRVCD, LGTD, LTTD, BLPRD AS BLDSTT_CCODE, ELEV, DTIN ")
|
||||||
|
.append(" FROM SD_FHBT_B_H WHERE NVL(IS_DELETED, 0) = 0 AND USFL = 1 ")
|
||||||
|
.append(" UNION ALL ")
|
||||||
|
.append(" SELECT STCD, STNM, STTP AS STTP_CODE, RSTCD, BASE_ID, HBRVCD, LGTD, LTTD, BLDSTT_CODE AS BLDSTT_CCODE, ELEV, DTIN ")
|
||||||
|
.append(" FROM SD_VA_B_H WHERE NVL(IS_DELETED, 0) = 0 AND USFL = 1 ")
|
||||||
|
.append(" UNION ALL ")
|
||||||
|
.append(" SELECT STCD, STNM, STTP AS STTP_CODE, RSTCD, BASE_ID, HBRVCD, LGTD, LTTD, BLDSTT_CODE AS BLDSTT_CCODE, ELEV, DTIN ")
|
||||||
|
.append(" FROM SD_VP_B_H WHERE NVL(IS_DELETED, 0) = 0 AND USFL = 1 ")
|
||||||
|
.append(") t ")
|
||||||
|
.append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = t.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 ")
|
||||||
|
.append("LEFT JOIN SD_HYDROBASE hb ON hb.BASEID = NVL(t.BASE_ID, eng.BASE_ID) AND NVL(hb.IS_DELETED, 0) = 0 ")
|
||||||
|
.append("WHERE t.LGTD IS NOT NULL AND t.LTTD IS NOT NULL ");
|
||||||
|
|
||||||
|
DataSourceLoadOptionsBase loadOptions = dataSourceRequest.toDevRequest();
|
||||||
|
Page<?> page = loadOptions == null ? null : QgcQueryWrapperUtil.buildPage(loadOptions, loadOptions.getSkip(), loadOptions.getTake());
|
||||||
|
List<FhHaVapVo> vaVpList = microservicDynamicSQLMapper.pageAllListWithResultType(page, sql.toString(), new HashMap<>(), FhHaVapVo.class);
|
||||||
|
|
||||||
|
for (FhHaVapVo vo : vaVpList) {
|
||||||
|
String bldsttCcode = vo.getBldsttCcode();
|
||||||
|
if (!"2".equals(bldsttCcode)) {
|
||||||
|
if ("VP".equals(vo.getSttp())) {
|
||||||
|
vo.setAnchoPointState("VP_INCOMPLETE");
|
||||||
|
} else if ("VA".equals(vo.getSttp())) {
|
||||||
|
vo.setAnchoPointState("VA_INCOMPLETE");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
vo.setTitleName(vo.getStnm());
|
||||||
|
vo.setSttpCode(vo.getSttp());
|
||||||
|
}
|
||||||
|
|
||||||
|
SiteAvoidanceUtils.calcSiteMapLev(vaVpList,
|
||||||
|
FhHaVapVo::getStcd,
|
||||||
|
FhHaVapVo::getLgtd,
|
||||||
|
FhHaVapVo::getLttd,
|
||||||
|
FhHaVapVo::getAnchoPointState,
|
||||||
|
FhHaVapVo::setDistance);
|
||||||
|
|
||||||
|
dataSourceResult.setData(vaVpList);
|
||||||
|
dataSourceResult.setTotal(page == null ? vaVpList.size() : page.getTotal());
|
||||||
|
return dataSourceResult;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2332,7 +2332,7 @@ public class FpRunServiceImpl implements FpRunService {
|
|||||||
" FROM ( " +
|
" FROM ( " +
|
||||||
" SELECT STCD, FTP " +
|
" SELECT STCD, FTP " +
|
||||||
" FROM SD_FPRUNPLAN_B " +
|
" FROM SD_FPRUNPLAN_B " +
|
||||||
" WHERE (TASK_STATUS = 'Approved' OR TASK_STATUS IS NULL) " +
|
" WHERE 1=1 " +
|
||||||
" AND IS_DELETED = 0 " +
|
" AND IS_DELETED = 0 " +
|
||||||
" AND STCD = #{map.stcd} " +
|
" AND STCD = #{map.stcd} " +
|
||||||
" AND TO_CHAR(START_TIME, 'yyyy') = #{map.yr} " +
|
" AND TO_CHAR(START_TIME, 'yyyy') = #{map.yr} " +
|
||||||
@ -2356,7 +2356,7 @@ public class FpRunServiceImpl implements FpRunService {
|
|||||||
" FROM ( " +
|
" FROM ( " +
|
||||||
" SELECT STCD, TO_CHAR(START_TIME, 'mm') AS stm, TO_CHAR(END_TIME, 'mm') AS edm, PYCNT AS pycnt " +
|
" SELECT STCD, TO_CHAR(START_TIME, 'mm') AS stm, TO_CHAR(END_TIME, 'mm') AS edm, PYCNT AS pycnt " +
|
||||||
" FROM SD_FPRUNPLAN_B " +
|
" FROM SD_FPRUNPLAN_B " +
|
||||||
" WHERE (TASK_STATUS = 'Approved' OR TASK_STATUS IS NULL) " +
|
" WHERE 1=1 " +
|
||||||
" AND IS_DELETED = 0 " +
|
" AND IS_DELETED = 0 " +
|
||||||
" AND STCD = #{map.stcd} " +
|
" AND STCD = #{map.stcd} " +
|
||||||
" AND TO_CHAR(START_TIME, 'yyyy') = #{map.yr} " +
|
" AND TO_CHAR(START_TIME, 'yyyy') = #{map.yr} " +
|
||||||
@ -2368,7 +2368,7 @@ public class FpRunServiceImpl implements FpRunService {
|
|||||||
" AND STCD NOT IN ( " +
|
" AND STCD NOT IN ( " +
|
||||||
" SELECT STCD " +
|
" SELECT STCD " +
|
||||||
" FROM SD_FPRUNPLAN_B " +
|
" FROM SD_FPRUNPLAN_B " +
|
||||||
" WHERE (TASK_STATUS = 'Approved' OR TASK_STATUS IS NULL) " +
|
" WHERE 1=1 " +
|
||||||
" AND IS_DELETED = 0 " +
|
" AND IS_DELETED = 0 " +
|
||||||
" AND STCD = #{map.stcd} " +
|
" AND STCD = #{map.stcd} " +
|
||||||
" AND TO_CHAR(START_TIME, 'yyyy') = #{map.yr} " +
|
" AND TO_CHAR(START_TIME, 'yyyy') = #{map.yr} " +
|
||||||
|
|||||||
@ -523,8 +523,8 @@ public class WarnDataServiceImpl implements WarnDataService {
|
|||||||
sql.append("LEFT JOIN MS_ALONG_B along ON b.HBRVCD = along.RVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ");
|
sql.append("LEFT JOIN MS_ALONG_B along ON b.HBRVCD = along.RVCD AND along.CODE = 'common' AND NVL(along.IS_DELETED, 0) = 0 ");
|
||||||
sql.append("LEFT JOIN (SELECT det.SORT, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') rstSort ON rstSort.RVCD = b.HBRVCD AND rstSort.STCD = b.RSTCD ");
|
sql.append("LEFT JOIN (SELECT det.SORT, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') rstSort ON rstSort.RVCD = b.HBRVCD AND rstSort.STCD = b.RSTCD ");
|
||||||
sql.append("LEFT JOIN (SELECT det.SORT, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') siteSort ON siteSort.RVCD = b.HBRVCD AND siteSort.STCD = b.STCD ");
|
sql.append("LEFT JOIN (SELECT det.SORT, cfg.RVCD, det.STCD FROM MS_ALONGDET_B det INNER JOIN MS_ALONG_B cfg ON det.ALONG_ID = cfg.ID WHERE NVL(det.IS_DELETED, 0) = 0 AND NVL(cfg.IS_DELETED, 0) = 0 AND cfg.CODE = 'common') siteSort ON siteSort.RVCD = b.HBRVCD AND siteSort.STCD = b.STCD ");
|
||||||
sql.append("WHERE NVL(a.IS_DELETED, 0) = 0 ");
|
sql.append("WHERE a.IS_DELETED = 0 ");
|
||||||
sql.append("AND (a.TASK_STATUS IS NULL OR a.TASK_STATUS = 'Approved') ");
|
// sql.append("AND (a.TASK_STATUS IS NULL OR a.TASK_STATUS = 'Approved') ");
|
||||||
sql.append("AND a.FID NOT LIKE '%ORA-%' AND a.FID NOT LIKE '%Out%' ");
|
sql.append("AND a.FID NOT LIKE '%ORA-%' AND a.FID NOT LIKE '%Out%' ");
|
||||||
|
|
||||||
if (StrUtil.isNotBlank(type)) {
|
if (StrUtil.isNotBlank(type)) {
|
||||||
|
|||||||
@ -17,6 +17,7 @@ import org.springframework.transaction.annotation.Transactional;
|
|||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
import java.util.Set;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
@ -162,7 +163,7 @@ public class SmsVerifyCodeServiceImpl extends ServiceImpl<SmsVerifyCodeMapper, S
|
|||||||
log.warn("催促短信发送失败:未找到有效的手机号,userIds: {}", ids);
|
log.warn("催促短信发送失败:未找到有效的手机号,userIds: {}", ids);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
List<String> validPhones = sysUsers.stream().map(SysUser::getPhone).filter(this::isValidPhone).toList();
|
Set<String> validPhones = sysUsers.stream().map(SysUser::getPhone).filter(this::isValidPhone).collect(Collectors.toSet());
|
||||||
|
|
||||||
if (validPhones.isEmpty()) {
|
if (validPhones.isEmpty()) {
|
||||||
log.warn("催促短信发送失败:没有合规的手机号");
|
log.warn("催促短信发送失败:没有合规的手机号");
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user