public static BoardColumnModel Create(UserModel user = null) { user = user ?? UserFaker.Create(); var board = BoardFaker.Create(user); return(BoardColumnRepository.CreateAndGet( "boardColumnName_" + Rand.SmallInt(), board, Convert.ToInt16(Rand.IntRange(0, 20)) )); }
public static void Run(DL.Model.Project.Project project, User creator) { if (creator != null) { ProjectTeamMemberRepository.CreateAndGet(project, creator); UserLibraryItemRepository.FindOrCreate(project.Creator(), project); } ProjectAliasRepository.Create(project); ProjectWorkUtils.SetUp(project); // Basic boards set up var board = BoardRepository.CreateAndGet("Development", "Basic board", project, creator); var todoColumn = BoardColumnRepository.CreateAndGet("TODO", board, 1); BoardColumnRepository.CreateAndGet("In progress", board, 2); BoardColumnRepository.CreateAndGet("Done", board, 3); CardRepository.CreateAndGet( "Example card", DefaultCardDescription, 1, todoColumn, creator ); }
public BoardColumnCrudController() { Post("/api/v1/board_column/create", _ => { var me = UserRepository.Find(CurrentRequest.UserId); var board = BoardRepository.FindByGuid(GetRequestStr("board_guid")); var errors = ValidationProcessor.Process(Request, new IValidatorRule[] { new ShouldHaveParameters(new[] { "name", "board_guid", "board_order" }), new ExistsInTable("board_guid", "boards", "guid"), new HasPermission(me, board.Project().id, EntityType.Project) }, true); if (errors.Count > 0) { return(HttpResponse.Errors(errors)); } var boardOrder = (short)Request.Query["board_order"]; if (BoardColumnRepository.Find(board, boardOrder) != null) { return(HttpResponse.Error(HttpStatusCode.Conflict, "Board's column with this board's order already exists ")); } var boardColumn = BoardColumnRepository.CreateAndGet( (string)Request.Query["name"], board, boardOrder ); return(HttpResponse.Item( "board_column", new BoardColumnTransformer().Transform(boardColumn), HttpStatusCode.Created )); }); Patch("/api/v1/board_column/edit", _ => { var me = UserRepository.Find(CurrentRequest.UserId); var boardColumn = BoardColumnRepository.FindByGuid(GetRequestStr("board_column_guid")); var board = BoardRepository.Find(boardColumn.board_id); var errors = ValidationProcessor.Process(Request, new IValidatorRule[] { new ShouldHaveParameters(new[] { "board_column_guid" }), new ExistsInTable("board_column_guid", "board_columns", "guid"), new HasPermission(me, boardColumn.Board().id, EntityType.Board) }, true); if (errors.Count > 0) { return(HttpResponse.Errors(errors)); } if (BoardColumnRepository.Find(board, Convert.ToInt16(GetRequestStr("board_order"))) != null) { return(HttpResponse.Error(HttpStatusCode.Conflict, "Board's column with this board's order already exists ")); } boardColumn = BoardColumnRepository.UpdateAndRefresh(boardColumn, new JObject() { ["name"] = GetRequestStr("name"), ["board_order"] = GetRequestStr("board_order") }); return(HttpResponse.Item("board_column", new BoardColumnTransformer().Transform(boardColumn))); }); Delete("/api/v1/board_column/delete", _ => { var me = UserRepository.Find(CurrentRequest.UserId); var boardColumn = BoardColumnRepository.FindByGuid(GetRequestStr("board_column_guid")); var errors = ValidationProcessor.Process(Request, new IValidatorRule[] { new ShouldHaveParameters(new[] { "board_column_guid" }), new ExistsInTable("board_column_guid", "board_columns", "guid"), new HasPermission(me, boardColumn.Board().id, EntityType.Board) }, true); if (errors.Count > 0) { return(HttpResponse.Errors(errors)); } boardColumn.Delete(); return(HttpResponse.Item("board", new BoardColumnTransformer().Transform(boardColumn))); }); }