public string UserLogin()
        {
            //UseDb("SQL20052");
            //string strsql = @"select count(*) from appcenter";
            //object o = oleDb.GetDataResult(strsql);
            //UseDb();

            string usercode = ToArray(ParamJsonData)[0].ToString();
            string password = ToArray(ParamJsonData)[1].ToString();

            User user    = NewObject <User>();
            bool islogin = user.UserLogin(usercode, password);

            if (islogin)
            {
                BaseUser      EbaseUser = user.GetUser(usercode);
                SysLoginRight right     = new SysLoginRight();
                right.UserId = EbaseUser.UserId;
                right.EmpId  = EbaseUser.EmpId;
                right.WorkId = EbaseUser.WorkId;

                Dept     dept      = NewObject <Dept>();
                BaseDept EbaseDept = dept.GetDefaultDept(EbaseUser.EmpId);
                if (EbaseDept != null)
                {
                    right.DeptId   = EbaseDept.DeptId;
                    right.DeptName = EbaseDept.Name;
                }

                BaseEmployee EbaseEmp = (BaseEmployee)NewObject <BaseEmployee>().getmodel(EbaseUser.EmpId);
                right.EmpName = EbaseEmp.Name;

                BaseWorkers EbaseWork = (BaseWorkers)NewObject <BaseWorkers>().getmodel(EbaseUser.WorkId);
                right.WorkName = EbaseWork.WorkName;

                if (EbaseWork.DelFlag == 0)
                {
                    string       regkey = EbaseWork.RegKey;
                    DESEncryptor des    = new DESEncryptor();
                    des.InputString = regkey;
                    des.DesDecrypt();
                    string[] ret = (des.OutString == null ? "" : des.OutString).Split(new char[] { '|' });
                    if (ret.Length == 2 && ret[0] == EbaseWork.WorkName && Convert.ToDateTime(ret[1]) > DateTime.Now)
                    {
                        ClientInfo.LoginRight = right;//缓存登录用户信息

                        Object[] retObjs = new Object[] {
                            right.EmpName, right.DeptName, right.WorkName
                            , NewObject <Module>().GetModuleList(right.UserId).OrderBy(x => x.SortId).ToList()
                            , NewObject <Menu>().GetMenuList(right.UserId)
                            , NewObject <Dept>().GetHaveDept(right.EmpId)
                            , right
                        };
                        return(ToJson(retObjs));
                    }
                    else
                    {
                        throw new Exception("登录用户的当前机构注册码不正确!");
                    }
                }
                else
                {
                    throw new Exception("登录用户的当前机构还未启用!");
                }
            }
            else
            {
                throw new Exception("输入的用户名密码不正确!");
            }
        }
        public void Login()
        {
            try
            {
                string strUsertitle = FormData["txtUserName"];
                string strPassWord  = FormData["txtUserPWD"];
                string strIP        = FormData["txtUserIP"];
                string strMac       = FormData["txtMac"];

                User user    = NewObject <User>();
                bool islogin = user.UserLogin(strUsertitle, strPassWord);


                if (islogin)
                {
                    BaseUser      EbaseUser = user.GetUser(strUsertitle);
                    SysLoginRight right     = new SysLoginRight();
                    right.UserId = EbaseUser.UserId;
                    right.EmpId  = EbaseUser.EmpId;
                    right.WorkId = EbaseUser.WorkId;
                    oleDb.WorkId = EbaseUser.WorkId;

                    Dept     dept      = NewObject <Dept>();
                    BaseDept EbaseDept = dept.GetDefaultDept(EbaseUser.EmpId);
                    if (EbaseDept != null)
                    {
                        right.DeptId   = EbaseDept.DeptId;
                        right.DeptName = EbaseDept.Name;
                    }

                    BaseEmployee EbaseEmp = (BaseEmployee)NewObject <BaseEmployee>().getmodel(EbaseUser.EmpId);
                    right.EmpName = EbaseEmp.Name;

                    BaseWorkers EbaseWork = (BaseWorkers)NewObject <BaseWorkers>().getmodel(EbaseUser.WorkId);
                    right.WorkName = EbaseWork.WorkName;

                    if (EbaseWork.DelFlag == 0)
                    {
                        string       regkey = EbaseWork.RegKey;
                        DESEncryptor des    = new DESEncryptor();
                        des.InputString = regkey;
                        des.DesDecrypt();
                        string[] ret = (des.OutString == null ? "" : des.OutString).Split(new char[] { '|' });
                        if (ret.Length == 2 && ret[0] == EbaseWork.WorkName && Convert.ToDateTime(ret[1]) > DateTime.Now)
                        {
                            if (PutOutData.ContainsKey("RoleUser"))
                            {
                                PutOutData.Remove("RoleUser");
                            }
                            PutOutData.Add("RoleUser", right);
                            if (PutOutData.ContainsKey("WorkId"))
                            {
                                PutOutData.Remove("WorkId");
                            }
                            PutOutData.Add("WorkId", right.WorkId);

                            DataTable       ListModeules = ConvertExtend.ToDataTable(NewObject <Module>().GetModuleList(right.UserId).OrderBy(x => x.SortId).ToList());
                            List <BaseMenu> listM        = NewObject <Menu>().GetMenuList(right.UserId);
                            //给菜单url后面绑定MenuId参数
                            for (int i = 0; i < listM.Count; i++)
                            {
                                listM[i].UrlName = ConvertExtend.UrlAddParams(listM[i].UrlName, "MenuId", listM[i].MenuId.ToString());
                            }
                            DataTable ListMenus  = ConvertExtend.ToDataTable(listM);
                            DataTable ListDepts  = ConvertExtend.ToDataTable(NewObject <Dept>().GetHaveDept(right.EmpId));
                            DataTable ListGroups = ConvertExtend.ToDataTable(NewObject <Group>().GetGroupList(right.UserId));

                            if (PutOutData.ContainsKey("ListModeules"))
                            {
                                PutOutData.Remove("ListModeules");
                            }
                            PutOutData.Add("ListModeules", ListModeules);
                            if (PutOutData.ContainsKey("ListMenus"))
                            {
                                PutOutData.Remove("ListMenus");
                            }
                            PutOutData.Add("ListMenus", ListMenus);
                            if (PutOutData.ContainsKey("ListDepts"))
                            {
                                PutOutData.Remove("ListDepts");
                            }
                            PutOutData.Add("ListDepts", ListDepts);
                            if (PutOutData.ContainsKey("ListGroups"))
                            {
                                PutOutData.Remove("ListGroups");
                            }
                            PutOutData.Add("ListGroups", ListGroups);

                            JsonResult = RetSuccess("");
                        }
                        else
                        {
                            //throw new Exception("登录用户的当前机构注册码不正确!");
                            JsonResult = RetError("登录用户的当前机构注册码不正确!");
                        }
                    }
                    else
                    {
                        //throw new Exception("登录用户的当前机构还未启用!");
                        JsonResult = RetError("登录用户的当前机构还未启用!");
                    }
                }
                else
                {
                    //throw new Exception("输入的用户名密码不正确!");
                    JsonResult = RetError("输入的用户名密码不正确!");
                }
                //JsonResult = RetSuccess("");
            }
            catch (Exception err)
            {
                //ZhyContainer.CreateException().HandleException(err, "HISPolicy");
                JsonResult = RetError("登录失败,请联系系统管理员!" + err.Message);
            }
        }
        public void UserLogin()
        {
            User user    = NewObject <User>();
            bool islogin = user.UserLogin(frmlogin.usercode, frmlogin.password);

            if (islogin)
            {
                BaseUser      EbaseUser = user.GetUser(frmlogin.usercode);
                SysLoginRight right     = new SysLoginRight();
                right.UserId = EbaseUser.UserId;
                right.EmpId  = EbaseUser.EmpId;
                right.WorkId = EbaseUser.WorkId;

                Dept     dept      = NewObject <Dept>();
                BaseDept EbaseDept = dept.GetDefaultDept(EbaseUser.EmpId);
                if (EbaseDept != null)
                {
                    right.DeptId   = EbaseDept.DeptId;
                    right.DeptName = EbaseDept.Name;
                }

                BaseEmployee EbaseEmp = (BaseEmployee)NewObject <BaseEmployee>().getmodel(EbaseUser.EmpId);
                right.EmpName = EbaseEmp.Name;

                BaseWorkers EbaseWork = (BaseWorkers)NewObject <BaseWorkers>().getmodel(EbaseUser.WorkId);
                right.WorkName = EbaseWork.WorkName;

                if (EbaseWork.DelFlag == 0)
                {
                    string       regkey = EbaseWork.RegKey;
                    DESEncryptor des    = new DESEncryptor();
                    des.InputString = regkey;
                    des.DesDecrypt();
                    string[] ret = (des.OutString == null ? "" : des.OutString).Split(new char[] { '|' });
                    if (ret.Length == 2 && ret[0] == EbaseWork.WorkName && Convert.ToDateTime(ret[1]) > DateTime.Now)
                    {
                        AppGlobal.cache.Add("RoleUser", right);

                        //调用单点登录
                        //Guid TokenKey;
                        //EFWCoreLib.CoreFrame.SSO.SsoHelper.SignIn(right.UserId.ToString(), right.EmpName, out TokenKey);
                        //AppGlobal.cache.Add("TokenKey", TokenKey);

                        frmmain.UserName = right.EmpName;
                        frmmain.DeptName = right.DeptName;
                        frmmain.WorkName = right.WorkName;

                        frmmain.modules = NewObject <Module>().GetModuleList(right.UserId).OrderBy(x => x.SortId).ToList();
                        frmmain.menus   = NewObject <WinMainUIFrame.ObjectModel.RightManager.Menu>().GetMenuList(right.UserId);
                        frmmain.depts   = NewObject <Dept>().GetHaveDept(right.EmpId);

                        frmmain.showSysMenu();
                        ShowWeclomeForm();
                        ((System.Windows.Forms.Form)frmmain).ShowIcon = true;
                        ((System.Windows.Forms.Form)frmmain).Icon     = System.Drawing.Icon.ExtractAssociatedIcon(EFWCoreLib.CoreFrame.Init.AppGlobal.AppRootPath + @"images\msn.ico");
                        ((System.Windows.Forms.Form)frmmain).Show();

                        AppGlobal.winfromMain.MainForm = (System.Windows.Forms.Form)frmmain;
                        //InitMessageForm();//?

                        //登录完成后执行扩展的插件方法
                        string val = AppPluginManage.getbaseinfoDataValue(_pluginName, "LoginCompleted");
                        if (val != null && val.Split('@').Length == 3)
                        {
                            string pluginName     = val.Split('@')[0];
                            string controllerName = val.Split('@')[1];
                            string methodName     = val.Split('@')[2];
                            InvokeController(pluginName, controllerName, methodName, right);
                        }

                        CustomConfigManager.xmlDoc = null;
                    }
                    else
                    {
                        throw new Exception("登录用户的当前机构注册码不正确!");
                    }
                }
                else
                {
                    throw new Exception("登录用户的当前机构还未启用!");
                }
            }
            else
            {
                throw new Exception("输入的用户名密码不正确!");
            }
        }
Beispiel #4
0
        public ServiceResponseData UserLogin()
        {
            string usercode = requestData.GetData <string>(0);
            string password = requestData.GetData <string>(1);

            User user    = NewObject <User>();
            bool islogin = user.UserLogin(usercode, password);

            if (islogin)
            {
                BaseUser      EbaseUser = user.GetUser(usercode);
                SysLoginRight right     = new SysLoginRight();
                right.UserId = EbaseUser.UserId;
                right.EmpId  = EbaseUser.EmpId;
                right.WorkId = EbaseUser.WorkId;

                Dept     dept      = NewObject <Dept>();
                BaseDept EbaseDept = dept.GetDefaultDept(EbaseUser.EmpId);
                if (EbaseDept != null)
                {
                    right.DeptId   = EbaseDept.DeptId;
                    right.DeptName = EbaseDept.Name;
                }

                BaseEmployee EbaseEmp = (BaseEmployee)NewObject <BaseEmployee>().getmodel(EbaseUser.EmpId);
                right.EmpName = EbaseEmp.Name;

                BaseWorkers EbaseWork = (BaseWorkers)NewObject <BaseWorkers>().getmodel(EbaseUser.WorkId);
                right.WorkName = EbaseWork.WorkName;

                if (EbaseWork.DelFlag == 0)
                {
                    string       regkey = EbaseWork.RegKey;
                    DESEncryptor des    = new DESEncryptor();
                    des.InputString = regkey;
                    des.DesDecrypt();
                    string[] ret = (des.OutString == null ? "" : des.OutString).Split(new char[] { '|' });
                    if (ret.Length == 2 && ret[0] == EbaseWork.WorkName && Convert.ToDateTime(ret[1]) > DateTime.Now)
                    {
                        //ClientInfo.LoginRight = right;//缓存登录用户信息
                        //单点登录注册
                        Guid token = Guid.Empty;
                        SsoHelper.SignIn(usercode, new UserInfo()
                        {
                            UserId = usercode, UserName = right.EmpName, DeptName = right.DeptName, WorkName = right.WorkName
                        }, out token);


                        responseData.AddData(right.EmpName);
                        responseData.AddData(right.DeptName);
                        responseData.AddData(right.WorkName);
                        responseData.AddData(NewObject <Module>().GetModuleList(right.UserId).OrderBy(x => x.SortId).ToList());
                        responseData.AddData(NewObject <Menu>().GetMenuList(right.UserId));
                        responseData.AddData(NewObject <Dept>().GetHaveDept(right.EmpId));
                        responseData.AddData(right);

                        return(responseData);
                    }
                    else
                    {
                        throw new Exception("登录用户的当前机构注册码不正确!");
                    }
                }
                else
                {
                    throw new Exception("登录用户的当前机构还未启用!");
                }
            }
            else
            {
                throw new Exception("输入的用户名密码不正确!");
            }
        }