skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/IZtApiService.java
@@ -40,5 +40,11 @@ */ List<DataResPo> getResWy(); /** * 获取位移水库集 * @return */ List<DataResPo> getResSl(); List<DataResChildrenPo> getSl(); } skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/AlarmGetServiceImpl.java
@@ -79,7 +79,7 @@ cdList = ztApiService.getResSy(); } else if (type.equals("2")) { //获取渗流测点 return null; cdList=ztApiService.getResSl(); } else if (type.equals("3") || type.equals("4") || type.equals("5")) { //获取位移测点 cdList = ztApiService.getResWy(); skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/HstPredictServiceImpl.java
@@ -15,6 +15,7 @@ import cn.gistack.nky.vo.HstPredictVO; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.extern.slf4j.Slf4j; import org.springblade.core.mp.support.Condition; import org.springblade.core.tool.utils.ObjectUtil; import org.springframework.beans.factory.annotation.Autowired; @@ -25,6 +26,7 @@ import java.util.stream.Collectors; @Service @Slf4j public class HstPredictServiceImpl extends ServiceImpl<HstPredictMapper, HstPredict> implements IHstPredictService { @Autowired private INkyService nkyService; @@ -61,7 +63,8 @@ List<DataResChildrenPo> cdList = getCdList(type); //暂时筛选出数据 // List<DataResChildrenPo> collect = cdList.stream().filter( // item -> item.getRes_cd().equals("42011640018") || item.getRes_cd().equals("42130350046")|| item.getRes_cd().equals("42092250024")|| item.getRes_cd().equals("42022250039")|| item.getRes_cd().equals("42132150292") //// item -> item.getRes_cd().equals("42011640018") || item.getRes_cd().equals("42130350046")|| item.getRes_cd().equals("42092250024")|| item.getRes_cd().equals("42022250039")|| item.getRes_cd().equals("42132150292") // item -> item.getRes_cd().equals("42050659003") ||item.getRes_cd().equals("42032240005") // ).collect(Collectors.toList()); // predict(collect,type); @@ -78,6 +81,7 @@ if (collect.size() == 0){ return; } int no = 0; List<NewSwFuturePo> future = new ArrayList<>(); if (type.equals("1") || type.equals("2")){ @@ -85,35 +89,41 @@ DataResChildrenPo dataResChildrenPo = collect.get(i); String currentResCd = dataResChildrenPo.getRes_cd(); //第一个水库 if (future.size() == 0 && resCd.equals("")){ future = hsybService.getNewFuture(currentResCd); //当前水库 resCd = currentResCd; } else if (!resCd.equals(currentResCd)) { //其他水库,获取新的预测数据 future = hsybService.getNewFuture(currentResCd); //更换为新水库 resCd = currentResCd; try { //第一个水库 if (future.size() == 0 && resCd.equals("")){ future = hsybService.getNewFuture(currentResCd); //当前水库 resCd = currentResCd; no = no +1; log.info("当前为第{}个水库,水库id为{}",no,currentResCd); } else if (!resCd.equals(currentResCd)) { //其他水库,获取新的预测数据 future = hsybService.getNewFuture(currentResCd); //更换为新水库 resCd = currentResCd; no = no +1; log.info("当前为第{}个水库,水库id为{}",no,currentResCd); } //预测数据构造请求数据 if (future != null && future.size() > 0) { List<PredictWatersPo> po = new ArrayList<>(); future.forEach(item -> { PredictWatersPo predictWatersPo = new PredictWatersPo(); //设置时间 predictWatersPo.setTime(item.getTime()); //设置预测水位 predictWatersPo.setValue(Double.parseDouble(item.getSw())); po.add(predictWatersPo); }); HstPredictReqPo arimaPredictReqPo = new HstPredictReqPo(dataResChildrenPo, type, po); //循环预测请求 nkyService.hstPredict(arimaPredictReqPo); } }catch (Exception e){ e.printStackTrace(); } //预测数据构造请求数据 if (future != null && future.size() > 0) { List<PredictWatersPo> po = new ArrayList<>(); future.forEach(item -> { PredictWatersPo predictWatersPo = new PredictWatersPo(); //设置时间 predictWatersPo.setTime(item.getTime()); //设置预测水位 predictWatersPo.setValue(Double.parseDouble(item.getSw())); po.add(predictWatersPo); }); HstPredictReqPo arimaPredictReqPo = new HstPredictReqPo(dataResChildrenPo, type, po); //循环预测请求 nkyService.hstPredict(arimaPredictReqPo); } } }else if (type.equals("3") || type.equals("4") || type.equals("5")){ @@ -121,39 +131,49 @@ DataResChildrenPo dataResChildrenPo = collect.get(i); String currentResCd = dataResChildrenPo.getRes_cd(); //第一个水库 if (future.size() == 0 && resCd.equals("")){ future = hsybService.getNewFuture(currentResCd); //当前水库 resCd = currentResCd; } else if (!resCd.equals(currentResCd)) { //其他水库,获取新的预测数据 future = hsybService.getNewFuture(currentResCd); //更换为新水库 resCd = currentResCd; try { //第一个水库 if (future.size() == 0 && resCd.equals("")){ future = hsybService.getNewFuture(currentResCd); //当前水库 resCd = currentResCd; no = no +1; log.info("当前为第{}个水库,水库id为{}",no,currentResCd); } else if (!resCd.equals(currentResCd)) { //其他水库,获取新的预测数据 future = hsybService.getNewFuture(currentResCd); //更换为新水库 resCd = currentResCd; no = no +1; log.info("当前为第{}个水库,水库id为{}",no,currentResCd); } //预测数据构造请求数据 if (future != null && future.size() > 0) { List<PredictWatersPo> po = new ArrayList<>(); future.forEach(item -> { PredictWatersPo predictWatersPo = new PredictWatersPo(); //设置时间 predictWatersPo.setTime(item.getTime()); //设置预测水位 predictWatersPo.setValue(Double.parseDouble(item.getSw())); po.add(predictWatersPo); }); //循环预测请求(位移一起请求减少请求次数) HstPredictReqPo arimaPredictReqPoX = new HstPredictReqPo(dataResChildrenPo, "3", po); nkyService.hstPredict(arimaPredictReqPoX); HstPredictReqPo arimaPredictReqPoY = new HstPredictReqPo(dataResChildrenPo, "4", po); nkyService.hstPredict(arimaPredictReqPoY); HstPredictReqPo arimaPredictReqPoZ = new HstPredictReqPo(dataResChildrenPo, "5", po); nkyService.hstPredict(arimaPredictReqPoZ); } }catch (Exception e){ e.printStackTrace(); } //预测数据构造请求数据 if (future != null && future.size() > 0) { List<PredictWatersPo> po = new ArrayList<>(); future.forEach(item -> { PredictWatersPo predictWatersPo = new PredictWatersPo(); //设置时间 predictWatersPo.setTime(item.getTime()); //设置预测水位 predictWatersPo.setValue(Double.parseDouble(item.getSw())); po.add(predictWatersPo); }); //循环预测请求(位移一起请求减少请求次数) HstPredictReqPo arimaPredictReqPoX = new HstPredictReqPo(dataResChildrenPo, "3", po); nkyService.hstPredict(arimaPredictReqPoX); HstPredictReqPo arimaPredictReqPoY = new HstPredictReqPo(dataResChildrenPo, "4", po); nkyService.hstPredict(arimaPredictReqPoY); HstPredictReqPo arimaPredictReqPoZ = new HstPredictReqPo(dataResChildrenPo, "5", po); nkyService.hstPredict(arimaPredictReqPoZ); } } } skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/HsybServiceImpl.java
@@ -84,16 +84,19 @@ HsybGetFuturePo hsybGetFuturePo = sendRequestToHsyb(GET_NEW_FUTURE, urlParams); //程序转为hashmap,手动转换类型 List<NewSwFuturePo> data = JSON.parseArray(JSON.toJSONString(hsybGetFuturePo.getData()), NewSwFuturePo.class); List<NewSwFuturePo> filterData = filterPredict(data); if (hsybGetFuturePo.getData() !=null){ //程序转为hashmap,手动转换类型 List<NewSwFuturePo> data = JSON.parseArray(JSON.toJSONString(hsybGetFuturePo.getData()), NewSwFuturePo.class); List<NewSwFuturePo> filterData = filterPredict(data); log.info(StringUtil.format("过滤后的预测水位数据:{}", JSON.toJSONString(filterData))); return filterData; // }else{ // //拿不到预测水位 // return null; // } log.info(StringUtil.format("过滤后的预测水位数据:{}", JSON.toJSONString(filterData))); return filterData; }else { //因为会有data为null的数据,所以返回空数组 List<NewSwFuturePo> list = new ArrayList<>(); return list; } } public Boolean isResHasModel(String resId){ @@ -247,6 +250,7 @@ try { ResponseEntity<HsybGetFuturePo> exchange = restTemplate.exchange(url, HttpMethod.GET, formEntity, HsybGetFuturePo.class); log.info("请求结果:"+ exchange.getBody().toString()); return exchange.getBody(); } catch (Exception e) { e.printStackTrace(); skjcmanager/skjcmanager-service/skjcmanager-nky/src/main/java/cn/gistack/nky/service/impl/ZtApiServiceImpl.java
@@ -80,6 +80,12 @@ } @Override public List<DataResPo> getResSl() { Map<String, Object> params = new LinkedHashMap<>(); return getResData(SL_API, "get", params); } @Override public List<DataResChildrenPo> getSl() { Map<String, Object> params = new LinkedHashMap<>(); return getData(SL_API, "get", params); skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/AttResManagePersonController.java
@@ -2,6 +2,7 @@ import cn.gistack.sm.sjztmd.entity.AttResManagePerson; import cn.gistack.sm.sjztmd.service.IAttResManagePersonService; import cn.gistack.sm.sjztmd.vo.PersonVO; import cn.gistack.system.user.entity.User; import cn.gistack.system.user.feign.IUserClient; import com.baomidou.mybatisplus.core.metadata.IPage; @@ -131,4 +132,18 @@ return R.data(attResManagePersonService.synchronizationAddUser()); } /** * 查询巡查、技术、主管、行政、水行政部门责任人 * @param resId 水库id * @param findType 指定查询的责任人类型 * @return */ @GetMapping("/getManagePersonList") public R getManagePersonList(String resId,String findType){ List<PersonVO> list = attResManagePersonService.getManagePersonList(resId,findType); return R.data(list); } } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttResBaseMapper.java
@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.ibatis.annotations.Param; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -78,4 +79,6 @@ * @return */ Integer getWaterCountByResNameAndCountyName(@Param("resName") String resName,@Param("countyCode") String countyCode); AttResAdVO getResAd(@Param("resId") String resId); } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttResBaseMapper.xml
@@ -273,6 +273,39 @@ (c."ad_grad" = 3 and c."ad_code" = #{countyCode}) ) </select> <select id="getResAd" resultType="cn.gistack.sm.sjztmd.vo.AttResAdVO"> SELECT arb."name" resName, arb."guid" resGuid, arb."interior_ad_guid", case when town."ad_grad" = 4 THEN town."ad_code" ELSE NULL END AS townCode, case when town."ad_grad" = 4 THEN town."ad_name" ELSE NULL END AS townName, case when town."ad_grad" = 3 THEN town."ad_code" when county."ad_grad" = 3 THEN county."ad_code" END AS countyCode, case when town."ad_grad" = 3 THEN town."ad_name" when county."ad_grad" = 3 THEN county."ad_name" END AS countyName, case when town."ad_grad" = 2 THEN town."ad_code" when county."ad_grad" = 2 THEN county."ad_code" ELSE city."ad_code" END AS cityCode, case when town."ad_grad" = 2 THEN town."ad_name" when county."ad_grad" = 2 THEN county."ad_name" ELSE city."ad_name" END AS cityName, case when town."ad_grad" = 1 THEN town."ad_code" when county."ad_grad" = 1 THEN county."ad_code" when city."ad_grad" = 1 THEN city."ad_code" ELSE province."ad_code" END AS provinceCode, case when town."ad_grad" = 1 THEN town."ad_name" when county."ad_grad" = 1 THEN county."ad_name" when city."ad_grad" = 1 THEN city."ad_name" ELSE province."ad_name" END AS provinceName FROM SJZT_MD."att_res_base" arb LEFT JOIN SJZT_MD."att_ad_base" town ON town."guid" = arb."interior_ad_guid" LEFT JOIN SJZT_MD."att_ad_base" county ON county."guid" = town."p_ad_code" LEFT JOIN SJZT_MD."att_ad_base" city ON city."guid" = county."p_ad_code" LEFT JOIN SJZT_MD."att_ad_base" province ON province."guid" = city."p_ad_code" where arb."guid" = #{resId} </select> </mapper> skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttResManagePersonMapper.java
@@ -76,4 +76,8 @@ String getCompetentDepart(@Param("resCd") String resCd); List<AttResManagePerson> getPersonList(@Param("resCd") String resCd); List<AttResManagePerson> getList(@Param("attResManagePerson") AttResManagePerson attResManagePerson); List<PersonVO> getPersonByRoleAndAd(@Param("roleAlias") String roleAlias,@Param("adCode") String adCode); } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/AttResManagePersonMapper.xml
@@ -244,5 +244,24 @@ <select id="getPersonList" resultType="cn.gistack.sm.sjztmd.entity.AttResManagePerson"> SELECT * FROM "SJZT_MD"."att_res_manage_person" WHERE "res_guid" = #{resCd} </select> <select id="getList" resultType="cn.gistack.sm.sjztmd.entity.AttResManagePerson"> SELECT * FROM SJZT_MD."att_res_manage_person" where 1=1 <if test="attResManagePerson.resGuid != null and attResManagePerson.resGuid != ''"> AND "res_guid" = #{attResManagePerson.resGuid} </if> ORDER BY "type" ASC </select> <select id="getPersonByRoleAndAd" resultType="cn.gistack.sm.sjztmd.vo.PersonVO"> SELECT BU.id as userId, BU.real_name as userName, 9 as type FROM YWXT.BLADE_USER BU LEFT JOIN YWXT.BLADE_ROLE BR ON BU.ROLE_ID LIKE CONCAT('%',BR.ID,'%') WHERE bu.is_deleted = 0 AND BU.DEPT_ID = #{adCode} AND BR.ROLE_ALIAS = #{roleAlias} </select> </mapper> skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/IAttResBaseService.java
@@ -10,6 +10,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.service.IService; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -65,4 +66,11 @@ * @return */ Integer getWaterCountByResNameAndCountyName(String resName, String countyName); /** * 获取水库的行政区划以及行政区划等级 * @param resId * @return */ AttResAdVO getResAd(String resId); } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/IAttResManagePersonService.java
@@ -97,4 +97,6 @@ * @return */ List<AttResManagePerson> getPersonList(String resCd); List<PersonVO> getManagePersonList(String resId,String findType); } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttResBaseServiceImpl.java
@@ -21,6 +21,7 @@ import org.springframework.web.bind.annotation.RequestParam; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -134,4 +135,9 @@ public Integer getWaterCountByResNameAndCountyName(String resName, String countyCode) { return baseMapper.getWaterCountByResNameAndCountyName(resName,countyCode); } @Override public AttResAdVO getResAd(String resId) { return baseMapper.getResAd(resId); } } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttResManagePersonServiceImpl.java
@@ -6,6 +6,7 @@ import cn.gistack.sm.sjztmd.mapper.AttResManagePersonMapper; import cn.gistack.sm.sjztmd.service.IAttResBaseService; import cn.gistack.sm.sjztmd.service.IAttResManagePersonService; import cn.gistack.sm.sjztmd.vo.AttResAdVO; import cn.gistack.sm.sjztmd.vo.AttResBaseVO; import cn.gistack.sm.sjztmd.vo.PersonVO; import cn.gistack.sm.sjztmd.vo.UserPersonVO; @@ -13,6 +14,8 @@ import cn.gistack.system.user.feign.IUserClient; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springblade.core.log.exception.ServiceException; import org.springblade.core.mp.support.Condition; import org.springblade.core.tool.api.R; import org.springblade.core.tool.utils.Func; import org.springblade.core.tool.utils.StringUtil; @@ -20,9 +23,8 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; import java.util.Set; import java.util.*; import java.util.stream.Collectors; /** * @ClassName AttResManagePersonServiceImpl @@ -198,4 +200,117 @@ public List<AttResManagePerson> getPersonList(String resCd) { return baseMapper.getPersonList(resCd); } @Override @DS("zt") public List<PersonVO> getManagePersonList(String resId,String findType) { List<PersonVO> result = new ArrayList<>(); if (StringUtil.isEmpty(resId)){ throw new ServiceException("水库id为空"); } //查四个责任人 AttResManagePerson attResManagePerson = new AttResManagePerson(); attResManagePerson.setResGuid(resId); List<AttResManagePerson> list = baseMapper.getList(attResManagePerson); //过滤数据 if (StringUtil.isNotBlank(findType)){ list = list.stream().filter(e->findType.indexOf(e.getType())>-1).collect(Collectors.toList()); } //赋值 list.forEach(p->{ List<User> userList = userClient.userInfoByPhone("000000", p.getUserPhone()).getData(); if (userList.size() > 0) { PersonVO personVO = new PersonVO(); personVO.setUserId(userList.get(0).getId().toString()); personVO.setUserName(userList.get(0).getRealName()); personVO.setType(p.getType()); //1.政府行政责任人,2.主管部门责任人,3.管理单位责任人,4.技术责任人,5.巡查责任人,6.行政责任人 switch (p.getType()){ case "1": personVO.setRoleName("行政责任人"); break; case "2": personVO.setRoleName("主管部门责任人"); break; case "3": personVO.setRoleName("管理单位责任人"); break; case "4": personVO.setRoleName("技术责任人"); break; case "5": personVO.setRoleName("巡查责任人"); break; default: break; } result.add(personVO); } }); AttResAdVO resAd = attResBaseService.getResAd(resId); String cityName = resAd.getCityName(); String countyName = resAd.getCountyName(); String townName = resAd.getTownName(); if (StringUtil.isBlank(findType) || findType.indexOf("9")>-1){ List<PersonVO> deptUser = new ArrayList<>(); if (cityName != null && cityName.equals("省直管")){ //如果是省直管,找省厅管理员 String provinceCode = resAd.getProvinceCode(); deptUser = baseMapper.getPersonByRoleAndAd("stgly",provinceCode); deptUser.forEach(p->{ p.setRoleName("省厅管理员"); }); } else if (countyName != null && countyName.equals("市直管")) { //如果是市直管,找市州管理员 String cityCode = resAd.getCityCode(); deptUser = baseMapper.getPersonByRoleAndAd("dsswjgly",cityCode); deptUser.forEach(p->{ p.setRoleName("市州管理员"); }); }else if (StringUtil.isNotBlank(townName)){ //镇不是空的,找乡镇管理员 String townCode = resAd.getTownCode(); deptUser = baseMapper.getPersonByRoleAndAd("xzgly",townCode); deptUser.forEach(p->{ p.setRoleName("乡镇管理员"); }); }else if (StringUtil.isNotBlank(countyName)){ //区不是空的找区县管理员 String countyCode = resAd.getCountyCode(); deptUser = baseMapper.getPersonByRoleAndAd("qxswjgly",countyCode); deptUser.forEach(p->{ p.setRoleName("区县管理员"); }); }else if (StringUtil.isNotBlank(cityName)){ //市不是空的找市州管理员 String cityCode = resAd.getCityCode(); deptUser = baseMapper.getPersonByRoleAndAd("dsswjgly",cityCode); deptUser.forEach(p->{ p.setRoleName("市州管理员"); }); }else{ String provinceCode = resAd.getProvinceCode(); deptUser = baseMapper.getPersonByRoleAndAd("stgly",provinceCode); deptUser.forEach(p->{ p.setRoleName("省厅管理员"); }); } result.addAll(deptUser); } return result; } } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/vo/AttResAdVO.java
@@ -16,6 +16,9 @@ */ private String resGuid; private String provinceCode; private String provinceName; /** * 市州编号 */ skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/vo/PersonVO.java
New file @@ -0,0 +1,20 @@ package cn.gistack.sm.sjztmd.vo; import lombok.Data; @Data public class PersonVO { private String userId; private String userName; private String roleName; //1.政府行政责任人,2.主管部门责任人,3.管理单位责任人,4.技术责任人,5.巡查责任人,6.行政责任人 //单独定义 水行政部门为9 private String type; } skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/jobhandler/NkyXxlJob.java
@@ -1,15 +1,13 @@ package cn.gistack.job.executor.jobhandler; import cn.gistack.job.executor.thread.MyThread; import cn.gistack.nky.fegin.INkyClient; import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.handler.annotation.XxlJob; import com.xxl.job.core.log.XxlJobLogger; import lombok.AllArgsConstructor; import org.springblade.core.tool.utils.DateUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.List; /** * 南科院预测数据定时器 @@ -21,19 +19,20 @@ private static final String SY = "1"; private static final String SL = "2"; private static final String X = "3"; private static final String Y= "4"; private static final String Y = "4"; private static final String Z = "5"; private final INkyClient nkyClient; /** * 南科院Arima请求预测 * * @param param * @return * @throws Exception */ @XxlJob("predictNkyDataJobHandler") public ReturnT<String> predictNkyDataJobHandler(String param){ public ReturnT<String> predictNkyDataJobHandler(String param) { XxlJobLogger.log("开始ArimaPredict预测..."); arimaPredict(); XxlJobLogger.log("ArimaPredict预测结束..."); @@ -44,12 +43,13 @@ /** * 南科院Hst请求预测 * * @param param * @return * @throws Exception */ @XxlJob("predictNkyHstDataJobHandler") public ReturnT<String> predictNkyHstDataJobHandler(String param){ public ReturnT<String> predictNkyHstDataJobHandler(String param) { XxlJobLogger.log("开始Hst预测..."); hstPredict(); @@ -60,12 +60,13 @@ /** * 南科院Hst请求预测结果 * * @param param * @return * @throws Exception */ @XxlJob("queryNkyHstDataJobHandler") public ReturnT<String> queryNkyHstDataJobHandler(String param){ public ReturnT<String> queryNkyHstDataJobHandler(String param) { XxlJobLogger.log("开始Hst预测结果请求"); hstQuery(); XxlJobLogger.log("Hst预测结果请求结束"); @@ -75,49 +76,52 @@ /** * 南科院Arima请求预测结果(渗压) * * @param param * @return * @throws Exception */ @XxlJob("queryNkyDataJobHandler") public ReturnT<String> queryNkyDataJobHandler(String param){ XxlJobLogger.log("开始预测时间:"+DateUtil.now().toString()); public ReturnT<String> queryNkyDataJobHandler(String param) { XxlJobLogger.log("开始预测时间:" + DateUtil.now().toString()); nkyClient.arimaQueryData(SY); XxlJobLogger.log("预测结束时间:" +DateUtil.now().toString()); XxlJobLogger.log("预测结束时间:" + DateUtil.now().toString()); return ReturnT.SUCCESS; } /** * 南科院Arima请求预测结果(渗流) * * @param param * @return * @throws Exception */ @XxlJob("queryNkyDataSlJobHandler") public ReturnT<String> queryNkyDataSlJobHandler(String param){ XxlJobLogger.log("开始预测时间:"+DateUtil.now().toString()); public ReturnT<String> queryNkyDataSlJobHandler(String param) { XxlJobLogger.log("开始预测时间:" + DateUtil.now().toString()); nkyClient.arimaQueryData(SL); XxlJobLogger.log("预测结束时间:" +DateUtil.now().toString()); XxlJobLogger.log("预测结束时间:" + DateUtil.now().toString()); return ReturnT.SUCCESS; } /** * 南科院Arima请求预测结果(位移) * * @param param * @return * @throws Exception */ @XxlJob("queryNkyDataWyJobHandler") public ReturnT<String> queryNkyDataWyJobHandler(String param){ XxlJobLogger.log("开始预测时间:"+DateUtil.now().toString()); public ReturnT<String> queryNkyDataWyJobHandler(String param) { XxlJobLogger.log("开始预测时间:" + DateUtil.now().toString()); nkyClient.arimaQueryData(X); nkyClient.arimaQueryData(Y); nkyClient.arimaQueryData(Z); XxlJobLogger.log("预测结束时间:" +DateUtil.now().toString()); XxlJobLogger.log("预测结束时间:" + DateUtil.now().toString()); return ReturnT.SUCCESS; } public void arimaPredict(){ public void arimaPredict() { XxlJobLogger.log("渗压预测开始"); nkyClient.arimaPredictData(SY); XxlJobLogger.log("渗流预测开始"); @@ -127,7 +131,7 @@ } public void arimaQuery(){ public void arimaQuery() { nkyClient.arimaQueryData(SY); nkyClient.arimaQueryData(SL); nkyClient.arimaQueryData(X); @@ -138,33 +142,50 @@ /** * hst预测 */ public void hstPredict(){ XxlJobLogger.log("渗压预测开始"); nkyClient.hstPredictData(SY); XxlJobLogger.log("渗流预测开始"); nkyClient.hstPredictData(SL); XxlJobLogger.log("位移预测开始"); nkyClient.hstPredictData(X); public void hstPredict() { try { MyThread sl = new MyThread(nkyClient,SL); MyThread wy = new MyThread(nkyClient,X); MyThread sy = new MyThread(nkyClient,SY); sl.start(); wy.start(); sy.start(); } catch (Exception e) { e.printStackTrace(); } // XxlJobLogger.log("渗流预测开始"); // nkyClient.hstPredictData(SL); // XxlJobLogger.log("位移预测开始"); // nkyClient.hstPredictData(X); // XxlJobLogger.log("渗压预测开始"); // nkyClient.hstPredictData(SY); } public void hstQuery(){ nkyClient.hstQueryData(SY); public void hstQuery() { nkyClient.hstQueryData(SL); nkyClient.hstQueryData(X); nkyClient.hstQueryData(Y); nkyClient.hstQueryData(Z); nkyClient.hstQueryData(SY); } /** * 南科院按库请求数据接口 * * @param param * @return */ @XxlJob("batchDataJobHandler") public ReturnT<String> batchDataJobHandler(String param){ public ReturnT<String> batchDataJobHandler(String param) { XxlJobLogger.log("按库请求开始"); nkyClient.batchData(SY); nkyClient.batchData(SL); nkyClient.batchData(X); nkyClient.batchData(Y); nkyClient.batchData(Z); @@ -176,11 +197,12 @@ /** * 南科院按库请求数据接口 * * @param param * @return */ @XxlJob("alarmGetJobHandler") public ReturnT<String> alarmGetJobHandler(String param){ public ReturnT<String> alarmGetJobHandler(String param) { XxlJobLogger.log("判定异常开始"); nkyClient.alarmGetData(SY); skjcmanager/skjcmanager-service/skjcmanager-xxljob/src/main/java/cn/gistack/job/executor/thread/MyThread.java
New file @@ -0,0 +1,26 @@ package cn.gistack.job.executor.thread; import cn.gistack.nky.fegin.INkyClient; import lombok.Data; @Data public class MyThread extends Thread{ private INkyClient nkyClient; private String type; @Override public void run() { nkyClient.hstPredictData(this.type); } public MyThread(INkyClient nkyClient, String type) { this.nkyClient = nkyClient; this.type = type; } public MyThread(String type) { this.type = type; } }