From f293a7484f17baf6c6b156f4e5a719a532fbe1fc Mon Sep 17 00:00:00 2001
From: Client_PangDeRong <593317293@qq.com>
Date: 星期二, 18 九月 2018 17:01:04 +0800
Subject: [PATCH] 1559 兑换码开发

---
 System/Welfare/ExchangeGetItemWin.cs |   71 ++++++++++++++---------------------
 1 files changed, 28 insertions(+), 43 deletions(-)

diff --git a/System/Welfare/ExchangeGetItemWin.cs b/System/Welfare/ExchangeGetItemWin.cs
index 0cdd4f1..a5a5bff 100644
--- a/System/Welfare/ExchangeGetItemWin.cs
+++ b/System/Welfare/ExchangeGetItemWin.cs
@@ -6,37 +6,31 @@
 {
     public class ExchangeGetItemWin : Window
     {
-        [SerializeField] GameObject getItemObj;
-        [SerializeField] RectTransform getItemParent;
         [SerializeField] Button sureBtn;
+        [SerializeField] List<CommonItemBaisc> itemBaiscs = new List<CommonItemBaisc>();
 
-        List<GameObject> GetItemlist = new List<GameObject>();
-        AwardExchangeModel exchange { get { return ModelCenter.Instance.GetModel<AwardExchangeModel>(); } }
+        AwardExchangeModel exchangeModel { get { return ModelCenter.Instance.GetModel<AwardExchangeModel>(); } }
         ItemTipsModel tipsModel { get { return ModelCenter.Instance.GetModel<ItemTipsModel>(); } }
-
         protected override void BindController()
         {
 
         }
-
         protected override void AddListeners()
         {
             sureBtn.AddListener(CloseClick);
         }
-
         protected override void OnPreOpen()
         {
-            getItemObj.SetActive(false);
-            CreateGetItem();
+            SetDisplayModel();
         }
         protected override void OnAfterOpen()
         {
-            
+            transform.SetAsLastSibling();
         }
 
         protected override void OnPreClose()
         {
-            DestroyGetItemlist();
+            exchangeModel.ClearAwardExchangeModel();
         }
 
         protected override void OnAfterClose()
@@ -44,42 +38,33 @@
 
         }
 
-        private void CreateGetItem()
+        private void SetDisplayModel()
         {
-            GetItemlist.Clear();
-            if (exchange.getItems == null) return;
+            if (exchangeModel == null) return;
 
-            for (int i = 0; i < exchange.getItems.Length; i++)
+            for(int i = 0; i < itemBaiscs.Count; i++)
             {
-                GameObject item = Instantiate(getItemObj);
-                PlayerPackModel.DecomposeGetMatInfo  matInfo = exchange.getItems[i];
-                item.transform.SetParent(getItemParent);
-                item.transform.localPosition = Vector3.zero;
-                item.transform.localScale = Vector3.one;
-                item.name = StringUtility.Contact("getItem",i);
-                item.gameObject.SetActive(true);
-                CommonItemBaisc itemBasic = item.transform.Find("CommonItemCell").GetComponent<CommonItemBaisc>();
-                ItemCellModel cellModel = new ItemCellModel(matInfo.ItemID, false, (ulong)matInfo.Count, matInfo.IsBind,
-                    "", PackType.rptDeleted, false, ConfigParse.Analysis(matInfo.UserData));
-                itemBasic.Init(cellModel);
-                itemBasic.cellBtn.RemoveAllListeners();
-                itemBasic.cellBtn.AddListener(() =>
+                if(i < exchangeModel.getItems.Length)
                 {
-                    ItemAttrData attrData = new ItemAttrData(matInfo.ItemID, false, (ulong)matInfo.Count, -1, matInfo.IsBind,
-                        false, PackType.rptDeleted, "", ConfigParse.Analysis(matInfo.UserData));
-                    tipsModel.SetItemTipsModel(attrData);
-
-                });
-                itemBasic.gameObject.SetActive(true);
-                GetItemlist.Add(item);
-            }
-        }
-
-        private void DestroyGetItemlist()
-        {
-            for (int i = 0; i < GetItemlist.Count; i++)
-            {
-                Destroy(GetItemlist[i]);
+                    MailItemModel itemModel = exchangeModel.getItems[i];
+                    itemBaiscs[i].gameObject.SetActive(true);
+                    ItemCellModel cellModel = new ItemCellModel((int)itemModel.ItemID,false
+                        ,(ulong)itemModel.Count, itemModel.IsBind,"",PackType.rptDeleted,
+                        false,ConfigParse.Analysis(itemModel.UserData));
+                    itemBaiscs[i].Init(cellModel);
+                    itemBaiscs[i].cellBtn.RemoveAllListeners();
+                    itemBaiscs[i].cellBtn.AddListener(()=>
+                    {
+                        ItemAttrData attrData = new ItemAttrData((int)itemModel.ItemID, false
+                        , (ulong)itemModel.Count,-1,itemModel.IsBind,false, PackType.rptDeleted,
+                        "", ConfigParse.Analysis(itemModel.UserData));
+                        tipsModel.SetItemTipsModel(attrData);
+                    });
+                }
+                else
+                {
+                    itemBaiscs[i].gameObject.SetActive(false);
+                }
             }
         }
 

--
Gitblit v1.8.0