Ejemplo n.º 1
0
 public void Add(Query query)
 {
     using(var db = new QueryContext())
     {
         db.Queries.Add(query);
         db.SaveChanges();
     }
 }
Ejemplo n.º 2
0
 public ActionResult Create(Query query)
 {
     if (ModelState.IsValid)
     {
         var createQuery = Mapper.Map<Query, CreateQuery>(query);
         bus.Send(createQuery);
         TempData["Message"] = "Query has been created";
         return RedirectToAction("List");
     }
     return View(query);
 }
Ejemplo n.º 3
0
        public void UpdateQuery(Query query)
        {
            using (var db = new QueryContext())
            {
                var q = db.Queries.Find(query.QueryId);
                q.Name = query.Name;
                q.DatabaseName = query.DatabaseName;
                q.AlertEmailTo = query.AlertEmailTo;
                q.AlertIfAboveThreshold = query.AlertIfAboveThreshold;
                q.CronExpression = query.CronExpression;
                q.QueryText = query.QueryText;
                q.ThresholdMilliseconds = query.ThresholdMilliseconds;

                db.SaveChanges();
            }
        }
Ejemplo n.º 4
0
        public ActionResult Edit(Query query, string editAction)
        {
            if (editAction == "Cancel")
            {
                query = queryContext.Queries.Find(query.QueryId);
                return PartialView("QueryDetails", query);
            }

            if( ModelState.IsValid)
            {
                var updateQuery = Mapper.Map<Query, UpdateQuery>(query);
                bus.Send(updateQuery);
                return PartialView("QueryDetails", query);
            }
            ViewBag.Databases = databases;
            return PartialView(query);
        }
Ejemplo n.º 5
0
        private IEnumerable<QueryResult> GetResults(Query query, int duration, DateTime? fromDate, DateTime? toDate)
        {
            if( duration > 0 )
            {
                toDate = DateTime.Now;
                fromDate = toDate - new TimeSpan(0, 0, duration);
            }
            else if (toDate.HasValue)
            {
                // so that today is included
                toDate = toDate + new TimeSpan(1, 0, 0, 0);
            }

            ViewBag.GraphTitle = query.Name;
            return from r in query.Results
                   where fromDate == null || r.StartDate > fromDate
                   where toDate == null || r.StartDate < toDate
                   select r;
        }
Ejemplo n.º 6
0
 public ActionResult GraphBuilderResult(int[] id, DateTime? fromDate, DateTime? toDate, int duration)
 {
     List<Query> resultList = new List<Query>();
     foreach(var queryId in id)
     {
         var query = queryContext.Queries.Find(queryId);
         IEnumerable<QueryResult> results = GetResults(query, duration, fromDate, toDate);
         var queryCopy = new Query {Name = query.Name, Results = results.ToList() };
         resultList.Add(queryCopy);
     }
     ViewBag.TimeOutDisplayValue = QueryTimeoutMilliseconds;
     return PartialView("MultiQueryGraph", resultList);
 }