using LitJson;
using UnityEngine;
using UnityEngine.UI;
using XFrame.Core.UI;
using System.Collections.Generic;
using System;

public class ReplayPanel : XUIPanel
{
    /// <summary>
    /// 生成列表
    /// </summary>
    public List<ItemData> itemDatas = new List<ItemData>();
    //private Boolean flag = false;
    public ReplayPanel() : base(UIType.Fixed, UIMode.None, UICollider.None)
    {
        uiPath = "Prefabs/ReplayPanel";
    }

    public override void Awake(GameObject go)
    {
        //listContainer = this.gameObject.transform.Find("BG/TrainList/Viewport/Content/GameObject/TestPanel1");
        //itemPrefab = Resources.Load("Prefabs/btn1") as GameObject;
        //TextAsset jsonFile = Resources.Load<TextAsset>("testfile");
        //string jsonString = jsonFile.text;
        //JsonData jsonData = JsonMapper.ToObject(jsonString);
        //Root data = JsonMapper.ToObject<Root>(jsonString);
        //InsanceItem();
        //List<SubjectsInfoItem> subjectsInfoItems = data.subjectsInfo;
        switch (this.transform.Find("BG/TrainList/Viewport/Content/Dropdown").GetComponent<Dropdown>().value)
        {
            case 0:
                ShowPanel<IntroducePanel>();
                break;
            default:
                break;
        }
        this.transform.Find("BG/TrainList/Viewport/Content/Dropdown").GetComponent<Dropdown>().onValueChanged.AddListener((Int32) =>
        {
            ShowPanel<IntroducePanel>();
        });
    }



    //public GameObject itemPrefab;
    //public Transform listContainer;
    //public void InsanceItem()
    //{
    //    TextAsset jsonFile = Resources.Load<TextAsset>("testfile");
    //    string jsonString = jsonFile.text;
    //    JsonData jsonData = JsonMapper.ToObject(jsonString);
    //    Root data = JsonMapper.ToObject<Root>(jsonString);
    //    List<SubjectsInfoItem> subjectsInfoItems = data.subjectsInfo;
    //    string text = null;
    //    for (int i = 0; i < subjectsInfoItems.Count; i++)
    //    {
    //        GameObject newItem = GameObject.Instantiate(itemPrefab, listContainer);
    //        // 获取生成的物体上的ItemData组件
    //        ItemData itemData = newItem.GetComponent<ItemData>();
    //        itemData.itemName = subjectsInfoItems[i].subjectName;
    //        Button btn = newItem.GetComponent<Button>();
    //        if (btn) btn.onClick.AddListener(() =>
    //        {
    //            ShowPanel<IntroducePanel>();
    //            flag = true;
    //            text = btn.GetComponentInChildren<Text>().text;
    //            GameMain1.Intance.text = text;
    //        });

    //        if (!itemDatas.Contains(itemData))
    //            itemDatas.Add(itemData);
    //    }
    //    GameMain1.Intance.itemDatas = itemDatas;
    //}
}



public class SeatInfosItem
{
    /// <summary>
    /// 
    /// </summary>
    public string seatId { get; set; }
    /// <summary>
    /// 20号发射单元指挥_发射分队
    /// </summary>
    public string seatName { get; set; }
    /// <summary>
    /// 
    /// </summary>
    public string subjectId { get; set; }
}

public class SubjectsInfoItem
{
    /// <summary>
    /// 
    /// </summary>
    public string subjectId { get; set; }
    /// <summary>
    /// 转载上车前准备
    /// </summary>
    public string subjectName { get; set; }
    /// <summary>
    /// 
    /// </summary>
    public int index { get; set; }
    /// <summary>
    /// 
    /// </summary>
    public string stepInfo { get; set; }
    /// <summary>
    /// 20号发射单元指挥_发射分队,23号箭上操作手_发射分队,26号车控操作手_发射分队,28号发射车司机_发射分队
    /// </summary>
    public string seatInfo { get; set; }
    /// <summary>
    /// AR+虚拟面板操作
    /// </summary>
    public string mode { get; set; }
    /// <summary>
    /// 
    /// </summary>
    public List<SeatInfosItem> seatInfos { get; set; }
}

public class Root
{
    /// <summary>
    /// 
    /// </summary>
    public string Id { get; set; }
    /// <summary>
    /// 0728上车下车
    /// </summary>
    public string Name { get; set; }
    /// <summary>
    /// 协同训练
    /// </summary>
    public string PracticeMode { get; set; }
    /// <summary>
    /// 
    /// </summary>
    public string HJMode { get; set; }
    /// <summary>
    /// 
    /// </summary>
    public List<SubjectsInfoItem> subjectsInfo { get; set; }
}