工会超管

This commit is contained in:
fengshuo
2022-04-13 18:34:10 +08:00
parent 60fc022933
commit 3f0f944b1d
88 changed files with 1770 additions and 59 deletions

View File

@@ -599,6 +599,16 @@
E8B846D626FDE01B00A777FE /* XPMineRechargePresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B846D526FDE01B00A777FE /* XPMineRechargePresenter.m */; };
E8B846D826FDE17300A777FE /* XPMineRechargeProtocol.h in Sources */ = {isa = PBXBuildFile; fileRef = E8B846D726FDE16300A777FE /* XPMineRechargeProtocol.h */; };
E8B846DC26FDE24300A777FE /* RechargeListModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B846DB26FDE24300A777FE /* RechargeListModel.m */; };
E8C1670928067DAA00ECB15C /* XPMineGuildSuperAdminSetViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C1670828067DAA00ECB15C /* XPMineGuildSuperAdminSetViewController.m */; };
E8C1670C28067DED00ECB15C /* XPMineGuildChooseManagerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C1670B28067DED00ECB15C /* XPMineGuildChooseManagerViewController.m */; };
E8C1671228067F6C00ECB15C /* XPGuildChooseManagerRoomTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C1671128067F6C00ECB15C /* XPGuildChooseManagerRoomTableViewCell.m */; };
E8C167152806A01900ECB15C /* XPSuperAdminManagerRoomPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C167142806A01900ECB15C /* XPSuperAdminManagerRoomPresenter.m */; };
E8C167182806A03800ECB15C /* XPSuperAdminSetPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C167172806A03800ECB15C /* XPSuperAdminSetPresenter.m */; };
E8C167272806A68F00ECB15C /* GuildRoomInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C167262806A68F00ECB15C /* GuildRoomInfoModel.m */; };
E8C1672A2806B1E500ECB15C /* XPGuildSuperAdminSetTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C167292806B1E500ECB15C /* XPGuildSuperAdminSetTableViewCell.m */; };
E8C1672D2806BD8B00ECB15C /* XPGuildSuperAdminRoomCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C1672C2806BD8B00ECB15C /* XPGuildSuperAdminRoomCollectionViewCell.m */; };
E8C167302806C01500ECB15C /* GuildSuperAdminInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C1672F2806C01500ECB15C /* GuildSuperAdminInfoModel.m */; };
E8C167332806CADF00ECB15C /* XPGuildSuperAdminMenuView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C167322806CADF00ECB15C /* XPGuildSuperAdminMenuView.m */; };
E8C1CD6627D88EF800376F83 /* XPRoomFaceViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C1CD6527D88EF800376F83 /* XPRoomFaceViewController.m */; };
E8C1CD6A27D8937800376F83 /* XPRoomFaceCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C1CD6927D8937800376F83 /* XPRoomFaceCollectionViewCell.m */; };
E8C1CD6D27D8938C00376F83 /* XPRoomFaceTitleCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8C1CD6C27D8938C00376F83 /* XPRoomFaceTitleCollectionViewCell.m */; };
@@ -1874,6 +1884,28 @@
E8B846D726FDE16300A777FE /* XPMineRechargeProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineRechargeProtocol.h; sourceTree = "<group>"; };
E8B846DA26FDE24300A777FE /* RechargeListModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RechargeListModel.h; sourceTree = "<group>"; };
E8B846DB26FDE24300A777FE /* RechargeListModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = RechargeListModel.m; sourceTree = "<group>"; };
E8C1670728067DAA00ECB15C /* XPMineGuildSuperAdminSetViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineGuildSuperAdminSetViewController.h; sourceTree = "<group>"; };
E8C1670828067DAA00ECB15C /* XPMineGuildSuperAdminSetViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineGuildSuperAdminSetViewController.m; sourceTree = "<group>"; };
E8C1670A28067DED00ECB15C /* XPMineGuildChooseManagerViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineGuildChooseManagerViewController.h; sourceTree = "<group>"; };
E8C1670B28067DED00ECB15C /* XPMineGuildChooseManagerViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineGuildChooseManagerViewController.m; sourceTree = "<group>"; };
E8C1671028067F6C00ECB15C /* XPGuildChooseManagerRoomTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPGuildChooseManagerRoomTableViewCell.h; sourceTree = "<group>"; };
E8C1671128067F6C00ECB15C /* XPGuildChooseManagerRoomTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPGuildChooseManagerRoomTableViewCell.m; sourceTree = "<group>"; };
E8C167132806A01900ECB15C /* XPSuperAdminManagerRoomPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPSuperAdminManagerRoomPresenter.h; sourceTree = "<group>"; };
E8C167142806A01900ECB15C /* XPSuperAdminManagerRoomPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPSuperAdminManagerRoomPresenter.m; sourceTree = "<group>"; };
E8C167162806A03800ECB15C /* XPSuperAdminSetPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPSuperAdminSetPresenter.h; sourceTree = "<group>"; };
E8C167172806A03800ECB15C /* XPSuperAdminSetPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPSuperAdminSetPresenter.m; sourceTree = "<group>"; };
E8C1671C2806A09200ECB15C /* XPSuperAdminManagerRoomProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPSuperAdminManagerRoomProtocol.h; sourceTree = "<group>"; };
E8C1671D2806A09E00ECB15C /* XPSuperAdminSetProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPSuperAdminSetProtocol.h; sourceTree = "<group>"; };
E8C167252806A68F00ECB15C /* GuildRoomInfoModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GuildRoomInfoModel.h; sourceTree = "<group>"; };
E8C167262806A68F00ECB15C /* GuildRoomInfoModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GuildRoomInfoModel.m; sourceTree = "<group>"; };
E8C167282806B1E500ECB15C /* XPGuildSuperAdminSetTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPGuildSuperAdminSetTableViewCell.h; sourceTree = "<group>"; };
E8C167292806B1E500ECB15C /* XPGuildSuperAdminSetTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPGuildSuperAdminSetTableViewCell.m; sourceTree = "<group>"; };
E8C1672B2806BD8B00ECB15C /* XPGuildSuperAdminRoomCollectionViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPGuildSuperAdminRoomCollectionViewCell.h; sourceTree = "<group>"; };
E8C1672C2806BD8B00ECB15C /* XPGuildSuperAdminRoomCollectionViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPGuildSuperAdminRoomCollectionViewCell.m; sourceTree = "<group>"; };
E8C1672E2806C01500ECB15C /* GuildSuperAdminInfoModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GuildSuperAdminInfoModel.h; sourceTree = "<group>"; };
E8C1672F2806C01500ECB15C /* GuildSuperAdminInfoModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GuildSuperAdminInfoModel.m; sourceTree = "<group>"; };
E8C167312806CADF00ECB15C /* XPGuildSuperAdminMenuView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPGuildSuperAdminMenuView.h; sourceTree = "<group>"; };
E8C167322806CADF00ECB15C /* XPGuildSuperAdminMenuView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPGuildSuperAdminMenuView.m; sourceTree = "<group>"; };
E8C1CD6427D88EF800376F83 /* XPRoomFaceViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomFaceViewController.h; sourceTree = "<group>"; };
E8C1CD6527D88EF800376F83 /* XPRoomFaceViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomFaceViewController.m; sourceTree = "<group>"; };
E8C1CD6827D8937800376F83 /* XPRoomFaceCollectionViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomFaceCollectionViewCell.h; sourceTree = "<group>"; };
@@ -3456,13 +3488,9 @@
E800806F27FD6C1B0055A8AB /* XPGuildProtocol.h */,
E800807327FD6C590055A8AB /* XPClanProtocol.h */,
E851E45C27FF02F6002F3ACB /* XPGuildSearchProtocol.h */,
E851E46927FF215A002F3ACB /* XPGuildSetNameProtocol.h */,
E8834E3F280022FC0029CCC1 /* XPGuildRemoveMemberProtocol.h */,
E8834E4928003E390029CCC1 /* XPGuildManagerListProtocol.h */,
E8834E4D28003E660029CCC1 /* XPGuildSetManagerProtocol.h */,
E8834E572800586C0029CCC1 /* XPGuildManagerPerProtocol.h */,
E800163F2804226500D6D17A /* XPGuildIncomeProtocol.h */,
E855516E28059A14005F293F /* XPGuildIncomeDetailProtocol.h */,
E8C167202806A0BA00ECB15C /* Setting */,
E8C1671F2806A0AC00ECB15C /* Income */,
E8C1671E2806A0A200ECB15C /* SuperAdmin */,
);
path = Protocol;
sourceTree = "<group>";
@@ -3476,20 +3504,9 @@
E800807127FD6C3D0055A8AB /* XPClanPresenter.m */,
E851E45927FF02DF002F3ACB /* XPGuildSearchPresenter.h */,
E851E45A27FF02DF002F3ACB /* XPGuildSearchPresenter.m */,
E851E46627FF2140002F3ACB /* XPGuildSetNamePresenter.h */,
E851E46727FF2140002F3ACB /* XPGuildSetNamePresenter.m */,
E8834E3C280022B40029CCC1 /* XPGuildRemoveMemberPresenter.h */,
E8834E3D280022B40029CCC1 /* XPGuildRemoveMemberPresenter.m */,
E8834E4628003E1E0029CCC1 /* XPGuildMangerListPresenter.h */,
E8834E4728003E1E0029CCC1 /* XPGuildMangerListPresenter.m */,
E8834E4A28003E4E0029CCC1 /* XPMineManagerSetPresenter.h */,
E8834E4B28003E4E0029CCC1 /* XPMineManagerSetPresenter.m */,
E8834E542800585A0029CCC1 /* XPGuildManagerPerPresenter.h */,
E8834E552800585A0029CCC1 /* XPGuildManagerPerPresenter.m */,
E80016402804228100D6D17A /* XPGuildIncomePresenter.h */,
E80016412804228100D6D17A /* XPGuildIncomePresenter.m */,
E855516B28059A01005F293F /* XPGuildIncomeDetailPresenter.h */,
E855516C28059A01005F293F /* XPGuildIncomeDetailPresenter.m */,
E8C1671B2806A06D00ECB15C /* Setting */,
E8C1671A2806A05B00ECB15C /* Income */,
E8C167192806A04300ECB15C /* SuperAdmin */,
);
path = Presenter;
sourceTree = "<group>";
@@ -3505,28 +3522,9 @@
E800805C27FD34E90055A8AB /* XPMineGuildViewController.m */,
E851E45627FF024B002F3ACB /* XPMineGuildSearchViewController.h */,
E851E45727FF024B002F3ACB /* XPMineGuildSearchViewController.m */,
E851E46327FF1F52002F3ACB /* XPMineGuildSetNameViewController.h */,
E851E46427FF1F52002F3ACB /* XPMineGuildSetNameViewController.m */,
E8834E39280012B60029CCC1 /* XPMineGuildRemoveMemberViewController.h */,
E8834E3A280012B60029CCC1 /* XPMineGuildRemoveMemberViewController.m */,
E8834E4328003A8F0029CCC1 /* XPMineMangerListViewController.h */,
E8834E4428003A8F0029CCC1 /* XPMineMangerListViewController.m */,
E8834E4028003A270029CCC1 /* XPMineGuildManagerSetViewController.h */,
E8834E4128003A270029CCC1 /* XPMineGuildManagerSetViewController.m */,
E8834E4E280051600029CCC1 /* XPMineGuildManagerPerViewController.h */,
E8834E4F280051600029CCC1 /* XPMineGuildManagerPerViewController.m */,
E80016212803CA5D00D6D17A /* XPMineGuildIncomeRecordViewController.h */,
E80016222803CA5D00D6D17A /* XPMineGuildIncomeRecordViewController.m */,
E80016362804140D00D6D17A /* XPMineGuildIncomeStatisViewController.h */,
E80016372804140D00D6D17A /* XPMineGuildIncomeStatisViewController.m */,
E80016432804268E00D6D17A /* XPMineClanIncomeStatisViewController.h */,
E80016442804268E00D6D17A /* XPMineClanIncomeStatisViewController.m */,
E8001646280426CB00D6D17A /* XPMineAnchorIncomeStatisViewController.h */,
E8001647280426CB00D6D17A /* XPMineAnchorIncomeStatisViewController.m */,
E855515C28056F88005F293F /* XPMineHallAnchorIncomeStatisViewController.h */,
E855515D28056F88005F293F /* XPMineHallAnchorIncomeStatisViewController.m */,
E855515F28059228005F293F /* XPMineGuildIncomeDetailViewController.h */,
E855516028059228005F293F /* XPMineGuildIncomeDetailViewController.m */,
E8C1670528067D5F00ECB15C /* Setting */,
E8C1670428067D3200ECB15C /* IncomeStatis */,
E8C1670628067D8A00ECB15C /* SuperAdmin */,
);
path = View;
sourceTree = "<group>";
@@ -3546,12 +3544,8 @@
E8834E3127FFD64F0029CCC1 /* GuildAuthModel.m */,
E8834E3628000CB50029CCC1 /* GuildSearchUserInfoModel.h */,
E8834E3728000CB50029CCC1 /* GuildSearchUserInfoModel.m */,
E800162A2803FE4900D6D17A /* GuildIncomeRecordModel.h */,
E800162B2803FE4900D6D17A /* GuildIncomeRecordModel.m */,
E800162D2803FF6200D6D17A /* GuildPersonIncomeRecordModel.h */,
E800162E2803FF6200D6D17A /* GuildPersonIncomeRecordModel.m */,
E855516528059692005F293F /* GuildIncomeDetailModel.h */,
E855516628059692005F293F /* GuildIncomeDetailModel.m */,
E8C167222806A63600ECB15C /* Income */,
E8C167242806A65B00ECB15C /* SuperAdmin */,
);
path = Model;
sourceTree = "<group>";
@@ -3576,18 +3570,11 @@
E851E46127FF1314002F3ACB /* XPMineGuildEmptyTableViewCell.m */,
E8834E33280009090029CCC1 /* XPMineGuildSearchMemberTableViewCell.h */,
E8834E34280009090029CCC1 /* XPMineGuildSearchMemberTableViewCell.m */,
E8834E51280052580029CCC1 /* XPMineGuildManagerPerTableViewCell.h */,
E8834E52280052580029CCC1 /* XPMineGuildManagerPerTableViewCell.m */,
E80016272803D5C500D6D17A /* XPGuildIncomeRecordTableViewCell.h */,
E80016282803D5C500D6D17A /* XPGuildIncomeRecordTableViewCell.m */,
E8001630280409FD00D6D17A /* XPGuildPersonIncomeTableViewCell.h */,
E8001631280409FD00D6D17A /* XPGuildPersonIncomeTableViewCell.m */,
E800163928041F7B00D6D17A /* XPGuildSingleRoomIncomeTableViewCell.h */,
E800163A28041F7B00D6D17A /* XPGuildSingleRoomIncomeTableViewCell.m */,
E85551622805937A005F293F /* XPGuildIncomeDetailCollectionViewCell.h */,
E85551632805937A005F293F /* XPGuildIncomeDetailCollectionViewCell.m */,
E8555168280599A7005F293F /* XPGuildEmptyCollectionViewCell.h */,
E8555169280599A7005F293F /* XPGuildEmptyCollectionViewCell.m */,
E8C1670F28067E8D00ECB15C /* Setting */,
E8C1670D28067E1500ECB15C /* Income */,
E8C1670E28067E3100ECB15C /* SuperAdmin */,
);
path = Cell;
sourceTree = "<group>";
@@ -3611,6 +3598,8 @@
E855514D2805152B005F293F /* XPGuildTimePickView.m */,
E855514F28055581005F293F /* XPGuildTimeMonthPickerView.h */,
E855515028055581005F293F /* XPGuildTimeMonthPickerView.m */,
E8C167312806CADF00ECB15C /* XPGuildSuperAdminMenuView.h */,
E8C167322806CADF00ECB15C /* XPGuildSuperAdminMenuView.m */,
);
path = SubViews;
sourceTree = "<group>";
@@ -5042,6 +5031,183 @@
path = Recharge;
sourceTree = "<group>";
};
E8C1670428067D3200ECB15C /* IncomeStatis */ = {
isa = PBXGroup;
children = (
E80016212803CA5D00D6D17A /* XPMineGuildIncomeRecordViewController.h */,
E80016222803CA5D00D6D17A /* XPMineGuildIncomeRecordViewController.m */,
E80016362804140D00D6D17A /* XPMineGuildIncomeStatisViewController.h */,
E80016372804140D00D6D17A /* XPMineGuildIncomeStatisViewController.m */,
E80016432804268E00D6D17A /* XPMineClanIncomeStatisViewController.h */,
E80016442804268E00D6D17A /* XPMineClanIncomeStatisViewController.m */,
E8001646280426CB00D6D17A /* XPMineAnchorIncomeStatisViewController.h */,
E8001647280426CB00D6D17A /* XPMineAnchorIncomeStatisViewController.m */,
E855515C28056F88005F293F /* XPMineHallAnchorIncomeStatisViewController.h */,
E855515D28056F88005F293F /* XPMineHallAnchorIncomeStatisViewController.m */,
E855515F28059228005F293F /* XPMineGuildIncomeDetailViewController.h */,
E855516028059228005F293F /* XPMineGuildIncomeDetailViewController.m */,
);
path = IncomeStatis;
sourceTree = "<group>";
};
E8C1670528067D5F00ECB15C /* Setting */ = {
isa = PBXGroup;
children = (
E851E46327FF1F52002F3ACB /* XPMineGuildSetNameViewController.h */,
E851E46427FF1F52002F3ACB /* XPMineGuildSetNameViewController.m */,
E8834E39280012B60029CCC1 /* XPMineGuildRemoveMemberViewController.h */,
E8834E3A280012B60029CCC1 /* XPMineGuildRemoveMemberViewController.m */,
E8834E4328003A8F0029CCC1 /* XPMineMangerListViewController.h */,
E8834E4428003A8F0029CCC1 /* XPMineMangerListViewController.m */,
E8834E4028003A270029CCC1 /* XPMineGuildManagerSetViewController.h */,
E8834E4128003A270029CCC1 /* XPMineGuildManagerSetViewController.m */,
E8834E4E280051600029CCC1 /* XPMineGuildManagerPerViewController.h */,
E8834E4F280051600029CCC1 /* XPMineGuildManagerPerViewController.m */,
);
path = Setting;
sourceTree = "<group>";
};
E8C1670628067D8A00ECB15C /* SuperAdmin */ = {
isa = PBXGroup;
children = (
E8C1670728067DAA00ECB15C /* XPMineGuildSuperAdminSetViewController.h */,
E8C1670828067DAA00ECB15C /* XPMineGuildSuperAdminSetViewController.m */,
E8C1670A28067DED00ECB15C /* XPMineGuildChooseManagerViewController.h */,
E8C1670B28067DED00ECB15C /* XPMineGuildChooseManagerViewController.m */,
);
path = SuperAdmin;
sourceTree = "<group>";
};
E8C1670D28067E1500ECB15C /* Income */ = {
isa = PBXGroup;
children = (
E80016272803D5C500D6D17A /* XPGuildIncomeRecordTableViewCell.h */,
E80016282803D5C500D6D17A /* XPGuildIncomeRecordTableViewCell.m */,
E8001630280409FD00D6D17A /* XPGuildPersonIncomeTableViewCell.h */,
E8001631280409FD00D6D17A /* XPGuildPersonIncomeTableViewCell.m */,
E800163928041F7B00D6D17A /* XPGuildSingleRoomIncomeTableViewCell.h */,
E800163A28041F7B00D6D17A /* XPGuildSingleRoomIncomeTableViewCell.m */,
E85551622805937A005F293F /* XPGuildIncomeDetailCollectionViewCell.h */,
E85551632805937A005F293F /* XPGuildIncomeDetailCollectionViewCell.m */,
);
path = Income;
sourceTree = "<group>";
};
E8C1670E28067E3100ECB15C /* SuperAdmin */ = {
isa = PBXGroup;
children = (
E8C1671028067F6C00ECB15C /* XPGuildChooseManagerRoomTableViewCell.h */,
E8C1671128067F6C00ECB15C /* XPGuildChooseManagerRoomTableViewCell.m */,
E8C167282806B1E500ECB15C /* XPGuildSuperAdminSetTableViewCell.h */,
E8C167292806B1E500ECB15C /* XPGuildSuperAdminSetTableViewCell.m */,
E8C1672B2806BD8B00ECB15C /* XPGuildSuperAdminRoomCollectionViewCell.h */,
E8C1672C2806BD8B00ECB15C /* XPGuildSuperAdminRoomCollectionViewCell.m */,
);
path = SuperAdmin;
sourceTree = "<group>";
};
E8C1670F28067E8D00ECB15C /* Setting */ = {
isa = PBXGroup;
children = (
E8834E51280052580029CCC1 /* XPMineGuildManagerPerTableViewCell.h */,
E8834E52280052580029CCC1 /* XPMineGuildManagerPerTableViewCell.m */,
);
path = Setting;
sourceTree = "<group>";
};
E8C167192806A04300ECB15C /* SuperAdmin */ = {
isa = PBXGroup;
children = (
E8C167132806A01900ECB15C /* XPSuperAdminManagerRoomPresenter.h */,
E8C167142806A01900ECB15C /* XPSuperAdminManagerRoomPresenter.m */,
E8C167162806A03800ECB15C /* XPSuperAdminSetPresenter.h */,
E8C167172806A03800ECB15C /* XPSuperAdminSetPresenter.m */,
);
path = SuperAdmin;
sourceTree = "<group>";
};
E8C1671A2806A05B00ECB15C /* Income */ = {
isa = PBXGroup;
children = (
E80016402804228100D6D17A /* XPGuildIncomePresenter.h */,
E80016412804228100D6D17A /* XPGuildIncomePresenter.m */,
E855516B28059A01005F293F /* XPGuildIncomeDetailPresenter.h */,
E855516C28059A01005F293F /* XPGuildIncomeDetailPresenter.m */,
);
path = Income;
sourceTree = "<group>";
};
E8C1671B2806A06D00ECB15C /* Setting */ = {
isa = PBXGroup;
children = (
E851E46627FF2140002F3ACB /* XPGuildSetNamePresenter.h */,
E851E46727FF2140002F3ACB /* XPGuildSetNamePresenter.m */,
E8834E3C280022B40029CCC1 /* XPGuildRemoveMemberPresenter.h */,
E8834E3D280022B40029CCC1 /* XPGuildRemoveMemberPresenter.m */,
E8834E4628003E1E0029CCC1 /* XPGuildMangerListPresenter.h */,
E8834E4728003E1E0029CCC1 /* XPGuildMangerListPresenter.m */,
E8834E4A28003E4E0029CCC1 /* XPMineManagerSetPresenter.h */,
E8834E4B28003E4E0029CCC1 /* XPMineManagerSetPresenter.m */,
E8834E542800585A0029CCC1 /* XPGuildManagerPerPresenter.h */,
E8834E552800585A0029CCC1 /* XPGuildManagerPerPresenter.m */,
);
path = Setting;
sourceTree = "<group>";
};
E8C1671E2806A0A200ECB15C /* SuperAdmin */ = {
isa = PBXGroup;
children = (
E8C1671C2806A09200ECB15C /* XPSuperAdminManagerRoomProtocol.h */,
E8C1671D2806A09E00ECB15C /* XPSuperAdminSetProtocol.h */,
);
path = SuperAdmin;
sourceTree = "<group>";
};
E8C1671F2806A0AC00ECB15C /* Income */ = {
isa = PBXGroup;
children = (
E800163F2804226500D6D17A /* XPGuildIncomeProtocol.h */,
E855516E28059A14005F293F /* XPGuildIncomeDetailProtocol.h */,
);
path = Income;
sourceTree = "<group>";
};
E8C167202806A0BA00ECB15C /* Setting */ = {
isa = PBXGroup;
children = (
E851E46927FF215A002F3ACB /* XPGuildSetNameProtocol.h */,
E8834E3F280022FC0029CCC1 /* XPGuildRemoveMemberProtocol.h */,
E8834E4928003E390029CCC1 /* XPGuildManagerListProtocol.h */,
E8834E4D28003E660029CCC1 /* XPGuildSetManagerProtocol.h */,
E8834E572800586C0029CCC1 /* XPGuildManagerPerProtocol.h */,
);
path = Setting;
sourceTree = "<group>";
};
E8C167222806A63600ECB15C /* Income */ = {
isa = PBXGroup;
children = (
E800162A2803FE4900D6D17A /* GuildIncomeRecordModel.h */,
E800162B2803FE4900D6D17A /* GuildIncomeRecordModel.m */,
E800162D2803FF6200D6D17A /* GuildPersonIncomeRecordModel.h */,
E800162E2803FF6200D6D17A /* GuildPersonIncomeRecordModel.m */,
E855516528059692005F293F /* GuildIncomeDetailModel.h */,
E855516628059692005F293F /* GuildIncomeDetailModel.m */,
);
path = Income;
sourceTree = "<group>";
};
E8C167242806A65B00ECB15C /* SuperAdmin */ = {
isa = PBXGroup;
children = (
E8C167252806A68F00ECB15C /* GuildRoomInfoModel.h */,
E8C167262806A68F00ECB15C /* GuildRoomInfoModel.m */,
E8C1672E2806C01500ECB15C /* GuildSuperAdminInfoModel.h */,
E8C1672F2806C01500ECB15C /* GuildSuperAdminInfoModel.m */,
);
path = SuperAdmin;
sourceTree = "<group>";
};
E8C1CD5F27D88E4900376F83 /* Model */ = {
isa = PBXGroup;
children = (
@@ -5766,6 +5932,7 @@
E8DEC992276441AA0078CB70 /* XPCandyTreeAnimationModel.m in Sources */,
9B1EF3D527E8294B00554295 /* XPMineDressEmptyCollectionViewCell.m in Sources */,
E890BC07273CF1800007C46B /* XPGiftCountCollectionViewCell.m in Sources */,
E8C1670C28067DED00ECB15C /* XPMineGuildChooseManagerViewController.m in Sources */,
E81EF6E8279AC21E00FF3EDE /* Api+LittleGame.m in Sources */,
E8EEB91126FC6AE2007C6EBA /* XPMineUserInfoEditProtocol.h in Sources */,
180116FC279E8CCE00F2CBC0 /* NVDate.m in Sources */,
@@ -5863,6 +6030,7 @@
E8B846CB26FDD7CD00A777FE /* XPMineRechargeViewController.m in Sources */,
E86596512701A1C000846EBD /* StatisticsService.m in Sources */,
E824544026F58F9400BE8163 /* XPMinePayPwdViewController.m in Sources */,
E8C1670928067DAA00ECB15C /* XPMineGuildSuperAdminSetViewController.m in Sources */,
E890BC04273CF0500007C46B /* XPGiftCountModel.m in Sources */,
E855516A280599A7005F293F /* XPGuildEmptyCollectionViewCell.m in Sources */,
E899C68C275093B800E189E5 /* XPUserCardMicroItemModel.m in Sources */,
@@ -5928,6 +6096,7 @@
E8412FB32779E285006E1101 /* Api+RoomSetting.m in Sources */,
9B16A34B27E1915A00E13A98 /* XPTrumpetPresenter.m in Sources */,
E8A6C29827CF448700AC7442 /* XPHomeCollectRoomTableViewCell.m in Sources */,
E8C1672D2806BD8B00ECB15C /* XPGuildSuperAdminRoomCollectionViewCell.m in Sources */,
E8EEB8F226FC2050007C6EBA /* SDPhotoBrowser.m in Sources */,
E81C27AB26EF2D920031E639 /* ThirdUserInfo.m in Sources */,
E8788950273A699900BF1D57 /* ThemeColor+SendGift.m in Sources */,
@@ -6028,8 +6197,11 @@
E8395331276A03AE00CF2F24 /* Api+DressUp.m in Sources */,
E8DEC99E2764A5B60078CB70 /* XPRoomMoreMenuViewController.m in Sources */,
E82325F2274E2DE6003A3332 /* XPUserCardViewController.m in Sources */,
E801274B27E327DA00BAC3F2 /* XPRoomPKTypeTableViewCell.m in Sources */,
E8C167182806A03800ECB15C /* XPSuperAdminSetPresenter.m in Sources */,
E8C6FFCA27548120004DC9F0 /* XPHomePresenter.m in Sources */,
E8412FB02779CB4D006E1101 /* XPRoomSettingPresenter.m in Sources */,
E8C1671228067F6C00ECB15C /* XPGuildChooseManagerRoomTableViewCell.m in Sources */,
E878893C273A54C300BF1D57 /* Api+Gift.m in Sources */,
E81C279026EB314D0031E639 /* LoginForgetEditView.m in Sources */,
9BA8A48027C65098000365A3 /* XPSkillCardVoiceView.m in Sources */,
@@ -6128,6 +6300,7 @@
18486217271EAB8C005FC5DC /* BaseRtcImpl.m in Sources */,
E8DACCFB2766EDC60052092C /* MicroGiftValueView.m in Sources */,
E8CEA03D26EA3DE500644B44 /* LoginPasswordPresent.m in Sources */,
E8C167152806A01900ECB15C /* XPSuperAdminManagerRoomPresenter.m in Sources */,
E8E70D7726F2F15100F03460 /* XPMineViewController.m in Sources */,
9B1FC3D527E49A5D006EFFE0 /* ChatBubbleModel.m in Sources */,
E896EFA62771AEDD00AD2CC1 /* XPMineFansTableViewCell.m in Sources */,
@@ -6204,6 +6377,7 @@
9B9DFD9A27DB2194000F95B3 /* XPSessionMessageHeadView.m in Sources */,
18C17A5D26F338F300C48E11 /* XplanFBFlutterViewContainer.m in Sources */,
E89DA67527009ACD008483C1 /* XPMineRechargeNavView.m in Sources */,
E8C1672A2806B1E500ECB15C /* XPGuildSuperAdminSetTableViewCell.m in Sources */,
E8834E4528003A8F0029CCC1 /* XPMineMangerListViewController.m in Sources */,
1808072D2731598F001FD836 /* XPNetImageYYLabel.m in Sources */,
E800806827FD3B520055A8AB /* XPClanMenuView.m in Sources */,
@@ -6235,6 +6409,7 @@
E880B3B5278C1FE400A83B0D /* XPAcrossRoomPKPresenter.m in Sources */,
186A534626FC6ED900D67B2C /* TTPopup.m in Sources */,
E81EF6E0279AB7D900FF3EDE /* XPCreateLittleGameCollectionViewCell.m in Sources */,
E8C167302806C01500ECB15C /* GuildSuperAdminInfoModel.m in Sources */,
E896EFB62771D55500AD2CC1 /* FansInfoModel.m in Sources */,
E81C278C26EAFAF60031E639 /* Base64.m in Sources */,
E8C1CD7027D894B800376F83 /* RoomFaceTitleItemModel.m in Sources */,
@@ -6359,10 +6534,12 @@
9BA8A47227C5D590000365A3 /* XPVoiceCardCircleLayer.m in Sources */,
9B33E3D427D8A1A4003B0E62 /* XPSkillCardPlayerManager.m in Sources */,
9BAA5FF0277A23F4007453F3 /* XPPermissionsViewController.m in Sources */,
E8C167332806CADF00ECB15C /* XPGuildSuperAdminMenuView.m in Sources */,
E800808527FD8FC20055A8AB /* ClanMemberDetailInfoModel.m in Sources */,
E8412FA92779C2ED006E1101 /* XPRoomSettingItemModel.m in Sources */,
9B92A3692798145000AD168F /* XPSkillCardTypeModel.m in Sources */,
189DD58F26DF97E700AB55B1 /* LoginPresenter.m in Sources */,
E8C167272806A68F00ECB15C /* GuildRoomInfoModel.m in Sources */,
E88863C9278EBA43004BCFAB /* XPAcrossRoomPKForceEndResultView.m in Sources */,
E896EFB22771C93B00AD2CC1 /* XPMineFriendNumberView.m in Sources */,
9BB5495F2782E9DB0090CD26 /* NobleAuthInfo.m in Sources */,

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "mine_guild_super_admin_more@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "mine_guild_super_admin_more@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 161 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 298 B

View File

@@ -151,6 +151,28 @@ NS_ASSUME_NONNULL_BEGIN
/// @param startTimeStr 开始时间
/// @param endTimeStr 结束时间
+ (void)getHallIncomeDetail:(HttpRequestHelperCompletion)completion hallId:(NSString *)hallId memberId:(NSString *)memberId uid:(NSString *)uid startTimeStr:(NSString *)startTimeStr endTimeStr:(NSString *)endTimeStr;
#pragma mark - 超管
/// 获取公会超管管理房间列表
/// @param completion 完成
/// @param clanId 公会的id
/// @param uid 用户的uid
+ (void)getHallSuperAdminManagerRoomList:(HttpRequestHelperCompletion)completion clanId:(NSString *)clanId uid:(NSString *)uid;
/// 超管管理公会房间
/// @param completion 完成
/// @param roomUids 管理的房间的uid
/// @param uid 用户的uid
+ (void)setSuperAdminManagerRoom:(HttpRequestHelperCompletion)completion roomUids:(NSString *)roomUids uid:(NSString *)uid;
/// 获取家族超管列表
/// @param completion 完成
/// @param clanId 家族de id
+ (void)getClanSuperAdminList:(HttpRequestHelperCompletion)completion clanId:(NSString *)clanId;
/// 移除超管
/// @param completion 完成
/// @param targetUid 移除的人的uid
+ (void)clanRemoveSuperAdmin:(HttpRequestHelperCompletion)completion targetUid:(NSString *)targetUid;
@end
NS_ASSUME_NONNULL_END

View File

@@ -192,4 +192,35 @@
[self makeRequest:@"income/incomeDetail" method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__,hallId,memberId, uid, startTimeStr, endTimeStr, nil];
}
#pragma mark -
///
/// @param completion
/// @param clanId id
/// @param uid uid
+ (void)getHallSuperAdminManagerRoomList:(HttpRequestHelperCompletion)completion clanId:(NSString *)clanId uid:(NSString *)uid {
[self makeRequest:@"hall/superManager/listHallInClan" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, clanId, uid, nil];
}
///
/// @param completion
/// @param roomUids uid
/// @param uid uid
+ (void)setSuperAdminManagerRoom:(HttpRequestHelperCompletion)completion roomUids:(NSString *)roomUids uid:(NSString *)uid {
[self makeRequest:@"hall/superManager/setSuperManage" method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, roomUids, uid, nil];
}
///
/// @param completion
/// @param clanId de id
+ (void)getClanSuperAdminList:(HttpRequestHelperCompletion)completion clanId:(NSString *)clanId {
[self makeRequest:@"hall/superManager/listSuperManageInClan" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, clanId, nil];
}
///
/// @param completion
/// @param targetUid uid
+ (void)clanRemoveSuperAdmin:(HttpRequestHelperCompletion)completion targetUid:(NSString *)targetUid {
[self makeRequest:@"hall/superManager/remove" method:HttpRequestHelperMethodGET completion:completion,__FUNCTION__, targetUid,nil];
}
@end

View File

@@ -0,0 +1,26 @@
//
// GuildRoomInfoModel.h
// xplan-ios
//
// Created by 冯硕 on 2022/4/13.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@interface GuildRoomInfoModel : NSObject
@property (nonatomic,copy) NSString *hallRoomId;
///公会房间uid
@property (nonatomic,copy) NSString *hallRoomUid;
///公会房间头像
@property (nonatomic,copy) NSString *hallAvatar;
///公会房间名字
@property (nonatomic,copy) NSString *hallName;
///是否已经管理
@property (nonatomic,assign) BOOL hasManage;
///房间的uid 工会超管设置返回的这个
@property (nonatomic,copy) NSString *roomUid;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,12 @@
//
// GuildRoomInfoModel.m
// xplan-ios
//
// Created by on 2022/4/13.
//
#import "GuildRoomInfoModel.h"
@implementation GuildRoomInfoModel
@end

View File

@@ -0,0 +1,26 @@
//
// GuildSuperAdminInfoModel.h
// xplan-ios
//
// Created by 冯硕 on 2022/4/13.
//
#import <Foundation/Foundation.h>
#import "GuildRoomInfoModel.h"
NS_ASSUME_NONNULL_BEGIN
@interface GuildSuperAdminInfoModel : NSObject
///uid
@property (nonatomic,copy) NSString *uid;
///平台id
@property (nonatomic,copy) NSString *erbanNo;
///头像
@property (nonatomic,copy) NSString *avatar;
///昵称
@property (nonatomic,copy) NSString *nick;
///管理的房间列表
@property (nonatomic,strong) NSArray<GuildRoomInfoModel *> *roomList;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,14 @@
//
// GuildSuperAdminInfoModel.m
// xplan-ios
//
// Created by on 2022/4/13.
//
#import "GuildSuperAdminInfoModel.h"
@implementation GuildSuperAdminInfoModel
+ (NSDictionary *)objectClassInArray {
return @{@"roomList": GuildRoomInfoModel.class};
}
@end

View File

@@ -0,0 +1,25 @@
//
// XPSuperAdminManagerRoomPresenter.h
// xplan-ios
//
// Created by 冯硕 on 2022/4/13.
//
#import "BaseMvpPresenter.h"
NS_ASSUME_NONNULL_BEGIN
@interface XPSuperAdminManagerRoomPresenter : BaseMvpPresenter
/// 获取工会所有的房间列表
/// @param clanId 家族id
/// @param targetUid 目标用户的uid
- (void)getGuildRoomList:(NSString *)clanId targetUid:(NSString *)targetUid;
/// 公会超管设置管理的房间
/// @param array 房间的uid
/// @param targetUid 目标用户的uid
- (void)guildSuperAdminManagerRoomList:(NSArray *)array targetUid:(NSString *)targetUid;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,36 @@
//
// XPSuperAdminManagerRoomPresenter.m
// xplan-ios
//
// Created by on 2022/4/13.
//
#import "XPSuperAdminManagerRoomPresenter.h"
#import "Api+Guild.h"
#import "GuildRoomInfoModel.h"
#import "XPSuperAdminManagerRoomProtocol.h"
@implementation XPSuperAdminManagerRoomPresenter
///
/// @param clanId id
/// @param targetUid uid
- (void)getGuildRoomList:(NSString *)clanId targetUid:(NSString *)targetUid {
[Api getHallSuperAdminManagerRoomList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
NSArray * array = [GuildRoomInfoModel modelsWithArray:data.data];
[[self getView] getGuildRoomListSuccess:array];
}] clanId:clanId uid:targetUid];
}
///
/// @param array uid
/// @param targetUid uid
- (void)guildSuperAdminManagerRoomList:(NSArray *)array targetUid:(NSString *)targetUid {
NSString * roomUids = @"";
roomUids = [array componentsJoinedByString:@","];
[Api setSuperAdminManagerRoom:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] guildSuperAdminManagerRoomListSuccess];
} showLoading:YES] roomUids:roomUids uid:targetUid];
}
@end

View File

@@ -0,0 +1,24 @@
//
// XPSuperAdminSetPresenter.h
// xplan-ios
//
// Created by 冯硕 on 2022/4/13.
//
#import "BaseMvpPresenter.h"
NS_ASSUME_NONNULL_BEGIN
@interface XPSuperAdminSetPresenter : BaseMvpPresenter
/// 获取家族超管
/// @param clanId 家族id
- (void)getClanSuperAdminList:(NSString *)clanId;
/// 移除超管
/// @param targetUid 目标用户的uid
- (void)removeSuperAdmin:(NSString *)targetUid;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,33 @@
//
// XPSuperAdminSetPresenter.m
// xplan-ios
//
// Created by on 2022/4/13.
//
#import "XPSuperAdminSetPresenter.h"
#import "Api+Guild.h"
#import "GuildSuperAdminInfoModel.h"
#import "XPSuperAdminSetProtocol.h"
@implementation XPSuperAdminSetPresenter
///
/// @param clanId id
- (void)getClanSuperAdminList:(NSString *)clanId {
[Api getClanSuperAdminList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
NSArray * array = [GuildSuperAdminInfoModel modelsWithArray:data.data];
[[self getView] getClanSuperAdminListSuccess:array];
}] clanId:clanId];
}
///
/// @param targetUid uid
- (void)removeSuperAdmin:(NSString *)targetUid {
[Api clanRemoveSuperAdmin:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] removeSuperAdminSuccess:targetUid];
}showLoading:YES] targetUid:targetUid];
}
@end

View File

@@ -0,0 +1,21 @@
//
// XPSuperAdminManagerRoomProtocol.h
// xplan-ios
//
// Created by 冯硕 on 2022/4/13.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@protocol XPSuperAdminManagerRoomProtocol <NSObject>
///获取工会房间列表成功
- (void)getGuildRoomListSuccess:(NSArray *)array;
///设置房间管理管理的房间成功
- (void)guildSuperAdminManagerRoomListSuccess;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,21 @@
//
// XPSuperAdminSetProtocol.h
// xplan-ios
//
// Created by 冯硕 on 2022/4/13.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@protocol XPSuperAdminSetProtocol <NSObject>
///获取家族超管成功
- (void)getClanSuperAdminListSuccess:(NSArray *)list;
///移除超管成功
- (void)removeSuperAdminSuccess:(NSString *)uid;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,27 @@
//
// XPGuildChooseManagerRoomTableViewCell.h
// xplan-ios
//
// Created by 冯硕 on 2022/4/13.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class GuildRoomInfoModel, XPGuildChooseManagerRoomTableViewCell;
@protocol XPGuildChooseManagerRoomTableViewCellDelegate <NSObject>
- (void)xPGuildChooseManagerRoomTableViewCell:(XPGuildChooseManagerRoomTableViewCell *)view didChooseInfo:(GuildRoomInfoModel *)roomInfo;
@end
@interface XPGuildChooseManagerRoomTableViewCell : UITableViewCell
///代理
@property (nonatomic,weak) id<XPGuildChooseManagerRoomTableViewCellDelegate> delegate;
@property (nonatomic,strong) GuildRoomInfoModel *roomInfo;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,155 @@
//
// XPGuildChooseManagerRoomTableViewCell.m
// xplan-ios
//
// Created by on 2022/4/13.
//
#import "XPGuildChooseManagerRoomTableViewCell.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor.h"
#import "NetImageView.h"
///Model
#import "GuildRoomInfoModel.h"
@interface XPGuildChooseManagerRoomTableViewCell ()
///
@property (nonatomic,strong) UIView * backView;
///
@property (nonatomic,strong) NetImageView *avatarImageView;
///
@property (nonatomic,strong) UILabel *nickLabel;
///id
@property (nonatomic,strong) UILabel *idLabel;
///
@property (nonatomic,strong) UIButton *chooseButton;
@end
@implementation XPGuildChooseManagerRoomTableViewCell
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {
[self initSubViews];
[self initSubViewConstraints];
}
return self;
}
#pragma mark - Private Method
- (void)initSubViews {
self.backgroundColor = [UIColor clearColor];
self.selectionStyle = UITableViewCellSelectionStyleNone;
[self.contentView addSubview:self.backView];
[self.backView addSubview:self.avatarImageView];
[self.backView addSubview:self.nickLabel];
[self.backView addSubview:self.idLabel];
[self.backView addSubview:self.chooseButton];
}
- (void)initSubViewConstraints {
[self.backView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self.contentView).inset(15);
make.top.mas_equalTo(self.contentView);
make.bottom.mas_equalTo(self.contentView).offset(-15);
}];
[self.avatarImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.backView).offset(10);
make.centerY.mas_equalTo(self.backView);
make.size.mas_equalTo(CGSizeMake(53, 53));
}];
[self.nickLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.bottom.mas_equalTo(self.backView.mas_centerY).offset(-2);
make.left.mas_equalTo(self.avatarImageView.mas_right).offset(8);
make.right.mas_lessThanOrEqualTo(self.chooseButton.mas_left).offset(-5);
}];
[self.idLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.avatarImageView.mas_centerY).offset(2);
make.left.mas_equalTo(self.nickLabel);
}];
[self.chooseButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(30, 30));
make.centerY.mas_equalTo(self.backView);
make.right.mas_equalTo(self.backView).offset(-10);
}];
}
#pragma mark - Event Response
- (void)chooseButtonAction:(UIButton *)sender {
sender.selected = !sender.selected;
if (self.delegate && [self.delegate respondsToSelector:@selector(xPGuildChooseManagerRoomTableViewCell:didChooseInfo:)]) {
[self.delegate xPGuildChooseManagerRoomTableViewCell:self didChooseInfo:self.roomInfo];
}
}
#pragma mark - Getters And Setters
- (void)setRoomInfo:(GuildRoomInfoModel *)roomInfo {
_roomInfo = roomInfo;
if (_roomInfo) {
self.avatarImageView.imageUrl = _roomInfo.hallAvatar;
self.nickLabel.text = _roomInfo.hallName;
self.idLabel.text = [NSString stringWithFormat:@"ID:%@", _roomInfo.hallRoomId];
self.chooseButton.selected = _roomInfo.hasManage;
}
}
- (UIView *)backView {
if (!_backView) {
_backView = [[UIView alloc] init];
_backView.backgroundColor = [ThemeColor appCellBackgroundColor];
_backView.layer.masksToBounds = YES;
_backView.layer.cornerRadius = 10;
}
return _backView;
}
- (NetImageView *)avatarImageView {
if (!_avatarImageView) {
NetImageConfig * config = [[NetImageConfig alloc]init];
config.imageType = ImageTypeUserIcon;
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
_avatarImageView = [[NetImageView alloc] initWithConfig:config];
_avatarImageView.layer.masksToBounds = YES;
_avatarImageView.layer.cornerRadius = 53.0/2.0;
_avatarImageView.layer.borderColor = [ThemeColor appMainColor].CGColor;
}
return _avatarImageView;
}
- (UILabel *)nickLabel {
if (!_nickLabel) {
_nickLabel = [[UILabel alloc] init];
_nickLabel.font = [UIFont systemFontOfSize:18];
_nickLabel.textColor = [ThemeColor mainTextColor];
}
return _nickLabel;
}
- (UILabel *)idLabel {
if (!_idLabel) {
_idLabel = [[UILabel alloc] init];
_idLabel.font = [UIFont systemFontOfSize:12];
_idLabel.textColor = [ThemeColor secondTextColor];
}
return _idLabel;
}
- (UIButton *)chooseButton {
if (!_chooseButton) {
_chooseButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_chooseButton setImage:[UIImage imageNamed:@"mine_guild_guild_manager_normal"] forState:UIControlStateNormal];
[_chooseButton setImage:[UIImage imageNamed:@"mine_guild_guild_manager_select"] forState:UIControlStateSelected];
[_chooseButton addTarget:self action:@selector(chooseButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _chooseButton;
}
@end

View File

@@ -0,0 +1,16 @@
//
// XPGuildSuperAdminRoomCollectionViewCell.h
// xplan-ios
//
// Created by 冯硕 on 2022/4/13.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class GuildRoomInfoModel;
@interface XPGuildSuperAdminRoomCollectionViewCell : UICollectionViewCell
@property (nonatomic,strong) GuildRoomInfoModel *roomInfo;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,86 @@
//
// XPGuildSuperAdminRoomCollectionViewCell.m
// xplan-ios
//
// Created by on 2022/4/13.
//
#import "XPGuildSuperAdminRoomCollectionViewCell.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor.h"
#import "NetImageView.h"
///Model
#import "GuildRoomInfoModel.h"
@interface XPGuildSuperAdminRoomCollectionViewCell ()
///
@property (nonatomic,strong) NetImageView *avatarImageView;
///id
@property (nonatomic,strong) UILabel *idLabel;
@end
@implementation XPGuildSuperAdminRoomCollectionViewCell
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {
[self initSubViews];
[self initSubViewConstraints];
}
return self;
}
#pragma mark - Private Method
- (void)initSubViews {
self.backgroundColor = [UIColor clearColor];
[self.contentView addSubview:self.avatarImageView];
[self.contentView addSubview:self.idLabel];
}
- (void)initSubViewConstraints {
[self.avatarImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.contentView);
make.centerX.mas_equalTo(self.contentView);
make.width.height.mas_equalTo(60);
}];
[self.idLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.avatarImageView.mas_bottom).offset(6);
make.right.left.mas_equalTo(self.contentView);
}];
}
#pragma mark - Getters And Setters
- (void)setRoomInfo:(GuildRoomInfoModel *)roomInfo {
_roomInfo = roomInfo;
if (_roomInfo) {
self.avatarImageView.imageUrl = _roomInfo.hallAvatar;
self.idLabel.text = _roomInfo.hallName;
}
}
- (NetImageView *)avatarImageView {
if (!_avatarImageView) {
NetImageConfig * config = [[NetImageConfig alloc]init];
config.imageType = ImageTypeUserIcon;
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
_avatarImageView = [[NetImageView alloc] initWithConfig:config];
_avatarImageView.layer.masksToBounds = YES;
_avatarImageView.layer.cornerRadius = 10;
}
return _avatarImageView;
}
- (UILabel *)idLabel {
if (!_idLabel) {
_idLabel = [[UILabel alloc] init];
_idLabel.font = [UIFont systemFontOfSize:13];
_idLabel.textColor = [ThemeColor mainTextColor];
_idLabel.textAlignment = NSTextAlignmentCenter;
}
return _idLabel;
}
@end

View File

@@ -0,0 +1,23 @@
//
// XPGuildSuperAdminSetTableViewCell.h
// xplan-ios
//
// Created by 冯硕 on 2022/4/13.
//
#import <UIKit/UIKit.h>
#import "XPGuildSuperAdminMenuView.h"
NS_ASSUME_NONNULL_BEGIN
@class GuildSuperAdminInfoModel, XPGuildSuperAdminSetTableViewCell;
@protocol XPGuildSuperAdminSetTableViewCellDelegate <NSObject>
- (void)xPGuildSuperAdminSetTableViewCell:(GuildSuperAdminInfoModel *)managerInfo didChooseType:(GuildSuperAdminMenuType)menuType;
@end
@interface XPGuildSuperAdminSetTableViewCell : UITableViewCell
@property (nonatomic,strong) GuildSuperAdminInfoModel *managerInfo;
///代理
@property (nonatomic,weak) id<XPGuildSuperAdminSetTableViewCellDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,250 @@
//
// XPGuildSuperAdminSetTableViewCell.m
// xplan-ios
//
// Created by on 2022/4/13.
//
#import "XPGuildSuperAdminSetTableViewCell.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor.h"
///Tool
#import "NetImageView.h"
///Model
#import "GuildSuperAdminInfoModel.h"
///View
#import "XPGuildSuperAdminRoomCollectionViewCell.h"
@interface XPGuildSuperAdminSetTableViewCell ()<UICollectionViewDelegate, UICollectionViewDataSource, XPGuildSuperAdminMenuViewDelegate>
///
@property (nonatomic,strong) UIView * backView;
///
@property (nonatomic,strong) UIView * managerInfoView;
///
@property (nonatomic,strong) NetImageView *avatarImageView;
///
@property (nonatomic,strong) UILabel *nickLabel;
///id
@property (nonatomic,strong) UILabel *idLabel;
///
@property (nonatomic,strong) UIButton *moreButton;
///
@property (nonatomic,strong) UILabel *titleLabel;
///
@property (nonatomic,strong) XPGuildSuperAdminMenuView *menuView;
///
@property (nonatomic,strong) UICollectionView *collectionView;
@end
@implementation XPGuildSuperAdminSetTableViewCell
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {
[self initSubViews];
[self initSubViewConstraints];
}
return self;
}
#pragma mark - Private Method
- (void)initSubViews {
self.backgroundColor = [UIColor clearColor];
self.selectionStyle = UITableViewCellSelectionStyleNone;
[self.contentView addSubview:self.backView];
[self.backView addSubview:self.managerInfoView];
[self.backView addSubview:self.titleLabel];
[self.backView addSubview:self.collectionView];
[self.backView addSubview:self.menuView];
[self.managerInfoView addSubview:self.avatarImageView];
[self.managerInfoView addSubview:self.nickLabel];
[self.managerInfoView addSubview:self.idLabel];
[self.managerInfoView addSubview:self.moreButton];
}
- (void)initSubViewConstraints {
[self.backView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self.contentView).inset(15);
make.top.mas_equalTo(self.contentView);
make.bottom.mas_equalTo(self.contentView).offset(-15);
}];
[self.managerInfoView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.top.mas_equalTo(self.backView);
make.height.mas_equalTo(74);
}];
[self.avatarImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(64, 64));
make.left.top.mas_equalTo(self.managerInfoView).offset(10);
}];
[self.nickLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.avatarImageView);
make.left.mas_equalTo(self.avatarImageView.mas_right).offset(6);
make.right.mas_lessThanOrEqualTo(self.moreButton.mas_left).offset(-5);
}];
[self.idLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.nickLabel);
make.top.mas_equalTo(self.nickLabel.mas_bottom).offset(6);
}];
[self.moreButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.right.mas_equalTo(self.backView).offset(-5);
make.top.mas_equalTo(self.backView).offset(10);
make.width.height.mas_equalTo(30);
}];
[self.titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.backView).offset(10);
make.top.mas_equalTo(self.managerInfoView.mas_bottom).offset(15);
}];
[self.collectionView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.bottom.mas_equalTo(self.backView);
make.top.mas_equalTo(self.titleLabel.mas_bottom).offset(6);
}];
[self.menuView mas_makeConstraints:^(MASConstraintMaker *make) {
make.right.mas_equalTo(self.backView).offset(-5);
make.top.mas_equalTo(self.moreButton.mas_bottom).offset(2);
}];
}
#pragma mark - UICollectionViewCellDelegate And UICollectionViewDatasource
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
return self.managerInfo.roomList.count;
}
-(__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
XPGuildSuperAdminRoomCollectionViewCell * cell = [collectionView dequeueReusableCellWithReuseIdentifier:NSStringFromClass([XPGuildSuperAdminRoomCollectionViewCell class]) forIndexPath:indexPath];
GuildRoomInfoModel * roomInfo = [self.managerInfo.roomList objectAtIndex:indexPath.row];
cell.roomInfo = roomInfo;
return cell;
}
#pragma mark - XPGuildSuperAdminMenuViewDelegate
- (void)xPGuildSuperAdminMenuView:(XPGuildSuperAdminMenuView *)view didClickType:(GuildSuperAdminMenuType)memuType {
self.menuView.hidden = YES;
if (self.delegate && [self.delegate respondsToSelector:@selector(xPGuildSuperAdminSetTableViewCell:didChooseType:)]) {
[self.delegate xPGuildSuperAdminSetTableViewCell:self.managerInfo didChooseType:memuType];
}
}
#pragma mark - Event Response
- (void)moreButtonButtonAction:(UIButton *)sender {
self.menuView.hidden = !self.menuView.hidden;
}
#pragma mark - Getters And Setters
- (void)setManagerInfo:(GuildSuperAdminInfoModel *)managerInfo {
_managerInfo = managerInfo;
if (_managerInfo) {
self.avatarImageView.imageUrl = _managerInfo.avatar;
self.nickLabel.text= _managerInfo.nick;
self.idLabel.text = [NSString stringWithFormat:@"大鹅号:%@", _managerInfo.erbanNo];
[self.collectionView reloadData];
}
}
- (UIView *)backView {
if (!_backView) {
_backView = [[UIView alloc] init];
_backView.backgroundColor = [ThemeColor appCellBackgroundColor];
_backView.layer.masksToBounds = YES;
_backView.layer.cornerRadius = 10;
}
return _backView;
}
- (UIView *)managerInfoView {
if (!_managerInfoView) {
_managerInfoView = [[UIView alloc] init];
_managerInfoView.backgroundColor = [UIColor clearColor];
}
return _managerInfoView;
}
- (NetImageView *)avatarImageView {
if (!_avatarImageView) {
NetImageConfig * config = [[NetImageConfig alloc]init];
config.imageType = ImageTypeUserIcon;
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
_avatarImageView = [[NetImageView alloc] initWithConfig:config];
_avatarImageView.layer.masksToBounds = YES;
_avatarImageView.layer.cornerRadius = 64/2;
_avatarImageView.layer.borderColor = [ThemeColor appMainColor].CGColor;
_avatarImageView.layer.borderWidth = 1;
}
return _avatarImageView;
}
- (UILabel *)nickLabel {
if (!_nickLabel) {
_nickLabel = [[UILabel alloc] init];
_nickLabel.font = [UIFont systemFontOfSize:18];
_nickLabel.textColor = [ThemeColor mainTextColor];
}
return _nickLabel;
}
- (UILabel *)idLabel {
if (!_idLabel) {
_idLabel = [[UILabel alloc] init];
_idLabel.font = [UIFont systemFontOfSize:12];
_idLabel.textColor = [ThemeColor secondTextColor];
}
return _idLabel;
}
- (UIButton *)moreButton {
if (!_moreButton) {
_moreButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_moreButton setImage:[UIImage imageNamed:@"mine_guild_super_admin_more"] forState:UIControlStateNormal];
[_moreButton setImage:[UIImage imageNamed:@"mine_guild_super_admin_more"] forState:UIControlStateSelected];
[_moreButton addTarget:self action:@selector(moreButtonButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _moreButton;
}
- (UILabel *)titleLabel {
if (!_titleLabel) {
_titleLabel = [[UILabel alloc] init];
_titleLabel.text = @"管理的房间";
_titleLabel.font = [UIFont systemFontOfSize:14];
_titleLabel.textColor = [ThemeColor mainTextColor];
}
return _titleLabel;
}
- (UICollectionView *)collectionView{
if (!_collectionView) {
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];
layout.scrollDirection = UICollectionViewScrollDirectionHorizontal;
layout.minimumLineSpacing = 10;
layout.itemSize = CGSizeMake(60, 80);
layout.sectionInset = UIEdgeInsetsMake(0, 10, 0, 10);
_collectionView = [[UICollectionView alloc] initWithFrame:CGRectZero collectionViewLayout:layout];
_collectionView.dataSource = self;
_collectionView.delegate = self;
_collectionView.backgroundColor = [UIColor whiteColor];
[_collectionView registerClass:[XPGuildSuperAdminRoomCollectionViewCell class] forCellWithReuseIdentifier:NSStringFromClass([XPGuildSuperAdminRoomCollectionViewCell class])];
}
return _collectionView;
}
- (XPGuildSuperAdminMenuView *)menuView {
if (!_menuView) {
_menuView = [[XPGuildSuperAdminMenuView alloc] init];
_menuView.delegate = self;
_menuView.hidden = YES;
}
return _menuView;
}
@end

View File

@@ -0,0 +1,29 @@
//
// XPGuildSuperAdminMenuView.h
// xplan-ios
//
// Created by 冯硕 on 2022/4/13.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
typedef NS_ENUM(NSInteger, GuildSuperAdminMenuType) {
///设置管理的房间
GuildSuperAdminMenuType_Set_Manager_Room =1,
///移除管理
GuildSuperAdminMenuType_Remove_Super_Admnin
};
@class XPGuildSuperAdminMenuView;
@protocol XPGuildSuperAdminMenuViewDelegate <NSObject>
- (void)xPGuildSuperAdminMenuView:(XPGuildSuperAdminMenuView *)view didClickType:(GuildSuperAdminMenuType)memuType;
@end
@interface XPGuildSuperAdminMenuView : UIView
///代理
@property (nonatomic,weak) id<XPGuildSuperAdminMenuViewDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,138 @@
//
// XPGuildSuperAdminMenuView.m
// xplan-ios
//
// Created by on 2022/4/13.
//
#import "XPGuildSuperAdminMenuView.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor.h"
@interface XPGuildSuperAdminMenuView ()
///
@property (nonatomic,strong) UIStackView *stackView;
///
@property (nonatomic,strong) UIButton *managerRoomButton;
///线
@property (nonatomic,strong) UIView *lineView;
///
@property (nonatomic,strong) UIButton *removeButton;
@end
@implementation XPGuildSuperAdminMenuView
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {
[self initSubViews];
[self initSubViewConstraints];
}
return self;
}
- (void)drawRect:(CGRect)rect {
CGFloat startX = self.frame.size.width - 30;
CGFloat startY = 3;
CGFloat endY = 10;
CGFloat width = 6;
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextMoveToPoint(context, startX, startY);
CGContextAddLineToPoint(context, startX + width, endY);
CGContextAddLineToPoint(context, startX - width, endY);
CGContextClosePath(context);
[UIColorFromRGB(0x3C3C3C) setFill];
[UIColorFromRGB(0x3C3C3C) setStroke];
CGContextDrawPath(context, kCGPathFillStroke);
}
#pragma mark - Private Method
- (void)initSubViews {
self.backgroundColor = UIColorFromRGB(0x3C3C3C);
self.layer.masksToBounds = YES;
self.layer.cornerRadius = 8;
[self addSubview:self.stackView];
[self.stackView addArrangedSubview:self.managerRoomButton];
[self.stackView addArrangedSubview:self.lineView];
[self.stackView addArrangedSubview:self.removeButton];
}
- (void)initSubViewConstraints {
[self mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(110);
make.height.mas_equalTo(65);
}];
[self.stackView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.top.bottom.mas_equalTo(self);
}];
[self.managerRoomButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(30);
}];
[self.lineView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(1);
}];
}
#pragma mark - Event Response
- (void)managerRoomButtonAction:(UIButton *)sender {
if (self.delegate && [self.delegate respondsToSelector:@selector(xPGuildSuperAdminMenuView:didClickType:)]) {
[self.delegate xPGuildSuperAdminMenuView:self didClickType:sender.tag];
}
}
#pragma mark - Getters And Setters
- (UIStackView *)stackView {
if (!_stackView) {
_stackView = [[UIStackView alloc] init];
_stackView.axis = UILayoutConstraintAxisVertical;
_stackView.distribution = UIStackViewDistributionFill;
_stackView.alignment = UIStackViewAlignmentFill;
_stackView.spacing = 0;
}
return _stackView;
}
- (UIButton *)managerRoomButton {
if (!_managerRoomButton) {
_managerRoomButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_managerRoomButton setTitle:@"设置管理的房间" forState:UIControlStateNormal];
[_managerRoomButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
_managerRoomButton.titleLabel.font = [UIFont systemFontOfSize:12];
_managerRoomButton.tag = GuildSuperAdminMenuType_Set_Manager_Room;
[_managerRoomButton addTarget:self action:@selector(managerRoomButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _managerRoomButton;
}
- (UIView *)lineView {
if (!_lineView) {
_lineView = [[UIView alloc] init];
_lineView.backgroundColor = [UIColor whiteColor];
}
return _lineView;
}
- (UIButton *)removeButton {
if (!_removeButton) {
_removeButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_removeButton setTitle:@"移除超管身份" forState:UIControlStateNormal];
[_removeButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
_removeButton.titleLabel.font = [UIFont systemFontOfSize:12];
_removeButton.tag = GuildSuperAdminMenuType_Remove_Super_Admnin;
[_removeButton addTarget:self action:@selector(managerRoomButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _removeButton;
}
@end

View File

@@ -0,0 +1,19 @@
//
// XPMineGuildChooseManagerViewController.h
// xplan-ios
//
// Created by 冯硕 on 2022/4/13.
//
#import "MvpViewController.h"
NS_ASSUME_NONNULL_BEGIN
@interface XPMineGuildChooseManagerViewController : MvpViewController
///家族id
@property (nonatomic,copy) NSString *clanId;
///管理员的iuid
@property (nonatomic,copy) NSString *targetUid;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,253 @@
//
// XPMineGuildChooseManagerViewController.m
// xplan-ios
//
// Created by on 2022/4/13.
//
#import "XPMineGuildChooseManagerViewController.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor.h"
#import "XPMacro.h"
#import "TTPopup.h"
#import "UIImage+Utils.h"
///Model
#import "GuildRoomInfoModel.h"
///View
#import "XPGuildChooseManagerRoomTableViewCell.h"
///P
#import "XPSuperAdminManagerRoomPresenter.h"
#import "XPSuperAdminManagerRoomProtocol.h"
@interface XPMineGuildChooseManagerViewController ()<UITableViewDelegate, UITableViewDataSource, XPGuildChooseManagerRoomTableViewCellDelegate, XPSuperAdminManagerRoomProtocol>
///
@property (nonatomic,strong) UIView * navView;
///
@property (nonatomic,strong) UIButton *backButton;
///
@property (nonatomic,strong) UILabel *titleLabel;
///
@property (nonatomic,strong) UITableView *tableView;
///
@property (nonatomic,strong) UIButton * sureButton;
///
@property (nonatomic,strong) NSArray<GuildRoomInfoModel *> *datasource;
///
@property (nonatomic,strong) NSMutableArray *chooseArray;
///
@property (nonatomic,strong) NSMutableArray *changeArray;
@end
@implementation XPMineGuildChooseManagerViewController
- (BOOL)isHiddenNavBar {
return YES;
}
- (__kindof id)createPresenter {
return [[XPSuperAdminManagerRoomPresenter alloc] init];
}
- (void)viewDidLoad {
[super viewDidLoad];
[self.presenter getGuildRoomList:self.clanId targetUid:self.targetUid];
[self initSubViews];
[self initSubViewConstraints];
}
#pragma mark - Private Method
- (void)initSubViews {
self.titleLabel.text = @"选择管理的房间";
[self.view addSubview:self.navView];
[self.view addSubview:self.tableView];
[self.view addSubview:self.sureButton];
[self.navView addSubview:self.backButton];
[self.navView addSubview:self.titleLabel];
}
- (void)initSubViewConstraints {
[self.navView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.top.mas_equalTo(self.view);
make.height.mas_equalTo(kNavigationHeight);
}];
[self.backButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.view).mas_offset(10);
make.top.mas_equalTo(statusbarHeight);
make.height.width.mas_equalTo(44);
}];
[self.titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self.navView);
make.centerY.mas_equalTo(self.backButton);
}];
[self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.bottom.mas_equalTo(self.view);
make.top.mas_equalTo(self.navView.mas_bottom);
}];
[self.sureButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self.view).inset(47);
make.height.mas_equalTo(44);
make.bottom.mas_equalTo(self.view).offset(-kSafeAreaBottomHeight - 20);
}];
}
#pragma mark - UITableViewDelegate And UITableViewDataSource
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return self.datasource.count;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
XPGuildChooseManagerRoomTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPGuildChooseManagerRoomTableViewCell class])];
if (cell == nil) {
cell = [[XPGuildChooseManagerRoomTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:NSStringFromClass([XPGuildChooseManagerRoomTableViewCell class])];
}
cell.delegate = self;
GuildRoomInfoModel* roomInfo = [self.datasource objectAtIndex:indexPath.row];
cell.roomInfo = roomInfo;
if (roomInfo.hasManage) {
if (![self.chooseArray containsObject:roomInfo.hallRoomUid]) {
[self.chooseArray addObject:roomInfo.hallRoomUid];
}
} else {
if ([self.chooseArray containsObject:roomInfo.hallRoomUid]) {
[self.chooseArray removeObject:roomInfo.hallRoomUid];
}
}
return cell;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return 88;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[tableView deselectRowAtIndexPath:indexPath animated:YES];
}
#pragma mark - XPGuildChooseManagerRoomTableViewCellDelegate
- (void)xPGuildChooseManagerRoomTableViewCell:(XPGuildChooseManagerRoomTableViewCell *)view didChooseInfo:(GuildRoomInfoModel *)roomInfo {
roomInfo.hasManage = !roomInfo.hasManage;
[self.tableView reloadData];
if (roomInfo.hasManage) {
if (![self.changeArray containsObject:roomInfo.hallRoomUid]) {
[self.changeArray addObject:roomInfo.hallRoomUid];
}
} else {
if ([self.changeArray containsObject:roomInfo.hallRoomUid]) {
[self.changeArray removeObject:roomInfo.hallRoomUid];
}
}
}
#pragma mark - XPSuperAdminManagerRoomProtocol
- (void)getGuildRoomListSuccess:(NSArray *)array {
self.datasource = array;
[self.tableView reloadData];
}
- (void)guildSuperAdminManagerRoomListSuccess {
[self showSuccessToast:@"设置成功"];
[self.navigationController popViewControllerAnimated:YES];
}
#pragma mark - Event Response
- (void)backButtonAction:(UIButton *)sender {
if (self.changeArray.count <=0) {
[self.navigationController popViewControllerAnimated:YES];
return;
}
[TTPopup alertWithMessage:@"此时关闭会导致超管设置不成功确认关闭吗?" confirmHandler:^{
[self.navigationController popViewControllerAnimated:YES];
} cancelHandler:^{
}];
}
- (void)sureButtonAction:(UIButton *)sender {
[self.presenter guildSuperAdminManagerRoomList:self.chooseArray.copy targetUid:self.targetUid];
}
#pragma mark - Getters And Setters
- (UILabel *)titleLabel {
if (!_titleLabel) {
_titleLabel = [[UILabel alloc] init];
_titleLabel.textAlignment = NSTextAlignmentCenter;
_titleLabel.font = [UIFont boldSystemFontOfSize:18];
_titleLabel.textColor = [ThemeColor mainTextColor];
}
return _titleLabel;
}
- (UIView *)navView {
if (!_navView) {
_navView = [[UIView alloc] init];
_navView.backgroundColor = [UIColor whiteColor];
}
return _navView;
}
- (UIButton *)backButton {
if (!_backButton) {
_backButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_backButton setImage:[UIImage imageNamed:@"common_nav_back"] forState:UIControlStateNormal];
_backButton.contentHorizontalAlignment = UIControlContentHorizontalAlignmentLeft;
[_backButton addTarget:self action:@selector(backButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _backButton;
}
- (UITableView *)tableView {
if (!_tableView) {
_tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStylePlain];
_tableView.delegate = self;
_tableView.dataSource = self;
UIView * headerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, 15)];
headerView.backgroundColor = [UIColor clearColor];
_tableView.tableHeaderView = headerView;
_tableView.tableFooterView = [UIView new];
_tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
_tableView.backgroundColor = [UIColor clearColor];
if (@available(iOS 11.0, *)) {
_tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}
[_tableView registerClass:[XPGuildChooseManagerRoomTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPGuildChooseManagerRoomTableViewCell class])];
}
return _tableView;
}
- (UIButton *)sureButton {
if (!_sureButton) {
_sureButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_sureButton setTitle:@"完成" forState:UIControlStateNormal];
[_sureButton setTitleColor:[ThemeColor confirmButtonTextColor] forState:UIControlStateNormal];
_sureButton.titleLabel.font = [UIFont systemFontOfSize:15];
[_sureButton setBackgroundImage:[UIImage gradientColorImageFromColors:@[[ThemeColor confirmButtonGradientStartColor], [ThemeColor confirmButtonGradientEndColor]] gradientType:GradientTypeLeftToRight imgSize:CGSizeMake(10, 10)] forState:UIControlStateNormal];
_sureButton.layer.masksToBounds = YES;
_sureButton.layer.cornerRadius = 20;
[_sureButton addTarget:self action:@selector(sureButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _sureButton;
}
- (NSMutableArray *)chooseArray {
if (!_chooseArray) {
_chooseArray = [NSMutableArray array];
}
return _chooseArray;
}
- (NSMutableArray *)changeArray {
if (!_changeArray) {
_changeArray = [NSMutableArray array];
}
return _changeArray;
}
@end

View File

@@ -0,0 +1,17 @@
//
// XPGuildSuperAdminSetViewController.h
// xplan-ios
//
// Created by 冯硕 on 2022/4/13.
//
#import "MvpViewController.h"
NS_ASSUME_NONNULL_BEGIN
@interface XPMineGuildSuperAdminSetViewController : MvpViewController
///家族的ID
@property (nonatomic,copy) NSString *clanId;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,201 @@
//
// XPGuildSuperAdminSetViewController.m
// xplan-ios
//
// Created by on 2022/4/13.
//
#import "XPMineGuildSuperAdminSetViewController.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "UIImage+Utils.h"
#import "ThemeColor.h"
#import "XPMacro.h"
#import "TTPopup.h"
///Model
#import "GuildSuperAdminInfoModel.h"
///View
#import "XPGuildSuperAdminSetTableViewCell.h"
#import "XPMineGuildEmptyTableViewCell.h"
#import "XPMineGuildChooseManagerViewController.h"
///P
#import "XPSuperAdminSetPresenter.h"
#import "XPSuperAdminSetProtocol.h"
@interface XPMineGuildSuperAdminSetViewController ()<UITableViewDelegate, UITableViewDataSource, XPSuperAdminSetProtocol, XPGuildSuperAdminSetTableViewCellDelegate>
///
@property (nonatomic,strong) UITableView *tableView;
///
@property (nonatomic,strong) UIButton *addManagerButton;
///
@property (nonatomic,strong) NSMutableArray<GuildSuperAdminInfoModel *> *datasource;
@end
@implementation XPMineGuildSuperAdminSetViewController
- (__kindof id)createPresenter {
return [[XPSuperAdminSetPresenter alloc] init];
}
- (void)viewDidLoad {
[super viewDidLoad];
[self initSubViews];
[self initSubViewConstraints];
}
- (void)viewWillAppear:(BOOL)animated {
[super viewWillAppear:animated];
[self.presenter getClanSuperAdminList:self.clanId];
}
#pragma mark - Private Method
- (void)initSubViews {
self.title = @"公会超管设置";
[self.view addSubview:self.tableView];
[self.view addSubview:self.addManagerButton];
}
- (void)initSubViewConstraints {
[self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.mas_equalTo(self.view);
}];
[self.addManagerButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self.view).inset(47);
make.height.mas_equalTo(40);
make.bottom.mas_equalTo(self.view.mas_safeAreaLayoutGuideBottom).offset(-20);
}];
}
#pragma mark - UITableViewDelegate And UITableViewDataSource
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return self.datasource.count > 0 ? self.datasource.count : 1;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (self.datasource.count > 0) {
XPGuildSuperAdminSetTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPGuildSuperAdminSetTableViewCell class])];
if (cell == nil) {
cell = [[XPGuildSuperAdminSetTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:NSStringFromClass([XPGuildSuperAdminSetTableViewCell class])];
}
cell.delegate = self;
GuildSuperAdminInfoModel * info= [self.datasource objectAtIndex:indexPath.row];
cell.managerInfo = info;
return cell;
}
XPMineGuildEmptyTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMineGuildEmptyTableViewCell class])];
if (cell == nil) {
cell = [[XPMineGuildEmptyTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:NSStringFromClass([XPMineGuildEmptyTableViewCell class])];
}
return cell;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return self.datasource.count > 0 ? 220 : 500;
}
#pragma mark - XPGuildSuperAdminSetTableViewCellDelegate
- (void)xPGuildSuperAdminSetTableViewCell:(GuildSuperAdminInfoModel *)managerInfo didChooseType:(GuildSuperAdminMenuType)menuType {
switch (menuType) {
case GuildSuperAdminMenuType_Set_Manager_Room:
{
XPMineGuildChooseManagerViewController * managerRoomVC = [[XPMineGuildChooseManagerViewController alloc] init];
managerRoomVC.clanId = self.clanId;
managerRoomVC.targetUid = managerInfo.uid;
[self.navigationController pushViewController:managerRoomVC animated:YES];
}
break;
case GuildSuperAdminMenuType_Remove_Super_Admnin:
{
NSString * title = [NSString stringWithFormat:@"确定要移除%@的公会超级管理员身份吗?", managerInfo.nick];
TTAlertConfig * config = [[TTAlertConfig alloc] init];
config.message = title;
TTAlertMessageAttributedConfig * attributeConfig = [[TTAlertMessageAttributedConfig alloc] init];
attributeConfig.text = managerInfo.nick;
attributeConfig.color = [ThemeColor appMainColor];
config.messageAttributedConfig = @[attributeConfig];
[TTPopup alertWithConfig:config confirmHandler:^{
[self.presenter removeSuperAdmin:managerInfo.uid];
} cancelHandler:^{
}];
}
break;
default:
break;
}
}
#pragma mark - XPSuperAdminSetProtocol
- (void)getClanSuperAdminListSuccess:(NSArray *)list {
[self.datasource removeAllObjects];
[self.datasource addObjectsFromArray:list];
[self.tableView reloadData];
}
- (void)removeSuperAdminSuccess:(NSString *)uid {
__block GuildSuperAdminInfoModel * removeItem;
[self.datasource enumerateObjectsUsingBlock:^(GuildSuperAdminInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.uid.integerValue == uid.integerValue) {
removeItem = obj;
*stop = YES;
}
}];
if (removeItem) {
[self.datasource removeObject:removeItem];
[self.tableView reloadData];
}
}
#pragma mark - Event Response
- (void)addManagerButtonAction:(UIButton *)sender {
}
#pragma mark - Getters And Setters
- (UIButton *)addManagerButton {
if (!_addManagerButton) {
_addManagerButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_addManagerButton setTitle:@"添加公会超管" forState:UIControlStateNormal];
[_addManagerButton setTitleColor:[ThemeColor confirmButtonTextColor] forState:UIControlStateNormal];
_addManagerButton.titleLabel.font = [UIFont systemFontOfSize:15];
[_addManagerButton setBackgroundImage:[UIImage gradientColorImageFromColors:@[[ThemeColor confirmButtonGradientStartColor], [ThemeColor confirmButtonGradientEndColor]] gradientType:GradientTypeLeftToRight imgSize:CGSizeMake(10, 10)] forState:UIControlStateNormal];
_addManagerButton.layer.masksToBounds = YES;
_addManagerButton.layer.cornerRadius = 20;
[_addManagerButton addTarget:self action:@selector(addManagerButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _addManagerButton;
}
- (UITableView *)tableView {
if (!_tableView) {
_tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStylePlain];
_tableView.delegate = self;
_tableView.dataSource = self;
UIView * headerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, 15)];
headerView.backgroundColor = [UIColor clearColor];
_tableView.tableHeaderView = headerView;
_tableView.tableFooterView = [UIView new];
_tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
_tableView.backgroundColor = [UIColor clearColor];
if (@available(iOS 11.0, *)) {
_tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}
[_tableView registerClass:[XPGuildSuperAdminSetTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPGuildSuperAdminSetTableViewCell class])];
[_tableView registerClass:[XPMineGuildEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMineGuildEmptyTableViewCell class])];
}
return _tableView;
}
- (NSMutableArray<GuildSuperAdminInfoModel *> *)datasource {
if (!_datasource) {
_datasource = [NSMutableArray array];
}
return _datasource;
}
@end

View File

@@ -23,6 +23,7 @@
#import "XPMineGuildSearchViewController.h"
#import "XPMineClanIncomeStatisViewController.h"
#import "XPMineAnchorIncomeStatisViewController.h"
#import "XPMineGuildSuperAdminSetViewController.h"
///P
#import "XPClanPresenter.h"
#import "XPClanProtocol.h"
@@ -246,6 +247,12 @@
clanIncomeVC.clanId = self.clanDetailInfo.clan.cid;
[self.navigationController pushViewController:clanIncomeVC animated:YES];
}
case GuildHeaderMenuType_Super_Admin:
{
XPMineGuildSuperAdminSetViewController * superAdminVC = [[XPMineGuildSuperAdminSetViewController alloc] init];
superAdminVC.clanId = self.clanDetailInfo.clan.cid;
[self.navigationController pushViewController:superAdminVC animated:YES];
}
default:
break;