private string GetTempTileReportCount(string teamGuid, string userName) { string tileData = Request["TileData"]; if (String.IsNullOrEmpty(tileData)) { return("Querystring:TileData is empty!"); } JavaScriptSerializer jss = new JavaScriptSerializer(); TileViewModel para = jss.Deserialize <TileViewModel>(tileData); AppTile appTile = new AppTeamSiteCustomizedTile(); appTile.logicType = (LogicType)Enum.Parse(typeof(LogicType), para.LogicType); SetAppTitleLogic(para.LogicString, appTile); using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { IReportRepository reportRepository = new ReportRepository(context); EditReportService reportService = new EditReportService(reportRepository, null, null, null, null, null); int reportCount = reportService.GetTempTilesWithReportCount(teamGuid, userName, appTile); return(reportCount.ToString()); } }
/// <summary> /// Get all the owners that has reports owned /// </summary> /// <param name="userAlias"></param> /// <param name="siteGuid"></param> /// <param name="isCurrentSiteAdmin"></param> /// <returns></returns> public ICollection <UserLoginApp> GetOwnerList(string userAlias, string siteGuid, bool isCurrentSiteAdmin) { int teamId = _teamRepository.GetFiltered(_ => _.TeamGuid == new Guid(siteGuid)).FirstOrDefault().Id; int allReportTileID = _tileRepository.GetAllReportsTileId(teamId); EditReportService editService = new EditReportService(_reportRepository, _userRepository, _teamRepository, _categoryRepository, _tagRepository, _tileRepository); ICollection <Statistics> ls = editService.GetTeamSiteReportsStatistics(allReportTileID, userAlias, siteGuid, isCurrentSiteAdmin); IEnumerable <UserLoginApp> userList = new List <UserLoginApp>(); if (ls.Count() > 0) { Statistics OwnerStatistics = ls.Where(_ => _.Name == "Owner").FirstOrDefault(); userList = OwnerStatistics.Values.Select(_ => new UserLoginApp { Id = _.GUID, UserName = _.Name }).OrderBy(_ => _.UserName); } return(userList.ToList()); }
private string GetReportDetal() { int reportId = int.Parse(Request.QueryString["reportId"]); JavaScriptSerializer jss = new JavaScriptSerializer(); using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { ReportRepository _reportRepository = new ReportRepository(context); EditReportService reportService = new EditReportService(_reportRepository, null, null, null, null, null, null); return(jss.Serialize(reportService.GetReportById(reportId))); } }
private string UploadNewArticle() { int newAddedReportId = -1; JavaScriptSerializer jss = new JavaScriptSerializer(); var paramDes = jss.Deserialize <AppReport>(Request.Params["articleData"]); using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { ReportRepository repository = new ReportRepository(context); UserRepository uRepository = new UserRepository(context); TeamRepository tRepository = new TeamRepository(context); CategoryRepository cRepository = new CategoryRepository(context); TeamTagRepository tagRepository = new TeamTagRepository(context); TileRepository tileRepository = new TileRepository(context); EditReportService service = new EditReportService(repository, uRepository, tRepository, cRepository, tagRepository, tileRepository); newAddedReportId = service.AddReport(paramDes); } return("{\"id\":\"" + newAddedReportId + "\"}"); }
private string GetAdminReportFromCurrentTeamSite() { string tileID = Request["TileID"]; string teamGuid = Request["SiteGUID"]; string userName = Session["UserName"] == null ? "" : Session["UserName"].ToString(); using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { ReportRepository repository = new ReportRepository(context); UserRepository uRepository = new UserRepository(context); TeamRepository tRepository = new TeamRepository(context); CategoryRepository cRepository = new CategoryRepository(context); TeamTagRepository tagRepository = new TeamTagRepository(context); TileRepository tileRepository = new TileRepository(context); EditReportService service = new EditReportService(repository, uRepository, tRepository, cRepository, tagRepository, tileRepository); var reports = service.GetAllReportsOfTeamSite(userName, teamGuid, true, global::Application.MainBoundedContect.Enums.SortField.ReportTitle, global::Application.MainBoundedContect.Enums.SortOrder.ASC); JavaScriptSerializer jss = new JavaScriptSerializer(); return(jss.Serialize(reports)); } }
private string GetArticlesByTagId() { int tagId = int.Parse(Request.QueryString["tagid"]); string teamId = Request.QueryString["teamid"]; JavaScriptSerializer jss = new JavaScriptSerializer(); string userAlias = Session["UserName"] == null?"Test":Session["UserName"].ToString(); using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { ReportRepository repository = new ReportRepository(context); UserRepository uRepository = new UserRepository(context); TeamRepository tRepository = new TeamRepository(context); CategoryRepository cRepository = new CategoryRepository(context); TeamTagRepository tagRepository = new TeamTagRepository(context); TileRepository tileRepository = new TileRepository(context); EditReportService service = new EditReportService(repository, uRepository, tRepository, cRepository, tagRepository, tileRepository); var services = service.GetReportsOfTeamSiteByTagId(userAlias, teamId, true, tagId, global::Application.MainBoundedContect.Enums.SortField.ReportTitle, global::Application.MainBoundedContect.Enums.SortOrder.ASC); var otherReports = services.Select(report1 => new ReportItem() { ID = report1.Id.Value, TagName = report1.Tags.FirstOrDefault(_ => _.Id.Value == tagId).Title, ReportDescription = report1.Description, ReportName = report1.Title, ReprotStatus = report1.Status.Name, ReportFeaturePics = report1.Images, ReportOwners = report1.Owners.Select(_ => new UserLoginApp { Sex = _.Sex, Id = _.Id, UserEmail = _.UserEmail, UserName = _.UserName, UserPhoto = _.UserPhoto }).ToList <UserLoginApp>() }); return(jss.Serialize(otherReports)); } }
private string GetArticlesByID() { JavaScriptSerializer jss = new JavaScriptSerializer(); var paramDes = jss.Deserialize <QueryParameterReport>(Request.Params["queryParam"]); int id = paramDes.articleid; string teamGuid = paramDes.teamguid; string userAlias = Session["UserName"] == null ? "Test" : Session["UserName"].ToString(); using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { ReportRepository repository = new ReportRepository(context); UserRepository uRepository = new UserRepository(context); TeamRepository tRepository = new TeamRepository(context); CategoryRepository cRepository = new CategoryRepository(context); TeamTagRepository tagRepository = new TeamTagRepository(context); TileRepository tileRepository = new TileRepository(context); EditReportService service = new EditReportService(repository, uRepository, tRepository, cRepository, tagRepository, tileRepository); // This report var report = service.GetReportById(id); var category = report.Categories.Select(_ => _.Id.GetValueOrDefault()).ToList <int>(); // Other reports var otherReportsTemp = service. GetReportsOfTeamSiteByCategory(userAlias, teamGuid, true, category, global::Application.MainBoundedContect.Enums.SortField.ReportTitle, global::Application.MainBoundedContect.Enums.SortOrder.ASC).Where(_ => _.Id.Value != id).ToList <AppReport>(); // Assemble the reports information var thisReport = new ReportItem() { ReportTags = report.Tags, ID = report.Id.Value, ReportFeaturePics = report.Images, ReportDescription = report.Description, ReprotContent = report.Content, ReportName = report.Title, ReprotStatus = report.Status.Name, ReportOwners = report.Owners.Select(_ => new UserLoginApp { Id = _.Id, UserEmail = _.UserEmail, UserName = _.UserName }).ToList <UserLoginApp>() }; var otherReports = otherReportsTemp.Select(report1 => new ReportItem() { ID = report1.Id.Value, ReportDescription = report1.Description, ReportName = report1.Title, ReprotStatus = report1.Status.Name, ReportOwners = report1.Owners.Select(_ => new UserLoginApp { Id = _.Id, UserEmail = _.UserEmail, UserName = _.UserName }).ToList <UserLoginApp>() }); QueryParameterReportSearch reports = new QueryParameterReportSearch() { ThisReport = thisReport, OtherReports = otherReports == null ? null : otherReports.ToList <ReportItem>() }; // Return the search result return(jss.Serialize(reports)); } }
private void SetAppTitleLogic(string logicString, AppTile appTile) { using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { TileRepository repository = new TileRepository(context); ReportRepository _reportRepository = new ReportRepository(context); if (!string.IsNullOrEmpty(logicString)) { EditReportService reportService = new EditReportService(null, null, null, null, null, null); switch (appTile.logicType) { case LogicType.Static: appTile.BasicLogic = null; break; case LogicType.Selected: List <int> cataIDList = logicString.Split(',').Select(_ => Convert.ToInt32(_)).ToList(); appTile.BasicLogic = (new ReportDataId()).In(cataIDList); break; case LogicType.Filtered: ReportFilter filer = new ReportFilter(); JavaScriptSerializer jss = new JavaScriptSerializer(); #region Deserialize TileFilterListViewModel vm = new TileFilterListViewModel(); if (!String.IsNullOrEmpty(logicString)) { vm = jss.Deserialize <TileFilterListViewModel>(logicString); } #endregion #region Get ReportFilter filer.OwnerIdCollection = (from o in vm.Owner select o.Id).ToList(); //filer.CatalogTypeIdCollection = (from c in vm.CatelogType select c.Id).ToList(); filer.TagsIdCollection = (from t in vm.Tag select t.Id.Value).ToList(); filer.SubCategoryIdCollection = (from c in vm.SubCategory select c.Id.Value).ToList(); #endregion appTile.BasicLogic = reportService.GenerateLogicByFilter(filer); break; case LogicType.Tagged: List <int> tagIds = logicString.Split(',').Select(i => int.Parse(i.Trim())).ToList(); appTile.BasicLogic = (new TagId()).In(tagIds); break; case LogicType.AllReports: appTile.BasicLogic = null; break; } } else { appTile.BasicLogic = null; } } }
private string GetFilter() { string sitetype = Request["sitetype"]; string siteGUID = Request["SiteGuid"]; string searchWords = Request["SearchWords"]; int tileId = int.Parse(Request["tileId"]); //if (tileId == 0) //{ // TileManager tm = new TileManager(); // if (sitetype.ToLower() == "selfservice") // { // tileId = SystemDefinedTile.SelfService_AllBIModels.SystemDefinedTileId; // } // else // { // tileId = SystemDefinedTile.MyReports_AllReports.SystemDefinedTileId; // } //} string logonUser = Session["UserName"] == null ? "" : Session["UserName"].ToString(); bool isCurrentSiteAdmin = logonUser == "" ? false : service.GetUserAdminTeams(logonUser).Count() > 0; using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { IReportRepository report_repository = new ReportRepository(context); IUserRepository user_repository = new UserRepository(context); ITeamRepository team_repository = new TeamRepository(context); ICategoryRepository category_repository = new CategoryRepository(context); ITagRepository tag_repository = new TeamTagRepository(context); ITileRepository tile_repository = new TileRepository(context); ITileQueryLogicRepository tile_query_repository = new TileQueryLogicRepository(context); EditReportService sa = new EditReportService(report_repository, user_repository, team_repository, category_repository, tag_repository, tile_repository, tile_query_repository); FilterListViewModel filterList = new FilterListViewModel(); #region query filter data int DataCount = 0; ICollection <Statistics> ls = null; switch (sitetype.ToLower()) { case "teamsite": ls = sa.GetTeamSiteReportsStatistics(tileId, logonUser, siteGUID, isCurrentSiteAdmin); break; case "reportcatalog": break; //case "myreport": // ls = sa.GetMyReportsStatistics(tileId, logonUser, teamSiteGuidUnderControl); // break; //case "selfservice": // ls = sa.GetSelfServiceStatistics(tileId, logonUser, teamSiteGuidUnderControl); // break; //case "searchreport": // ls = sa.GetSearchReportsStatistics(logonUser, teamSiteGuidUnderControl, searchWords, out DataCount); // break; default: break; } #endregion filterList.DataCount = DataCount; #region Get Statistics business moel foreach (Statistics l in ls) { FilterEntityViewModel filterEty = new FilterEntityViewModel(); filterEty.FilterType = l.Name; foreach (AttributeValue attr in l.Values) { Application.MainBoundedContect.ViewModel.Filters.FilterItem item = new Application.MainBoundedContect.ViewModel.Filters.FilterItem(); item.Name = attr.Name; if (l.Name == "Owner") { item.Value = attr.GUID.ToString(); } else { item.Value = attr.Value.ToString(); } item.Count = attr.Count; item.ParentValue = attr.ParentValue; filterEty.FilterItemList.Add(item); } if (!filterEty.FilterType.Equals("Category")) { filterEty.FilterItemList.OrderByDescending(c => c.Count).ThenBy(n => n.Value); } filterList.FilterList.Add(filterEty); } JavaScriptSerializer jss = new JavaScriptSerializer(); #endregion return(jss.Serialize(filterList)); } }
private string GetReports() { string userName = Session["UserName"] == null ? "" : Session["UserName"].ToString(); string output; string siteType = Request["siteType"]; string teamGuid = Request["SiteGuid"]; JavaScriptSerializer jss = new JavaScriptSerializer(); var paramDes = jss.Deserialize <WebApplication1.Models.QueryParameterViewModel>(Request["queryParam"]); int tileId = int.Parse(paramDes.TileId); // Get the reports from the reports list using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { ReportRepository rep = new ReportRepository(context); TileRepository tileRep = new TileRepository(context); TileQueryLogicRepository tileQuery = new TileQueryLogicRepository(context); TileServices tService = new TileServices(tileRep, null, null, null, null, null, tileQuery); var tile = tService.GetTileById(tileId); EditReportService editReport = new EditReportService(rep, null, null, null, null, tileRep, tileQuery); #region Get ReportFilter ReportFilter filer = new ReportFilter(); foreach (WebApplication1.Models.FilterModel vm in paramDes.FilterEntityList) { switch (vm.FilterType) { case "Tag": filer.TagsIdCollection = (from fl in vm.FilterItemList select int.Parse(fl.Value)).ToList(); break; case "Owner": filer.OwnerIdCollection = (from fl in vm.FilterItemList select fl.Value).ToList(); break; case "Sub Category": filer.SubCategoryIdCollection = (from fl in vm.FilterItemList select int.Parse(fl.Value)).ToList(); break; default: break; } } #endregion // TO-DO: Team admin is set to true var reports = editReport.GetReportsByTeamWithReportsRequire(teamGuid, tileId, filer, true, userName, paramDes.CurrentPage, paramDes.PageSize, SortField.ReportTitle, (paramDes.SortAscending ? SortOrder.ASC : SortOrder.DESC)).ToArray(); ReportListModel rptList = GetReportList(reports, Convert.ToInt32(paramDes.TileId)); output = jss.Serialize(rptList); return(output); } }