public void loadDuiHuanJiLu()
    {
        // 优先使用热更新的代码
        if (ILRuntimeUtil.getInstance().checkDllClassHasFunc("MedalDuiHuanPanelScript_hotfix", "loadDuiHuanJiLu"))
        {
            ILRuntimeUtil.getInstance().getAppDomain().Invoke("HotFix_Project.MedalDuiHuanPanelScript_hotfix", "loadDuiHuanJiLu", null, null);
            return;
        }

        m_listView_duihuanjilu.clear();

        int count = MedalDuiHuanRecordData.getInstance().getDataList().Count;

        for (int i = 0; i < count; i++)
        {
            GameObject pre = Resources.Load("Prefabs/UI/Item/Item_medalDuiHuanJilu") as GameObject;
            GameObject obj = Instantiate(pre);

            MedalDuiHuanRecordDataContent temp = MedalDuiHuanRecordData.getInstance().getDataList()[i];
            if (temp != null)
            {
                MedalDuiHuanRewardDataContent temp2 = MedalDuiHuanRewardData.getInstance().getMedalDuiHuanRewardDataContentById(temp.goods_id);
                obj.transform.Find("Text_name").GetComponent <Text>().text = (temp2.name + "*" + temp.num.ToString());
                obj.transform.Find("Text_time").GetComponent <Text>().text = temp.time;
            }

            m_listView_duihuanjilu.addItem(obj);
        }

        m_listView_duihuanjilu.addItemEnd();
    }
    public static MedalDuiHuanRewardData getInstance()
    {
        if (s_instance == null)
        {
            s_instance = new MedalDuiHuanRewardData();
        }

        return(s_instance);
    }
    public void onCallBackGetMedalDuiHuanReward(string data)
    {
        // 优先使用热更新的代码
        if (ILRuntimeUtil.getInstance().checkDllClassHasFunc("MedalDuiHuanPanelScript_hotfix", "onCallBackGetMedalDuiHuanReward"))
        {
            ILRuntimeUtil.getInstance().getAppDomain().Invoke("HotFix_Project.MedalDuiHuanPanelScript_hotfix", "onCallBackGetMedalDuiHuanReward", null, data);
            return;
        }

        NetLoading.getInstance().Close();

        MedalDuiHuanRewardData.getInstance().initJson(data);

        LogicEnginerScript.Instance.GetComponent <GetMedalDuiHuanRecordRequest>().CallBack = onCallBackGetMedalDuiHuanRecord;
        LogicEnginerScript.Instance.GetComponent <GetMedalDuiHuanRecordRequest>().OnRequest();
    }
    public void setGoodsId(int goods_id)
    {
        // 优先使用热更新的代码
        if (ILRuntimeUtil.getInstance().checkDllClassHasFunc("MedalDuiHuanQueRenPanelScript_hotfix", "setGoodsId"))
        {
            ILRuntimeUtil.getInstance().getAppDomain().Invoke("HotFix_Project.MedalDuiHuanQueRenPanelScript_hotfix", "setGoodsId", null, goods_id);
            return;
        }

        m_medalDuiHuanRewardData = MedalDuiHuanRewardData.getInstance().getMedalDuiHuanRewardDataContentById(goods_id);

        if (m_medalDuiHuanRewardData != null)
        {
            m_text_goods_name.text = m_medalDuiHuanRewardData.name;

            m_text_goods_num.text = m_goods_num.ToString();

            List <string> list_str = new List <string>();
            CommonUtil.splitStr(m_medalDuiHuanRewardData.reward_prop, list_str, ':');
            int prop_id = int.Parse(list_str[0]);

            // 道具图标
            {
                CommonUtil.setImageSprite(m_text_goods_icon, GameUtil.getPropIconPath(prop_id));
            }

            // 道具描述
            {
                if ((prop_id != 1) && (prop_id != 2))
                {
                    PropInfo propInfo = PropData.getInstance().getPropInfoById(prop_id);
                    if (propInfo != null)
                    {
                        m_text_goods_desc.text = propInfo.m_desc;
                    }
                }
            }

            refreshPrice();
        }
    }
    public void loadDuiHuanShangPin()
    {
        // 优先使用热更新的代码
        if (ILRuntimeUtil.getInstance().checkDllClassHasFunc("MedalDuiHuanPanelScript_hotfix", "loadDuiHuanShangPin"))
        {
            ILRuntimeUtil.getInstance().getAppDomain().Invoke("HotFix_Project.MedalDuiHuanPanelScript_hotfix", "loadDuiHuanShangPin", null, null);
            return;
        }

        m_listView_duihuanshangpin.clear();

        int count = MedalDuiHuanRewardData.getInstance().getDataList().Count;
        int rows  = 0;

        if (count == 0)
        {
            rows = 0;
        }
        else if (count < 3)
        {
            rows = 1;
        }
        else
        {
            rows = count / 3;
            if ((count % 3) > 0)
            {
                ++rows;
            }
        }

        int index = 0;

        for (int i = 0; i < rows; i++)
        {
            GameObject pre = Resources.Load("Prefabs/UI/Item/Item_medal_duihuan") as GameObject;
            GameObject obj = Instantiate(pre);

            for (int j = 0; j < 3; j++)
            {
                MedalDuiHuanRewardDataContent temp = MedalDuiHuanRewardData.getInstance().getMedalDuiHuanRewardDataContentByIndex(index++);

                Button btn = obj.transform.Find("Button_" + (j + 1)).GetComponent <Button>();
                if (temp != null)
                {
                    btn.onClick.AddListener(() => onClickItemMedalDuiHuan(btn));

                    btn.transform.name = temp.goods_id.ToString();

                    // 图标
                    CommonUtil.setImageSprite(btn.transform.Find("Image").GetComponent <Image>(), GameUtil.getPropIconPath(GameUtil.getPropIdFromReward(temp.reward_prop)));

                    // 名字
                    btn.transform.Find("Image_btn/Text_price").GetComponent <Text>().text = temp.price.ToString();

                    // vip等级
                    CommonUtil.setImageSpriteByAssetBundle(btn.transform.Find("Image_vip").GetComponent <Image>(), "vip.unity3d", "user_vip_" + temp.vipLevel);
                }
                else
                {
                    GameUtil.hideGameObject(btn.gameObject);
                }
            }

            m_listView_duihuanshangpin.addItem(obj);
        }

        m_listView_duihuanshangpin.addItemEnd();
    }