Beispiel #1
0
        public static bool insert(MMenuAccessVM model)
        {
            bool result = false;

            using (AppEntities db = new AppEntities())
            {
                foreach (var item in model.listMenuId)
                {
                    var data = new m_menu_access()
                    {
                        m_role_id    = model.role.id,
                        created_by   = 2,
                        is_active    = true,
                        created_date = DateTime.Now,
                        m_menu_id    = item
                    };
                    db.m_menu_access.Add(data);
                }
                try
                {
                    db.SaveChanges();
                    result = true;
                }
                catch (Exception)
                {
                    throw;
                }
            }
            return(result);
        }
Beispiel #2
0
        public static MMenuAccessVM getByIdRole(int id)
        {
            var data = new MMenuAccessVM();

            using (AppEntities db = new AppEntities())
            {
                var roleAccess = db.m_role.Select(x => new MRoleVM()
                {
                    id          = x.id,
                    name        = x.name,
                    code        = x.code,
                    createdBy   = x.created_by,
                    description = x.description
                })
                                 .Where(x => x.id == id)
                                 .FirstOrDefault();
                //ambil data menu dengan role id diatas
                var menuList = db.m_menu_access
                               .Where(x => x.m_role_id == id)
                               .Select(x => new MMenuVM()
                {
                    id           = x.m_menu_id,
                    name         = x.m_menu.name,
                    is_active    = x.is_active,
                    updated_by   = x.updated_by,
                    updated_date = x.updated_date
                }).ToList();
                //memasukan ke alamat yg telah disiapkan
                data.role     = roleAccess;
                data.listMenu = menuList;
            }
            return(data);
        }
Beispiel #3
0
 public ActionResult Add(MMenuAccessVM model)
 {
     if (ModelState.IsValid && MRoleRepo.insert(model))
     {
         var result = new
         {
             success = true,
             message = "Data Saved! New menu access for role " + model.role.name + " has been added !",
             vClass  = "alert alert-info"
         };
         return(Json(result, JsonRequestBehavior.AllowGet));
     }
     ViewBag.Title    = "Add List Menu Access";
     ViewBag.ListMenu = new SelectList(MMenuRepo.get(), "id", "name");
     ViewBag.ListRole = new SelectList(MRoleRepo.get(), "id", "name");
     return(PartialView("_Add", model));
 }
Beispiel #4
0
        public static bool update(MMenuAccessVM model)
        {
            bool result = false;

            using (AppEntities db = new AppEntities())
            {
                var dataMenu = db.m_menu_access.Where(x => x.m_role_id == model.role.id);
                db.m_menu_access.RemoveRange(dataMenu);
                try
                {
                    db.SaveChanges();
                    result = true;
                }
                catch (Exception)
                {
                    throw;
                }
                //memasukan idMenu Baru
                foreach (var item in model.listMenuId)
                {
                    m_menu_access data = new m_menu_access()
                    {
                        m_role_id    = model.role.id,
                        m_menu_id    = item,
                        created_by   = 2,
                        created_date = DateTime.Now,
                        is_active    = true
                    };
                    db.m_menu_access.Add(data);
                }
                try
                {
                    db.SaveChanges();
                    result = true;
                }
                catch (Exception)
                {
                    throw;
                }
            }
            return(result);
        }
Beispiel #5
0
        public ActionResult Edit(MMenuAccessVM model)
        {
            var data = MRoleRepo.getByIdRole(model.role.id);
            var user = User.Identity.Name;

            if (ModelState.IsValid && MRoleRepo.update(model))
            {
                var res = new
                {
                    success = true,
                    message = "Data Updated! Menu access for " + data.role.name + " has been updated !",
                    vClass  = "alert alert-info"
                };
                return(Json(res, JsonRequestBehavior.AllowGet));
            }

            ViewBag.Title    = "Update Menu Access - " + data.role.name + " (" + data.role.code + ")";
            ViewBag.ListMenu = new SelectList(MMenuRepo.get(), "id", "name");
            ViewBag.ListRole = new SelectList(MRoleRepo.get(), "id", "name");
            return(PartialView("_Edit"));
        }