| | |
| | | |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 加载获取住宅子账号信息线程 |
| | | /// </summary> |
| | |
| | | waitPage = null; |
| | | } |
| | | }); |
| | | |
| | | #if DEBUG |
| | | residenceMemberInfos.Add(new ResidenceMemberInfo() |
| | | { |
| | | Account = "测试数据-账号", |
| | | UserName = "测试数据-用户名", |
| | | Nickname = "测试数据-昵称", |
| | | SubAccountDistributedMark = Guid.NewGuid().ToString(), |
| | | DistributedMark = Guid.NewGuid().ToString(), |
| | | AccountType = 0, |
| | | IsAllowRemoteCtrl = false, |
| | | }); |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | LoadMemberRow(); |
| | | }); |
| | | #endif |
| | | |
| | | } |
| | | }) |
| | | { IsBackground = true }; |
| | | return thread; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 检测是否需要下载头像并保存到本地 |
| | | /// </summary> |
| | | void CheckIfDownloadHeadImage(ResidenceMemberInfo residenceMemberInfo) |
| | | { |
| | | if (string.IsNullOrEmpty(residenceMemberInfo.memberHeadIcon)) return; |
| | | |
| | | var headImageBytes = ImageUtlis.Current.DownHeadImageByImageKey(residenceMemberInfo.memberHeadIcon, false, residenceMemberInfo.childAccountRegionUrl); |
| | | |
| | | if (headImageBytes != null && headImageBytes.Length > 0) |
| | | { |
| | | residenceMemberInfo.headImagePagePath = residenceMemberInfo.memberHeadIcon; |
| | | Utlis.WriteLine("子账号头像获取成功"); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | bool LoadMethod_GetResidenceMemberAccount() |
| | | { |
| | | var result = false; |
| | | ResponsePack responePack = new HttpServerRequest().GetResidenceMemberAccount(); |
| | | if (responePack.StateCode.ToUpper() == "SUCCESS") |
| | | var responePack = new HttpServerRequest().GetResidenceMemberAccount(); |
| | | if (responePack.Code == StateCode.SUCCESS) |
| | | { |
| | | var responeObj = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ResidenceMemberInfo>>(responePack.ResponseData.ToString()); |
| | | var responeObj = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ResidenceMemberInfo>>(responePack.Data.ToString()); |
| | | foreach (var mInfo in responeObj) |
| | | { |
| | | ResponsePack memberInfoResponePack = new HttpServerRequest().GetResidenceMemberAccountInfo(mInfo.Account); |
| | | var dataStr = JObject.FromObject(memberInfoResponePack.ResponseData); |
| | | FileStream fs = null; |
| | | try |
| | | { |
| | | var headImageString = dataStr.GetValue("HeadImage").ToString(); |
| | | var jsonString = Newtonsoft.Json.JsonConvert.SerializeObject(headImageString); |
| | | var headImageBytes = Newtonsoft.Json.JsonConvert.DeserializeObject<byte[]>(jsonString); |
| | | var filePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Personal) + "/", mInfo.DistributedMark + ".png"); |
| | | fs = new FileStream(filePath, FileMode.Create, FileAccess.Write); |
| | | fs.Write(headImageBytes, 0, headImageBytes.Length); |
| | | fs.Flush(); |
| | | mInfo.headImagePagePath = filePath; |
| | | //设置用户昵称 |
| | | if (string.IsNullOrEmpty(mInfo.nickName)) |
| | | { |
| | | mInfo.nickName = mInfo.memberName; |
| | | } |
| | | //设置用户头像路径 |
| | | CheckIfDownloadHeadImage(mInfo); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | |
| | | } |
| | | finally |
| | | { |
| | | if (fs != null) |
| | | { |
| | | fs.Close(); |
| | | } |
| | | //----------- |
| | | LoadMethod_GetMemberSharedDataList(mInfo); |
| | | |
| | | } |
| | | residenceMemberInfos.Add(mInfo); |
| | | } |
| | |
| | | //失败 |
| | | else |
| | | { |
| | | string tipStr = "Sever erorr"; |
| | | switch (responePack.StateCode) |
| | | { |
| | | case "ValidCodeAndPhoneNoEqual": |
| | | tipStr = Language.StringByID(StringId.VerificationCodeError); |
| | | break; |
| | | case "USERNAMEORPWDERROR": |
| | | tipStr = Language.StringByID(StringId.LoginFailed_AccountOrPasswordError); |
| | | break; |
| | | case "ACCOUNTNOEXISTS": |
| | | tipStr = Language.StringByID(StringId.ACCOUNTNOEXISTS); |
| | | break; |
| | | case "NoRecord": |
| | | tipStr = Language.StringByID(StringId.PlsGetTheVerificationCode); |
| | | break; |
| | | case "Self:Net_Error": |
| | | tipStr = Language.StringByID(StringId.NetworkAnomaly); |
| | | break; |
| | | } |
| | | //账号或者密码错误 |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | waitPage.Hide(); |
| | | //提示原因 |
| | | var tip = new Tip() |
| | | { |
| | | Text = tipStr, |
| | | CloseTime = 3, |
| | | Direction = AMPopTipDirection.None |
| | | }; |
| | | tip.Show(bodyView); |
| | | }); |
| | | //提示 |
| | | IMessageCommon.Current.ShowErrorInfoAlter(responePack.Code); |
| | | } |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | waitPage?.Hide(); |
| | | waitPage?.RemoveFromParent(); |
| | | }); |
| | | return result; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 获取住宅下子账号的共享数据列表 |
| | | /// </summary> |
| | | /// <param name="info"></param> |
| | | void LoadMethod_GetMemberSharedDataList(ResidenceMemberInfo info) |
| | | { |
| | | ResponsePack responePack = new HttpServerRequest().GetShareDataByMemberAccount(info.SubAccountDistributedMark); |
| | | if (responePack.StateCode.ToUpper() == "SUCCESS") |
| | | { |
| | | var responeObj = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ShareData>>(responePack.ResponseData.ToString()); |
| | | info.sharedDatas = responeObj; |
| | | var sd = responeObj.Find((obj) => obj.HouseDistributedMark == DB_ResidenceData.residenceData.residecenInfo.RegionID ); |
| | | if (sd != null) |
| | | { |
| | | LoadMethod_GetMemberSharedData(sd,info); |
| | | } |
| | | else |
| | | { |
| | | LoadMethod_GetMemberSharedData(new ShareData(),info); |
| | | } |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// 获取住宅下子账号的共享数据 |
| | | /// </summary> |
| | | /// <param name="info"></param> |
| | | void LoadMethod_GetMemberSharedData(ShareData sd, ResidenceMemberInfo info) |
| | | { |
| | | ResponsePack responePack = new HttpServerRequest().GetShareData(sd.DistributedMark,sd.HouseDistributedMark); |
| | | if (responePack.StateCode.ToUpper() == "SUCCESS") |
| | | { |
| | | info.CurShareData = Newtonsoft.Json.JsonConvert.DeserializeObject<ShareData>(responePack.ResponseData.ToString()); |
| | | } |
| | | } |
| | | ///// <summary> |
| | | ///// 获取住宅下子账号的共享数据列表 |
| | | ///// </summary> |
| | | ///// <param name="info"></param> |
| | | //void LoadMethod_GetMemberSharedDataList(ResidenceMemberInfo info) |
| | | //{ |
| | | // var responePack = new HttpServerRequest().GetShareDataByMemberAccount(info.childAccountId); |
| | | // if (responePack.Code == StateCode.SUCCESS) |
| | | // { |
| | | // var responeObj = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ShareData>>(responePack.Data.ToString()); |
| | | // info.CurResidenceShareDate = responeObj; |
| | | // //foreach (var sd in info.CurResidenceShareDate) |
| | | // //{ |
| | | // // LoadMethod_GetMemberSharedData(sd); |
| | | // //} |
| | | // } |
| | | // else |
| | | // { |
| | | // info.CurResidenceShareDate = new List<ShareData>(); |
| | | // } |
| | | //} |
| | | |
| | | ///// <summary> |
| | | ///// 获取住宅下子账号的共享数据 |
| | | ///// </summary> |
| | | ///// <param name="info"></param> |
| | | //bool LoadMethod_GetMemberSharedData(ShareData sd) |
| | | //{ |
| | | // var shareDataBytes = new HttpServerRequest().GetShareData(sd); |
| | | // if (shareDataBytes != null) |
| | | // { |
| | | // sd.ShareDataBytes = shareDataBytes; |
| | | // return true; |
| | | // } |
| | | // return false; |
| | | //} |
| | | |
| | | /// <summary> |
| | | /// 修改昵称窗口 |
| | |
| | | { |
| | | new Tip() |
| | | { |
| | | CloseTime = 3, |
| | | CloseTime = 1, |
| | | Text = Language.StringByID(StringId.NicknameCannotBeEmpty), |
| | | Direction = AMPopTipDirection.None, |
| | | }.Show(bodyView); |
| | |
| | | } |
| | | |
| | | var waitPage = new Loading(); |
| | | bodyView.AddChidren(waitPage); |
| | | waitPage.Start(Language.StringByID(StringId.PleaseWait)); |
| | | new Thread(() => |
| | | { |
| | | try |
| | | { |
| | | var responsePack = new HttpServerRequest().EditSubAccountNickName(str,mInfo.SubAccountDistributedMark); |
| | | if (responsePack.StateCode.ToUpper() == "SUCCESS") |
| | | var responsePack = new HttpServerRequest().EditSubAccountNickName(str, mInfo.childAccountId); |
| | | if (responsePack.Code.ToUpper() == StateCode.SUCCESS) |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | btn1.Text = str; |
| | | }); |
| | | mInfo.Nickname = str; |
| | | mInfo.nickName = str; |
| | | } |
| | | else |
| | | { |
| | | var tipStr = "Server erorr"; |
| | | switch (responsePack.StateCode) |
| | | { |
| | | case "NoLogin": |
| | | tipStr = Language.StringByID(StringId.InvalidLoginCertificate); |
| | | break; |
| | | case "ParameterOrEmpty": |
| | | break; |
| | | } |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | //提示原因 |
| | | var tip = new Tip() |
| | | { |
| | | Text = tipStr, |
| | | CloseTime = 3, |
| | | Direction = AMPopTipDirection.None |
| | | }; |
| | | tip.Show(bodyView); |
| | | }); |
| | | IMessageCommon.Current.ShowErrorInfoAlter(responsePack.Code); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | waitPage.Hide(); |
| | | if (waitPage != null) |
| | | { |
| | | waitPage.RemoveFromParent(); |
| | | waitPage = null; |
| | | } |
| | | }); |
| | | } |
| | | }) |
| | | { IsBackground = true }.Start(); |
| | | }; |
| | | new PublicAssmebly().LoadDialog_EditParater(StringId.ModifyMemberNickname, mInfo.Nickname, callBack, StringId.HouseNameCannotBeEmpty, 0, new List<string>()); |
| | | new PublicAssmebly().LoadDialog_EditParater(StringId.ModifyMemberNickname, mInfo.nickName, callBack, StringId.NicknameCannotBeEmpty, 0, new List<string>()); |
| | | }; |
| | | btn1.MouseUpEventHandler = eventHandler; |
| | | btn2.MouseUpEventHandler = eventHandler; |
| | | |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 修改创建场景权限 |
| | | /// </summary> |
| | | void LoadView_ChangeCreateSceneState(Button btn1,Button btn2, ResidenceMemberInfo mInfo) |
| | | void LoadView_ChangeCreateSceneState(Button btn1, Button btn2, ResidenceMemberInfo mInfo) |
| | | { |
| | | EventHandler<MouseEventArgs> eventHandler = (sender, e) => |
| | | { |
| | |
| | | { |
| | | try |
| | | { |
| | | var responsePack = new HttpServerRequest().ChangeCreateSceneState(DB_ResidenceData.residenceData.residecenInfo.RegionID, mInfo.SubAccountDistributedMark); |
| | | if (responsePack.StateCode.ToUpper() == "SUCCESS") |
| | | bool isAllow = !btn1.IsSelected; |
| | | var responsePack = new HttpServerRequest().ChangeCreateSceneState(isAllow, mInfo.childAccountId); |
| | | if (responsePack.Code.ToUpper() == StateCode.SUCCESS) |
| | | { |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | btn1.IsSelected = !btn1.IsSelected; |
| | | btn1.IsSelected = isAllow; |
| | | }); |
| | | } |
| | | else |
| | | { |
| | | var tipStr = "Server erorr"; |
| | | switch (responsePack.StateCode) |
| | | { |
| | | case "NoLogin": |
| | | tipStr = Language.StringByID(StringId.InvalidLoginCertificate); |
| | | break; |
| | | case "ParameterOrEmpty": |
| | | break; |
| | | } |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | //提示原因 |
| | | var tip = new Tip() |
| | | { |
| | | Text = tipStr, |
| | | CloseTime = 3, |
| | | Direction = AMPopTipDirection.None |
| | | }; |
| | | tip.Show(bodyView); |
| | | }); |
| | | IMessageCommon.Current.ShowErrorInfoAlter(responsePack.Code); |
| | | } |
| | | } |
| | | catch (Exception ex) |
| | |
| | | btn2.MouseUpEventHandler = eventHandler; |
| | | |
| | | } |
| | | |
| | | } |
| | | } |