package com.hxjt.dataupload.jobhandler.doubleprevent; import com.alibaba.fastjson.JSONObject; import com.hxjt.dataupload.model.entity.doubleprevent.Fxgkcs; import com.hxjt.dataupload.model.entity.doubleprevent.Fxsj; import com.hxjt.dataupload.service.FxfxdxService; import com.hxjt.dataupload.utils.HttpUtils; import com.xxl.job.core.context.XxlJobHelper; import com.xxl.job.core.handler.annotation.XxlJob; import org.apache.http.protocol.HTTP; import org.apache.ibatis.annotations.Param; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.io.IOException; import java.util.ArrayList; @Component public class FxgkcsJobHandler { private Logger log = LoggerFactory.getLogger(FxgkcsJobHandler.class); @Autowired FxfxdxService fxfxdxService; @XxlJob(value = "FxgkcsJobHandler", init = "init", destroy = "destroy") public void execute(String param) { String jobParam = XxlJobHelper.getJobParam(); ArrayList fxgkcs = new ArrayList<>(); if (jobParam.equals("全量")) { fxgkcs = fxfxdxService.getFxgkcss("N"); }else if(jobParam.equals("每日")){ fxgkcs = fxfxdxService.getFxgkcss("Y"); } int success = 0; int fail = 0; for (int i = 0; i < fxgkcs.size(); i++) { System.out.println(i + 1); String company = fxgkcs.get(i).getQiyemingcheng(); String url = "https://www.ny-fxfk.com/space-ningyanghuagongchany/sapi/qpaas/tiga/dys/keyAuthentication/fengxianguankongqing/v1/fengxianguankongqing"; switch (company) { case "山东恒信高科能源有限公司": case "恒信中碳氢能源科技(山东)有限公司": JSONObject jsonObject = (JSONObject) JSONObject.toJSON(fxgkcs.get(i)); String post = null; try { post = HttpUtils.sendDataUpload(url, jsonObject, HTTP.UTF_8, "7CTkAyBoL26Jo7ZMNVmg0EA57A0791FD71AB"); success++; //System.out.println("post:"+post.toString()); //XxlJobHelper.log("执行日志:" + company + post.toString()); } catch (IOException e) { fail++; e.printStackTrace(); XxlJobHelper.handleFail("任务执行失败" + e.getMessage()); } break; } } if(fxgkcs.size()>0){ XxlJobHelper.log("执行日志:本次有"+fxgkcs.size()+"条需要上传,成功上传"+success+"条,失败"+fail+"条"); }else{ XxlJobHelper.log("执行日志:本次无新数据需上传"); } } private void init() { log.info("init 方法调用成功"); } private void destroy() { log.info("destroy 方法调用成功"); } }