Browse Source

修复BUG

胡佳骏 1 year ago
parent
commit
01da93f0ca

+ 4 - 0
Assets/2.0/Tools/DownLoadItem.cs

@@ -245,7 +245,11 @@ public class DownLoadItem : MonoBehaviour
         data.downLoadPath = downLoadPath;
         data.localLoadPath = Application.persistentDataPath + "/Material/" + Path.GetFileName(downLoadPath);
         if(type == ModelType.vuforial)
+        {
+
+            Debug.Log("downLoadPath===>" + downLoadPath);
             data.localLoadPath = Application.persistentDataPath + "/StreamingAssets/Vuforia/GHZVuforia." + downLoadPath.Split('.')[1];
+        }
         data.updataTime = 0;
         data.type = ((int)type).ToString();
 

+ 2 - 0
Assets/Scripts/BaseManager/DataManager.cs

@@ -224,6 +224,8 @@ public class SendSaveDataNew
 
 public class SendSaveData
 {
+    public List<SpoitPos> position { get; set; }
+    public int triggerImageId { get; set; }
     /// <summary>
     /// 景点ID
     /// </summary>

+ 8 - 3
Assets/Scripts/Config/DataConfig.cs

@@ -196,6 +196,8 @@ public class MaterialObjValueNew
 /// </summary>
 public class MaterialObjValue
 {
+    public int fileId { get; set; }
+    public int id { get; set; }
     public string uid { get; set; }
 
     //素材名称
@@ -285,7 +287,8 @@ public class MaterialObl
     public string typesetting { get; set; }
 
     public bool autoplay { get; set; }
-
+    public int iconId { get; set; }
+    
 
     public MaterialObl()
     {
@@ -363,6 +366,7 @@ public class MaterialOblNew
 /// </summary>
 public class SpoitValue
 {
+    public int triggerImageId;
     /// <summary>
     /// 景点ID
     /// </summary>
@@ -393,7 +397,7 @@ public class SpoitValue
     /// <summary>
     /// 景点和触发范围信息
     /// </summary>
-    public SpoitPos position { get; set; }
+    public List<SpoitPos> position { get; set; }
     /// <summary>
     /// 景点和触发范围信息
     /// </summary>
@@ -434,7 +438,8 @@ public class SpoitValueDetail
     /// 素材
     /// </summary>
     public List<MaterialObl> material { get; set; }
-
+    public int triggerImageId { get; set; }
+    
 }
 
 

+ 4 - 0
Assets/Scripts/LayoutGroup/DRFanLayout.cs

@@ -11,6 +11,7 @@ public class DRFanLayout : MonoBehaviour
 {
     public static List<ObjectValue> CalLayout(MaterialObl materialObls, GameObject par, out MaterialObl newmaterial)
     {
+        Debug.LogError("HJJmaterialObls.select  DRFanLayout  " );
         newmaterial = materialObls;
         BaseTemPlate text = new BaseTemPlate();
         MaterialObjValue textmat = null;
@@ -56,12 +57,15 @@ public class DRFanLayout : MonoBehaviour
                     break;
             }
 
+            Debug.LogError("HJJmaterialObls.select   123 " );
             if (go != null)
             {
+                Debug.LogError("HJJmaterialObls.select 42121   " );
                 go.name = string.IsNullOrWhiteSpace(mat.name) ? par.name + "-" + i.ToString() : mat.name;
                 go.AddComponent<EditorEventHandler>().Type = (MaterialType)(mat.type);
                 if (materialObls.select)
                 {
+                    Debug.LogError("HJJmaterialObls.select    " + go.transform.name +"    "+ mat.ObjectTransform.nowPos);
                     go.transform.localPosition = mat.ObjectTransform.nowPos;
                     go.transform.localEulerAngles = mat.ObjectTransform.nowRot;
                     go.transform.localScale = mat.ObjectTransform.nowScale;

+ 1 - 1
Assets/Scripts/Net/HttpTool.cs

@@ -132,7 +132,7 @@ public class HttpTool : MonoSingleton<HttpTool>
             yield return webRequest.SendWebRequest();
 
             Debug.Log("CallBack==>"+ webRequest.downloadHandler.text);
-            if (webRequest.isHttpError || webRequest.isNetworkError)//webRequest.result == UnityWebRequest.Result.ProtocolError || webRequest.result == UnityWebRequest.Result.ConnectionError
+            if (webRequest.result == UnityWebRequest.Result.ProtocolError || webRequest.result == UnityWebRequest.Result.ConnectionError)//
             {
                 Debug.LogError(url + "\n" + webRequest.error + "\n" + webRequest.downloadHandler.text);
                 string error = webRequest.downloadHandler.text;

+ 114 - 50
Assets/Scripts/UI/EdirPanel/UIEditorPanel.cs

@@ -2,6 +2,7 @@
 using System.Collections;
 using System.Collections.Generic;
 using Blue;
+using LitJson;
 using Newtonsoft.Json;
 using Newtonsoft.Json.Linq;
 using UnityEngine;
@@ -259,9 +260,19 @@ public class UIEditorPanel : AbstractController, EventObserver
                 for (int k = 0;k< spoit.material[j].materialList.Count; k++)
                 {
                     spoit.material[j].select = true;
-                    spoit.material[j].materialList[k].ObjectTransform.nowPos = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localPosition;
-                    spoit.material[j].materialList[k].ObjectTransform.nowRot = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localEulerAngles;
-                    spoit.material[j].materialList[k].ObjectTransform.nowScale = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localScale;
+                    if (GameManager.Instance.ObjsParent.childCount > i)
+                    {
+                        if (GameManager.Instance.ObjsParent.GetChild(i).childCount > j)
+                        {
+                            if (GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).childCount > k)
+                            {
+                                Debug.LogError("HJJ  materialList   " + GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).name +"_" + GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localPosition);
+                                spoit.material[j].materialList[k].ObjectTransform.nowPos = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localPosition;
+                                spoit.material[j].materialList[k].ObjectTransform.nowRot = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localEulerAngles;
+                                spoit.material[j].materialList[k].ObjectTransform.nowScale = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localScale;
+                            }
+                        }
+                    }
                 }
             }
             SplitSpoitData(spoit,count-1); //// 第一个LocalNULLShowObj是无用的 ,so -1
@@ -273,72 +284,125 @@ public class UIEditorPanel : AbstractController, EventObserver
     {
         countSplit++;
         SendSaveData data = new SendSaveData();
-        data.id = spoit.id;
-        data.name = spoit.name;
+        data.id = GameManager.Instance.SpoitsValueDetail[spoit.id].id;
+        data.name = GameManager.Instance.SpoitsValueDetail[spoit.id].name;
         data.projectId = DataManager.Instance.ProjectID;
         data.material = spoit.material;
-        data.spoittf = spoit.spoitTf;
+        data.spoittf = GameManager.Instance.SpoitsValueDetail[spoit.id].spoitTf;
+        data.position = GameManager.Instance.SpoitsValueDetail[spoit.id].position;
+        data.triggerImageId = GameManager.Instance.SpoitsValueDetail[spoit.id].triggerImageId;
+        data.triggerRange = GameManager.Instance.SpoitsValueDetail[spoit.id].triggerRange;
+
         saveData.Add(data);
 
-        string sendData = JsonConvert.SerializeObject(saveData);
-        Debug.LogError(countSplit+"=="+spoitCount);
-        if(countSplit==spoitCount)
-            HttpTool.Instance.PostTest("/viewpoint/update", sendData, SaveCallBack);
+
+        if (countSplit==spoitCount)
+        {
+
+            string sendData = JsonConvert.SerializeObject(saveData);
+            JsonData jsdata = JsonMapper.ToObject(sendData);
+
+            for (int i = 0; i < jsdata.Count; i++)
+            {
+                if(jsdata[i].Keys.Contains("material")&&jsdata[i]["material"].IsArray)
+                {
+                    for (int j = 0; j < jsdata[i]["material"].Count; j++)
+                    {
+                        if (jsdata[i]["material"][j].Keys.Contains("materialList") && jsdata[i]["material"][j]["materialList"].IsArray)
+                        {
+                            for (int k = 0; k < jsdata[i]["material"][j]["materialList"].Count; k++)
+                            {
+                                jsdata[i]["material"][j]["materialList"][k]["textBJ"] = jsdata[i]["material"][j]["materialList"][k]["TextBJ"];
+                                jsdata[i]["material"][j]["materialList"][k]["downloadPath"] = jsdata[i]["material"][j]["materialList"][k]["DownloadPath"];
+                                jsdata[i]["material"][j]["materialList"][k]["objectTransform"] = jsdata[i]["material"][j]["materialList"][k]["ObjectTransform"];
+                            }
+                        }
+                        
+                    }
+                }
+            }
+
+            Debug.LogError(countSplit + "==" + spoitCount);
+            Debug.LogError("sendDatasendDatasendData====>" + jsdata.ToJson());
+            HttpTool.Instance.PostTest("/viewpoint/update", jsdata.ToJson(), SaveCallBack);
+        }
     }
     private int countSplit =0;
 
     private void SaveCallBack(string message)
     {
-        if (message == "UnityWebRequest Error")
+        try
         {
-            InstantiateCommand ErrorCommand = new InstantiateCommand(
-                InstantiateSystem.Instance.BlueObject.WarningPopUp,
-                InstantiateSystem.Instance.BlueObject.NetErrorText);
-            CommandSystem.Instance.Send(ErrorCommand);
-            //this.GetService<ISendLogService>().SendLog("Blue","UnityWebRequest Error");
-            return;
-        }
 
-        //Debug.LogError("SaveCallBack:  " + message);
-        JObject jObject = JObject.Parse(message);
-        string str = jObject["message"].ToString();
-        if (str != "更新成功")
+            JsonData jd = JsonMapper.ToObject(message);
+            if (jd.Keys.Contains("message"))
+            {
+                if (jd["message"].ToString() == "success")
+                {
+                    Debug.Log("更新成功");
+                    UIManager.Instance.ShowUI(UINameConfig.LoadingPanel, typeof(LoadingPanel), (int)ELoadState.SaveSpoitDataEnd);
+                    ((LoadingPanel)UIManager.Instance.GetUI(UINameConfig.LoadingPanel)).TextStr = "更新成功";
+
+                    InstantiateCommand Command = new InstantiateCommand(
+                            InstantiateSystem.Instance.BlueObject.WarningPopUp,
+                            InstantiateSystem.Instance.BlueObject.SuccessText);
+                    CommandSystem.Instance.Send(Command);
+
+                    PosRotScale.PosRotScalePatchList.Clear();
+                    for (int i = 0; i < GameManager.Instance.ObjsParent.childCount; i++)
+                    {
+                        if (i != 0)
+                        {
+                            for (int j = 0; j < GameManager.Instance.ObjsParent.GetChild(i).childCount; j++)
+                            {
+                                for (int k = 0; k < GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).childCount; k++)
+                                {
+                                    PosRotScalePatch PosRotScalePatch = new PosRotScalePatch();
+                                    PosRotScalePatch.PosPatch = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localPosition;
+                                    PosRotScalePatch.RotPatch = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localEulerAngles;
+                                    PosRotScalePatch.ScalePatch = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localScale;
+                                    PosRotScale.PosRotScalePatchList.Add(PosRotScalePatch);
+                                }
+                            }
+                        }
+                    }
+                    return;
+                }
+                else
+                {
+
+                    InstantiateCommand ErrorCommand = new InstantiateCommand(
+                        InstantiateSystem.Instance.BlueObject.WarningPopUp,
+                        InstantiateSystem.Instance.BlueObject.NetErrorText);
+                    CommandSystem.Instance.Send(ErrorCommand);
+                    //this.GetService<ISendLogService>().SendLog("Blue","UnityWebRequest Error");
+                    return;
+                }
+            }
+            else
+            {
+
+                InstantiateCommand ErrorCommand = new InstantiateCommand(
+                    InstantiateSystem.Instance.BlueObject.WarningPopUp,
+                    InstantiateSystem.Instance.BlueObject.NetErrorText);
+                CommandSystem.Instance.Send(ErrorCommand);
+                //this.GetService<ISendLogService>().SendLog("Blue","UnityWebRequest Error");
+                return;
+            }
+
+        }
+        catch
         {
             InstantiateCommand ErrorCommand = new InstantiateCommand(
                 InstantiateSystem.Instance.BlueObject.WarningPopUp,
                 InstantiateSystem.Instance.BlueObject.NetErrorText);
             CommandSystem.Instance.Send(ErrorCommand);
-            Debug.LogError("执行协程数:" + countSplit);
-            //this.GetService<ISendLogService>().SendLog("Blue","更新成功出现问题");
+            //this.GetService<ISendLogService>().SendLog("Blue","UnityWebRequest Error");
             return;
-        }
-        Debug.Log("更新成功");
-        UIManager.Instance.ShowUI(UINameConfig.LoadingPanel, typeof(LoadingPanel), (int)ELoadState.SaveSpoitDataEnd);
-        ((LoadingPanel)UIManager.Instance.GetUI(UINameConfig.LoadingPanel)).TextStr = str;
 
-        InstantiateCommand Command = new InstantiateCommand(
-                InstantiateSystem.Instance.BlueObject.WarningPopUp,
-                InstantiateSystem.Instance.BlueObject.SuccessText);
-        CommandSystem.Instance.Send(Command);
-
-        PosRotScale.PosRotScalePatchList.Clear();
-        for (int i = 0; i < GameManager.Instance.ObjsParent.childCount;i++)
-        {
-            if (i != 0)
-            {
-                for (int j = 0; j < GameManager.Instance.ObjsParent.GetChild(i).childCount; j++)
-                {
-                    for (int k = 0; k < GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).childCount; k++)
-                    {
-                        PosRotScalePatch PosRotScalePatch = new PosRotScalePatch();
-                        PosRotScalePatch.PosPatch = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localPosition;
-                        PosRotScalePatch.RotPatch = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localEulerAngles;
-                        PosRotScalePatch.ScalePatch = GameManager.Instance.ObjsParent.GetChild(i).GetChild(j).GetChild(k).localScale;
-                        PosRotScale.PosRotScalePatchList.Add(PosRotScalePatch);
-                    }
-                }
-            }
         }
+
+    
     }
 
     /// <summary>

+ 18 - 4
Assets/Scripts/UI/GameManager.cs

@@ -257,15 +257,17 @@ public class GameManager : MonoSingleton<GameManager>
         var t = TimerMgr.Instance.CreateTimer(()=> {
             if(isShowDownTip)
             {
-
+                Debug.Log("HJJ  判断正在下载");
                 if (downLoadCount == 0)
                 {
                     downLoadCount = COSDownLoad.showDownEndLoadCount;
+                    Debug.Log("HJJ  判断正在下载downLoadCount==0");
                 }
 
                 if (COSDownLoad.showDownLoadCount > COSDownLoad.showDownEndLoadCount)
                 {
-                  
+
+                    Debug.Log("HJJ  判断正在下载COSDownLoad.showDownLoadCount > COSDownLoad.showDownEndLoadCount");
                     string str = string.Format("{0}/{1}正在下载,{2}%", (COSDownLoad.showDownEndLoadCount - downLoadCount), COSDownLoad.showDownLoadCount - downLoadCount, COSDownLoad.showDownLoadPre.ToString("F2"));
                     UIManager.Instance.ShowUI(UINameConfig.LoadingPanel, typeof(LoadingPanel), (int)ELoadState.download);
                     ((LoadingPanel)UIManager.Instance.GetUI(UINameConfig.LoadingPanel)).TextStr = str;
@@ -275,6 +277,7 @@ public class GameManager : MonoSingleton<GameManager>
                 {
                     if (downLoadCount != 0)
                     {
+                        Debug.Log("HJJ  判断正在下载downLoadCount != 0");
                         UIManager.Instance.HideUI(UINameConfig.LoadingPanel);
                         downLoadCount = 0;
                         UIManager.Instance.ShowUI(UINameConfig.LoadingPanel, typeof(LoadingPanel), (int)ELoadState.updateEnd);
@@ -285,6 +288,7 @@ public class GameManager : MonoSingleton<GameManager>
 
                 if(COSDownLoad.showDownLoadCount==0&& downLoadCount ==0)
                 {
+                    Debug.Log("HJJ  判断正在下载COSDownLoad.showDownLoadCount==0&& downLoadCount ==0");
                     Debug.Log("DGJ   updateEnd  ");
                     UIManager.Instance.ShowUI(UINameConfig.LoadingPanel, typeof(LoadingPanel), (int)ELoadState.updateEnd);
                     isShowDownTip = false;
@@ -941,7 +945,7 @@ public class GameManager : MonoSingleton<GameManager>
     private void CreateCrystalAndTrigger(SpoitValue spoit)
     {
         var spoitPos = Vector3.zero;
-        if (spoit.SpoitTransform.Count > 0)
+        if (spoit.SpoitTransform!=null&&spoit.SpoitTransform.Count > 0)
         {
             Debug.LogFormat("{0}{1}", spoit.name, " DGJ ===>  景点存在");
             SpoitPos trans = spoit.SpoitTransform[0];
@@ -1029,7 +1033,13 @@ public class GameManager : MonoSingleton<GameManager>
     /// </summary>
     private void CreateMaterial(SpoitValue spoit, out SpoitValue newspoit)
     {
-        
+        if(!ObjectValues.ContainsKey(spoit.id))
+        {
+            newspoit = new SpoitValue();
+        }
+        else
+        {
+
         var spoitValues = ObjectValues[spoit.id];
         var spoitObj = spoitValues.Object;
         Debug.Log("DGJ ===> 创建整体素材  "+ spoit.material.Count);
@@ -1109,6 +1119,7 @@ public class GameManager : MonoSingleton<GameManager>
             ObjectValues.Add(spoit.id, spoitValues);
         }
         spoitObj.gameObject.SetActive(false);
+        }
     }
 
     /// <summary>
@@ -1397,6 +1408,7 @@ public class GameManager : MonoSingleton<GameManager>
     /// </summary>
     private List<ObjectValue> CreateImage_Video_Text(MaterialObl material, GameObject spoit, out MaterialObl newmaterial)
     {
+        Debug.LogError("HJJmaterialObls.select  DRFanLayout.CreateImage_Video_Text  ");
         newmaterial = material;
         List<ObjectValue> objects = new List<ObjectValue>();
         //switch (material.typesetting)
@@ -1446,12 +1458,14 @@ public class GameManager : MonoSingleton<GameManager>
                 DRTitleLayout.CalLayout(material, spoit, out newmaterial);
                 break;
             case "8":
+                Debug.LogError("HJJmaterialObls.select  DRFanLayout.CalLayout  ");
                 DRFanLayout.CalLayout(material, spoit, out newmaterial);
                 break;
 
             default:
                 break;
         }
+        Debug.LogError("HJJmaterialObls.select  DRFanLayout.CalLayout default ");
 
         return objects;
     }

+ 0 - 18
Assets/Scripts/UI/LoginPanel.cs

@@ -282,14 +282,6 @@ public class LoginPanel : BaseUI
     /// </summary>
     private void OnClickLogin()
     {
-#if UNITY_EDITOR
-        m_AccountStr = "4444@qq.com";
-      //  m_AccountStr = "jiajun.hu@ghz-tech.com";
-       //   m_AccountStr = "advtest1@1.com";
-       // m_AccountStr = "bactest1@1.com";
-       // m_AccountStr = "1768147286@qq.com";
-          m_AccountStr = "advtest1@1.com";
-#endif
 
         if (string.IsNullOrWhiteSpace(m_AccountStr))
         {
@@ -727,16 +719,6 @@ public class LoginPanel : BaseUI
         m_Logn.interactable = m_IsRemberPwd;
         m_RemenberPwd.isOn = m_IsRemberPwd;
 
-#if UNITY_EDITOR
-        m_AccountStr = "1768147286@qq.com";
-      //  m_AccountStr = "jiajun.hu@ghz-tech.com";
-        m_PasswordStr = "123456Aa";
-#endif
-        //m_AccountStr = "2463951@qq.com";
-        //m_PasswordStr = "123456Aa";
-
-        //m_AccountStr = "6555474@qq.com";
-        //m_PasswordStr = "123456Aa";
 
 
     }

+ 2 - 0
Assets/Scripts/UI/SceneChoose.cs

@@ -285,6 +285,8 @@ public class SceneChoose : BaseUI
 
             if (scene.vuforiaXML != null)
             {
+                if(Directory.Exists(Application.persistentDataPath + "/StreamingAssets"))
+                    Directory.Delete(Application.persistentDataPath + "/StreamingAssets");
                 //DownloadData xml = new DownloadData();
                 //string filename = Path.GetFileName(scene.vuforiaXML);
                 //xml.name = filename;