Пример #1
0
 public SessionInfo(PersonOnJob oPersonOnJob)
 {
     try
     {
         this.oCurrentPerson = oPersonOnJob.StandardPerson;
         this.oCurrentJob    = oPersonOnJob.OperationJob;
         this.oCurrentOrg    = oPersonOnJob.OperationJob.OperationOrg;
     }
     catch
     {
     }
 }
Пример #2
0
        public IList GetPersonOnJob(string sUserCode, string sPassWord, string sOperationJobId)
        {
            PersonOnJob o;

            ObjectQuery oQuery        = new ObjectQuery();
            string      sTempPassWord = string.Empty;

            if (string.IsNullOrEmpty(sPassWord))
            {
                sPassWord = "";
            }
            sTempPassWord = CryptoString.Encrypt(sPassWord, sPassWord);
            //oQuery.AddCriterion(Expression.Eq("StandardPerson.Password", sPassWord));
            oQuery.AddCriterion(Expression.Eq("StandardPerson.Code", sUserCode));
            oQuery.AddCriterion(Expression.Eq("OperationJob.Id", sOperationJobId));
            oQuery.AddCriterion(Expression.Eq("State", 1));
            oQuery.AddFetchMode("OperationJob", FetchMode.Eager);
            oQuery.AddFetchMode("StandardPerson", FetchMode.Eager);
            oQuery.AddFetchMode("OperationJob.OperationOrg", FetchMode.Eager);
            IList lstResult = dao.ObjectQuery(typeof(PersonOnJob), oQuery);

            for (int i = lstResult.Count - 1; i > -1; i--)
            {
                PersonOnJob oPersonOnJob = lstResult[i] as PersonOnJob;
                if (oPersonOnJob.StandardPerson != null)
                {
                    if (string.Equals(oPersonOnJob.StandardPerson.Password, sTempPassWord) || string.Equals(oPersonOnJob.StandardPerson.Password, sPassWord))
                    {
                        continue;
                    }
                    else if (string.IsNullOrEmpty(oPersonOnJob.StandardPerson.Password) && string.IsNullOrEmpty(sTempPassWord))
                    {
                        continue;
                    }
                    else
                    {
                        lstResult.RemoveAt(i);
                    }
                }
            }
            return(lstResult);
        }
Пример #3
0
    public SessionInfo(string sUserCode, string sPassWord, string sJobID)
    {
        ObjectQuery oQuery = new ObjectQuery();

        oQuery.AddCriterion(Expression.Eq("StandardPerson.Code", sUserCode));
        oQuery.AddCriterion(Expression.Eq("StandardPerson.Password", sPassWord));
        oQuery.AddCriterion(Expression.Eq("OperationJob.Id", sJobID));
        //oQuery.AddFetchMode("OperationJob", FetchMode.Eager);
        //oQuery.AddFetchMode("OperationJob.OperationOrg", FetchMode.Eager);
        //oQuery.AddFetchMode("StandardPerson", FetchMode.Eager);
        IList lstPersonOnJob = ResourceSvr.PersonOnJobManager.GetOnJobPersonList(oQuery);

        if (lstPersonOnJob != null && lstPersonOnJob.Count > 0)
        {
            PersonOnJob oPersonOnJob = lstPersonOnJob[0] as PersonOnJob;

            this.oCurrentPerson = oPersonOnJob.StandardPerson;
            this.oCurrentJob    = oPersonOnJob.OperationJob;
            this.oCurrentOrg    = oPersonOnJob.OperationJob.OperationOrg;
        }
        else
        {
        }
    }
Пример #4
0
    protected void btnComeIn_Click(object sender, EventArgs e)
    {
        try
        {
            if (dpLst.SelectedIndex > -1 && dpLst.SelectedIndex < dpLst.Items.Count)
            {
                IList lstPersonOnJob = GlobalClass.CommonMethodSrv.GetPersonOnJob(this.UserCode, this.PassWord, dpLst.SelectedValue);
                if (lstPersonOnJob != null && lstPersonOnJob.Count > 0)
                {
                    PersonOnJob oPersonOnJob = lstPersonOnJob[0] as PersonOnJob;
                    SessionInfo oSessionInfo = new SessionInfo(oPersonOnJob);
                    if (oSessionInfo.Validate())
                    {
                        IList lstAuthConfigs = null;
                        if (oSessionInfo.CurrentPerson != null && string.Equals(oSessionInfo.CurrentPerson.Name, PublicClass.GetAdminName()))
                        {//管理员
                            lstAuthConfigs = GlobalClass.CommonMethodSrv.GetAuthConfigByOperationJobID("", PublicClass.GetMenuRootCode());
                            foreach (AuthConfig oAuthConfig in lstAuthConfigs)
                            {
                                if (!oSessionInfo.ListRoles.Contains(oAuthConfig.Roles))
                                {
                                    oSessionInfo.ListRoles.Add(oAuthConfig.Roles);
                                }
                            }
                            oSessionInfo.ListMenus = GlobalClass.CommonMethodSrv.GetAdminMenus(PublicClass.GetMenuRootCode()).OfType <Menus>().ToList();
                        }
                        else
                        {
                            lstAuthConfigs = GlobalClass.CommonMethodSrv.GetAuthConfigByOperationJobID(oPersonOnJob.OperationJob.Id, PublicClass.GetMenuRootCode());
                            foreach (AuthConfig oAuthConfig in lstAuthConfigs)
                            {
                                if (!oSessionInfo.ListMenus.Contains(oAuthConfig.Menus))
                                {
                                    oSessionInfo.ListMenus.Add(oAuthConfig.Menus);
                                }
                                if (!oSessionInfo.ListRoles.Contains(oAuthConfig.Roles))
                                {
                                    oSessionInfo.ListRoles.Add(oAuthConfig.Roles);
                                }
                            }
                        }


                        PublicClass.SaveUseInfo(oSessionInfo, Session);
                        FormsAuthentication.SetAuthCookie(oPersonOnJob.StandardPerson.Code, false);
                        Response.Redirect("~/Main/main.aspx");
                    }
                    else
                    {
                        throw new Exception("登录失败");
                    }
                }
                else
                {
                    throw new Exception("登录失败:请输入正确用户名和密码");
                }
            }
            else
            {
                throw new Exception("请选择对应的岗位");
            }
        }
        catch (Exception ex)
        {
            ShowMessage(ex.Message);
        }
    }