예제 #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="loginData"></param>
        /// <returns></returns>
        public object Login(getLogin loginData)
        {
            t_bas_user tBasUser = null;

            if (!ValidateUser(loginData.strUser, loginData.strPwd, out tBasUser))
            {
                return(new { bRes = false, message = "账号或密码不正确!" });
            }
            FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(0, tBasUser.Code, DateTime.Now,
                                                                             DateTime.Now.AddHours(1), true, string.Format("{0}&{1}", tBasUser.Code, tBasUser.Password),
                                                                             FormsAuthentication.FormsCookiePath);
            webDmsEntities db = new webDmsEntities();

            //var homeOjb = new object[] { new { path = "/", iconCls = "fa fa-home", leaf = true, children = new object[] { new { path = "/index", MenuPath = "index", meta = new { name = "主页", button = new string[] { }.ToList() } } } } };

            var list = db.view_menu.Where <view_menu>(p => p.UserID.ToString() == tBasUser.UserID.ToString() && p.ParentCode == "&").Select(s => new
            {
                path     = "/",
                name     = s.Name,
                url      = "",
                meta     = new { name = s.Name, button = new string[0] {
                                 }.ToList() },
                Xh       = s.Sequence,
                MenuID   = s.Code,
                iconCls  = s.ICON,
                children = db.view_menu.Where <view_menu>(p1 => p1.UserID.ToString() == tBasUser.UserID.ToString() && p1.ParentCode == s.Code).Select(s1 => new
                {
                    path     = "/" + s1.URL,
                    url      = s1.URL,
                    name     = s1.Name,
                    meta     = new { name = s1.Name, button = new string[] { "save", "cancle", "new", "audit" }.ToList(), isButton = false },
                    MenuPath = s1.URL.Replace("_", "/"),
                    Xh       = s1.Sequence,
                    MenuID   = s1.Code
                }).OrderBy(o => o.Xh).ThenBy(o => o.MenuID).ToList()
            }).OrderBy(o => o.Xh).ThenBy(o => o.MenuID).ToList();

            var tempList = list.ToList();

            //返回登录结果、用户信息、用户验证票据信息
            var    tSysCompany = db.t_sys_company.Where(w => w.CorpID == tBasUser.CorpID);
            string trademark   = tSysCompany.Join(db.t_bas_company, a => a.CorpID, b => b.CorpID, (a, b) => b.TradeMark).FirstOrDefault();
            string TradeMark   = "/" + VirtualPath + "/" + UploadImgPath + "/" + trademark;      //获取当前项目所在目录
            string avatar      = "/" + VirtualPath + "/" + UploadImgPath + "/" + tBasUser.Photo; //获取当前项目所在目录
            var    oUser       = new UserInfo {
                bRes = true, user = new { name = tBasUser.Name, avatar = avatar, TradeMark = TradeMark }, Ticket = FormsAuthentication.Encrypt(ticket), menu = tempList
            };

            //将经销商权限保存在session中
            UserSession.Add("CompanyRightsID", tSysCompany.FirstOrDefault().RightsID);
            //HttpContext.Current.Session["CompanyRightsID"] = tSysCompany.FirstOrDefault().RightsID;
            return(oUser);
        }
    async Task getUserLogin()
    {
        try
        {
            getLogin g = new getLogin();
            g.id      = "1";
            g.jsonrpc = "2.0";
            g.method  = "getUserLogin";

            String js = JsonConvert.SerializeObject(g);
            Console.WriteLine(js);
            await SendRecieve(js);
        }
        catch (Exception gulError) {
            Debug.Log("GetUserLogin: "******"..." + gulError.Message);
        }
    }
예제 #3
0
        /// <summary>
        /// 用户登录
        /// </summary>
        /// <param name="strUser"></param>
        /// <param name="strPwd"></param>
        /// <returns></returns>

        public object Login(getLogin loginData)
        {
            if (!ValidateUser(loginData.strUser, loginData.strPwd))
            {
                return(new { bRes = false, message = "账号或密码不正确!" });
            }
            FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(0, loginData.strUser, DateTime.Now,
                                                                             DateTime.Now.AddHours(1), true, string.Format("{0}&{1}", loginData.strUser, loginData.strPwd),
                                                                             FormsAuthentication.FormsCookiePath);
            webDmsEntities db       = new webDmsEntities();
            var            UserInfo = db.Sys_User.Where(w => w.LoginName == loginData.strUser).FirstOrDefault();

            var homeOjb = new object[] { new { path = "/", iconCls = "fa fa-home", leaf = true, children = new object[] { new { path = "/index", MenuPath = "index", meta = new { name = "主页", button = new string[] { }.ToList() } } } } };

            var list = db.View_menu.Where <View_menu>(p => p.UserID.ToString() == UserInfo.UserID.ToString() && p.MenuParentID == 0).Select(s => new
            {
                path     = "/",
                name     = "",
                meta     = new { name = s.MenuName, button = new string[0] {
                                 }.ToList() },
                Xh       = s.Xh,
                MenuID   = s.MenuID,
                iconCls  = s.MenuIcon,
                children = db.View_menu.Where <View_menu>(p1 => p1.MenuParentID == s.MenuID).Select(s1 => new
                {
                    path     = "/" + s1.MenuPath,
                    name     = s1.MenuName,
                    meta     = new { name = s1.MenuName, button = new string[] { "save", "cancle", "new" }.ToList(), isButton = false },
                    MenuPath = s1.MenuPath.Replace("_", "/"),
                    Xh       = s1.Xh,
                    MenuID   = s1.MenuID
                }).OrderBy(o => o.Xh).ThenBy(o => o.MenuID).ToList()
            }).OrderBy(o => o.Xh).ThenBy(o => o.MenuID).ToList();

            var tempList = homeOjb.Concat(list).ToList();

            //返回登录结果、用户信息、用户验证票据信息
            var oUser = new UserInfo {
                bRes = true, UserName = loginData.strUser, Password = loginData.strPwd, user = new { name = UserInfo.RealName, avatar = UserInfo.Avatar }, Ticket = FormsAuthentication.Encrypt(ticket), menu = tempList
            };

            //将身份信息保存在session中,验证当前请求是否是有效请求
            HttpContext.Current.Session[loginData.strUser] = oUser;
            return(oUser);
        }