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/Vip/VipModel.cs |   57 +++++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 39 insertions(+), 18 deletions(-)

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