123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107 |
- using System;
- /// <summary>
- /// 邮件
- /// </summary>
- public class MailProxy : ProxyBase<MailProxy>
- {
- /// <summary>
- /// 邮件最大过期时间
- /// </summary>
- public const int MaxMailExpireTs = 7 * 24 * 3600;
- /// <summary>
- /// 邮件最大数量
- /// </summary>
- public const int MaxMailCount = 100;
- /// <summary>
- /// init
- /// </summary>
- public MailProxy() =>this.opeCode = OpeCode.ope_mail;
- /// <summary>
- /// [6701][邮件-拉取我的邮件列表]
- /// </summary>
- /// <param name="mailId">客户端的最大(最新)邮件id,(默认值为0)(服务端会拉取比它靠后的邮件)</param>
- /// <param name="callback">成功回调处理</param>
- public void QueryMyMails(Action<GetMailListRetVo> callback = null)
- {
- Post<GetMailListRetVo>(CmdCode.cmd_mail_getmaillist, new object[] { }, callback);
- }
- /// <summary>
- /// [6702] 读取/打开 邮件
- /// </summary>
- /// <param name="mailId">邮件id </param>
- /// <param name="callback"></param>
- public void ReadMail(int mailId, Action callback = null)
- {
- Post(CmdCode.cmd_mail_readmail, new object[] { mailId }, resp => callback?.Invoke());
- }
- /// <summary>
- /// [6703] 邮件 - 领取附件奖励
- /// </summary>
- /// <param name="mailId">邮件id </param>
- /// <param name="callback"></param>
- public void DrawAMail(int mailId, Action<string> callback = null)
- {
- Post<DrawAllMailRetVo>(CmdCode.cmd_mail_DrawReward, new object[] { mailId },
- ret =>
- {
- // 同步数据
- var p = UserProxy.Instance.player;
- p.baseInfo = ret.baseInfo;
- p.collectHero.InitData(ret.hero,p);
- callback?.Invoke(ret.reward);
- });
- }
- /// <summary>
- /// [6703] 邮件 - 领取附件奖励
- /// </summary>
- /// <param name="mailId">邮件id </param>
- /// <param name="callback"></param>
- public void DrawAllMails(Action<DrawAllMailRetVo> callback = null)
- {
- Post<DrawAllMailRetVo>(CmdCode.cmd_mail_DrawAllRewards, new object[] { },
- ret =>
- {
- //var ret = resp.result.ToObject<DrawAllMailRetVo>();
- // 同步数据
- var p = UserProxy.Instance.player;
- p.baseInfo = ret.baseInfo;
- p.collectHero.InitData(ret.hero,p);
- callback?.Invoke(ret);
- });
- }
- /// <summary>
- /// 6705 不论邮件是否读取,删除
- /// </summary>
- /// <param name="dels"></param>
- /// <param name="callback"></param>
- public void Delmails(Action<DelMailRetvo> callback = null)
- {
- Post<DelMailRetvo>(CmdCode.cmd_mail_delMailReaded, new object[] { }, callback);
- }
- /// <summary>
- /// 6706 请求最新的未处理的 邮件的数量
- /// </summary>
- /// <param name="callback"></param>
- public void QueryMyMailsNotHandledNum(Action<int> callback = null)
- {
- Post(CmdCode.cmd_mail_notReadMailNum, new object[] { }, resp => callback?.Invoke(resp.result["num"].ToObject<int>()));
- }
- /// <summary>
- /// 6707 发放内部测试道具邮件
- /// </summary>
- /// <param name="callback"></param>
- public void SendTestingItems(string itemId, string num, Action<GetMailListRetVo> callback = null)
- {
- Post<GetMailListRetVo>(CmdCode.cmd_mail_SendTestItems, new object[] { itemId, num }, callback);
- }
- }
|