Exemplo n.º 1
0
        public ActionResult Create([Bind(Include = "user_id,user_name,user_password,user_type_id,employee_id,fl_active")] user_accountViewModel user_acc)
        {
            if (ModelState.IsValid)
            {
                using (var transaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        ms_employee emp = db.ms_employee.Find(user_acc.employee_id);
                        if (emp == null)
                        {
                            throw new Exception("Employee not found " + user_acc.employee_id.ToString());
                        }
                        else
                        {
                            user_acc.employee_nik   = emp.employee_nik;
                            user_acc.employee_name  = emp.employee_name;
                            user_acc.employee_email = emp.employee_email;

                            emp.fl_active       = true;
                            emp.updated_by      = UserProfile.UserId;
                            emp.updated_date    = DateTime.Now;
                            emp.deleted_by      = null;
                            emp.deleted_date    = null;
                            db.Entry(emp).State = EntityState.Modified;

                            ms_user ms_user = new ms_user()
                            {
                                user_name     = user_acc.user_name,
                                user_password = App_Helpers.CryptorHelper.Encrypt(user_acc.user_password, "MD5", true),
                                user_type_id  = user_acc.user_type_id,
                                employee_id   = emp.employee_id,


                                fl_active    = user_acc.fl_active,
                                created_by   = UserProfile.UserId,
                                created_date = DateTime.Now,
                                updated_by   = UserProfile.UserId,
                                updated_date = DateTime.Now,
                                deleted_by   = null,
                                deleted_date = null
                            };
                            db.ms_user.Add(ms_user);

                            db.SaveChanges();
                        }

                        transaction.Commit();
                        ViewBag.ResultMessage = "Record inserted into table successfully.";
                        return(RedirectToAction("Index"));
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        ViewBag.ResultMessage = string.Format("Error occured, records rolledback. {0}", ex.Message);
                    }
                }
            }
            return(View(user_acc));
        }
Exemplo n.º 2
0
        public ActionResult DeleteConfirmed(int id)
        {
            ms_employee ms_employee = db.ms_employee.Find(id);

            db.ms_employee.Remove(ms_employee);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Exemplo n.º 3
0
 public ActionResult Edit([Bind(Include = "employee_id,employee_nik,employee_name,employee_email,fl_active,created_date,created_by,updated_date,updated_by,deleted_date,deleted_by,org_id,ip_address")] ms_employee ms_employee)
 {
     if (ModelState.IsValid)
     {
         db.Entry(ms_employee).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(ms_employee));
 }
Exemplo n.º 4
0
        // GET: employee/Delete/5
        public ActionResult Delete(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ms_employee ms_employee = db.ms_employee.Find(id);

            if (ms_employee == null)
            {
                return(HttpNotFound());
            }
            return(View(ms_employee));
        }
Exemplo n.º 5
0
        public ActionResult Edit([Bind(Include = "user_id,user_name,user_password,user_type_id,employee_id,fl_active")] user_accountViewModel user_acc)
        {
            if (ModelState.IsValid)
            {
                ms_user ms_user = db.ms_user.Find(user_acc.user_id);
                ms_user.user_name = user_acc.user_name;

                if (!string.IsNullOrWhiteSpace(user_acc.user_password))
                {
                    ms_user.user_password = App_Helpers.CryptorHelper.Encrypt(user_acc.user_password, "MD5", true);
                }

                ms_user.user_type_id = user_acc.user_type_id;
                ms_user.fl_active    = true;
                ms_user.updated_by   = UserProfile.UserId;
                ms_user.updated_date = DateTime.Now;
                ms_user.deleted_by   = null;
                ms_user.deleted_date = null;

                ms_employee emp = db.ms_employee.Find(user_acc.employee_id);
                if (emp != null)
                {
                    ms_user.employee_id = emp.employee_id;
                    emp.fl_active       = true;
                    emp.updated_by      = UserProfile.UserId;
                    emp.updated_date    = DateTime.Now;
                    emp.deleted_by      = null;
                    emp.deleted_date    = null;
                    db.Entry(emp).State = EntityState.Modified;
                }

                db.Entry(ms_user).State = EntityState.Modified;
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            return(View(user_acc));
        }
Exemplo n.º 6
0
        /*
         * employee setup
         */
        public ActionResult Setup(int?id)
        {
            if (id == null)
            {
                return(RedirectToAction("Index"));
                //return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }

            ms_employee emp_db = db.ms_employee.Single(a => a.employee_id == id);

            if (emp_db == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }

            employee_setupViewModel model = new employee_setupViewModel()
            {
                employee_id = emp_db.employee_id,
                ms_employee = emp_db
            };

            List <SelectListItem> first = new List <SelectListItem> {
                new SelectListItem {
                    Text = "- [Not Set] -", Value = "0", Selected = true
                }
            };

            model.company_list = (from t in db.ms_asmin_company
                                  where (t.fl_active == true && t.deleted_date == null)
                                  select t).ToList();

            model.sli_register_list = (from t in db.ms_asset_register_location
                                       where (t.fl_active == true && t.deleted_date == null)
                                       select new SelectListItem
            {
                Text = t.asset_reg_location_name,
                Value = t.asset_reg_location_id.ToString()
            }
                                       ).ToList <SelectListItem>().Union(first);


            model.sli_location_list = (from t in db.ms_asset_location
                                       where (t.fl_active == true && t.deleted_date == null)
                                       //&& t.asset_reg_location_id == model.selected_register_id[0]
                                       select new SelectListItem
            {
                Text = t.location_name,
                Value = t.location_id.ToString()
            }
                                       ).ToList <SelectListItem>().Union(first);


            model.sli_department_list = (from t in db.ms_department
                                         where (t.fl_active == true && t.deleted_date == null)
                                         //from d in db.ms_employee_detail
                                         //where (d.employee_id == emp_db.employee_id && t.department_id == d.department_id)
                                         select new SelectListItem
            {
                Text = t.department_name,
                Value = t.department_id.ToString()
                        //Selected = (d.employee_id>0)
            }
                                         ).ToList <SelectListItem>().Union(first);

            model.sli_job_level_list = (from t in db.ms_job_level
                                        where (t.fl_active == true && t.deleted_date == null)
                                        select new SelectListItem
            {
                Text = t.job_level_name,
                Value = t.job_level_id.ToString()
            }
                                        ).ToList <SelectListItem>().Union(first);


            model.sli_user_type_list = (from t in db.ms_user_type
                                        where (t.fl_active == true && t.deleted_date == null)
                                        select new SelectListItem
            {
                Text = t.user_type_name,
                Value = t.user_type_id.ToString()
            }
                                        ).ToList <SelectListItem>().Union(first);


            model.sli_range_list = (from t in db.ms_approval_range
                                    where (t.fl_active == true && t.deleted_date == null)
                                    select new SelectListItem
            {
                Text = t.range_code,
                Value = t.range_id.ToString()
            }
                                    ).ToList <SelectListItem>().Union(first);

            int i_pos = 0;
            int i_max = model.company_list.Count;

            foreach (ms_asmin_company company in model.company_list)
            {
                employee_detailViewModel _item = new employee_detailViewModel()
                {
                    employee_id         = emp_db.employee_id,
                    ms_asmin_company    = company,
                    sli_register_list   = model.sli_register_list,
                    sli_location_list   = model.sli_location_list,
                    sli_department_list = model.sli_department_list,
                    sli_job_level_list  = model.sli_job_level_list,
                    sli_user_type_list  = model.sli_user_type_list,
                    sli_range_list      = model.sli_range_list
                };

                ms_employee_detail dtl_db = (from d in db.ms_employee_detail
                                             where (d.employee_id == emp_db.employee_id &&
                                                    d.company_id == company.company_id)
                                             select d).FirstOrDefault <ms_employee_detail>();
                if (dtl_db != null)
                {
                    dtl_db.range_id              = 0; //di hide
                    _item.selected_register_id   = (dtl_db.asset_reg_location_id.HasValue) ? dtl_db.asset_reg_location_id.Value : 0;
                    _item.selected_location_id   = (dtl_db.location_id.HasValue) ? dtl_db.location_id.Value : 0;
                    _item.selected_department_id = (dtl_db.department_id.HasValue) ? dtl_db.department_id.Value : 0;
                    _item.selected_job_level_id  = (dtl_db.job_level_id.HasValue) ? dtl_db.job_level_id.Value : 0;
                    //_item.selected_user_type_id = (dtl_db.user_type_id.HasValue) ? dtl_db.user_type_id.Value : 0;
                    _item.selected_fl_approver = (dtl_db.range_id.HasValue) ? ((dtl_db.range_id.Value > 0) ? 1 : 0) : 0;
                    _item.selected_range_id    = (dtl_db.range_id.HasValue) ? dtl_db.range_id.Value : 0;

                    model.checkbox_approver.Add(new SelectedApprover_CheckBoxes
                    {
                        Checked = (dtl_db.range_id > 0),
                        Value   = "1"
                    });
                }
                else
                {
                    _item.selected_register_id   = 0;
                    _item.selected_location_id   = 0;
                    _item.selected_department_id = 0;
                    _item.selected_job_level_id  = 0;
                    _item.selected_user_type_id  = 0;
                    _item.selected_fl_approver   = 0; //di hide
                    _item.selected_range_id      = 0; //di hide

                    model.checkbox_approver.Add(new SelectedApprover_CheckBoxes
                    {
                        Checked = false,
                        Value   = "1"
                    });
                }

                model.employee_details.Add(_item);
                i_pos += 1;
            }

            return(View(model));
        }
Exemplo n.º 7
0
        public JsonResult CrudEmployee()
        {
            if (Request.Form["oper"] == "add")
            {
                //prepare for insert data
                ms_employee ms_emp = new ms_employee();
                ms_emp.employee_nik   = Request.Form["employee_nik"];
                ms_emp.employee_name  = Request.Form["employee_name"];
                ms_emp.employee_email = Request.Form["employee_email"];
                ms_emp.ip_address     = Request.Form["ip_address"];
                ms_emp.fl_active      = Request.Form["rec_isactive"].ToLower().Equals("yes");

                ms_emp.created_by   = UserProfile.UserId;
                ms_emp.created_date = DateTime.Now;
                ms_emp.updated_by   = UserProfile.UserId;
                ms_emp.updated_date = DateTime.Now;
                ms_emp.org_id       = UserProfile.OrgId;
                ms_emp.deleted_by   = null;
                ms_emp.deleted_date = null;
                db.ms_employee.Add(ms_emp);
                db.SaveChanges();
                return(Json("Employee successfully saved", JsonRequestBehavior.AllowGet));
            }
            else if (Request.Form["oper"] == "edit")
            {
                if (IsNumeric(Request.Form["employee_id"].ToString()))
                {
                    //prepare for update data
                    int         id  = Convert.ToInt32(Request.Form["employee_id"]);
                    ms_employee emp = db.ms_employee.Find(id);
                    emp.employee_nik   = Request.Form["employee_nik"];
                    emp.employee_name  = Request.Form["employee_name"];
                    emp.employee_email = Request.Form["employee_email"];
                    emp.ip_address     = Request.Form["ip_address"];
                    emp.fl_active      = Request.Form["rec_isactive"].ToLower().Equals("yes");
                    emp.updated_by     = UserProfile.UserId;
                    emp.updated_date   = DateTime.Now;
                    db.SaveChanges();
                    return(Json("Employee successfully saved", JsonRequestBehavior.AllowGet));
                }
                else
                {
                    //prepare for insert data

                    //check if nik exists
                    bool        is_nik_exist = false;
                    string      str_nik      = Request.Form["employee_nik"];
                    ms_employee ms_emp       = db.ms_employee.Where(c => c.employee_nik == str_nik).SingleOrDefault <ms_employee>();
                    is_nik_exist = (ms_emp != null);
                    if (!is_nik_exist)
                    {
                        ms_emp = new ms_employee();
                    }

                    ms_emp.employee_nik   = Request.Form["employee_nik"];
                    ms_emp.employee_name  = Request.Form["employee_name"];
                    ms_emp.employee_email = Request.Form["employee_email"];
                    ms_emp.ip_address     = Request.Form["ip_address"];
                    ms_emp.fl_active      = Request.Form["rec_isactive"].ToLower().Equals("yes");

                    if (!is_nik_exist)
                    {
                        ms_emp.created_by   = UserProfile.UserId;
                        ms_emp.created_date = DateTime.Now;
                    }
                    ms_emp.updated_by   = UserProfile.UserId;
                    ms_emp.updated_date = DateTime.Now;
                    ms_emp.org_id       = UserProfile.OrgId;
                    ms_emp.deleted_by   = null;
                    ms_emp.deleted_date = null;

                    //db.ms_employee.Add(ms_emp);
                    if (!is_nik_exist)
                    {
                        db.Entry(ms_emp).State = EntityState.Added;
                    }
                    else
                    {
                        db.Entry(ms_emp).State = EntityState.Modified;
                    }

                    db.SaveChanges();
                    return(Json("Employee successfully saved", JsonRequestBehavior.AllowGet));
                }
            }
            else
            {
                if (Request.Form["oper"] == "del")
                {
                    //for delete process
                    string   ids    = Request.Form["id"];
                    string[] values = ids.Split(',');
                    for (int i = 0; i < values.Length; i++)
                    {
                        values[i] = values[i].Trim();
                        //prepare for soft delete data
                        int         id  = Convert.ToInt32(values[i]);
                        ms_employee emp = db.ms_employee.Find(id);
                        emp.fl_active    = false;
                        emp.deleted_by   = UserProfile.UserId; //userid
                        emp.deleted_date = DateTime.Now;
                        db.SaveChanges();
                    }
                }
                return(Json("Deleted Success!"));
            }
        }
Exemplo n.º 8
0
        public ActionResult Registration(AccountRegistrationViewModel registrationView)
        {
            bool   statusRegistration  = false;
            string messageRegistration = string.Empty;

            if (ModelState.IsValid)
            {
                // Email Verification
                string userName = Membership.GetUserNameByEmail(registrationView.employee_email);
                if (!string.IsNullOrEmpty(userName))
                {
                    ModelState.AddModelError("Warning Email", "Sorry: Email already Exists");
                    return(View(registrationView));
                }

                //Save User Data
                using (ModelAsmRemote _db = new ModelAsmRemote())
                {
                    //var user = new User()
                    //{
                    //    Username = registrationView.Username,
                    //    FirstName = registrationView.FirstName,
                    //    LastName = registrationView.LastName,
                    //    Email = registrationView.Email,
                    //    Password = registrationView.Password,
                    //    ActivationCode = Guid.NewGuid(),
                    //};
                    //dbContext.Users.Add(user);
                    var emp = new ms_employee()
                    {
                        employee_email = registrationView.employee_email,
                        employee_nik   = registrationView.employee_nik,
                        employee_name  = registrationView.employee_name,

                        fl_active    = true,
                        created_by   = UserProfile.UserId,
                        created_date = DateTime.Now,
                        updated_by   = UserProfile.UserId,
                        updated_date = DateTime.Now,
                        deleted_by   = null,
                        deleted_date = null,
                        org_id       = UserProfile.OrgId
                    };

                    emp = _db.ms_employee.Add(emp);
                    //int emp_id = emp.employee_id;

                    var user = new ms_user()
                    {
                        user_name     = registrationView.user_name,
                        user_password = App_Helpers.CryptorHelper.Encrypt(registrationView.user_password, "MD5", true),
                        employee_id   = emp.employee_id,
                        fl_active     = true,
                        created_by    = UserProfile.UserId,
                        created_date  = DateTime.Now,
                        updated_by    = UserProfile.UserId,
                        updated_date  = DateTime.Now,
                        deleted_by    = null,
                        deleted_date  = null,
                        org_id        = UserProfile.OrgId
                    };
                    _db.ms_user.Add(user);

                    _db.SaveChanges();
                }

                //Verification Email:
                //TIDAK usah aktifkan by email -> admin saja yanag mengaktifkan sendiri krna hrus pilih role, job title dan company
                //VerificationEmail(registrationView.Email, registrationView.ActivationCode.ToString());
                messageRegistration = "Your account has been created successfully. ^_^";
                statusRegistration  = true;
            }
            else
            {
                messageRegistration = "Something Wrong!";
            }
            ViewBag.Message = messageRegistration;
            ViewBag.Status  = statusRegistration;

            return(View(registrationView));
        }
Exemplo n.º 9
0
        public ActionResult SaveDataUserAccount([Bind(Include = "user_id,user_name,user_password,user_type_id,employee_id,fl_active")] user_accountViewModel user_acc)
        {
            if (ModelState.IsValid)
            {
                using (var transaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        #region INSERT_DATA
                        if (user_acc.FormMode == EnumFormModeKey.Form_New)
                        {
                            ms_employee emp = db.ms_employee.Find(user_acc.employee_id);
                            if (emp == null)
                            {
                                throw new Exception("Employee not found. Please create Employee first " + user_acc.employee_id.ToString());
                            }
                            else
                            {
                                user_acc.employee_nik   = emp.employee_nik;
                                user_acc.employee_name  = emp.employee_name;
                                user_acc.employee_email = emp.employee_email;

                                emp.fl_active       = true;
                                emp.updated_by      = UserProfile.UserId;
                                emp.updated_date    = DateTime.Now;
                                emp.deleted_by      = null;
                                emp.deleted_date    = null;
                                db.Entry(emp).State = EntityState.Modified;

                                ms_user ms_user = db.ms_user.Find(user_acc.user_id);
                                if (ms_user == null)
                                {
                                    ms_user = new ms_user()
                                    {
                                        user_name     = user_acc.user_name,
                                        user_password = App_Helpers.CryptorHelper.Encrypt(user_acc.user_password, "MD5", true),
                                        user_type_id  = user_acc.user_type_id,
                                        employee_id   = emp.employee_id,

                                        fl_active    = user_acc.fl_active,
                                        created_by   = UserProfile.UserId,
                                        created_date = DateTime.Now,
                                        updated_by   = UserProfile.UserId,
                                        updated_date = DateTime.Now,
                                        deleted_by   = null,
                                        deleted_date = null
                                    };
                                    db.ms_user.Add(ms_user);
                                }
                                else
                                {
                                    ms_user.user_name     = user_acc.user_name;
                                    ms_user.user_password = App_Helpers.CryptorHelper.Encrypt(user_acc.user_password, "MD5", true);
                                    ms_user.user_type_id  = user_acc.user_type_id;

                                    ms_user.employee_id     = user_acc.employee_id;
                                    ms_user.fl_active       = user_acc.fl_active;
                                    ms_user.created_by      = UserProfile.UserId;
                                    ms_user.created_date    = DateTime.Now;
                                    ms_user.updated_by      = UserProfile.UserId;
                                    ms_user.updated_date    = DateTime.Now;
                                    ms_user.deleted_by      = null;
                                    ms_user.deleted_date    = null;
                                    db.Entry(ms_user).State = EntityState.Modified;
                                }
                                db.SaveChanges();
                            }

                            ViewBag.ResultMessage = "Record inserted successfully.";
                        }
                        #endregion

                        #region UPDATE_DATA
                        else
                        {
                            ms_user ms_user = db.ms_user.Find(user_acc.user_id);
                            ms_user.user_name = user_acc.user_name;

                            if (!string.IsNullOrWhiteSpace(user_acc.user_password))
                            {
                                ms_user.user_password = App_Helpers.CryptorHelper.Encrypt(user_acc.user_password, "MD5", true);
                            }

                            ms_user.user_type_id = user_acc.user_type_id;
                            ms_user.fl_active    = true;
                            ms_user.updated_by   = UserProfile.UserId;
                            ms_user.updated_date = DateTime.Now;
                            ms_user.deleted_by   = null;
                            ms_user.deleted_date = null;

                            ms_employee emp = db.ms_employee.Find(user_acc.employee_id);
                            if (emp != null)
                            {
                                ms_user.employee_id = emp.employee_id;
                                emp.fl_active       = true;
                                emp.updated_by      = UserProfile.UserId;
                                emp.updated_date    = DateTime.Now;
                                emp.deleted_by      = null;
                                emp.deleted_date    = null;
                                db.Entry(emp).State = EntityState.Modified;
                            }

                            db.Entry(ms_user).State = EntityState.Modified;

                            ViewBag.ResultMessage = "Record updated successfully.";
                        }
                        #endregion

                        transaction.Commit();
                        return(RedirectToAction("Index"));
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        ViewBag.ResultMessage = string.Format("Error occured, records rolledback. {0}", ex.Message);
                    }
                }
            }
            return(View(user_acc));
        }