胡佳骏 1 gadu atpakaļ
vecāks
revīzija
cae1de93c9

+ 54 - 1
Assets/HotUpdate/Scripts/Scripts/JinRuRenwu.cs

@@ -1,5 +1,7 @@
 using Immersal.AR;
 using LitJson;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
 using System.Collections;
 using System.Collections.Generic;
 using TMPro;
@@ -11,7 +13,7 @@ using static XunJianDataManager;
 public class JinRuRenwu : WindowSingleton<JinRuRenwu>
 {
     //RenWuItem rwitem;
-    XunJianTasks rwitem;
+   public  XunJianTasks rwitem;
     public GameObject WenJianLan;
     public TextMeshProUGUI info;
 
@@ -160,6 +162,7 @@ public class JinRuRenwu : WindowSingleton<JinRuRenwu>
         //updateListRef();
         // rwitem = XunJianDataManager.Instance.chooseXunJian.itemList[XunJianDataManager.Instance.chooseXunJian.nowIndex+1];
         rwitem = XunJianDataManager.Instance.chooseXunJian.tasksList[XunJianDataManager.Instance.chooseXunJian.nowIndex + 1];
+        rwitem.startTime = Time.time;
         if (XunJianDataManager.Instance.chooseXunJian.renwuModelType == RenWuModelType.DianYun)
         {
             LineManager.Instance.setRoad(rwitem.roadList);
@@ -184,6 +187,7 @@ public class JinRuRenwu : WindowSingleton<JinRuRenwu>
         TextBT.SetActive(false);
         // rwitem = XunJianDataManager.Instance.chooseXunJian.itemList[XunJianDataManager.Instance.chooseXunJian.nowIndex];
         rwitem = XunJianDataManager.Instance.chooseXunJian.tasksList[XunJianDataManager.Instance.chooseXunJian.nowIndex];
+        rwitem.startTime = Time.time;
         indexText.text = (rwitem.sort).ToString();
         // info.text = rwitem.info;
         info.text = rwitem.title;
@@ -566,10 +570,12 @@ public class JinRuRenwu : WindowSingleton<JinRuRenwu>
     public void successItem()
     {
         rwitem.state = RenWuState.Success;
+       // rwitem.status = 1;
     }
     public void failItem()
     {
         rwitem.state = RenWuState.Fail;
+     //   rwitem.status = 2;
     }
     public void gotoNextItem()
     {
@@ -579,7 +585,44 @@ public class JinRuRenwu : WindowSingleton<JinRuRenwu>
         ARSpace.isFind = false;
         // 任务上报  
 
+        //JsonData jsonData = new JsonData();
+        //jsonData["projectInspectionTaskId"] = rwitem.projectInspectionId;
+        //jsonData["status"] = rwitem.status;
+        //jsonData["consumingTime"] = (int)(Time.time - rwitem.startTime);
 
+      
+        //jsonData["dataFileIds"] = jobject;
+
+        if(rwitem.status != 0)
+        {
+            TasksReport tasks = new TasksReport();
+            tasks.projectInspectionTaskId = rwitem.id;
+            tasks.status = rwitem.status;
+            tasks.consumingTime = (int)(Time.time - rwitem.startTime);
+            tasks.dataFileIds = rwitem.listUpload;
+
+            Debug.Log(JsonConvert.SerializeObject(tasks));
+
+            WindowsManager.Instance.StartCoroutine(HttpTool.Instance.SendHttp(HttpEdustryAction.tasksReport, JsonConvert.SerializeObject(tasks), msg =>
+            {
+                Debug.Log(HttpEdustryAction.tasksReport + " HttpEdustryAction.tasksReport  " + msg);
+                JObject data = new JObject();
+
+
+
+                //if (data["code"].ToString() == "200")
+                //{
+
+                //    Debug.Log("上报成功" + msg);
+                //}
+                //else
+                //{
+                //    Debug.LogError(" 上报失败" + msg);
+                //}
+
+            }));
+        }
+       
 
 
 
@@ -605,3 +648,13 @@ public class JinRuRenwu : WindowSingleton<JinRuRenwu>
         WindowsManager.Instance.show(WindowConfig.windowType.XunJianLB);
     }
 }
+
+public class TasksReport
+{
+    public int projectInspectionTaskId { get; set; }
+    public int status { get; set; }
+
+    public int consumingTime { get; set; }
+
+    public List<int> dataFileIds { get; set; }
+}

+ 8 - 2
Assets/HotUpdate/Scripts/Scripts/Project/XunJian/XunJianDataManager.cs

@@ -386,7 +386,7 @@ public class XunJianDataManager : Singleton<XunJianDataManager>
         // 加入分页查询
 
         JsonData jsonData = new JsonData();
-        jsonData["page"] = 1;
+        jsonData["page"] = 6;
         jsonData["limit"] = 50;
         Debug.Log(jsonData.ToJson());
         yield return WindowsManager.Instance.StartCoroutine(HttpTool.Instance.SendHttp(HttpEdustryAction.InspectionList, jsonData.ToJson(), (string msg) =>
@@ -810,6 +810,12 @@ public class XunJianDataManager : Singleton<XunJianDataManager>
          public ImageFileSourceData imageData { get; set; }
 
         public RenWuState state =  RenWuState.None;
+
+        public List<int> listUpload = new List<int>();
+        /// <summary>
+        /// 任务开始时间
+        /// </summary>
+        public float startTime { get; set; }
     }
 
     public class MinioResources
@@ -878,4 +884,4 @@ public class XunJianDataManager : Singleton<XunJianDataManager>
 
 
     }
-}
+}

+ 1 - 0
Assets/HotUpdate/Scripts/Scripts/Project/XunJian/进入任务/CaoZuoLanManager.cs

@@ -118,6 +118,7 @@ public class CaoZuoLanManager : MonoSingleton<CaoZuoLanManager>
     {
         Debug.Log("nextInteractable==>"+isActive);
         isChoose = isActive;
+        JinRuRenwu.Instance.rwitem.status = isActive ? 1 : 2;
         xiayibu.GetComponent<Button>().interactable = isActive;
 
     }

+ 87 - 2
Assets/HotUpdate/Scripts/Scripts/Project/XunJian/进入任务/ChangeCameraSaoMiao.cs

@@ -1,6 +1,7 @@
 using easyar;
 using LitJson;
 using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
 using RenderHeads.Media.AVProMovieCapture;
 using System;
 using System.Collections;
@@ -190,7 +191,12 @@ public class ChangeCameraSaoMiao : MonoSingleton<ChangeCameraSaoMiao>
                 timerText.text="REC  "+ TimeToString(FrameOutTime);
 
             },1f,-1);
-        }    
+
+
+
+
+        
+    }    
     }
 
     private void OnCompletedFileWritingAction(FileWritingHandler obj)
@@ -199,6 +205,79 @@ public class ChangeCameraSaoMiao : MonoSingleton<ChangeCameraSaoMiao>
         paizhaoData data = new paizhaoData();
         data.url = pathVideo;
         PaiZhaoManager.Instance.addVidew(data);
+
+
+        // 文件预上传
+
+        FileInfo fileInfo = new FileInfo(pathVideo);
+        long sizeInBytes = fileInfo.Length;
+        JsonData jData = new JsonData();
+        jData["size"] = sizeInBytes;
+        jData["ext"] = "mp4";
+        jData["name"] = name;
+
+        JsonData fileData = new JsonData();
+        fileData["filePath"] = pathVideo;
+        fileData["fileSize"] = sizeInBytes;
+        fileData["fileName"] = Path.GetFileName(pathVideo);
+        // project /{ projectId}/ inspection /{ projectInspectionId}/{ taskId}
+        fileData["objectName"] = "project/" + XunJianDataManager.Instance.chooseXunJian.tasksList[XunJianDataManager.Instance.chooseXunJian.nowIndex].projectId + "/inspection/" + XunJianDataManager.Instance.chooseXunJian.tasksList[XunJianDataManager.Instance.chooseXunJian.nowIndex].projectInspectionId + "/" + XunJianDataManager.Instance.chooseXunJian.tasksList[XunJianDataManager.Instance.chooseXunJian.nowIndex].id + "/";
+
+        WindowsManager.Instance.StartCoroutine(HttpTool.Instance.SendHttp(HttpEdustryAction.storage_projectUploadObject, jData.ToJson(), fileData.ToJson(), async (List<string> str) =>
+        {
+            Debug.Log(HttpEdustryAction.storage_projectUploadObject + "  " + str[0]);
+
+            JObject jObject = JObject.Parse(str[0]);
+
+            if (jObject["code"].ToString() == "200")
+            {
+
+
+                JinRuRenwu.Instance.rwitem.listUpload.Add(int.Parse(jObject["data"]["fileId"].ToString()));
+                JObject fildData = JObject.Parse(str[1]);
+                // 文件上传
+                RoomFileMinio.Instance.PutFile(RoomFileMinio.Instance.bucket, fildData["filePath"].ToString(), fildData["fileName"].ToString(), fildData["objectName"].ToString() + jObject["data"]["uuid"].ToString() + ".mp4", jObject["data"]["uuid"].ToString(), int.Parse(fildData["fileSize"].ToString()), msg =>
+                {
+
+                    // 存入file
+
+                    // XunJianDataManager.Instance.chooseXunJian.tasksList[]
+
+                    if (msg != null)
+                    {
+
+                        Debug.Log(" 文件上传成功 " + msg);
+
+                        //string[] listStr = msg.Split('/');
+
+                        //int id = int.Parse(listStr[listStr.Length - 2]);
+
+                        //for (int i = 0; i < XunJianDataManager.Instance.chooseXunJian.tasksList.Count; i++)
+                        //{
+                        //    if (XunJianDataManager.Instance.chooseXunJian.tasksList[i].id == id)
+                        //    {
+                        //        XunJianDataManager.Instance.chooseXunJian.tasksList[i].listUpload.Add(listStr[listStr.Length - 1]);
+                        //        break;
+                        //    }
+                        //}
+
+                    }
+                    else
+                    {
+                        Debug.LogError("文件上传失败");
+                    }
+
+
+                });
+
+            }
+            else
+            {
+                Debug.LogError("文件预上传失败 " + str);
+            }
+
+        }));
+
     }
 
     public string TimeToString(int result)
@@ -219,7 +298,13 @@ public class ChangeCameraSaoMiao : MonoSingleton<ChangeCameraSaoMiao>
             caTexture.StopCapture();
             isLuXiang = false;
             timerText.text = "REC  00:00:00" ;
+
+
+
+
+
+
         }
     }
     int FrameOutTime;
-}
+}

+ 38 - 26
Assets/HotUpdate/Scripts/Scripts/Project/XunJian/进入任务/PaiZhaoDataManager.cs

@@ -1,4 +1,3 @@
-
 using LitJson;
 using Newtonsoft.Json.Linq;
 using System.Collections;
@@ -124,46 +123,54 @@ public class PaiZhaoDataManager : Singleton<PaiZhaoDataManager>
             // project /{ projectId}/ inspection /{ projectInspectionId}/{ taskId}
             fileData["objectName"] = "project/" + XunJianDataManager.Instance.chooseXunJian.tasksList[XunJianDataManager.Instance.chooseXunJian.nowIndex].projectId + "/inspection/" + XunJianDataManager.Instance.chooseXunJian.tasksList[XunJianDataManager.Instance.chooseXunJian.nowIndex].projectInspectionId + "/" + XunJianDataManager.Instance.chooseXunJian.tasksList[XunJianDataManager.Instance.chooseXunJian.nowIndex].id + "/";
 
-            GetUploadObject guo = new GetUploadObject();
-            guo.start (jData.ToJson(),fileData.ToJson());
-
-
-          
+            WindowsManager.Instance.StartCoroutine(HttpTool.Instance.SendHttp(HttpEdustryAction.storage_projectUploadObject, jData.ToJson(), fileData.ToJson(), async (List<string> str) =>
+            {
+                Debug.Log(HttpEdustryAction.storage_projectUploadObject + "  " + str[0]);
 
-           
-        }
+                JObject jObject = JObject.Parse(str[0]);
 
-    }
+            if (jObject["code"].ToString() == "200")
+            {
 
-    public class GetUploadObject
-    {
-        public void start(string jDatastr, string fileDatastr)
-        {
+                    
 
+                    JObject fildData = JObject.Parse(str[1]);
+                    JinRuRenwu.Instance.rwitem.listUpload.Add(int.Parse(jObject["data"]["fileId"].ToString()));
+                    // 文件上传
+                    RoomFileMinio.Instance.PutFile(RoomFileMinio.Instance.bucket, fildData["filePath"].ToString(), fildData["fileName"].ToString(), fildData["objectName"].ToString()+ jObject["data"]["uuid"].ToString()+".jpg", jObject["data"]["uuid"].ToString(),int.Parse(fildData["fileSize"].ToString()), msg =>
+                    {
 
-            WindowsManager.Instance.StartCoroutine(HttpTool.Instance.SendHttp(HttpEdustryAction.storage_projectUploadObject, jDatastr, async (string str) =>
-            {
+                        // 存入file
 
-                JObject jObject = JObject.Parse(str);
+                       // XunJianDataManager.Instance.chooseXunJian.tasksList[]
 
-                if (jObject["code"].ToString() == "200")
-                {
+                        if(msg!=null)
+                        {
 
+                            Debug.Log(" 文件上传成功 " + msg);
 
+                            //string[] listStr = msg.Split('/');
 
-                    JObject fildData = JObject.Parse(fileDatastr);
-                    // 文件上传
-                    RoomFileMinio.Instance.PutFile(RoomFileMinio.Instance.bucket, fildData["filePath"].ToString(), fildData["fileName"].ToString(), fildData["objectName"].ToString() + jObject["data"]["uuid"].ToString() + ".jpg", jObject["data"]["uuid"].ToString(), int.Parse(fildData["fileSize"].ToString()), msg =>
-                    {
+                            //int id = int.Parse(listStr[listStr.Length - 2]);
 
-                        // 存入file
+                            //for (int i = 0; i < XunJianDataManager.Instance.chooseXunJian.tasksList.Count; i++)
+                            //{
+                            //    if (XunJianDataManager.Instance.chooseXunJian.tasksList[i].id == id)
+                            //    {
+                            //        XunJianDataManager.Instance.chooseXunJian.tasksList[i].listUpload.Add(listStr[listStr.Length - 1]);
+                            //        break;
+                            //    }
+                            //}
 
-                        // XunJianDataManager.Instance.chooseXunJian.tasksList[]
+                        }
+                        else
+                        {
+                            Debug.LogError("文件上传失败");
+                        }
 
 
-                        Debug.Log(" 文件上传成功 " + msg);
                     });
-
+                    
                 }
                 else
                 {
@@ -171,7 +178,12 @@ public class PaiZhaoDataManager : Singleton<PaiZhaoDataManager>
                 }
 
             }));
+
+          
+
+           
         }
+
     }
 
     public List<paizhaoData> updateFile()