Esempio n. 1
0
    public int GetInformationByID(ref string ReturnDescription)
    {
        if (ID < 0)
        {
            throw new Exception("CardPassword 尚未初始化到具体的数据实例上,请先使用 GetInformation 等获取数据信息");
        }

        DataTable dt = new DAL.Tables.T_ElectronTicketAgents().Open("", "[ID] = " + ID, "");

        if ((dt == null) || (dt.Rows.Count < 1))
        {
            ReturnDescription = "数据库读写错误";

            return(-1);
        }

        Name           = dt.Rows[0]["Name"].ToString();
        Password       = dt.Rows[0]["Password"].ToString();
        Company        = dt.Rows[0]["Company"].ToString();
        Url            = dt.Rows[0]["Url"].ToString();
        Balance        = Convert.ToDouble(dt.Rows[0]["Balance"].ToString());
        State          = Shove._Convert.StrToShort(dt.Rows[0]["State"].ToString(), 0);
        UseLotteryList = dt.Rows[0]["UseLotteryList"].ToString();
        IPAddressLimit = dt.Rows[0]["IPAddressLimit"].ToString();

        return(0);
    }
Esempio n. 2
0
    public int EditByID(ref string ReturnDescription)
    {
        if (ID < 0)
        {
            throw new Exception("CardPassword 尚未初始化到具体的数据实例上,请先使用 GetInformation 等获取数据信息");
        }

        DataTable dt = new DAL.Tables.T_ElectronTicketAgents().Open("", "[ID] = " + ID, "");

        if ((dt == null) || (dt.Rows.Count < 1))
        {
            ReturnDescription = "数据库读写错误";

            return(-1);
        }

        DAL.Tables.T_ElectronTicketAgents t_ElectronTicketAgents = new DAL.Tables.T_ElectronTicketAgents();

        t_ElectronTicketAgents.Balance.Value        = Balance;
        t_ElectronTicketAgents.Company.Value        = Company;
        t_ElectronTicketAgents.Password.Value       = Password;
        t_ElectronTicketAgents.Name.Value           = Name;
        t_ElectronTicketAgents.State.Value          = State;
        t_ElectronTicketAgents.Url.Value            = Url;
        t_ElectronTicketAgents.UseLotteryList.Value = UseLotteryList;
        t_ElectronTicketAgents.IPAddressLimit.Value = IPAddressLimit;

        t_ElectronTicketAgents.Update("[ID] = " + ID.ToString());

        return(0);
    }
Esempio n. 3
0
    // 正常用户登录
    public int Login(ref string ReturnDescription)
    {
        DataTable dt = new DAL.Tables.T_ElectronTicketAgents().Open("", "ID=" + ID, "");

        if ((dt == null) || (dt.Rows.Count < 1))
        {
            ReturnDescription = "用户不存在";

            return(-1);
        }

        if (dt.Rows[0]["Password"].ToString() != PF.EncryptPassword(Password))
        {
            ReturnDescription = "密码错误";

            return(-2);
        }

        if (dt.Rows[0]["State"].ToString() != "1")
        {
            ReturnDescription = "代理商帐号已经过期";

            return(-2);
        }

        Name           = dt.Rows[0]["Name"].ToString();
        Password       = dt.Rows[0]["Password"].ToString();
        Company        = dt.Rows[0]["Company"].ToString();
        Url            = dt.Rows[0]["Url"].ToString();
        Balance        = Convert.ToDouble(dt.Rows[0]["Balance"].ToString());
        State          = Shove._Convert.StrToShort(dt.Rows[0]["State"].ToString(), 0);
        UseLotteryList = dt.Rows[0]["UseLotteryList"].ToString();
        IPAddressLimit = dt.Rows[0]["IPAddressLimit"].ToString();

        // 校验成功
        SaveUserIDToCookie();

        return(0);
    }
Esempio n. 4
0
    // 校验 Sign, 代理商合法性, 时间戳
    private int Valid(ref DataSet ReturnDS, ref string UseLotteryList, ref double Balance, ref short State, long AgentID, DateTime TimeStamp, string Sign, params object[] Params)
    {
        UseLotteryList = "";
        Balance        = 0;
        State          = 0;

        TimeSpan ts = DateTime.Now - TimeStamp;

        if (Math.Abs(ts.TotalSeconds) > 300)
        {
            BuildReturnDataSetForError(-20, "访问超时", ref ReturnDS);

            new Log("Agent\\ElectronTicket").Write("访问超时");

            return(-20);
        }

        DataTable dt = new DAL.Tables.T_ElectronTicketAgents().Open("", "[ID] = " + AgentID.ToString(), "");

        if (dt == null)
        {
            BuildReturnDataSetForError(-9999, "未知错误", ref ReturnDS);

            new Log("Agent\\ElectronTicket").Write("未知错误");

            return(-9999);
        }

        if (dt.Rows.Count < 1)
        {
            BuildReturnDataSetForError(-1, "代理商ID错误", ref ReturnDS);

            new Log("Agent\\ElectronTicket").Write("代理商ID错误");

            return(-1);
        }

        string IPAddressLimit = dt.Rows[0]["IPAddressLimit"].ToString();

        if (IPAddressLimit != "")
        {
            IPAddressLimit = "," + IPAddressLimit + ",";

            if (IPAddressLimit.IndexOf("," + GetClientIPAddress() + ",") < 0)
            {
                BuildReturnDataSetForError(-25, "IP地址限制", ref ReturnDS);

                new Log("Agent\\ElectronTicket").Write("IP地址限制");

                return(-25);
            }
        }

        string Key        = dt.Rows[0]["Key"].ToString();
        string SignSource = AgentID.ToString() + ParamterToString(TimeStamp);

        foreach (object Param in Params)
        {
            SignSource += ParamterToString(Param);
        }

        SignSource += Key;

        if (Shove._Security.Encrypt.MD5(SignSource).ToLower() != Sign.ToLower())
        {
            BuildReturnDataSetForError(-2, "签名校验失败", ref ReturnDS);

            new Log("Agent\\ElectronTicket").Write("签名校验失败");

            return(-2);
        }

        UseLotteryList = dt.Rows[0]["UseLotteryList"].ToString();
        Balance        = Shove._Convert.StrToDouble(dt.Rows[0]["Balance"].ToString(), 0);
        State          = Shove._Convert.StrToShort(dt.Rows[0]["State"].ToString(), 0);

        return(0);
    }