public string TemperatureRecord(JObject obj) { MachineDAL machineDAL = new MachineDAL(); MachineModel machine = machineDAL.QuerySingle(" MachineCode='" + obj["mc"].ToString() + "'"); if (machine != null && machine.ID > 0) { TemperatureRecordModel model = new TemperatureRecordModel(); model.MachineName = machine.MachineName; model.AddTime = DateTime.Now; model.MachineCode = obj["mc"].TryParseString(); model.Temperature = obj["tt"].TryParseDecimal(8); model.Longitude = obj["lon"].TryParseDecimal(10); model.Latitude = obj["lat"].TryParseDecimal(10); model.RemainingPower = obj["rp"].TryParseDecimal(2); model.WorkingMode = obj["wm"].TryParseString(); model.SignalStrength = obj["ss"].TryParseString(); model.IP = obj["ip"].TryParseString(); model.Port = obj["port"].TryParseInt(); model.WorkingFrequency = obj["wf"].TryParseString(); TemperatureRecordDAL dal = new TemperatureRecordDAL(); dal.InsertSQL(model); SystemConfigDAL conDAL = new SystemConfigDAL(); SystemConfigModel conMinModel = conDAL.QuerySingle(" ConfigKey='TemperatureMinValue'"); SystemConfigModel conMaxModel = conDAL.QuerySingle(" ConfigKey='TemperatureMaxValue'"); if ((conMinModel != null && model.Temperature < conMinModel.ConfigValue.TryParseDecimal()) || (conMaxModel != null && model.Temperature > conMaxModel.ConfigValue.TryParseDecimal())) { SystemConfigModel conMobile = conDAL.QuerySingle(" ConfigKey='TemperatureMobile'"); SystemConfigModel conContent = conDAL.QuerySingle(" ConfigKey='SMSTemperatureTemplate'"); if (conMobile != null && !conMobile.ConfigValue.IsNullOrEmpty() && conContent != null && !conContent.ConfigValue.IsNullOrEmpty()) { foreach (string mobile in conMobile.ConfigValue.Split(',')) { string content = string.Format(conContent.ConfigValue, model.MachineCode, model.Temperature); StringBuilder sbTemp = new StringBuilder(); string url = "http://api.sms.cn/mtutf8/"; string data = "uid=" + ConfigurationManager.AppSettings["SMSUserName"] + "&pwd=" + ConfigurationManager.AppSettings["SMSPassword"] + "&mobile=" + mobile + "&content=" + Server.UrlEncode(content); sbTemp.Append(data); byte[] bTemp = System.Text.Encoding.GetEncoding("GBK").GetBytes(sbTemp.ToString()); string res = doPostRequest(url, bTemp); Log.Default.Debug("温度短信报警:" + res); } } } return true.ToResult().ToJsonString(); } return false.ToResult("后台无此机器码").ToJsonString(); }
public ActionResult Index() { SystemConfigDAL dal = new SystemConfigDAL(); ViewBag.TemperatureValue = ""; ViewBag.TemperatureMobile = ""; ViewBag.SMSTemperatureTemplate = ""; try { SystemConfigModel TemperatureMaxValue = dal.QuerySingle(" ConfigKey='TemperatureMaxValue'"); if (TemperatureMaxValue != null) { ViewBag.TemperatureMaxValue = TemperatureMaxValue.ConfigValue; } SystemConfigModel TemperatureMinValue = dal.QuerySingle(" ConfigKey='TemperatureMinValue'"); if (TemperatureMinValue != null) { ViewBag.TemperatureMinValue = TemperatureMinValue.ConfigValue; } SystemConfigModel TemperatureMobile = dal.QuerySingle(" ConfigKey='TemperatureMobile'"); if (TemperatureMobile != null) { ViewBag.TemperatureMobile = TemperatureMobile.ConfigValue; } SystemConfigModel SMSTemperatureTemplate = dal.QuerySingle(" ConfigKey='SMSTemperatureTemplate'"); if (SMSTemperatureTemplate != null) { ViewBag.SMSTemperatureTemplate = SMSTemperatureTemplate.ConfigValue; } } catch (Exception ex) { Log.Default.Error(ex); } return View(); }
public ActionResult saveconfig() { try { SystemConfigDAL dal = new SystemConfigDAL(); SystemConfigModel TemperatureMinValue = dal.QuerySingle(" ConfigKey='TemperatureMinValue'"); if (TemperatureMinValue == null) { TemperatureMinValue = new SystemConfigModel(); TemperatureMinValue.ConfigKey = "TemperatureMinValue"; TemperatureMinValue.AddTime = DateTime.Now; } TemperatureMinValue.ConfigValue = DataTypeHelper.StringFiltrate(Request["TemperatureMinValue"]); if (TemperatureMinValue.ID > 0) dal.UpdateSQL(TemperatureMinValue); else dal.InsertSQL(TemperatureMinValue); SystemConfigModel TemperatureMaxValue = dal.QuerySingle(" ConfigKey='TemperatureMaxValue'"); if (TemperatureMaxValue == null) { TemperatureMaxValue = new SystemConfigModel(); TemperatureMaxValue.ConfigKey = "TemperatureValue"; TemperatureMaxValue.AddTime = DateTime.Now; } TemperatureMaxValue.ConfigValue = DataTypeHelper.StringFiltrate(Request["TemperatureMaxValue"]); if (TemperatureMaxValue.ID > 0) dal.UpdateSQL(TemperatureMaxValue); else dal.InsertSQL(TemperatureMaxValue); SystemConfigModel TemperatureMobile = dal.QuerySingle(" ConfigKey='TemperatureMobile'"); if (TemperatureMobile == null) { TemperatureMobile = new SystemConfigModel(); TemperatureMobile.ConfigKey = "TemperatureMobile"; TemperatureMobile.AddTime = DateTime.Now; } TemperatureMobile.ConfigValue = DataTypeHelper.StringFiltrate(Request["TemperatureMobile"]); if (TemperatureMobile.ID > 0) dal.UpdateSQL(TemperatureMobile); else dal.InsertSQL(TemperatureMobile); SystemConfigModel SMSTemperatureTemplate = dal.QuerySingle(" ConfigKey='SMSTemperatureTemplate'"); if (SMSTemperatureTemplate == null) { SMSTemperatureTemplate = new SystemConfigModel(); SMSTemperatureTemplate.ConfigKey = "SMSTemperatureTemplate"; SMSTemperatureTemplate.AddTime = DateTime.Now; } SMSTemperatureTemplate.ConfigValue = DataTypeHelper.StringFiltrate(Request["SMSTemperatureTemplate"]).Trim(); if (SMSTemperatureTemplate.ID > 0) dal.UpdateSQL(SMSTemperatureTemplate); else dal.InsertSQL(SMSTemperatureTemplate); } catch (Exception ex) { Log.Default.Error(ex); Response.Redirect("/comm/index?callback=/sys/index&msg=提交失败,请稍后重试"); } Response.Redirect("/comm/index?callback=/sys/index&msg=提交成功"); return Content(true.ToResult().ToJsonString()); }