public void Badger_LogQueryNumGroupForks() { LogQueryViewModel query1; query1 = new LogQueryViewModel(); List <string> variableList = new List <string>() { "E_p", "v", "omega_r", "omega_g" }; //init query1 query1.AddLogVariables(variableList); query1.VariablesVM[0].IsSelected = true; query1.VariablesVM[2].IsSelected = true; query1.LimitTracks = true; query1.MaxNumTracks = 3; Assert.AreEqual(query1.GroupByForks.Count, 0); query1.AddGroupByFork("fork-1"); query1.InGroupSelectionVariable = "omega_g"; query1.InGroupSelectionFunction = LogQueryViewModel.FunctionMax; query1.OrderByFunction = LogQueryViewModel.FunctionDscBeauty; query1.OrderByVariable = "E_p"; query1.OrderByReportType = ReportType.AllTrainingEpisodes.ToString(); Assert.AreEqual(query1.GroupByForks.Count, 1); query1.GroupByExperiment = true; Assert.AreEqual(query1.GroupByForks.Count, 2); }
public JsonResult LogManage(LogQueryViewModel model) { //ReportFactory.Instance.log.WriteLog(Common.OperationType.Query, "查询日志信息"); var result = ReportFactory.Instance.log.GetList(model); return(Json(result, JsonRequestBehavior.DenyGet)); }
public void Badger_LogQueryClone() { LogQueryViewModel query1; query1 = new LogQueryViewModel(); List <string> variableList = new List <string>() { "E_p", "v", "omega_r", "omega_g" }; //init query1 before copying it query1.AddLogVariables(variableList); query1.VariablesVM[0].IsSelected = true; query1.VariablesVM[2].IsSelected = true; query1.LimitTracks = true; query1.MaxNumTracks = 3; query1.AddGroupByFork("fork-1"); query1.InGroupSelectionVariable = "omega_g"; query1.InGroupSelectionFunction = LogQueryViewModel.FunctionMax; query1.OrderByFunction = LogQueryViewModel.FunctionDscBeauty; query1.OrderByVariable = "E_p"; query1.OrderByReportType = ReportType.AllTrainingEpisodes.ToString(); query1.Validate(); Assert.IsTrue(query1.CanGenerateReports); //The deep copy itself Serialiazer.WriteObject("serialization.txt", query1); LogQueryViewModel query2 = Serialiazer.Clone(query1); //check query2 is a deep copy of query1 variableList.Remove("omega_g"); //check the list is a deep copy of the original foreach (string variable in variableList) { Assert.IsTrue(query2.LogVariableExists(variable)); } Assert.IsTrue(query2.LogVariableExists("omega_g")); Assert.IsTrue(query2.LimitTracks); Assert.IsTrue(query2.MaxNumTracks == 3); Assert.IsTrue(query2.IsForkUsedToGroup("fork-1")); Assert.AreEqual(query1.InGroupSelectionVariable, query2.InGroupSelectionVariable); Assert.AreEqual(query1.InGroupSelectionFunction, query2.InGroupSelectionFunction); Assert.AreEqual(query2.OrderByFunction, LogQueryViewModel.FunctionDscBeauty); Assert.AreEqual(query1.OrderByReportType, query2.OrderByReportType); Assert.IsTrue(query2.CanGenerateReports); Assert.AreNotEqual(query1.QueryId, query2.QueryId); }
public async Task <IActionResult> Logs([FromBody] LogQueryViewModel vm) { if (vm != null) { var offset = (vm.PageIndex - 1) * vm.PageSize; var result = await _logReader.GetLogsAsync(vm.Levels, vm.Start, vm.End, offset, vm.PageSize); return(Ok(result)); } return(BadRequest()); }
public async Task <PagedList <Log> > ObterTodos(LogQueryViewModel logQueryViewModel) { var query = new ObterTodosOsLogsQuery( logQueryViewModel.PageNumber, logQueryViewModel.PageSize, logQueryViewModel.AmbienteId, logQueryViewModel.Origem, logQueryViewModel.Descricao, logQueryViewModel.Arquivado ); return(await _mediator.Send(query)); }
/// <summary> /// 获取日志信息 /// </summary> /// <param name="model">查询条件,日志信息实体,logDate存起始时间</param> /// <param name="endTime">截止时间</param> /// <returns></returns> public LogPageViewModel GetList(LogQueryViewModel model) { var pLogList = db.OT_Log.Where(a => true); //按操作用户查询 if (!string.IsNullOrEmpty(model.UserName)) { pLogList = pLogList.Where(a => a.UserName.Contains(model.UserName)); } //按操作类型查询,如果类型为所有则不增加改条件 if (!string.IsNullOrEmpty(model.Type) && model.Type != Common.OperationType.All) { pLogList = pLogList.Where(a => a.Type == model.Type); } //按报表名称查询 if (!string.IsNullOrEmpty(model.RptName)) { pLogList = pLogList.Where(a => a.RptName.Contains(model.RptName)); } //某时间段之间的所有日志 if (model.EndDate != DateTime.Parse("0001/1/1 0:00:00") && model.StartDate != DateTime.Parse("0001/1/1 0:00:00") && model.EndDate != null && model.StartDate != null && model.StartDate <= model.EndDate) { DateTime dt = model.EndDate.AddSeconds(1); pLogList = pLogList.Where(a => a.LogDate >= model.StartDate & a.LogDate <= dt); } //大于某时间的所日志 else if (model.StartDate != null && model.StartDate != DateTime.Parse("0001/1/1 0:00:00")) { pLogList = pLogList.Where(a => a.LogDate >= model.StartDate); } //小于某时间的所日志 else if (model.EndDate != null && model.EndDate != DateTime.Parse("0001/1/1 0:00:00")) { DateTime dt = model.EndDate.AddSeconds(1); pLogList = pLogList.Where(a => a.LogDate <= dt); } int pageCount, count;//总页数,总行数 //获取数据总条数 count = pLogList.Count(); //获取总页数 pageCount = count % model.PageSize > 0 ? count / model.PageSize + 1 : count / model.PageSize; //如果页数大于总页数,或者小于1,则返回第一页 if (model.PageIndex > pageCount || model.PageIndex < 1) { model.PageIndex = 1; } List <LogManageViewModel> list; //获取日志信息 if (model.PageIndex == 1) { list = pLogList.OrderByDescending(a => a.LogDate).Take(model.PageSize).Select(a => new LogManageViewModel { RoleName = a.RoleName, LogDate = a.LogDate, Type = a.Type, Describe = a.Describe, RptName = a.RptName, UserName = a.UserName }).ToList(); } else { int excludedRows = (model.PageIndex - 1) * model.PageSize;//计算起始索引 list = pLogList.OrderByDescending(a => a.LogDate).Skip(excludedRows).Take(model.PageSize).Select(a => new LogManageViewModel { RoleName = a.RoleName, LogDate = a.LogDate, Type = a.Type, Describe = a.Describe, RptName = a.RptName, UserName = a.UserName }).ToList(); } //构建分页日志信息并返回 LogPageViewModel lpModel = new LogPageViewModel(); lpModel.Count = count; lpModel.PageCount = pageCount; lpModel.PageIndex = model.PageIndex; lpModel.LogList = list; return(lpModel); }