private static void SendHd(int ledger, long log_id, AlarmType alarmType, HdType hdType, string content, int module_id) { SysPro pro; NCSys.Pro.TryGetValue(ledger, out pro); if (pro == null) { return; } DataProcessBLL bll = new DataProcessBLL(ledger, Config.Uid); v2_alarm_logHandVModel hand = bll.GetAlarmHand(log_id, hdType.ToString()); hand.Content = content; if (hand.ErrCode == 1) { int sendSpan = CommFunc.ConvertDBNullToInt32(IniHepler.GetConfig(Config.lpFileName, "Alarm", "SendSpan")); if (hand.HdTime.AddMinutes(sendSpan) > DateTime.Now) { return; } else { hand.Aid = 0;/*新增一条记录*/ } } DataTable dtSource = bll.GetSendInfo(module_id); List <string> mpReceipts = new List <string>(); List <string> emReceipts = new List <string>(); string coName = "", moduleName = ""; foreach (DataRow drCrm in dtSource.Rows) { if (!string.IsNullOrEmpty(CommFunc.ConvertDBNullToString(drCrm["MPhone"]))) { mpReceipts.Add(CommFunc.ConvertDBNullToString(drCrm["MPhone"])); } if (!string.IsNullOrEmpty(CommFunc.ConvertDBNullToString(drCrm["Email"]))) { emReceipts.Add(CommFunc.ConvertDBNullToString(drCrm["Email"])); } coName = CommFunc.ConvertDBNullToString(drCrm["CoName"]); moduleName = CommFunc.ConvertDBNullToString(drCrm["ModuleName"]); } bool sue = false; string msg = ""; try { if (hdType == HdType.AL_Sms) { if (mpReceipts.Count > 0) { if (alarmType == AlarmType.Al_Use) {/*感知万物演示用*/ string ccc = JsonHelper.Serialize(new { moduleName = moduleName }); if (!string.IsNullOrEmpty(pro.Sms.ComSmsConfig.ComSms)) { sue = pro.Sms.SendMessage(mpReceipts, ccc, out msg); } else if (!string.IsNullOrEmpty(SmsFun.AliSmsConfig.AliAppKey)) { sue = pro.Sms.SmsMessage(mpReceipts, ccc, out msg, "SMS_137657141"); } else { msg = "没有发现短信接口"; } } else { msg = "感知演示,暂不开放"; } } else { msg = "无手机号码"; } } else if (hdType == HdType.AL_Email) { if (mpReceipts.Count > 0) { StringBuilder mailcont1 = new StringBuilder(); mailcont1.Append("你好:" + coName); mailcont1.Append("<br>"); mailcont1.Append("告警内容:" + hand.Content); mailcont1.Append("<br>"); mailcont1.Append("告警时间:" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss", System.Globalization.DateTimeFormatInfo.InvariantInfo)); pro.Email.SendMail("告警通知", mailcont1.ToString(), "", emReceipts, null, null); sue = true; } else { msg = "无邮箱地址"; } } hand.ErrCode = sue == true ? 1 : -1; } catch (Exception ex) { hand.ErrCode = -1; msg = ex.Message; } hand.ErrTxt = msg; bll.UpAlarmHand(hand); }