예제 #1
0
        void tmr_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
        {
            tmr.Enabled = false;
            //每天18:00定时备份数据库到C:\backup目录

            if (DateTime.Now.Hour == 0)
            {
                BaseService svr = new BaseService();
                String DatabaseName = svr.dataCtx.Connection.Database;
                String Pattern =DatabaseName+"_Full_"+ DateTime.Now.ToString("yyyyMMdd")+"*";
                String[] files =Directory.GetFiles(BackupDir, Pattern);
                if (files.Length ==0)
                {
                    svr.dataCtx.ExecuteCommand("exec [usp_BackupDatabase] '" + DatabaseName + "','" + BackupDir + "','F'");
                    log4netHelper.Info("Backuping DB " + DatabaseName + " at " + BackupDir);
                }
                else if (files.Length == 1)
                {
                    string ZipFileName = BackupDir + "\\" + DatabaseName + "_Full_" + DateTime.Now.ToString("yyyyMMdd") + ".zip";
                    Zipper.Zip(files[0], ZipFileName, "zt!@#456");
                    log4netHelper.Info("Backuping DB " + DatabaseName + " at " + BackupDir);
                }
                else
                {
                }
            }
            tmr.Enabled = true;
        }
예제 #2
0
        public void Authentication(enumModule Module,params Button[] SaveButtons)
        {
            if (Session[Session_ID] == null)
            {
                ShowMessage(GetREMes("MsgSessionTimeOut"));
                FormsAuthentication.RedirectToLoginPage();
                //Response.Write("<script>parent.window.location.href='../Login.aspx'</script>");
                Response.End();
                return;
            }
            else
            {
                /* 获取客户端的用户在线标识Guid
                * 如果标识Guid与服务端不一致,则重定向到重复登录页面
                 */
                string m_strUserOnlineID = CookieHelper.GetCookie("UserOnlineID").Value;
                if (!string.IsNullOrEmpty(m_strUserOnlineID))
                {
                    Dictionary<string, string> userlist = Application["OnlineUserList"] as Dictionary<string, string>;
                    if (m_strUserOnlineID != userlist[LoginUserName])
                    {
                        FormsAuthentication.RedirectToLoginPage();
                    }
                }
                /******** End *******/
                //Check Login User's role has right on specific module?
                BaseService svr = new BaseService();
                var rights =svr.GetRoleAccessRight(LoginUserRoleID, Module);
                if (rights==null||!rights.ReadOnly && !rights.New && !rights.Edit && !rights.Del)
                {
                    Response.Redirect("~/AccessDeny.aspx");
                    return;
                }
                else
                {
                    Button btnNew, btnDel, btnSave;

                    if (this.Master != null)
                    {
                        btnNew = (Button)this.Master.FindControl("CPH1").FindControl("btnNew");
                        btnDel = (Button)this.Master.FindControl("CPH1").FindControl("btnDel");
                        btnSave = (Button)this.Master.FindControl("CPH1").FindControl("btnSave");
                    }
                    else
                    {
                        btnNew = (Button)this.FindControl("btnNew");
                        btnDel = (Button)this.FindControl("btnDel");
                        btnSave = (Button)this.FindControl("btnSave");
                    }
                    if (!rights.New) { if (btnNew != null) btnNew.Enabled = false; }
                    if (!rights.Del) { if (btnDel != null) btnDel.Enabled = false; }

                    if (string.IsNullOrEmpty(Request["id"]))
                        return;

                    int id = Convert.ToInt32(Request["id"]);
                    //例如客户信息,销售录入后,是不能更改的,所以要区分新增和修改的权利
                    //id=0& New=false, id>0 & Edit=false
                    if ((!rights.Edit && id > 0) || (!rights.New && id == 0))
                    {
                        if (btnSave != null)
                            btnSave.Enabled = false;
                        foreach (var item in SaveButtons)
                        {
                            item.Enabled = false;
                        }
                    }
                }
            }
        }