//获取金币
        int GetAbroadMoney(string acc, ref string retstr, AccInfo accInfo)
        {
            int money = -1;

            try
            {
                string strurl    = ConfigurationManager.AppSettings["http_abroad"] + "?acc=" + acc;
                string retb64    = Encoding.Default.GetString(HttpPost.Get(new Uri(strurl)));
                string retstring = Encoding.Default.GetString(Convert.FromBase64String(retb64));
                Dictionary <string, object> data = JsonHelper.ParseFromStr <Dictionary <string, object> >(retstring);
                if (data["result"].ToString() == "0")
                {
                    money               = Convert.ToInt32(data["money"]);
                    accInfo.m_isApi     = Convert.ToBoolean(data["isApi"]);
                    accInfo.m_home      = Convert.ToString(data["home"]);
                    accInfo.m_creator   = Convert.ToString(data["creator"]);
                    accInfo.m_gameClose = Convert.ToString(data["gameClose"]);
                }
                else
                {
                    retstr = "result:" + data["result"].ToString();
                }
            }
            catch (Exception ex)
            {
                CLOG.Info(ex.ToString());
                money  = -1;
                retstr = "GetAbroadMoney_error";
            }

            return(money);
        }
        protected Dictionary <string, int> GetTHPayCode()
        {
            Dictionary <string, int> ResList = (Dictionary <string, int>)Cache.Get("THPayCode");

            if (ResList == null)
            {
                try
                {
                    XmlDocument docServer = new XmlDocument();
                    string      path      = HttpContext.Current.Server.MapPath("./");
                    docServer.Load(path + "M_RechangeCFG.xml");

                    XmlNode configServer = docServer.SelectSingleNode("Root");
                    ResList = new Dictionary <string, int>();
                    foreach (XmlNode node in configServer.ChildNodes)
                    {
                        if (node.Name == "Data")
                        {
                            int    paycode    = Convert.ToInt32(node.Attributes["ID"].Value);
                            string appstoreid = node.Attributes["AppStoreID"].Value;
                            if (!string.IsNullOrEmpty(appstoreid))
                            {
                                ResList.Add(appstoreid, paycode);
                            }
                        }
                    }
                }
                catch (Exception ex)
                {
                    CLOG.Info(ex.Message);
                }
                Cache["THPayCode"] = ResList;
            }
            return(ResList);
        }
示例#3
0
 public static void log(HttpContext context, string msg, string uid)
 {
     if (uid == null)
     {
         CLOG.Info(string.Format("{0} ip:{1} uid:null", msg, HandlerHelper.getRemoteIP(context)));
     }
     else
     {
         CLOG.Info(string.Format("{0} ip:{1} uid:{2}", msg, HandlerHelper.getRemoteIP(context), uid));
     }
 }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.RequestType != "GET")
            {
                return;
            }

            CLOG.Info("注册账户");
            //结果用lua返回
            string retLua = Request.Params["returnLua"];

            if (!string.IsNullOrEmpty(retLua) && retLua == "true")
            {
                returnLua = true;
            }
            string strdata = Request.Params["data"];
            string strmd5  = Request.Params["sign"];

            if (string.IsNullOrEmpty(strdata) || string.IsNullOrEmpty(strmd5))
            {
                buildReturnMsg("-1");//data is null
                return;
            }

            strdata = Encoding.Default.GetString(Convert.FromBase64String(strdata));

            if (strmd5 != AESHelper.MD5Encrypt(strdata + AES_KEY))
            {
                buildReturnMsg("-2");//sign error
                return;
            }

            Dictionary <string, object> data = JsonHelper.ParseFromStr <Dictionary <string, object> >(strdata);

            if (data == null || data.Count < 3)
            {
                buildReturnMsg("-3");//json error
                return;
            }
            try
            {
                CheckAccount(data);
            }
            catch (Exception)
            {
                buildReturnMsg("-4");
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            CLOG.Info("xk ... 账户检查");
            if (Request.RequestType != "GET")
            {
                return;
            }

            string sacc     = Request.Params["acc"];
            string platform = Request.Params["platform"];

            if (string.IsNullOrEmpty(sacc) || string.IsNullOrEmpty(platform))
            {
                ReturnMsg("data error");
                return;
            }

            string table = ConfigurationManager.AppSettings["acc_" + platform];

            if (string.IsNullOrEmpty(table))
            {
                ReturnMsg("error platform");//platform error
                return;
            }

            //List<IMongoQuery> imqs = new List<IMongoQuery>();
            //imqs.Add(Query.EQ("acc", sacc));

            string acckey = ConfigurationManager.AppSettings["acckey_" + platform];

            if (string.IsNullOrEmpty(acckey))
            {
                acckey = "acc";
            }

            Dictionary <string, object> data = MongodbAccount.Instance.ExecuteGetBykey(table, acckey, sacc, new string[] { "randkey", "lasttime" });

            if (data != null && data.Count >= 2)
            {
                string jsonstr = data["randkey"].ToString() + "_" + data["lasttime"].ToString();     //JsonHelper.ConvertToStr(data);
                ReturnMsg(jsonstr.Trim(), true);
                ExceptionCheckInfo.doSaveCheckInfo(Request, "login");
            }
            else
            {
                ReturnMsg("db error");
            }
        }
示例#6
0
        protected void Page_Load(object sender, EventArgs e)
        {
            NameValueCollection req = Request.Form;

            if (req.Count <= 0)
            {
                ReturnLuaMsg("req.Count <= 0", false);
                return;
            }

            Dictionary <string, object> data = new Dictionary <string, object>();

            foreach (string key in req)
            {
                data[key] = req[key];
            }

            data["RequestTime"] = DateTime.Now;
            //if (!data.ContainsKey("UseKey") || string.IsNullOrEmpty(data["UseKey"].ToString()))
            //{
            //    Response.Write("findn't UseKey");
            //    return;
            //}

            DateTime curTime  = DateTime.Now;
            string   playerID = Convert.ToString(data["PlayerId"]);
            string   orderID  = string.Format("{0:D2}{1:D2}{2:D2}{3:D2}{4:D2}{5:D2}{6}",
                                              curTime.Year, curTime.Month, curTime.Day, curTime.Hour, curTime.Minute, curTime.Second, playerID);

            data["OrderID"] = orderID;
            try
            {
                if (MongodbPayment.Instance.KeyExistsBykey("shuanglong_orderinfo", "OrderID", orderID))
                {
                    ReturnLuaMsg("has OrderID", false);
                    return;
                }
                MongodbPayment.Instance.ExecuteInsert("shuanglong_orderinfo", data);
            }
            catch (Exception ex)
            {
                CLOG.Info(ex.ToString());
                ReturnLuaMsg(ex.ToString(), false);
                return;
            }
            ReturnLuaMsg(orderID, true);
        }
示例#7
0
    /// <summary>
    /// 跳跃
    /// </summary>
    private void Jump()
    {
        CLOG.I("Jumping");
        CSoundManager.Instance.PlayEffect("jump");

        m_AT.SetInteger("AnimIndex", ( int )EActionType.NORMAL_FLY_UP);
        Vector3 Temp = m_Body.velocity;

        Temp.y          = 0f;
        Temp           += Vector3.up * m_JumpForce;
        m_Body.velocity = Temp;
        m_IsOnGround    = false;

        //CParticleManager.PlaySmoke ( transform.position );

        CGame.Instance.JumpCount++;
    }
示例#8
0
    /// <summary>
    /// 开始游戏
    /// 进入场景之后调用
    /// </summary>
    public void StartGame(  )
    {
        if (Grids == null)
        {
            InitGame(EPlayMode.PLAY_SINGLE);
        }

        if (CSceneManager.Instance.GetRunningScene() != "03_Game")
        {
            CLOG.E("the scene is not game!");
            return;
        }

        Root_Upper  = GameObject.Find("GridNode/Upper").transform;
        Root_Downer = GameObject.Find("GridNode/Downer").transform;

        CreateFirstGrid();
    }
        protected void Page_Load(object sender, EventArgs e)
        {
            NameValueCollection req = Request.Form;

            if (req.Count <= 0)
            {
                Response.Write("req.Count <= 0");
                return;
            }

            Dictionary <string, object> data = new Dictionary <string, object>();

            foreach (string key in req)
            {
                data[key] = req[key];
            }

            data["RequestTime"] = DateTime.Now;
            if (!data.ContainsKey("UseKey") || string.IsNullOrEmpty(data["UseKey"].ToString()))
            {
                Response.Write("findn't UseKey");
                return;
            }

            try
            {
                if (MongodbPayment.Instance.KeyExistsBykey("ex_orderinfo", "UseKey", data["UseKey"].ToString()))
                {
                    Response.Write("has UseKey");
                    return;
                }

                MongodbPayment.Instance.ExecuteInsert("ex_orderinfo", data);
            }
            catch (Exception ex)
            {
                CLOG.Info(ex.ToString());
                Response.Write(ex.ToString());
                return;
            }

            Response.Write("ok");
        }
        void ReturnMsg(string info, bool ret = false)
        {
            CLOG.Info("returnStr: " + info);
            Dictionary <string, object> data = new Dictionary <string, object>();

            data["result"] = ret;
            if (ret)
            {
                data["data"] = info;
            }
            else
            {
                data["error"] = info;
            }

            string jsondata = JsonHelper.ConvertToStr(data);

            Response.Write(Convert.ToBase64String(Encoding.Default.GetBytes(jsondata)));
        }
示例#11
0
        protected void Page_Load(object sender, EventArgs e)
        {
            CLOG.Info("服务器列表。。。: ServerList333333333333333333333");

            //评测服
            string test    = Request.Form["test"];
            string channel = Request.Params["channel"];

            if (!string.IsNullOrEmpty(test) && test == "true" && !string.IsNullOrEmpty(channel))
            {
                if (MongodbConfig.Instance.KeyExistsBykey("TestServers", "channel", channel))
                {
                    return_testxml();
                }
                else
                {
                    return_allxml();
                }
            }
            else
            {
                return_allxml();
            }
        }
示例#12
0
        protected void Page_Load(object sender, EventArgs e)
        {
            NameValueCollection req = Request.Form;

            if (req.Count <= 0)
            {
                Response.Write("error");
                return;
            }

            Dictionary <string, object> data = new Dictionary <string, object>();

            foreach (string key in req)
            {
                data[key] = req[key];
            }

            data["PayTime"] = DateTime.Now;
            string orderID = Convert.ToString(data["cpOrderId"]);
            var    findacc = MongodbPayment.Instance.ExecuteGetBykey("shuanglong_orderinfo", "OrderID", orderID);

            if (findacc != null)
            {
                data["Account"] = findacc["Account"].ToString();
                if (findacc.ContainsKey("Channel"))
                {
                    data["Channel"] = findacc["Channel"].ToString();
                }
                data["PayCode"]  = findacc["PayCode"].ToString();
                data["PlayerId"] = Convert.ToInt32(findacc["PlayerId"].ToString());
                //MongodbPayment.Instance.ExecuteRemoveBykey("shuanglong_orderinfo", "OrderID", orderID);
            }
            MongodbPayment.Instance.ExecuteInsert("shuanglong_log", data);

            if (findacc == null)
            {
                CLOG.Info("orderID error");
                Response.Write("orderIdError");
                return;
            }

            //data["cpOrderId"]
            //data["slOrderId"]
            //data["channel"]
            //data["payType"]
            //data["price"]
            //data["status"]
            //data["userId"]
            //data["time"]
            //data["sign"]


            try
            {
                if (data["sign"].ToString() != getSignForAnyValid(Request))
                {
                    CLOG.Info("check sign fail");
                    Response.Write("errorSign");
                    return;
                }
                if (Convert.ToInt32(data["status"]) == 1)   //支付状态:0未支付,1支付成功,2支付失败
                {
                    data["RMB"] = Convert.ToInt32(data["price"]);
                    if (Convert.ToInt32(data["RMB"]) <= 0)
                    {
                        Response.Write("SUCCESS");
                        return;
                    }
                    if (!MongodbPayment.Instance.KeyExistsBykey("shuanglong_pay", "OrderID", data["cpOrderId"]))
                    {
                        data["OrderID"] = data["cpOrderId"].ToString();
                        data["Process"] = false;

                        if (MongodbPayment.Instance.ExecuteInsert("shuanglong_pay", data))
                        {
                            save_payinfo("lobby", Convert.ToInt32(data["RMB"]));

                            Dictionary <string, object> savelog = new Dictionary <string, object>();
                            savelog["acc"]      = data["Account"];
                            savelog["real_acc"] = data["Account"];
                            savelog["time"]     = DateTime.Now;
                            savelog["channel"]  = data["Channel"];
                            savelog["rmb"]      = data["RMB"];
                            MongodbPayment.Instance.ExecuteInsert("PayLog", savelog);
                        }
                    }
                }
                else
                {
                    Response.Write("SUCCESS");
                    return;
                }
            }
            catch (Exception ex)
            {
                string result = ex.ToString();
                CLOG.Info(result);
                Response.Write("error");
                return;
            }
            Response.Write("SUCCESS");
        }
示例#13
0
        protected void Page_Load(object sender, EventArgs e)
        {
            NameValueCollection req = Request.QueryString;

            if (req.Count <= 0)
            {
                Response.Write("fail");
                return;
            }

            Dictionary <string, object> data = new Dictionary <string, object>();

            foreach (string key in req)
            {
                data[key] = req[key];
            }

            data["PayTime"] = DateTime.Now;
            MongodbPayment.Instance.ExecuteInsert("cgamebt_log", data);

            try
            {
                string from = data["from"].ToString();
                if (!from.Equals("sdk"))
                {
                    Response.Write("fail");
                    return;
                }

                if (data["sign"].ToString() != getSignForAnyValid(Request))
                {
                    Response.Write("fail");
                    return;
                }
                string openSource = "lobby";
                string ext1       = data["ext1"].ToString();
                if (string.IsNullOrEmpty(ext1))
                {
                    Response.Write("fail");
                    return;
                }

                string[] extdata = ext1.Split(':');
                if (extdata.Length < 4)
                {
                    Response.Write("fail");
                    return;
                }
                data["Account"]  = extdata[0];
                data["PlayerId"] = Convert.ToInt32(extdata[1]);
                data["PayCode"]  = extdata[2];
                openSource       = extdata[3];

                try
                {
                    data["RMB"] = (int)(Convert.ToDouble(data["money"]) / 100);
                }
                catch (Exception)
                {
                    data["RMB"] = (int)(Convert.ToInt32(data["money"]) / 100);
                }

                if (Convert.ToInt32(data["RMB"]) <= 0)
                {
                    Response.Write("fail");
                    return;
                }

                if (MongodbPayment.Instance.KeyExistsBykey("cgamebt_pay", "orderid", data["orderid"]))
                {
                    Response.Write("success");
                    return;
                }
                else
                {
                    data["OrderID"] = data["outorderid"].ToString();
                    data["Process"] = false;

                    if (MongodbPayment.Instance.ExecuteInsert("cgamebt_pay", data))
                    {
                        save_payinfo("lobby", Convert.ToInt32(data["RMB"]));
                    }
                }
            }
            catch (Exception ex)
            {
                string result = ex.ToString();
                CLOG.Info(result);
                Response.Write("fail");
                return;
            }
            Response.Write("success");
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            CLOG.Info("xk  ... Default Login11111111111111");
            if (Request.RequestType != "GET")
            {
                return;
            }

            CLOG.Info("xk  ... Default Login22222222222222");

            string xk_data = "";

            foreach (var v in Request.QueryString)
            {
                xk_data += v.ToString() + "," + Request.Params[v.ToString()] + " | ";
            }
            CLOG.Info("request params : " + xk_data);


            //结果用lua返回
            string retLua = Request.Params["returnLua"];

            if (!string.IsNullOrEmpty(retLua) && retLua == "true")
            {
                returnLua = true;
            }

            string strdata = Request.Params["data"];
            string strmd5  = Request.Params["sign"];

            if (string.IsNullOrEmpty(strdata) || string.IsNullOrEmpty(strmd5))
            {
                buildReturnMsg("-1");//data is null
                return;
            }

            strdata = Encoding.Default.GetString(Convert.FromBase64String(strdata));

            if (strmd5 != AESHelper.MD5Encrypt(strdata + AES_KEY))
            {
                buildReturnMsg("-2");//sign error
                return;
            }

            CLOG.Info("Account Info Json: " + strdata);
            Dictionary <string, object> data = JsonHelper.ParseFromStr <Dictionary <string, object> >(strdata);

            if (data == null || data.Count < 3)
            {
                buildReturnMsg("-3");//json error
                return;
            }

            string xk_data1 = "";

            foreach (var v in data)
            {
                xk_data1 += v.Key.ToString() + "," + v.Value + " | ";
            }
            CLOG.Info("data: " + xk_data1);

            try
            {
                CheckAccount(data);
            }
            catch (Exception)
            {
                buildReturnMsg("-4");
            }
        }
        void CheckAccount(Dictionary <string, object> data)
        {
            string sacc = data["n1"].ToString();                                //account
            string spwd = AESHelper.AESDecrypt(data["n2"].ToString(), AES_KEY); //password

            CLOG.Info("password:"******"-14"); //pwd error
                return;
            }

            string platform = Request.Params["platform"];

            string table = ConfigurationManager.AppSettings["acc_" + platform];

            if (string.IsNullOrEmpty(table))
            {
                buildReturnMsg("-15");//platform error
                return;
            }

            List <IMongoQuery> imqs = new List <IMongoQuery>();

            imqs.Add(Query.EQ("acc", sacc));
            imqs.Add(Query.EQ("pwd", spwd));
            int retCode = tryLogin(sacc, spwd, table);

            //if (MongodbAccount.Instance.KeyExistsByQuery(table, Query.And(imqs)))
            if (retCode == 0)
            {
                Random rd      = new Random();
                int    randkey = rd.Next();
                Dictionary <string, object> updata = new Dictionary <string, object>();
                DateTime now = DateTime.Now;
                updata["randkey"]  = randkey;
                updata["lasttime"] = now.Ticks;
                updata["lastip"]   = Request.ServerVariables.Get("Remote_Addr").ToString();
                string strerr = MongodbAccount.Instance.ExecuteUpdate(table, "acc", sacc, updata);
                if (strerr != "")
                {
                    buildReturnMsg("-11");//server error
                }
                else
                {
                    RSAHelper rsa = new RSAHelper();
                    rsa.setModulus(data["n3"].ToString());

                    string clientkey = randkey.ToString() + ":" + now.Ticks.ToString();
                    buildReturnMsg(rsa.RSAEncryptStr(clientkey), true);//login success

                    string channelID = null;
                    if (data.ContainsKey("n4"))
                    {
                        channelID = data["n4"].ToString();
                    }

                    Dictionary <string, object> savelog = new Dictionary <string, object>();
                    savelog["acc"]      = sacc;
                    savelog["acc_real"] = sacc;
                    string deviceID = Request.Params["deviceID"];
                    if (!string.IsNullOrEmpty(deviceID))
                    {
                        savelog["acc_dev"] = deviceID;
                    }
                    savelog["ip"]      = Request.ServerVariables.Get("Remote_Addr").ToString();
                    savelog["time"]    = now;
                    savelog["channel"] = channelID;
                    MongodbAccount.Instance.ExecuteInsert("LoginLog", savelog);
                }
            }
            else
            {
                // ReturnMsg("-10");//acc or pwd error
                buildReturnMsg(retCode.ToString());
            }
        }
示例#16
0
        protected void Page_Load(object sender, EventArgs e)
        {
            NameValueCollection req = Request.QueryString;

            if (req.Count <= 0)
            {
                Response.Write("success");
                return;
            }

            Dictionary <string, object> data = new Dictionary <string, object>();

            foreach (string key in req)
            {
                data[key] = req[key];
            }

            data["PayTime"] = DateTime.Now;
            string useKey = "";

            if (data.ContainsKey("cpdefinepart"))
            {
                useKey = data["cpdefinepart"] as string;
            }
            var findacc = MongodbPayment.Instance.ExecuteGetBykey("ex_orderinfo", "UseKey", useKey);

            if (findacc != null)
            {
                data["Account"]  = findacc["Account"].ToString();
                data["PayCode"]  = findacc["PayCode"].ToString();
                data["PlayerId"] = Convert.ToInt32(findacc["PlayerId"].ToString());
                MongodbPayment.Instance.ExecuteRemoveBykey("ex_orderinfo", "UseKey", useKey);
            }
            MongodbPayment.Instance.ExecuteInsert("baidu_log", data);

            if (findacc == null)
            {
                CLOG.Info("use key error");
                Response.Write("success");
                return;
            }

            try
            {
                if (data["sign"].ToString() != getSignForAnyValid(Request))
                {
                    CLOG.Info("check sign fail");
                    Response.Write("success");
                    return;
                }

                if (data["status"].ToString() == "success")
                {
                    string unitStr     = data["unit"] as string;
                    int    base_amount = 1;
                    if (unitStr == "fen")
                    {
                        base_amount = 100;
                    }
                    try
                    {
                        data["RMB"] = (int)(Convert.ToDouble(data["amount"]) / base_amount);
                    }
                    catch (Exception)
                    {
                        data["RMB"] = (int)(Convert.ToInt32(data["amount"]) / base_amount);
                    }

                    if (Convert.ToInt32(data["RMB"]) <= 0)
                    {
                        Response.Write("success");
                        return;
                    }

                    if (!MongodbPayment.Instance.KeyExistsBykey("baidu_pay", "OrderID", data["orderid"]))
                    {
                        data["OrderID"] = data["orderid"].ToString();
                        data["Process"] = false;

                        if (MongodbPayment.Instance.ExecuteInsert("baidu_pay", data))
                        {
                            save_payinfo("lobby", Convert.ToInt32(data["RMB"]));
                        }
                    }
                }
                else
                {
                    Response.Write("success");
                    return;
                }
            }
            catch (Exception ex)
            {
                string result = ex.ToString();
                CLOG.Info(result);
            }
            Response.Write("success");
        }
示例#17
0
        protected void Page_Load(object sender, EventArgs e)
        {
            NameValueCollection req = Request.Form;

            if (req.Count <= 0)
            {
                Response.Write("error");
                return;
            }

            Dictionary <string, object> data = new Dictionary <string, object>();

            foreach (string key in req)
            {
                data[key] = req[key];
            }

            data["CreateTime"] = DateTime.Now;
            MongodbPayment.Instance.ExecuteInsert("wanke_log", data);

            try
            {
                if (data["sign"].ToString() != getSignForAnyValid(Request))
                {
                    Response.Write("errorSign");
                    return;
                }
                string openSource = "lobby";
                string extInfo    = data["attach"].ToString();
                if (string.IsNullOrEmpty(extInfo))
                {
                    Response.Write("error");
                    return;
                }

                string[] extdata = extInfo.Split('-');
                if (extdata.Length < 5)
                {
                    Response.Write("error");
                    return;
                }
                data["OrderID"]  = extdata[0];
                data["Account"]  = extdata[1];
                data["PlayerId"] = Convert.ToInt32(extdata[2]);
                data["PayCode"]  = extdata[3];
                openSource       = extdata[4];

                try
                {
                    data["RMB"] = (int)(Convert.ToDouble(data["amount"]));
                }
                catch (Exception)
                {
                    data["RMB"] = (int)(Convert.ToInt32(data["amount"]));
                }

                if (Convert.ToInt32(data["RMB"]) <= 0)
                {
                    Response.Write("error");
                    return;
                }

                if (MongodbPayment.Instance.KeyExistsBykey("wanke_pay", "orderid", data["orderid"]))
                {
                    Response.Write("success");
                    return;
                }
                else
                {
                    data["Process"] = false;

                    if (MongodbPayment.Instance.ExecuteInsert("wanke_pay", data))
                    {
                        save_payinfo("lobby", Convert.ToInt32(data["RMB"]));
                    }
                }
            }
            catch (Exception ex)
            {
                string result = ex.ToString();
                CLOG.Info(result);
                Response.Write("error");
                return;
            }
            Response.Write("success");
        }
示例#18
0
    public override OpRes doDyop(object param, GMUser user)
    {
        ParamScore p     = (ParamScore)param;
        long       score = 0;

        if (!long.TryParse(p.m_score, out score))
        {
            return(OpRes.op_res_param_not_valid);
        }

        if (score < 0)
        {
            return(OpRes.op_res_param_not_valid);
        }

        if (!RightMap.hasRight(user.m_accType, RIGHT.SCORE, user.m_right))
        {
            return(OpRes.op_res_no_right);
        }

        score = ItemHelp.saveMoneyValue(score);

        OpRes res = OpRes.op_res_failed;

        try
        {
            HttpContext.Current.Application.Lock();
            if (user.m_accType == AccType.ACC_SUPER_ADMIN ||
                user.m_accType == AccType.ACC_SUPER_ADMIN_SUB)
            {
                res = doScoreSuperAdmin(p, score, user);
            }
            else
            {
                if (p.isToPlayer()) // 给玩家上分下分
                {
                    res = doScorePlayer(p, score, user);
                }
                else // 给管理,上分下分
                {
                    res = doScore(p, score, user);
                }
            }
        }
        catch (System.Exception ex)
        {
            CLOG.Info("DyOpScore.doDyop, 出现异常:{0}", ex.ToString());
            res = OpRes.op_res_happend_exception;
        }
        finally
        {
            HttpContext.Current.Application.UnLock();
        }

        // 后续处理 对于来自订单的操作,由于订单Id不会变化,采取轮循会有问题
        if (res == OpRes.op_res_player_in_game &&
            p.m_orderFrom == OrderGenerator.ORDER_FROM_BG_OP)
        {
            QueryOrderState qos   = new QueryOrderState();
            int             state = qos.queryOrderState(p.m_orderId,
                                                        user.sqlDb.getServer(user.getMySqlServerID()).queryOne, 10, 1000);
            if (state != PlayerReqOrderState.STATE_PROCESSING)
            {
                res = (state == PlayerReqOrderState.STATE_FINISH) ? OpRes.opres_success : OpRes.op_res_failed;
            }
        }

        return(res);
    }
        protected void Page_Load(object sender, EventArgs e)
        {
            if (Request.RequestType != "GET")
            {
                //return_nullxml();
                return;
            }

            CLOG.Info("服务器列表。。。: ServerList");
            //评测服
            string test = Request.Params["test"];

            if (!string.IsNullOrEmpty(test))
            {
                return_testxml();
                return;
            }

            //测试服
            string channel = Request.Params["channel"];
            string ver     = Request.Params["ver"];

            if (!string.IsNullOrEmpty(channel) && !string.IsNullOrEmpty(ver))
            {
                //List<IMongoQuery> imq = new List<IMongoQuery>();
                //imq.Add(Query.EQ("channel", BsonValue.Create(channel)));
                //imq.Add(Query.EQ("isTest", BsonValue.Create(1)));
                //if (MongodbConfig.Instance.ExecuteGetCount("TestServers", Query.And(imq)) > 0)

                if (ConverVer(ver) >= load_ver() && MongodbConfig.Instance.KeyExistsBykey("TestServers", "channel", channel))
                {
                    return_testxml();
                    return;
                }
            }

            XmlDocument docReturn = null;

            if (!Convert.ToBoolean(ConfigurationManager.AppSettings["debug"]))
            {
                docReturn = (XmlDocument)Cache.Get("allserver");
            }

            if (docReturn == null)
            {
                var ret = MongodbConfig.Instance.ExecuteGetAll("ServerList");
                if (ret != null)
                {
                    docReturn = new XmlDocument();
                    XmlElement configReturn = docReturn.CreateElement("ServerList");
                    var        it           = ret.GetEnumerator();
                    while (it.MoveNext())
                    {
                        if (it.Current.ContainsKey("test"))
                        {
                            if (Convert.ToInt32(it.Current["test"]) == 1)
                            {
                                continue;
                            }
                        }

                        var        it2        = it.Current.GetEnumerator();
                        XmlElement serverNode = docReturn.CreateElement("server");
                        while (it2.MoveNext())
                        {
                            if (it2.Current.Key == "_id")
                            {
                                continue;
                            }

                            XmlAttribute attrVer = docReturn.CreateAttribute(it2.Current.Key);
                            attrVer.Value = it2.Current.Value.ToString();
                            serverNode.Attributes.Append(attrVer);
                        }
                        configReturn.AppendChild(serverNode);
                    }
                    docReturn.AppendChild(configReturn);

                    Cache.Insert("allserver", docReturn);
                }
                else
                {
                    return_nullxml();
                    return;
                }
            }

            Response.Write(Server.UrlEncode(docReturn.InnerXml));
        }
示例#20
0
        protected void Page_Load(object sender, EventArgs e)
        {
            NameValueCollection req = Request.Form;

            if (req.Count <= 0)
            {
                ReturnMsg(99999);
                return;
            }

            Dictionary <string, object> param = new Dictionary <string, object>();

            foreach (string key in req)
            {
                param[key] = req[key];
            }
            param["time"] = DateTime.Now;
            MongodbPayment.Instance.ExecuteInsert("wechat_log", param);

            try
            {
                string playerId = param["id"].ToString();
                string orderid  = param["orderid"].ToString();
                string chargeid = param["chargeid"].ToString();
                string amount   = param["amount"].ToString();
                string sign     = param["sign"].ToString();

                if (string.IsNullOrEmpty(playerId) || string.IsNullOrEmpty(orderid) || string.IsNullOrEmpty(chargeid) || string.IsNullOrEmpty(amount))
                {
                    ReturnMsg(99999);
                    return;
                }

                int  iPlayerid;
                bool flag = int.TryParse(playerId, out iPlayerid);
                if (flag == false)
                {
                    ReturnMsg(99999);
                    return;
                }

                int iAmount = 0;
                flag = int.TryParse(amount, out iAmount);
                if (flag == false)
                {
                    ReturnMsg(99999);
                    return;
                }
                iAmount = iAmount / 100;

                if (sign != getSignForAnyValid(Request))
                {
                    // Response.Write(getSignForAnyValid(Request));
                    ReturnMsg(10099);
                    return;
                }

                Dictionary <string, object> data = new Dictionary <string, object>();
                data["amount"] = iAmount.ToString();
                try
                {
                    data["RMB"] = (int)Convert.ToDouble(data["amount"]);
                }
                catch (Exception)
                {
                    data["RMB"] = Convert.ToInt32(data["amount"]);
                }

                if (!MongodbPayment.Instance.KeyExistsBykey("wechat_pay", "OrderID", orderid) && Convert.ToInt32(data["RMB"]) > 0)
                {
                    DateTime now         = DateTime.Now;
                    string   playerTable = "player_info";
                    Dictionary <string, object> PlayerInfo = MongodbPlayer.Instance.ExecuteGetBykey(playerTable, "player_id", iPlayerid, new string[] { "platform", "ChannelID", "account" });
                    if (PlayerInfo != null && PlayerInfo.Count > 0)
                    {
                        data["Account"]   = PlayerInfo["account"].ToString();
                        data["ChannelId"] = PlayerInfo["ChannelID"].ToString();
                    }
                    else
                    {
                        ReturnMsg(10004);
                        return;
                    }
                    data["OrderID"]   = orderid;
                    data["PayCode"]   = chargeid;
                    data["Process"]   = false;
                    data["PlayerId"]  = Convert.ToInt32(playerId);
                    data["ServerId"]  = 0;
                    data["ChannelId"] = PlayerInfo["ChannelID"].ToString();
                    data["PayTime"]   = now;

                    if (MongodbPayment.Instance.ExecuteInsert("wechat_pay", data))
                    {
                        string shoppage = "wechat";

                        save_payinfo(shoppage, Convert.ToInt32(data["RMB"]));
                    }

                    Dictionary <string, object> savelog = new Dictionary <string, object>();
                    savelog["acc"]      = data["Account"];
                    savelog["real_acc"] = data["Account"];
                    //记录设备号

                    savelog["time"]     = now;
                    savelog["channel"]  = Convert.ToInt32(data["ChannelId"]);
                    savelog["rmb"]      = data["RMB"];
                    savelog["pay_type"] = 1;   //微信支付

                    // 写pay log
                    MongodbPayment.Instance.ExecuteInsert("PayLog", savelog);

                    // 通知游戏服务器

                    /*
                     * string url = "orderid=" + data["OrderID"].ToString() + "&playerid=" + data["PlayerId"].ToString() + "&paycode=" +
                     *  data["PayCode"].ToString() + "&channelid=" + data["ChannelId"].ToString();
                     * string server_api = "http://" + ConfigurationManager.AppSettings["server_api"].ToString() + "/cmd=1&" + url;
                     *
                     * var ret = HttpPost.Post(new Uri(server_api));
                     * if (ret != null)
                     * {
                     *  string retstr = Encoding.UTF8.GetString(ret);
                     *  if (retstr == "ok")
                     *  {
                     *      ReturnMsg(10000);
                     *      return;
                     *  }
                     * }
                     * */

                    // 插入数据到 Gmrecharge 表中
                    Dictionary <string, object> dataGmRecharge = new Dictionary <string, object>();
                    dataGmRecharge["playerId"] = Convert.ToInt32(playerId);
                    dataGmRecharge["rtype"]    = 0;
                    dataGmRecharge["param"]    = Convert.ToInt32(chargeid);
                    MongodbPlayer.Instance.ExecuteInsert("gmRecharge", dataGmRecharge);

                    // 发邮件
                    ParamSendMail paramMail = new ParamSendMail();
                    paramMail.m_title    = ConfigurationManager.AppSettings["mail_title"].ToString();
                    paramMail.m_sender   = ConfigurationManager.AppSettings["mail_sender"].ToString();
                    paramMail.m_content  = ConfigurationManager.AppSettings["mail_content"].ToString();
                    paramMail.m_playerId = Convert.ToInt32(playerId);


                    bool res = sendMail(paramMail);
                    ReturnMsg(10000);
                }
                else
                {
                    ReturnMsg(10003);
                }
            }
            catch (Exception ex)
            {
                ReturnMsg(99999);
                CLOG.Info(ex.ToString());
                return;
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            string result           = "success";
            NameValueCollection req = Request.Form;

            if (req.Count <= 0)
            {
                Response.Write("req.Count <= 0");
                Response.Flush();
                return;
            }

            Dictionary <string, object> data = new Dictionary <string, object>();

            foreach (string key in req)
            {
                data[key] = req[key];
            }

            data["PayTime"] = DateTime.Now;
            MongodbPayment.Instance.ExecuteInsert("anysdk_log", data);

            try
            {
                if (data["sign"].ToString() == getSignForAnyValid(Request) && data["pay_status"].ToString() == "1")
                {
                    string pid   = data["product_id"].ToString();
                    int    index = pid.LastIndexOf('_');
                    if (index > 0)
                    {
                        pid = pid.Remove(0, index + 1);
                    }

                    //try
                    //{
                    //    int icode = Convert.ToInt32(pid);
                    //}
                    //catch (Exception ed)
                    //{
                    //    data["amount"] = "0";//异常订单不算充值
                    //    result = ed.ToString();
                    //}

                    try
                    {
                        data["RMB"] = (int)Convert.ToDouble(data["amount"]);
                    }
                    catch (Exception)
                    {
                        data["RMB"] = Convert.ToInt32(data["amount"]);
                    }

                    if (!MongodbPayment.Instance.KeyExistsBykey("anysdk_pay", "OrderID", data["order_id"]) && Convert.ToInt32(data["RMB"]) > 0)
                    {
                        data["OrderID"]  = data["order_id"].ToString();
                        data["Account"]  = data["channel_number"].ToString() + "_" + data["user_id"].ToString();
                        data["PayCode"]  = pid;
                        data["Process"]  = false;
                        data["PlayerId"] = Convert.ToInt32(data["game_user_id"]);
                        data["ServerId"] = Convert.ToInt32(data["server_id"]);

                        if (data.ContainsKey("private_data"))
                        {
                            string[] strs = data["private_data"].ToString().Trim().Split('#');
                            if (strs.Length > 1)
                            {
                                data["shoppage"] = strs[0];
                                data["Account"]  = strs[1];
                            }
                            else
                            {
                                data["shoppage"] = data["private_data"];
                            }
                        }

                        if (MongodbPayment.Instance.ExecuteInsert("anysdk_pay", data))
                        {
                            if (data.ContainsKey("shoppage"))
                            {
                                save_payinfo(data["shoppage"].ToString(), Convert.ToInt32(data["RMB"]));
                            }
                            else
                            {
                                save_payinfo("lobby", Convert.ToInt32(data["RMB"]));
                            }
                        }

                        Dictionary <string, object> savelog = new Dictionary <string, object>();
                        savelog["acc"]     = data["Account"];
                        savelog["time"]    = DateTime.Now;
                        savelog["channel"] = data["channel_number"].ToString();
                        savelog["rmb"]     = data["RMB"];
                        MongodbPayment.Instance.ExecuteInsert("PayLog", savelog);

                        //ret_code = data["ret_code"].ToString();
                        price = data["RMB"].ToString();
                        point = data["product_name"].ToString();
                        //debug_msg = data["debug_msg"].ToString();
                        string URL = string.Format("http://103.249.210.94/auth/topup/inapp_purchase/android.php?debug_msg={0}&price={1}&point={2}&ret_code={3}", result, price, point, result);
                        HttpPost.Post(new Uri(URL));
                    }
                }
            }
            catch (Exception ex)
            {
                result = ex.ToString();
                CLOG.Info(ex.ToString());
            }

            Response.Write(result);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            //NameValueCollection req = Request.Form; //获取post类型的参数
            NameValueCollection req = Request.QueryString; //获取get类型的参数

            //Stream s = Request.GetBufferedInputStream();

            if (req.Count <= 0)
            {
                Response.Write("req.Count <= 0");
                Response.Flush();
                return;
            }
            //string dataStr = Encoding.UTF8.GetString(buffer);

            //Dictionary<string, object> data = JsonHelper.ParseFromStr<Dictionary<string, object>>(dataStr);
            Dictionary <string, object> data = new Dictionary <string, object>();

            foreach (string key in req)
            {
                data[key] = req[key];
            }

            data["log_time"] = DateTime.Now;
            MongodbPayment.Instance.ExecuteInsert("third_log", data);

            try
            {
                if (data["sign"].ToString() != getSignForAnyValid(Request))
                {
                    Response.Write("errorSign");
                    return;
                }

                var findacc = MongodbPayment.Instance.ExecuteGetBykey("ex_orderinfo", "UseKey", data["cp_order_no"]);
                if (findacc != null)
                {
                    data["OrderID"]  = data["cp_order_no"];
                    data["PlayerId"] = Convert.ToInt32(findacc["PlayerId"].ToString());
                    data["PayCode"]  = data["goods_id"];
                    data["Account"]  = data["u_id"];
                    //MongodbPayment.Instance.ExecuteRemoveBykey("ex_orderinfo", "UseKey", data["cp_order_no"]);
                }

                try
                {
                    data["RMB"] = (int)Convert.ToDouble(data["goods_price"]);
                }
                catch (Exception)
                {
                    data["RMB"] = (int)(Convert.ToInt32(data["goods_price"]));
                }

                if (Convert.ToInt32(data["RMB"]) <= 0)
                {
                    Response.Write("error");
                    return;
                }


                if (MongodbPayment.Instance.KeyExistsBykey("miaozm_pay", "cp_order_no", data["cp_order_no"]))
                {
                    Response.Write("success");
                    return;
                }
                else
                {
                    data["Process"] = false;

                    if (MongodbPayment.Instance.ExecuteInsert("miaozm_pay", data))
                    {
                        save_payinfo("lobby", Convert.ToInt32(data["RMB"]));
                    }
                }
            }
            catch (Exception ex)
            {
                string result = ex.ToString();
                CLOG.Info(result);
                Response.Write("error");
                return;
            }
            Response.Write("success");
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            string result           = "ok";
            NameValueCollection req = Request.Form;

            if (req.Count <= 0)
            {
                Response.Write("req.Count <= 0");
                Response.Flush();
                return;
            }

            Dictionary <string, object> data = new Dictionary <string, object>();

            foreach (string key in req)
            {
                data[key] = req[key];
            }

            data["PayTime"] = DateTime.Now;
            MongodbPayment.Instance.ExecuteInsert("anysdk_log", data);

            try
            {
                if (data["sign"].ToString() == getSignForAnyValid(Request) && data["pay_status"].ToString() == "1")
                {
                    int payCode = check_paycode(data["product_id"].ToString());
                    if (payCode < 0)
                    {
                        data["amount"] = "0.0";//异常订单不算充值
                    }

                    try
                    {
                        data["RMB"] = Convert.ToDouble(data["amount"]);
                    }
                    catch (Exception)
                    {
                        data["RMB"] = (double)Convert.ToInt32(data["amount"]);
                    }
                    if (!MongodbPayment.Instance.KeyExistsBykey("anysdk_pay", "OrderID", data["order_id"]) && Convert.ToDouble(data["RMB"]) > 0)
                    {
                        data["OrderID"]  = data["order_id"].ToString();
                        data["Account"]  = data["channel_number"].ToString() + "_" + data["user_id"].ToString();
                        data["PayCode"]  = payCode.ToString();
                        data["Process"]  = false;
                        data["PlayerId"] = Convert.ToInt32(data["game_user_id"]);
                        data["ServerId"] = Convert.ToInt32(data["server_id"]);

                        if (data.ContainsKey("private_data"))
                        {
                            string[] strs = data["private_data"].ToString().Trim().Split('#');
                            if (strs.Length > 1)
                            {
                                data["shoppage"] = strs[0];

                                //爱贝渠道特殊处理
                                if (data["channel_number"].ToString() == "800053")
                                {
                                    data["Account"] = strs[1];
                                }
                                //真实账号KEY
                                data["real_Account"] = strs[1];
                                //设备号
                                if (strs.Length > 2)
                                {
                                    data["acc_dev"] = strs[2];
                                }
                            }
                            else
                            {
                                data["shoppage"] = data["private_data"];
                            }
                        }
                        if (MongodbPayment.Instance.ExecuteInsert("anysdk_pay", data))
                        {
                            string shoppage = "lobby";
                            if (data.ContainsKey("shoppage"))
                            {
                                shoppage = data["shoppage"].ToString();
                                if (string.IsNullOrEmpty(shoppage))
                                {
                                    shoppage = "lobby";
                                }
                            }

                            save_payinfo(shoppage, Convert.ToDouble(data["RMB"]));
                        }

                        Dictionary <string, object> savelog = new Dictionary <string, object>();
                        savelog["acc"] = data["Account"];
                        if (data.ContainsKey("real_Account"))
                        {
                            savelog["real_acc"] = data["real_Account"];
                        }
                        //记录设备号
                        if (data.ContainsKey("acc_dev"))
                        {
                            savelog["acc_dev"] = data["acc_dev"];
                        }
                        savelog["time"]    = DateTime.Now;
                        savelog["channel"] = data["channel_number"].ToString();
                        savelog["rmb"]     = data["RMB"];
                        MongodbPayment.Instance.ExecuteInsert("PayLog", savelog);
                    }
                }
            }
            catch (Exception ex)
            {
                result = ex.ToString();
                CLOG.Info(ex.ToString());
            }

            Response.Write(result);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            string result           = "ok";
            NameValueCollection req = Request.Form;

            if (req.Count <= 0)
            {
                Response.Write("req.Count <= 0");
                Response.Flush();
                return;
            }

            Dictionary <string, object> data = new Dictionary <string, object>();

            foreach (string key in req)
            {
                data[key] = req[key];
            }

            data["PayTime"] = DateTime.Now;
            MongodbPayment.Instance.ExecuteInsert("anysdk_log", data);

            try
            {
                if (data["sign"].ToString() == getSignForAnyValid(Request) && data["pay_status"].ToString() == "1")
                {
                    string payCode  = data["product_id"].ToString();
                    int    payMoney = 0;
                    try
                    {
                        payMoney = (int)Convert.ToDouble(data["amount"]);
                    }
                    catch (Exception)
                    {
                        payMoney = Convert.ToInt32(data["amount"]);
                    }
                    string orderID  = "anysdk_" + data["order_id"].ToString();
                    string shoppage = "lobby";
                    string account  = "";
                    if (data.ContainsKey("private_data"))
                    {
                        string[] strs = data["private_data"].ToString().Trim().Split('#');
                        if (strs.Length >= 2)
                        {
                            shoppage = strs[0];
                            account  = strs[1];
                        }
                        else
                        {
                            Response.Write("private_data error");
                            Response.Flush();
                            return;
                        }
                    }
                    else
                    {
                        Response.Write("private_data error");
                        Response.Flush();
                        return;
                    }

                    if (!MongodbPayment.Instance.KeyExistsBykey("baiduview_pay", "OrderID", orderID) && payMoney > 0)
                    {
                        Dictionary <string, object> savedata = new Dictionary <string, object>();

                        savedata["OrderID"]     = orderID;
                        savedata["Account"]     = account;
                        savedata["RMB"]         = payMoney;
                        savedata["PayCode"]     = payCode;
                        savedata["Custom"]      = 0;
                        savedata["PayTime"]     = DateTime.Now;
                        savedata["PayPlatform"] = "anysdk";
                        savedata["ChannelID"]   = data["channel_number"].ToString();;
                        savedata["Process"]     = false;
                        savedata["PlayerId"]    = Convert.ToInt32(data["game_user_id"]);

                        if (MongodbPayment.Instance.ExecuteInsert("baiduview_pay", savedata))
                        {
                            save_payinfo(shoppage, payMoney);
                        }

                        Dictionary <string, object> savelog = new Dictionary <string, object>();
                        savelog["acc"] = account;
                        //记录设备号
                        if (data.ContainsKey("acc_dev"))
                        {
                            savelog["acc_dev"] = data["acc_dev"];
                        }
                        savelog["time"]    = DateTime.Now;
                        savelog["channel"] = savedata["ChannelID"].ToString();
                        savelog["rmb"]     = savedata["RMB"];
                        MongodbPayment.Instance.ExecuteInsert("PayLog", savelog);
                    }
                }
            }
            catch (Exception ex)
            {
                result = ex.ToString();
                CLOG.Info(ex.ToString());
            }

            Response.Write(result);
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            //  NameValueCollection req = Request.Form;
            Stream s = Request.GetBufferedInputStream();

            byte[] buffer = new byte[s.Length];
            s.Read(buffer, 0, (int)s.Length);
            //string dataStr = Encoding.ASCII.GetString(buffer);
            string dataStr = Encoding.UTF8.GetString(buffer);

            Dictionary <string, object> data = JsonHelper.ParseFromStr <Dictionary <string, object> >(dataStr);

            data["log_time"] = DateTime.Now;
            MongodbPayment.Instance.ExecuteInsert("third_log", data);

            try
            {
                if (data["sign"].ToString() != getSignForAnyValid(data))
                {
                    Response.Write("errorSign");
                    return;
                }
                string openSource = "lobby";
                string textInfo   = data["attch"].ToString();
                if (string.IsNullOrEmpty(textInfo))
                {
                    Response.Write("error");
                    return;
                }

                string[] extdata = textInfo.Split('-');

                data["OrderID"]  = extdata[3];
                data["PlayerId"] = data["playerId"];
                data["PayCode"]  = Convert.ToInt32(extdata[1]);
                data["Account"]  = extdata[2];

                try
                {
                    data["RMB"] = (int)(Convert.ToDouble(data["price"]));
                }
                catch (Exception)
                {
                    data["RMB"] = (int)(Convert.ToInt32(data["price"]));
                }

                if (Convert.ToInt32(data["RMB"]) <= 0)
                {
                    Response.Write("error");
                    return;
                }


                if (MongodbPayment.Instance.KeyExistsBykey("third_pay", "out_trade_no", data["out_trade_no"]))
                {
                    Response.Write("ok");
                    return;
                }
                else
                {
                    data["Process"] = false;

                    if (MongodbPayment.Instance.ExecuteInsert("third_pay", data))
                    {
                        save_payinfo("lobby", Convert.ToInt32(data["RMB"]));
                    }
                }
            }
            catch (Exception ex)
            {
                string result = ex.ToString();
                CLOG.Info(result);
                Response.Write("error");
                return;
            }
            Response.Write("ok");
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            NameValueCollection req = Request.Form;

            if (req.Count <= 0)
            {
                ReturnMsg(99999);
                return;
            }

            Dictionary <string, object> param = new Dictionary <string, object>();

            foreach (string key in req)
            {
                param[key] = req[key];
            }

            try
            {
                string nickname = param["nickname"].ToString();
                string oldpass  = param["oldpassword"].ToString();
                string password = param["password"].ToString();
                string sign     = param["sign"].ToString();

                if (sign != getSignForAnyValid(Request))
                {
                    ReturnMsg(10099);
                    return;
                }

                if (string.IsNullOrEmpty(nickname) || string.IsNullOrEmpty(oldpass) || string.IsNullOrEmpty(password))
                {
                    ReturnMsg(99999);
                    return;
                }

                // 验证新密码规则
                if (password.Length < 4 || password.Length > 12)
                {
                    ReturnMsg(10006);
                    return;
                }

                // 原密码与新密码相同时返回错误
                String md5pass = MD5Encode(password);
                if (oldpass.ToLower() == md5pass.ToLower())
                {
                    ReturnMsg(10008);
                    return;
                }

                string playerTable = "player_info";

                Dictionary <string, object> data = MongodbPlayer.Instance.ExecuteGetBykey(playerTable, "nickname", nickname, new string[] { "account", "platform" });
                if (data != null)
                {
                    if (data["platform"].ToString() != "default")
                    {
                        ReturnMsg(10002);
                        return;
                    }

                    string accountTable = "AccountTable";

                    Dictionary <string, object> dataPass = MongodbAccount.Instance.ExecuteGetBykey(accountTable, "acc_real", data["account"].ToString(), new string[] { "pwd" });
                    if (dataPass != null)
                    {
                        if (oldpass.ToLower() == dataPass["pwd"].ToString().ToLower())
                        {
                            DateTime now = DateTime.Now;
                            Dictionary <string, object> updata = new Dictionary <string, object>();
                            updata["pwd"]      = md5pass.ToUpper();
                            updata["lasttime"] = now.Ticks;
                            string strerr = MongodbAccount.Instance.ExecuteUpdate(accountTable, "acc_real", data["account"].ToString(), updata);

                            ReturnMsg(10000);
                            return;
                        }
                        else
                        {
                            ReturnMsg(10007);
                            return;
                        }
                    }
                }
                ReturnMsg(10004);
            }
            catch (Exception ex)
            {
                ReturnMsg(99999);
                CLOG.Info(ex.ToString());
                return;
            }
        }