public Task(DateTime dueDate, string title, string description, int key, string email, int columnId, int boardId) // construcor with description { this.emailAssignee = email; this.columnId = columnId; this.boardId = boardId; if (isValidTitle(title)) { this.title = title; } this.creationTime = DateTime.Now; if (isValidDueDate(dueDate, creationTime)) { this.dueDate = dueDate; } if (isValidDescription(description)) { this.description = description; } this.dueDate = dueDate; this.title = title; this.key = key; //inserting to database DataAccessLayer.dataTaskController DTC = new DataAccessLayer.dataTaskController(); DTC.Insert(this.toDalObject()); }
public void loadata() { if (users.Count == 0) //Cant load data before deleting it { DataAccessLayer.dataBoardController boardController = new DataAccessLayer.dataBoardController(); DataAccessLayer.dataTaskController taskController = new DataAccessLayer.dataTaskController(); DataAccessLayer.dataColumnController columnController = new DataAccessLayer.dataColumnController(); DataAccessLayer.dataUserController UserController = new DataAccessLayer.dataUserController(); //Loading from database to dal objects List <DataAccessLayer.dataBoard> allBoards = boardController.SelectAllBoards(); List <DataAccessLayer.dataTask> allTasks = taskController.SelectAllTasks(); List <DataAccessLayer.dataColumn> allColumns = columnController.SelectAllColumns(); List <DataAccessLayer.dataUser> allUsers = UserController.SelectAllUsers(); List <Board> boards = new List <Board>(); foreach (var dataUser in allUsers) { Board busBoard = null; foreach (var dataBoard in allBoards) { if (dataUser.email.Equals(dataBoard.emailCreator)) //Only add the board created by the user { Dictionary <int, Column> busColumns = new Dictionary <int, Column>(); foreach (var dataColumn in allColumns) { if (dataColumn.boardId == dataBoard.boardId) { List <Task> busTasks = new List <Task>(); foreach (var dataTask in allTasks) { if (dataTask.column == dataColumn.ordinal & dataColumn.boardId == dataTask.boardId) //Only add the tasks that match the correct column { busTasks.Add(new Task(dataTask)); //adding to task list business task which is the copy of the data task } } Column busColumn = new Column(dataColumn, busTasks); busColumns.Add(busColumn.getKey(), busColumn); } } busBoard = new Board(dataBoard, busColumns); boards.Add(busBoard); } } User busUser = new User(dataUser, busBoard); users.Add(busUser.getEmail(), busUser); } foreach (var user in users) { if (user.Value.getBoard() == null) //A user that is not a board creator { foreach (var board in boards) { if (board.getBoardId() == user.Value.getBoardId()) { user.Value.setBoard(board); //board is not null board.addAssignedUser(user.Value.getEmail()); } } } } bc.loadData(users); //Loading all Boards to BoardController } }