package com.zteits.park.job; import org.apache.commons.lang3.StringUtils; import com.clouds.common.utils.DateUtil; import com.xxl.job.core.biz.model.ReturnT; import com.xxl.job.core.context.XxlJobHelper; import com.xxl.job.core.handler.annotation.XxlJob; import com.zteits.park.mapper.smapper.TpPEqpSMapper; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; /** * 根据地磁心跳间隔修改地磁状态-正常OR故障 * * Copyright: Copyright (c) 2017 zteits * * @ClassName: EqpHeartBeatJob.java * @Description: * @version: v1.0.0 * @author: zhaowg * @date: 2017年12月11日 上午10:12:45 * Modification History: * Date Author Version Description *---------------------------------------------------------* * 2017年12月11日 zhaowg v1.0.0 创建 */ @Component public class EqpHeartBeatJob{ private static final Logger logger = LoggerFactory.getLogger(EqpHeartBeatJob.class); @Autowired private TpPEqpSMapper tpPEqpSMapper; @XxlJob("eqpHeartBeatJob") public ReturnT execute(String... params) throws Exception { String param = XxlJobHelper.getJobParam(); if (StringUtils.isNotEmpty(param) && params == null) { params = param.split(","); } log("开始更新设备状态"); try{ log("记录故障日志"); String yyyyMM = DateUtil.getDateString(DateUtil.YYYYMM); String tableName = "tp_p_eqp_log"+yyyyMM; tpPEqpSMapper.insertHeartBeatData(tableName); tpPEqpSMapper.insertHeartBeatDataForFault(tableName); }catch(Exception e){ log("记录故障日志异常:"+e.getMessage()); } int upnum = tpPEqpSMapper.updateEqpOnlineStateByHeartBeat(); log("设备离线更新条数为:"+upnum); int faultNum = tpPEqpSMapper.updateEqpOnlineStateForFaultByHeartBeat(); log("设备故障更新条数为:"+faultNum); return ReturnT.SUCCESS; } private void log(String msg){ XxlJobHelper.log(msg); logger.info(msg); } }