public async Task <ActionResult> UserReport(string Id) { UserReportViewModel view = new UserReportViewModel(); var User = await UserManager.Users.SingleOrDefaultAsync(u => u.Id == Id); if (User != null) { var res = this.service.LogsForUser(Id); var PurchaseRes = this.PurchaseService.GetByCustomerId(Id); if (res.Success && PurchaseRes.Success) { view.User = User; view.UserMusicLogs = res.UserMusicLogs; view.UserWatchArtistLogs = res.UserWatchArtistLogs; view.UserWatchTagsLogs = res.UserWatchTagsLogs; view.Purchases = PurchaseRes.Entities.Where(p => p.PurchaseStatus != PurchaseStatus.NotPaidBycustomer); } else { ModelState.AddModelError("", "שגיאה במהלך שליפת הנתונים"); } } else { ModelState.AddModelError("", "משתמש לא נמצא"); } return(View(view)); }
public ActionResult GetTopRecentQuestions() { HtmlToText convert = new HtmlToText(); UserReportViewModel mainModel = new UserReportViewModel(); var questList = new List <TopTenQuestionForLatestReportViewModel>(); var topTenQuestion = _applicationDbContext.Questions .OrderByDescending(dt => dt.DateAsked) .Take(10); foreach (var top in topTenQuestion) { TopTenQuestionForLatestReportViewModel questModel = new TopTenQuestionForLatestReportViewModel(); questModel.QuestionId = top.QuestionId; questModel.QuestionTitle = top.Title; questModel.QuestionText = top.QuestionText; var QuestOwner = UserManager.FindByIdAsync(top.UserId); string QuestionOwner = QuestOwner.Result.NameExtension; questModel.QuestionOwner = QuestionOwner; questModel.DateAsked = top.DateAsked.ToString("d,MMMM yy"); questModel.TimeAsked = top.DateAsked.ToString("H:mm tt"); questList.Add(questModel); } mainModel.TopTenQuestionForLatestReportViewModels = questList; return(PartialView("_RecentQuestions", mainModel)); }
public IActionResult UsersReport(string userId) { if (User.Identity.Name == null) { return(RedirectToAction("Index", "NotFound")); } else { UserReportViewModel viewModel = new UserReportViewModel(); viewModel.Orders = new List <Order>(); viewModel.User = new User(); if (string.IsNullOrEmpty(userId)) { viewModel.Orders.AddRange(ordersService.GetOrders()); viewModel.User = new User(); return(View(viewModel)); } else { viewModel.Orders.AddRange(ordersService.GetOrders().Where(o => o.UserId == userId)); if (viewModel.Orders.Count() > 0) { viewModel.User = viewModel.Orders?.FirstOrDefault().User; } else { viewModel.User = new User(); } return(View(viewModel)); } } }
public UserReportViewModel GetReport() { try { UserDAL userDAL = new UserDAL(); var totalUsers = userDAL.GetTotalUsers(); var inactiveUsers = userDAL.GetInactiveUsers(); var urvm = Mapper.Map <UserBE, UserViewModel>(userDAL.GetUserReport()); UserReportViewModel userReportViewModel = new UserReportViewModel() { Users = urvm.ToList(), InactiveUsers = inactiveUsers, TotalUsers = totalUsers }; return(userReportViewModel); } catch (Exception ex) { throw new Exception(Messages.Generic_Error); } }
public async Task <IActionResult> ManageReports() { var user = await _userManager.FindByNameAsync(User.Identity.Name); var reports = _reportData.GetByAuthorId(user.Id); var reportViewModels = new List <ReportViewModel>(); foreach (var report in reports) { reportViewModels.Add(new ReportViewModel { Id = report.Id, ProjectName = report.Project.Title, Date = report.Date.ToHijri(), Title = report.Title, IsViewed = report.ProjectManagers.Any(pm => pm.IsViewd == true) }); } var userReportViewModel = new UserReportViewModel { Reports = reportViewModels, Messages = SystemOperations.GetMessageViewModels(_messageService, user.Id) }; return(View(userReportViewModel)); }
public ActionResult Users() { var vm = new UserReportViewModel(); vm.Users = AdminManagerFactory.GetManager().GetUserReport(); return(View(vm)); }
public async Task <IActionResult> ListReports() { var reports = await _context.Reports.Include(r => r.User).Include(r => r.Plant).ToListAsync(); UserReportViewModel model = new UserReportViewModel(); model.Report = reports; return(View(reports)); }
public ActionResult Users() { { var repo = UsersRepositoryFactory.GetRepository(); var model = new UserReportViewModel(); model.UsersReportList = repo.GetAllUsers().ToList(); return(View(model)); } }
[InlineData(-1, "bad person", "eom", false)] // Unsuccessful PostUserReport (User does not exist) public void TestPostUserReport(int userId, string reason, string desc, bool expectingSuccess) { var controllerContextMock = new Mock <ControllerContext>() { CallBase = true }; var contextMock = new Mock <ApplicationDbContext>() { CallBase = true }; contextMock.Setup(c => c.SaveChanges()).Returns(1); var controller = new ReportsController { ControllerContext = controllerContextMock.Object, Context = contextMock.Object }; var viewModel = new UserReportViewModel() { Description = desc, Reason = reason, ReportedUserId = userId, TargetUsername = "******" }; var result = controller.PostUserReport(viewModel); if (expectingSuccess) { Assert.True(result is RedirectToRouteResult); } else { var valContext = new ValidationContext(viewModel, null, null); var valResults = new List <ValidationResult>(); if (Validator.TryValidateObject(viewModel, valContext, valResults, true)) { Assert.True(result is ViewResult); } else { // This means that the passed model was not valid, meaning the system will not successfully save. // However, ModelState object of the controller does not work properly in unit test cases. // So, we deem this test a success, as if it had failed. Assert.True(true); } } }
public ActionResult Index(int?page) { UserReportViewModel viewModel = new UserReportViewModel(); IQueryable <Report> reports = _applicationDbContext.Reports .Include(t => t.Topic).Include(c => c.Category).Include(r => r.ReportImages) .Include(reb => reb.Rebuttals).Include(th => th.Threads).Include(rcu => rcu.RipoffCaseUpdates) .Include(upd => upd.ReportUpdates).Include(v => v.ReportVideos) .OrderByDescending(d => d.DateCreated); var reportList = new List <ReportsWithOwner>(); var questList = new List <TopTenQuestionForLatestReportViewModel>(); foreach (var m in reports) { var models = new ReportsWithOwner(); HtmlToText convert = new HtmlToText(); models.RandomId = Guid.NewGuid().ToString(); string PageTitle = m.CompanyorIndividual + " : " + convert.Convert(m.ReportText).Substring(0, 50); string sm_PageTitle = Regex.Replace(PageTitle, "[^A-Za-z0-9]", "-"); models.PageTitle = sm_PageTitle; models.ReportId = m.ReportId; models.CompanyorIndividual = m.CompanyorIndividual; //string reportText = convert.Convert(m.ReportText); models.ReportText = convert.Convert(m.ReportText); models.DateCreated = m.DateCreated; models.CategoryName = m.Category.Name; models.TopicName = m.Topic.Name; var User = UserManager.FindByIdAsync(m.UserId); var ReportOwner = User.Result.NameExtension; //var CatName = _applicationDbContext.Categories models.DisplayName = ReportOwner; if (m.ReportImages.Count > 0) { models.ReportImagesExist = true; models.ReportImagesCount = m.ReportImages.Count; } if (m.Rebuttals.Count > 0) { models.RebuttalsExist = true; models.RebuttalsCount = m.Rebuttals.Count; } if (m.Threads.Count > 0) { models.ThreadsExist = true; models.ThreadsCount = m.Threads.Count; } //if () //{ // models.CaseUpdatesExist = true; //} if (m.ReportUpdates.Count > 0) { models.ReportUpdateExist = true; models.ReportUpdateCount = m.ReportUpdates.Count; } if (m.ReportVideos.Count > 0) { models.ReportVideosExist = true; models.ReportVideoCount = m.ReportVideos.Count; } else { } reportList.Add(models); } //var topTenQuestion = _applicationDbContext.Questions // .OrderByDescending(dt => dt.DateAsked) // .Take(10); //foreach(var top in topTenQuestion) //{ // TopTenQuestionForLatestReportViewModel questModel = new TopTenQuestionForLatestReportViewModel(); // questModel.QuestionId = top.QuestionId; // questModel.QuestionTitle = top.Title; // questModel.QuestionText = top.QuestionText; // var QuestOwner = UserManager.FindByIdAsync(top.UserId); // string QuestionOwner = QuestOwner.Result.NameExtension; // questModel.QuestionOwner = QuestionOwner; // questModel.DateAsked = top.DateAsked.ToString("d,MMMM yy"); // questModel.TimeAsked = top.DateAsked.ToString("H:mm tt"); // questList.Add(questModel); //} int pageSize = 25; int pageNumber = page ?? 1; //viewModel.TopTenQuestionForLatestReportViewModels = questList; viewModel.ReportsWithOwners = reportList.ToPagedList <ReportsWithOwner>(pageNumber, pageSize); return(View(viewModel)); }
public IActionResult UsersReport(UserReportViewModel viewModel) { return(RedirectToAction("UsersReport", "Report", new { userId = viewModel.User.Id })); }
public async Task <IActionResult> Index() { DateTime startTime = DateTime.Now.AddDays(-DateTime.Now.Day + 1).ToString("yyyy-MM-dd").TryToDateTime(); DateTime endTime = DateTime.Now.AddDays(1).ToString("yyyy-MM-dd").TryToDateTime(); if (Request.Method == "POST") { startTime = Request.Form["startTime"].TryToDateTime(); endTime = Request.Form["endTime"].TryToDateTime(); } ViewBag.startTime = startTime.ToString("yyyy-MM-dd"); ViewBag.endTime = endTime.ToString("yyyy-MM-dd"); UserBll userBll = new UserBll(); List <UserInfo> userlist = await userBll.GetListAsync(); SalesProjectBll salesProjectBll = new SalesProjectBll(); // 成单量统计 List <UserEnterReport> entercustomTotal = await salesProjectBll.GetAsync(startTime, endTime, 0); // 客户量统计 EnterCustomerBll customerBll = new EnterCustomerBll(); List <UserEnterReport> customerTotal = await customerBll.GetAsync(startTime, endTime, 0); //电话量统计 EnterCustPhaseLogBll phlogbll = new EnterCustPhaseLogBll(); List <UserEnterReport> phonetotal = await phlogbll.GetAsync(startTime, endTime, 0); List <UserReportViewModel> reportlist = new List <UserReportViewModel>(); // 应收账款 var ReceoverPayList = await salesProjectBll.GetListAsync(0, startTime, endTime); ReceivedPaymentsLogBll receivedPaymentsLogBll = new ReceivedPaymentsLogBll(); var ReceivedPaymentsLogList = await receivedPaymentsLogBll.GetListAsync(startTime, endTime, 0); if (userlist != null) { foreach (var user in userlist) { if (User.UserName != "admin" && User.ID != user.ID) { continue; } UserReportViewModel userReportView = new UserReportViewModel(); if (customerTotal != null && customerTotal.Count > 0) { var customer = customerTotal.FirstOrDefault(x => x.UserID == user.ID); if (customer != null) { userReportView.CustomorTotal = customer.Total; } } if (entercustomTotal != null && entercustomTotal.Count > 0) { var enter = entercustomTotal.FirstOrDefault(x => x.UserID == user.ID); if (enter != null) { userReportView.SalesProjectTotal = enter.Total; } } if (phonetotal != null && phonetotal.Count > 0) { var phone = phonetotal.FirstOrDefault(x => x.UserID == user.ID); if (phone != null) { userReportView.PhoneTotal = phone.Total; } } userReportView.UserID = user.ID; userReportView.UserName = user.Name; userReportView.TargetAmt = user.TargetAmt; if (ReceoverPayList != null && ReceoverPayList.Count > 0) { var rlist = from rpay in ReceoverPayList where rpay.HeadID == user.ID select rpay.ProjectAmt; if (rlist != null) { userReportView.ReceoverPay = rlist.Sum(); } } if (ReceivedPaymentsLogList != null && ReceivedPaymentsLogList.Count > 0) { var rplist = from rplog in ReceivedPaymentsLogList where rplog.UserID == user.ID select rplog.Amt; if (rplist != null) { userReportView.HReceoverPay = rplist.Sum(); } } reportlist.Add(userReportView); } } ViewBag.root = "report"; return(View(reportlist)); }
private List<ReportColumn> GetReportColumns(UserReportViewModel userReport) { try { var userLogged = Session[Utils.UserKey] as UserModel; var userLevel = Utils.GetUserLevel(userLogged.UserCategory); var userReportOutPut = userReport.Output.Split(',').ToList(); var reportDefaultOutput = userReport.DefaultOuput.Split(',').ToList(); var userReportFilterableColumns = userReport.UserFilters.Split(','); var columnsConfig = new JavaScriptSerializer().Deserialize<List<ReportColumn>>(userReport.OutputConfiguration); var result = (from column in reportDefaultOutput let columnConfig = columnsConfig.FirstOrDefault(col => col.Name == column) select new ReportColumn { Name = column, Level = columnConfig.IsNull() ? 0 : columnConfig.Level, Selected = userReportOutPut.Contains(column) && userLevel >= (columnConfig.IsNull() ? 0 : columnConfig.Level), Filterable = userReportFilterableColumns.Contains(column), Width = columnConfig.IsNull() ? 120 : columnConfig.Width, Index = columnConfig.IsNull() ? 0 : columnConfig.Index, Label = Utils.GetColumnLabel(userReport.Labels, column) }).ToList(); result.Sort((a, b) => a.Index.CompareTo(b.Index)); return result; } catch (Exception exception) { return null; } }
private UserReportInfoModel GetUserReportParameters(UserReportViewModel userReportConfig, List<Argument> arguments = null) { try { if (!arguments.IsNull()) arguments = arguments.Where(arg => !arg.IsNull()).ToList(); var reportParameters = userReportConfig.Parameters.ToList(); //Recovering default parameters from ReportConfig var defaultParams = userReportConfig.ParamsDefaultConfiguration.Split(','); var argsResult = new List<Argument>(); for (var i = 0; i < reportParameters.Count; i++) { var reportParameter = reportParameters[i]; if (!arguments.IsNull() && arguments.Any(x => !x.IsNull())) { var argument = arguments.FirstOrDefault(arg => !arg.Param.IsNull() && arg.Param.Name == reportParameter.Name); Argument newArg; if (!argument.IsNull() && !argument.Value.IsNull()) newArg = argument; //Check if the parameter is ID type and there is no other parameter with the same name in the Args else if (reportParameter.Name.IsIdParameter()) { var argumentId = arguments.FirstOrDefault(arg => !arg.Param.IsNull() && arg.Param.Name.IsIdParameter()); newArg = new Argument { Param = reportParameters[i], Value = !argumentId.IsNull() && !argumentId.Value.IsNull() ? argumentId.Value : GetLoggedUserId() }; } else { newArg = new Argument { Param = reportParameter, Value = defaultParams.TryGetValue(i) }; } argsResult.Add(newArg); } //Check if the parameter is ID type and there is no other parameter with the same name in the Args else if (reportParameter.Name.IsIdParameter()) { argsResult.Add(new Argument { Param = reportParameters[i], Value = GetLoggedUserId() }); } else { argsResult.Add(new Argument { Param = reportParameter, Value = defaultParams.TryGetValue(i) }); } } return new UserReportInfoModel { Args = argsResult, ReportId = userReportConfig.ReportId, UserId = userReportConfig.UserId }; } catch (Exception exception) { return null; } }
private List<Argument> GetSubReportArguments(UserReportViewModel subReport, SubReportParams subReportParams) { var predefinedFilters = subReport.PredefinedFilters; var argsResult = predefinedFilters.Where(pref => pref.Type == FilterType.Value).Select(predefinedFilter => new Argument(predefinedFilter.ParameterName, predefinedFilter.Value)).ToList(); var indexArg = new Argument(subReportParams.IndexParamName, subReportParams.IndexParamValue); var columnNameFilter = predefinedFilters.FirstOrDefault(filter => filter.ColumnName == subReportParams.ColumnName); var columnNameArg = !columnNameFilter.IsNull() ? new Argument(columnNameFilter.ParameterName, subReportParams.ColumnValue) : null; argsResult.AddRange(new List<Argument> { indexArg, columnNameArg }); return argsResult; }