using Snxxz.UI;
|
using System.Collections;
|
using System.Collections.Generic;
|
using TableConfig;
|
using UnityEngine;
|
using UnityEngine.UI;
|
|
namespace EnhancedUI.EnhancedScroller
|
{
|
public class MarketRecordCell : ScrollerUI
|
{
|
[SerializeField] Image m_ItemIcon;
|
[SerializeField] Image m_ItemBG;
|
[SerializeField] Image m_ItemUp;
|
[SerializeField] List<GameObject> m_Stars;
|
[SerializeField] Text m_ItemCntTxt;
|
[SerializeField] Text m_ItemNameTxt;
|
[SerializeField] Text m_DealTypeTxt;
|
[SerializeField] Text m_DealTimeTxt;
|
[SerializeField] Text m_DealTaxTxt;
|
[SerializeField] Text m_DealIncomeTxt;
|
[SerializeField] Text m_ItemLevelTxt;
|
[SerializeField] Button m_ItemBtn;
|
|
ItemTipsModel _itemTipsModel;
|
ItemTipsModel itemTipsModel
|
{
|
get
|
{
|
return _itemTipsModel ?? (_itemTipsModel = ModelCenter.Instance.GetModel<ItemTipsModel>());
|
}
|
}
|
|
PackModelInterface _modelInterface;
|
PackModelInterface modelInterface
|
{
|
get { return _modelInterface ?? (_modelInterface = ModelCenter.Instance.GetModel<PackModelInterface>()); }
|
}
|
|
public override void Refresh(CellView cell)
|
{
|
int index = cell.index;
|
if (index >= PlayerDatas.Instance.market.dealRecordList.Count)
|
{
|
return;
|
}
|
var _data = PlayerDatas.Instance.market.dealRecordList[index];
|
m_DealTimeTxt.text = TimeUtility.GetTime(_data.Timestamp).ToString("yyyy-MM-dd HH:mm:ss");
|
m_DealTypeTxt.text = _data.Type == 0 ? Language.Get("Market_Text_31") : Language.Get("Market_Text_32");
|
m_DealIncomeTxt.text = (_data.Type == 0 ? "-" : "") + _data.TradeMoney.ToString();
|
m_DealIncomeTxt.color = _data.Type == 0 ? UIHelper.GetUIColor(TextColType.Red) :
|
UIHelper.GetUIColor(TextColType.NavyBrown);
|
m_DealTaxTxt.text = _data.Type == 0 ? Language.Get("Market_Text_33") : _data.TradeTax.ToString();
|
m_ItemLevelTxt.gameObject.SetActive(false);
|
m_ItemBtn.onClick.RemoveAllListeners();
|
if (_data.itemdata != null)
|
{
|
var _itemCfg = Config.Instance.Get<ItemConfig>(_data.itemdata.itemID);
|
for (int j = 0; j < m_Stars.Count; j++)
|
{
|
m_Stars[j].SetActive(j < _itemCfg.StarLevel);
|
}
|
m_ItemIcon.SetSprite(_itemCfg.IconKey);
|
m_ItemUp.gameObject.SetActive(true);
|
int fightUp = modelInterface.IsFightUp((int)_data.itemdata.itemID, (int)_data.itemdata.equipGS);
|
if (fightUp == 1)
|
{
|
m_ItemUp.SetSprite("EquipUpIcon");
|
}
|
else if (fightUp == -1)
|
{
|
m_ItemUp.SetSprite("EquipDownIcon");
|
}
|
else
|
{
|
m_ItemUp.gameObject.SetActive(false);
|
}
|
m_ItemCntTxt.gameObject.SetActive(_data.itemdata.count > 1);
|
m_ItemCntTxt.text = _data.itemdata.count.ToString();
|
m_ItemNameTxt.text = _itemCfg.ItemName;
|
var _itemColor = _itemCfg.ItemColor;
|
if (_itemCfg.Type == 111)
|
{
|
_itemColor = UIHelper.GetItemColor(_data.itemdata.itemID, ConfigParse.Analysis(_data.itemdata.userData));
|
}
|
m_ItemBG.SetItemBackGround(_itemColor);
|
bool _bright = (m_ItemNameTxt is RichText) ? (m_ItemNameTxt as RichText).colorType == RichText.ColorType.Bright : true;
|
m_ItemNameTxt.color = UIHelper.GetUIColor(_itemColor, _bright);
|
if (_itemCfg.Type >= 101 && _itemCfg.Type < 110)
|
{
|
m_ItemLevelTxt.gameObject.SetActive(true);
|
m_ItemLevelTxt.text = Language.Get("Market_Text_30") + _itemCfg.LV;
|
}
|
m_ItemBtn.onClick.AddListener(() =>
|
{
|
OnClickItem(_data);
|
});
|
}
|
}
|
|
private void OnClickItem(MarketDealRecordData data)
|
{
|
ItemAttrData attrData = new ItemAttrData(data.itemdata.itemID, false, (ulong)data.itemdata.count, -1, 0,
|
false, PackType.rptDeleted, "", ConfigParse.Analysis(data.itemdata.userData));
|
itemTipsModel.SetItemTipsModel(attrData);
|
}
|
}
|
}
|
|