コード例 #1
0
        public static void sendMailUsingDBSettings(LeaveManagerContext database, string to, string subject, string body)
        {
            try
            {
                MailSettings ms = new MailSettings();
                ms = database.MailSettings.First();

                MailMessage message = new MailMessage();
                message.From = new MailAddress(ms.Username);
                message.To.Add(new MailAddress(to));
                message.IsBodyHtml   = true;
                message.BodyEncoding = Encoding.UTF8;
                message.Subject      = subject;
                message.Body         = body;

                using (var smtp = new SmtpClient())
                {
                    var credential = new NetworkCredential
                    {
                        UserName = ms.Username,
                        Password = ms.Password
                    };
                    smtp.UseDefaultCredentials = false;
                    smtp.Credentials           = credential;
                    smtp.Host      = ms.Host;
                    smtp.Port      = ms.Port;
                    smtp.EnableSsl = true;
                    smtp.Send(message);
                }
            }
            catch {
            }
        }
コード例 #2
0
        private void removeAllTables(LeaveManagerContext db)
        {
            foreach (var e in db.Employees)
            {
                db.Employees.Remove(e);
            }

            foreach (var e in db.EmployeeRoles)
            {
                db.EmployeeRoles.Remove(e);
            }

            foreach (var e in db.LeaveReasons)
            {
                db.LeaveReasons.Remove(e);
            }

            foreach (var e in db.RequestStatus)
            {
                db.RequestStatus.Remove(e);
            }
            foreach (var e in db.Roles)
            {
                db.Roles.Remove(e);
            }


            db.SaveChanges();
        }
コード例 #3
0
        public static LeaveRequestDescription getLatestDescription(LeaveRequestInfo lri, LeaveManagerContext db)
        {
            var q = from l in db.LeaveRequestDescription
                    where l.LeaveRequestInfo.LeaveRequestInfoID == lri.LeaveRequestInfoID
                    select l;

            var latest = q.OrderByDescending(i => i.CreateDate).First();

            return(latest);
        }
コード例 #4
0
        public static Dictionary <LeaveRequestInfo, LeaveRequestDescription> getAllLeaveRequests(LeaveManagerContext db)
        {
            Dictionary <LeaveRequestInfo, LeaveRequestDescription> leaveRequests = new Dictionary <LeaveRequestInfo, LeaveRequestDescription>();

            foreach (LeaveRequestInfo lri in db.LeaveRequestInfo)
            {
                LeaveRequestDescription latestDesc = getLatestDescription(lri, db);
                leaveRequests.Add(lri, latestDesc);
            }
            return(leaveRequests);
        }
コード例 #5
0
        private void populateDatabase(LeaveManagerContext db)
        {
            Employee e1 = new Employee {
                EmployeeFirstName = "Pera", EmployeeLastName = "Peric", EmployeeEmail = "*****@*****.**", PasswordHash = EmployeesController.getHashedPassword("pera"), CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            Employee e2 = new Employee {
                EmployeeFirstName = "Mitar", EmployeeLastName = "Mitric", EmployeeEmail = "*****@*****.**", PasswordHash = EmployeesController.getHashedPassword("mitar"), CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            Employee e3 = new Employee {
                EmployeeFirstName = "Zika", EmployeeLastName = "Zikic", EmployeeEmail = "*****@*****.**", PasswordHash = EmployeesController.getHashedPassword("zika"), CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            Employee e4 = new Employee {
                EmployeeFirstName = "Marina", EmployeeLastName = "Maric", EmployeeEmail = "*****@*****.**", PasswordHash = EmployeesController.getHashedPassword("marina"), CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            Employee e5 = new Employee {
                EmployeeFirstName = "Maja", EmployeeLastName = "Majic", EmployeeEmail = "*****@*****.**", PasswordHash = EmployeesController.getHashedPassword("maja"), CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            Employee e6 = new Employee {
                EmployeeFirstName = "Nikola", EmployeeLastName = "Nikolic", EmployeeEmail = "*****@*****.**", PasswordHash = EmployeesController.getHashedPassword("nikola"), CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            Employee e7 = new Employee {
                EmployeeFirstName = "Marko", EmployeeLastName = "Markovic", EmployeeEmail = "*****@*****.**", PasswordHash = EmployeesController.getHashedPassword("marko"), CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };

            db.Employees.AddOrUpdate(e1, e2, e3, e4, e5, e6, e7);

            Role r1 = new Role {
                RoleName = "Worker", CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            Role r2 = new Role {
                RoleName = "Delivery Manager", CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            Role r3 = new Role {
                RoleName = "Department Manager", CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            Role r4 = new Role {
                RoleName = "Super User", CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };

            db.Roles.AddOrUpdate(r1, r2, r3, r4);

            EmployeeRole er1 = new EmployeeRole {
                Employee = e1, Role = r1, CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            EmployeeRole er2 = new EmployeeRole {
                Employee = e2, Role = r1, CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            EmployeeRole er3 = new EmployeeRole {
                Employee = e2, Role = r2, CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            EmployeeRole er4 = new EmployeeRole {
                Employee = e3, Role = r2, CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            EmployeeRole er5 = new EmployeeRole {
                Employee = e4, Role = r1, CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            EmployeeRole er6 = new EmployeeRole {
                Employee = e5, Role = r1, CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            EmployeeRole er7 = new EmployeeRole {
                Employee = e6, Role = r3, CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            EmployeeRole er8 = new EmployeeRole {
                Employee = e7, Role = r4, CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };

            db.EmployeeRoles.AddOrUpdate(er1, er2, er3, er4, er5, er6, er7, er8);

            LeaveReason lr1 = new LeaveReason()
            {
                LeaveReasonName = "Holiday", CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            LeaveReason lr2 = new LeaveReason()
            {
                LeaveReasonName = "Sickness", CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            LeaveReason lr3 = new LeaveReason()
            {
                LeaveReasonName = "Other reasons", CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };

            db.LeaveReasons.AddOrUpdate(lr1, lr2, lr3);

            RequestStatus rs1 = new RequestStatus()
            {
                RequestStatusName = "Pending", CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            RequestStatus rs2 = new RequestStatus()
            {
                RequestStatusName = "Approved", CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };
            RequestStatus rs3 = new RequestStatus()
            {
                RequestStatusName = "Denied", CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };

            db.RequestStatus.AddOrUpdate(rs1, rs2, rs3);

            db.SaveChanges();
        }
コード例 #6
0
        protected override void Seed(LeaveManager.Models.LeaveManagerContext context)
        {
            //  This method will be called after migrating to the latest version.

            //  You can use the DbSet<T>.AddOrUpdate() helper extension method
            //  to avoid creating duplicate seed data. E.g.
            //
            //    context.People.AddOrUpdate(
            //      p => p.FullName,
            //      new Person { FullName = "Andrew Peters" },
            //      new Person { FullName = "Brice Lambson" },
            //      new Person { FullName = "Rowan Miller" }
            //    );
            //

            /*Employee e1 = new Employee { EmployeeID = 100, EmployeeFirstName = "Dzordz", EmployeeLastName = "Dzonson", EmployeeEmail = "*****@*****.**" };
             * Employee e2 = new Employee { EmployeeID = 101, EmployeeFirstName = "Beni", EmployeeLastName = "Benic", EmployeeEmail = "*****@*****.**"};
             *
             * Role r1 = new Role { RoleID = 100, RoleName = "TestRole1" };
             * Role r2 = new Role { RoleID = 101, RoleName = "TestRole2" };
             *
             * EmployeeRole er1 = new EmployeeRole {EmployeeRoleID = 100, Employee = e1, EmployeeID = e1.EmployeeID, Role = r1, RoleID = r1.RoleID};
             * EmployeeRole er2 = new EmployeeRole { EmployeeRoleID = 101, Employee = e1, EmployeeID = e1.EmployeeID, Role = r2, RoleID = r2.RoleID };
             *
             * LeaveReason lr1 = new LeaveReason { leaveReasonID = 101, LeaveReasonName = "sickness" };
             *
             *
             * var db = new LeaveManagerContext();
             *
             * db.Employees.AddOrUpdate(e1, e2);
             * db.Roles.AddOrUpdate(r1, r2);
             * db.EmployeeRoles.AddOrUpdate(er1);
             * db.SaveChanges();*/



            /*
             * LeaveReason lr1 = new LeaveReason { LeaveReasonName = "died one more time" };
             * RequestStatus rs1 = new RequestStatus { RequestStatusName = "pending" };
             * var db = new LeaveManagerContext();
             * db.LeaveReasons.Add(lr1);
             * db.RequestStatus.Add(rs1);
             * db.SaveChanges();*/


            //Remove All Tables

            //var db = new LeaveManagerContext();
            //removeAllTables(db);



            //Add data to database
            //var db = new LeaveManagerContext();
            //populateDatabase(db);

            // Initial Mail Settings
            var          db = new LeaveManagerContext();
            MailSettings ms = new MailSettings {
                Host = "smtp.gmail.com", Port = 25, Username = "******", Password = "******", CreateDate = DateTime.Now, UpdateDate = DateTime.Now
            };

            db.MailSettings.AddOrUpdate(ms);
            db.SaveChanges();
        }
コード例 #7
0
        private void populateDatabase(LeaveManagerContext db)
        {
            Employee e1 = new Employee {
                employeeFirstName = "Pera", employeeLastName = "Peric", employeeEmail = "*****@*****.**", passwordHash = EmployeesController.getHashedPassword("pera"), CreateDate = DateTime.Now
            };
            Employee e2 = new Employee {
                employeeFirstName = "Mitar", employeeLastName = "Mitric", employeeEmail = "*****@*****.**", passwordHash = EmployeesController.getHashedPassword("mitar"), CreateDate = DateTime.Now
            };
            Employee e3 = new Employee {
                employeeFirstName = "Zika", employeeLastName = "Zikic", employeeEmail = "*****@*****.**", passwordHash = EmployeesController.getHashedPassword("zika"), CreateDate = DateTime.Now
            };
            Employee e4 = new Employee {
                employeeFirstName = "Marina", employeeLastName = "Maric", employeeEmail = "*****@*****.**", passwordHash = EmployeesController.getHashedPassword("marina"), CreateDate = DateTime.Now
            };
            Employee e5 = new Employee {
                employeeFirstName = "Maja", employeeLastName = "Majic", employeeEmail = "*****@*****.**", passwordHash = EmployeesController.getHashedPassword("maja"), CreateDate = DateTime.Now
            };
            Employee e6 = new Employee {
                employeeFirstName = "Nikola", employeeLastName = "Nikolic", employeeEmail = "*****@*****.**", passwordHash = EmployeesController.getHashedPassword("nikola"), CreateDate = DateTime.Now
            };
            Employee e7 = new Employee {
                employeeFirstName = "Marko", employeeLastName = "Markovic", employeeEmail = "*****@*****.**", passwordHash = EmployeesController.getHashedPassword("marko"), CreateDate = DateTime.Now
            };

            db.Employees.AddOrUpdate(e1, e2, e3, e4, e5, e6, e7);

            Role r1 = new Role {
                roleName = "Worker", CreateDate = DateTime.Now
            };
            Role r2 = new Role {
                roleName = "Delivery Manager", CreateDate = DateTime.Now
            };
            Role r3 = new Role {
                roleName = "Department Manager", CreateDate = DateTime.Now
            };
            Role r4 = new Role {
                roleName = "Super User", CreateDate = DateTime.Now
            };

            db.Roles.AddOrUpdate(r1, r2, r3, r4);

            EmployeeRole er1 = new EmployeeRole {
                employee = e1, employeeID = e1.employeeID, role = r1, roleID = r1.roleID, CreateDate = DateTime.Now
            };
            EmployeeRole er2 = new EmployeeRole {
                employee = e2, employeeID = e2.employeeID, role = r1, roleID = r1.roleID, CreateDate = DateTime.Now
            };
            EmployeeRole er3 = new EmployeeRole {
                employee = e2, employeeID = e2.employeeID, role = r2, roleID = r2.roleID, CreateDate = DateTime.Now
            };
            EmployeeRole er4 = new EmployeeRole {
                employee = e3, employeeID = e3.employeeID, role = r2, roleID = r2.roleID, CreateDate = DateTime.Now
            };
            EmployeeRole er5 = new EmployeeRole {
                employee = e4, employeeID = e4.employeeID, role = r1, roleID = r1.roleID, CreateDate = DateTime.Now
            };
            EmployeeRole er6 = new EmployeeRole {
                employee = e5, employeeID = e1.employeeID, role = r1, roleID = r1.roleID, CreateDate = DateTime.Now
            };
            EmployeeRole er7 = new EmployeeRole {
                employee = e6, employeeID = e6.employeeID, role = r3, roleID = r3.roleID, CreateDate = DateTime.Now
            };
            EmployeeRole er8 = new EmployeeRole {
                employee = e7, employeeID = e7.employeeID, role = r4, roleID = r4.roleID, CreateDate = DateTime.Now
            };

            db.EmployeeRoles.AddOrUpdate(er1, er2, er3, er4, er5, er6, er7, er8);

            LeaveReason lr1 = new LeaveReason()
            {
                leaveReasonName = "Holiday", CreateDate = DateTime.Now
            };
            LeaveReason lr2 = new LeaveReason()
            {
                leaveReasonName = "Sickness", CreateDate = DateTime.Now
            };
            LeaveReason lr3 = new LeaveReason()
            {
                leaveReasonName = "Other reasons", CreateDate = DateTime.Now
            };

            db.LeaveReasons.AddOrUpdate(lr1, lr2, lr3);

            RequestStatus rs1 = new RequestStatus()
            {
                requestStatusName = "Pending", CreateDate = DateTime.Now
            };
            RequestStatus rs2 = new RequestStatus()
            {
                requestStatusName = "Approved", CreateDate = DateTime.Now
            };
            RequestStatus rs3 = new RequestStatus()
            {
                requestStatusName = "Denied", CreateDate = DateTime.Now
            };


            db.RequestStatus.AddOrUpdate(rs1, rs2, rs3);

            LeaveRequest leaveRequest1 = new LeaveRequest {
                allDayEvent     = true,
                deliveryManager = e3,

                deliveryManagerComment   = "",
                departmentManager        = e6,
                deliveryManagerStatus    = rs2,
                departmentManagerStatus  = rs1,
                departmentManagerComment = "",
                Description = "My wifes birthday",
                employee    = e1,
                endTime     = new DateTime(2012, 12, 12),
                leaveReason = lr1,
                startTime   = new DateTime(2012, 12, 22),
                CreateDate  = DateTime.Now
            };

            LeaveRequest leaveRequest2 = new LeaveRequest
            {
                allDayEvent             = true,
                deliveryManager         = e3,
                deliveryManagerStatus   = rs2,
                departmentManagerStatus = rs1,
                deliveryManagerComment  = "",
                departmentManager       = e6,

                departmentManagerComment = "",
                Description = "My wifes birthday",
                employee    = e1,
                endTime     = new DateTime(2012, 12, 12),
                leaveReason = lr1,
                startTime   = new DateTime(2012, 12, 22),
                CreateDate  = DateTime.Now
            };


            //db.LeaveRequests.AddOrUpdate(leaveRequest1,leaveRequest2);
            db.SaveChanges();
        }