Ejemplo 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));
        }
Ejemplo n.º 2
0
        // GET: user/Edit/5
        public ActionResult Edit(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            ms_user ms_user = db.ms_user.Find(id);

            if (ms_user == null)
            {
                return(HttpNotFound());
            }

            user_accountViewModel usr_acc = new user_accountViewModel()
            {
                fl_active     = ms_user.fl_active,
                user_id       = ms_user.user_id,
                user_name     = ms_user.user_name,
                user_password = ms_user.user_password,
                user_type_id  = ms_user.user_type_id,

                employee_id    = ms_user.employee_id,
                employee_nik   = ms_user.ms_employee.employee_nik,
                employee_name  = ms_user.ms_employee.employee_name,
                employee_email = ms_user.ms_employee.employee_email,
            };

            return(View(usr_acc));
        }
Ejemplo n.º 3
0
        ////GET: user/Details/5
        //public ActionResult Details(int? id)
        //{
        //    if (id == null)
        //    {
        //        return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
        //    }
        //    ms_user ms_user = db.ms_user.Find(id);
        //    if (ms_user == null)
        //    {
        //        return HttpNotFound();
        //    }
        //    return View(ms_user);
        //}

        public ActionResult ModalFrm(int?id = 0)
        {
            user_accountViewModel usr_acc = null;
            int     user_id = (int)id;
            ms_user ms_user = db.ms_user.Find(user_id);

            if (ms_user == null)
            {
                usr_acc = new user_accountViewModel()
                {
                    fl_active    = true,
                    rec_isactive = "Yes",
                    user_id      = 0,
                    user_type_id = 0,
                    employee_id  = 0
                };
            }
            else
            {
                usr_acc = new user_accountViewModel()
                {
                    fl_active      = true,
                    rec_isactive   = "Yes",
                    user_id        = ms_user.user_id,
                    user_name      = ms_user.user_name,
                    user_password  = App_Helpers.CryptorHelper.Decrypt(ms_user.user_password, "MD5", true),
                    user_type_id   = ms_user.user_type_id,
                    user_type_name = ms_user.ms_user_type.user_type_name,

                    employee_id    = ms_user.ms_employee.employee_id,
                    employee_nik   = ms_user.ms_employee.employee_nik,
                    employee_name  = ms_user.ms_employee.employee_name,
                    employee_email = ms_user.ms_employee.employee_email
                };
            }

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

            usr_acc.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);

            usr_acc.FormMode = (user_id > 0) ? EnumFormModeKey.Form_Edit : EnumFormModeKey.Form_New;
            return(PartialView(usr_acc));
        }
Ejemplo n.º 4
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));
        }
Ejemplo n.º 5
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));
        }