private Conditions ParseConditions() { Conditions conditions = new Conditions(); if (SeverityCondition != null) { conditions.Severity = new Condition( operatorProperty: SeverityCondition.Split(':')[0], values: SeverityCondition.Split(':')[1].Split(',')); } if (MonitorServiceCondition != null) { conditions.MonitorService = new Condition( operatorProperty: MonitorServiceCondition.Split(':')[0], values: MonitorServiceCondition.Split(':')[1].Split(',')); } if (MonitorCondition != null) { conditions.MonitorCondition = new Condition( operatorProperty: MonitorCondition.Split(':')[0], values: MonitorCondition.Split(':')[1].Split(',')); } if (TargetResourceTypeCondition != null) { conditions.MonitorCondition = new Condition( operatorProperty: TargetResourceTypeCondition.Split(':')[0], values: TargetResourceTypeCondition.Split(':')[1].Split(',')); } if (DescriptionCondition != null) { conditions.Description = new Condition( operatorProperty: DescriptionCondition.Split(':')[0], values: DescriptionCondition.Split(':')[1].Split(',')); } if (AlertRuleIdCondition != null) { conditions.AlertRuleId = new Condition( operatorProperty: AlertRuleIdCondition.Split(':')[0], values: AlertRuleIdCondition.Split(':')[1].Split(',')); } if (AlertContextCondition != null) { conditions.AlertContext = new Condition( operatorProperty: AlertContextCondition.Split(':')[0], values: AlertContextCondition.Split(':')[1].Split(',')); } return(conditions); }
public async Task <ActionResult> UploadMonitorCondition(string monitordate, string id, HttpPostedFileBase uploadedFile) { try { if (uploadedFile != null && uploadedFile.ContentLength > 0) { Guid MonitorID = new Guid(id); DateTime MonitorDate = Convert.ToDateTime(monitordate); string fileExtenSion = Path.GetExtension(uploadedFile.FileName); string path = System.IO.Path.Combine(Server.MapPath("~/FileUpLoad/"), System.IO.Path.GetFileName(uploadedFile.FileName)); string justName = Path.GetFileNameWithoutExtension(uploadedFile.FileName); uploadedFile.SaveAs(path);//将文件保存到本地 DataTable dt = await ExcelReader.ReadExcel(fileExtenSion, path); if (dt.Rows.Count == 0 || dt == null) { return(Json(new { statusCode = 400, status = "数据数量为空,请重新检查文件。" })); } if (dt.Columns.Count < 2) { return(Json(new { statusCode = 400, status = "数据列数量有误,请重新检查数据是否合格。" })); } int count = 0; List <MonitorCondition> lmc = new List <MonitorCondition>(); foreach (DataRow item in dt.Rows) { MonitorCondition mc = new MonitorCondition(); mc.MonitorID = MonitorID; mc.Contract = justName; mc.MainPosition = Convert.ToInt32(item[0]); mc.MinPosition = Convert.ToInt32(item[1]); mc.MaxPosition = Convert.ToInt32(item[2]); mc.MinPrice = Convert.ToInt32(item[3]); mc.MaxPrice = Convert.ToInt32(item[4]); mc.MonitorDate = MonitorDate; lmc.Add(mc); } count = MonitorConditionRepository.AddRange(lmc); LogRepository.Add(new EventLog() { Name = Session["LoginedUser"].ToString(), Date = DateTime.Now.ToLocalTime(), Event = "上传监控指标数据" + count.ToString() + "条数据。" }); return(Json(new { statusCode = 200, status = "已经上传" + count.ToString() + "条数据。" })); } else { return(Json(new { statusCode = 400, status = "文件传输有误,请重新上传。" })); } } catch (Exception ex) { return(Json(new { statusCode = 400, status = "文件上传发生异常," + ex.Message })); } }