85 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			85 lines
		
	
	
		
			3.1 KiB
		
	
	
	
		
			C#
		
	
	
	
| using System;
 | |
| using System.Collections;
 | |
| using UnityEngine;
 | |
| using static InterfaceManager;
 | |
| using DefaultNamespace;
 | |
| using System.Collections.Generic;
 | |
| 
 | |
| public class Fetchbox : MonoBehaviour
 | |
| {
 | |
|     /// <summary>
 | |
|     /// 获取箱子接口路径
 | |
|     /// </summary>
 | |
|     private string url;
 | |
|     /// <summary>
 | |
|     /// 烟箱子
 | |
|     /// </summary>
 | |
|     public GameObject box;
 | |
|     /// <summary>
 | |
|     /// 获取箱子接口
 | |
|     /// </summary>
 | |
|     public ShelfBoxModel shelfBoxModel = new ShelfBoxModel();
 | |
|     /// <summary>
 | |
|     /// 每个箱子的信息
 | |
|     /// </summary>
 | |
|     public List<Boxinformation> boxinformationList = new List<Boxinformation>();
 | |
|     private void Awake()
 | |
|     {
 | |
|         url += Boxface;
 | |
|         StartCoroutine(Getstring(url, (data) =>
 | |
|         {
 | |
|             Debug.Log(data);
 | |
|             Boxdata(data);
 | |
|         }));
 | |
|     }
 | |
|     /// <summary>
 | |
|     /// 解析箱子的数据
 | |
|     /// </summary>
 | |
|     public void Boxdata(string data)
 | |
|     {
 | |
|         if (data != null)
 | |
|         {
 | |
|             shelfBoxModel = JsonUtility.FromJson<ShelfBoxModel>(data);
 | |
|             for (int i = 0; i < shelfBoxModel.result.Count; i++)
 | |
|             {
 | |
|                 GameObject Box = Instantiate(box);
 | |
|                 Boxinformation boxinformation = Box.AddComponent<Boxinformation>();
 | |
|                 string boxname = $"{shelfBoxModel.result[i].row}-{shelfBoxModel.result[i].column}-{shelfBoxModel.result[i].layer}";
 | |
|                 Debug.Log(boxname);
 | |
|                 GameObject parentObject = GameObject.Find(boxname);
 | |
|                 if (parentObject)
 | |
|                 {
 | |
|                     Box.transform.SetParent(parentObject.transform, false);
 | |
|                     boxinformation.ID = shelfBoxModel.result[i].id;
 | |
|                     boxinformation.type = shelfBoxModel.result[i].type;
 | |
|                     boxinformation.locationId = shelfBoxModel.result[i].locationId;
 | |
|                     boxinformation.description = shelfBoxModel.result[i].description;
 | |
|                     boxinformation.locationState = shelfBoxModel.result[i].locationState;
 | |
|                     boxinformation.storageState = shelfBoxModel.result[i].storageState;
 | |
|                     boxinformation.layer = shelfBoxModel.result[i].layer;
 | |
|                     boxinformation.row = shelfBoxModel.result[i].row;
 | |
|                     boxinformation.column = shelfBoxModel.result[i].column;
 | |
|                     boxinformation.specialFlag = shelfBoxModel.result[i].specialFlag;
 | |
|                     boxinformation.palletNum = shelfBoxModel.result[i].palletNum;
 | |
|                     boxinformation.itemType = shelfBoxModel.result[i].itemType;
 | |
|                     boxinformation.isSpecial = shelfBoxModel.result[i].isSpecial;
 | |
|                     boxinformationList.Add(boxinformation);
 | |
|                     if (shelfBoxModel.result[i].layer.Equals(1))
 | |
|                     {
 | |
|                         MqttManager.Instance.firstbox.Add(Box);
 | |
|                     }
 | |
|                     else
 | |
|                     {
 | |
|                         MqttManager.Instance.secondbox.Add(Box);
 | |
|                     }
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     Destroy(Box);
 | |
|                     Debug.LogWarning($"未找到名为 {boxname} 的父对象。物体将被删除。");
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| }
 |