From c0e4f8ce949b7f69523e19edc5ebee41a9c8faab Mon Sep 17 00:00:00 2001
From: 1076390229 <1076390229@qq.com>
Date: Mon, 28 Jul 2025 21:44:23 +0800
Subject: [PATCH] =?UTF-8?q?=E7=94=B3=E8=AF=B7=E6=B6=88=E6=81=AF=E6=95=B4?=
=?UTF-8?q?=E7=90=86?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../Game/View/Common/BaseWindow.lua | 8 ++
.../Game/View/Family/FamilyAuditNumber.lua | 79 ++++++++++--------
.../Game/View/Family/FamilyEventView.lua | 12 ++-
.../base_project/Game/View/FamilyView.lua | 8 +-
wb_new_ui/assets/Family/Main.xml | 24 +-----
wb_new_ui/assets/Family/package.xml | 1 +
.../ART/base/Family/ui/Family_fui.bytes | Bin 119690 -> 120035 bytes
7 files changed, 67 insertions(+), 65 deletions(-)
diff --git a/lua_probject/base_project/Game/View/Common/BaseWindow.lua b/lua_probject/base_project/Game/View/Common/BaseWindow.lua
index 260c51a1..41a41df6 100644
--- a/lua_probject/base_project/Game/View/Common/BaseWindow.lua
+++ b/lua_probject/base_project/Game/View/Common/BaseWindow.lua
@@ -263,3 +263,11 @@ function BaseWindow.DestroyAll()
WindowQueue = {}
WindowMap = {}
end
+
+function BaseWindow.FindWindow(viewName)
+ for _, view in pairs(WindowQueue) do
+ if view.class == viewName then
+ return view
+ end
+ end
+end
\ No newline at end of file
diff --git a/lua_probject/base_project/Game/View/Family/FamilyAuditNumber.lua b/lua_probject/base_project/Game/View/Family/FamilyAuditNumber.lua
index 44e109b6..919d48a6 100644
--- a/lua_probject/base_project/Game/View/Family/FamilyAuditNumber.lua
+++ b/lua_probject/base_project/Game/View/Family/FamilyAuditNumber.lua
@@ -1,10 +1,7 @@
---local NumberRemark = import(".FamilyNumberRemark")
local GroupSetTagView = import("..NewGroup.GroupSetTagView")
local FamilyAuditNumber = {}
-local M = FamilyAuditNumber
-
local function AddItem(self, index, obj)
local group = DataManager.groups:get(self._group.id)
local info = group.joinsData[index + 1]
@@ -23,40 +20,63 @@ local function AddItem(self, index, obj)
end
function FamilyAuditNumber.new(root)
- setmetatable(M, { __index = root })
- local self = setmetatable({}, { __index = M })
-
- local list = self._view:GetChild('list_auditNumberList')
- --list:RemoveChildrenToPool()
- --list:SetVirtual()
- list.itemRenderer = function(index, obj)
- AddItem(self, index, obj)
- end
-
+ setmetatable(FamilyAuditNumber, { __index = BaseView })
+ local self = setmetatable({}, { __index = FamilyAuditNumber })
+ self.class = "FamilyAuditNumber"
+ self._scale = true
+ self._animation = false
+ self:init("ui://Family/com_auditNumber")
return self
end
-function M:Reflash()
- local list = self._view:GetChild('list_auditNumberList')
- local group = DataManager.groups:get(self._group.id)
- list.numItems = #group.joinsData
+function FamilyAuditNumber:init(url)
+ BaseView.InitView(self, url)
+
+ self.btn_close = self._view:GetChild("btn_close")
+ self.list_auditNumberList = self._view:GetChild("list_auditNumberList")
+
+ self.list_auditNumberList = self._view:GetChild('list_auditNumberList')
+
+ self.btn_close.onClick:Set(function()
+ self:Close()
+ end)
+
+ self.list_auditNumberList.itemRenderer = function(index, obj)
+ AddItem(self, index, obj)
+ end
end
-function M:Show()
+function FamilyAuditNumber:Reflash()
+ local group = DataManager.groups:get(self._group.id)
+ self.list_auditNumberList.numItems = #group.joinsData
+end
+
+function FamilyAuditNumber:Show(group)
+ self._group = group
local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_GroupJoins(self._group.id, function(res)
if res.ReturnCode ~= 0 then
ViewUtil.ErrorTip(res.ReturnCode, "获取成员列表失败")
return
else
- --self.data[self._group.id] = res.Data.joins
- self.familyType.selectedIndex = 6
self:Reflash()
end
end)
+
+ local mgr_ctr = ControllerManager.GetController(GroupMgrController)
+ mgr_ctr:AddEventListener(GroupMgrEvent.OnNewApply, handler(self, self.OnNewApply))
+
+ BaseView.Show(self)
end
-function M:ClickBtn(isAllow, uid)
+function FamilyAuditNumber:Close()
+ local mgr_ctr = ControllerManager.GetController(GroupMgrController)
+ mgr_ctr:RemoveEventListener(GroupMgrEvent.OnNewApply, handler(self, self.OnNewApply))
+
+ BaseView.Close(self)
+end
+
+function FamilyAuditNumber:ClickBtn(isAllow, uid)
local fgCtr = ControllerManager.GetController(NewGroupController)
fgCtr:FG_GroupVerifyJoin(self._group.id, uid, isAllow == 1, function(res)
if res.ReturnCode ~= 0 then
@@ -76,24 +96,11 @@ function M:ClickBtn(isAllow, uid)
end)
end
-function M:OnNewApply(arg)
+function FamilyAuditNumber:OnNewApply(arg)
local group = DataManager.groups:get(self._group.id)
-
- --[[
- arg = arg[1]
-
- local msg = {}
- msg.nick = arg.nick
- msg.id = arg.uid
- msg.portrait = arg.portrait
- msg.tag = arg.remark
- local groupInfo = self.data[self._group.id]
- groupInfo[#groupInfo + 1] = msg
- ]]
-
local list = self._view:GetChild('list_auditNumberList')
local obj = list:AddItemFromPool()
AddItem(self, #group.joinsData - 1, obj)
end
-return M
+return FamilyAuditNumber
diff --git a/lua_probject/base_project/Game/View/Family/FamilyEventView.lua b/lua_probject/base_project/Game/View/Family/FamilyEventView.lua
index 55c1209d..a7390d6e 100644
--- a/lua_probject/base_project/Game/View/Family/FamilyEventView.lua
+++ b/lua_probject/base_project/Game/View/Family/FamilyEventView.lua
@@ -23,7 +23,7 @@ function FamilyEventView.new(root)
mgr_ctr:AddEventListener(GroupMgrEvent.InviteResponse, handler(self, self._evtInviteResponse))
mgr_ctr:AddEventListener(GroupMgrEvent.IsOpenChatRoom, handler(self, self._evtIsOpenChatRoom))
mgr_ctr:AddEventListener(GroupMgrEvent.ChatRoomData, handler(self, self._evtChatRoomData))
- mgr_ctr:AddEventListener(GroupMgrEvent.OnNewApply, handler(self, self._evtOnNewApply))
+ --mgr_ctr:AddEventListener(GroupMgrEvent.OnNewApply, handler(self, self._evtOnNewApply))
mgr_ctr:AddEventListener(GroupMgrEvent.OnNewRecord, handler(self, self._evtOnNewRecord))
mgr_ctr:AddEventListener(GroupMgrEvent.Onpush_assistant, handler(self, self._evtOnPush_assistant))
mgr_ctr:AddEventListener(GroupMgrEvent.OnMemberState, handler(self, self._evtOnMemberState))
@@ -49,7 +49,7 @@ function M:RemoveAll()
mgr_ctr:RemoveEventListener(GroupMgrEvent.InviteResponse, handler(self, self._evtInviteResponse))
mgr_ctr:RemoveEventListener(GroupMgrEvent.IsOpenChatRoom, handler(self, self._evtIsOpenChatRoom))
mgr_ctr:RemoveEventListener(GroupMgrEvent.ChatRoomData, handler(self, self._evtChatRoomData))
- mgr_ctr:RemoveEventListener(GroupMgrEvent.OnNewApply, handler(self, self._evtOnNewApply))
+ --mgr_ctr:RemoveEventListener(GroupMgrEvent.OnNewApply, handler(self, self._evtOnNewApply))
mgr_ctr:RemoveEventListener(GroupMgrEvent.OnNewRecord, handler(self, self._evtOnNewRecord))
mgr_ctr:RemoveEventListener(GroupMgrEvent.Onpush_assistant, handler(self, self._evtOnPush_assistant))
mgr_ctr:RemoveEventListener(GroupMgrEvent.OnMemberState, handler(self, self._evtOnMemberState))
@@ -139,6 +139,7 @@ function M:_evtNewMailTip(...)
print("family event _evtNewMailTip")
end
+--[[
function M:_evtOnNewApply(...)
print("_evtOnNewApply")
local arg = { ... }
@@ -151,6 +152,7 @@ function M:_evtOnNewApply(...)
view:ChangeOther()
self._child_familyAuditNumber:OnNewApply(arg)
end
+]]
function M:_evtInviteResponse(...)
local arg = { ... }
@@ -310,7 +312,11 @@ function M:_evtOnFamilyReflash(...)
end
view:ChangeOther()
- view._child_familyAuditNumber:Reflash()
+
+ local win = BaseWindow.FindWindow("FamilyAuditNumber")
+ if win then
+ win:Reflash()
+ end
end
end
diff --git a/lua_probject/base_project/Game/View/FamilyView.lua b/lua_probject/base_project/Game/View/FamilyView.lua
index 10da066f..e6e35134 100644
--- a/lua_probject/base_project/Game/View/FamilyView.lua
+++ b/lua_probject/base_project/Game/View/FamilyView.lua
@@ -93,7 +93,7 @@ function M:init(url)
local view = self._view
self.lastTime = os.time()
- self._child_familyAuditNumber = FamilyAuditNumber.new(self)
+ --self._child_familyAuditNumber = FamilyAuditNumber.new(self)
self.com_FamilyChatRoom = FamilyChatRoom:Init(view:GetChild('com_chatRoom'), self)
local fgCtr = ControllerManager.GetController(NewGroupController)
@@ -316,8 +316,10 @@ function M:AllNumber()
end
function M:AuditNumber()
- self.lastType = 1
- self._child_familyAuditNumber:Show()
+ local view = FamilyAuditNumber.new(self)
+ view:Show(self._group)
+ --self.lastType = 1
+ --self._child_familyAuditNumber:Show()
--self._child_familyAuditNumber = FamilyAuditNumber.new(self)
end
diff --git a/wb_new_ui/assets/Family/Main.xml b/wb_new_ui/assets/Family/Main.xml
index af9c6ca7..c9d1b249 100644
--- a/wb_new_ui/assets/Family/Main.xml
+++ b/wb_new_ui/assets/Family/Main.xml
@@ -1,6 +1,6 @@
-
+
@@ -176,28 +176,6 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/wb_new_ui/assets/Family/package.xml b/wb_new_ui/assets/Family/package.xml
index 1774005e..53a1e115 100644
--- a/wb_new_ui/assets/Family/package.xml
+++ b/wb_new_ui/assets/Family/package.xml
@@ -392,6 +392,7 @@
+
\ No newline at end of file
diff --git a/wb_unity_pro/Assets/ART/base/Family/ui/Family_fui.bytes b/wb_unity_pro/Assets/ART/base/Family/ui/Family_fui.bytes
index 691c992f1df2668e45a5cd654ae791840ef0bf81..d561d35c889baad2a603ce895452016feb0e7daf 100644
GIT binary patch
delta 6273
zcmZ{od3=pW_rRZX=b7i;xLNL%<=#kSBO4)!N(2dsH6$uQh&>UMHi)%Kk+k}viZHFC
zR7>BgrK(Y0Nn4Giw51CveTmv)ZS2ufK_%~bp3&Ctk6%9S=R3=pGiT1soH>uzH=8eR
zH5Yewj=iVoe^B(Cq+X_fJ$DZL;;_kko3I`6_V-?4(K|!v7fpRj6vg```pu!=vRx@h
z3IO6o$-7>=zNzZrA;K*`XGd_mSHQ~eEfnJ6~u
zR`Jz^R&2StLfn4R-~3_$6pQ5-N3fOZDsl7TL?+ZXN!nXXzSI=rMA4;S_LjO@Y`PTA
z+AE5PecNF%IcQQ;*N9t}!lAvWS>rF8-d5L&PM4oFX@=A~vG8&v$?Uis%-&Jgi=)&X
zCxYhq2-_70dslr=6klvBvahsf8`O=vR$OrdcwemlHBS4t(u#Z_c1AZhsUL`3Ump?J
zqN$m$X6h#OLlIV+#WyP!b&Dvh?aa2S+eCS7Kln(vUd@2*V&v5k>|=F@*n4#z`$R1f
ziPxsGo$9BeI;>k!|f69l}O3;7bUkN~0l+dYSft=k9(#j&~p;^-|e%~V2u{7!Ve)0cg({vgiXX(!6>
z1h5~~!&J`ZN7O3yCz1HuOmUrh1LhBN@@1?^9*?Un`{xN`E
zQr;6DlYC9;Wf6Nn4X&U^EDUs2e^qN~`k^%a7@QnS(?7Z&3s-SpEc92^YqaXZ`eE!k
zt@uoRFY^ucCJD|G^B?qMx76EW&Vx)=r`{2VA7q+;Q-4rsG-H8nacBB{Y?bzz&xg1NM`v%-GRAx<|m!C{f$
zBe21bHQ`qApN4F3mCNLA++E~04g(L2c84fY+vqUcxLr|HyQth8AnIP=qN1huDx2n_
z9b&vG_vBu0^@DWqerqj6FdyZLvH9FV-gwKZ43go5H0RoyrWUAZY~TSrP!AKhTm$QB6&w(RP8Cui
z7;|-m;5HpC@OK?8F_DwfP+Y;m$-;OzZsX90Mes=cgF_Uw!WJ6UTk|NKqCpC@!JQh6
zWo>yhlA~V)Uo1A0nrb|$<0OVyNL!3p`GXg4ZkV{-0=?NUJQk}h&K+g`dJocX)=S^L|)vgHU)DFWI0Y^v3`@gqt(eALt(7
zUnd8r*lDLSagiMcvH^S`p0UG37=(N6&>Y7$g-QN{XblU^Kw%(BNl^wGFhUQ?
zo%u*w7yU7n@lkv<&uMI+H_hb|9qv`sY`XgNbEd>n3tchO&-D9Mq#U8^($>df+Ciq|
zDtUCub))tv;#a*Ac_5GfC)nM|3&{&q7ki}ach
zyRtwjq;{HI*-3pCf06sUuSqeBqFF)SCSS6&NEt|-f6#9~37G3~suT3l*J>hM`FKtb
zGw9K>Mg*J>q~7}#uVP9dIBg60Yji@}l6*YLLoCKxNPcTGh=G6U_sioJS+@w*(#`~vz8XC^{;kf8
zfqryY7h?xMy6j8z=w#uqgC0pkFv$mDhhA(2FUAj>(=u1;4)f|q<5zJ(=3F3?Q+2!dh>hEQ
zv412vC@BE^*qi(<93B9(tgB%rnLe6CatzZmBB2RB4gjYW`5Njep`OHldhYsC@OzuD
z#SwwzqjiRl*gJeZ9?|RX8g=V?d;^W#OFw^%38s7O8caUh6+|~}0hLVZUW^DP@lA60
zhkP@x)9YJgeJkIF?jbM)kB88(1yq8Mab*jdcnALke+z-EmL*DW$$Klk
zU0^sZdnf;tE(^VcEXFXpCX`mZs0DXpj;Wy(e)maJD|jV-7D}qVLVFk)xSt=us4y5}{+fS7%YPqZ!XV7V
zzr|0(pfw!CvtiJK9pc|%XgG|4@AVjO1IlRm59%E{W^uG-*Z*<$;c!y
XN+I`{aZ`WB^%2n0L+}4DKThe`0n)wYFWs)5
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