Files
tianrunCRM/Assets/trCRM/upgradeRes4Dev/priority/lua/ui/panel/CSPTasks.lua
2020-07-28 21:02:59 +08:00

186 lines
5.7 KiB
Lua
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

-- xx界面
local CSPTasks = {}
local csSelf = nil
local transform = nil
CSPTasks.sizeAdjust = 1
CSPTasks.contentRect = Vector4.zero
local uiobjs = {}
local headData = {}
-- 初始化,只会调用一次
function CSPTasks.init(csObj)
csSelf = csObj
transform = csObj.transform
CSPTasks.setEventDelegate()
CSPTasks.contentRect = MyUtl.getUIContent(csSelf, 360+220)
uiobjs.Content = getCC(transform, "PanelContent", "UIPanel")
uiobjs.Content.transform.localPosition = Vector3.zero
uiobjs.Content.clipOffset = Vector2.zero
uiobjs.Content.baseClipRegion = CSPTasks.contentRect
uiobjs.TableContent = getCC(uiobjs.Content.transform, "Table", "UITable")
---@type UIToggle
uiobjs.ToggleCust = getCC(uiobjs.TableContent.transform, "Statistics/grid/ToggleCust", "UIToggle")
uiobjs.Statistics = getChild(uiobjs.TableContent.transform, "Statistics")
---@type UIScrollView
uiobjs.scrollView = uiobjs.Content:GetComponent("UIScrollView")
---@type CLUIFormRoot
uiobjs.Top = getCC(transform, "Top", "CLUIFormRoot")
---@type UITexture
uiobjs.HeadIcon = getCC(uiobjs.Top.transform, "SpriteHeadBg/SpriteHeadIcon", "UITexture")
end
-- 设置数据
function CSPTasks.setData(paras)
-- 初始化顶部数据
local currGroup = Prefs.getCurrGroup(Prefs.getUserName())
local companyInfro = json.decode(currGroup)
local user = DBUser.getUserById(companyInfro.login_no)
headData.company_id = companyInfro.company_id
headData.company_name = companyInfro.company_name
if user then
headData.loginNo = user.loginNo
headData.loginName = user.loginName
headData.imageUrl = user.imageUrl
else
printe("账号信息未取得!")
end
-- 取得头像
NetProto.send.person_view_query()
NetProto.send.sales_view_query()
end
-- 显示在c#中。show为调用refreshshow和refresh的区别在于当页面已经显示了的情况当页面再次出现在最上层时只会调用refresh
function CSPTasks.show()
local list = {}
for i = 1, 100 do
list[i] = i
end
-- uiobjs.TableTask:setList(list, nil)
uiobjs.ToggleCust:Set(true)
CSPTasks.showReportform("reportform1")
uiobjs.scrollView:ResetPosition()
end
function CSPTasks.onClickBottonBtn(cell)
end
-- 刷新
function CSPTasks.refresh()
CSPTasks.setHeadInfor()
end
function CSPTasks.setHeadInfor()
uiobjs.Top:setValue(headData)
DBUser.getIcon(
headData.loginNo,
function(content)
uiobjs.HeadIcon.mainTexture = content
end
)
end
-- 关闭页面
function CSPTasks.hide()
if CSPTasks.reportform then
CLUIOtherObjPool.returnObj(CSPTasks.reportform.gameObject)
SetActive(CSPTasks.reportform.gameObject, false)
CSPTasks.reportform = nil
end
end
-- 网络请求的回调cmd指命succ成功失败msg消息paras服务器下行数据
function CSPTasks.procNetwork(cmd, succ, msg, paras)
if (succ == NetSuccess) then
if cmd == NetProto.cmds.person_view_query then
for k, v in pairs(paras.result) do
headData[k] = v
end
CSPTasks.setHeadInfor()
elseif cmd == NetProto.cmds.sales_view_query then
for k, v in pairs(paras.result) do
headData[k] = v
end
CSPTasks.setHeadInfor()
end
end
end
function CSPTasks.returnReportform()
end
function CSPTasks.showReportform(prefabName)
if CSPTasks.reportform and CSPTasks.reportform.name ~= prefabName then
CLUIOtherObjPool.returnObj(CSPTasks.reportform.gameObject)
SetActive(CSPTasks.reportform.gameObject, false)
CSPTasks.reportform = nil
end
if CSPTasks.reportform then
CSPTasks.reportform:init({}, nil)
else
CLUIOtherObjPool.borrowObjAsyn(
prefabName,
function(name, go, orgs)
CSPTasks.reportform = go:GetComponent("CLCellLua")
go.transform.parent = uiobjs.Statistics
go.transform.localPosition = Vector3(0, -465, 0)
go.transform.localScale = Vector3.one
go.transform.localEulerAngles = Vector3.zero
SetActive(go, true)
CSPTasks.reportform:init({}, nil)
end
)
end
end
function CSPTasks.setEventDelegate()
CSPTasks.EventDelegate = {
ToggleCust = function()
CSPTasks.showReportform("reportform1")
end,
ToggleOrder = function()
CSPTasks.showReportform("reportform2")
end,
ToggleTarget = function()
CSPTasks.showReportform("reportform3")
end,
ButtonCusts = function()
getPanelAsy("PanelCustList", onLoadedPanelTT)
end,
ButtonRecord = function()
getPanelAsy("PanelFollowList", onLoadedPanelTT)
end,
ButtonCustOcean = function()
getPanelAsy("PanelOceanList", onLoadedPanelTT)
end,
ButtonOrder = function()
getPanelAsy("PanelOrderList", onLoadedPanelTT)
end,
ButtonGoods = function()
getPanelAsy("PanelProductList", onLoadedPanelTT)
end,
}
end
-- 处理ui上的事件例如点击等
function CSPTasks.uiEventDelegate(go)
local func = CSPTasks.EventDelegate[go.name]
if func then
func()
end
end
-- 当按了返回键时关闭自己返值为true时关闭
function CSPTasks.hideSelfOnKeyBack()
return false
end
--------------------------------------------
return CSPTasks