Ejemplo n.º 1
0
 protected void btnSave_Click(object sender, EventArgs e)
 {
     foreach (RepeaterItem item in rptCruise.Items)
     {
         CheckBox    chkPermission   = (CheckBox)item.FindControl("chkPermission");
         HiddenField hidCruiseRoleId = (HiddenField)item.FindControl("hidCruiseRoleId");
         HiddenField hidCruiseId     = (HiddenField)item.FindControl("hidCruiseId");
         if (_role != null)
         {
             if (hidCruiseRoleId != null && !string.IsNullOrWhiteSpace(hidCruiseRoleId.Value) && !chkPermission.Checked) // Nếu có quyền và không có check
             {
                 var permission = Module.GetById <IvRoleCruise>(Convert.ToInt32(hidCruiseRoleId.Value));
                 if (permission != null)
                 {
                     Module.Delete(permission);
                 }
             }
             else if (hidCruiseRoleId != null && string.IsNullOrWhiteSpace(hidCruiseRoleId.Value) && chkPermission.Checked)
             {
                 var roleCruise = new IvRoleCruise();
                 roleCruise.Role   = _role;
                 roleCruise.Cruise = Module.GetById <Cruise>(Convert.ToInt32(hidCruiseId.Value));
                 Module.SaveOrUpdate(roleCruise);
             }
         }
         else
         {
             if (chkPermission.Enabled)// Phải enable, tức là quyền theo user chứ không phải theo role
             {
                 if (hidCruiseRoleId != null && !string.IsNullOrWhiteSpace(hidCruiseRoleId.Value) && !chkPermission.Checked)
                 // Nếu có quyền và không có check
                 {
                     var permission = Module.GetById <IvRoleCruise>(Convert.ToInt32(hidCruiseRoleId.Value));
                     //if (permission != null)
                     {
                         Module.Delete(permission);
                     }
                 }
                 else if (hidCruiseRoleId != null && string.IsNullOrWhiteSpace(hidCruiseRoleId.Value) && chkPermission.Checked)
                 {
                     var roleCruise = new IvRoleCruise();
                     roleCruise.User   = _user;
                     roleCruise.Cruise = Module.GetById <Cruise>(Convert.ToInt32(hidCruiseId.Value));
                     Module.SaveOrUpdate(roleCruise);
                 }
             }
         }
     }
     PageRedirect(string.Format("SetPermission.aspx?NodeId={0}&SectionId={1}", Node.Id, Section.Id));
 }
Ejemplo n.º 2
0
 public IList <Cruise> CruiseGetByUser(User user)
 {
     if (user.HasPermission(AccessLevel.Administrator))
     {
         return(CruiseGetAll2());
     }
     else
     {
         var query = _session.QueryOver <Cruise>();
         query = query.Where(x => x.Deleted == false);
         IvRoleCruise roleCruise = null;
         query = query.Left.JoinAlias(x => x.ListRoleCruises, () => roleCruise);
         query = query.Where(x => roleCruise.User == user || roleCruise.Role.IsIn(user.Roles));
         return(query.TransformUsing(Transformers.DistinctRootEntity).List());
     }
 }
Ejemplo n.º 3
0
        protected void btnAssignUser_Click(object sender, EventArgs e)
        {
            UserSelector selector = (UserSelector)userSelector;

            if (selector.SelectedUserId > 0)
            {
                if (CurrentCruise != null)
                {
                    User user        = Module.UserGetById(selector.SelectedUserId);
                    var  listRoleBar = Module.IvRoleCruiseGetByCruiseId(Convert.ToInt32(Request.QueryString["cruiseid"]));
                    var  check       = false;
                    foreach (IvRoleCruise roleBarCruise in listRoleBar)
                    {
                        if (roleBarCruise.User.Id == user.Id)
                        {
                            check = true;
                            break;
                        }
                    }
                    if (check)
                    {
                        lblMsg.Text = ("User này đã được phân vào " + CurrentCruise.Name);
                    }
                    else
                    {
                        var roleBar = new IvRoleCruise
                        {
                            User   = user,
                            Cruise = CurrentCruise
                        };
                        Module.SaveOrUpdate(roleBar);
                        GetBarUser();
                    }
                }
                else
                {
                    lblMsg.Text = ("Phải chọn tàu");
                }
            }
            else
            {
                lblMsg.Text = ("Phải chọn user trước");
            }
        }