コード例 #1
0
        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));
        }
コード例 #2
0
        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"));
        }