123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306 |
- using UnityEngine;
- using System.Collections;
- using Newtonsoft.Json.Linq;
- using System.Collections.Generic;
- using System;
- using System.Linq;
- using System.Text;
- /// <summary>
- /// 好友模块
- /// </summary>
- [Obsolete("尚未修缮, --gwang")]
- public class FriendProxy : ProxyBase<FriendProxy>
- {
- #region ` 构造函数 `
- /// <summary>
- /// init
- /// </summary>
- public FriendProxy() => this.opeCode = OpeCode.ope_friend;
- #endregion
- #region ` 本地字段 `
- /// <summary>
- /// 当天的发出邀请加好友的记录
- /// </summary>
- Dictionary<string, string> mApplied = new Dictionary<string, string>();
- /// <summary>
- /// 查询其他人的 共享的英雄信息记录
- /// </summary>
- public Dictionary<string, JObject> mQueryStrengtherSharedHeroDic = new Dictionary<string, JObject>();
- /// <summary>
- /// 记录个人的发送礼物记录
- /// </summary>
- public Dictionary<string, int> mSendGiftToMyFriendRecord = new Dictionary<string, int>();
- #endregion
- /// <summary>
- /// 6101 [好友-请求加好友1]
- /// 向陌生人发送好友申请
- /// </summary>
- /// <param name="targetUID">想加的好友UID</param>
- /// <param name="callback">成功回调(无返回参数)</param>
- public void SendInvitationToStranger(string targetUID, Action<JObject> callback)
- {
- Post(CmdCode.friend_SendInvitationToStranger, new object[] { targetUID },
- resp =>
- {
- if (!mApplied.ContainsKey(targetUID))
- {
- mApplied.Add(targetUID, DateTime.Now.tsDay().ToString());
- }
- callback?.Invoke(resp.result);
- });
- }
- /// <summary>
- /// [6102][好友-同意好友请求]
- /// </summary>
- /// <param name="targetUIDList">想加的好友UID</param>
- /// <param name="callback">成功回调处理</param>
- public void AgreeToFriends(List<string> targetUIDList, Action<JObject> callback)
- {
- Post(CmdCode.friend_AgreeToFriends, new object[] { string.Join(",", targetUIDList.ToArray()) }, resp => callback?.Invoke(resp.result));
- }
- /// <summary>
- /// 6103 [好友-拒绝好友请求]
- /// </summary>
- /// <param name="targetUID">拒绝好友UID</param>
- /// <param name="callback">成功回调处理</param>
- public void RefusedStranger(string targetUID, Action<JObject> callback)
- {
- Post(CmdCode.friend_RefusedStranger, new object[] { targetUID }, resp => callback?.Invoke(resp.result));
- }
- /// <summary>
- /// [6104][好友-删除好友]
- /// </summary>
- /// <param name="targetUID">删除好友UID</param>
- /// <param name="callback">成功回调处理</param>
- public void DeleteFriends(string targetUID, Action<JObject> callback)
- {
- Post(CmdCode.friend_DeleteFriends, new object[] { targetUID }, resp => callback?.Invoke(resp.result));
- }
- /// <summary>
- /// [6105 ]好友---请求别人给我发来的好友邀请信息
- /// </summary>
- /// <param name="callback">成功回调处理</param>
- public void QueryOthersInviteMeMessage(Action<JObject> callback)
- {
- Post(CmdCode.friend_QueryOthersInviteMeMessage, new object[] { }, resp => callback?.Invoke(resp.result));
- }
- /// <summary>
- /// [6106 ][好友-拉取我的好友列表]
- /// </summary>
- /// <param name="callback">成功回调处理</param>
- public void QueryMyFriends(Action<JObject> callback)
- {
- Post(CmdCode.friend_QueryMyFriends, new object[] { }, resp => callback?.Invoke(resp.result));
- }
- /// <summary>
- /// [6107 ][好友-拉取好友的共享英雄详细信息]
- /// </summary>
- /// <param name="targetUID">目标英雄ID</param>
- /// <param name="callback">成功回调处理</param>
- public void QueryFriendSharedHeroInfo(List<string> targetUIDList, Action<JObject> callback)
- {
- Post(CmdCode.friend_QueryFriendSharedHeroInfo, new object[] { string.Join(",", targetUIDList.ToArray()) },
- resp =>
- {
- if (resp.result["ret"] != null && resp.result["ret"].HasValues)
- {
- JObject friendList = resp.result["ret"] as JObject;
- if (friendList.HasValues)
- {
- foreach (JProperty st in friendList.Children())
- {
- if (!mQueryStrengtherSharedHeroDic.ContainsKey(st.Name))
- {
- mQueryStrengtherSharedHeroDic.Add(st.Name, st.Value as JObject);
- }
- else
- {
- mQueryStrengtherSharedHeroDic[st.Name] = st.Value as JObject;
- }
- }
- }
- }
- callback?.Invoke(resp.result);
- });
- }
- /// <summary>
- /// [6108] [好友-发送好友留言]
- /// </summary>
- /// <param name="targetUID">目标英雄</param>
- /// <param name="msg">留言</param>
- /// <param name="callback">成功回调处理</param>
- public void SendMessageToFriends(string targetUID, string msg, int ts, Action<JObject> callback)
- {
- Post(CmdCode.friend_SendMessageToFriends, new object[] { targetUID, msg, ts }, resp => callback?.Invoke(resp.result));
- }
- /// <summary>
- /// [6109] [好友-刷新好友留言消息]
- /// </summary>
- /// <param name="heroUId">操作的英雄UID</param>
- /// <param name="ts">最后一条消息的ts</param>
- /// <param name="callback">成功回调处理</param>
- public void RefreshFriendLeaveMessage(string heroUId, int ts, Action<JObject> callback)
- {
- Post(CmdCode.friend_RefreshFriendLeaveMessage, new object[] { heroUId, ts }, resp => callback?.Invoke(resp.result));
- }
- /// <summary>
- /// [6110] [好友-搜索好友]
- /// </summary>
- /// <param name="filter">搜索关键字</param>
- /// <param name="pageId">分页</param>
- /// <param name="callback">成功回调处理</param>
- public void SearchStranger(string filter, int pageId, Action<JObject> callback)
- {
- Post(CmdCode.friend_SearchStranger, new object[] { filter, pageId },
- resp =>
- {
- if (resp.result["applied"] != null && resp.result["applied"].HasValues)
- {
- mApplied = (resp.result["applied"] as JObject).ToObject<Dictionary<string, string>>();
- }
- callback?.Invoke(resp.result);
- });
- }
- /// <summary>
- /// [6111] [好友 -- 添加好友 :::系统推荐的 陌生人列表]
- /// </summary>
- /// <param name="pageId">分页</param>
- /// <param name="callback">成功回调处理</param>
- public void SystemProvideStrangerList(int pageId, Action<JObject> callback)
- {
- Post(CmdCode.friend_SystemProvideStrangerList, new object[] { pageId },
- resp =>
- {
- if (resp.result["applied"] != null && resp.result["applied"].HasValues)
- {
- mApplied = (resp.result["applied"] as JObject).ToObject<Dictionary<string, string>>();
- }
- callback?.Invoke(resp.result);
- });
- }
- /// <summary>
- /// [6113] [好友 -- 拉取 别人给我发送礼物的信息]
- /// ;参数: 无
- ///;返回值: "ret":{"gwang":[22334,12345],...}
- /// </summary>
- /// <param name="pageId">分页</param>
- /// <param name="callback">成功回调处理</param>
- public void QueryOtherFriendSendMeGiftMessages(Action<QueryOtherFriendSendMeGiftMessageRetVo> callback)
- {
- Post(CmdCode.friend_QueryOtherFriendSendMeGift, new object[] { }, resp => callback?.Invoke(resp.result.ToObject<QueryOtherFriendSendMeGiftMessageRetVo>()));
- }
- /// <summary>
- /// [6114] [好友 -- 收取别人给我发送的礼物 并回赠]
- /// [好友-收取好友赠送礼物_并回赠]
- ///;参数: 逗号分割的uid和tsday组合(好友记录的uid和ts拼到一起), 是否回赠
- ///req={"uid":"wanggangzero.cn","ope":601,"cmd":6114,"paras":["gwang12346"],"sig":"w","msgid":"w","ts":0,"zoneid":1,"clientVer":"1.0.1","tag":null}
- /// </summary>
- /// <param name="targetUIDList">分页</param>
- /// <param name="callback">成功回调处理</param>
- [Obsolete("-",true)]
- public void ReceiveAndSendGiftToFriend(List<string> targetUIDList, Action<JObject> callback)
- {
- Post(CmdCode.friend_ReceiveAndSendGiftToFriend, new object[] { string.Join(",", targetUIDList.ToArray()) },
- resp =>
- {
- // UserProxy.Instance.player.ChangeFriendPoint(resp.result["ret"].ToObject<int>());
- callback?.Invoke(resp.result);
- });
- }
- /// <summary>
- /// [6115] [好友 -- 给我的好友赠送礼物 ]
- /// </summary>
- /// <param name="targetUIDList">分页</param>
- /// <param name="callback">成功回调处理</param>
- public void SendGiftToMyFriends(List<string> targetUIDList, Action<JObject> callback)
- {
- Post(CmdCode.friend_SendGiftToMyFriends, new object[] { string.Join(",", targetUIDList.ToArray()) }, resp => callback?.Invoke(resp.result));
- }
- /// <summary>
- /// [6116] 检查玩家的好友信息是否有未处理的
- /// </summary>
- /// <param name="targetUIDList"></param>
- /// <param name="callback"></param>
- public void CheckUnduckMessage(Action<JObject> callback)
- {
- Post(CmdCode.friend_unduckmsg, new object[] { }, resp => callback?.Invoke(resp.result));
- }
- /// <summary>
- /// [6117] 检查玩家的好友信息是否有未处理的
- /// </summary>
- /// <param name="targetUIDList"></param>
- /// <param name="callback"></param>
- public void LookGuildInfo(string friendId, Action<JObject> callback)
- {
- Post(CmdCode.cmd_user_friend_LookGuildInfo, new object[] { friendId }, resp => callback?.Invoke(resp.result));
- }
- #region ` 辅助方法 `
- /// <summary>
- /// 查询好友共享英雄信息
- /// </summary>
- /// <param name="uid"></param>
- /// <returns></returns>
- public JObject FindRecordFriendSharedHeroInfo(string uid)
- {
- if (mQueryStrengtherSharedHeroDic.ContainsKey(uid))
- {
- return mQueryStrengtherSharedHeroDic[uid];
- }
- return null;
- }
- /// <summary>
- /// 检查今天是否给某个人发送了好友申请
- /// true = 已申请
- /// false = 未申请
- /// </summary>
- /// <param name="mStrengtherUID"></param>
- /// <returns></returns>
- internal bool CheckHasInviteSomeOne(string mStrengtherUID) => mApplied.ContainsKey(mStrengtherUID);
- /// <summary>
- /// 检查 我今天是否给某个好友发送礼物了
- /// true = 已发送
- /// false = 未发送
- /// </summary>
- /// <param name="mStrengtherUID"></param>
- /// <returns></returns>
- internal bool CheckTodayHasSendGift(string mStrengtherUID)
- {
- if (mSendGiftToMyFriendRecord.ContainsKey(mStrengtherUID))
- {
- if (mSendGiftToMyFriendRecord[mStrengtherUID] == DateTime.Now.tsDay())
- {
- return true;
- }
- }
- return false;
- }
- #endregion
- }
|