public int AddKfcMember(int parentId, NewMember newMember) { using (var scope = new TransactionScope()) { var dbMember = new DataModel.Generated.Member() { FirstName = newMember.FirstName, LastName = newMember.LastName, DOB = newMember.DateOfBirth, Gender = newMember.Gender.ToString(), Phone = newMember.Phone, Email = newMember.Email, MemberOf = "KFC" }; _unitOfWork.MemberRepository.Insert(dbMember); _unitOfWork.Save(); var dbMemberMembership = new DataModel.Generated.MemberMembership() { MemberId = dbMember.MemberId, MemberOf = "KFC", StartDate = DateTime.Now.Date }; _unitOfWork.MemberMembershipRepository.Insert(dbMemberMembership); _unitOfWork.Save(); scope.Complete(); return(dbMember.MemberId); } }
public int AddKfcMember(int parentId, NewMember newMember) { using (var scope = new TransactionScope()) { var dbMember = new DataModel.Generated.Member() { FirstName = newMember.FirstName, LastName = newMember.LastName, DOB = newMember.DateOfBirth, Gender = newMember.Gender.ToString(), Phone = newMember.Phone, Email = newMember.Email, MemberOf = "KFC" }; _unitOfWork.MemberRepository.Insert(dbMember); _unitOfWork.Save(); var dbMemberMembership = new DataModel.Generated.MemberMembership() { MemberId = dbMember.MemberId, MemberOf = "KFC", StartDate = DateTime.Now.Date }; _unitOfWork.MemberMembershipRepository.Insert(dbMemberMembership); _unitOfWork.Save(); scope.Complete(); return dbMember.MemberId; } }
public void UpdateMemberOf(Member existingMember) { var success = false; if (existingMember != null) { using (var scope = new TransactionScope()) { var dbMember = _unitOfWork.MemberRepository.GetByID(existingMember.MemberId); if (dbMember != null) { var oldMemberOf = dbMember.MemberOf; dbMember.MemberOf = existingMember.MemberOf; _unitOfWork.MemberRepository.Update(dbMember); _unitOfWork.Save(); var dbMemberHistory = _unitOfWork.MemberMembershipRepository.Get( m => m.MemberId == existingMember.MemberId && m.MemberOf == oldMemberOf); if (dbMemberHistory != null) { dbMemberHistory.EndDate = DateTime.Now.Date; _unitOfWork.MemberMembershipRepository.Update(dbMemberHistory); _unitOfWork.Save(); } var dbMemberNewLog = _unitOfWork.MemberMembershipRepository.Get(m => m.MemberId == existingMember.MemberId && m.MemberOf == existingMember.MemberOf); if (dbMemberNewLog == null) { var newMemberHistory = new DataModel.Generated.MemberMembership { MemberId = existingMember.MemberId, StartDate = DateTime.Now.Date, MemberOf = existingMember.MemberOf }; _unitOfWork.MemberMembershipRepository.Insert(newMemberHistory); _unitOfWork.Save(); } //TODO: Insert new member history //TODO: Add record in history table scope.Complete(); success = true; } } } //return success; }