Example #1
0
        /// <summary>
        /// Sets the invitee view model for property owners
        /// Property owner's tennants and requisitions not yet declined should be
        /// sent back as invitees
        /// </summary>
        /// <param name="unitOfWork"></param>
        /// <param name="userId"></param>
        /// <param name="invitees"></param>
        private void setInviteeVMForPO(UnitOfWork unitOfWork, Guid userId, List <InviteeViewModel> invitees)
        {
            var owner        = unitOfWork.Owner.GetOwnerByUserID(userId);
            var tennants     = unitOfWork.Tennant.GetTennantsByOwnerId(owner.ID);
            var requisitions = unitOfWork.PropertyRequisition.GetRequestsByOwnerId(owner.ID);

            //populate invitee model with each ienumerable items
            foreach (var tennant in tennants)
            {
                InviteeViewModel inviteeViewModel = new InviteeViewModel()
                {
                    UserID      = tennant.User.ID,
                    FullName    = tennant.User.FirstName + " " + tennant.User.LastName,
                    ImageUrl    = tennant.PhotoUrl,
                    inviteeType = EFPConstants.UserType.Tennant
                };

                invitees.Add(inviteeViewModel);
            }

            foreach (var req in requisitions)
            {
                InviteeViewModel inviteeViewModel = new InviteeViewModel()
                {
                    UserID      = req.User.ID,
                    FullName    = req.User.FirstName + " " + req.User.LastName,
                    ImageUrl    = "",
                    inviteeType = "R"
                };

                invitees.Add(inviteeViewModel);
            }
        }
Example #2
0
        /// <summary>
        /// Sets the invitee view model for users who currently requested propeties
        /// </summary>
        /// <param name="unitOfWork"></param>
        /// <param name="userId"></param>
        /// <param name="invitees"></param>
        private void setInviteeVMForPropertyRequestors(UnitOfWork unitOfWork, Guid userId, List <InviteeViewModel> invitees)
        {
            var requisitions = unitOfWork.PropertyRequisition.GetRequestsMadeByUserId(userId);

            foreach (var req in requisitions)
            {
                InviteeViewModel inviteeViewModel = new InviteeViewModel()
                {
                    UserID      = req.Property.Owner.UserID,
                    FullName    = req.Property.Owner.User.FirstName + " " + req.Property.Owner.User.LastName,
                    ImageUrl    = "",
                    inviteeType = "R"
                };

                invitees.Add(inviteeViewModel);
            }
        }
Example #3
0
        /// <summary>
        /// Sets the invitee view model for tennants
        /// property owner and other tennants belonging to the same property
        /// should be sent back as invitees
        /// </summary>
        /// <param name="unitOfWork"></param>
        /// <param name="userId"></param>
        /// <param name="invitees"></param>
        private void setInviteeVMForTennant(UnitOfWork unitOfWork, Guid userId, List <InviteeViewModel> invitees)
        {
            var tennant = unitOfWork.Tennant.GetTennantByUserId(userId);
            var poUser  = tennant.Property.Owner.User;

            //getting all tennants that are in the same property
            var currentPropertyId = tennant.PropertyID;
            var tennants          = unitOfWork.Tennant.GetTennantsByPropertyId(currentPropertyId);

            InviteeViewModel inviteeViewModel = new InviteeViewModel()
            {
                UserID      = poUser.ID,
                FullName    = poUser.FirstName + " " + poUser.LastName,
                ImageUrl    = "",
                inviteeType = "O"
            };

            invitees.Add(inviteeViewModel);

            foreach (var t in tennants)
            {
                //exclude current signed in tennant from being populated
                if (!t.ID.Equals(tennant.ID))
                {
                    inviteeViewModel = new InviteeViewModel()
                    {
                        UserID      = tennant.User.ID,
                        FullName    = tennant.User.FirstName + " " + tennant.User.LastName,
                        ImageUrl    = tennant.PhotoUrl,
                        inviteeType = EFPConstants.UserType.Tennant
                    };

                    invitees.Add(inviteeViewModel);
                }
            }
        }