void DrawTile(Map map, Layer layer, Camera2D camera, Vector2 position, string selectedTileName) { if (!string.IsNullOrEmpty(selectedTileName)) { var point = new Vector2((int)((camera.Position.X + position.X) / 32), (int)((camera.Position.Y + position.Y) / 32)); if (layer.Tiles.ContainsKey(point)) { layer.Tiles.Remove(point); } layer.Tiles.Add(point, TileRepository.GetTile(selectedTileName)); /*UndoService.Current[map].AddChange(new DelegateChange(null, new Action(() => * { * layer.Tiles.Remove(point); * }), new Action(() => * { * layer.Tiles.Add(point, TileRepository.GetTile(selectedTileName)); * }), selectedTileName), "Draw a tile");*/ /*MainForm.MapPanel.AddShadowForObject(Texture2D.FromStream(MainForm.MapPanel.GraphicsDevice, TileRepository.GetTile(selectedTileName).Texture), * point);*/ base.OnMouseMove(map, layer, camera, position, selectedTileName); } }
void RefreshListView() { var query = TileRepository.GetTiles(textBox1.Text).AsQueryable(); if (comboBox1.SelectedItem != null) { query = query.Where(p => p.Name.Split('/')[0] == comboBox1.SelectedItem.ToString()); } else if (!string.IsNullOrWhiteSpace(comboBox1.SelectedText)) { query = query.Where(p => p.Name.Split('/')[0].IndexOf(comboBox1.SelectedText, StringComparison.OrdinalIgnoreCase) >= 0); } new Thread(new ThreadStart(() => { this.Invoke((MethodInvoker)(() => { tilesListView.Clear(); imageList1.Images.Clear(); foreach (var tile in query.ToList()) { imageList1.Images.Add(tile.Name, Image.FromStream(tile.Texture)); tilesListView.Items.Add(Path.GetFileNameWithoutExtension(tile.Name), tile.Name); } })); })).Start(); }
private string LoadTeamTiles() { var teamGuid = Request.Params["SiteGUID"].ToString(); string userAlias = Session["UserName"].ToString(); // tile data JavaScriptSerializer jss = new JavaScriptSerializer(); // Save the tile data into our database using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { TileRepository repository = new TileRepository(context); // Get the team id by its team guid value TeamRepository tRepository = new TeamRepository(context); TeamAppService teamService = new TeamAppService(tRepository); TileQueryLogicRepository tileQueryRepository = new TileQueryLogicRepository(context); ReportRepository reportRepository = new ReportRepository(context); int teamId = teamService.GetAllTeamSites().First(_ => _.TeamGuid == Guid.Parse(teamGuid)).Id.Value; TileServices tService = new TileServices(repository, tRepository, reportRepository, null, null, null, tileQueryRepository); List <TileViewModel> tiles = tService.GetCustomerizeTilesWithCountByTeamId(teamId, userAlias, true, teamGuid).Select(_ => _.ToTileViewModel()).ToList <TileViewModel>(); return(jss.Serialize(tiles)); } }
public ActionResult Index() { var repos = new TileRepository(); ViewData["tiles"] = repos.GetTiles(); return(View()); }
public static void Generate(string map, Transform container, TileRepository tileRepository, float tileOffset, MapifyLayout layout) { var localPositionCalculator = new LocalPositionCalculator(tileOffset, layout); var iterator = new MapIterator(map.SplitOnNewline(), localPositionCalculator); new LevelPopulator(iterator, tileRepository, container).Populate(); }
public void TestGetTileTypeCount() { // TODO: Add your test code here TileRepository repository = new TileRepository(config); Assert.That(repository.GetTileTypeCount(), Is.EqualTo(2)); }
public ActionResult SignalAll() { var repos = new TileRepository(); foreach (var tile in repos.GetTiles()) { tile.Signal.FireChanged(); } return(RedirectToAction("index")); }
public TilesStack(TileRepository tr) { stack = new Stack <Tile>(); for (int type = 0; type < tr.GetTileTypeCount(); type++) { for (int i = 0; i < tr.GetTileCount(type); i++) { stack.Push(tr.GetTile(type)); } } }
public Game(int numPlayers, TileRepository tileRepository) { this.numPlayers = numPlayers; playersHands = new Tile[numPlayers]; stations = LoadStations(); points = new int[numPlayers]; this.tileRepository = tileRepository; InitialHandDraw(); grid = new Tile[Driver.Instance.BoardSize, Driver.Instance.BoardSize]; boardSize = Driver.Instance.BoardSize; }
public override void OnMouseClick(Map map, Layer layer, Camera2D camera, Vector2 position, string selectedTileName) { if (!string.IsNullOrEmpty(selectedTileName)) { var orginal = new Vector2((int)((camera.Position.X + position.X) / 32), (int)((camera.Position.Y + position.Y) / 32)); Tile target = null; layer.Tiles.TryGetValue(orginal, out target); FloodFill(layer, orginal, orginal, target, TileRepository.GetTile(selectedTileName)); } }
public Game(string tilesConfig, string scheduleConfig, int numOfPlayers) { Width = 8; Height = 8; this.NumOfPlayers = numOfPlayers; this.Stations = new Station[32]; board = new Tile[Width, Height]; TileRepository tileRepository = new TileRepository(tilesConfig); stack = new TilesStack(tileRepository); LoadScheduleConfig(scheduleConfig); }
/// <summary> /// Initializes a new instance of the <see cref="Minesweeper.Game.GameEngine"/> class. /// </summary> /// <param name="tableSize">Table size.</param> /// <param name="mines">Mines.</param> public GameController(int tableSize, int mines) { tileRepository = new TileRepository(); TableSize = tableSize; Alive = true; MinesCount = mines; FlagsLimit = mines; GenerateTable(); IsRunning = true; GLib.Timeout.Add(1000, new GLib.TimeoutHandler(TimerTick)); }
/// <summary> /// Initializes a new instance of the <see cref="SlidingPuzzle.Controllers.GameController"/> class. /// </summary> /// <param name="tableSize">Table size.</param> public GameController(int tableSize) { GameInfo = new GameInfo { TableSize = tableSize, IsRunning = true }; repository = new TileRepository(); random = new Random(); InitializeTable(); ShuffleTable(); GLib.Timeout.Add(1000, new GLib.TimeoutHandler(OnGameTimerTick)); }
private static void InitRepository(string directoryPath) { var directory = new DirectoryInfo(directoryPath); if (!directory.Exists) { Console.WriteLine($"Directory \"{directoryPath}\" does not exists"); return; } Console.WriteLine($"Initializing \"{directoryPath}\""); var repository = new TileRepository(directory); repository.InitRepository(true); }
public ActionResult Scramble(int id) { var repos = new TileRepository(); var tile = repos.GetTile(id); var random = new Random(); var characters = tile.Text .ToCharArray() .Select(ch => new { ch, order = random.NextDouble() }) .OrderBy(x => x.order) .Select(x => x.ch); repos.ChangeTile(id, new string(characters.ToArray())); return(RedirectToAction("index")); }
public ActionResult ResetAll() { var repos = new TileRepository(); var tileData = "the quick brown fox jumped over the sleepy dog" .Split(' ') .Select((text, index) => new { text, index }); foreach (var data in tileData) { if (repos.GetTile(data.index).Text != data.text) { repos.ChangeTile(data.index, data.text); } } return(RedirectToAction("index")); }
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 + "\"}"); }
public Form1() { InitializeComponent(); p = new Player(res.Player, gw); p2 = new Enemy(res.Player, gw) { Location = new DecimalPoint(3050, 3150) }; gw.Player = p; p.Location.X = 3000; p.Location.Y = 3000; p2.TargetSpeed = 6; p2.Angle = 180; p2.MotionBehavior = new CircleMotionBehavior(p2, gw, p.Location); Tile grass = new Tile(res.Grass, 0); grass.IsSolid = false; Tile rock = new Tile(res.Rock, 1); rock.IsSolid = true; Tile Brick = new Tile(res.BrickWall, 2); rock.IsSolid = true; Tile grassstone = new Tile(res.FloorsMedieval, 3); rock.IsSolid = false; TileRepository.Add(grass); TileRepository.Add(rock); TileRepository.Add(Brick); TileRepository.Add(grassstone); game = new Game(this.CreateGraphics(), gw, this.Size); this.Size = Game.Size; gw.GameObjects.Add(p); gw.GameObjects.Add(p2); t = new Thread(Run); t.Start(); }
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 void MainForm_Load(object sender, EventArgs e) { this.KeyPreview = true; tilesListView.MultiSelect = false; textBox1.Width = tilesListView.Width - textBox1.Location.X; comboBox1.Width = tilesListView.Width - comboBox1.Location.X; MapPanel = mapPanel1; mapPanel1.Map = new Map(); mapPanel1.ActiveTool = _tools[drawToolButton]; mapPanel1.Map.Layers.Add(new Layer() { Name = "Base", Order = 0 }); mapPanel1.Krpyton.Lights = mapPanel1.Map.Lights; // mapPanel1.Krpyton.Hulls = mapPanel1.Map.Shadows; mapPanel1.ActiveLayer = mapPanel1.Map.Layers[0]; UndoService.Current[mapPanel1.Map].UndoStackChanged += new EventHandler(MainForm_UndoStackChanged); UndoService.Current[mapPanel1.Map].RedoStackChanged += new EventHandler(MainForm_RedoStackChanged); var directory = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Objects"); TileRepository.Load(directory); foreach (var category in Directory.GetDirectories(directory)) { this.comboBox1.Items.Add(Path.GetFileNameWithoutExtension(category)); } }
private string GetAdminTileFilterInfo(string userName, string teamGuid, bool isAdmin) { JavaScriptSerializer jss = new JavaScriptSerializer(); // TileManager tm = new TileManager(); TileFilterListViewModel filterViewModel = new TileFilterListViewModel(); using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { ICategoryRepository _categoryRepository = new CategoryRepository(context); ITagRepository _tagRepository = new TeamTagRepository(context); ITileRepository _tileRepository = new TileRepository(context); ITeamRepository _teamRepository = new TeamRepository(context); IReportRepository _reportRepository = new ReportRepository(context); IUserRepository _userRepository = new UserRepository(context); TileServices tileService = new TileServices(_tileRepository, _teamRepository, _reportRepository, _userRepository, _tagRepository, _categoryRepository, null); //Owner IEnumerable <UserLoginApp> userList = tileService.GetOwnerList(userName, teamGuid, isAdmin); filterViewModel.Owner = userList.OrderBy(_ => _.UserName).Distinct <UserLoginApp>(new UserComparer()); //Category IEnumerable <AppCategory> categoryList = tileService.GetCategoryList(); filterViewModel.SubCategory = categoryList.OrderBy(_ => _.CategoryName).Distinct <AppCategory>(new CategoryComparer()); //Tag IEnumerable <AppTeamTag> tagList = tileService.GetTagListByTeam(teamGuid).Distinct <AppTeamTag>(new TagComparer()); filterViewModel.Tag = tagList; } return(jss.Serialize(filterViewModel)); }
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 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); } }
// Use this for initialization void Awake() { tileRepository = new TileRepository(); }
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)); } }
public MapTileController(IConfiguration config) { _config = config; _tileRepository = Create(); }
private void UpdateTileInformation() { // Update team site dashboard settings var tileData = Request.Params["TilesData"]; var teamGuid = Request.Params["SiteGUID"].ToString(); // tile data JavaScriptSerializer jss = new JavaScriptSerializer(); List <TileViewModel> paraTileList = jss.Deserialize <List <TileViewModel> >(tileData); // Save the tile data into our database using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { TileRepository repository = new TileRepository(context); // Get the team id by its team guid value TeamRepository tRepository = new TeamRepository(context); TeamAppService teamService = new TeamAppService(tRepository); TileQueryLogicRepository tileQueryRepository = new TileQueryLogicRepository(context); int teamId = teamService.GetAllTeamSites().First(_ => _.TeamGuid == Guid.Parse(teamGuid)).Id.Value; //validate the data if (paraTileList.Count() > 24) { throw new ArgumentException("the count of the tile is more than 24"); } foreach (var item in paraTileList) { if (item.coordinateX < 0 || item.coordinateX > 7) { throw new ArgumentException("coordinateX must be between 0 and 7"); } if (item.coordinateY < 0 || item.coordinateY > 2) { throw new ArgumentException("coordinateY must be between 0 and 2"); } if (item.demensionX < 1 || item.demensionX > 8) { throw new ArgumentException("demensionX must be between 1 and 8"); } if (item.demensionY < 1 || item.demensionY > 3) { throw new ArgumentException("demensionY must be between 1 and 3"); } } TileServices tService = new TileServices(repository, null, null, null, null, null, tileQueryRepository); List <AppTile> tiles = new List <AppTile>(); List <AppTile> orignalTiles = tService.GetTilesByTeamId(teamId).ToList(); //tiles will be remove foreach (var item in orignalTiles) { if (!paraTileList.Any(_ => _.id == item.Id)) { if (item.logicType == LogicType.AllReports) { continue; } AppTile appTile = tService.GetTileById(item.Id.Value); appTile.Status = ChangeStatus.Delete; tiles.Add(appTile); } } foreach (var para in paraTileList) { //tiles will be Added if (para.id < 0) { AppTile appTile = new AppTeamSiteCustomizedTile(); appTile.TileType = TileType.TeamSite; appTile.Status = ChangeStatus.Add; appTile.Title = para.title; appTile.Top = para.coordinateY; appTile.Left = para.coordinateX; appTile.Width = para.demensionX; appTile.Height = para.demensionY; appTile.BackgroundColor = para.backgroundColor; appTile.Icon = para.icon; appTile.BackgroundImage = para.backgroundImage; appTile.ImageOverlayColor = para.overlayColor; appTile.ReportCountStyle = para.shownCount; appTile.OwnerTeamSiteId = teamId; appTile.IsCustomized = true; appTile.logicType = (LogicType)Enum.Parse(typeof(LogicType), para.LogicType); SetAppTitleLogic(para.LogicString, appTile); tiles.Add(appTile); } //tiles will be Updated if (para.id > 0) { AppTile appTile = tService.GetTileById(para.id); if (appTile == null) { continue; } appTile.Status = ChangeStatus.Change; appTile.Top = para.coordinateY; appTile.Left = para.coordinateX; appTile.Width = para.demensionX; appTile.Height = para.demensionY; appTile.BackgroundColor = para.backgroundColor; appTile.Icon = para.icon; appTile.BackgroundImage = para.backgroundImage; appTile.ImageOverlayColor = para.overlayColor; appTile.ReportCountStyle = para.shownCount; appTile.IsCustomized = true; if (appTile.logicType != LogicType.AllReports) { appTile.Title = para.title; appTile.logicType = (LogicType)Enum.Parse(typeof(LogicType), para.LogicType); SetAppTitleLogic(para.LogicString, appTile); } tiles.Add(appTile); } } tService.ModifyTile(tiles); } }
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)); } }
protected void Page_Load(object sender, EventArgs e) { JavaScriptSerializer jss = new JavaScriptSerializer(); using (MainDBUnitWorkContext context = new MainDBUnitWorkContext()) { TeamTagRepository tagRepository = new TeamTagRepository(context); TeamRepository teamRepository = new TeamRepository(context); TeamStatusRepository statusRepository = new TeamStatusRepository(context); ITileRepository tileRepository = new TileRepository(context); IReportRepository reportRepository = new ReportRepository(); TeamAdminService tService = new TeamAdminService(tagRepository, teamRepository, statusRepository, tileRepository, reportRepository); var teamGuid = Request.Params["SiteGUID"].ToString(); Guid guid = Guid.Parse(teamGuid); int teamId = teamRepository.GetFiltered(_ => _.TeamGuid == guid).FirstOrDefault().Id; var UserName = Session["UserName"]; if (Request["queryType"] == "getreportstatus") { // If current user is an admin. var team = teamRepository.GetAll().FirstOrDefault(_ => _.Id == teamId); if (UserName == null) { Response.Redirect("../MyAccounts/NoLoginPage.aspx"); } else { List <AppStatus> status = new List <AppStatus>(); bool isAdmin = team.TeamOwners.FirstOrDefault(_ => _.UserName == UserName.ToString().Trim()) != null; if (isAdmin) { status = tService.GetStatusByRole(1).ToList <AppStatus>(); } else { status = tService.GetStatusByRole(0).ToList <AppStatus>(); } string r = jss.Serialize(status); Response.Write(r); } } if (Request["queryType"] == "getsitetags") { var tags = tService.GetTagsByTeamId(Guid.Parse(teamGuid)); Response.Write(jss.Serialize(tags)); } if (Request["queryType"] == "updatetags") { List <AppTeamTag> tags = new List <AppTeamTag>(); tags = jss.Deserialize <List <AppTeamTag> >(Request.Params["TagData"]); List <AppTeamTag> tagsUpdate = new List <AppTeamTag>(); var originalTags = tService.GetTagsByTeamId(Guid.Parse(teamGuid)); foreach (var item in originalTags) { if (!tags.Any(_ => _.Id == item.Id)) { AppTeamTag appTag = tService.GetTagById(item.Id.Value); appTag.Status = tagStatus.Delete; tagsUpdate.Add(appTag); } } foreach (var para in tags) { if (para.Id < 0) { AppTeamTag appTag = new AppTeamTag(); appTag.Title = para.Title; appTag.TeamGuid = teamGuid; appTag.Status = tagStatus.Add; appTag.TeamId = teamId; tagsUpdate.Add(appTag); } else { AppTeamTag appTag = tService.GetTagById(para.Id.Value); if (appTag == null) { continue; } appTag.Status = tagStatus.Modify; appTag.TeamGuid = teamGuid; appTag.Title = para.Title; appTag.TeamId = teamId; tagsUpdate.Add(appTag); } } tService.ModifyTags(tagsUpdate); var tags_after = tService.GetTagsByTeamId(Guid.Parse(teamGuid)); Response.Write(jss.Serialize(tags_after)); } } }