local PreProductionItemCtrl = class("PreProductionItemCtrl", BaseCtrl)
PreProductionItemCtrl._mapNodeConfig = {
	anAudioUI = {sNodeName = "btnGrid", sComponentName = "AkAudioUI"},
	goItem = {
		sCtrlName = "Game.UI.TemplateEx.TemplateItemCtrl"
	},
	txtProductionName = {sComponentName = "TMP_Text"},
	txtHave = {sComponentName = "TMP_Text"},
	txtHaveCount = {sComponentName = "TMP_Text"},
	goLock = {},
	imgSelect = {},
	txtLock = {sComponentName = "TMP_Text"}
}
PreProductionItemCtrl._mapEventConfig = {}
function PreProductionItemCtrl:SetData(tbProduction)
	self.nId = tbProduction.Id
	self.bUnlock = tbProduction.Unlock
	self._mapNode.goLock.gameObject:SetActive(not self.bUnlock)
	if not self.bUnlock then
		NovaAPI.SetTMPText(self._mapNode.txtLock, tbProduction.UnlockTip)
	end
	local nItemId = tbProduction.ShowProductionId == 0 and tbProduction.ProductionId or tbProduction.ShowProductionId
	local nCount = tbProduction.ShowProductionId == 0 and tbProduction.ProductionPerBatch or tbProduction.ShowProductionPerBatch
	if nCount <= 1 then
		nCount = nil
	end
	self._mapNode.goItem:SetItem(nItemId, nil, nCount)
	NovaAPI.SetTMPText(self._mapNode.txtProductionName, tbProduction.Name)
	local hasCount = PlayerData.Item:GetItemCountByID(nItemId)
	NovaAPI.SetTMPText(self._mapNode.txtHaveCount, hasCount)
	self:SetSelect(false)
	local sAudioEvent = self.bUnlock and "ui_common_slide" or "ui_systerm_locked"
	self._mapNode.anAudioUI:SetAkAudioWiseEventName(sAudioEvent)
end
function PreProductionItemCtrl:SetSelect(bSelect)
	self.bSelect = bSelect
	self._mapNode.imgSelect.gameObject:SetActive(self.bSelect)
end
function PreProductionItemCtrl:OnSelectItem(nId)
	self:SetSelect(nId == self.nId)
end
return PreProductionItemCtrl
