public ActionResult RequestForm(string FirstName, string LastName, string Phone, string Apartment, int?UnitNum, string Explain, bool?Permission, DateTime?Timestamps)
        {
            if (FirstName == null || LastName == null || Phone == null || Apartment == null || Explain == null)
            {
                ViewBag.Blank = true;
            }
            else
            {
                ViewBag.Blank = false;
            }

            if (ViewBag.Blank == false)
            {
                Tennant NewTennant = new Tennant();
                NewTennant.FirstName  = FirstName;
                NewTennant.LastName   = LastName;
                NewTennant.Phone      = Phone;
                NewTennant.Apartment  = Apartment;
                NewTennant.UnitNum    = UnitNum ?? default(int);
                NewTennant.Explain    = Explain;
                NewTennant.Permission = Convert.ToInt32(Permission ?? default(bool));
                NewTennant.Timestamps = DateTime.Now;

                ViewBag.NewTennant = NewTennant;
                database.Tennants.Add(NewTennant);
                database.SaveChanges();

                return(RedirectToAction("DisplayList"));
            }

            return(View());
        }
Example #2
0
    public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        Tennant  tennant  = values[0] as Tennant;
        Property property = values[1] as Property;

        return(property.hasTennant(tennant));
    }
        private List <Tennant> GetTennatsFromName(string customerName)
        {
            List <Tennant> tenants = new List <Tennant>();

            int start = 0;
            int end   = 0;

            do
            {
                start = customerName.IndexOf('[', start + 1);
                end   = customerName.IndexOf(']', end + 1);

                var tenant = new Tennant()
                {
                    FullName    = customerName.Substring(start + 1, (end - start) - 11).ToUpper().Trim(),
                    DateOfBirth = Convert.ToDateTime(customerName.Substring(end - 10, 10))
                };

                var names = tenant.FullName.Split(' ').Where(x => !string.IsNullOrWhiteSpace(x)).ToList();

                tenant.FirstName  = names.First().ToUpper().Trim();
                tenant.LastName   = names.Last().ToUpper().Trim();
                tenant.MiddleName = names.Count > 2 ? names[1].ToUpper().Trim() : string.Empty;

                tenants.Add(tenant);
            } while (customerName.IndexOf('[', end + 1) > 0);

            return(tenants);
        }
Example #4
0
        public async Task <IActionResult> Edit(int id, [Bind("TennantId,FirstName,LastName,Address")] Tennant tennant)
        {
            if (id != tennant.TennantId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(tennant);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!TennantExists(tennant.TennantId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            return(View(tennant));
        }
        public async Task <IActionResult> Edit(int id, [Bind("TennantID,IdentityUserId,Name,EmailAddress,Address,State,City,PhoneNumber")] Tennant tennant)
        {
            if (id != tennant.TennantID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(tennant);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!TennantExists(tennant.TennantID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdentityUserId"] = new SelectList(_context.Users, "Id", "Id", tennant.IdentityUserId);
            return(View(tennant));
        }
        /// <summary>
        /// Enrolls tennant by the requisition functionality
        /// </summary>
        /// <param name="unitOfWork"></param>
        /// <param name="model"></param>
        private void EnrollTennantByRequisition(UnitOfWork unitOfWork, EnrolmentViewModel model)
        {
            var requisition = unitOfWork.PropertyRequisition.Get(model.ReqID);

            bool isAccepted = requisition.IsAccepted.HasValue ? requisition.IsAccepted.Value : false;

            if (isAccepted)
            {
                string enrolKey = unitOfWork.Property.GetEnrolmentKeyByPropID(model.PropertyID);

                if (enrolKey.Equals(model.EnrolmentKey))
                {
                    PropertyHelper.createRolesIfNotExist();

                    var user     = requisition.User;
                    var property = requisition.Property;
                    //assigning user as tennant if he/she isn't
                    var  userTypes     = unitOfWork.UserTypeAssoc.GetUserTypesByUserID(user.ID);
                    bool isUserTennant = PropertyHelper.isUserOfType(userTypes, EFPConstants.UserType.Tennant);

                    if (!isUserTennant)
                    {
                        PropertyHelper.associateUserWithUserType(unitOfWork, user.ID, EFPConstants.UserType.Tennant);
                    }

                    Tennant tennant = new Tennant()
                    {
                        ID                  = Guid.NewGuid(),
                        UserID              = user.ID,
                        PropertyID          = model.PropertyID,
                        RentAmt             = property.Price,
                        SettlementPeriod    = model.SettlementPeriod,
                        InstitutionName     = model.InstitutionName,
                        ProgrammeName       = model.ProgrammeName,
                        ProgrammeStartDate  = DateTime.ParseExact(model.ProgrammeStartDate, "MM/dd/yyyy", CultureInfo.InvariantCulture),
                        ProgrammeEndDate    = DateTime.ParseExact(model.ProgrammeEndDate, "MM/dd/yyyy", CultureInfo.InvariantCulture),
                        PhotoUrl            = null,
                        ReferencedLetterURL = null,
                        DateTCreated        = DateTime.Now
                    };

                    user.DOB = DateTime.ParseExact(model.DOB, "MM/dd/yyyy", CultureInfo.InvariantCulture);

                    unitOfWork.Tennant.Add(tennant);
                }
                else
                {
                    throw new Exception("Enrolment key does not match the property being requested");
                }
            }
            else
            {
                throw new Exception("Requistion was not accepted by the property owner");
            }
        }
Example #7
0
        public async Task <IActionResult> Create([Bind("TennantId,FirstName,LastName,Address")] Tennant tennant)
        {
            if (ModelState.IsValid)
            {
                _context.Add(tennant);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            return(View(tennant));
        }
Example #8
0
        public async Task <IActionResult> Create(Tennant tennant)
        {
            if (ModelState.IsValid)
            {
                _context.Add(tennant);
                await _context.SaveChangesAsync();

                return(RedirectToAction("IndexCount"));
            }
            return(View(tennant));
        }
        public ActionResult DeleteConfirmed(int id)
        {
            //find the entry in the db
            Tennant tennant = db.Tennants.Find(id);

            //Stage the delete the entry from the db
            db.Tennants.Remove(tennant);
            //save the change in the db
            db.SaveChanges();
            //redirect back to the formlist get request
            return(RedirectToAction("FormsList"));
        }
        public async Task <IActionResult> Create([Bind("TennantID,IdentityUserId,Name,EmailAddress,Address,State,City,PhoneNumber")] Tennant tennant)
        {
            if (ModelState.IsValid)
            {
                _context.Add(tennant);
                await _context.SaveChangesAsync();

                return(RedirectToAction(nameof(Index)));
            }
            ViewData["IdentityUserId"] = new SelectList(_context.Users, "Id", "Id", tennant.IdentityUserId);
            return(View(tennant));
        }
 public ActionResult Create([Bind(Include = "ID,FirstName,LastName,PhoneNumber,ApartmentName,UnitNumber,TextBox,CheckBox,VerifiedDate")] Tennant tennant)
 {
     //if form has been completed correctly and submitted
     if (ModelState.IsValid)
     {
         //access db and insert/stage new tennant data
         db.Tennants.Add(tennant);
         //save the db
         db.SaveChanges();
         //get request to take the user to the formlist view
         return(RedirectToAction("FormsList"));
     }
     //if form was not filled out correctly, return to the create page keeping current data
     return(View(tennant));
 }
        //delete request/view to remove a form
        public ActionResult Delete(int?id)
        {
            //check to make sure that we didn't get to the delete page without having an entry to delete
            if (id == null)
            {
                //return http status code
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            //else find the requested delete in the database and display it for confirmation
            Tennant tennant = db.Tennants.Find(id);

            if (tennant == null)
            {
                return(HttpNotFound());
            }
            return(View(tennant));
        }
        /// <summary>
        /// Enrolls a new user tennant and account for the user
        /// </summary>
        /// <param name="unitOfWork"></param>
        /// <param name="model"></param>
        private void EnrollNewTennant(UnitOfWork unitOfWork, EnrolmentViewModel model)
        {
            string enrolKey = unitOfWork.Property.GetEnrolmentKeyByPropID(model.PropertyID);

            if (enrolKey.Equals(model.EnrolmentKey))
            {
                var user = PropertyHelper.createUser(unitOfWork, EFPConstants.UserType.Tennant, "", model.Email, model.FirstName,
                                                     model.LastName, model.CellNum, DateTime.Parse(model.DOB));

                PropertyHelper.createUserAccount(unitOfWork, EFPConstants.UserType.Tennant, model.Password);

                var propertyPrice = unitOfWork.Property.Get(model.PropertyID).Price;

                Tennant tennant = new Tennant()
                {
                    ID                  = Guid.NewGuid(),
                    UserID              = user.ID,
                    PropertyID          = model.PropertyID,
                    RentAmt             = propertyPrice,
                    SettlementPeriod    = model.SettlementPeriod,
                    InstitutionName     = model.InstitutionName,
                    ProgrammeName       = model.ProgrammeName,
                    ProgrammeStartDate  = DateTime.Parse(model.ProgrammeEndDate),
                    ProgrammeEndDate    = DateTime.Parse(model.ProgrammeEndDate),
                    PhotoUrl            = null,
                    ReferencedLetterURL = null,
                    DateTCreated        = DateTime.Now
                };

                unitOfWork.Tennant.Add(tennant);
            }
            else
            {
                throw new Exception("Enrolment key does not match the property being requested");
            }
        }
Example #14
0
 public async Task <IActionResult> Edit(Tennant tennant)
 {
     if (ModelState.IsValid)
     {
         try
         {
             _context.Update(tennant);
             await _context.SaveChangesAsync();
         }
         catch (DbUpdateConcurrencyException)
         {
             if (!TennantExists(tennant.TennantID))
             {
                 return(NotFound());
             }
             else
             {
                 throw;
             }
         }
         return(RedirectToAction("IndexCount"));
     }
     return(View(tennant));
 }
Example #15
0
 public int GetZoneId(Tennant <PortalSettings> tennant) => GetZoneId(tennant.Settings.PortalId);