예제 #1
0
        private List <SecUserGroup> LoadSecUserGroup()
        {
            List <SecUserGroup> SUGList = new List <SecUserGroup>();

            var GList = _secUserGroupService.All().ToList();

            if (GList.Count > 0)
            {
                foreach (var MObj in GList)
                {
                    SecUserGroup sug = new SecUserGroup();
                    sug.GroupID     = MObj.GroupID;
                    sug.GroupName   = MObj.GroupName;
                    sug.Description = MObj.Description;

                    SUGList.Add(sug);
                }

                if (SUGList != null)
                {
                    SUGList = SUGList.OrderBy(x => x.GroupName).ToList();
                }

                return(SUGList);
            }
            else
            {
                return(null);
            }
        }
예제 #2
0
        public ActionResult SaveSecUsrGroupInfo(SecUserGroup SecUsrGrp, string[] SecUsers)
        {
            RBACUser rUser = new RBACUser(Session["UserName"].ToString());

            if (!rUser.HasPermission("SecUserGroup_Insert"))
            {
                return(Json("X", JsonRequestBehavior.AllowGet));
            }

            string eCode = "";

            using (var transaction = new TransactionScope())
            {
                try
                {
                    var UserGroup = _secUserGroupService.All().ToList().FirstOrDefault(x => x.GroupName == SecUsrGrp.GroupName);

                    if (UserGroup == null)
                    {
                        _secUserGroupService.Add(SecUsrGrp);
                        _secUserGroupService.Save();


                        if (SecUsers != null && SecUsers.Length > 0)
                        {
                            foreach (var user in SecUsers)
                            {
                                SecUserInGroup SuInGrp = new SecUserInGroup();

                                SuInGrp.GroupID = SecUsrGrp.GroupID;
                                SuInGrp.UserID  = Convert.ToInt32(user);

                                _secUserInGroupService.Add(SuInGrp);
                            }

                            _secUserInGroupService.Save();
                        }

                        eCode = "1";
                    }
                    else
                    {
                        eCode = "2";
                    }

                    transaction.Complete();

                    return(Json(eCode, JsonRequestBehavior.AllowGet));
                }
                catch (Exception)
                {
                    transaction.Dispose();
                    return(Json("0", JsonRequestBehavior.AllowGet));
                }
            }
        }
예제 #3
0
        public ActionResult GetSecUsrGroupInfoByNameNID(int GroupID, string GroupName)
        {
            try
            {
                SecUserGroup sug    = new SecUserGroup();
                var          SecGrp = _secUserGroupService.All().ToList().FirstOrDefault(x => x.GroupID == GroupID && x.GroupName == GroupName);

                var SUInGrpLst = _secUserInGroupService.All().ToList().Where(x => x.GroupID == GroupID).ToList();

                sug.GroupID     = SecGrp.GroupID;
                sug.GroupName   = SecGrp.GroupName;
                sug.Description = SecGrp.Description;

                if (SUInGrpLst.Count > 0)
                {
                    foreach (var SIG in SUInGrpLst)
                    {
                        SecUserInGroup objSIG = new SecUserInGroup();
                        objSIG.UserGroupID = SIG.UserGroupID;
                        objSIG.GroupID     = SIG.GroupID;
                        objSIG.UserID      = SIG.UserID;

                        sug.SecUserInGroups.Add(objSIG);
                    }
                }


                var serializerSettings = new JsonSerializerSettings {
                    PreserveReferencesHandling = PreserveReferencesHandling.Objects
                };

                string json = JsonConvert.SerializeObject(sug, Formatting.Indented, serializerSettings);

                if (json != null)
                {
                    return(Json(json, JsonRequestBehavior.AllowGet));
                }
                else
                {
                    return(Json(new EmptyResult(), JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception)
            {
                return(Json("0", JsonRequestBehavior.AllowGet));
            }
        }
        public ActionResult GetSecFormRightInfoByGroup(int GroupID)
        {
            try
            {
                var SecGrpList = _secFormRightService.All().ToList().Where(x => x.GroupID == GroupID).ToList();

                SecUserGroup sug    = new SecUserGroup();
                var          SecGrp = _secUserGroupService.All().ToList().FirstOrDefault(x => x.GroupID == GroupID);

                if (SecGrp != null && SecGrpList.Count > 0)
                {
                    sug.GroupID     = SecGrp.GroupID;
                    sug.GroupName   = SecGrp.GroupName;
                    sug.Description = SecGrp.Description;

                    foreach (var SFR in SecGrpList)
                    {
                        SecFormRight Sfrt = new SecFormRight();
                        Sfrt.FormRightID   = SFR.FormRightID;
                        Sfrt.GroupID       = SFR.GroupID;
                        Sfrt.FormProcessID = SFR.FormProcessID;

                        sug.SecFormRights.Add(Sfrt);
                    }
                }

                var serializerSettings = new JsonSerializerSettings {
                    PreserveReferencesHandling = PreserveReferencesHandling.Objects
                };

                string json = JsonConvert.SerializeObject(sug, Formatting.Indented, serializerSettings);

                if (sug.SecFormRights.Count > 0)
                {
                    return(Json(json, JsonRequestBehavior.AllowGet));
                }
                else
                {
                    return(Json(new EmptyResult(), JsonRequestBehavior.AllowGet));
                }
            }
            catch (Exception)
            {
                return(Json("0", JsonRequestBehavior.AllowGet));
            }
        }
        private void GetDatabaseUserRolesPermissions()
        {
            using (ERPConfigurationContext _data = new ERPConfigurationContext())
            {
                SecUserInfo _user = _data.SecUserInfo.Where(u => u.UserName == this.UserName).FirstOrDefault();
                if (_user != null)
                {
                    this.UserID = _user.UserID;
                    foreach (SecUserInGroup _group in _user.SecUserInGroups)
                    {
                        SecUserGroup _uGroup = _data.SecUserGroup.Where(u => u.GroupID == _group.GroupID).FirstOrDefault();

                        UserRole _userRole = new UserRole {
                            Role_Id = _group.GroupID, RoleName = _uGroup.GroupName
                        };

                        List <SecFormRight> _fRightList = _data.SecFormRight.Where(u => u.GroupID == _group.GroupID).ToList();

                        foreach (SecFormRight _fRight in _fRightList)
                        {
                            SecFormProcess _fproc  = _data.SecFormProcess.Where(u => u.FormProcessID == _fRight.FormProcessID).FirstOrDefault();
                            SecFormList    _frmLst = _data.SecFormList.Where(u => u.FormID == _fproc.FormID).FirstOrDefault();

                            _userRole.Permissions.Add(new RolePermission {
                                FormName = _frmLst.FormName, PermissionName = _fproc.ProcessName
                            });
                        }
                        this.Roles.Add(_userRole);

                        //if (!this.IsSysAdmin)
                        //    this.IsSysAdmin = _group.IsSysAdmin;
                    }
                }
            }

            //}
        }
예제 #6
0
        public ActionResult UpdateSecUsrGroupInfo(SecUserGroup SecUsrGrp, string[] SecUsers)
        {
            RBACUser rUser = new RBACUser(Session["UserName"].ToString());

            if (!rUser.HasPermission("SecUserGroup_Update"))
            {
                return(Json("U", JsonRequestBehavior.AllowGet));
            }

            string eCode = "";

            using (var transaction = new TransactionScope())
            {
                try
                {
                    SecUserGroup secgr = new SecUserGroup();

                    secgr = _secUserGroupService.All().ToList().FirstOrDefault(x => x.GroupID == SecUsrGrp.GroupID);

                    var SecUGList = _secUserInGroupService.All().ToList().Where(x => x.GroupID == SecUsrGrp.GroupID).ToList();

                    if (secgr != null)
                    {
                        secgr.GroupName   = SecUsrGrp.GroupName;
                        secgr.Description = SecUsrGrp.Description;

                        _secUserGroupService.Update(secgr);
                        _secUserGroupService.Save();

                        if (SecUGList.Count > 0 && SecUsers != null)
                        {
                            foreach (var SecUG in SecUGList)
                            {
                                _secUserInGroupService.Delete(SecUG);
                            }

                            foreach (var user in SecUsers)
                            {
                                SecUserInGroup SuInGrp = new SecUserInGroup();

                                SuInGrp.GroupID = secgr.GroupID;
                                SuInGrp.UserID  = Convert.ToInt32(user);

                                _secUserInGroupService.Add(SuInGrp);
                            }

                            _secUserInGroupService.Save();
                        }
                        else if (SecUGList.Count > 0 && SecUsers == null)
                        {
                            foreach (var SecUG in SecUGList)
                            {
                                _secUserInGroupService.Delete(SecUG);
                            }
                            _secUserInGroupService.Save();
                        }
                        else if (SecUGList.Count == 0 && SecUsers != null)
                        {
                            foreach (var user in SecUsers)
                            {
                                SecUserInGroup SuInGrp = new SecUserInGroup();

                                SuInGrp.GroupID = secgr.GroupID;
                                SuInGrp.UserID  = Convert.ToInt32(user);

                                _secUserInGroupService.Add(SuInGrp);
                            }

                            _secUserInGroupService.Save();
                        }

                        eCode = "1";
                    }
                    else
                    {
                        eCode = "2";
                    }

                    transaction.Complete();

                    return(Json(eCode, JsonRequestBehavior.AllowGet));
                }
                catch (Exception)
                {
                    transaction.Dispose();
                    return(Json("0", JsonRequestBehavior.AllowGet));
                }
            }
        }
 public void Setvalues(SecUserGroup entity, SecUserGroup existingEntity)
 {
     _service.Setvalues(entity, existingEntity);
 }
 public void Delete(SecUserGroup obj)
 {
     _service.Delete(obj);
 }
 public void Update(SecUserGroup obj)
 {
     _service.Update(obj);
 }
 public void Add(SecUserGroup obj)
 {
     _service.Add(obj);
 }