コード例 #1
0
        /// <summary>
        /// 删除玩家礼物盒上道具
        /// </summary>
        /// <returns></returns>
        public Message GiftBox_MessageItem_Delete()
        {
            int    result        = -1;
            int    operateUserID = 0;
            string serverIP      = null;
            string userID        = null;
            int    itemCode      = 0;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ServerIP).m_bValueBuffer);
                TLV_Structure strut = new TLV_Structure(TagName.UserByID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.UserByID).m_bValueBuffer);
                operateUserID = (int)strut.toInteger();
                userID        = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_UserID).m_bValueBuffer);
                strut         = new TLV_Structure(TagName.O2JAM2_ItemCode, 4, msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ItemCode).m_bValueBuffer);
                itemCode      = (int)strut.toInteger();
                result        = ItemShopInfo.giftBox_Delete(operateUserID, serverIP, userID, itemCode);
                if (result == 1)
                {
                    SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + userID + lg.O2JAM2API_ItemShopAPI_GiftItem + itemCode + lg.API_Delete + lg.API_Success + "!");
                    Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + userID + lg.O2JAM2API_ItemShopAPI_GiftItem + itemCode + lg.API_Delete + lg.API_Success + "!");
                    return(Message.COMMON_MES_RESP("SUCESS", Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_ITEMSHOP_DELETE_RESP));
                }
                else
                {
                    SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + userID + lg.O2JAM2API_ItemShopAPI_GiftItem + itemCode + lg.API_Delete + lg.API_Failure + "!");
                    Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + userID + lg.O2JAM2API_ItemShopAPI_GiftItem + itemCode + lg.API_Delete + lg.API_Failure + "!");
                    return(Message.COMMON_MES_RESP("FAILURE", Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_ITEMSHOP_DELETE_RESP));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(lg.O2JAM2API_AccountInfoAPI_NoAccount, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_ITEMSHOP_DELETE_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #2
0
        /// <summary>
        /// 删除玩家身上道具
        /// </summary>
        /// <returns></returns>
        public Message ItemShop_Delete()
        {
            int    result        = -1;
            int    operateUserID = 0;
            int    userIndexID   = 0;
            string serverIP      = null;
            int    itemCode      = 0;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_ServerIP).m_bValueBuffer);
                TLV_Structure strut = new TLV_Structure(TagName.UserByID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.UserByID).m_bValueBuffer);
                operateUserID = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.SDO_UserIndexID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_UserIndexID).m_bValueBuffer);
                userIndexID   = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.SDO_ItemCode, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_ItemCode).m_bValueBuffer);
                itemCode      = (int)strut.toInteger();
                result        = ItemShopInfo.itemShop_Delete(operateUserID, serverIP, userIndexID, itemCode);
                if (result == 1)
                {
                    Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.SDOAPI_SDO + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.API_Delete + lg.SDOAPI_SDOItemLogInfoAPI_Account + userIndexID + lg.SDOAPI_SDOItemShopAPI_PersonalItem + itemCode + lg.API_Success + "!");
                    return(Message.COMMON_MES_RESP("SUCESS", Msg_Category.SDO_ADMIN, ServiceKey.SDO_ITEMSHOP_DELETE_RESP));
                }
                else
                {
                    Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.SDOAPI_SDO + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.API_Delete + lg.SDOAPI_SDOItemLogInfoAPI_Account + userIndexID + lg.SDOAPI_SDOItemShopAPI_PersonalItem + itemCode + lg.API_Failure + "!");
                    return(Message.COMMON_MES_RESP("FAILURE", Msg_Category.SDO_ADMIN, ServiceKey.SDO_ITEMSHOP_DELETE_RESP));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(ex.Message, Msg_Category.SDO_ADMIN, ServiceKey.SDO_ITEMSHOP_DELETE_RESP));
            }
        }
コード例 #3
0
        /// <summary>
        /// 查询玩家技能資訊
        /// </summary>
        /// <returns></returns>
        public Message RayCity_PlayerSkill_Query()
        {
            string  serverIP    = null;
            int     characterID = 0;
            DataSet ds          = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.RayCity_ServerIP).m_bValueBuffer);
                TLV_Structure strut = new TLV_Structure(TagName.RayCity_CharacterID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.RayCity_CharacterID).m_bValueBuffer);
                characterID = (int)strut.toInteger();
                SqlHelper.log.WriteLog(lg.API_Look + lg.RayCityAPI_Name + "+>" + lg.RayCityAPI_Address + CommonInfo.serverIP_Query(serverIP) + lg.RayCityAPI_SkillInfo);
                Console.WriteLine(DateTime.Now + lg.API_Look + lg.RayCityAPI_Name + "+>" + lg.RayCityAPI_Address + CommonInfo.serverIP_Query(serverIP) + lg.RayCityAPI_SkillInfo);
                ds = ItemShopInfo.PlayerSkill_Query(serverIP, characterID);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = Message.buildTLV(ds, 0, 40, false);
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.RAYCITY_ADMIN, ServiceKey.RayCity_PlayerSkill_Query_Resp, (int)structList[0].structLen));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.RayCityAPI_NoSkillInfo, Msg_Category.RAYCITY_ADMIN, ServiceKey.RayCity_PlayerSkill_Query_Resp, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                SqlHelper.errLog.WriteLog("伺服器IP" + serverIP + ex.Message);
                return(Message.COMMON_MES_RESP(lg.RayCityAPI_NoSkillInfo, Msg_Category.RAYCITY_ADMIN, ServiceKey.RayCity_PlayerSkill_Query_Resp, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #4
0
        /// <summary>
        /// 查询所有道具分类資訊
        /// </summary>
        /// <returns></returns>
        public Message RayCity_ItemShopType_Query()
        {
            DataSet ds = null;

            try
            {
                SqlHelper.log.WriteLog(lg.API_Look + lg.RayCityAPI_Name + "+>" + lg.RayCityAPI_ItemShopType);
                Console.WriteLine(DateTime.Now + lg.API_Look + lg.RayCityAPI_Name + "+>" + lg.RayCityAPI_ItemShopType);
                ds = ItemShopInfo.RayCity_ItemShopType_Query();
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = Message.buildTLV(ds, 0, 40, false);
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.RAYCITY_ADMIN, ServiceKey.RayCity_ItemType_Query_Resp, (int)structList[0].structLen));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.RayCityAPI_NoItemInfo, Msg_Category.RAYCITY_ADMIN, ServiceKey.RayCity_ItemType_Query_Resp, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(Message.COMMON_MES_RESP(lg.RayCityAPI_NoItemInfo, Msg_Category.RAYCITY_ADMIN, ServiceKey.RayCity_ItemType_Query_Resp, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #5
0
        /// <summary>
        /// 查看玩家消费记录
        /// </summary>
        /// <returns></returns>
        public Message UserConsume_QuerySum()
        {
            string   serverIP = null;
            string   account  = null;
            DateTime beginDate;
            DateTime endDate;
            int      moneyType = -1;
            DataSet  ds        = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_ServerIP).m_bValueBuffer);
                account  = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_Account).m_bValueBuffer);
                TLV_Structure tlvStrut = new TLV_Structure(TagName.SDO_BeginTime, 3, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_BeginTime).m_bValueBuffer);
                beginDate = tlvStrut.toDate();
                tlvStrut  = new TLV_Structure(TagName.SDO_EndTime, 3, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_EndTime).m_bValueBuffer);
                endDate   = tlvStrut.toDate();
                tlvStrut  = new TLV_Structure(TagName.SDO_MoneyType, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_MoneyType).m_bValueBuffer);
                moneyType = (int)tlvStrut.toInteger();
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.SDOAPI_SDO + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.SDOAPI_SDOItemLogInfoAPI_Account + account + lg.SDOAPI_SDOItemShopAPI_ConsumeRecord + "!");
                ds = ItemShopInfo.userConsume_QuerySum(serverIP, account, moneyType, beginDate, endDate);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    return(Message.COMMON_MES_RESP(Convert.ToInt32(ds.Tables[0].Rows[0].ItemArray[0]), Msg_Category.SDO_ADMIN, ServiceKey.SDO_CONSUME_QUERY_RESP, TagName.SDO_ChargeSum, TagFormat.TLV_INTEGER));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.SDOAPI_SDOItemShopAPI_NoChargeRecord, Msg_Category.SDO_ADMIN, ServiceKey.SDO_USERCONSUMESUM_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(lg.SDOAPI_SDOItemShopAPI_NoChargeRecord, Msg_Category.SDO_ADMIN, ServiceKey.SDO_USERCONSUMESUM_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #6
0
        /// <summary>
        /// 查询所有道具資訊
        /// </summary>
        /// <returns></returns>
        public Message RayCity_ItemShop_Query(int index, int pageSize)
        {
            string  itemName = null;
            int     itemCode = 0;
            string  serverIP = null;
            DataSet ds       = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.RayCity_ServerIP).m_bValueBuffer);
                itemName = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.RayCity_ItemName).m_bValueBuffer);
                TLV_Structure strut = new TLV_Structure(TagName.RayCity_ItemID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.RayCity_ItemID).m_bValueBuffer);
                itemCode = (int)strut.toInteger();
                SqlHelper.log.WriteLog(lg.API_Look + lg.RayCityAPI_Name + "+>" + lg.RayCityAPI_Address + lg.RayCityAPI_ItemInfo);
                Console.WriteLine(DateTime.Now + lg.API_Look + lg.RayCityAPI_Name + "+>" + lg.RayCityAPI_Address + lg.RayCityAPI_ItemInfo);
                ds = ItemShopInfo.RayCity_ItemShop_Query(itemCode, itemName, serverIP);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = Message.buildTLV(ds, index, pageSize, false);
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.RAYCITY_ADMIN, ServiceKey.RayCity_ItemShop_Query_Resp, (int)structList[0].structLen));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.RayCityAPI_NoItemInfo, Msg_Category.RAYCITY_ADMIN, ServiceKey.RayCity_ItemShop_Query_Resp, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(Message.COMMON_MES_RESP(lg.RayCityAPI_NoItemInfo, Msg_Category.RAYCITY_ADMIN, ServiceKey.RayCity_ItemShop_Query_Resp, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #7
0
        /// <summary>
        /// 查询玩家宠物信息
        /// </summary>
        /// <returns></returns>
        public Message SDO_PetInfo_Query()
        {
            string serverIP    = null;
            int    userIndexID = 0;

            System.Data.DataSet ds = null;
            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_ServerIP).m_bValueBuffer);
                TLV_Structure strut = new TLV_Structure(TagName.SDO_UserIndexID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_UserIndexID).m_bValueBuffer);
                userIndexID = (int)strut.toInteger();
                SqlHelper.log.WriteLog("流覽超級舞者+>" + CommonInfo.serverIP_Query(serverIP) + "玩家" + userIndexID + "寵物資訊!");
                Console.WriteLine(DateTime.Now + " - 流覽超級舞者+>" + CommonInfo.serverIP_Query(serverIP) + "玩家" + userIndexID + "寵物資訊!");
                ds = ItemShopInfo.SDOPetInfo_Query(serverIP, userIndexID);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = new Query_Structure[ds.Tables[0].Rows.Count];
                    for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                    {
                        Query_Structure strut1 = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length);
                        byte[]          bytes  = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut1.AddTagKey(TagName.SDO_NickName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);

                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[1]);
                        strut1.AddTagKey(TagName.SDO_ItemName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);

                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, ds.Tables[0].Rows[i].ItemArray[2]);
                        strut1.AddTagKey(TagName.SDO_DateLimit, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);

                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[3]);
                        strut1.AddTagKey(TagName.SDO_State, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);

                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[4]);
                        strut1.AddTagKey(TagName.SDO_Level, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);

                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[5]);
                        strut1.AddTagKey(TagName.SDO_Exp, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);

                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[6]);
                        strut1.AddTagKey(TagName.SDO_Food, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);

                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[7]);
                        strut1.AddTagKey(TagName.SDO_mood, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);

                        structList[i] = strut1;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.SDO_ADMIN, ServiceKey.SDO_PetInfo_Query_RESP, 8));
                }
                else
                {
                    return(Message.COMMON_MES_RESP("沒有相關寵物資訊", Msg_Category.SDO_ADMIN, ServiceKey.SDO_PetInfo_Query_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(Message.COMMON_MES_RESP("沒有相關寵物資訊", Msg_Category.SDO_ADMIN, ServiceKey.SDO_PetInfo_Query_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #8
0
        /// <summary>
        /// 查看玩家身上道具
        /// </summary>
        /// <returns></returns>
        public Message itemShop_Owner_Query()
        {
            string  serverIP = null;
            string  userID   = null;
            DataSet ds       = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ServerIP).m_bValueBuffer);
                userID   = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_UserID).m_bValueBuffer);
                SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + userID + lg.O2JAM2API_ItemShopAPI_AllBodyItem);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + userID + lg.O2JAM2API_ItemShopAPI_AllBodyItem);
                //请求玩家身上的道具
                ds = ItemShopInfo.AvatarItemList_Query(serverIP, userID);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = new Query_Structure[ds.Tables[0].Rows.Count];
                    for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length);
                        //道具编号
                        byte[] bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut.AddTagKey(TagName.O2JAM2_ItemCode, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具名
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, UserValidate.validData(ds.Tables[0].Rows[i].ItemArray[1]));
                        strut.AddTagKey(TagName.O2JAM2_ItemName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        //最小等级
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[2]);
                        strut.AddTagKey(TagName.O2JAM2_Level, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具位置
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[3]);
                        strut.AddTagKey(TagName.O2JAM2_Position, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具使用次数
                        int timelimits = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[4]);
                        if (timelimits == -1)
                        {
                            timelimits = 0;
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, timelimits);
                        strut.AddTagKey(TagName.O2JAM2_Timeslimt, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具时间限制
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, ds.Tables[0].Rows[i].ItemArray[5]);
                        strut.AddTagKey(TagName.O2JAM2_DateLimit, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);
                        structList[i] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_AVATORLIST_QUERY_RESP, 6));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.O2JAM2API_ItemShopAPI_NoBodyItem, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_AVATORLIST_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(Message.COMMON_MES_RESP(lg.O2JAM2API_AccountInfoAPI_NoAccount, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_AVATORLIST_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #9
0
        /// <summary>
        /// 查看玩家消费记录
        /// </summary>
        /// <returns></returns>
        public Message UserConsume_QuerySum()
        {
            string   serverIP = null;
            string   account  = null;
            DateTime beginDate;
            DateTime endDate;
            int      kind    = -1;
            int      buyType = -1;
            DataSet  ds      = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_ServerIP).m_bValueBuffer);
                account  = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_UserID).m_bValueBuffer);
                TLV_Structure tlvStrut = new TLV_Structure(TagName.o2jam_KIND, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_KIND).m_bValueBuffer);
                kind      = (int)tlvStrut.toInteger();
                tlvStrut  = new TLV_Structure(TagName.O2JAM_BuyType, 4, msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM_BuyType).m_bValueBuffer);
                buyType   = (int)tlvStrut.toInteger();
                tlvStrut  = new TLV_Structure(TagName.o2jam_BeginDate, 3, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_BeginDate).m_bValueBuffer);
                beginDate = tlvStrut.toDate();
                tlvStrut  = new TLV_Structure(TagName.o2jam_EndDate, 3, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_EndDate).m_bValueBuffer);
                endDate   = tlvStrut.toDate();
                SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + account + lg.O2JAM_ItemShopInfoAPI_SumConsumeRecord);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + account + lg.O2JAM_ItemShopInfoAPI_SumConsumeRecord);
                ds = ItemShopInfo.userConsume_QuerySum(serverIP, account, kind, buyType, beginDate, endDate);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = new Query_Structure[1];
                    Query_Structure   strut      = new Query_Structure(2);
                    byte[]            bytes      = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[0]);
                    strut.AddTagKey(TagName.o2jam_GEM, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[1]);
                    strut.AddTagKey(TagName.o2jam_MCASH, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    structList[0] = strut;
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_CONSUME_SUM_QUERY_RESP, 2));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.O2JAM_ItemShopInfoAPI_NoSumConsumeRecord, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_CONSUME_SUM_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception)
            {
                return(Message.COMMON_MES_RESP(lg.O2JAM_ItemShopInfoAPI_NoSumConsumeRecord, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_CONSUME_SUM_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #10
0
        /// <summary>
        /// 添加玩家礼物盒的道具
        /// </summary>
        /// <returns></returns>
        public Message GiftBox_MessageItem_Add()
        {
            int    result        = -1;
            string serverIP      = null;
            int    operateUserID = 0;
            int    userIndexID   = 0;
            int    itemCode      = 0;
            int    expireDate;
            int    gem   = 0;
            int    mCash = 0;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_ServerIP).m_bValueBuffer);
                TLV_Structure strut = new TLV_Structure(TagName.UserByID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.UserByID).m_bValueBuffer);
                operateUserID = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.o2jam_USER_INDEX_ID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_USER_INDEX_ID).m_bValueBuffer);
                userIndexID   = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.o2jam_ITEM_INDEX_ID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_ITEM_INDEX_ID).m_bValueBuffer);
                itemCode      = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.o2jam_GEM, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_GEM).m_bValueBuffer);
                gem           = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.o2jam_MCASH, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_MCASH).m_bValueBuffer);
                mCash         = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.o2jam_WriteDate, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_WriteDate).m_bValueBuffer);
                expireDate    = (int)strut.toInteger();
                result        = ItemShopInfo.GiftBox_Insert(operateUserID, serverIP, userIndexID, itemCode, gem, mCash, expireDate);
                if (result == 1)
                {
                    SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + userIndexID + lg.O2JAM_ItemShopInfoAPI_GiftItem + itemCode + lg.API_Add + lg.API_Success + "!");
                    Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + userIndexID + lg.O2JAM_ItemShopInfoAPI_GiftItem + itemCode + lg.API_Add + lg.API_Success + "!");
                    return(Message.COMMON_MES_RESP("SUCESS", Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_GIFTBOX_CREATE_RESP));
                }
                else
                {
                    SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + userIndexID + lg.O2JAM_ItemShopInfoAPI_GiftItem + itemCode + lg.API_Add + lg.API_Failure + "!");
                    Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + userIndexID + lg.O2JAM_ItemShopInfoAPI_GiftItem + itemCode + lg.API_Add + lg.API_Failure + "!");
                    return(Message.COMMON_MES_RESP("FAILURE", Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_GIFTBOX_CREATE_RESP));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP("添加失败", Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_GIFTBOX_CREATE_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #11
0
        /// <summary>
        /// 添加玩家礼物盒上的道具
        /// </summary>
        /// <returns></returns>
        public Message GiftBox_MessageItem_Add()
        {
            int    operateUserID = 0;
            string userID        = null;
            string serverIP      = null;
            int    itemCode      = 0;
            string title         = null;
            string context       = null;
            int    timesLimit    = 0;
            int    dayLimit      = 0;
            int    result        = -1;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ServerIP).m_bValueBuffer);
                TLV_Structure strut = new TLV_Structure(TagName.UserByID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.UserByID).m_bValueBuffer);
                operateUserID = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.O2JAM2_ItemCode, 4, msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ItemCode).m_bValueBuffer);
                itemCode      = (int)strut.toInteger();
                userID        = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_UserID).m_bValueBuffer);
                strut         = new TLV_Structure(TagName.O2JAM2_Timeslimt, 4, msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_Timeslimt).m_bValueBuffer);
                timesLimit    = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.O2JAM2_DayLimit, 4, msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_DayLimit).m_bValueBuffer);
                dayLimit      = (int)strut.toInteger();
                title         = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_Title).m_bValueBuffer);
                context       = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_Context).m_bValueBuffer);
                result        = ItemShopInfo.giftBox_Insert(operateUserID, serverIP, userID, itemCode, title, context, timesLimit, dayLimit);
                if (result == 1)
                {
                    SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + userID + lg.O2JAM2API_ItemShopAPI_GiftItem + itemCode + lg.API_Add + lg.API_Success + "!");
                    Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + userID + lg.O2JAM2API_ItemShopAPI_GiftItem + itemCode + lg.API_Add + lg.API_Success + "!");
                    return(Message.COMMON_MES_RESP("SUCESS", Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_MESSAGE_CREATE_RESP));
                }
                else
                {
                    SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + userID + lg.O2JAM2API_ItemShopAPI_GiftItem + itemCode + lg.API_Add + lg.API_Failure + "!");
                    Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + userID + lg.O2JAM2API_ItemShopAPI_GiftItem + itemCode + lg.API_Add + lg.API_Failure + "!");
                    return(Message.COMMON_MES_RESP("FAILURE", Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_MESSAGE_CREATE_RESP));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(lg.O2JAM2API_AccountInfoAPI_NoAccount, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_MESSAGE_CREATE_RESP));
            }
        }
コード例 #12
0
        /// <summary>
        /// 添加玩家礼物盒上的道具
        /// </summary>
        /// <returns></returns>
        public Message GiftBox_MessageItem_Add()
        {
            int      operateUserID = 0;
            int      userIndexID   = 0;
            string   serverIP      = null;
            int      itemCode      = 0;
            string   title         = null;
            string   context       = null;
            int      timesLimit    = 0;
            DateTime dateLimit;
            int      result = -1;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_ServerIP).m_bValueBuffer);
                TLV_Structure strut = new TLV_Structure(TagName.UserByID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.UserByID).m_bValueBuffer);
                operateUserID = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.SDO_ItemCode, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_ItemCode).m_bValueBuffer);
                itemCode      = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.SDO_UserIndexID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_UserIndexID).m_bValueBuffer);
                userIndexID   = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.SDO_TimesLimit, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_TimesLimit).m_bValueBuffer);
                timesLimit    = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.SDO_DateLimit, 3, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_DateLimit).m_bValueBuffer);
                dateLimit     = strut.toDate();
                title         = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_Title).m_bValueBuffer);
                context       = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_Context).m_bValueBuffer);
                result        = ItemShopInfo.giftBox_Insert(operateUserID, serverIP, userIndexID, itemCode, title, context, timesLimit, dateLimit);
                if (result == 1)
                {
                    Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.SDOAPI_SDO + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.API_Add + lg.SDOAPI_SDOItemLogInfoAPI_Account + userIndexID + lg.SDOAPI_SDOItemShopAPI_GiftItem + itemCode + lg.API_Success + "!");
                    return(Message.COMMON_MES_RESP("SUCESS", Msg_Category.SDO_ADMIN, ServiceKey.SDO_GIFTBOX_CREATE_RESP));
                }
                else
                {
                    Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.SDOAPI_SDO + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.API_Add + lg.SDOAPI_SDOItemLogInfoAPI_Account + userIndexID + lg.SDOAPI_SDOItemShopAPI_GiftItem + itemCode + lg.API_Failure + "!");
                    return(Message.COMMON_MES_RESP("FAILURE", Msg_Category.SDO_ADMIN, ServiceKey.SDO_GIFTBOX_CREATE_RESP));
                }
            }
            catch (Common.Logic.Exception ex)
            {
                return(Message.COMMON_MES_RESP(ex.Message, Msg_Category.SDO_ADMIN, ServiceKey.SDO_GIFTBOX_CREATE_RESP));
            }
        }
コード例 #13
0
ファイル: ItemHolder.cs プロジェクト: alanlei/SG_SERVER_June
        public static void LoadItemInfo()
        {
            string fileName = @"iteminfo\\tblavataritemdesc.txt";
            var    lines    = File.ReadLines(fileName, Encoding.GetEncoding(1200));

            //int Count = 0;
            foreach (var line in lines)
            {
                //Count++;
                //Console.WriteLine(line);
                string[] iteminfo     = line.Split(',');
                int      itemid       = Convert.ToInt32(iteminfo[0]);
                byte     ItemChar     = Convert.ToByte(iteminfo[3]);
                ushort   ItemPosition = Convert.ToUInt16(iteminfo[4]);
                ushort   ItemKind     = Convert.ToUInt16(iteminfo[5]);
                if (iteminfo[2] == "1" || iteminfo[2] == "2" || iteminfo[2] == "4")
                {
                    ItemCPK ItemInfo = new ItemCPK
                    {
                        ItemChar     = ItemChar,
                        ItemPosition = ItemPosition,
                        ItemKind     = ItemKind
                    };
                    ItemCPKInfos.TryAdd(itemid, ItemInfo);
                    ItemPCKDict[ItemPosition][ItemChar][ItemKind] = itemid;
                }
                //shopinfo
                bool         canbuy   = Convert.ToBoolean(iteminfo[21]); //fdPurchasable
                ItemShopInfo ItemShop = new ItemShopInfo
                {
                    CanBuy               = canbuy,
                    ItemPosition         = Convert.ToUInt16(iteminfo[4]),
                    NotDeleteWhenExpired = Convert.ToBoolean(iteminfo[16])
                };
                ItemShopInfos.TryAdd(itemid, ItemShop);
            }
            Log.Info("Load ItemCPKInfo Count: {0}", ItemCPKInfos.Count);
            Log.Info("Load ItemShopInfos Count: {0}", ItemShopInfos.Count);
            Log.Info("Load ItemPCKDict Count: {0}", ItemPCKDict.Count);
            //Console.WriteLine(ItemCPKInfos.FirstOrDefault(i => (i.Value.ItemChar == 1 || i.Value.ItemChar == 0) && i.Value.ItemPosition == 6 && i.Value.ItemKind == 0).Key);
            LoadShuItemCPKInfo();
        }
コード例 #14
0
        /// <summary>
        /// 查看玩家上下线状态
        /// </summary>
        /// <returns></returns>
        public Message UserOnline_Query()
        {
            string  serverIP = null;
            string  account  = null;
            DataSet ds       = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ServerIP).m_bValueBuffer);
                account  = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_UserID).m_bValueBuffer);
                SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + account + lg.O2JAM2API_ItemShopAPI_OnlineStatus);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + account + lg.O2JAM2API_ItemShopAPI_OnlineStatus);
                ds = ItemShopInfo.userOnline_Query(serverIP, account);
                if (ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = new Query_Structure[ds.Tables[0].Rows.Count];
                    for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length);
                        byte[]          bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut.AddTagKey(TagName.O2JAM2_UserIndexID, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[1]);
                        strut.AddTagKey(TagName.O2JAM2_UserID, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, ds.Tables[0].Rows[i].ItemArray[2]);
                        strut.AddTagKey(TagName.SDO_LoginTime, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, ds.Tables[0].Rows[i].ItemArray[3]);
                        strut.AddTagKey(TagName.SDO_LogoutTime, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);
                        structList[i] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.O2JAM2_ADMIN, ServiceKey.SDO_USERONLINE_QUERY_RESP, 4));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.O2JAM2API_ItemShopAPI_NoOnlineStatus, Msg_Category.O2JAM2_ADMIN, ServiceKey.SDO_USERONLINE_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(Message.COMMON_MES_RESP(lg.O2JAM2API_ItemShopAPI_NoOnlineStatus, Msg_Category.O2JAM2_ADMIN, ServiceKey.SDO_USERONLINE_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #15
0
        /// <summary>
        /// 添加玩家金钱
        /// </summary>
        /// <returns></returns>
        public Message RayCity_AddMoney()
        {
            int    operateUserID = 0;
            string serverIP      = null;
            string account       = null;
            int    characterID   = 0;
            int    money         = 0;
            string giftTitle     = null;
            string giftMessage   = null;
            int    result        = -1;

            try
            {
                TLV_Structure strut = new TLV_Structure(TagName.UserByID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.UserByID).m_bValueBuffer);
                operateUserID = (int)strut.toInteger();
                serverIP      = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.RayCity_ServerIP).m_bValueBuffer);
                account       = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.RayCity_NyUserID).m_bValueBuffer);
                strut         = new TLV_Structure(TagName.RayCity_CharacterMoney, 4, msg.m_packet.m_Body.getTLVByTag(TagName.RayCity_CharacterMoney).m_bValueBuffer);
                money         = (int)strut.toInteger();
                strut         = new TLV_Structure(TagName.RayCity_CharacterID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.RayCity_CharacterID).m_bValueBuffer);
                characterID   = (int)strut.toInteger();
                giftTitle     = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.RayCity_Title).m_bValueBuffer);
                giftMessage   = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.RayCity_Message).m_bValueBuffer);
                SqlHelper.log.WriteLog(lg.API_Look + lg.RayCityAPI_Name + "+>" + lg.RayCityAPI_Address + CommonInfo.serverIP_Query(serverIP) + lg.API_Add + lg.RayCityAPI_Account + characterID + lg.RayCityAPI_ItemInfo);
                Console.WriteLine(DateTime.Now + lg.API_Look + lg.RayCityAPI_Name + "+>" + lg.RayCityAPI_Address + CommonInfo.serverIP_Query(serverIP) + lg.API_Add + lg.RayCityAPI_Account + characterID + lg.RayCityAPI_ItemInfo);
                result = ItemShopInfo.RayCity_AddMoney(operateUserID, serverIP, account, characterID, money, giftTitle, giftMessage);
                if (result == 1)
                {
                    return(Message.COMMON_MES_RESP("SUCCESS", Msg_Category.RAYCITY_ADMIN, ServiceKey.RayCity_AddMoney_Resp, TagName.Status, TagFormat.TLV_STRING));
                }
                else
                {
                    return(Message.COMMON_MES_RESP("FAILURE", Msg_Category.RAYCITY_ADMIN, ServiceKey.RayCity_AddMoney_Resp, TagName.Status, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                SqlHelper.errLog.WriteLog("伺服器IP" + serverIP + ex.Message);
                return(Message.COMMON_MES_RESP(lg.API_Error, Msg_Category.RAYCITY_ADMIN, ServiceKey.RayCity_AddMoney_Resp, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #16
0
        /// <summary>
        /// 查看玩家上下线状态
        /// </summary>
        /// <returns></returns>
        public Message ItemName_Query()
        {
            string  serverIP = null;
            int     itemCode = 0;
            DataSet ds       = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_ServerIP).m_bValueBuffer);
                TLV_Structure tlvstrut = new TLV_Structure(TagName.o2jam_ITEM_INDEX_ID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_ITEM_INDEX_ID).m_bValueBuffer);
                itemCode = (int)tlvstrut.toInteger();
                SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_ItemShopInfoAPI_ItemName);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_ItemShopInfoAPI_ItemName);
                ds = ItemShopInfo.itemShop_Name_Query(serverIP, itemCode);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = new Query_Structure[1];
                    Query_Structure   strut      = new Query_Structure((uint)ds.Tables[0].Rows[0].ItemArray.Length);
                    byte[]            bytes      = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[0]);
                    strut.AddTagKey(TagName.o2jam_ITEM_INDEX_ID, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[0].ItemArray[1]);
                    strut.AddTagKey(TagName.o2jam_ITEM_NAME, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[2]);
                    strut.AddTagKey(TagName.o2jam_GEM, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[3]);
                    strut.AddTagKey(TagName.o2jam_ITEMCASH, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    structList[0] = strut;
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_ITEMNAME_QUERY_RESP, 4));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.O2JAM_ItemShopInfoAPI_NoItemName, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_ITEMNAME_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(Message.COMMON_MES_RESP(lg.O2JAM_ItemShopInfoAPI_NoItemName, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_ITEMNAME_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #17
0
        /// <summary>
        /// 删除玩家身上道具
        /// </summary>
        /// <returns></returns>
        public Message ItemShop_Delete()
        {
            int    operateUserID = 0;
            int    userIndexID   = 0;
            string serverIP      = null;
            int    pos           = 0;
            int    flag          = 0;
            int    result        = -1;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_ServerIP).m_bValueBuffer);
                TLV_Structure strut = new TLV_Structure(TagName.o2jam_USER_INDEX_ID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_USER_INDEX_ID).m_bValueBuffer);
                userIndexID = (int)strut.toInteger();
                strut       = new TLV_Structure(TagName.o2jam_POSITION, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_POSITION).m_bValueBuffer);
                pos         = (int)strut.toInteger();
                strut       = new TLV_Structure(TagName.o2jam_TypeFlag, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_TypeFlag).m_bValueBuffer);
                flag        = (int)strut.toInteger();
                result      = ItemShopInfo.itemShop_Delete(operateUserID, serverIP, userIndexID, pos, flag);
                if (result == 1)
                {
                    SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + userIndexID + lg.API_Delete + lg.O2JAM_ItemShopInfoAPI_PersonalItem + lg.API_Success + "!");
                    Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + userIndexID + lg.API_Delete + lg.O2JAM_ItemShopInfoAPI_PersonalItem + lg.API_Success + "!");
                    return(Message.COMMON_MES_RESP("SUCESS", Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_ITEM_UPDATE_RESP));
                }
                else
                {
                    SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + userIndexID + lg.API_Delete + lg.O2JAM_ItemShopInfoAPI_PersonalItem + lg.API_Failure + "!");
                    Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + userIndexID + lg.API_Delete + lg.O2JAM_ItemShopInfoAPI_PersonalItem + lg.API_Failure + "!");
                    return(Message.COMMON_MES_RESP("FAILURE", Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_ITEM_UPDATE_RESP));
                }
            }
            catch (Common.Logic.Exception ex)
            {
                return(Message.COMMON_MES_RESP(ex.Message, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_ITEM_UPDATE_RESP));
            }
        }
コード例 #18
0
        /// <summary>
        /// 查看道具使用期限
        /// </summary>
        /// <returns></returns>
        public Message ItemLimit_Query()
        {
            DataSet ds       = null;
            int     itemcode = 0;

            try
            {
                TLV_Structure tlvStrut = new TLV_Structure(TagName.SDO_ProductID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_ProductID).m_bValueBuffer);
                itemcode = (int)tlvStrut.toInteger();
                ds       = ItemShopInfo.itemlimit_Query(itemcode);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    return(Message.COMMON_MES_RESP(Convert.ToInt32(ds.Tables[0].Rows[0].ItemArray[0].ToString()), Msg_Category.SDO_ADMIN, ServiceKey.SDO_DAYSLIMIT_QUERY_RESP, TagName.SDO_DaysLimit, TagFormat.TLV_INTEGER));
                }
                else
                {
                    return(Message.COMMON_MES_RESP("没有该道具的期限", Msg_Category.SDO_ADMIN, ServiceKey.SDO_DAYSLIMIT_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception e)
            {
                return(Message.COMMON_MES_RESP("没有该道具的期限", Msg_Category.SDO_ADMIN, ServiceKey.SDO_DAYSLIMIT_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #19
0
        /// <summary>
        /// 查看玩家消费记录
        /// </summary>
        /// <returns></returns>
        public Message UserConsume_Query(int index, int pageSize)
        {
            string   serverIP = null;
            string   account  = null;
            DateTime beginDate;
            DateTime endDate;
            int      moneyType = -1;
            DataSet  ds        = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ServerIP).m_bValueBuffer);
                account  = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_UserID).m_bValueBuffer);
                TLV_Structure tlvStrut = new TLV_Structure(TagName.O2JAM2_BeginDate, 3, msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_BeginDate).m_bValueBuffer);
                beginDate = tlvStrut.toDate();
                tlvStrut  = new TLV_Structure(TagName.O2JAM2_ENDDate, 3, msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ENDDate).m_bValueBuffer);
                endDate   = tlvStrut.toDate();
                tlvStrut  = new TLV_Structure(TagName.O2JAM2_ComsumeType, 4, msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ComsumeType).m_bValueBuffer);
                moneyType = (int)tlvStrut.toInteger();
                SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + account + lg.O2JAM2API_ItemShopAPI_ConsumeRecord);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + account + lg.O2JAM2API_ItemShopAPI_ConsumeRecord);
                ds = ItemShopInfo.userConsume_Query(serverIP, account, moneyType, beginDate, endDate);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    //总页数
                    int pageCount = 0;
                    pageCount = ds.Tables[0].Rows.Count % pageSize;
                    if (pageCount > 0)
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize + 1;
                    }
                    else
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize;
                    }
                    if (index + pageSize > ds.Tables[0].Rows.Count)
                    {
                        pageSize = ds.Tables[0].Rows.Count - index;
                    }
                    Query_Structure[] structList = new Query_Structure[pageSize];
                    for (int i = index; i < index + pageSize; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length + 1);
                        byte[]          bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut.AddTagKey(TagName.O2JAM2_ComsumeCode, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[1]);
                        strut.AddTagKey(TagName.O2JAM2_MoneyType, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[2]);
                        strut.AddTagKey(TagName.O2JAM2_MCash, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, ds.Tables[0].Rows[i].ItemArray[3]);
                        strut.AddTagKey(TagName.O2JAM2_BeginDate, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);
                        //使用期限
                        int daylimits = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[4]);
                        if (daylimits == -1)
                        {
                            daylimits = 0;
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, daylimits);
                        strut.AddTagKey(TagName.O2JAM2_DayLimit, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);

                        //使用次数
                        int timeslimits = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[5]);
                        if (timeslimits == -1)
                        {
                            timeslimits = 0;
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, timeslimits);
                        strut.AddTagKey(TagName.O2JAM2_Timeslimt, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);

                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[6]);
                        strut.AddTagKey(TagName.O2JAM2_ItemName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);

                        //总页数
                        strut.AddTagKey(TagName.PageCount, TagFormat.TLV_INTEGER, 4, TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, pageCount));
                        structList[i - index] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_CONUMSE_QUERY_RESP, 8));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.O2JAM2API_ItemShopAPI_NoConsumeRecord, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_CONUMSE_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(ex.Message, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_CONUMSE_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #20
0
        /// <summary>
        /// 查看游戏里面所有道具
        /// </summary>
        /// <returns></returns>
        public Message itemShop_QueryALL()
        {
            string  serverIP  = null;
            int     bigType   = 0;
            int     smallType = 0;
            DataSet ds        = null;
            string  Name      = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_ServerIP).m_bValueBuffer);
                //道具大类
                TLV_Structure tlvStrut = new TLV_Structure(TagName.SDO_BigType, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_BigType).m_bValueBuffer);
                bigType = (int)tlvStrut.toInteger();

                //道具小类
                tlvStrut  = new TLV_Structure(TagName.SDO_SmallType, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_SmallType).m_bValueBuffer);
                smallType = (int)tlvStrut.toInteger();
                Name      = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_ItemName).m_bValueBuffer);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.SDOAPI_SDO + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.SDOAPI_SDOItemShopAPI_GameItem + "!");
                //请求所有分类道具列表
                ds = ItemShopInfo.itemShop_QueryAll(serverIP, bigType, smallType, Name);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = new Query_Structure[ds.Tables[0].Rows.Count];
                    for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length);
                        byte[]          bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut.AddTagKey(TagName.SDO_BigType, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[1]);
                        strut.AddTagKey(TagName.SDO_SmallType, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具编号
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[2]);
                        strut.AddTagKey(TagName.SDO_ItemCode, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具名
                        object itemName;
                        if (ds.Tables[0].Rows[i].IsNull(3) == false)
                        {
                            itemName = ds.Tables[0].Rows[i].ItemArray[3];
                        }
                        else
                        {
                            itemName = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, itemName);
                        strut.AddTagKey(TagName.SDO_ItemName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        //道具使用次数
                        int timelimits = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[4]);
                        if (timelimits == -1)
                        {
                            timelimits = 0;
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, timelimits);
                        strut.AddTagKey(TagName.SDO_TimesLimit, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //使用时限
                        //道具使用次数
                        int dayslimits = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[5]);
                        if (dayslimits == -1)
                        {
                            dayslimits = 0;
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, dayslimits);
                        strut.AddTagKey(TagName.SDO_DaysLimit, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        structList[i] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.SDO_ADMIN, ServiceKey.SDO_ITEMSHOP_QUERY_RESP, 6));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.SDOAPI_SDOItemShopAPI_NoItem, Msg_Category.SDO_ADMIN, ServiceKey.SDO_ITEMSHOP_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(ex.Message, Msg_Category.SDO_ADMIN, ServiceKey.SDO_ITEMSHOP_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #21
0
        /// <summary>
        /// 查看玩家礼物盒的道具
        /// </summary>
        /// <returns></returns>
        public Message giftBox_Query(int index, int pageSize)
        {
            string  serverIP    = null;
            int     userIndexID = 0;
            DataSet ds          = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_ServerIP).m_bValueBuffer);
                TLV_Structure tlvStrut = new TLV_Structure(TagName.SDO_UserIndexID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_UserIndexID).m_bValueBuffer);
                userIndexID = (int)tlvStrut.toInteger();
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.SDOAPI_SDO + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.SDOAPI_SDOItemLogInfoAPI_Account + userIndexID + lg.SDOAPI_SDOItemShopAPI_GiftItem + "!");
                //请求所有分类道具列表
                ds = ItemShopInfo.SDOGiftBox_Query(serverIP, userIndexID);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    //总页数
                    int pageCount = 0;
                    pageCount = ds.Tables[0].Rows.Count % pageSize;
                    if (pageCount > 0)
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize + 1;
                    }
                    else
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize;
                    }
                    if (index + pageSize > ds.Tables[0].Rows.Count)
                    {
                        pageSize = ds.Tables[0].Rows.Count - index;
                    }
                    Query_Structure[] structList = new Query_Structure[pageSize];
                    for (int i = index; i < index + pageSize; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length + 1);
                        //道具名
                        object itemName;
                        if (ds.Tables[0].Rows[i].IsNull(0) == false)
                        {
                            itemName = ds.Tables[0].Rows[i].ItemArray[0];
                        }
                        else
                        {
                            itemName = "";
                        }
                        byte[] bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, itemName);
                        strut.AddTagKey(TagName.SDO_ItemName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);

                        //大类
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[1]);
                        strut.AddTagKey(TagName.SDO_BigType, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //小类
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[2]);
                        strut.AddTagKey(TagName.SDO_SmallType, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //使用期限
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, ds.Tables[0].Rows[i].ItemArray[3]);
                        strut.AddTagKey(TagName.SDO_DateLimit, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);
                        //使用次数
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[4]);
                        strut.AddTagKey(TagName.SDO_TimesLimit, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);

                        //主题
                        object title;
                        if (ds.Tables[0].Rows[i].IsNull(5) == false)
                        {
                            title = ds.Tables[0].Rows[i].ItemArray[5];
                        }
                        else
                        {
                            title = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, title);
                        strut.AddTagKey(TagName.SDO_Title, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        //内容
                        object context;
                        if (ds.Tables[0].Rows[i].IsNull(6) == false)
                        {
                            context = ds.Tables[0].Rows[i].ItemArray[6];
                        }
                        else
                        {
                            context = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, context);
                        strut.AddTagKey(TagName.SDO_Context, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);

                        //道具编号
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[7]);
                        strut.AddTagKey(TagName.SDO_ItemCode, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);

                        //赠送日期
                        object sendDate;
                        if (ds.Tables[0].Rows[i].IsNull(8) == false)
                        {
                            sendDate = ds.Tables[0].Rows[i].ItemArray[8];
                        }
                        else
                        {
                            sendDate = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, sendDate);
                        strut.AddTagKey(TagName.SDO_SendTime, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);

                        //总页数
                        strut.AddTagKey(TagName.PageCount, TagFormat.TLV_INTEGER, 4, TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, pageCount));
                        structList[i - index] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.SDO_ADMIN, ServiceKey.SDO_GIFTBOX_QUERY_RESP, 10));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.SDOAPI_SDOItemShopAPI_NoItemOnGift, Msg_Category.SDO_ADMIN, ServiceKey.SDO_GIFTBOX_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(lg.SDOAPI_SDOItemShopAPI_NoItemOnGift, Msg_Category.SDO_ADMIN, ServiceKey.SDO_GIFTBOX_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #22
0
        /// <summary>
        /// 查看游戏里面所有道具
        /// </summary>
        /// <returns></returns>
        public Message itemShop_QueryALL()
        {
            string  serverIP  = null;
            string  itemName1 = null;
            string  userID    = null;
            DataSet ds        = null;

            try
            {
                serverIP  = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ServerIP).m_bValueBuffer);
                itemName1 = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ItemName).m_bValueBuffer);
                userID    = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_UserID).m_bValueBuffer);
                SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_ItemShopAPI_AllGameItem);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_ItemShopAPI_AllGameItem);
                //请求所有分类道具列表
                ds = ItemShopInfo.itemShop_QueryAll(serverIP, itemName1, userID);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = new Query_Structure[ds.Tables[0].Rows.Count];
                    for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length);
                        //道具编号
                        byte[] bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut.AddTagKey(TagName.O2JAM2_ItemCode, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具名
                        object itemName;
                        if (ds.Tables[0].Rows[i].IsNull(1) == false)
                        {
                            itemName = ds.Tables[0].Rows[i].ItemArray[1];
                        }
                        else
                        {
                            itemName = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, itemName);
                        strut.AddTagKey(TagName.O2JAM2_ItemName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        //道具名
                        object descrpt;
                        if (ds.Tables[0].Rows[i].IsNull(2) == false)
                        {
                            descrpt = ds.Tables[0].Rows[i].ItemArray[2];
                        }
                        else
                        {
                            descrpt = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, descrpt);
                        strut.AddTagKey(TagName.O2JAM2_Context, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        //道具使用次数
                        int timelimits = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[3]);
                        if (timelimits == -1)
                        {
                            timelimits = 0;
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, timelimits);
                        strut.AddTagKey(TagName.O2JAM2_Timeslimt, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //使用时限
                        //道具使用次数
                        int dayslimits = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[4]);
                        if (dayslimits == -1)
                        {
                            dayslimits = 0;
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, dayslimits);
                        strut.AddTagKey(TagName.O2JAM2_DayLimit, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        structList[i] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_ITEMSHOP_QUERY_RESP, 5));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.O2JAM2API_ItemShopAPI_NoGameItem, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_ITEMSHOP_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(lg.O2JAM2API_AccountInfoAPI_NoAccount, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_ITEMSHOP_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #23
0
        /// <summary>
        /// 查看玩家礼物盒的道具
        /// </summary>
        /// <returns></returns>
        public Message giftBox_Query(int index, int pageSize)
        {
            string  serverIP = null;
            string  userID   = null;
            DataSet ds       = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ServerIP).m_bValueBuffer);
                userID   = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_UserID).m_bValueBuffer);
                SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + userID + lg.O2JAM2API_ItemShopAPI_GiftItem);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + userID + lg.O2JAM2API_ItemShopAPI_GiftItem);
                //请求所有分类道具列表
                ds = ItemShopInfo.O2JAM2GiftBox_Query(serverIP, userID);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    //总页数
                    int pageCount = 0;
                    pageCount = ds.Tables[0].Rows.Count % pageSize;
                    if (pageCount > 0)
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize + 1;
                    }
                    else
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize;
                    }
                    if (index + pageSize > ds.Tables[0].Rows.Count)
                    {
                        pageSize = ds.Tables[0].Rows.Count - index;
                    }
                    Query_Structure[] structList = new Query_Structure[pageSize];
                    for (int i = index; i < index + pageSize; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length + 1);

                        //道具编号
                        byte[] bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut.AddTagKey(TagName.O2JAM2_ItemCode, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具名
                        object itemName;
                        if (ds.Tables[0].Rows[i].IsNull(1) == false)
                        {
                            itemName = ds.Tables[0].Rows[i].ItemArray[1];
                        }
                        else
                        {
                            itemName = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, itemName);
                        strut.AddTagKey(TagName.O2JAM2_ItemName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);

                        //使用次数
                        int timeslimits = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[2]);
                        if (timeslimits == -1)
                        {
                            timeslimits = 0;
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, timeslimits);
                        strut.AddTagKey(TagName.O2JAM2_DayLimit, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);

                        //使用期限
                        int dayslimits = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[3]);
                        if (dayslimits == -1)
                        {
                            dayslimits = 0;
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, dayslimits);
                        strut.AddTagKey(TagName.O2JAM2_DayLimit, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);

                        //主题
                        object title;
                        if (ds.Tables[0].Rows[i].IsNull(4) == false)
                        {
                            title = ds.Tables[0].Rows[i].ItemArray[4];
                        }
                        else
                        {
                            title = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, title);
                        strut.AddTagKey(TagName.O2JAM2_Title, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        //内容
                        object context;
                        if (ds.Tables[0].Rows[i].IsNull(5) == false)
                        {
                            context = ds.Tables[0].Rows[i].ItemArray[5];
                        }
                        else
                        {
                            context = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, context);
                        strut.AddTagKey(TagName.O2JAM2_Context, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);

                        //赠送日期
                        object sendDate;
                        if (ds.Tables[0].Rows[i].IsNull(6) == false)
                        {
                            sendDate = ds.Tables[0].Rows[i].ItemArray[6];
                        }
                        else
                        {
                            sendDate = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, sendDate);
                        strut.AddTagKey(TagName.SDO_SendTime, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);

                        //总页数
                        strut.AddTagKey(TagName.PageCount, TagFormat.TLV_INTEGER, 4, TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, pageCount));
                        structList[i - index] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_MESSAGE_QUERY_RESP, 8));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.O2JAM2API_ItemShopAPI_NoGiftItem, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_MESSAGE_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(lg.O2JAM2API_AccountInfoAPI_NoAccount, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_MESSAGE_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #24
0
        /// <summary>
        /// 查看玩家消费记录
        /// </summary>
        /// <returns></returns>
        public Message UserConsume_Query(int index, int pageSize)
        {
            string   serverIP = null;
            string   account  = null;
            DateTime beginDate;
            DateTime endDate;
            int      kind    = 0;
            int      buyType = -1;
            DataSet  ds      = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_ServerIP).m_bValueBuffer);
                account  = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_UserID).m_bValueBuffer);
                TLV_Structure tlvStrut = new TLV_Structure(TagName.o2jam_KIND, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_KIND).m_bValueBuffer);
                kind      = (int)tlvStrut.toInteger();
                tlvStrut  = new TLV_Structure(TagName.O2JAM_BuyType, 4, msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM_BuyType).m_bValueBuffer);
                buyType   = (int)tlvStrut.toInteger();
                tlvStrut  = new TLV_Structure(TagName.o2jam_BeginDate, 3, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_BeginDate).m_bValueBuffer);
                beginDate = tlvStrut.toDate();
                tlvStrut  = new TLV_Structure(TagName.o2jam_EndDate, 3, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_EndDate).m_bValueBuffer);
                endDate   = tlvStrut.toDate();
                SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + account + lg.O2JAM_ItemShopInfoAPI_ConsumeRecord);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + account + lg.O2JAM_ItemShopInfoAPI_ConsumeRecord);
                ds = ItemShopInfo.userConsume_Query(serverIP, account, kind, buyType, beginDate, endDate);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    //总页数
                    int pageCount = 0;
                    pageCount = ds.Tables[0].Rows.Count % pageSize;
                    if (pageCount > 0)
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize + 1;
                    }
                    else
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize;
                    }
                    if (index + pageSize > ds.Tables[0].Rows.Count)
                    {
                        pageSize = ds.Tables[0].Rows.Count - index;
                    }
                    Query_Structure[] structList = new Query_Structure[pageSize];
                    for (int i = index; i < index + pageSize; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length + 1);
                        byte[]          bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut.AddTagKey(TagName.o2jam_UserID, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[1]);
                        strut.AddTagKey(TagName.o2jam_ITEM_INDEX_ID, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[2]);
                        strut.AddTagKey(TagName.o2jam_ITEM_NAME, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[3]);
                        strut.AddTagKey(TagName.o2jam_GEM, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[4]);
                        strut.AddTagKey(TagName.o2jam_MCASH, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, ds.Tables[0].Rows[i].ItemArray[5]);
                        strut.AddTagKey(TagName.o2jam_REG_DATE, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[6]);
                        strut.AddTagKey(TagName.o2jam_ReceiverID, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[7]);
                        strut.AddTagKey(TagName.o2jam_ReceiverNickName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        //总页数
                        strut.AddTagKey(TagName.PageCount, TagFormat.TLV_INTEGER, 4, TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, pageCount));
                        structList[i - index] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_CONSUME_QUERY_RESP, 9));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.O2JAM_ItemShopInfoAPI_NoConsumeRecord, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_CONSUME_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception)
            {
                return(Message.COMMON_MES_RESP(lg.O2JAM_ItemShopInfoAPI_NoConsumeRecord, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_CONSUME_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #25
0
        /// <summary>
        /// 查看玩家消费记录
        /// </summary>
        /// <returns></returns>
        public Message UserConsume_Query(int index, int pageSize)
        {
            string   serverIP = null;
            string   account  = null;
            DateTime beginDate;
            DateTime endDate;
            int      moneyType = -1;
            DataSet  ds        = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_ServerIP).m_bValueBuffer);
                account  = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_Account).m_bValueBuffer);
                TLV_Structure tlvStrut = new TLV_Structure(TagName.SDO_BeginTime, 3, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_BeginTime).m_bValueBuffer);
                beginDate = tlvStrut.toDate();
                tlvStrut  = new TLV_Structure(TagName.SDO_EndTime, 3, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_EndTime).m_bValueBuffer);
                endDate   = tlvStrut.toDate();
                tlvStrut  = new TLV_Structure(TagName.SDO_MoneyType, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_MoneyType).m_bValueBuffer);
                moneyType = (int)tlvStrut.toInteger();
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.SDOAPI_SDO + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.SDOAPI_SDOItemLogInfoAPI_Account + account + lg.SDOAPI_SDOItemShopAPI_TradeRecord + "!");
                ds = ItemShopInfo.userConsume_Query(serverIP, account, moneyType, beginDate, endDate);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    //总页数
                    int pageCount = 0;
                    pageCount = ds.Tables[0].Rows.Count % pageSize;
                    if (pageCount > 0)
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize + 1;
                    }
                    else
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize;
                    }
                    if (index + pageSize > ds.Tables[0].Rows.Count)
                    {
                        pageSize = ds.Tables[0].Rows.Count - index;
                    }
                    Query_Structure[] structList = new Query_Structure[pageSize];
                    for (int i = index; i < index + pageSize; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length + 1);
                        byte[]          bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut.AddTagKey(TagName.SDO_Account, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[1]);
                        strut.AddTagKey(TagName.SDO_ProductID, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[2]);
                        strut.AddTagKey(TagName.SDO_ProductName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[3]);
                        strut.AddTagKey(TagName.SDO_MoneyCost, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[4]);
                        strut.AddTagKey(TagName.SDO_MoneyType, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, ds.Tables[0].Rows[i].ItemArray[5]);
                        strut.AddTagKey(TagName.SDO_ShopTime, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);
                        //总页数
                        strut.AddTagKey(TagName.PageCount, TagFormat.TLV_INTEGER, 4, TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, pageCount));
                        structList[i - index] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.SDO_ADMIN, ServiceKey.SDO_CONSUME_QUERY_RESP, 7));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.SDOAPI_SDOItemShopAPI_NoChargeRecord, Msg_Category.SDO_ADMIN, ServiceKey.SDO_CONSUME_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(lg.SDOAPI_SDOItemShopAPI_NoChargeRecord, Msg_Category.SDO_ADMIN, ServiceKey.SDO_CONSUME_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #26
0
        /// <summary>
        /// 查看玩家礼物盒的道具
        /// </summary>
        /// <returns></returns>
        public Message giftBox_Query()
        {
            string  serverIP    = null;
            int     userIndexID = 0;
            DataSet ds          = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_ServerIP).m_bValueBuffer);
                TLV_Structure tlvStrut = new TLV_Structure(TagName.o2jam_USER_INDEX_ID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_USER_INDEX_ID).m_bValueBuffer);
                userIndexID = (int)tlvStrut.toInteger();
                SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + userIndexID + lg.O2JAM_ItemShopInfoAPI_GiftItem);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + userIndexID + lg.O2JAM_ItemShopInfoAPI_GiftItem);
                //请求所有分类道具列表
                ds = ItemShopInfo.O2JAMGiftBox_Query(serverIP, userIndexID);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = new Query_Structure[ds.Tables[0].Rows.Count];
                    for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length);
                        //道具ID
                        byte[] bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut.AddTagKey(TagName.o2jam_ITEM_INDEX_ID, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具名
                        object itemName;
                        if (ds.Tables[0].Rows[i].IsNull(1) == false)
                        {
                            itemName = ds.Tables[0].Rows[i].ItemArray[1];
                        }
                        else
                        {
                            itemName = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, itemName);
                        strut.AddTagKey(TagName.o2jam_ITEM_NAME, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);

                        //G币
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[2]);
                        strut.AddTagKey(TagName.o2jam_GEM, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //M币
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[3]);
                        strut.AddTagKey(TagName.o2jam_MCASH, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //发送人呢称
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[4]);
                        strut.AddTagKey(TagName.o2jam_SenderNickName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);

                        //日期
                        object sendDate;
                        if (ds.Tables[0].Rows[i].IsNull(5) == false)
                        {
                            sendDate = ds.Tables[0].Rows[i].ItemArray[5];
                        }
                        else
                        {
                            sendDate = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, sendDate);
                        strut.AddTagKey(TagName.o2jam_ReadDate, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);

                        structList[i] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_GIFTBOX_QUERY_RESP, 6));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.O2JAM_ItemShopInfoAPI_NoItemOnGift, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_GIFTBOX_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(ex.Message, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_GIFTBOX_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #27
0
        /// <summary>
        /// 查看玩家身上道具
        /// </summary>
        /// <returns></returns>
        public Message itemShop_Owner_Query()
        {
            string  serverIP = null;
            string  account  = null;
            DataSet ds       = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_ServerIP).m_bValueBuffer);
                account  = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_UserID).m_bValueBuffer);
                SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + account + lg.O2JAM_ItemShopInfoAPI_PersonalItem);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_CharacterInfoAPI_Account + account + lg.O2JAM_ItemShopInfoAPI_PersonalItem);
                //请求玩家身上的道具
                ds = ItemShopInfo.itemShop_Query(serverIP, account);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = new Query_Structure[1];
                    Query_Structure   strut      = new Query_Structure((uint)ds.Tables[0].Rows[0].ItemArray.Length + 1);
                    //道具编号
                    byte[] bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[0]);
                    strut.AddTagKey(TagName.o2jam_ITEM_INDEX_ID, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具名
                    //bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING,UserValidate.validData(ds.Tables[0].Rows[0].ItemArray[1]));
                    //strut.AddTagKey(TagName.o2jam_ITEM_NAME,TagFormat.TLV_STRING,(uint)bytes.Length,bytes);
                    //道具1
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[1]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP1, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具2
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[2]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP2, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具3
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[3]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP3, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具4
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[4]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP4, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具5
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[5]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP5, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具6
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[6]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP6, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具7
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[7]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP7, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具8
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[8]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP8, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具9
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[9]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP9, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具10
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[10]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP10, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具11
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[11]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP11, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具12
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[12]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP12, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具13
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[13]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP13, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具14
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[14]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP14, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具15
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[15]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP15, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //道具16
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[16]);
                    strut.AddTagKey(TagName.O2JAM_EQUIP16, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹1
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[17]);
                    strut.AddTagKey(TagName.O2JAM_BAG1, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹2
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[18]);
                    strut.AddTagKey(TagName.O2JAM_BAG2, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹3
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[19]);
                    strut.AddTagKey(TagName.O2JAM_BAG3, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹4
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[20]);
                    strut.AddTagKey(TagName.O2JAM_BAG4, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹5
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[21]);
                    strut.AddTagKey(TagName.O2JAM_BAG5, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹6
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[22]);
                    strut.AddTagKey(TagName.O2JAM_BAG6, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹7
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[23]);
                    strut.AddTagKey(TagName.O2JAM_BAG7, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹8
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[24]);
                    strut.AddTagKey(TagName.O2JAM_BAG8, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹9
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[25]);
                    strut.AddTagKey(TagName.O2JAM_BAG9, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹10
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[26]);
                    strut.AddTagKey(TagName.O2JAM_BAG10, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹11
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[27]);
                    strut.AddTagKey(TagName.O2JAM_BAG11, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹12
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[28]);
                    strut.AddTagKey(TagName.O2JAM_BAG12, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹13
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[29]);
                    strut.AddTagKey(TagName.O2JAM_BAG13, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹14
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[30]);
                    strut.AddTagKey(TagName.O2JAM_BAG14, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹15
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[31]);
                    strut.AddTagKey(TagName.O2JAM_BAG15, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹16
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[32]);
                    strut.AddTagKey(TagName.O2JAM_BAG16, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[33]);
                    strut.AddTagKey(TagName.O2JAM_BAG17, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹18
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[34]);
                    strut.AddTagKey(TagName.O2JAM_BAG18, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹19
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[35]);
                    strut.AddTagKey(TagName.O2JAM_BAG19, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹20
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[36]);
                    strut.AddTagKey(TagName.O2JAM_BAG20, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹21
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[37]);
                    strut.AddTagKey(TagName.O2JAM_BAG21, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹22
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[38]);
                    strut.AddTagKey(TagName.O2JAM_BAG22, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹23
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[39]);
                    strut.AddTagKey(TagName.O2JAM_BAG23, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹24
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[40]);
                    strut.AddTagKey(TagName.O2JAM_BAG24, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹25
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[41]);
                    strut.AddTagKey(TagName.O2JAM_BAG25, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹26
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[42]);
                    strut.AddTagKey(TagName.O2JAM_BAG26, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹27
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[43]);
                    strut.AddTagKey(TagName.O2JAM_BAG27, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹28
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[44]);
                    strut.AddTagKey(TagName.O2JAM_BAG28, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹29
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[45]);
                    strut.AddTagKey(TagName.O2JAM_BAG29, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    //包裹30
                    bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[0].ItemArray[46]);
                    strut.AddTagKey(TagName.O2JAM_BAG30, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                    structList[0] = strut;
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_ITEM_QUERY_RESP, 47));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.O2JAM_ItemShopInfoAPI_NoItemOnPlayer, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_ITEM_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(Message.COMMON_MES_RESP(lg.O2JAM_ItemShopInfoAPI_NoItemOnPlayer, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_ITEM_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #28
0
        /// <summary>
        /// 查看游戏里面所有道具
        /// </summary>
        /// <returns></returns>
        public Message itemShop_QueryALL()
        {
            string  serverIP  = null;
            string  itemName1 = null;
            int     sex       = -1;
            DataSet ds        = null;

            try
            {
                serverIP  = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_ServerIP).m_bValueBuffer);
                itemName1 = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_ITEM_NAME).m_bValueBuffer);
                TLV_Structure tlvStrut = new TLV_Structure(TagName.o2jam_Sex, 4, msg.m_packet.m_Body.getTLVByTag(TagName.o2jam_Sex).m_bValueBuffer);
                sex = (int)tlvStrut.toInteger();
                SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_ItemShopInfoAPI_GameItem);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM_O2JAM + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM_ItemShopInfoAPI_GameItem);
                //请求所有分类道具列表
                ds = ItemShopInfo.itemShop_QueryAll(serverIP, itemName1, sex);
                if (ds.Tables[0].Rows.Count > 0)
                {
                    Query_Structure[] structList = new Query_Structure[ds.Tables[0].Rows.Count];
                    for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length);
                        //道具编号
                        byte[] bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut.AddTagKey(TagName.o2jam_ITEM_INDEX_ID, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具名
                        object itemName;
                        if (ds.Tables[0].Rows[i].IsNull(1) == false)
                        {
                            itemName = ds.Tables[0].Rows[i].ItemArray[1];
                        }
                        else
                        {
                            itemName = "";
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, itemName);
                        strut.AddTagKey(TagName.o2jam_ITEM_NAME, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        //性别
                        sex   = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[2]);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, sex);
                        strut.AddTagKey(TagName.o2jam_Sex, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //G币
                        int GCash = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[3]);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, GCash);
                        strut.AddTagKey(TagName.o2jam_GEM, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //M币
                        int MCash = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[4]);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, MCash);
                        strut.AddTagKey(TagName.o2jam_MCASH, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        structList[i] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_ITEM_QUERY_RESP, 5));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.O2JAM_ItemShopInfoAPI_NoItem, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_ITEM_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(lg.O2JAM_ItemShopInfoAPI_NoItem, Msg_Category.O2JAM_ADMIN, ServiceKey.O2JAM_ITEM_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #29
0
        /// <summary>
        /// 查看玩家交易记录
        /// </summary>
        /// <returns></returns>
        public Message UserTrade_Query(int index, int pageSize)
        {
            string  serverIP     = null;
            string  senderUserID = null;
            string  receiveserID = null;
            DataSet ds           = null;

            try
            {
                serverIP     = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_ServerIP).m_bValueBuffer);
                senderUserID = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_UserID).m_bValueBuffer);
                receiveserID = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.O2JAM2_UserNick).m_bValueBuffer);
                if (senderUserID.Length < 0)
                {
                    senderUserID = receiveserID;
                }
                SqlHelper.log.WriteLog(lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + senderUserID + lg.O2JAM2API_ItemShopAPI_TradeRecord);
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.O2JAM2API_BAF + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.O2JAM2API_AccountInfoAPI_Account + senderUserID + lg.O2JAM2API_ItemShopAPI_TradeRecord);
                ds = ItemShopInfo.userTrade_Query(serverIP, senderUserID, receiveserID);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    //总页数
                    int pageCount = 0;
                    pageCount = ds.Tables[0].Rows.Count % pageSize;
                    if (pageCount > 0)
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize + 1;
                    }
                    else
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize;
                    }
                    if (index + pageSize > ds.Tables[0].Rows.Count)
                    {
                        pageSize = ds.Tables[0].Rows.Count - index;
                    }
                    Query_Structure[] structList = new Query_Structure[pageSize];
                    for (int i = index; i < index + pageSize; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length + 1);
                        byte[]          bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut.AddTagKey(TagName.SDO_ItemCode, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[1]);
                        strut.AddTagKey(TagName.SDO_ItemName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[2]);
                        strut.AddTagKey(TagName.SDO_SendIndexID, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[3]);
                        strut.AddTagKey(TagName.SDO_SendUserID, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, ds.Tables[0].Rows[i].ItemArray[4]);
                        strut.AddTagKey(TagName.SDO_SendTime, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, ds.Tables[0].Rows[i].ItemArray[5]);
                        strut.AddTagKey(TagName.SDO_ReceiveNick, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);

                        //总页数
                        strut.AddTagKey(TagName.PageCount, TagFormat.TLV_INTEGER, 4, TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, pageCount));
                        structList[i - index] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_TRADE_QUERY_RESP, 7));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.O2JAM2API_ItemShopAPI_NoTradeRecord, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_TRADE_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (System.Exception ex)
            {
                return(Message.COMMON_MES_RESP(ex.Message, Msg_Category.O2JAM2_ADMIN, ServiceKey.O2JAM2_TRADE_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }
コード例 #30
0
        /// <summary>
        /// 查看玩家身上道具
        /// </summary>
        /// <returns></returns>
        public Message itemShop_Owner_Query(int index, int pageSize)
        {
            string  serverIP    = null;
            int     userIndexID = 0;
            DataSet ds          = null;

            try
            {
                serverIP = Encoding.Default.GetString(msg.m_packet.m_Body.getTLVByTag(TagName.SDO_ServerIP).m_bValueBuffer);
                TLV_Structure tlvStrut = new TLV_Structure(TagName.SDO_UserIndexID, 4, msg.m_packet.m_Body.getTLVByTag(TagName.SDO_UserIndexID).m_bValueBuffer);
                userIndexID = (int)tlvStrut.toInteger();
                Console.WriteLine(DateTime.Now + " - " + lg.API_Display + lg.SDOAPI_SDO + "+>" + lg.API_CommonAPI_ServerIP + CommonInfo.serverIP_Query(serverIP) + lg.SDOAPI_SDOItemLogInfoAPI_Account + userIndexID + lg.SDOAPI_SDOItemShopAPI_PersonalItem + "!");
                //请求玩家身上的道具
                ds = ItemShopInfo.itemShop_Query(serverIP, userIndexID);
                if (ds != null && ds.Tables[0].Rows.Count > 0)
                {
                    //总页数
                    int pageCount = 0;
                    pageCount = ds.Tables[0].Rows.Count % pageSize;
                    if (pageCount > 0)
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize + 1;
                    }
                    else
                    {
                        pageCount = ds.Tables[0].Rows.Count / pageSize;
                    }
                    if (index + pageSize > ds.Tables[0].Rows.Count)
                    {
                        pageSize = ds.Tables[0].Rows.Count - index;
                    }
                    Query_Structure[] structList = new Query_Structure[pageSize];
                    for (int i = index; i < index + pageSize; i++)
                    {
                        Query_Structure strut = new Query_Structure((uint)ds.Tables[0].Rows[i].ItemArray.Length + 1);
                        //道具编号
                        byte[] bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[0]);
                        strut.AddTagKey(TagName.SDO_ItemCode, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具名
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_STRING, UserValidate.validData(ds.Tables[0].Rows[i].ItemArray[1]));
                        strut.AddTagKey(TagName.SDO_ItemName, TagFormat.TLV_STRING, (uint)bytes.Length, bytes);
                        //最小等级
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[2]);
                        strut.AddTagKey(TagName.SDO_MinLevel, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具位置
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, ds.Tables[0].Rows[i].ItemArray[3]);
                        strut.AddTagKey(TagName.SDO_Postion, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具使用次数
                        int timelimits = Convert.ToInt32(ds.Tables[0].Rows[i].ItemArray[4]);
                        if (timelimits == -1)
                        {
                            timelimits = 0;
                        }
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, timelimits);
                        strut.AddTagKey(TagName.SDO_TimesLimit, TagFormat.TLV_INTEGER, (uint)bytes.Length, bytes);
                        //道具时间限制
                        bytes = TLV_Structure.ValueToByteArray(TagFormat.TLV_TIMESTAMP, ds.Tables[0].Rows[i].ItemArray[5]);
                        strut.AddTagKey(TagName.SDO_DateLimit, TagFormat.TLV_TIMESTAMP, (uint)bytes.Length, bytes);
                        //总页数
                        strut.AddTagKey(TagName.PageCount, TagFormat.TLV_INTEGER, 4, TLV_Structure.ValueToByteArray(TagFormat.TLV_INTEGER, pageCount));
                        structList[i - index] = strut;
                    }
                    return(Message.COMMON_MES_RESP(structList, Msg_Category.SDO_ADMIN, ServiceKey.SDO_ITEMSHOP_BYOWNER_QUERY_RESP, 7));
                }
                else
                {
                    return(Message.COMMON_MES_RESP(lg.SDOAPI_SDOItemShopAPI_NoItemOnPlayer, Msg_Category.SDO_ADMIN, ServiceKey.SDO_ITEMSHOP_BYOWNER_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
                }
            }
            catch (Common.Logic.Exception ex)
            {
                Console.WriteLine(ex.Message);
                return(Message.COMMON_MES_RESP(lg.SDOAPI_SDOItemShopAPI_NoItemOnPlayer, Msg_Category.SDO_ADMIN, ServiceKey.SDO_ITEMSHOP_BYOWNER_QUERY_RESP, TagName.ERROR_Msg, TagFormat.TLV_STRING));
            }
        }