|
--[[@------------------------------------------------------------------
|
|
@description:首充附加item
|
|
@author:huangcong
|
|
----------------------------------------------------------------------]]
|
|
RechargeAddItem = RechargeAddItem or BaseClass(BaseItem)
|
|
|
|
RechargeAddItem.Width = 891
|
|
RechargeAddItem.Height = 105
|
|
local RechargeAddItem = RechargeAddItem
|
|
function RechargeAddItem:__init()
|
|
self.base_file = "rechargeActivity"
|
|
self.layout_file = "RechargeAddItem"
|
|
self.model = RechargeActivityModel:getInstance()
|
|
self.need_red = false
|
|
self.item_list = {}
|
|
|
|
self:Load()
|
|
end
|
|
|
|
function RechargeAddItem:Load_callback()
|
|
local nodes = {
|
|
"redDot:obj", "descText:tmp", "awardScroll/Viewport/awardCon", "nameText:tmp",
|
|
"getBtnText:tmp", "awardScroll:scroll", "getBtn:obj:img", "descTitleText:tmp", "getImg:obj",
|
|
}
|
|
self:GetChildren(nodes)
|
|
self.descTitleText_tmp.text = "累计返利"
|
|
self:InitEvent()
|
|
if self.need_refreshData then
|
|
self:SetData(self.data,self.index)
|
|
end
|
|
end
|
|
|
|
function RechargeAddItem:__delete()
|
|
for k,v in pairs(self.item_list) do
|
|
UIObjPool:getInstance():PushItem(UIObjPool.UIType.AwardItem, v)
|
|
end
|
|
self.item_list = {}
|
|
end
|
|
|
|
function RechargeAddItem:InitEvent()
|
|
local function clickHandler(target)
|
|
if target == self.getBtn_obj then
|
|
if self.data then
|
|
if self.data.state == 1 then
|
|
self.model:Fire(RechargeActivityModel.REQUEST_CCMD_EVENT, 15906, self.data.index, self.data.product_id)
|
|
elseif self.data.state == 2 then
|
|
Message.show("奖励已领取!","fault")
|
|
elseif self.data.state == 3 then
|
|
Message.show("明日可以来领取礼包哦!","fault")
|
|
else
|
|
OpenFun.Open(450,1)
|
|
end
|
|
end
|
|
end
|
|
end
|
|
AddClickEvent(self.getBtn_obj, clickHandler, 1)
|
|
end
|
|
|
|
function RechargeAddItem:SetData(data,index)
|
|
self.data = data or self.data
|
|
self.index = index or self.index
|
|
if self.is_loaded then
|
|
self.need_refreshData = false
|
|
else
|
|
self.need_refreshData = true
|
|
return
|
|
end
|
|
if not self.data then return end
|
|
local btn_str = "激活立领"
|
|
local size = 18
|
|
local material = ShaderTools.TMPSharedMaterialType.FZZZDefault
|
|
if self.data.state == 2 then--已领取
|
|
btn_str = ""
|
|
elseif self.data.state == 1 then--可领取
|
|
btn_str = "立即领取"
|
|
size = 22
|
|
material = ShaderTools.TMPSharedMaterialType.FZZZOutlineDarkOrangeBtn
|
|
elseif self.data.state == 0 then--待领取
|
|
btn_str = "待领取"
|
|
elseif self.data.state == 3 then--明日可领
|
|
btn_str = "明日可领"
|
|
else
|
|
size = 22
|
|
material = ShaderTools.TMPSharedMaterialType.FZZZOutlineDarkOrangeBtn
|
|
end
|
|
self.getBtnText_tmp.fontSize = size
|
|
SetTMPSharedMaterial(self.getBtnText_tmp, material)
|
|
-- SetImageGray(self.getBtn_img,self.data.state == 2)
|
|
self.getBtn_obj:SetActive(self.data.state == 1 or self.data.state == 5)
|
|
self.getImg_obj:SetActive(self.data.state == 2)
|
|
self.getBtnText_tmp.text = btn_str--次日可领--待领取--已领取
|
|
self.nameText_tmp.text = string.format("第%s天",self.data.index)
|
|
self.descText_tmp.text = self.data.title
|
|
self.redDot_obj:SetActive(self.data.state == 1)
|
|
self:UpdateAwardItemList()
|
|
end
|
|
|
|
--奖励item列表
|
|
function RechargeAddItem:UpdateAwardItemList()--更新一个item奖励列表
|
|
for k,v in pairs(self.item_list) do
|
|
v:SetVisible(false)
|
|
end
|
|
local item_list = self.data.reward
|
|
if not item_list or TableSize(item_list) == 0 then return end
|
|
local offer_x = 9
|
|
local offer_y = 0
|
|
local x = 0
|
|
local y = 0
|
|
for i, v in ipairs(item_list) do
|
|
local item = self.item_list[i]
|
|
if item == nil then
|
|
item = UIObjPool:getInstance():PopItem(UIObjPool.UIType.AwardItem,self.awardCon)
|
|
item:SetItemSize(62,62)
|
|
item:SetIsAct(true)
|
|
self.item_list[i] = item
|
|
end
|
|
y = -2
|
|
x = (62+offer_x) * (i-1) + 3
|
|
item:SetPosition(x,y)
|
|
local goods_Id, lock = GoodsModel:getInstance():GetMappingTypeId(v[1], v[2])
|
|
local goodVo = GoodsModel:getInstance():GetGoodsBasicByTypeId(goods_Id)
|
|
if goodVo then
|
|
item:SetData(goods_Id, v[3] , goodVo.color, 0, lock,true,nil)
|
|
else
|
|
-- error("没有找到物品信息 "..v.typeId)
|
|
end
|
|
item:SetVisible(true)
|
|
end
|
|
local len = #item_list
|
|
local all_width = len * (62 + offer_x) + 12
|
|
SetSizeDeltaX(self.awardCon, all_width)
|
|
self.awardScroll_scroll.enabled = len >= 6
|
|
end
|