|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.alibaba.fastjson.JSON; | 
|---|
|  |  |  | import com.alibaba.fastjson.JSONObject; | 
|---|
|  |  |  | import com.baomidou.mybatisplus.mapper.EntityWrapper; | 
|---|
|  |  |  | import com.core.common.Cools; | 
|---|
|  |  |  | import com.core.common.SpringUtils; | 
|---|
|  |  |  | import com.core.exception.CoolException; | 
|---|
|  |  |  | import com.zy.asrs.entity.ApiLog; | 
|---|
|  |  |  | import com.zy.asrs.service.ApiLogService; | 
|---|
|  |  |  | import com.zy.asrs.utils.core.AbstractHandler; | 
|---|
|  |  |  | import com.zy.asrs.utils.core.ReturnT; | 
|---|
|  |  |  | import com.zy.common.utils.HttpHandler; | 
|---|
|  |  |  | import com.zy.core.model.protocol.StaProtocol; | 
|---|
|  |  |  | import lombok.extern.slf4j.Slf4j; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import java.util.Date; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Slf4j | 
|---|
|  |  |  | 
|---|
|  |  |  | success = true; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | log.error("请求接口失败!!!url:{};request:{};response:{}", URL+"/"+mesPath, JSON.toJSONString(combParam), response); | 
|---|
|  |  |  | throw new CoolException("上报"+name); | 
|---|
|  |  |  | throw new CoolException(name); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("请求接口失败!!!url:{};request:{};response:{}", URL+"/"+mesPath, JSON.toJSONString(combParam), response); | 
|---|
|  |  |  | 
|---|
|  |  |  | return FAIL.setMsg(e.getMessage()); | 
|---|
|  |  |  | } finally { | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | // 保存接口日志 | 
|---|
|  |  |  | ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class); | 
|---|
|  |  |  | apiLogService.save( | 
|---|
|  |  |  | "上报"+name, | 
|---|
|  |  |  | URL +"/"+ mesPath, | 
|---|
|  |  |  | null, | 
|---|
|  |  |  | "127.0.0.1", | 
|---|
|  |  |  | JSON.toJSONString(combParam), | 
|---|
|  |  |  | response, | 
|---|
|  |  |  | success | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | if (success){ | 
|---|
|  |  |  | // 保存接口日志 | 
|---|
|  |  |  | ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class); | 
|---|
|  |  |  | apiLogService.save( | 
|---|
|  |  |  | name, | 
|---|
|  |  |  | URL +"/"+ mesPath, | 
|---|
|  |  |  | null, | 
|---|
|  |  |  | "127.0.0.1", | 
|---|
|  |  |  | JSON.toJSONString(combParam), | 
|---|
|  |  |  | response, | 
|---|
|  |  |  | success | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | postMesDataCallApiLogSave(response,success,name, URL, mesPath, combParam); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("", e); } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | success = true; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | log.error("请求接口失败!!!url:{};request:{};response:{}", URL+"/"+mesPath, JSON.toJSONString(combParam), response); | 
|---|
|  |  |  | throw new CoolException("上报"+name); | 
|---|
|  |  |  | throw new CoolException(name); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } catch (Exception e) { | 
|---|
|  |  |  | log.error("请求接口失败!!!url:{};request:{};response:{}", URL+"/"+mesPath, JSON.toJSONString(combParam), response); | 
|---|
|  |  |  | 
|---|
|  |  |  | // 保存接口日志 | 
|---|
|  |  |  | ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class); | 
|---|
|  |  |  | apiLogService.save( | 
|---|
|  |  |  | "上报"+name, | 
|---|
|  |  |  | name, | 
|---|
|  |  |  | URL +"/"+ mesPath, | 
|---|
|  |  |  | null, | 
|---|
|  |  |  | "127.0.0.1", | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return SUCCESS; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public void postMesDataCallApiLogSave(String response,boolean success,String name, String URL, String mesPath, Object combParam) { | 
|---|
|  |  |  | ApiLogService apiLogService = SpringUtils.getBean(ApiLogService.class); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | ApiLog apiLog = apiLogService.selectOne(new EntityWrapper<ApiLog>() | 
|---|
|  |  |  | .eq("namespace", name) | 
|---|
|  |  |  | .eq("response", response) | 
|---|
|  |  |  | .eq("url", URL +"/"+ mesPath) | 
|---|
|  |  |  | .eq("result", success? 1:0) | 
|---|
|  |  |  | .orderBy("create_time", false) | 
|---|
|  |  |  | ); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (!Cools.isEmpty(apiLog)){ | 
|---|
|  |  |  | long parseLong = Long.parseLong(apiLog.getTimestamp()); | 
|---|
|  |  |  | if (new Date().getTime()-parseLong<5*1000*60){ | 
|---|
|  |  |  | return; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | // 保存接口日志 | 
|---|
|  |  |  | apiLogService.save( | 
|---|
|  |  |  | name, | 
|---|
|  |  |  | URL +"/"+ mesPath, | 
|---|
|  |  |  | null, | 
|---|
|  |  |  | "127.0.0.1", | 
|---|
|  |  |  | JSON.toJSONString(combParam), | 
|---|
|  |  |  | response, | 
|---|
|  |  |  | success | 
|---|
|  |  |  | ); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|