commonly commit

This commit is contained in:
2018-12-18 20:24:39 +08:00
parent 51e8622c1c
commit 7c3873c5b5
4 changed files with 34 additions and 12 deletions
+19 -9
View File
@@ -4,6 +4,8 @@ using System.Linq;
using System.Text;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System.Drawing;
using System.IO;
//StormClient对数据的处理相关内容
@@ -33,7 +35,7 @@ namespace Interact
switch (jsonObj[AttrNames.Operation].ToString())
{
case Operations.Login:
HandleLoginResult(GetResultHead(jsonObj), data);
HandleLoginResult(jsonObj, data);
break;
case Operations.Panic:
HandlePanic(GetResultHead(jsonObj));
@@ -68,23 +70,31 @@ namespace Interact
}
//处理登录反馈消息
private static void HandleLoginResult(ResultHead head, byte[] data)
private static void HandleLoginResult(JObject head, byte[] data)
{
//提取结果包头
ResultHead resultHead = GetResultHead(head);
//发起登录完成事件
if (head.Error != "")
if (head[AttrNames.Error].ToString() != "")
{
OnLoginDone?.Invoke(head, null);
OnLoginDone?.Invoke(resultHead, null);
return;
}
JObject dataObj = (JObject)JsonConvert.DeserializeObject(Encoding.UTF8.GetString(data));
User user = new User
{
Name = dataObj[AttrNames.User].ToString(),
NickName = dataObj[AttrNames.NickName].ToString(),
Motto = dataObj[AttrNames.Motto].ToString(),
Group = (UserGroup)Enum.Parse(typeof(UserGroup), dataObj[AttrNames.UGroup].ToString())
Name = head[AttrNames.User].ToString(),
NickName = head[AttrNames.NickName].ToString(),
Motto = head[AttrNames.Motto].ToString(),
Group = (UserGroup)Enum.Parse(typeof(UserGroup), dataObj[AttrNames.UGroup].ToString()),
Photo = User.DefaultPhoto
};
OnLoginDone?.Invoke(head, user);
if (int.Parse(head[AttrNames.Photo].ToString()) > 0)
{
MemoryStream ms = new MemoryStream(data);
user.Photo = Image.FromStream(ms);
} //用户头像数据
OnLoginDone?.Invoke(resultHead, user);
}
#endregion