public MemberBLL GetMember(MemberBLL member) { using (SqlConnection conn = CreateConnection()) { try { SqlCommand cmd = new SqlCommand("appSchema.uspGetMember", conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add("@SSN", SqlDbType.VarChar, 12).Value = member.SSN; conn.Open(); using (SqlDataReader reader = cmd.ExecuteReader()) { if (reader.Read()) { int FirstNameIndex = reader.GetOrdinal("FirstName"); int LastNameIndex = reader.GetOrdinal("LastName"); int MemberIdIndex = reader.GetOrdinal("MemberId"); member.FirstName = reader.GetString(FirstNameIndex); member.LastName = reader.GetString(LastNameIndex); member.MemberId = reader.GetInt32(MemberIdIndex); return member; } } return null; } catch { throw new ApplicationException("An error occured while getting a member from the database."); } } }
public MemberDetailsBLL(MemberBLL member) { MemberId = member.MemberId; SSN = member.SSN; FirstName = member.FirstName; LastName = member.LastName; }
public void ShowMember(MemberBLL member) { Console.WriteLine("SSN: " + member.SSN); Console.WriteLine("First name: " + member.FirstName); Console.WriteLine("Last name: " + member.LastName); Console.WriteLine("Member Id: " + member.MemberId); }
public MemberBLL CreateMemberMenu(MemberBLL member) { Boolean done = false; string fName = Menu.ReadLine("First name: "); string lName = Menu.ReadLine("Last name: "); string SSN = ""; while (!done) { SSN = Menu.ReadLine("SSN (YYYYMMDDnnnn): "); if (SSN.Length < 12) { Console.Write("SSN has to be 12 characters long and in the format YYYYMMDDnnnn"); } else { done = true; } } member.FirstName = fName; member.LastName = lName; member.SSN = SSN; return member; }
// Member part public MemberBLL GetMember(MemberBLL member) { return MemberDAL.GetMember(member); }
public void start() { _1DV607_WS2.View.Menu.UserAction menuChoice; do { menuChoice = this.menu.mainMenu(); switch (menuChoice) { case _1DV607_WS2.View.Menu.UserAction.EndSession : { return; } case _1DV607_WS2.View.Menu.UserAction.CreateMember: { MemberBLL member = new MemberBLL(); member = this.menu.CreateMemberMenu(member); SaveMember(member); this.menu.MemberCreatedMenu(member); break; } case _1DV607_WS2.View.Menu.UserAction.UpdateMember: { string SSN = this.menu.GetMemberMenu(); MemberBLL member = new MemberBLL(); member.SSN = SSN; member = GetMember(member); if (member != null) { member = this.menu.UpdateMemberMenu(member); SaveMember(member); member = GetMember(member); this.menu.MemberUpdatedMenu(member); } else { MemberBLL voidMember = new MemberBLL(); voidMember.SSN = SSN; this.menu.MemberUpdatedMenu(voidMember, false); } break; } case _1DV607_WS2.View.Menu.UserAction.ViewMember: { string SSN = this.menu.GetMemberMenu(); MemberBLL member = new MemberBLL(); member.SSN = SSN; member = GetMember(member); if (member != null) { this.menu.ShowMemberMenu(member); } else { MemberBLL voidMember = new MemberBLL(); voidMember.SSN = SSN; this.menu.ShowMemberMenu(voidMember, false); } break; } case _1DV607_WS2.View.Menu.UserAction.DeleteMember: { string SSN = this.menu.GetMemberMenu(); MemberBLL member = new MemberBLL(); member.SSN = SSN; member = GetMember(member); if (member != null) { DeleteMember(SSN); member = GetMember(member); if (member != null) this.menu.MemberDeletedMenu(SSN, false); else this.menu.MemberDeletedMenu(SSN); } else { MemberBLL voidMember = new MemberBLL(); voidMember.SSN = SSN; this.menu.ShowMemberMenu(voidMember, false); } break; } case _1DV607_WS2.View.Menu.UserAction.RegisterBoat: { string SSN = this.menu.GetMemberMenu(); BoatBLL boat = new BoatBLL(); MemberBLL member = new MemberBLL(); member.SSN = SSN; member = GetMember(member); if (member != null) { boat = this.menu.CreateBoatMenu(member.SSN, boat); SaveBoat(boat); this.menu.BoatCreatedMenu(boat); } else { this.menu.BoatCreatedMenu(null, false); } break; } case _1DV607_WS2.View.Menu.UserAction.UpdateBoat: { string SSN = this.menu.GetMemberMenu(); MemberBLL member = new MemberBLL(); member.SSN = SSN; member = GetMember(member); if (member != null) { IEnumerable<BoatBLL> boats; boats = GetBoats(member.SSN); BoatBLL boat = this.menu.SelectBoatMenu(boats); if (boat != null) { boat = this.menu.UpdateBoatMenu(boat); SaveBoat(boat); boat = GetBoat(boat); this.menu.BoatUpdatedMenu(boat); } else { BoatBLL voidBoat = new BoatBLL(); voidBoat.SSN = member.SSN; this.menu.BoatUpdatedMenu(voidBoat, false); } } else { MemberBLL voidMember = new MemberBLL(); voidMember.SSN = SSN; this.menu.ShowMemberMenu(voidMember, false); } break; } case _1DV607_WS2.View.Menu.UserAction.DeleteBoat: { string SSN = this.menu.GetMemberMenu(); MemberBLL member = new MemberBLL(); member.SSN = SSN; member = GetMember(member); if (member != null) { IEnumerable<BoatBLL> boats; BoatBLL boat = null; boats = GetBoats(member.SSN); if (boats.Count() != 0) { boat = this.menu.SelectBoatMenu(boats); } if (boat != null) { BoatBLL tempBoat = boat; DeleteBoat(boat.BoatId); boat = GetBoat(boat); if (boat != null) this.menu.BoatDeletedMenu(boat, false); else this.menu.BoatDeletedMenu(tempBoat); } else { BoatBLL voidBoat = new BoatBLL(); voidBoat.SSN = member.SSN; this.menu.BoatDeletedMenu(voidBoat, false); } } else { MemberBLL voidMember = new MemberBLL(); voidMember.SSN = SSN; this.menu.ShowMemberMenu(voidMember, false); } break; } case _1DV607_WS2.View.Menu.UserAction.ListMembers: { // IEnumerable<MemberBLL> members = GetMembers(); // IEnumerable<BoatBLL> boats = GetAllBoats(); IEnumerable<MemberDetailsBLL> memberDetails = GetMembersDetails(); this.menu.ShowMemberList(memberDetails); break; } case _1DV607_WS2.View.Menu.UserAction.ListMembersVerbose: { IEnumerable<MemberDetailsBLL> memberDetails = GetMembersDetails(); this.menu.ShowMemberListVerbose(memberDetails); break; } default: { Debug.Assert(true, "start(): forgot to extend switch case entries?"); break; }; } } while (true); }
public void SaveMember(MemberBLL member) { if (member == null || member.SSN == null) // more validations ?? { throw new Exception("member didn't validate correctly"); } MemberBLL oldMember = new MemberBLL(); oldMember.SSN = member.SSN; if (GetMember(oldMember) != null) { MemberDAL.UpdateMember(member); } else { MemberDAL.InsertMember(member); } }
public void UpdateMember(MemberBLL member) { using (SqlConnection conn = CreateConnection()) { try { SqlCommand cmd = new SqlCommand("appSchema.uspUpdateMember", conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add("@MemberId", SqlDbType.Int, 4).Value = member.MemberId; cmd.Parameters.Add("@FirstName", SqlDbType.VarChar, 50).Value = member.FirstName; cmd.Parameters.Add("@LastName", SqlDbType.VarChar, 50).Value = member.LastName; cmd.Parameters.Add("@SSN", SqlDbType.VarChar, 50).Value = member.SSN; conn.Open(); cmd.ExecuteNonQuery(); } catch { throw new ApplicationException("An error occured while updating member at the database"); } } }
public void InsertMember(MemberBLL member) { using (SqlConnection conn = CreateConnection()) { try { SqlCommand cmd = new SqlCommand("appSchema.uspInsertMember", conn); cmd.CommandType = CommandType.StoredProcedure; cmd.Parameters.Add("@FirstName", SqlDbType.VarChar, 25).Value = member.FirstName; cmd.Parameters.Add("@LastName", SqlDbType.VarChar, 50).Value = member.LastName; cmd.Parameters.Add("@SSN", SqlDbType.VarChar, 12).Value = member.SSN; cmd.Parameters.Add("@MemberId", SqlDbType.Int).Direction = ParameterDirection.Output; conn.Open(); cmd.ExecuteNonQuery(); member.MemberId = Convert.ToInt32(cmd.Parameters["@MemberId"].Value); } catch { throw new ApplicationException("An error occured while inserting a member into the database."); } } }
public MemberBLL UpdateMemberMenu(MemberBLL member) { Console.WriteLine("First name: " + member.FirstName); Console.WriteLine("Last name: " + member.LastName); Console.WriteLine("Just press ENTER for fields you don't want to change"); string fName = Menu.ReadLine("First name: ", false); string lName = Menu.ReadLine("Last name: ", false); if (fName != "") member.FirstName = fName; if (lName != "") member.LastName = lName; return member; }