/// <summary> /// 进行数据发送 /// </summary> /// <param name="sn">设备序列码</param> /// <returns></returns> public static void Send_discharge_Current(Zhgd_iot_discharge_current zhgd_Iot_discharge_Current) { try { //获取redis中的项目 string key = "equipment:projectid:" + Equipment_type.卸料平台 + ":" + zhgd_Iot_discharge_Current.sn; string value = RedisCacheHelper.Get <string>(key); if (value != null) { zhgd_Iot_discharge_Current.create_time = DPC_Tool.GetTimeStamp(); zhgd_Iot_discharge_Current.project_id = value; zhgd_Iot_discharge_Current.equipment_type = Equipment_type.卸料平台; //这里面应该还有工作运行的判断以及运行序列码得赋值 if (working_state.ContainsKey(zhgd_Iot_discharge_Current.sn)) { zhgd_Iot_discharge_Current.work_cycles_no = working_state[zhgd_Iot_discharge_Current.sn].Get_work_cycles_no(zhgd_Iot_discharge_Current); } else { working_state.Add(zhgd_Iot_discharge_Current.sn, new Zhgd_iot_discharge_working_state(zhgd_Iot_discharge_Current.sn)); zhgd_Iot_discharge_Current.work_cycles_no = working_state[zhgd_Iot_discharge_Current.sn].Get_work_cycles_no(zhgd_Iot_discharge_Current); } //先执行rabbitMQ 进行推送 RabbitMQ.producer("Discharge_forward", JsonConvert.SerializeObject(zhgd_Iot_discharge_Current)); //执行put方法,把实时数据推走 Put_discharge_current(zhgd_Iot_discharge_Current); //更新redis DPC.Discharge_operation.Update_equminet_last_online_time(zhgd_Iot_discharge_Current.sn, zhgd_Iot_discharge_Current.timestamp); } } catch (Exception ex) { ToolAPI.XMLOperation.WriteLogXmlNoTail("卸料Send_discharge_Current异常", ex.Message); } }
/// <summary> /// 进行数据发送 /// </summary> /// <returns></returns> public static void Send_personnel_records(Zhgd_iot_personnel_records zhgd_Iot_Personnel_Records) { try { //获取redis中的项目 string key = "equipment:projectid:" + Equipment_type.人员管理 + ":" + zhgd_Iot_Personnel_Records.project_code; string value = RedisCacheHelper.Get<string>(key); if (value != null) { zhgd_Iot_Personnel_Records.create_time = DPC_Tool.GetTimeStamp(); zhgd_Iot_Personnel_Records.project_id = value; zhgd_Iot_Personnel_Records.equipment_type = Equipment_type.人员管理; //先执行rabbitMQ 进行推送 RabbitMQ.producer("Personnel_forward", JsonConvert.SerializeObject(zhgd_Iot_Personnel_Records)); //执行put方法,把实时数据推走 Put_Send_personnel_records(zhgd_Iot_Personnel_Records); } } catch (Exception ex) { ToolAPI.XMLOperation.WriteLogXmlNoTail("人员管理Send_personnel_records异常", ex.Message); } }
/// <summary> /// 进行数据发送 /// </summary> /// <param name="sn">设备序列码</param> /// <returns></returns> public static void Send_dust_noise_Current(Zhgd_iot_dust_noise_current zhgd_Iot_dust_noise_Current) { try { //获取redis中的项目 string key = "equipment:projectid:" + Equipment_type.扬尘噪音 + ":" + zhgd_Iot_dust_noise_Current.sn; string value = RedisCacheHelper.Get <string>(key); if (value != null) { string[] item = value.Split('&'); zhgd_Iot_dust_noise_Current.create_time = DPC_Tool.GetTimeStamp(); zhgd_Iot_dust_noise_Current.project_id = item[0]; zhgd_Iot_dust_noise_Current.equipment_type = Equipment_type.扬尘噪音; //报警判断 zhgd_Iot_dust_noise_Current.is_warning = "N"; List <string> vs = new List <string>(); if (zhgd_Iot_dust_noise_Current.pm2_5 > double.Parse(item[1])) { vs.Add(Warning_type.PM2_5报警); zhgd_Iot_dust_noise_Current.is_warning = "Y"; } if (zhgd_Iot_dust_noise_Current.pm10 > double.Parse(item[2])) { vs.Add(Warning_type.PM10报警); zhgd_Iot_dust_noise_Current.is_warning = "Y"; } if (zhgd_Iot_dust_noise_Current.noise > double.Parse(item[3])) { vs.Add(Warning_type.噪音告警); zhgd_Iot_dust_noise_Current.is_warning = "Y"; } zhgd_Iot_dust_noise_Current.warning_type = vs.ToArray(); //进行AQI计算 zhgd_Iot_dust_noise_Current.aqi = Get_aqi(zhgd_Iot_dust_noise_Current.pm2_5); //先执行rabbitMQ 进行推送 RabbitMQ.producer("Dust_noise_forward", JsonConvert.SerializeObject(zhgd_Iot_dust_noise_Current)); //执行put方法,把实时数据推走 Put_dust_noise_current(zhgd_Iot_dust_noise_Current); //更新在线时间 Update_equminet_last_online_time(zhgd_Iot_dust_noise_Current.sn, zhgd_Iot_dust_noise_Current.timestamp); } } catch (Exception ex) { ToolAPI.XMLOperation.WriteLogXmlNoTail("扬尘噪音Send_dust_noise_Current异常", ex.Message); } }
public static void Get_equminet_driver(string sn, string driver_code) { string key = "equipment:driver:" + Equipment_type.升降机 + ":" + sn; string value = RedisCacheHelper.Get <string>(key); if (value == null) { Update_driver_attendance_asyn.BeginInvoke(sn, driver_code, DateTime.Now.ToString(), null, null); Update_equminet_driver(sn, driver_code); } else { string[] code_time = value.Split('&'); if (code_time.Length > 1) { if (code_time[0] != driver_code) { Update_driver_attendance_asyn.BeginInvoke(sn, driver_code, DateTime.Now.ToString(), null, null); Update_equminet_driver(sn, driver_code); } else { DateTime dateTime = DateTime.Parse(code_time[1]); if ((DateTime.Now - dateTime).TotalHours > 4) { Update_driver_attendance_asyn.BeginInvoke(sn, driver_code, DateTime.Now.ToString(), null, null); Update_equminet_driver(sn, driver_code); } } } else { Update_driver_attendance_asyn.BeginInvoke(sn, driver_code, DateTime.Now.ToString(), null, null); Update_equminet_driver(sn, driver_code); } } }