521 lines
12 KiB
C#
521 lines
12 KiB
C#
|
//using SqlSugar;
|
|||
|
using System;
|
|||
|
using System.Xml.Serialization;
|
|||
|
|
|||
|
namespace Chat.Framework.WXSdk
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// 群用户
|
|||
|
/// </summary>
|
|||
|
public class GroupMember
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// id
|
|||
|
/// </summary>
|
|||
|
//[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
|||
|
public int id { get; set; }
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 群ID
|
|||
|
/// </summary>
|
|||
|
public string Groupid { get; set; }
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 微信ID
|
|||
|
/// </summary>
|
|||
|
public string Username { get; set; }
|
|||
|
private string _nickName { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 群昵称
|
|||
|
/// </summary>
|
|||
|
public string NickName { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 显示的群昵称
|
|||
|
/// </summary>
|
|||
|
public string DisplayName { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 大头像
|
|||
|
/// </summary>
|
|||
|
//[SugarColumn(Length = 500)]
|
|||
|
public string BigHeadImgUrl { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 小头像
|
|||
|
/// </summary>
|
|||
|
//[SugarColumn(Length = 500)]
|
|||
|
public string SmallHeadImgUrl { get; set; }
|
|||
|
/// <summary>
|
|||
|
///
|
|||
|
/// </summary>
|
|||
|
public int ChatroomMemberFlag { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 邀请者微信
|
|||
|
/// </summary>
|
|||
|
public string InviterUserName { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 显示的群昵称
|
|||
|
/// </summary>
|
|||
|
/// <returns></returns>
|
|||
|
public string GetName()
|
|||
|
{
|
|||
|
string name = DisplayName;
|
|||
|
if (string.IsNullOrEmpty(DisplayName))
|
|||
|
name = NickName;
|
|||
|
return name;
|
|||
|
}
|
|||
|
/// <summary>
|
|||
|
/// 更新时间
|
|||
|
/// </summary>
|
|||
|
public DateTime update_time { get; set; }
|
|||
|
|
|||
|
public GroupMember()
|
|||
|
{
|
|||
|
update_time = DateTime.Now;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 银行信息类
|
|||
|
/// </summary>
|
|||
|
public class BankCar
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// 银行名称
|
|||
|
/// </summary>
|
|||
|
public string bank_name { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 绑定编号
|
|||
|
/// </summary>
|
|||
|
public string bind_serial { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 绑定尾号
|
|||
|
/// </summary>
|
|||
|
public string bind_tail { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 银行类型
|
|||
|
/// </summary>
|
|||
|
public string bank_type { get; set; }
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 重写ToString方法显示为银行名称和卡号
|
|||
|
/// </summary>
|
|||
|
/// <returns></returns>
|
|||
|
public override string ToString()
|
|||
|
{
|
|||
|
return $"{bank_name}({bind_tail})";
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 好友实体类
|
|||
|
/// </summary>
|
|||
|
public class Friend
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// id
|
|||
|
/// </summary>
|
|||
|
//[SugarColumn(IsPrimaryKey = true, IsIdentity = true)]
|
|||
|
public int id { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 消息类型
|
|||
|
/// </summary>
|
|||
|
public int MsgType { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 账号
|
|||
|
/// </summary>
|
|||
|
public string UserName { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 昵称
|
|||
|
/// </summary>
|
|||
|
public string NickName { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 签名
|
|||
|
/// </summary>
|
|||
|
public string Signature { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 小头像
|
|||
|
/// </summary>
|
|||
|
//[SugarColumn(Length = 500)]
|
|||
|
public string SmallHeadImgUrl { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 大头像
|
|||
|
/// </summary>
|
|||
|
//[SugarColumn(Length = 500)]
|
|||
|
public string BigHeadImgUrl { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 省份
|
|||
|
/// </summary>
|
|||
|
public string Province { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 城市
|
|||
|
/// </summary>
|
|||
|
public string City { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 备注
|
|||
|
/// </summary>
|
|||
|
public string Remark { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 微信号
|
|||
|
/// </summary>
|
|||
|
public string Alias { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 性别
|
|||
|
/// </summary>
|
|||
|
public int Sex { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 连接类型
|
|||
|
/// </summary>
|
|||
|
public int ContactType { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 聊天室主人
|
|||
|
/// </summary>
|
|||
|
public string ChatRoomOwner { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 群用户微信ID字符串
|
|||
|
/// </summary>
|
|||
|
public string ExtInfo { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 是否为相互好友,值为空时为好友 (ipad协议)
|
|||
|
/// 等于-1为没有检测,等于0为正常用户,1,2为拉黑用户(Hook协议)
|
|||
|
/// </summary>
|
|||
|
public string Ticket { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 版本
|
|||
|
/// </summary>
|
|||
|
public string ChatroomVersion { get; set; }
|
|||
|
public string GetName()
|
|||
|
{
|
|||
|
if (!string.IsNullOrEmpty(Remark)) return Remark;
|
|||
|
return NickName;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 更新时间
|
|||
|
/// </summary>
|
|||
|
public DateTime update_time { get; set; }
|
|||
|
|
|||
|
public Friend()
|
|||
|
{
|
|||
|
update_time = DateTime.Now;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 微信状态
|
|||
|
/// </summary>
|
|||
|
public enum WxStatus:int
|
|||
|
{
|
|||
|
未登录 = 1,
|
|||
|
登录中 = 2,
|
|||
|
扫码中 = 3,
|
|||
|
扫码成功 = 4,
|
|||
|
登录失败 = 5,
|
|||
|
在线 = 6,
|
|||
|
已退出 = 7,
|
|||
|
已掉线 = 8,
|
|||
|
取消扫码 = 9,
|
|||
|
获取头像成功 = 10
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// cdn图片
|
|||
|
/// </summary>
|
|||
|
public class CDNImageMsgInfo
|
|||
|
{
|
|||
|
|
|||
|
public long StartPos = 0;
|
|||
|
|
|||
|
|
|||
|
private string _aeskey;//aes
|
|||
|
[XmlElement("aeskey")]
|
|||
|
public string AESKey
|
|||
|
{
|
|||
|
set
|
|||
|
{
|
|||
|
_aeskey = value;
|
|||
|
}
|
|||
|
get
|
|||
|
{
|
|||
|
return _aeskey;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
private long _totalLen = 0;//图片数据大小
|
|||
|
[XmlElement("length")]
|
|||
|
public long TotalLen
|
|||
|
{
|
|||
|
set
|
|||
|
{
|
|||
|
_totalLen = value;
|
|||
|
}
|
|||
|
get
|
|||
|
{
|
|||
|
return _totalLen;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private long _dataLen = 0;//图片数据大小
|
|||
|
[XmlElement("length")]
|
|||
|
public long DataLen
|
|||
|
{
|
|||
|
set
|
|||
|
{
|
|||
|
_dataLen = value;
|
|||
|
}
|
|||
|
get
|
|||
|
{
|
|||
|
return _dataLen;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private string _cdnmidimgurl;//cdn图片url
|
|||
|
[XmlElement("cdnmidimgurl")]
|
|||
|
public string CDNMidImgUrl
|
|||
|
{
|
|||
|
set
|
|||
|
{
|
|||
|
_cdnmidimgurl = value;
|
|||
|
}
|
|||
|
get
|
|||
|
{
|
|||
|
return _cdnmidimgurl;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private long _cdnmidimgsize = 0;//cdn图片大小
|
|||
|
[XmlElement("length")]
|
|||
|
public long CDNMidImgSize
|
|||
|
{
|
|||
|
set
|
|||
|
{
|
|||
|
_cdnmidimgsize = value;
|
|||
|
}
|
|||
|
get
|
|||
|
{
|
|||
|
return _cdnmidimgsize;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private long _cdnthumbimgsize = 0;//cdn图片大小
|
|||
|
[XmlElement("cdnthumblength")]
|
|||
|
public long CDNThumbImgSize
|
|||
|
{
|
|||
|
set
|
|||
|
{
|
|||
|
_cdnthumbimgsize = value;
|
|||
|
}
|
|||
|
get
|
|||
|
{
|
|||
|
return _cdnthumbimgsize;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
private long _cdnthumbimgheight;//cdn缩略图片高度
|
|||
|
[XmlElement("cdnthumbheight")]
|
|||
|
public long CDNThumbImgHeight
|
|||
|
{
|
|||
|
set
|
|||
|
{
|
|||
|
_cdnthumbimgheight = value;
|
|||
|
}
|
|||
|
get
|
|||
|
{
|
|||
|
return _cdnthumbimgheight;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
private long _cdnthumbimgwidth;//cdn缩略图片宽度
|
|||
|
[XmlElement("cdnthumbwidth")]
|
|||
|
public long CDNThumbImgWidth
|
|||
|
{
|
|||
|
set
|
|||
|
{
|
|||
|
_cdnthumbimgwidth = value;
|
|||
|
}
|
|||
|
get
|
|||
|
{
|
|||
|
return _cdnthumbimgwidth;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private long _cdnbigimgsize;//cdn大图大小
|
|||
|
[XmlElement("hdlength")]
|
|||
|
public long CDNBigImgSize
|
|||
|
{
|
|||
|
set
|
|||
|
{
|
|||
|
_cdnbigimgsize = value;
|
|||
|
}
|
|||
|
get
|
|||
|
{
|
|||
|
return _cdnbigimgsize;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
private string _cdnbigimgurl;//cdn大图url
|
|||
|
[XmlElement("cdnbigimgurl")]
|
|||
|
public string CDNBigImgUrl
|
|||
|
{
|
|||
|
set
|
|||
|
{
|
|||
|
_cdnbigimgurl = value;
|
|||
|
}
|
|||
|
get
|
|||
|
{
|
|||
|
return _cdnbigimgurl;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// Hook企业用户信息
|
|||
|
/// </summary>
|
|||
|
public class WorkFriendInfo
|
|||
|
{
|
|||
|
//{"avatar":"http://wx.qlogo.cn/mmhead/GPyw0pGicibl4KQicb5bXGu2SibrykeGOH5IicK2d8LTfbA11zNB2A2SoKg/0","conversation_id":"S:1688853956558440_7881301364988874","corp_id":"1970325134026788","desc":"","external_job":"","nickname":"","position":"","realname":"","remark":"","sex":2,"user_id":"7881301364988874","username":"18"}
|
|||
|
/// <summary>
|
|||
|
/// 头像
|
|||
|
/// </summary>
|
|||
|
public string avatar { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 会话id
|
|||
|
/// </summary>
|
|||
|
public string conversation_id { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 公司ID
|
|||
|
/// </summary>
|
|||
|
public string corp_id { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 用户描述
|
|||
|
/// </summary>
|
|||
|
public string desc { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 对外职位名称
|
|||
|
/// </summary>
|
|||
|
public string external_job { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 昵称
|
|||
|
/// </summary>
|
|||
|
public string nickname { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 公司内部职位
|
|||
|
/// </summary>
|
|||
|
public string position { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 真实姓名
|
|||
|
/// </summary>
|
|||
|
public string realname { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 用户备注
|
|||
|
/// </summary>
|
|||
|
public string remark { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 性别
|
|||
|
/// </summary>
|
|||
|
public int sex { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 用户ID
|
|||
|
/// </summary>
|
|||
|
public string user_id { get; set; }
|
|||
|
/// <summary>
|
|||
|
/// 用户名称
|
|||
|
/// </summary>
|
|||
|
public string username { get; set; }
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 如果是群(群主ID)
|
|||
|
/// </summary>
|
|||
|
public string manager_wxid { get; set; } = string.Empty;
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 如果是群(是否为管理员)
|
|||
|
/// </summary>
|
|||
|
public int is_manager { get; set; } = 0;
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 如果是群(群用户wxid字符串,)
|
|||
|
/// </summary>
|
|||
|
public string member_list { get; set; } = string.Empty;
|
|||
|
}
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// Hook个人微信信息
|
|||
|
/// </summary>
|
|||
|
public class FriendInfo
|
|||
|
{
|
|||
|
/// <summary>
|
|||
|
/// wxid
|
|||
|
/// </summary>
|
|||
|
public string wxid { get; set; }
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 微信号
|
|||
|
/// </summary>
|
|||
|
public string account { get; set; }
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 昵称
|
|||
|
/// </summary>
|
|||
|
public string nickname { get; set; }
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 备注
|
|||
|
/// </summary>
|
|||
|
public string remark { get; set; }
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 头像地址
|
|||
|
/// </summary>
|
|||
|
public string avatar { get; set; }
|
|||
|
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 性别 0未知,1男,2女
|
|||
|
/// </summary>
|
|||
|
public int sex { get; set; }
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 祖国
|
|||
|
/// </summary>
|
|||
|
public string country { get; set; }
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 省份
|
|||
|
/// </summary>
|
|||
|
public string province { get; set; }
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 城市
|
|||
|
/// </summary>
|
|||
|
public string city { get; set; }
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 是否是僵尸粉
|
|||
|
/// </summary>
|
|||
|
public int is_zombie { get; set; } = -1;
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 群主ID
|
|||
|
/// </summary>
|
|||
|
public string manager_wxid { get; set; } = string.Empty;
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 是否为管理员
|
|||
|
/// </summary>
|
|||
|
public int is_manager { get; set; } = 0;
|
|||
|
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// 群成员
|
|||
|
/// </summary>
|
|||
|
public string member_list { get; set; } = string.Empty;
|
|||
|
}
|
|||
|
}
|