Exemple #1
0
        /// <summary>
        /// 登陆验证
        /// </summary>
        /// <param name="Account">账户</param>
        /// <param name="Password">密码</param>
        /// <param name="msg">消息</param>
        /// <returns></returns>
        public BPMS_User UserLogin(string Account, string Password, out string msg)
        {
            BPMS_User entity = dal.GetEntityByAccount(Account);

            if (entity.Account != "")
            {
                string dbPassword = Md5Helper.MD5(DESEncrypt.Encrypt(Password, entity.Secretkey), 32);
                if (dbPassword == entity.Password)
                {
                    DateTime PreviousVisit = CommonHelper.GetDateTime(entity.LastVisit);
                    DateTime LastVisit     = DateTime.Now;
                    int      LogOnCount    = CommonHelper.GetInt(entity.LogOnCount) + 1;
                    entity.PreviousVisit = PreviousVisit;
                    entity.LastVisit     = LastVisit;
                    entity.LogOnCount    = LogOnCount;
                    dal.UpdateNotLog(entity);
                    msg = "succeed";
                    return(entity);
                }
                else
                {
                    msg = "error";
                    return(entity);
                }
            }
            msg = "-1";
            return(null);
        }
Exemple #2
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        /// <param name="entity">实体类</param>
        /// <returns></returns>
        public int Insert(BPMS_User entity)
        {
            entity.SortCode = CommonHelper.GetInt(this.GetMaxCode());
            int IsOk = DataFactory.DbUtils().Insert(entity);

            #region 写日操作日志
            if (IsOk > 0)
            {
                BPMS_SysLogDAL.Instance.AddTaskLog <BPMS_User>(entity, RequestSession.GetSessionUser().UserId, RequestSession.GetSessionUser().UserName);
            }
            #endregion
            return(IsOk);
        }
Exemple #3
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 /// <param name="entity">实体类</param>
 /// <returns></returns>
 public int Update(BPMS_User entity)
 {
     #region 获取旧值
     var oldEntity = this.GetEntity(BPMS_SysLogDAL.Instance.GetKeyFieldValue <BPMS_User>(entity).ToString());
     #endregion
     int IsOk = DataFactory.DbUtils().Update(entity, "UserId");
     #region 写日操作日志
     if (IsOk > 0)
     {
         BPMS_SysLogDAL.Instance.UpdateTaskLog <BPMS_User>(oldEntity, entity, RequestSession.GetSessionUser().UserId, RequestSession.GetSessionUser().UserName);
     }
     #endregion
     return(IsOk);
 }
Exemple #4
0
 /// <summary>
 /// 得到一个对象实体
 /// </summary>
 public void InitControl()
 {
     InitBindDrop();
     if (!string.IsNullOrEmpty(_key))
     {
         bpms_user = bpms_useribll.GetEntity(_key);
         ControlBindHelper.SetWebControls(this.Page, bpms_user);
         Password.Attributes.Add("disabled", "true");
         hiddenCompanyId.Value    = bpms_user.CompanyId;
         hiddenDepartmentId.Value = bpms_user.DepartmentId;
         hiddenWorkgroupId.Value  = bpms_user.WorkgroupId;
         hiddenRoleId.Value       = bpms_user.RoleId;
     }
 }
Exemple #5
0
        /// <summary>
        /// 确认事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Accept_Click(object sender, EventArgs e)
        {
            string s = Session["dt_session_code"].ToString().ToLower();

            if (txtCode.Value.ToLower() != Session["dt_session_code"].ToString().ToLower())
            {
                txtCode.Focus();
                ShowMsgHelper.Alert_Error(MessageHelper.MSG0026);
                return;
            }
            bool IsOk = false;

            if (_Account != "System" && _Account != "admin")
            {
                bpms_user = bpms_useribll.GetEntity(_key);
                string Password = DESEncrypt.Encrypt(txtUserPwd.Value, bpms_user.Secretkey);
                bpms_user.Password       = Md5Helper.MD5(Password, 32);
                bpms_user.ModifyDate     = DateTime.Now;
                bpms_user.ModifyUserId   = RequestSession.GetSessionUser().UserId;
                bpms_user.ModifyUserName = RequestSession.GetSessionUser().UserName;
                IsOk = bpms_useribll.Update(bpms_user);
                if (IsOk)
                {
                    if (Request["status"] == "1")
                    {
                        Session.Abandon();  //取消当前会话
                        Session.Clear();    //清除当前浏览器所以Session
                        Response.Write("<script>alert('登陆修改成功,请重新登陆');top.location.href='/Index.htm'</script>");
                    }
                    else
                    {
                        ShowMsgHelper.AlertCallback(MessageHelper.MSG0007);
                    }
                }
                else
                {
                    ShowMsgHelper.Alert_Error(MessageHelper.MSG0022);
                }
            }
            else
            {
                ShowMsgHelper.Alert_Error(_Account + "用户不能被修改。");
            }
        }
Exemple #6
0
        /// <summary>
        /// 确认事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Accept_Click(object sender, EventArgs e)
        {
            bool IsOk = false;

            bpms_user              = ControlBindHelper.GetWebControls <BPMS_User>(this.Page);
            bpms_user.Enabled      = Enabled.Checked ? 1 : 0;
            bpms_user.CompanyId    = hiddenCompanyId.Value;
            bpms_user.DepartmentId = hiddenDepartmentId.Value;
            bpms_user.WorkgroupId  = hiddenWorkgroupId.Value;
            bpms_user.RoleId       = hiddenRoleId.Value;
            bpms_user.Spell        = PinyinHelper.PinyinString(bpms_user.RealName);
            if (!string.IsNullOrEmpty(_key))//判断是否编辑
            {
                bpms_user.UserId         = _key;
                bpms_user.ModifyDate     = DateTime.Now;
                bpms_user.ModifyUserId   = RequestSession.GetSessionUser().UserId;
                bpms_user.ModifyUserName = RequestSession.GetSessionUser().UserName;
                bpms_user.Password       = null;
                IsOk = bpms_useribll.Update(bpms_user);
                if (IsOk)
                {
                    ShowMsgHelper.AlertCallback(MessageHelper.MSG0006);
                }
            }
            else
            {
                bpms_user.UserId    = CommonHelper.GetGuid;
                bpms_user.Secretkey = Md5Helper.MD5(CommonHelper.CreateNo(), 16);
                string Password = DESEncrypt.Encrypt(bpms_user.Password, bpms_user.Secretkey);
                bpms_user.Password       = Md5Helper.MD5(Password, 32);
                bpms_user.CreateUserId   = RequestSession.GetSessionUser().UserId;
                bpms_user.CreateUserName = RequestSession.GetSessionUser().UserName;
                IsOk = bpms_useribll.Insert(bpms_user);
                if (IsOk)
                {
                    ShowMsgHelper.AlertCallback(MessageHelper.MSG0005);
                }
            }
            if (!IsOk)
            {
                ShowMsgHelper.Alert_Error(MessageHelper.MSG0022);
            }
        }
Exemple #7
0
        public void ProcessRequest(HttpContext context)
        {
            context.Response.ContentType     = "text/plain";
            context.Response.Buffer          = true;
            context.Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);
            context.Response.AddHeader("pragma", "no-cache");
            context.Response.AddHeader("cache-control", "");
            context.Response.CacheControl = "no-cache";
            string                active                = HttpContext.Current.Request["action"];
            string                Account               = context.Request["Account"]; //账户
            string                Pwd                   = context.Request["Pwd"];     //密码
            string                code                  = context.Request["code"];    //验证码
            BPMS_UserIBLL         bpms_useribll         = new BPMS_UserBLL();
            BPMS_User             bpms_user             = new BPMS_User();
            BPMS_OrganizationIBLL bpms_organizationibll = new BPMS_OrganizationBLL();
            BPMS_Organization     bpms_organization     = new BPMS_Organization();
            BPMS_SysLogIBLL       bpms_syslogibll       = new BPMS_SysLogBLL();
            BPMS_IPBlacklistIBLL  bpms_ipblacklistibll  = new BPMS_IPBlacklistBLL();
            IPScanerHelper        objScan               = new IPScanerHelper();
            string                Msg                   = "";
            string                UserId                = "";

            switch (active)
            {
            case "login":    //登录
                #region 登录
                try
                {
                    string IPAddress = RequestHelper.GetIPAddress();
                    objScan.IP       = IPAddress;
                    objScan.DataPath = context.Server.MapPath("/Themes/IPScaner/QQWry.Dat");
                    string IPAddressName = objScan.IPLocation();
                    if (code.ToLower() != context.Session["dt_session_code"].ToString().ToLower())
                    {
                        Msg = "1";    //验证码输入不正确
                    }
                    else
                    {
                        //系统管理
                        if (Account == ConfigHelper.GetValue("CurrentUserName") && Md5Helper.MD5(Pwd, 32) == ConfigHelper.GetValue("CurrentPassword"))
                        {
                            SessionUser user = new SessionUser();
                            user.UserId         = "System";
                            user.Account        = "System";
                            user.UserName       = "******";
                            user.Gender         = "男";
                            user.Password       = bpms_user.Password;
                            user.Code           = "System";
                            user.DepartmentId   = "超级管理员";
                            user.DepartmentName = "超级管理员";
                            RequestSession.AddSessionUser(user);
                            Msg = "3";    //验证成功
                            bpms_syslogibll.AddSysLoginLog(bpms_user.Account, "登录成功", IPAddress, IPAddressName);
                        }
                        else
                        {
                            #region 验证
                            bpms_ipblacklistibll.TheIpIsRange(IPAddress);
                            string outmsg;
                            bpms_user = bpms_useribll.UserLogin(Account.Trim(), Pwd.Trim(), out outmsg);
                            if (outmsg != "-1")
                            {
                                if (outmsg == "succeed")
                                {
                                    if (bpms_user.Enabled == 1)
                                    {
                                        if (Islogin(context, Account.Trim()))
                                        {
                                            string DepartmentName = "";
                                            bpms_organization = bpms_organizationibll.GetEntity(bpms_user.DepartmentId);
                                            if (bpms_organization != null)
                                            {
                                                DepartmentName = bpms_organization.FullName;
                                            }
                                            SessionUser user = new SessionUser();
                                            user.UserId         = bpms_user.UserId;
                                            user.Account        = bpms_user.Account;
                                            user.UserName       = bpms_user.RealName;
                                            user.Gender         = bpms_user.Gender;
                                            user.Password       = bpms_user.Password;
                                            user.Code           = bpms_user.Code;
                                            user.Secretkey      = bpms_user.Secretkey;
                                            user.DepartmentId   = bpms_user.DepartmentId;
                                            user.DepartmentName = DepartmentName;
                                            user.RoleId         = bpms_user.RoleId;
                                            RequestSession.AddSessionUser(user);
                                            Msg = "3";    //验证成功
                                            bpms_syslogibll.AddSysLoginLog(bpms_user.Account, "登录成功", IPAddress, IPAddressName);
                                        }
                                        else
                                        {
                                            context.Response.Write("6");    //该用户已经登录,不允许重复登录
                                            context.Response.End();
                                        }
                                    }
                                    else
                                    {
                                        Msg = "2";    //账户锁定
                                        bpms_syslogibll.AddSysLoginLog(bpms_user.Account, "账户锁定", IPAddress, IPAddressName);
                                    }
                                }
                                else
                                {
                                    Msg = "4";    //账户或者密码有错误
                                    bpms_syslogibll.AddSysLoginLog(bpms_user.Account, "登录失败", IPAddress, IPAddressName);
                                }
                            }
                            else
                            {
                                Msg = DbErrorMsg.ReturnMsg;    //服务连接不上
                            }
                            #endregion
                        }
                    }
                }
                catch (Exception ex)
                {
                    Msg = ex.Message;
                }
                context.Response.Write(Msg);
                context.Response.End();
                #endregion
                break;

            case "Outlogin":    //安全退出
                UserId = RequestSession.GetSessionUser().UserId;
                CacheHelper.RemoveAllCache("Module" + UserId);
                CacheHelper.RemoveAllCache("Button" + UserId);
                CacheHelper.RemoveAllCache("Data" + UserId);
                context.Session.Abandon();      //取消当前会话
                context.Session.Clear();        //清除当前浏览器所以Session
                context.Response.Write("1");
                context.Response.End();
                break;

            case "LoadFirstMenu":
                UserId = RequestSession.GetSessionUser().UserId;
                IList list = (IList)StorePermission.Instance.GetModulePermission(UserId);
                context.Response.Write(JsonHelper.DropToJson <BPMS_ModulePermission>(list, "JSON"));
                context.Response.End();
                break;

            case "SetSystemId":                                //模块ID、访问模块
                UserId = RequestSession.GetSessionUser().UserId;
                string SystemId = context.Request["SystemId"]; //模块ID
                List <BPMS_ModulePermission> Modulelist = IListHelper.IListToList <BPMS_ModulePermission>((IList)StorePermission.Instance.GetModulePermission(UserId)).FindAll(t => t.MenuId == SystemId);
                foreach (BPMS_ModulePermission entity in Modulelist)
                {
                    BPMS_SysLogDAL.Instance.AddVisitLog(UserId, RequestSession.GetSessionUser().UserName, entity.FullName, "URL:" + entity.NavigateUrl);
                    break;
                }
                //写入Session
                context.Session["SystemId"] = SystemId;
                context.Response.Write(SystemId);
                context.Response.End();
                break;

            case "LeaveModule":    //离开模块
                break;

            default:
                break;
            }
        }
Exemple #8
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 /// <param name="entity">实体类</param>
 /// <returns></returns>
 public int UpdateNotLog(BPMS_User entity)
 {
     return(DataFactory.DbUtils().Update(entity, "UserId"));
 }
Exemple #9
0
 /// <summary>
 /// 更新一条数据
 /// </summary>
 /// <param name="entity">实体类</param>
 /// <returns></returns>
 public bool Update(BPMS_User entity)
 {
     return(dal.Update(entity) >= 0 ? true : false);
 }
Exemple #10
0
 /// <summary>
 /// 增加一条数据
 /// </summary>
 /// <param name="entity">实体类</param>
 /// <returns></returns>
 public bool Insert(BPMS_User entity)
 {
     return(dal.Insert(entity) >= 0 ? true : false);
 }