From 1265d531759b5565e9f641b17045896b52dfdba8 Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期四, 03 十二月 2020 18:37:47 +0800 Subject: [PATCH] 2020-12-03 1.主页增加未读消息查询和提示处理。2.房间和场景背景上传和下载和读取方法修改处理。3.头像上传和下载方案修改处理。4.增加子账号头像下载。5.Loading 调用方法修复。6.封装ImageUtlis 图片上传和下载管理工具类 7.读取本地住宅增加判空处理。 --- HDL_ON/Entity/Room.cs | 177 ++++++++++++++++++++++++++++++++++++++++++++++++++-------- 1 files changed, 152 insertions(+), 25 deletions(-) diff --git a/HDL_ON/Entity/Room.cs b/HDL_ON/Entity/Room.cs index 7884d78..aa50d4f 100644 --- a/HDL_ON/Entity/Room.cs +++ b/HDL_ON/Entity/Room.cs @@ -3,65 +3,192 @@ namespace HDL_ON.Entity { + /// <summary> + /// 鎴块棿瀵硅薄 + /// </summary> + [Serializable] + public class Floor + { + /// <summary> + /// 妤煎眰鍚嶇О + /// </summary> + public string name = "1F"; + /// <summary> + /// 妤煎眰ID + /// </summary> + public string sid; + } + /// <summary> /// 鎴块棿瀵硅薄 - /// 鎴块棿鍛藉悕瑙勫垯 typeof (Room).Name + "_" + etNameBox.Text.Trim (); /// </summary> - [System.Serializable] + [Serializable] public class Room { /// <summary> /// 鎴块棿鍚� /// </summary> public string name = "Room"; + + public string roomSavePath + { + get + { + return "RoomData_" + sid; + } + } /// <summary> /// 鎴块棿ID /// </summary> public string sid; /// <summary> - /// 妤煎眰绱㈠紩 - /// </summary> - public int floorIndex = -1; - - /// <summary> /// 鎴块棿鑳屾櫙 /// </summary> public string backgroundImage = "Classification/Room/Roombg.png"; /// <summary> + /// 妤煎眰绱㈠紩 + /// </summary> + public string floorId = ""; + /// <summary> /// 妤煎眰 /// </summary> - public string floor { + [Newtonsoft.Json.JsonIgnore] + public string floorName + { get { - string str = ""; - if (floorIndex != -1) + if (DB_ResidenceData.residenceData.floors.Count > 0) { - if (floorIndex < DB_ResidenceData.residenceData.floors.Count) - str = DB_ResidenceData.residenceData.floors[floorIndex]; + var f = DB_ResidenceData.residenceData.floors.Find((obj) => obj.sid == floorId); + if (f != null) + { + return f.name + " "; + } } - return str; + return ""; } } - - /// <summary> /// 鎴块棿鍔熻兘鍒楄〃 /// </summary> - [Newtonsoft.Json.JsonIgnore] - public List<Function> functions = new List<Function>(); - - public void RefreshFunctions() + List<Function> functions = new List<Function>(); + /// <summary> + /// 鑾峰彇鎴块棿鍔熻兘鍒楄〃 + /// </summary> + public List<Function> GetRoomFunctions(bool needRefresh) { - List<Function> funcList = new List<Function>(); - foreach (var f in DB_ResidenceData.residenceData.functionList.functions) + if(needRefresh) { - if (f.roomIdList.Contains(sid) && sid != null) + functions = new List<Function>(); + } + if (functions.Count == 0) + { + foreach (var f in DB_ResidenceData.functionList.GetAllFunction()) { - funcList.Add(f); + if (f.roomIds.Contains(sid) && sid != null) + { + functions.Add(f); + } } } - functions = funcList; + return functions; } + /// <summary> + /// 澧炲姞鎴块棿鍔熻兘 + /// 鎿嶄綔鐨勬槸缂撳瓨鏁版嵁锛屼笉鐢ㄤ繚瀛� + /// </summary> + public void AddRoomFunction(Function function) + { + functions.Add(function); + } + /// <summary> + /// 鍒犻櫎鎴块棿鍔熻兘 + /// 鎿嶄綔鐨勬槸缂撳瓨鏁版嵁锛屼笉鐢ㄤ繚瀛� + /// </summary> + public void RemoveRoomFunction(Function function) + { + functions.Remove(functions.Find((obj) => obj.sid == function.sid)); + } + /// <summary> + /// 鎴块棿鍦烘櫙鍒楄〃 + /// </summary> + List<Scene> scenes = new List<Scene>(); + /// <summary> + /// 鑾峰彇鍦烘櫙鍒楄〃 + /// </summary> + /// <returns></returns> + public List<Scene> GetRoomScenes(bool needRefresh) + { + if (needRefresh) + { + scenes = new List<Scene>(); + } + if (scenes.Count == 0) + { + foreach (var s in DB_ResidenceData.functionList.scenes) + { + if (s.roomIds.Contains(sid) && sid != null) + { + scenes.Add(s); + } + } + } + return scenes; + } + /// <summary> + /// 澧炲姞鎴块棿鍦烘櫙 + /// 鎿嶄綔鐨勬槸缂撳瓨鏁版嵁锛屼笉鐢ㄤ繚瀛� + /// </summary> + /// <param name="scene"></param> + public void AddRoomScene(Scene scene) + { + scenes.Add(scene); + } + /// <summary> + /// 绉婚櫎鎴块棿鍦烘櫙 + /// 鎿嶄綔鐨勬槸缂撳瓨鏁版嵁锛屼笉鐢ㄤ繚瀛� + /// </summary> + /// <param name="scene"></param> + public void RemoveRoomScene(Scene scene) + { + scenes.Remove(scenes.Find((obj) => obj.sid == scene.sid)); + } + /// <summary> + /// 淇濆瓨鎴块棿鏁版嵁 + /// </summary> + public void SaveRoomData() + { + var ssd = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(this)); + FileUtils.WriteFileByBytes("RoomData_" + this.sid, ssd); + MainPage.Log($"Save FunctionData {name} : {this.sid}"); + } + + } -} + + /// <summary> + /// 鏈嶅姟杩斿洖鐨勬埧闂村璞� + /// </summary> + public class ServerReplyRoom + { + //浜戠鎴块棿ID + public string roomId = ""; + /// <summary> + /// 鎴块棿鍚嶇О + /// </summary> + public string roomName = ""; + /// <summary> + /// 鎴块棿鍥剧墖 + /// </summary> + public string roomImage = ""; + /// <summary> + /// 鎴块棿鍏ㄥ悕 + /// </summary> + public string roomFullName = ""; + /// <summary> + /// 璋冭瘯杞欢\app鐢熸垚鐨勫敮涓�ID + /// </summary> + public string uid = ""; + } +} \ No newline at end of file -- Gitblit v1.8.0