コード例 #1
0
        internal bool Inserts(List <OpenIMUserInfo> openImUserInfoList)
        {
            bool result = false;
            OpenimUsersAddRequest request = new OpenimUsersAddRequest();
            List <Userinfos>      list    = new List <Userinfos>();

            foreach (var item in openImUserInfoList.AsEnumerable())
            {
                Userinfos user_item = new Userinfos()
                {
                    Address     = item.Address,
                    Age         = item.Age,
                    Career      = item.Career,
                    Email       = item.Email,
                    Extra       = item.Extra,
                    Gender      = (item.Sex == MiicSexSetting.Female ? "F" : "M"),
                    IconUrl     = item.Logo,
                    Mobile      = item.Mobile,
                    Name        = item.RealName,
                    Nick        = item.NickName,
                    Password    = item.Password,
                    Qq          = item.QQ,
                    Remark      = item.Remark,
                    Status      = (long)(int)item.Status,
                    Userid      = item.UserID,
                    Taobaoid    = item.TaobaoID,
                    Vip         = item.Vip,
                    Wechat      = item.Weixin,
                    Weibo       = item.Weibo,
                    GmtModified = item.UpdateTime.GetValueOrDefault().ToString("yyyy-MM-dd HH:mm:ss")
                };
                Userinfos user = user_item;
                list.Add(user);
            }
            request.Userinfos_ = list;
            try
            {
                OpenimUsersAddResponse response = client.Execute(request);
                if (response.UidSucc.Count == openImUserInfoList.Count)
                {
                    result = true;
                }
                else
                {
                    for (var item = 0; item < response.FailMsg.Count; item++)
                    {
                        if (response.FailMsg[item] == "data exist")
                        {
                            ((IOpenIMUserInfo)this).Delete(response.UidFail[item]);
                        }
                        else
                        {
                            ((IOpenIMUserInfo)this).Delete(response.UidSucc[item]);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                Config.IlogicLogService.Write(new LogicLog()
                {
                    AppName       = Config.AppName,
                    ClassName     = ClassName,
                    NamespaceName = NamespaceName,
                    MethodName    = MethodBase.GetCurrentMethod().Name,
                    Message       = ex.Message,
                    Oper          = Config.Oper
                });
            }
            return(result);
        }
コード例 #2
0
        internal OpenIMUserInfo GetUserInfo(string userID)
        {
            OpenIMUserInfo        result  = null;
            OpenimUsersGetRequest request = new OpenimUsersGetRequest();

            request.Userids = userID;
            try
            {
                OpenimUsersGetResponse response = client.Execute(request);
                if (response.IsError == true)
                {
                    throw new OpenIMException(new OpenIMExceptionMessage()
                    {
                        ClassName     = ClassName,
                        NamespaceName = NamespaceName,
                        MethodName    = MethodBase.GetCurrentMethod().Name,
                        ErrCode       = response.ErrCode,
                        ErrMessage    = response.ErrMsg,
                        SubErrCode    = response.SubErrCode,
                        SubMessage    = response.SubErrMsg
                    });
                }
                else
                {
                    Userinfos userInfo = response.Userinfos[0];
                    result = new OpenIMUserInfo()
                    {
                        Address    = userInfo.Address,
                        Age        = (int)userInfo.Age,
                        UpdateTime = DateTime.Parse(userInfo.GmtModified),
                        Career     = userInfo.Career,
                        Email      = userInfo.Email,
                        Extra      = userInfo.Extra,
                        Logo       = userInfo.IconUrl,
                        Mobile     = userInfo.Mobile,
                        NickName   = userInfo.Nick,
                        UserID     = userInfo.Userid,
                        QQ         = userInfo.Qq,
                        RealName   = userInfo.Name,
                        Remark     = userInfo.Remark,
                        Sex        = userInfo.Gender == "F" ? MiicSexSetting.Female : MiicSexSetting.Male,
                        Status     = (OpenIMUserActivationSetting)(int)userInfo.Status,
                        TaobaoID   = userInfo.Taobaoid,
                        Vip        = userInfo.Vip,
                        Weibo      = userInfo.Weibo,
                        Weixin     = userInfo.Wechat
                    };
                }
            }
            catch (Exception ex)
            {
                Config.IlogicLogService.Write(new LogicLog()
                {
                    AppName       = Config.AppName,
                    ClassName     = ClassName,
                    NamespaceName = NamespaceName,
                    MethodName    = MethodBase.GetCurrentMethod().Name,
                    Message       = ex.Message,
                    Oper          = Config.Oper
                });
            }
            return(result);
        }
コード例 #3
0
        bool IOpenIMUserInfo.Update(OpenIMUserInfo userInfo)
        {
            bool result = false;
            OpenimUsersUpdateRequest request = new OpenimUsersUpdateRequest();

            List <Userinfos> list      = new List <Userinfos>();
            Userinfos        user_item = new Userinfos()
            {
                Address     = userInfo.Address,
                Age         = userInfo.Age,
                Career      = userInfo.Career,
                Email       = userInfo.Email,
                Extra       = userInfo.Extra,
                Gender      = (userInfo.Sex == MiicSexSetting.Female ? "F" : "M"),
                IconUrl     = userInfo.Logo,
                Mobile      = userInfo.Mobile,
                Name        = userInfo.RealName,
                Nick        = userInfo.NickName,
                Password    = userInfo.Password,
                Qq          = userInfo.QQ,
                Remark      = userInfo.Remark,
                Status      = (long)(int)userInfo.Status,
                Userid      = userInfo.UserID,
                Taobaoid    = userInfo.TaobaoID,
                Vip         = userInfo.Vip,
                Wechat      = userInfo.Weixin,
                Weibo       = userInfo.Weibo,
                GmtModified = userInfo.UpdateTime.GetValueOrDefault().ToString("yyyy-MM-dd HH:mm:ss")
            };

            list.Add(user_item);
            request.Userinfos_ = list;
            try
            {
                OpenimUsersUpdateResponse response = client.Execute(request);
                if (response.UidSucc.Count == 1)
                {
                    result = true;
                }
                else
                {
                    throw new OpenIMException(new OpenIMExceptionMessage()
                    {
                        ClassName     = ClassName,
                        NamespaceName = NamespaceName,
                        MethodName    = MethodBase.GetCurrentMethod().Name,
                        ErrCode       = response.ErrCode,
                        ErrMessage    = response.ErrMsg,
                        SubErrCode    = response.SubErrCode,
                        SubMessage    = response.SubErrMsg
                    });
                }
            }
            catch (Exception ex)
            {
                Config.IlogicLogService.Write(new LogicLog()
                {
                    AppName       = Config.AppName,
                    ClassName     = ClassName,
                    NamespaceName = NamespaceName,
                    MethodName    = MethodBase.GetCurrentMethod().Name,
                    Message       = ex.Message,
                    Oper          = Config.Oper
                });
            }
            return(result);
        }