//--------------------------------------------------------
|
// [Author]: 第二世界
|
// [ Date ]: Wednesday, September 26, 2018
|
//--------------------------------------------------------
|
using UnityEngine;
|
using System.Collections;
|
using UnityEngine.UI;
|
using System.Collections.Generic;
|
|
|
namespace vnxbqy.UI {
|
|
public class LoginActCell : CellView {
|
[SerializeField] Text m_Day;//天数
|
[SerializeField] List<ItemCell> itemCells;
|
[SerializeField] Button getGiftBtn;
|
[SerializeField] Image gotYetImg;
|
[SerializeField] Button reSignBtn;
|
[SerializeField] Text waitSignText;
|
|
LoginActModel model { get { return ModelCenter.Instance.GetModel<LoginActModel>(); } }
|
|
|
public void Display(int index)
|
{
|
OperationLoginAct holiday;
|
OperationTimeHepler.Instance.TryGetOperation(LoginActModel.operaType, out holiday);
|
|
m_Day.text = Language.Get("loginact3", holiday.loginAwards[index].DayNum);
|
var awards = holiday.loginAwards[index].AwardItemList;
|
for (int i = 0; i < itemCells.Count; i++)
|
{
|
if (i < awards.Length)
|
{
|
var award = awards[i];
|
itemCells[i].SetActive(true);
|
var itemData = new ItemCellModel((int)award.ItemID, false, award.ItemCount);
|
itemCells[i].Init(itemData);
|
itemCells[i].button.SetListener(() =>
|
{
|
ItemTipUtility.Show((int)award.ItemID);
|
});
|
}
|
else
|
{
|
itemCells[i].SetActive(false);
|
}
|
}
|
int dayNum = holiday.loginAwards[index].DayNum;
|
var state = model.GetLoginAwardState(dayNum);
|
waitSignText.SetActive(state == 0);
|
getGiftBtn.SetActive(state == 1);
|
getGiftBtn.SetListener(() =>
|
{
|
model.SendGetAward(dayNum);
|
});
|
gotYetImg.SetActive(state == 2);
|
reSignBtn.SetActive(state == 3);
|
reSignBtn.SetListener(() =>
|
{
|
|
ConfirmCancel.ShowPopConfirm(Language.Get("Mail101"),
|
Language.Get("loginact2", holiday.costValue + RichTextMsgReplaceConfig.GetRichReplace("MONEY", holiday.costType)), (bool isOk) =>
|
{
|
if (isOk)
|
{
|
if (UIHelper.GetMoneyCnt(holiday.costType) < (ulong)holiday.costValue)
|
{
|
SysNotifyMgr.Instance.ShowTip("LackMoney", holiday.costType);
|
if (holiday.costType == 1)
|
{
|
WindowCenter.Instance.Open<RechargeTipWin>();
|
}
|
return;
|
}
|
model.SendGetAward(dayNum);
|
}
|
|
});
|
|
});
|
}
|
}
|
|
}
|