public async Task <IActionResult> Create() { var user = (await this.db.Users.FirstOrDefaultAsync(e => e.UserID == Guid.Parse(HttpContext.Session.GetString("UserID")))); ViewData["UserMain"] = user; ViewData["KennelID"] = (await this.db.KennelUsers.FirstOrDefaultAsync(e => e.UserId == user.UserID)).KennelID; var BreederPageFields = db.BreederPageFields.Where(e => !e.isDeleted).Include(e => e.FieldType).ToList(); BreederMain BreederMain = new BreederMain(); BreederMain.BreederFieldsValues = new List <BreederFieldsValues>(); foreach (var item in BreederPageFields) { BreederMain.BreederFieldsValues.Add(new BreederFieldsValues { BreederFields = item, BreederFieldsID = item.FieldID }); } var Kennels = db.Kennels.Where(e => !e.isDeleted).OrderBy(e => e.KennelName).ToList(); Dictionary <Guid, string> kennels = new Dictionary <Guid, string>(); Kennels.ForEach(x => kennels.Add(x.KennelID, x.KennelName)); ViewData["Kennels"] = kennels; return(View("Create", BreederMain)); }
public IActionResult Save(BreederMain BreederDetails) { var NewBreeder = (BreederDetails.BreederId == Guid.Empty); if (BreederDetails != null) { db.Breeders.Update(BreederDetails); db.SaveChanges(); string RandomPass = Encryption.PasswordEncrypt.RandomString(8); UserMain user = new UserMain { Username = $"{BreederDetails.BreederFirstName}_{BreederDetails.BreederSurname}_breeder", Email = BreederDetails.EmailAddress, Firstname = BreederDetails.BreederFirstName, isBreeder = true, Cellnumber = BreederDetails.CellNumber, OrgStructureID = db.OrgStructures.FirstOrDefault(e => e.StructureName == "Breeder").StructureID, Password = new Encryption.PasswordEncrypt().GeneratePassword(RandomPass), UserPermission = new UserPermissions() }; if (NewBreeder) { db.Users.Add(user); db.SaveChanges(); BreederUser breederUser = new BreederUser { BreederId = BreederDetails.BreederId, UserId = user.UserID }; db.BreederUsers.Add(breederUser); db.SaveChanges(); emailHandler.SendEmail( ToAddresses: new List <string> { BreederDetails.EmailAddress }, Subject: $"Bully Assure: Breeder Successfully { (NewBreeder ? "Registered" : "Saved") }", Body: $"Good Day <br />" + $"<br /> " + $"<br /> {BreederDetails.BreederFirstName} has successfully been { (NewBreeder ? "registered" : "saved") } on Bully Assure system." + $"<br /> If you are not aware of this, please contact System Administrator on <a href=\"mailto:{JsonSerializer.Deserialize<SystemConfiguration>(HttpContext.Session.GetString("SYSTEMCONFIGURATION")).UserName}\">System Admin</a>." + $"<br /> " + $"<br /> Login Details: " + $"{ (NewBreeder ? "<br />" + "Username: "******"") }" + $"{ (NewBreeder ? "<br />" + "Password: "******"") }" + $"<br />" + $"<br /> Kind Regards," + $"<br /> <a href=\"{JsonSerializer.Deserialize<SystemConfiguration>(HttpContext.Session.GetString("SYSTEMCONFIGURATION")).WebsiteUrl}\">Bully Assure System</a>", AttachmentsBinaries: null, UserID: HttpContext.Session.GetString("UserID"), systemConfiguration: JsonSerializer.Deserialize <SystemConfiguration>(HttpContext.Session.GetString("SYSTEMCONFIGURATION")) ); } ViewData["Error"] = "Successfully saved Breeder details."; } else { ViewData["Error"] = "Failed to save Breeder details."; } return(RedirectToAction("Index", "Breeder")); }