From cb0ee4d845b5452beeb2a19dceb4de9ecf191c54 Mon Sep 17 00:00:00 2001
From: Client_PangDeRong <593317293@qq.com>
Date: 星期四, 22 十一月 2018 15:09:31 +0800
Subject: [PATCH] Merge branch 'master' of http://192.168.0.87:10010/r/snxxz_scripts

---
 System/Team/GroupDungeonChallengeProcessor.cs             |   16 -
 System/MainInterfacePanel/PlayerTaskDatas.cs              |    4 
 System/Dungeon/DungeonModel.cs                            |    3 
 System/MainInterfacePanel/TaskBoxBGMWin.cs                |    2 
 System/OpenServerActivity/OSGiftModel.cs                  |   58 +++++--
 System/OpenServerActivity/OpenServerGiftWin.cs            |   21 --
 System/OpenServerActivity/SuperValueGiftBehaviour.cs.meta |   12 +
 System/Vip/VipModel.cs                                    |   57 +++++--
 System/Dungeon/NormalDungeonEntranceWin.cs                |   65 +++++++++
 System/OpenServerActivity/SuperValueGiftBehaviour.cs      |  134 +++++++++++++++++++
 10 files changed, 302 insertions(+), 70 deletions(-)

diff --git a/System/Dungeon/DungeonModel.cs b/System/Dungeon/DungeonModel.cs
index 7ff3d38..3be776e 100644
--- a/System/Dungeon/DungeonModel.cs
+++ b/System/Dungeon/DungeonModel.cs
@@ -520,6 +520,7 @@
             if (ruinsTranscriptMapId == _dungeon.mapId)
             {
                 OpenFloorChooseWin();
+               
             }
             else
             {
@@ -588,7 +589,7 @@
             {
                 yield break;
             }
-            WindowCenter.Instance.Open<FloorChooseWin>();
+            RequestChallangeDungeon(ruinsTranscriptMapId, mainModel.LayerNumber);
         }
 
         public void GroupChallenge(int _dungeonId, int _lineId = 0)
diff --git a/System/Dungeon/NormalDungeonEntranceWin.cs b/System/Dungeon/NormalDungeonEntranceWin.cs
index 3d55409..856e79b 100644
--- a/System/Dungeon/NormalDungeonEntranceWin.cs
+++ b/System/Dungeon/NormalDungeonEntranceWin.cs
@@ -53,14 +53,17 @@
 
         [SerializeField] RectTransform m_FairyLandTipBehaviour;
         [SerializeField] Text m_FairyLandTip;
-
+        [SerializeField] Text m_WhyjEnterRule;//濞茬殗閬楄抗
+        [SerializeField] Text WhyjEnterFloor;//濞茬殗閬楄抗
         DungeonModel model { get { return ModelCenter.Instance.GetModel<DungeonModel>(); } }
         TeamModel teamModel { get { return ModelCenter.Instance.GetModel<TeamModel>(); } }
         PlayerPackModel playerPack { get { return ModelCenter.Instance.GetModel<PlayerPackModel>(); } }
 
         #region Built-in
+        private int ruinsTranscriptMapId;
         protected override void BindController()
         {
+            ruinsTranscriptMapId = int.Parse(Config.Instance.Get<FuncConfigConfig>("SpRewardMapID").Numerical1);
         }
 
         protected override void AddListeners()
@@ -80,6 +83,27 @@
             DrawDungeonTicketInfo();
             DisplayFairyLandTip();
             m_BreifInfo.SetDungeonInfo(model.currentDungeon);
+            if (ruinsTranscriptMapId == model.currentDungeon.mapId)//濞茬殗閬楄抗
+            {
+                GetWhyjLayerNumber();
+                m_WhyjEnterRule.gameObject.SetActive(true);
+                m_WhyjEnterRule.text = Language.Get("WhyjEnterRule");
+                if (!m_GroupStart.gameObject.activeSelf && !m_AutoGroupStart.gameObject.activeSelf)
+                {
+                    WhyjEnterFloor.gameObject.SetActive(true);
+                    var mainModel = ModelCenter.Instance.GetModel<PlayerMainDate>();
+                    WhyjEnterFloor.text = Language.Get("WhyjEnterFloor", mainModel.LayerNumber + 1);
+                }
+                else
+                {
+                    WhyjEnterFloor.gameObject.SetActive(false);
+                }
+            }
+            else
+            {
+                m_WhyjEnterRule.gameObject.SetActive(false);
+                
+            }
         }
 
         protected override void OnAfterOpen()
@@ -471,6 +495,45 @@
             }
         }
 
+        private void GetWhyjLayerNumber()//鑾峰彇鍗曚汉鐨勫ú鐨囧眰鏁�
+        {
+            DungeonRecord dungeonRecords;
+            var mainModel = ModelCenter.Instance.GetModel<PlayerMainDate>();
+            if (model.TryGetRecord(ruinsTranscriptMapId, out dungeonRecords))
+            {
+                int Index = -1;
+                for (int i = 0; i < dungeonRecords.lineGrades.Count; i++)
+                {
+                    if (dungeonRecords.lineGrades[i]== 5)
+                    {
+                        Index = i;
+                    }
+                }
+                if (Index > -1)
+                {
+                    if (Index + 1 >= 7)
+                    {
+                        if (7 - mainModel.WaHuangHighestFloor >= 0)
+                            mainModel.LayerNumber = 7 - mainModel.WaHuangHighestFloor;
+                    }
+                    else
+                    {
+                        if ((Index + 1) - mainModel.WaHuangHighestFloor >= 0)
+                        {
+                            mainModel.LayerNumber = (Index + 1) - mainModel.WaHuangHighestFloor;
+                        }
+                        else
+                        {
+                            mainModel.LayerNumber = 0;
+                        }
+                    }
+                }
+                else
+                {
+                    mainModel.LayerNumber = 0;
+                }
+            }   
+        }
     }
 
 }
diff --git a/System/MainInterfacePanel/PlayerTaskDatas.cs b/System/MainInterfacePanel/PlayerTaskDatas.cs
index c50edb6..c54a699 100644
--- a/System/MainInterfacePanel/PlayerTaskDatas.cs
+++ b/System/MainInterfacePanel/PlayerTaskDatas.cs
@@ -324,8 +324,6 @@
             WindowCenter.Instance.Close<MainInterfaceWin>();
         }
     }
-    VipModel m_Vipmodel;
-    VipModel vipmodel { get { return m_Vipmodel ?? (m_Vipmodel = ModelCenter.Instance.GetModel<VipModel>()); } }
     private void OnEventTalkEvent(int taskID)//NPC瀵硅瘽鍚庣殑寮规
     {
         //if (WindowCenter.Instance.ExitAnyFullScreenOrMaskWin())
@@ -362,7 +360,7 @@
             }
             else
             {
-                if (BountyDic.ContainsKey(_TaskNow) || (FairyAuDic.ContainsKey(_TaskNow)&& vipmodel.GetVipPrivilegeCnt(VipPrivilegeType.AutoFairyMisstion) >= 1))
+                if (BountyDic.ContainsKey(_TaskNow) || FairyAuDic.ContainsKey(_TaskNow))
                 {
                     if (!ModelCenter.Instance.GetModel<TeamModel>().teamPrepare.isPreparing)
                     {
diff --git a/System/MainInterfacePanel/TaskBoxBGMWin.cs b/System/MainInterfacePanel/TaskBoxBGMWin.cs
index f5b73a3..c69ad4d 100644
--- a/System/MainInterfacePanel/TaskBoxBGMWin.cs
+++ b/System/MainInterfacePanel/TaskBoxBGMWin.cs
@@ -143,7 +143,7 @@
             if (_AllMissionDict.ContainsKey(_TaskId))
             {
 
-                if (_AllMissionDict[_TaskId].Type == 7 || (_AllMissionDict[_TaskId].Type == 12 && vipmodel.GetVipPrivilegeCnt(VipPrivilegeType.AutoFairyMisstion) >= 1))
+                if (_AllMissionDict[_TaskId].Type == 7 || _AllMissionDict[_TaskId].Type == 12)
                 {
                     if (!ModelCenter.Instance.GetModel<TeamModel>().teamPrepare.isPreparing)
                     {
diff --git a/System/OpenServerActivity/OSGiftModel.cs b/System/OpenServerActivity/OSGiftModel.cs
index d0ad6e8..705d79f 100644
--- a/System/OpenServerActivity/OSGiftModel.cs
+++ b/System/OpenServerActivity/OSGiftModel.cs
@@ -8,10 +8,15 @@
     [XLua.LuaCallCSharp]
 	public class OSGiftModel : Model, IPlayerLoginOk, IBeforePlayerDataInitialize, IOpenServerActivity
     {
+        VipModel vipModel
+        {
+            get { return ModelCenter.Instance.GetModel<VipModel>(); }
+        }
+
         public override void Init()
         {
             ParseConfig();
-            storeModel.RefreshBuyShopLimitEvent += RefreshBuyShopLimitEvent;
+            vipModel.rechargeCountEvent += RechargeCountEvent;
             OpenServerActivityCenter.Instance.Register(6, this);
         }
 
@@ -36,8 +41,6 @@
 
         public event Action<int> onStateUpate;
         public event Action onSelectUpdate;
-
-        StoreModel storeModel { get { return ModelCenter.Instance.GetModel<StoreModel>(); } }
 
         public bool IsOpen
         {
@@ -102,7 +105,7 @@
             {
                 gifts.Add(new SuperValueGift()
                 {
-                    giftId = array[i][0],
+                    payType = array[i][0],
                     openDays = array[i][1],
                 });
             }
@@ -113,7 +116,7 @@
             }
         }
 
-        private void RefreshBuyShopLimitEvent()
+        private void RechargeCountEvent(int id)
         {
             UpdateRedpoint();
         }
@@ -133,7 +136,7 @@
         {
             for (int i = 0; i < gifts.Count; i++)
             {
-                if (!IsGiftExist(gifts[i].giftId))
+                if (!IsGiftExist(gifts[i].payType))
                 {
                     continue;
                 }
@@ -142,7 +145,7 @@
             return false;
         }
 
-        public bool IsGiftExist(int _id)
+        public bool IsGiftExist(int payType)
         {
             if (startSeconds == 0)
             {
@@ -150,7 +153,7 @@
             }
             var gift = gifts.Find((x) =>
             {
-                return x.giftId == _id;
+                return x.payType == payType;
             });
             if (!gift.Equals(default(SuperValueGift)))
             {
@@ -162,16 +165,35 @@
             return true;
         }
 
-        public bool IsGiftBuy(int _id)
+        public bool IsGiftBuy(int payType)
         {
-            var _limit = storeModel.GetBuyShopLimit((uint)_id);
-            var config = Config.Instance.Get<StoreConfig>(_id);
-            if (_limit != null && config != null
-                && _limit.BuyCnt >= config.PurchaseNumber[0])
+            var rechargeId = GetRechargeId(payType);
+            if (rechargeId != 0)
             {
-                return true;
+                VipModel.RechargeCount rechargeCount;
+                if (vipModel.TryGetRechargeCount(rechargeId, out rechargeCount))
+                {
+                    return rechargeCount.todayCount >= 1;
+                }
             }
             return false;
+        }
+
+        public int GetRechargeId(int payType)
+        {
+            var list = vipModel.GetCTGConfigs(VersionConfig.Get().appId);
+            if (list != null)
+            {
+                for (int i = 0; i < list.Count; i++)
+                {
+                    var config = Config.Instance.Get<CTGConfig>(list[i]);
+                    if (config != null && config.PayType == payType)
+                    {
+                        return config.RecordID;
+                    }
+                }
+            }
+            return 0;
         }
 
         public void SetAreadyOpens()
@@ -179,7 +201,7 @@
             alreadyOpens.Clear();
             for (int i = 0; i < gifts.Count; i++)
             {
-                if (IsGiftExist(gifts[i].giftId))
+                if (IsGiftExist(gifts[i].payType))
                 {
                     alreadyOpens.Add(i);
                 }
@@ -190,7 +212,7 @@
         {
             for (int i = 0; i < alreadyOpens.Count; i++)
             {
-                if (gifts[i].giftId == jumpGiftId)
+                if (gifts[i].payType == jumpGiftId)
                 {
                     jumpGiftId = 0;
                     return alreadyOpens[i];
@@ -230,7 +252,7 @@
             for (int i = 0; i < redpoints.Count; i++)
             {
                 redpoints[i].state = RedPointState.None;
-                if (IsGiftExist(gifts[i].giftId) && !IsGiftBuy(gifts[i].giftId)
+                if (IsGiftExist(gifts[i].payType) && !IsGiftBuy(gifts[i].payType)
                     && !GetDayRemind(i))
                 {
                     redpoints[i].state = RedPointState.Simple;
@@ -240,7 +262,7 @@
 
         public struct SuperValueGift
         {
-            public int giftId;
+            public int payType;
             public int openDays;
         }
     }
diff --git a/System/OpenServerActivity/OpenServerGiftWin.cs b/System/OpenServerActivity/OpenServerGiftWin.cs
index f9788a0..15e82e1 100644
--- a/System/OpenServerActivity/OpenServerGiftWin.cs
+++ b/System/OpenServerActivity/OpenServerGiftWin.cs
@@ -15,17 +15,14 @@
     public class OpenServerGiftWin : Window
     {
         [SerializeField] RectTransform m_ContainerDisplay;
-        [SerializeField] OSGiftBehaviour[] m_OSGifts;
+        [SerializeField] SuperValueGiftBehaviour[] m_OSGifts;
         [SerializeField] RectTransform m_ContainerTime;
         [SerializeField] Text m_Overdue;
         [SerializeField] Text m_Timer;
-        StoreModel m_Model;
-        StoreModel model
+
+        VipModel vipModel
         {
-            get
-            {
-                return m_Model ?? (m_Model = ModelCenter.Instance.GetModel<StoreModel>());
-            }
+            get { return ModelCenter.Instance.GetModel<VipModel>(); }
         }
 
         OSGiftModel giftModel { get { return ModelCenter.Instance.GetModel<OSGiftModel>(); } }
@@ -45,7 +42,6 @@
                 giftModel.selectIndex = giftModel.alreadyOpens[0];
             }
 
-            model.RefreshBuyShopLimitEvent += RefreshBuyShopLimitEvent;
             GlobalTimeEvent.Instance.secondEvent += SecondEvent;
             giftModel.onSelectUpdate += OnSelectUpdate;
             giftModel.jumpGiftId = 0;
@@ -58,7 +54,6 @@
 
         protected override void OnPreClose()
         {
-            model.RefreshBuyShopLimitEvent -= RefreshBuyShopLimitEvent;
             GlobalTimeEvent.Instance.secondEvent -= SecondEvent;
             giftModel.onSelectUpdate -= OnSelectUpdate;
         }
@@ -69,11 +64,6 @@
         #endregion
 
         private void OnSelectUpdate()
-        {
-            Display();
-        }
-
-        private void RefreshBuyShopLimitEvent()
         {
             Display();
         }
@@ -114,7 +104,8 @@
             {
                 if (giftModel.selectIndex == i)
                 {
-                    m_OSGifts[i].Display(giftModel.gifts[i].giftId);
+                    var rechargeId = giftModel.GetRechargeId(giftModel.gifts[i].payType);
+                    m_OSGifts[i].Display(rechargeId);
                     _index = i;
                     break;
                 }
diff --git a/System/OpenServerActivity/SuperValueGiftBehaviour.cs b/System/OpenServerActivity/SuperValueGiftBehaviour.cs
new file mode 100644
index 0000000..d9e6e03
--- /dev/null
+++ b/System/OpenServerActivity/SuperValueGiftBehaviour.cs
@@ -0,0 +1,134 @@
+锘縰sing System;
+using System.Collections;
+using System.Collections.Generic;
+using TableConfig;
+using UnityEngine;
+using UnityEngine.UI;
+
+namespace Snxxz.UI
+{
+    public class SuperValueGiftBehaviour : MonoBehaviour
+    {
+        [SerializeField] Text m_Cost;
+        [SerializeField] RareItem[] m_Items;
+        [SerializeField] Button m_Buy;
+        [SerializeField] Image m_AreadyBuySign;
+
+        OSGiftModel model
+        {
+            get { return ModelCenter.Instance.GetModel<OSGiftModel>(); }
+        }
+
+        VipModel vipModel
+        {
+            get { return ModelCenter.Instance.GetModel<VipModel>(); }
+        }
+
+        int rechargeId = 0;
+
+        private void Awake()
+        {
+            m_Buy.onClick.AddListener(Buy);
+            for (int i = 0; i < m_Items.Length; i++)
+            {
+                var _index = i;
+                m_Items[i].cellBtn.onClick.AddListener(() =>
+                {
+                    OnItemClick(_index);
+                });
+            }
+        }
+
+        private void OnEnable()
+        {
+            vipModel.rechargeCountEvent += RechargeCountEvent;
+        }
+
+        private void OnDisable()
+        {
+            vipModel.rechargeCountEvent -= RechargeCountEvent;
+        }
+
+        private void RechargeCountEvent(int id)
+        {
+            if (id == rechargeId)
+            {
+                Display(rechargeId);
+            }
+        }
+
+        private void OnItemClick(int index)
+        {
+            if (rechargeId != 0)
+            {
+                List<AwardItem> items;
+                if (vipModel.TryGetRechargeItem(rechargeId, out items))
+                {
+                    if (index < items.Count)
+                    {
+                        var item = items[index];
+                        ItemAttrData attrData = new ItemAttrData(item.item.id, false, (ulong)item.item.count, -1, item.isBind);
+                        ModelCenter.Instance.GetModel<ItemTipsModel>().SetItemTipsModel(attrData);
+                    }
+                }
+            }
+        }
+
+        private void Buy()
+        {
+            if (rechargeId != 0)
+            {
+                VipModel.RechargeCount rechargeCount;
+                if (vipModel.TryGetRechargeCount(rechargeId, out rechargeCount))
+                {
+                    if (rechargeCount.totalCount >= 1)
+                    {
+                        return;
+                    }
+                }
+                vipModel.CTG(rechargeId);
+            }
+        }
+
+        public void Display(int id)
+        {
+            rechargeId = id;
+            List<AwardItem> items;
+            bool hasItem = vipModel.TryGetRechargeItem(id, out items);
+            for (int i = 0; i < m_Items.Length; i++)
+            {
+                if (hasItem && i < items.Count)
+                {
+                    m_Items[i].gameObject.SetActive(true);
+                    var _item = items[i];
+                    var _itemModel = new ItemCellModel(_item.item.id, false, (ulong)_item.item.count, _item.isBind);
+                    m_Items[i].SetItemRare(_itemModel, i == 0);
+                }
+                else
+                {
+                    m_Items[i].gameObject.SetActive(false);
+                }
+            }
+
+            var config = Config.Instance.Get<CTGConfig>(id);
+            if (config != null)
+            {
+                OrderInfoConfig orderInfoConfig;
+                if (vipModel.TryGetOrderInfo(id, out orderInfoConfig))
+                {
+                    m_Cost.text = Language.Get("SuperValueGiftCost", orderInfoConfig.PayRMBNum);
+                }
+            }
+
+            VipModel.RechargeCount rechargeCount;
+            bool alreadyBuy = false;
+            if (vipModel.TryGetRechargeCount(id, out rechargeCount))
+            {
+                alreadyBuy = rechargeCount.totalCount >= 1;
+            }
+            m_Buy.gameObject.SetActive(!alreadyBuy);
+            m_AreadyBuySign.gameObject.SetActive(alreadyBuy);
+        }
+    }
+}
+
diff --git a/System/OpenServerActivity/SuperValueGiftBehaviour.cs.meta b/System/OpenServerActivity/SuperValueGiftBehaviour.cs.meta
new file mode 100644
index 0000000..250a738
--- /dev/null
+++ b/System/OpenServerActivity/SuperValueGiftBehaviour.cs.meta
@@ -0,0 +1,12 @@
+fileFormatVersion: 2
+guid: ef46f898686d46e42b85bc07d1062e36
+timeCreated: 1542854810
+licenseType: Pro
+MonoImporter:
+  serializedVersion: 2
+  defaultReferences: []
+  executionOrder: 0
+  icon: {instanceID: 0}
+  userData: 
+  assetBundleName: 
+  assetBundleVariant: 
diff --git a/System/Team/GroupDungeonChallengeProcessor.cs b/System/Team/GroupDungeonChallengeProcessor.cs
index 768b853..c894a5e 100644
--- a/System/Team/GroupDungeonChallengeProcessor.cs
+++ b/System/Team/GroupDungeonChallengeProcessor.cs
@@ -122,20 +122,10 @@
             }
             else
             {
-                if (_isAutoMatch)
+                bool iamCaptainer = ModelCenter.Instance.GetModel<TeamModel>().myTeam.iamCaptainer;
+                if (iamCaptainer)
                 {
-                    bool iamCaptainer = ModelCenter.Instance.GetModel<TeamModel>().myTeam.iamCaptainer;
-                    if (iamCaptainer)
-                    {
-                        dungeonModel.RequestChallangeDungeon(GeneralDefine.ruinsTranscriptMapId, main.LayerNumberNow);
-                    }
-                    
-                    //var dungeon = new Dungeon(GeneralDefine.ruinsTranscriptMapId, main.LayerNumberNow);
-                    //dungeonModel.GroupChallenge(dungeon);
-                }
-                else
-                {
-                    WindowCenter.Instance.Open<FloorChooseWin>();
+                    dungeonModel.RequestChallangeDungeon(GeneralDefine.ruinsTranscriptMapId, main.LayerNumberNow);
                 }
             }
 
diff --git a/System/Vip/VipModel.cs b/System/Vip/VipModel.cs
index 2e50b20..a28d2c7 100644
--- a/System/Vip/VipModel.cs
+++ b/System/Vip/VipModel.cs
@@ -396,29 +396,36 @@
 
         private void ParseCTGConfig()
         {
-            var _configs = Config.Instance.GetAllValues<OrderInfoConfig>();
+            var configs = Config.Instance.GetAllValues<OrderInfoConfig>();
             m_RechargeGainItemDict = new Dictionary<int, List<AwardItem>>();
-            for (int i = 0; i < _configs.Count; i++)
+            for (int i = 0; i < configs.Count; i++)
             {
-                if (_configs[i].CTGID == 0)
+                List<OrderInfoConfig> list;
+                if (!m_OrderInfoDict.TryGetValue(configs[i].AppId, out list))
+                {
+                    list = new List<OrderInfoConfig>();
+                    m_OrderInfoDict.Add(configs[i].AppId, list);
+                }
+                list.Add(configs[i]);
+                if (configs[i].CTGID == 0)
                 {
                     continue;
                 }
                 List<int> _list = null;
-                if (!m_CTGConfigDict.TryGetValue(_configs[i].AppId, out _list))
+                if (!m_CTGConfigDict.TryGetValue(configs[i].AppId, out _list))
                 {
                     _list = new List<int>();
-                    m_CTGConfigDict.Add(_configs[i].AppId, _list);
+                    m_CTGConfigDict.Add(configs[i].AppId, _list);
                 }
-                _list.Add(_configs[i].CTGID);
-                if (!m_RechargeGainItemDict.ContainsKey(_configs[i].CTGID))
+                _list.Add(configs[i].CTGID);
+                if (!m_RechargeGainItemDict.ContainsKey(configs[i].CTGID))
                 {
-                    var ctg = Config.Instance.Get<CTGConfig>(_configs[i].CTGID);
+                    var ctg = Config.Instance.Get<CTGConfig>(configs[i].CTGID);
                     var _itemArray = LitJson.JsonMapper.ToObject<int[][]>(ctg.GainItemList);
                     if (_itemArray != null && _itemArray.Length > 0)
                     {
                         var _itemList = new List<AwardItem>();
-                        m_RechargeGainItemDict.Add(_configs[i].CTGID, _itemList);
+                        m_RechargeGainItemDict.Add(configs[i].CTGID, _itemList);
                         for (int k = 0; k < _itemArray.Length; k++)
                         {
                             AwardItem _item = new AwardItem()
@@ -448,6 +455,11 @@
                 return m_CTGConfigDict[_appid];
             }
             return m_CTGConfigDict.Values.Last();
+        }
+
+        public bool TryGetRechargeItem(int id, out List<AwardItem> list)
+        {
+            return m_RechargeGainItemDict.TryGetValue(id, out list);
         }
 
         private Dictionary<int, List<AwardItem>> m_FirstChargeItemDict = new Dictionary<int, List<AwardItem>>();
@@ -708,6 +720,7 @@
         public Dictionary<int, int> firstRechargeWeapon { get; private set; }
         public Dictionary<int, List<AwardItem>> m_RechargeGainItemDict { get; private set; }
         private Dictionary<int, RechargeCount> m_RechargeCountDict = new Dictionary<int, RechargeCount>();
+        Dictionary<string, List<OrderInfoConfig>> m_OrderInfoDict = new Dictionary<string, List<OrderInfoConfig>>();
         public int presentSelectRechargeId { get; private set; }
         public bool beforeRecharge { get; private set; }
         private int beforeVipLv { get; set; }
@@ -720,14 +733,20 @@
         public bool TryGetOrderInfo(int _id, out OrderInfoConfig config)
         {
             config = null;
-            var configs = Config.Instance.GetAllValues<OrderInfoConfig>();
-            for (int i = 0; i < configs.Count; i++)
+            if (_id == 0)
             {
-                if (configs[i].AppId.Equals(VersionConfig.Get().appId)
-                    && configs[i].CTGID == _id)
+                return false;
+            }
+            List<OrderInfoConfig> list;
+            if (m_OrderInfoDict.TryGetValue(VersionConfig.Get().appId, out list))
+            {
+                for (int i = 0; i < list.Count; i++)
                 {
-                    config = configs[i];
-                    return true;
+                    if (list[i].CTGID == _id)
+                    {
+                        config = list[i];
+                        return true;
+                    }
                 }
             }
             return false;
@@ -767,9 +786,11 @@
             var ctgconfig = Config.Instance.Get<CTGConfig>(config.CTGID);
             if (!VersionConfig.Get().appId.Equals(config.AppId))
             {
-#if UNITY_EDITOR
-                MessageWin.Inst.ShowFixedTip("Appid涓嶅搴�...");
-#endif
+                return;
+            }
+            if (!FuncOpen.Instance.IsFuncOpen((int)FuncOpenEnum.Recharge))
+            {
+                FuncOpen.Instance.ProcessorFuncErrorTip((int)FuncOpenEnum.Recharge);
                 return;
             }
 

--
Gitblit v1.8.0