package com.fzzy.push.impl; import com.fzzy.api.Constant; import com.fzzy.api.data.ApiParam; import com.fzzy.api.dto.ResponseDto; import com.fzzy.api.entity.Api1302; import com.fzzy.api.entity.Api1303; import com.fzzy.api.entity.Api1304; import com.fzzy.api.entity.Api1310; import com.fzzy.api.service.ApiRemoteService; import com.fzzy.api.view.repository.Api1302Rep; import com.fzzy.api.view.repository.Api1303Rep; import com.fzzy.api.view.repository.Api1304Rep; import com.fzzy.api.view.repository.Api1310Rep; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** * @Desc: 通用实现类,针对国标为粮食管理相关接口的数据推送实现接口,系统根据协议自动调用不同实现类 * @author: andy.jia * @update-time: 2022/10/28 2:02 */ @Slf4j @Service public class ComPushService13 { @Autowired private Api1302Rep apiRep1302; @Autowired private Api1303Rep apiRep1303; @Autowired private Api1304Rep apiRep1304; @Autowired private Api1310Rep apiRep1310; public void pushData1302(ApiRemoteService apiRemoteService, ApiParam param) { //获取需要推送的数据 List items = apiRep1302.findPushData(param.getKqdm()); if (null == items || items.isEmpty()) { log.info("-------------没有粮情数据需要推送-----------"); return; } param.setInteCategory(Constant.API_CATEGORY_13); param.setInteId(Constant.API_CODE_1302); ResponseDto responseDto; for (Api1302 data : items) { param.setBizId(data.getBizId()); responseDto = apiRemoteService.pushData(param, data); if (responseDto.getSuccess() == 0) { if (Constant.CZBZ_I.equals(data.getCzbz())) { apiRep1302.updateStatus(data.getWsdjcdh(), Constant.CZBZ_U); } } } } public void pushData1304(ApiRemoteService apiRemoteService, ApiParam param) { //获取需要推送的数据 List items = apiRep1304.findPushData(param.getKqdm()); if (null == items || items.isEmpty()) { log.info("-------------没有气体检测数据表需要推送-----------"); return; } param.setInteCategory(Constant.API_CATEGORY_13); param.setInteId(Constant.API_CODE_1302); ResponseDto responseDto; for (Api1304 data : items) { param.setBizId(data.getBizId()); responseDto = apiRemoteService.pushData(param, data); if (responseDto.getSuccess() == 0) { if (Constant.CZBZ_I.equals(data.getCzbz())) { apiRep1304.updateStatus(data.getQtndjcdh(), Constant.CZBZ_U); } } } } public void pushData1303(ApiRemoteService apiRemoteService, ApiParam param) { //获取需要推送的数据 List items = apiRep1303.findPushData(param.getKqdm()); if (null == items || items.isEmpty()) { log.info("-------------没有虫害检测数据表表需要推送-----------"); return; } param.setInteCategory(Constant.API_CATEGORY_13); param.setInteId(Constant.API_CODE_1302); ResponseDto responseDto; for (Api1303 data : items) { param.setBizId(data.getBizId()); responseDto = apiRemoteService.pushData(param, data); if (responseDto.getSuccess() == 0) { if (Constant.CZBZ_I.equals(data.getCzbz())) { apiRep1303.updateStatus(data.getHcjcdh(), Constant.CZBZ_U); } } } } public void pushData1310(ApiRemoteService apiRemoteService, ApiParam param) { //获取需要推送的数据 List items = apiRep1310.findPushData(param.getKqdm()); if (null == items || items.isEmpty()) { log.info("-------------没有质检数据需要推送-----------"); return; } param.setInteCategory(Constant.API_CATEGORY_13); param.setInteId(Constant.API_CODE_1302); ResponseDto responseDto; for (Api1310 data : items) { param.setBizId(data.getBizId()); responseDto = apiRemoteService.pushData(param, data); if (responseDto.getSuccess() == 0) { if (Constant.CZBZ_I.equals(data.getCzbz())) { apiRep1310.updateStatus(data.getZjbgdh(), Constant.CZBZ_U); } } } } }