//
        // GET: /User/Contact/

        public ActionResult Index()
        {
            object          id = Session["employee_id"];
            Employeecontact employee_contact = EmployeecontactHelper.Find(id);

            return(View(employee_contact));
        }
        public async Task <JsonResult> Update(FormCollection fc)
        {
            ISession se = NHibernateHelper.CurrentSession;

            object          id = Session["employee_id"];
            Employeecontact oc = EmployeecontactHelper.Find(id);

            Employee o = se.Get <Employee>(id);

            oc = EmployeecontactHelper.GetObject(o, fc);

            Dictionary <string, object> err = oc.IsValid();

            if (err != null)
            {
                return(Json(err, JsonRequestBehavior.AllowGet));
            }

            await Task.Run(() =>
            {
                using (ITransaction tx = se.BeginTransaction())
                {
                    se.SaveOrUpdate(oc);
                    tx.Commit();
                }
            });

            return(Json(new Dictionary <string, object>
            {
                { "success", 1 },
                { "message", "Contact Details was successfully updated." }
            },
                        JsonRequestBehavior.AllowGet));
        }
        public async Task <ActionResult> Edit(Guid id)
        {
            ISession se = NHibernateHelper.CurrentSession;
            Employee o  = await Task.Run(() => { return(se.Get <Employee>(id)); });

            Employeecontact       oc  = o.Employeecontact;
            Employeejob           oej = o.Employeejob;
            Employeesalary        osa = o.Employeesalary;
            Employeequalification oq  = o.Employeequalification;

            EmployeeView e = new EmployeeView
            {
                Employee              = o,
                Employeecontact       = oc == null ? new Employeecontact() : oc,
                Employeejob           = oej == null ? new Employeejob() : oej,
                Employeesalary        = osa == null ? new Employeesalary() : osa,
                Employeequalification = oq == null ? new Employeequalification() : oq
            };

            ViewBag.form_id = "edit-form";
            ViewBag.users   = se.QueryOver <Domain.Model.User>()
                              .OrderBy(x => x.Username).Asc.List();
            ViewBag.designations = se.QueryOver <Designation>()
                                   .OrderBy(x => x.Title).Asc.List();
            ViewBag.employment_statuses = se.QueryOver <Employmentstatus>()
                                          .OrderBy(x => x.Name).Asc.List();
            ViewBag.job_categories = se.QueryOver <Jobcategory>()
                                     .OrderBy(x => x.Name).Asc.List();
            ViewBag.departments = se.QueryOver <Department>()
                                  .OrderBy(x => x.Name).Asc.List();

            return(View("_form", e));
        }
        public static Employeecontact Find(object id)
        {
            Employeecontact o = null;

            ISession se = NHibernateHelper.CurrentSession;

            o = se.Get <Employeecontact>(id);

            if (o == null)
            {
                o = new Employeecontact();
            }

            return(o);
        }
        public static Employeecontact GetObject(Employee e, FormCollection fc)
        {
            Employeecontact o = e.Employeecontact;

            if (o == null)
            {
                o    = new Employeecontact();
                o.Id = e.Id;
            }

            o.Address1    = GetParam("address_1", fc);
            o.Address2    = GetParam("address_2", fc);
            o.Address3    = GetParam("address_3", fc);
            o.City        = GetParam("city", fc);
            o.State       = GetParam("state", fc);
            o.Postcode    = GetParam("postcode", fc);
            o.Country     = GetParam("country", fc);
            o.Homephone   = GetParam("home_phone", fc);
            o.Mobilephone = GetParam("mobile_phone", fc);
            o.Workemail   = GetParam("work_email", fc);
            o.Otheremail  = GetParam("other_email", fc);

            return(o);
        }
Exemple #6
0
        private static async Task CreateSeed(ISessionFactory s)
        {
            using (ISession se = s.OpenSession())
            {
                using (ITransaction tx = se.BeginTransaction())
                {
                    User a = new User {
                        Username = "******", Password = "******", Role = 1, Status = true
                    };
                    a.EncryptPassword();
                    se.SaveOrUpdate(a);

                    a = new User {
                        Username = "******", Password = "******", Role = 2, Status = true
                    };
                    a.EncryptPassword();
                    se.SaveOrUpdate(a);

                    Employee o = new Employee
                    {
                        Staffid       = "S0001",
                        Firstname     = "Ben",
                        Lastname      = "Ng",
                        Newic         = "77665544",
                        Gender        = "M",
                        Maritalstatus = "S",
                        Nationality   = "Malaysian",
                        Dob           = new DateTime(1988, 6, 5),
                        Placeofbirth  = "PJ",
                        Race          = "Chinese",
                        Isbumi        = false,
                        User          = a
                    };
                    se.SaveOrUpdate(o);

                    Employeecontact ect = new Employeecontact
                    {
                        Id          = o.Id,
                        Address1    = "No. 6, Jalan Awan Kecil 1",
                        Address2    = "Taman OUG",
                        Address3    = "Off Jalan Klang Lama",
                        City        = "KL",
                        State       = "WP",
                        Postcode    = "58200",
                        Country     = "Malaysia",
                        Homephone   = "88098776",
                        Mobilephone = "77609887",
                        Workemail   = "*****@*****.**",
                        Otheremail  = "*****@*****.**",
                    };
                    se.SaveOrUpdate(ect);

                    await CreateListAttendance(se, o.Staffid, o);

                    Employeesalary es = new Employeesalary
                    {
                        Id          = o.Id,
                        Salary      = 0,
                        Allowance   = 45,
                        Epf         = 278,
                        Socso       = 46,
                        Incometax   = 57,
                        Bankname    = "RHB",
                        Bankaccno   = "5509800076",
                        Bankacctype = "Savings",
                        Bankaddress = "Jalan Awan Besar",
                        Epfno       = "443987542",
                        Socsono     = "8876908539",
                        Incometaxno = "439877055",
                        Paytype     = 2
                    };
                    se.SaveOrUpdate(es);

                    Designation des = new Designation {
                        Title = "Software Developer"
                    };
                    se.SaveOrUpdate(des);

                    Department dept = new Department {
                        Name = "R&D"
                    };
                    se.SaveOrUpdate(dept);

                    Jobcategory jobcat = new Jobcategory {
                        Name = "Software Development"
                    };
                    se.SaveOrUpdate(jobcat);

                    Employmentstatus empstat = new Employmentstatus {
                        Name = "Probation"
                    };
                    se.SaveOrUpdate(empstat);

                    empstat = new Employmentstatus {
                        Name = "Confirmed"
                    };
                    se.SaveOrUpdate(empstat);

                    Employeejob empjob = new Employeejob
                    {
                        Id               = o.Id,
                        Designation      = des,
                        Department       = dept,
                        Employmentstatus = empstat,
                        Jobcategory      = jobcat,
                        Joindate         = new DateTime(2000, 1, 1),
                        Confirmdate      = new DateTime(2000, 3, 1)
                    };
                    se.SaveOrUpdate(empjob);

                    //

                    a = new User {
                        Username = "******", Password = "******", Role = 2, Status = true
                    };
                    a.EncryptPassword();
                    se.SaveOrUpdate(a);

                    o = new Employee
                    {
                        Staffid       = "S0002",
                        Firstname     = "Ken",
                        Lastname      = "Lee",
                        Newic         = "785400",
                        Gender        = "M",
                        Maritalstatus = "S",
                        Nationality   = "Malaysian",
                        Dob           = new DateTime(1986, 6, 5),
                        Placeofbirth  = "PJ",
                        Race          = "Chinese",
                        Isbumi        = false,
                        User          = a
                    };
                    se.SaveOrUpdate(o);

                    ect = new Employeecontact
                    {
                        Id          = o.Id,
                        Address1    = "No. 7, Jalan Putra 1",
                        Address2    = "Taman Pinang",
                        Address3    = "Off Jalan Putra Perdana",
                        City        = "KL",
                        State       = "WP",
                        Postcode    = "59200",
                        Country     = "Malaysia",
                        Homephone   = "88028776",
                        Mobilephone = "77659887",
                        Workemail   = "*****@*****.**",
                        Otheremail  = "*****@*****.**"
                    };
                    se.SaveOrUpdate(ect);

                    await CreateListAttendance(se, o.Staffid, o);

                    es = new Employeesalary
                    {
                        Id          = o.Id,
                        Salary      = 0,
                        Allowance   = 55,
                        Epf         = 298,
                        Socso       = 65,
                        Incometax   = 95,
                        Bankname    = "RHB",
                        Bankaccno   = "5509800077",
                        Bankacctype = "Savings",
                        Bankaddress = "Jalan Awan Besar",
                        Epfno       = "443987548",
                        Socsono     = "8878908539",
                        Incometaxno = "439899055",
                        Paytype     = 2
                    };
                    se.SaveOrUpdate(es);

                    des = new Designation {
                        Title = "Account Executive"
                    };
                    se.SaveOrUpdate(des);

                    dept = new Department {
                        Name = "Admin"
                    };
                    se.SaveOrUpdate(dept);

                    jobcat = new Jobcategory {
                        Name = "Administration"
                    };
                    se.SaveOrUpdate(jobcat);

                    empjob = new Employeejob
                    {
                        Id               = o.Id,
                        Designation      = des,
                        Department       = dept,
                        Employmentstatus = empstat,
                        Jobcategory      = jobcat,
                        Joindate         = new DateTime(2000, 2, 1),
                        Confirmdate      = new DateTime(2000, 4, 1)
                    };
                    se.SaveOrUpdate(empjob);

                    //

                    a = new User {
                        Username = "******", Password = "******", Role = 2, Status = true
                    };
                    a.EncryptPassword();
                    se.SaveOrUpdate(a);

                    o = new Employee
                    {
                        Staffid       = "S0003",
                        Firstname     = "Steve",
                        Lastname      = "Yap",
                        Newic         = "65098765",
                        Gender        = "M",
                        Maritalstatus = "S",
                        Nationality   = "Malaysian",
                        Dob           = new DateTime(1974, 6, 5),
                        Placeofbirth  = "PJ",
                        Race          = "Chinese",
                        Isbumi        = false,
                        User          = a
                    };
                    se.SaveOrUpdate(o);

                    ect = new Employeecontact
                    {
                        Id          = o.Id,
                        Address1    = "No. 5, Jalan Bukit Bintang",
                        Address2    = "Taman Bintang",
                        Address3    = "Off Jalan Bukit",
                        City        = "KL",
                        State       = "WP",
                        Postcode    = "57200",
                        Country     = "Malaysia",
                        Homephone   = "88798776",
                        Mobilephone = "79609887",
                        Workemail   = "*****@*****.**",
                        Otheremail  = "*****@*****.**"
                    };
                    se.SaveOrUpdate(ect);

                    await CreateListAttendance(se, o.Staffid, o);

                    es = new Employeesalary
                    {
                        Id          = o.Id,
                        Salary      = 0,
                        Allowance   = 55,
                        Epf         = 300,
                        Socso       = 62,
                        Incometax   = 48,
                        Bankname    = "RHB",
                        Bankaccno   = "5509100076",
                        Bankacctype = "Savings",
                        Bankaddress = "Jalan Awan Besar",
                        Epfno       = "473987542",
                        Socsono     = "8879908539",
                        Incometaxno = "439817055",
                        Paytype     = 2
                    };
                    se.SaveOrUpdate(es);

                    des = new Designation {
                        Title = "Sales Executive"
                    };
                    se.SaveOrUpdate(des);

                    dept = new Department {
                        Name = "Sales"
                    };
                    se.SaveOrUpdate(dept);

                    jobcat = new Jobcategory {
                        Name = "Sales"
                    };
                    se.SaveOrUpdate(jobcat);

                    empjob = new Employeejob
                    {
                        Id               = o.Id,
                        Designation      = des,
                        Department       = dept,
                        Employmentstatus = empstat,
                        Jobcategory      = jobcat,
                        Joindate         = new DateTime(2000, 3, 1),
                        Confirmdate      = new DateTime(2000, 5, 1)
                    };
                    se.SaveOrUpdate(empjob);

                    await CreatePayRate(se, "S0001");
                    await CreatePayRate(se, "S0002");
                    await CreatePayRate(se, "S0003");

                    //

                    a = new User {
                        Username = "******", Password = "******", Role = 2, Status = true
                    };
                    a.EncryptPassword();
                    se.SaveOrUpdate(a);

                    o = new Employee
                    {
                        Staffid       = "S0004",
                        Firstname     = "Kelly",
                        Lastname      = "Yap",
                        Newic         = "55441122",
                        Gender        = "F",
                        Maritalstatus = "S",
                        Nationality   = "Malaysian",
                        Dob           = new DateTime(1979, 6, 5),
                        Placeofbirth  = "KL",
                        Race          = "Chinese",
                        Isbumi        = false,
                        User          = a
                    };
                    se.SaveOrUpdate(o);

                    ect = new Employeecontact
                    {
                        Id          = o.Id,
                        Address1    = "No. 2, Jalan Kerinchi 5",
                        Address2    = "Taman Bukit Kerinchi",
                        Address3    = "Off Jalan Kerinchi Besar",
                        City        = "KL",
                        State       = "WP",
                        Postcode    = "56200",
                        Country     = "Malaysia",
                        Homephone   = "88098476",
                        Mobilephone = "77609187",
                        Workemail   = "*****@*****.**",
                        Otheremail  = "*****@*****.**"
                    };
                    se.SaveOrUpdate(ect);

                    await CreateListAttendance(se, o.Staffid, o);

                    Random r = new Random();

                    es = new Employeesalary
                    {
                        Id          = o.Id,
                        Salary      = r.Next(2500, 3000),
                        Allowance   = r.Next(60, 100),
                        Epf         = r.Next(100, 200),
                        Socso       = r.Next(90, 100),
                        Incometax   = r.Next(100, 200),
                        Bankname    = "RHB",
                        Bankaccno   = "667743290",
                        Bankacctype = "Savings",
                        Bankaddress = "Jalan Pinang",
                        Epfno       = "59876000",
                        Socsono     = "76545",
                        Incometaxno = "ASD965777",
                        Paytype     = 1
                    };
                    se.SaveOrUpdate(es);

                    des = new Designation {
                        Title = "Marketing Executive"
                    };
                    se.SaveOrUpdate(des);

                    dept = new Department {
                        Name = "Marketing"
                    };
                    se.SaveOrUpdate(dept);

                    jobcat = new Jobcategory {
                        Name = "Marketing"
                    };
                    se.SaveOrUpdate(jobcat);

                    empjob = new Employeejob
                    {
                        Id               = o.Id,
                        Designation      = des,
                        Department       = dept,
                        Employmentstatus = empstat,
                        Jobcategory      = jobcat,
                        Joindate         = new DateTime(2000, 1, 1),
                        Confirmdate      = new DateTime(2000, 3, 1)
                    };
                    se.SaveOrUpdate(empjob);

                    await CreateOvertimeRate(se);
                    await CreateSalaryAdj(se, o.Staffid);

                    tx.Commit();
                }
            }
        }
        public async Task <JsonResult> Update(Guid id, FormCollection fc)
        {
            ISession se = NHibernateHelper.CurrentSession;

            Employee o = await Task.Run(() => { return(se.Get <Employee>(id)); });

            o = await EmployeeHelper.GetObject(se, o, fc);

            Employeecontact       oc  = EmployeecontactHelper.GetObject(o, fc);
            Employeejob           oej = await EmployeejobHelper.GetObject(se, o, fc);;
            Employeesalary        osa = EmployeesalaryHelper.GetObject(o, fc);
            Employeequalification oq  = EmployeequalificationHelper.GetObject(o, fc);

            bool b1 = EmployeecontactHelper.IsEmptyParams(fc);
            bool b2 = EmployeejobHelper.IsEmptyParams(fc);
            bool b3 = EmployeesalaryHelper.IsEmptyParams(fc);
            bool b4 = EmployeequalificationHelper.IsEmptyParams(fc);

            Dictionary <string, object> employeeErrors              = o.IsValid(se);
            Dictionary <string, object> employeeContactErrors       = null;
            Dictionary <string, object> employeeJobErrors           = null;
            Dictionary <string, object> employeeSalaryErrors        = null;
            Dictionary <string, object> employeeQualificationErrors = null;

            bool v1 = employeeErrors == null;
            bool v2 = b1 ? true : (employeeContactErrors = oc.IsValid()) == null;
            bool v3 = b2 ? true : (employeeJobErrors = oej.IsValid()) == null;
            bool v4 = b3 ? true : (employeeSalaryErrors = osa.IsValid()) == null;
            bool v5 = b4 ? true : (employeeQualificationErrors = oq.IsValid()) == null;

            if (!v1 || !v2 || !v3 || !v4 || !v5)
            {
                Dictionary <string, object> err = new Dictionary <string, object>
                {
                    { "error", 1 },
                    { "employee", CommonHelper.GetErrors(employeeErrors) },
                    { "employee_contact", CommonHelper.GetErrors(employeeContactErrors) },
                    { "employee_job", CommonHelper.GetErrors(employeeJobErrors) },
                    { "employee_salary", CommonHelper.GetErrors(employeeSalaryErrors) },
                    { "employee_qualification", CommonHelper.GetErrors(employeeQualificationErrors) }
                };
                return(Json(err, JsonRequestBehavior.AllowGet));
            }

            await Task.Run(() =>
            {
                using (ITransaction tx = se.BeginTransaction())
                {
                    se.SaveOrUpdate(o);

                    if (!b1)
                    {
                        se.SaveOrUpdate(oc);
                    }

                    if (!b2)
                    {
                        se.SaveOrUpdate(oej);
                    }

                    if (!b3)
                    {
                        se.SaveOrUpdate(osa);
                    }

                    if (!b4)
                    {
                        se.SaveOrUpdate(oq);
                    }

                    tx.Commit();
                }
            });

            return(Json(new Dictionary <string, object>
            {
                { "success", 1 },
                { "message", "Employee was successfully updated." }
            },
                        JsonRequestBehavior.AllowGet));
        }