ws
2023-09-25 89cb4ea9adbf4578cceb379b58f36d0ac2d05095
src/main/java/com/fzzy/push/sh2023/SH2023PushService13.java
@@ -1,5 +1,6 @@
package com.fzzy.push.sh2023;
import com.alibaba.fastjson.JSONObject;
import com.fzzy.api.Constant;
import com.fzzy.api.data.ApiParam;
import com.fzzy.api.data.PushProtocol;
@@ -8,13 +9,13 @@
import com.fzzy.api.service.ApiRemoteService;
import com.fzzy.api.service.PushService11;
import com.fzzy.api.view.repository.*;
import com.fzzy.otherview.sh2023.dto.ShApi1311;
import com.fzzy.otherview.sh2023.repository.ShApi1311Rep;
import com.fzzy.push.impl.ComPushService11;
import com.fzzy.push.sh2023.dto.SH2023Api1311;
import com.fzzy.push.sh2023.dto.SH2023Api2103;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
/**
@@ -50,6 +51,8 @@
    private Api1309Rep api1309Rep;
    @Autowired
    private Api1310Rep api1310Rep;
    @Autowired
    private ApiInfoDataRep apiInfoDataRep;
    @Override
    public String getProtocol() {
@@ -86,7 +89,7 @@
            log.error("-----上海市平台2023版:未获取到安全管理,不推送-----");
            return;
        }
        param.setInteId(SH2023Constant.SH_2023_API_CODE_1301);
        //推送,数据为集合形式
        ResponseDto responseDto = apiRemoteService.pushData(param, list);
        if (responseDto.getSuccess() == 0) {
@@ -114,7 +117,7 @@
            log.error("-----上海市平台2023版:未获取到温湿度检测,不推送-----");
            return;
        }
        param.setInteId(SH2023Constant.SH_2023_API_CODE_1302);
        //推送,数据为集合形式
        ResponseDto responseDto = apiRemoteService.pushData(param, list);
        if (responseDto.getSuccess() == 0) {
@@ -141,7 +144,7 @@
            log.error("-----上海市平台2023版:未获取到害虫检测,不推送-----");
            return;
        }
        param.setInteId(SH2023Constant.SH_2023_API_CODE_1303);
        //推送,数据为集合形式
        ResponseDto responseDto = apiRemoteService.pushData(param, list);
        if (responseDto.getSuccess() == 0) {
@@ -169,7 +172,7 @@
            log.error("-----上海市平台2023版:未获取到气体检测,不推送-----");
            return;
        }
        param.setInteId(SH2023Constant.SH_2023_API_CODE_1304);
        //推送,数据为集合形式
        ResponseDto responseDto = apiRemoteService.pushData(param, list);
        if (responseDto.getSuccess() == 0) {
@@ -197,7 +200,7 @@
            log.error("-----上海市平台2023版:未获取到通风作业,不推送-----");
            return;
        }
        param.setInteId(SH2023Constant.SH_2023_API_CODE_1305);
        //推送,数据为集合形式
        ResponseDto responseDto = apiRemoteService.pushData(param, list);
        if (responseDto.getSuccess() == 0) {
@@ -225,7 +228,7 @@
            log.error("-----上海市平台2023版:未获取到熏蒸作业,不推送-----");
            return;
        }
        param.setInteId(SH2023Constant.SH_2023_API_CODE_1306);
        //推送,数据为集合形式
        ResponseDto responseDto = apiRemoteService.pushData(param, list);
        if (responseDto.getSuccess() == 0) {
@@ -252,7 +255,7 @@
            log.error("-----上海市平台2023版:未获取到仓内视频图像,不推送-----");
            return;
        }
        param.setInteId(SH2023Constant.SH_2023_API_CODE_1307);
        //推送,数据为集合形式
        ResponseDto responseDto = apiRemoteService.pushData(param, list);
        if (responseDto.getSuccess() == 0) {
@@ -296,17 +299,50 @@
            log.error("-----上海市平台2023版:未获取到质检数据,不推送-----");
            return;
        }
        param.setInteId(SH2023Constant.SH_2023_API_CODE_1310);
        //推送,数据为集合形式
        ResponseDto responseDto = apiRemoteService.pushData(param, list);
        if (responseDto.getSuccess() == 0) {
            //推送成功,更新数据上传状态
            for (Api1310 data : list) {
                if (Constant.CZBZ_I.equals(data.getCzbz())) {
                    data.setCzbz(Constant.CZBZ_U);
                    //更新状态
                    api1310Rep.save(data);
                }
            }
        }
    }
    /**
     * 1311 视频监控接口
     */
    public void pushData1311(ApiRemoteService apiRemoteService, ApiParam param) {
        // 获取 视频监控接口数据
        List<ApiInfoData> items = apiInfoDataRep.getDataByInteId(SH2023Constant.SH_2023_API_CODE_1311);
        if (null == items || items.isEmpty()) {
            log.error("-----上海市平台2023版:未获取到视频监控,不推送-----");
            return;
        }
        param.setInteId(SH2023Constant.SH_2023_API_CODE_1311);
        SH2023Api1311 shApi1311;
        List<SH2023Api1311> list = new ArrayList<>();
        for (ApiInfoData infoData : items) {
            shApi1311 = JSONObject.parseObject(infoData.getData(), SH2023Api1311.class);
            shApi1311.setZhgxsj(infoData.getUpdateTime());
            list.add(shApi1311);
        }
        //推送,数据为集合形式
        ResponseDto responseDto = apiRemoteService.pushData(param, list);
        if (responseDto.getSuccess() == 0) {
            //推送成功,更新数据上传状态
            for (ApiInfoData data : items) {
                if (Constant.CZBZ_I.equals(data.getCzbz())) {
                    data.setCzbz(Constant.CZBZ_U);
                    apiInfoDataRep.save(data);
                }
            }
        }
@@ -314,18 +350,37 @@
    }
    /**
     * 1311 视频监控接口
     */
    public void pushData1311(ApiRemoteService apiRemoteService, ApiParam param) {
        // todo
    }
    /**
     * 2103 粮情设备配置
     */
    public void pushData2103(ApiRemoteService apiRemoteService, ApiParam param) {
        //TODO
        // 获取粮情设备配置数据
        List<ApiInfoData> items = apiInfoDataRep.getDataByInteId(SH2023Constant.SH_2023_API_CODE_2103);
        if (null == items || items.isEmpty()) {
            log.error("-----上海市平台2023版:未获取到粮情设备配置,不推送-----");
            return;
        }
        param.setInteId(SH2023Constant.SH_2023_API_CODE_2103);
        SH2023Api2103 shApi2103;
        List<SH2023Api2103> list = new ArrayList<>();
        for (ApiInfoData infoData : items) {
            shApi2103 = JSONObject.parseObject(infoData.getData(), SH2023Api2103.class);
            shApi2103.setZhgxsj(infoData.getUpdateTime());
            list.add(shApi2103);
        }
        //推送,数据为集合形式
        ResponseDto responseDto = apiRemoteService.pushData(param, list);
        if (responseDto.getSuccess() == 0) {
            //推送成功,更新数据上传状态
            for (ApiInfoData data : items) {
                if (Constant.CZBZ_I.equals(data.getCzbz())) {
                    data.setCzbz(Constant.CZBZ_U);
                    apiInfoDataRep.save(data);
                }
            }
        }
    }
}