企业包充值

This commit is contained in:
fengshuo
2022-05-14 19:05:35 +08:00
parent 5874beb3af
commit b1dd8c1510
40 changed files with 1737 additions and 35 deletions

View File

@@ -44,7 +44,7 @@ target 'xplan-ios' do
#登录的
pod 'mob_sharesdk'
pod 'mob_sharesdk/ShareSDKPlatforms/QQ'
pod 'mob_sharesdk/ShareSDKPlatforms/WeChat'
pod 'mob_sharesdk/ShareSDKPlatforms/WeChat_Lite'
pod 'mob_sharesdk/ShareSDKPlatforms/Apple'
pod 'mob_sharesdk/ShareSDKExtension'
pod 'SVGAPlayer', '~> 2.3'
@@ -63,6 +63,9 @@ target 'xplan-ios' do
pod 'Bugly'
#上传音乐
pod 'CocoaAsyncSocket',:modular_headers => true
#微信支付,支付宝支付
pod 'AlipaySDK-iOS'
pod 'WechatOpenSDK'
#调试
pod 'LookinServer', :configurations => ['Debug']

View File

@@ -15,6 +15,7 @@ PODS:
- AFNetworking/UIKit (4.0.1):
- AFNetworking/NSURLSession
- AgoraRtcEngine_iOS (3.0.1.1)
- AlipaySDK-iOS (15.8.8)
- Base64 (1.1.2)
- Bugly (2.5.93)
- CocoaAsyncSocket (7.6.5)
@@ -30,24 +31,24 @@ PODS:
- MBProgressHUD (1.2.0)
- MJExtension (3.3.0)
- MJRefresh (3.7.3)
- mob_sharesdk (4.4.2):
- mob_sharesdk/ShareSDK (= 4.4.2)
- mob_sharesdk (4.4.3):
- mob_sharesdk/ShareSDK (= 4.4.3)
- MOBFoundation (>= 3.2.9)
- mob_sharesdk/ShareSDK (4.4.2):
- mob_sharesdk/ShareSDK (4.4.3):
- MOBFoundation (>= 3.2.9)
- mob_sharesdk/ShareSDKExtension (4.4.2):
- mob_sharesdk/ShareSDKExtension (4.4.3):
- mob_sharesdk/ShareSDK
- MOBFoundation (>= 3.2.9)
- mob_sharesdk/ShareSDKPlatforms/Apple (4.4.2):
- mob_sharesdk/ShareSDKPlatforms/Apple (4.4.3):
- mob_sharesdk/ShareSDK
- MOBFoundation (>= 3.2.9)
- mob_sharesdk/ShareSDKPlatforms/QQ (4.4.2):
- mob_sharesdk/ShareSDKPlatforms/QQ (4.4.3):
- mob_sharesdk/ShareSDK
- MOBFoundation (>= 3.2.9)
- mob_sharesdk/ShareSDKPlatforms/WeChat (4.4.2):
- mob_sharesdk/ShareSDKPlatforms/WeChat_Lite (4.4.3):
- mob_sharesdk/ShareSDK
- MOBFoundation (>= 3.2.9)
- MOBFoundation (3.2.27)
- MOBFoundation (3.2.31)
- NIMSDK_LITE (9.0.1)
- NTESBaseComponent (1.4)
- NTESQuickPass (3.2.6):
@@ -81,6 +82,7 @@ PODS:
- UMCommon (7.3.5):
- UMDevice
- UMDevice (2.0.5)
- WechatOpenSDK (1.8.7.1)
- YYCache (1.0.4)
- YYImage (1.0.4):
- YYImage/Core (= 1.0.4)
@@ -93,6 +95,7 @@ PODS:
DEPENDENCIES:
- AFNetworking
- AgoraRtcEngine_iOS (~> 3.0.1)
- AlipaySDK-iOS
- Base64
- Bugly
- CocoaAsyncSocket
@@ -111,7 +114,7 @@ DEPENDENCIES:
- mob_sharesdk/ShareSDKExtension
- mob_sharesdk/ShareSDKPlatforms/Apple
- mob_sharesdk/ShareSDKPlatforms/QQ
- mob_sharesdk/ShareSDKPlatforms/WeChat
- mob_sharesdk/ShareSDKPlatforms/WeChat_Lite
- NIMSDK_LITE (~> 9.0.1)
- NTESQuickPass
- pop (~> 1.0.12)
@@ -127,6 +130,7 @@ DEPENDENCIES:
- TZImagePickerController
- UMCommon
- UMDevice
- WechatOpenSDK
- YYText
- YYWebImage (~> 1.0.5)
@@ -134,6 +138,7 @@ SPEC REPOS:
https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git:
- AFNetworking
- AgoraRtcEngine_iOS
- AlipaySDK-iOS
- Base64
- Bugly
- CocoaAsyncSocket
@@ -169,6 +174,7 @@ SPEC REPOS:
- TZImagePickerController
- UMCommon
- UMDevice
- WechatOpenSDK
- YYCache
- YYImage
- YYText
@@ -177,6 +183,7 @@ SPEC REPOS:
SPEC CHECKSUMS:
AFNetworking: 7864c38297c79aaca1500c33288e429c3451fdce
AgoraRtcEngine_iOS: 8ccceaaecff2e80ab28fcd33f3dfd2b417eb5365
AlipaySDK-iOS: 9289d94792535cd14c5c241c720a7e981edd7035
Base64: cecfb41a004124895a7bcee567a89bae5a89d49b
Bugly: b8715e6ec4004b7f7fbffab0643ba80545aee3da
CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99
@@ -192,8 +199,8 @@ SPEC CHECKSUMS:
MBProgressHUD: 3ee5efcc380f6a79a7cc9b363dd669c5e1ae7406
MJExtension: 01704cca2b60a214c10761b6491eab74069d68a9
MJRefresh: ec9c53ff4abf3a9237b4283862f1bd51c2ee3fdb
mob_sharesdk: a60006891a079486ff3269ed326adfa05a967c01
MOBFoundation: efdc3ce6b843fbc10ae8c1c6122a02b0d845b39b
mob_sharesdk: d7b374c3bdb8f1d4ba4b9c20847e7d0802d05cfa
MOBFoundation: 06da5f74514bf8bfadc56b732f15e046e56f9deb
NIMSDK_LITE: c376a3f90c1cd79d9cca39fbdeb6a718e99e244a
NTESBaseComponent: 9e97373eec7e5a26c39db26477bf99a37ee9e71a
NTESQuickPass: 781bd12ee63681389fe9b646c837fa76e3a00e6e
@@ -212,11 +219,12 @@ SPEC CHECKSUMS:
TZImagePickerController: 943511626019431372cf908f24c114521e484f0e
UMCommon: ab4d875ddefe1b06c60b577e4a58bc4d433ee067
UMDevice: c13bbb2e8ca6c67d1e23e03162553e3ec5a8b5b0
WechatOpenSDK: 6a4d1436c15b3b5fe2a0bd383f3046010186da44
YYCache: 8105b6638f5e849296c71f331ff83891a4942952
YYImage: 1e1b62a9997399593e4b9c4ecfbbabbf1d3f3b54
YYText: 5c461d709e24d55a182d1441c41dc639a18a4849
YYWebImage: 5f7f36aee2ae293f016d418c7d6ba05c4863e928
PODFILE CHECKSUM: 89b628f1802cd346dba7b8c67843e04ac421b2ed
PODFILE CHECKSUM: 05e02d1c23a74cf684443a3d9237239199547b1c
COCOAPODS: 1.11.3

View File

@@ -691,6 +691,16 @@
E839533F276A0CDB00CF2F24 /* XPMineNameplateTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E839533E276A0CDB00CF2F24 /* XPMineNameplateTableViewCell.m */; };
E839806829027D4A0084BFC8 /* room_wish_gift_sendCelebrate.svga in Resources */ = {isa = PBXBuildFile; fileRef = E839806729027D4A0084BFC8 /* room_wish_gift_sendCelebrate.svga */; };
E839806B290288660084BFC8 /* XPMessageInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E839806A290288660084BFC8 /* XPMessageInfoModel.m */; };
E83A2A37282F4E85002AD58F /* XPMineRechargeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E83A2A36282F4E85002AD58F /* XPMineRechargeViewController.m */; };
E83A2A3A282F4EA7002AD58F /* XPEnterpriseRechargePresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E83A2A39282F4EA7002AD58F /* XPEnterpriseRechargePresenter.m */; };
E83A2A3E282F4ED3002AD58F /* Api+EnterpriseRecharge.m in Sources */ = {isa = PBXBuildFile; fileRef = E83A2A3D282F4ED3002AD58F /* Api+EnterpriseRecharge.m */; };
E83A2A41282F4EFA002AD58F /* EnterpriseRechargeListInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E83A2A40282F4EFA002AD58F /* EnterpriseRechargeListInfoModel.m */; };
E83A2A46282F5662002AD58F /* XPEnterpriseRechargeHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = E83A2A45282F5662002AD58F /* XPEnterpriseRechargeHeaderView.m */; };
E83A2A4C282F5B6A002AD58F /* XPEnterpriseChargeTypeTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E83A2A4B282F5B6A002AD58F /* XPEnterpriseChargeTypeTableViewCell.m */; };
E83A2A4F282F5B95002AD58F /* XPEnterpriseChargeListTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E83A2A4E282F5B95002AD58F /* XPEnterpriseChargeListTableViewCell.m */; };
E83A2A52282F5BBA002AD58F /* XPEnterpriseChargeListCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E83A2A51282F5BBA002AD58F /* XPEnterpriseChargeListCollectionViewCell.m */; };
E83A2A55282F5C50002AD58F /* XPEnterpriseRechargeFootView.m in Sources */ = {isa = PBXBuildFile; fileRef = E83A2A54282F5C50002AD58F /* XPEnterpriseRechargeFootView.m */; };
E83A2A58282F8590002AD58F /* EnterPrieseRechargeTypeItemModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E83A2A57282F8590002AD58F /* EnterPrieseRechargeTypeItemModel.m */; };
E83ABEF6280E9AD800322EE4 /* MessageContentUnSupportView.m in Sources */ = {isa = PBXBuildFile; fileRef = E83ABEF5280E9AD800322EE4 /* MessageContentUnSupportView.m */; };
E83ABEF9280EAF3F00322EE4 /* MessageContentOpenLiveView.m in Sources */ = {isa = PBXBuildFile; fileRef = E83ABEF8280EAF3F00322EE4 /* MessageContentOpenLiveView.m */; };
E83ABEFD280EB5E200322EE4 /* ContentOpenLiveInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E83ABEFC280EB5E200322EE4 /* ContentOpenLiveInfoModel.m */; };
@@ -837,6 +847,7 @@
E87E914E2796678D00A7B3F2 /* XPMineDressEmptyTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E87E914D2796678D00A7B3F2 /* XPMineDressEmptyTableViewCell.m */; };
E87E91522796A15500A7B3F2 /* MicroExtModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E87E91512796A15500A7B3F2 /* MicroExtModel.m */; };
E87E91552796B6DE00A7B3F2 /* XPRoomInviteUserViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E87E91542796B6DE00A7B3F2 /* XPRoomInviteUserViewController.m */; };
E87FCE53282FABC600301132 /* XPEnterpriseRechargePayTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E87FCE52282FABC600301132 /* XPEnterpriseRechargePayTableViewCell.m */; };
E880B39E278BD49E00A83B0D /* XPAcrossRoomPKViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E880B39D278BD49E00A83B0D /* XPAcrossRoomPKViewController.m */; };
E880B3A1278BD60C00A83B0D /* XPAcrossRoomPKSelectRoomView.m in Sources */ = {isa = PBXBuildFile; fileRef = E880B3A0278BD60C00A83B0D /* XPAcrossRoomPKSelectRoomView.m */; };
E880B3A6278BD69900A83B0D /* XPAcrossRoomPKTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E880B3A5278BD69900A83B0D /* XPAcrossRoomPKTableViewCell.m */; };
@@ -1060,7 +1071,6 @@
E8B846C226FD82DC00A777FE /* XPMineUserInfoAlbumCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B846C126FD82DC00A777FE /* XPMineUserInfoAlbumCollectionViewCell.m */; };
E8B846C526FDB41A00A777FE /* XPMineUserInfolbumPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B846C426FDB41A00A777FE /* XPMineUserInfolbumPresenter.m */; };
E8B846C726FDB45000A777FE /* XPMineUserInfoAlbumProtocol.h in Sources */ = {isa = PBXBuildFile; fileRef = E8B846C626FDB44100A777FE /* XPMineUserInfoAlbumProtocol.h */; };
E8B846CB26FDD7CD00A777FE /* XPMineRechargeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B846CA26FDD7CD00A777FE /* XPMineRechargeViewController.m */; };
E8B846CF26FDD96100A777FE /* XPMineRechageHeadView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B846CE26FDD96100A777FE /* XPMineRechageHeadView.m */; };
E8B846D326FDDBE600A777FE /* XPMineRechargeTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B846D226FDDBE600A777FE /* XPMineRechargeTableViewCell.m */; };
E8B846D626FDE01B00A777FE /* XPMineRechargePresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8B846D526FDE01B00A777FE /* XPMineRechargePresenter.m */; };
@@ -2458,6 +2468,27 @@
E839806729027D4A0084BFC8 /* room_wish_gift_sendCelebrate.svga */ = {isa = PBXFileReference; lastKnownFileType = file; path = room_wish_gift_sendCelebrate.svga; sourceTree = "<group>"; };
E8398069290288660084BFC8 /* XPMessageInfoModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMessageInfoModel.h; sourceTree = "<group>"; };
E839806A290288660084BFC8 /* XPMessageInfoModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMessageInfoModel.m; sourceTree = "<group>"; };
E83A2A35282F4E85002AD58F /* XPMineRechargeViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineRechargeViewController.h; sourceTree = "<group>"; };
E83A2A36282F4E85002AD58F /* XPMineRechargeViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineRechargeViewController.m; sourceTree = "<group>"; };
E83A2A38282F4EA7002AD58F /* XPEnterpriseRechargePresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPEnterpriseRechargePresenter.h; sourceTree = "<group>"; };
E83A2A39282F4EA7002AD58F /* XPEnterpriseRechargePresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPEnterpriseRechargePresenter.m; sourceTree = "<group>"; };
E83A2A3B282F4EBB002AD58F /* XPEnterpriseRechargeProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPEnterpriseRechargeProtocol.h; sourceTree = "<group>"; };
E83A2A3C282F4ED3002AD58F /* Api+EnterpriseRecharge.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Api+EnterpriseRecharge.h"; sourceTree = "<group>"; };
E83A2A3D282F4ED3002AD58F /* Api+EnterpriseRecharge.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "Api+EnterpriseRecharge.m"; sourceTree = "<group>"; };
E83A2A3F282F4EFA002AD58F /* EnterpriseRechargeListInfoModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = EnterpriseRechargeListInfoModel.h; sourceTree = "<group>"; };
E83A2A40282F4EFA002AD58F /* EnterpriseRechargeListInfoModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = EnterpriseRechargeListInfoModel.m; sourceTree = "<group>"; };
E83A2A44282F5662002AD58F /* XPEnterpriseRechargeHeaderView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPEnterpriseRechargeHeaderView.h; sourceTree = "<group>"; };
E83A2A45282F5662002AD58F /* XPEnterpriseRechargeHeaderView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPEnterpriseRechargeHeaderView.m; sourceTree = "<group>"; };
E83A2A4A282F5B6A002AD58F /* XPEnterpriseChargeTypeTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPEnterpriseChargeTypeTableViewCell.h; sourceTree = "<group>"; };
E83A2A4B282F5B6A002AD58F /* XPEnterpriseChargeTypeTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPEnterpriseChargeTypeTableViewCell.m; sourceTree = "<group>"; };
E83A2A4D282F5B95002AD58F /* XPEnterpriseChargeListTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPEnterpriseChargeListTableViewCell.h; sourceTree = "<group>"; };
E83A2A4E282F5B95002AD58F /* XPEnterpriseChargeListTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPEnterpriseChargeListTableViewCell.m; sourceTree = "<group>"; };
E83A2A50282F5BBA002AD58F /* XPEnterpriseChargeListCollectionViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPEnterpriseChargeListCollectionViewCell.h; sourceTree = "<group>"; };
E83A2A51282F5BBA002AD58F /* XPEnterpriseChargeListCollectionViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPEnterpriseChargeListCollectionViewCell.m; sourceTree = "<group>"; };
E83A2A53282F5C50002AD58F /* XPEnterpriseRechargeFootView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPEnterpriseRechargeFootView.h; sourceTree = "<group>"; };
E83A2A54282F5C50002AD58F /* XPEnterpriseRechargeFootView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPEnterpriseRechargeFootView.m; sourceTree = "<group>"; };
E83A2A56282F8590002AD58F /* EnterPrieseRechargeTypeItemModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = EnterPrieseRechargeTypeItemModel.h; sourceTree = "<group>"; };
E83A2A57282F8590002AD58F /* EnterPrieseRechargeTypeItemModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = EnterPrieseRechargeTypeItemModel.m; sourceTree = "<group>"; };
E83ABEF4280E9AD800322EE4 /* MessageContentUnSupportView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MessageContentUnSupportView.h; sourceTree = "<group>"; };
E83ABEF5280E9AD800322EE4 /* MessageContentUnSupportView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MessageContentUnSupportView.m; sourceTree = "<group>"; };
E83ABEF7280EAF3F00322EE4 /* MessageContentOpenLiveView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MessageContentOpenLiveView.h; sourceTree = "<group>"; };
@@ -2765,6 +2796,8 @@
E87E91512796A15500A7B3F2 /* MicroExtModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MicroExtModel.m; sourceTree = "<group>"; };
E87E91532796B6DE00A7B3F2 /* XPRoomInviteUserViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomInviteUserViewController.h; sourceTree = "<group>"; };
E87E91542796B6DE00A7B3F2 /* XPRoomInviteUserViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomInviteUserViewController.m; sourceTree = "<group>"; };
E87FCE51282FABC600301132 /* XPEnterpriseRechargePayTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPEnterpriseRechargePayTableViewCell.h; sourceTree = "<group>"; };
E87FCE52282FABC600301132 /* XPEnterpriseRechargePayTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPEnterpriseRechargePayTableViewCell.m; sourceTree = "<group>"; };
E880B39C278BD49E00A83B0D /* XPAcrossRoomPKViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPAcrossRoomPKViewController.h; sourceTree = "<group>"; };
E880B39D278BD49E00A83B0D /* XPAcrossRoomPKViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPAcrossRoomPKViewController.m; sourceTree = "<group>"; };
E880B39F278BD60C00A83B0D /* XPAcrossRoomPKSelectRoomView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPAcrossRoomPKSelectRoomView.h; sourceTree = "<group>"; };
@@ -3206,8 +3239,6 @@
E8B846C326FDB41A00A777FE /* XPMineUserInfolbumPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineUserInfolbumPresenter.h; sourceTree = "<group>"; };
E8B846C426FDB41A00A777FE /* XPMineUserInfolbumPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineUserInfolbumPresenter.m; sourceTree = "<group>"; };
E8B846C626FDB44100A777FE /* XPMineUserInfoAlbumProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineUserInfoAlbumProtocol.h; sourceTree = "<group>"; };
E8B846C926FDD7CD00A777FE /* XPMineRechargeViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineRechargeViewController.h; sourceTree = "<group>"; };
E8B846CA26FDD7CD00A777FE /* XPMineRechargeViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineRechargeViewController.m; sourceTree = "<group>"; };
E8B846CD26FDD96100A777FE /* XPMineRechageHeadView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineRechageHeadView.h; sourceTree = "<group>"; };
E8B846CE26FDD96100A777FE /* XPMineRechageHeadView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineRechageHeadView.m; sourceTree = "<group>"; };
E8B846D126FDDBE600A777FE /* XPMineRechargeTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineRechargeTableViewCell.h; sourceTree = "<group>"; };
@@ -6432,6 +6463,92 @@
path = Cell;
sourceTree = "<group>";
};
E83A2A2F282F4E06002AD58F /* EnterpriseRecharge */ = {
isa = PBXGroup;
children = (
E83A2A34282F4E67002AD58F /* Model */,
E83A2A33282F4E5F002AD58F /* Api */,
E83A2A32282F4E58002AD58F /* View */,
E83A2A31282F4E50002AD58F /* Presenter */,
E83A2A30282F4E34002AD58F /* Protocol */,
);
path = EnterpriseRecharge;
sourceTree = "<group>";
};
E83A2A30282F4E34002AD58F /* Protocol */ = {
isa = PBXGroup;
children = (
E83A2A3B282F4EBB002AD58F /* XPEnterpriseRechargeProtocol.h */,
);
path = Protocol;
sourceTree = "<group>";
};
E83A2A31282F4E50002AD58F /* Presenter */ = {
isa = PBXGroup;
children = (
E83A2A38282F4EA7002AD58F /* XPEnterpriseRechargePresenter.h */,
E83A2A39282F4EA7002AD58F /* XPEnterpriseRechargePresenter.m */,
);
path = Presenter;
sourceTree = "<group>";
};
E83A2A32282F4E58002AD58F /* View */ = {
isa = PBXGroup;
children = (
E83A2A43282F5632002AD58F /* SubViews */,
E83A2A42282F562A002AD58F /* Cell */,
E83A2A35282F4E85002AD58F /* XPMineRechargeViewController.h */,
E83A2A36282F4E85002AD58F /* XPMineRechargeViewController.m */,
);
path = View;
sourceTree = "<group>";
};
E83A2A33282F4E5F002AD58F /* Api */ = {
isa = PBXGroup;
children = (
E83A2A3C282F4ED3002AD58F /* Api+EnterpriseRecharge.h */,
E83A2A3D282F4ED3002AD58F /* Api+EnterpriseRecharge.m */,
);
path = Api;
sourceTree = "<group>";
};
E83A2A34282F4E67002AD58F /* Model */ = {
isa = PBXGroup;
children = (
E83A2A3F282F4EFA002AD58F /* EnterpriseRechargeListInfoModel.h */,
E83A2A40282F4EFA002AD58F /* EnterpriseRechargeListInfoModel.m */,
E83A2A56282F8590002AD58F /* EnterPrieseRechargeTypeItemModel.h */,
E83A2A57282F8590002AD58F /* EnterPrieseRechargeTypeItemModel.m */,
);
path = Model;
sourceTree = "<group>";
};
E83A2A42282F562A002AD58F /* Cell */ = {
isa = PBXGroup;
children = (
E83A2A4A282F5B6A002AD58F /* XPEnterpriseChargeTypeTableViewCell.h */,
E83A2A4B282F5B6A002AD58F /* XPEnterpriseChargeTypeTableViewCell.m */,
E87FCE51282FABC600301132 /* XPEnterpriseRechargePayTableViewCell.h */,
E87FCE52282FABC600301132 /* XPEnterpriseRechargePayTableViewCell.m */,
E83A2A4D282F5B95002AD58F /* XPEnterpriseChargeListTableViewCell.h */,
E83A2A4E282F5B95002AD58F /* XPEnterpriseChargeListTableViewCell.m */,
E83A2A50282F5BBA002AD58F /* XPEnterpriseChargeListCollectionViewCell.h */,
E83A2A51282F5BBA002AD58F /* XPEnterpriseChargeListCollectionViewCell.m */,
);
path = Cell;
sourceTree = "<group>";
};
E83A2A43282F5632002AD58F /* SubViews */ = {
isa = PBXGroup;
children = (
E83A2A44282F5662002AD58F /* XPEnterpriseRechargeHeaderView.h */,
E83A2A45282F5662002AD58F /* XPEnterpriseRechargeHeaderView.m */,
E83A2A53282F5C50002AD58F /* XPEnterpriseRechargeFootView.h */,
E83A2A54282F5C50002AD58F /* XPEnterpriseRechargeFootView.m */,
);
path = SubViews;
sourceTree = "<group>";
};
E83ABEFA280EB5A000322EE4 /* SessionContent */ = {
isa = PBXGroup;
children = (
@@ -7922,15 +8039,6 @@
path = UploadImage;
sourceTree = "<group>";
};
E8B846C826FDD79700A777FE /* Recharge */ = {
isa = PBXGroup;
children = (
E8B846C926FDD7CD00A777FE /* XPMineRechargeViewController.h */,
E8B846CA26FDD7CD00A777FE /* XPMineRechargeViewController.m */,
);
path = Recharge;
sourceTree = "<group>";
};
E8B846CC26FDD93D00A777FE /* Recharge */ = {
isa = PBXGroup;
children = (
@@ -8668,6 +8776,7 @@
isa = PBXGroup;
children = (
9BCB999D28F5716E00466D64 /* CollectRoom */,
E83A2A2F282F4E06002AD58F /* EnterpriseRecharge */,
E8E20BDF281695430033B688 /* Setting */,
E800805227FD33950055A8AB /* Guild */,
E896EF912771AA6C00AD2CC1 /* Friend */,
@@ -8687,7 +8796,6 @@
9BD2ECCD288F829600F5CD9A /* XPMineFootPrintViewController.m */,
9B1B729328002099003FACE9 /* XPMineFansTeamViewController.h */,
9B1B729428002099003FACE9 /* XPMineFansTeamViewController.m */,
E8B846C826FDD79700A777FE /* Recharge */,
E88B5CBE26FB404800DA9178 /* MineInfo */,
E88B5CA926FB15B900DA9178 /* Teenager */,
9BAA5FEB277A1BBE007453F3 /* XPPrivacyViewController.h */,
@@ -9466,6 +9574,7 @@
E8E20BE2281695800033B688 /* XPMineLoginPasswordViewController.m in Sources */,
E86E79D628A4EA0C006DAF48 /* SessionRiskCache.m in Sources */,
E824543826F5820A00BE8163 /* XPLoginVerifBindPhonePresenter.m in Sources */,
E83A2A4F282F5B95002AD58F /* XPEnterpriseChargeListTableViewCell.m in Sources */,
E8B846BF26FD827900A777FE /* XPMineUserInfoAlbumViewController.m in Sources */,
E84CBCE128436D3C00D43221 /* XPMineContactViewController.m in Sources */,
E8D48253278D8228003C1D08 /* AcrossRoomPKPanelModel.m in Sources */,
@@ -9510,6 +9619,7 @@
E8E5E19427C36BA600F457D8 /* XPHomeBannerTableViewCell.m in Sources */,
E8950189282CFFB1007E459A /* XPMonentsLayoutConfig.m in Sources */,
9BD9A18727A120FD004186FE /* XPMineVisitorUnReadModel.m in Sources */,
E83A2A46282F5662002AD58F /* XPEnterpriseRechargeHeaderView.m in Sources */,
E824543D26F58C3A00BE8163 /* XPLoginBindSuccessView.m in Sources */,
E8A6C29527CF441200AC7442 /* XPHomeAttentionCollectionViewCell.m in Sources */,
9BE01AF72893E7F500B50299 /* XPNewUserRechargeCollectionViewCell.m in Sources */,
@@ -9580,7 +9690,6 @@
E8BD0F8828A9E9E400DE050D /* RoomSailingPrizeModel.m in Sources */,
E8A1F79C290644DC0099C952 /* XPRoomMorePlayCollectionViewCell.m in Sources */,
E8659909273E800D00EE349D /* XPGiftCollectionViewFlowLayout.m in Sources */,
E8B846CB26FDD7CD00A777FE /* XPMineRechargeViewController.m in Sources */,
E86596512701A1C000846EBD /* StatisticsService.m in Sources */,
E824544026F58F9400BE8163 /* XPMinePayPwdViewController.m in Sources */,
9BE01AED2893D0DF00B50299 /* XPDressShopSearchTableViewCell.m in Sources */,
@@ -9624,6 +9733,7 @@
E8A3538E28FE5CED0014A784 /* Api+WishGift.m in Sources */,
180116F9279E8C4C00F2CBC0 /* PLTimeUtil.m in Sources */,
9BA708A12823D4C900C474A2 /* LittleGameScrollStageView.m in Sources */,
E83A2A41282F4EFA002AD58F /* EnterpriseRechargeListInfoModel.m in Sources */,
E8834E4828003E1E0029CCC1 /* XPGuildMangerListPresenter.m in Sources */,
E8ACEFF227C8E8F000F66D1A /* HomePlayRoomModel.m in Sources */,
E80016232803CA5D00D6D17A /* XPMineGuildIncomeRecordViewController.m in Sources */,
@@ -9714,6 +9824,7 @@
E800805D27FD34E90055A8AB /* XPMineGuildViewController.m in Sources */,
E8834E50280051600029CCC1 /* XPMineGuildManagerPerViewController.m in Sources */,
9BC5C8F9277B02EA007C8719 /* Api+NobleCenter.m in Sources */,
E83A2A3A282F4EA7002AD58F /* XPEnterpriseRechargePresenter.m in Sources */,
E83ABF06280EDE2B00322EE4 /* MessageContentLevelUpgradeView.m in Sources */,
180806D827293794001FD836 /* NSObject+MJExtension.m in Sources */,
E88863D3278ED4C0004BCFAB /* Timestamp.m in Sources */,
@@ -9772,6 +9883,7 @@
E8AC722426F47E5E007D6E91 /* XPMineFeedbackViewController.m in Sources */,
E8664ED627E434D5000171BA /* XPRoomPKRecordViewController.m in Sources */,
E87E914E2796678D00A7B3F2 /* XPMineDressEmptyTableViewCell.m in Sources */,
E83A2A4C282F5B6A002AD58F /* XPEnterpriseChargeTypeTableViewCell.m in Sources */,
9B7D804D27537950003DAC0C /* MessageCell.m in Sources */,
9B044D9D282D2A6400DE4859 /* XPRoomAnchorRankEnterView.m in Sources */,
E8950180282CAC49007E459A /* XPMonentsUserInfoView.m in Sources */,
@@ -9791,6 +9903,7 @@
9B1B72AF280031F8003FACE9 /* XPAnchorPKSelectRoomView.m in Sources */,
E8D4824A278D1F73003C1D08 /* XPAcrossRoomPKInviteView.m in Sources */,
189DD73F26E21C3F00AB55B1 /* YYUtility+Carrier.m in Sources */,
E83A2A55282F5C50002AD58F /* XPEnterpriseRechargeFootView.m in Sources */,
E87AE7F9277AABE50037823A /* XPRoomTagListViewController.m in Sources */,
18E7B26926E8D5D60064BC9B /* XCCurrentVCStackManager.m in Sources */,
E824544326F58FCE00BE8163 /* XPMinePayPwdInputView.m in Sources */,
@@ -9915,6 +10028,7 @@
E8DBB70127B6501200AA285D /* XPLittleGameMiniStageView.m in Sources */,
E851E46227FF1314002F3ACB /* XPMineGuildEmptyTableViewCell.m in Sources */,
E8DD25DA295583920043C7D5 /* XPAnchorRandomPKRuleView.m in Sources */,
E83A2A52282F5BBA002AD58F /* XPEnterpriseChargeListCollectionViewCell.m in Sources */,
E8834E3B280012B60029CCC1 /* XPMineGuildRemoveMemberViewController.m in Sources */,
9B734F79288A9C4B00CBDAA9 /* XPMineGameTableViewCell.m in Sources */,
E8664EDC27E43632000171BA /* XPRoomPKEmptyTableViewCell.m in Sources */,
@@ -9962,6 +10076,7 @@
9B86D87D2817EA0900494FCD /* XPNobleSettingViewController.m in Sources */,
E82D5C70276AE60000858D6D /* HeadwearModel.m in Sources */,
E8A03DEC276301EF0098D9EA /* XPCandyTreeRankView.m in Sources */,
E83A2A37282F4E85002AD58F /* XPMineRechargeViewController.m in Sources */,
E880B3A1278BD60C00A83B0D /* XPAcrossRoomPKSelectRoomView.m in Sources */,
9B3C181A292CE4FA003AF543 /* XPAnchorPKMatchView.m in Sources */,
E80EC80D28ACD84000D133C5 /* QInputBarView.m in Sources */,
@@ -9996,6 +10111,7 @@
E8E7DAEB2745158500C631CC /* XPGiftUserInfoModel.m in Sources */,
E83DB487274670DA00D8CBD1 /* XPRoomGiftBroadCastModel.m in Sources */,
9BCF585C279909D7008401A4 /* XPSkillCardEditPropCell.m in Sources */,
E83A2A58282F8590002AD58F /* EnterPrieseRechargeTypeItemModel.m in Sources */,
E88863C6278EAFC3004BCFAB /* XPAcrossRoomPKResultView.m in Sources */,
E8AC722C26F49580007D6E91 /* XPMineNotificaViewController.m in Sources */,
9B335B492925D8A00048A116 /* XPAnchorPKSelectTypeController.m in Sources */,
@@ -10225,6 +10341,7 @@
E81E09CF290F750800A1F410 /* AdvertiseModel.m in Sources */,
E852D74428633A08001465ED /* MonentsCommentModel.m in Sources */,
E8C1CD6D27D8938C00376F83 /* XPRoomFaceTitleCollectionViewCell.m in Sources */,
E83A2A3E282F4ED3002AD58F /* Api+EnterpriseRecharge.m in Sources */,
E8C1CD7627D8AE3D00376F83 /* XPRoomFacePresenter.m in Sources */,
18F4043A275E20D900A6C548 /* TRTCRtcImpl.m in Sources */,
E8899C7F27853B6A007944BE /* DatingMicroView.m in Sources */,
@@ -10319,6 +10436,7 @@
E851E45B27FF02DF002F3ACB /* XPGuildSearchPresenter.m in Sources */,
E884C36C2743951B00E1EBED /* GiftReceiveInfoModel.m in Sources */,
9B7B606227BB96E40070BB72 /* XPRoomAnchorInfoCardView.m in Sources */,
E87FCE53282FABC600301132 /* XPEnterpriseRechargePayTableViewCell.m in Sources */,
E80B0734280D740600A79F63 /* MessageContentGuildView.m in Sources */,
E8395334276A03C300CF2F24 /* XPMineDressUpPresenter.m in Sources */,
9BC5C8F6277B0263007C8719 /* XPNobleCenterListViewController.m in Sources */,

View File

@@ -0,0 +1,6 @@
{
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 321 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 502 B

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 468 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 732 B

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

@@ -36,11 +36,28 @@
<string>wxee68b213a1bd632b</string>
</array>
</dict>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLSchemes</key>
<array>
<string>alipays://</string>
</array>
</dict>
<dict>
<key>CFBundleTypeRole</key>
<string>Editor</string>
<key>CFBundleURLSchemes</key>
<array>
<string>daeplayapp</string>
</array>
</dict>
</array>
<key>CFBundleVersion</key>
<string>2022111001</string>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>alipays</string>
<string>pubgmhd1106467070</string>
<string>weixin</string>
<string>wechat</string>

View File

@@ -0,0 +1,25 @@
//
// Api+EnterpriseRecharge.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/14.
//
#import "Api.h"
NS_ASSUME_NONNULL_BEGIN
@interface Api (EnterpriseRecharge)
///企业包的充值列表
+ (void)enterpriseRechargeList:(HttpRequestHelperCompletion)completion channelType:(NSString *)channelTyp;
/// 请求支付参数
/// @param completion 完成
/// @param chargeProdId 订单的id
/// @param payChannel 支付的渠道
/// @param clientIp ip
/// @param uid uid
/// @param ticket ticket
+ (void)requestPay:(HttpRequestHelperCompletion)completion chargeProdId:(NSString *)chargeProdId payChannel:(NSString *)payChannel clientIp:(NSString *)clientIp uid:(NSString *)uid ticket:(NSString *)ticket;
@end
NS_ASSUME_NONNULL_END

View File

@@ -22,19 +22,14 @@
/// @param clientIp ip
/// @param uid uid
/// @param ticket ticket
+ (void)requestPay:(HttpRequestHelperCompletion)completion chargeProdId:(NSString *)chargeProdId payChannel:(NSString *)payChannel clientIp:(NSString *)clientIp uid:(NSString *)uid ticket:(NSString *)ticket roomUid:(NSString *)roomUid {
+ (void)requestPay:(HttpRequestHelperCompletion)completion chargeProdId:(NSString *)chargeProdId payChannel:(NSString *)payChannel clientIp:(NSString *)clientIp uid:(NSString *)uid ticket:(NSString *)ticket {
NSMutableDictionary * dic = [NSMutableDictionary dictionary];
[dic safeSetObject:chargeProdId forKey:@"chargeProdId"];
[dic safeSetObject:payChannel forKey:@"payChannel"];
[dic safeSetObject:clientIp forKey:@"clientIp"];
[dic safeSetObject:uid forKey:@"uid"];
[dic safeSetObject:ticket forKey:@"ticket"];
if (roomUid.integerValue> 0) {
[dic safeSetObject:roomUid forKey:@"roomUid"];
}
[HttpRequestHelper request:@"charge/pay/apply" method:HttpRequestHelperMethodPOST params:dic completion:completion];
}
@end

View File

@@ -0,0 +1,25 @@
//
// EnterPrieseRechargeTypeItemModel.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/14.
//
#import <Foundation/Foundation.h>
#import "EnterpriseRechargeListInfoModel.h"
NS_ASSUME_NONNULL_BEGIN
@interface EnterPrieseRechargeTypeItemModel : NSObject
///图片
@property (nonatomic,copy) NSString *imageName;
///标题
@property (nonatomic,copy) NSString *title;
///充值的类型
@property (nonatomic,assign) RechargeType type;
///是否选中
@property (nonatomic,assign) BOOL isSelect;
///是否是最后一个
@property (nonatomic,assign) BOOL isLastOne;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,12 @@
//
// EnterPrieseRechargeTypeItemModel.m
// xplan-ios
//
// Created by on 2022/5/14.
//
#import "EnterPrieseRechargeTypeItemModel.h"
@implementation EnterPrieseRechargeTypeItemModel
@end

View File

@@ -0,0 +1,38 @@
//
// EnterpriseRechargeInfoModel.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/14.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@class EnterpriseRechargeInfoModel;
typedef NS_ENUM(NSInteger, RechargeType) {
RechargeType_WX = 1,
RechargeType_ZFB
};
@interface EnterpriseRechargeListInfoModel : NSObject
///大额充值
@property(nonatomic,strong) NSArray <EnterpriseRechargeInfoModel *> *bigList;
///充值列表
@property(nonatomic,strong) NSArray <EnterpriseRechargeInfoModel *> *list;
///默认的支付方式
@property(nonatomic,assign) RechargeType defaultPay;
@end
@interface EnterpriseRechargeInfoModel : NSObject
@property(nonatomic, strong) NSString *chargeProdId;
@property(nonatomic, strong) NSString *prodName;
@property (copy, nonatomic) NSString *prodDesc;
@property(nonatomic, strong) NSNumber *money;
@property(nonatomic, strong) NSNumber *giftGoldNum;
@property(nonatomic, strong) NSString *channel;
///是否选中
@property (nonatomic,assign) BOOL isSelect;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,24 @@
//
// EnterpriseRechargeInfoModel.m
// xplan-ios
//
// Created by on 2022/5/14.
//
#import "EnterpriseRechargeListInfoModel.h"
@implementation EnterpriseRechargeListInfoModel
+ (NSDictionary *)objectClassInArray {
return @{@"bigList":EnterpriseRechargeInfoModel.class,
@"list":EnterpriseRechargeInfoModel.class
};
}
@end
@implementation EnterpriseRechargeInfoModel
@end

View File

@@ -0,0 +1,21 @@
//
// XPEnterpriseRechargePresenter.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/14.
//
#import "BaseMvpPresenter.h"
NS_ASSUME_NONNULL_BEGIN
@interface XPEnterpriseRechargePresenter : BaseMvpPresenter
///获取充值列表
- (void)getRechargeList:(NSString *)channelType;
/// 获取钱包信息
- (void)getUserWalletInfo;
///发起支付
- (void)requestPay:(NSString *)chargeProdId payChannel:(NSString *)payChannel;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,45 @@
//
// XPEnterpriseRechargePresenter.m
// xplan-ios
//
// Created by on 2022/5/14.
//
#import "XPEnterpriseRechargePresenter.h"
#import "XPEnterpriseRechargeProtocol.h"
#import "Api+EnterpriseRecharge.h"
#import "Api+Mine.h"
#import "EnterpriseRechargeListInfoModel.h"
#import "WalletInfoModel.h"
#import "AccountInfoStorage.h"
#import "YYUtility.h"
@implementation XPEnterpriseRechargePresenter
///
- (void)getRechargeList:(NSString *)channelType {
[Api enterpriseRechargeList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
EnterpriseRechargeListInfoModel * info = [EnterpriseRechargeListInfoModel modelWithDictionary:data.data];
[[self getView] getRechargeListSuccess:info];
}] channelType:channelType];
}
///
- (void)getUserWalletInfo {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * ticket = [AccountInfoStorage instance].getTicket;
[Api getUserWalletInfo:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
WalletInfoModel * model = [WalletInfoModel modelWithDictionary:data.data];
[[self getView] getUserWalletInfo:model];
}] uid:uid ticket:ticket];
}
///
- (void)requestPay:(NSString *)chargeProdId payChannel:(NSString *)payChannel {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * ticket = [AccountInfoStorage instance].getTicket;
NSString * clientIp= [YYUtility ipAddress];
[Api requestPay:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] requestPaySuccess:data.data payChannel:payChannel];
} showLoading:YES] chargeProdId:chargeProdId payChannel:payChannel clientIp:clientIp uid:uid ticket:ticket];
}
@end

View File

@@ -0,0 +1,23 @@
//
// XPEnterpriseProtocol.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/14.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@class EnterpriseRechargeListInfoModel, WalletInfoModel;
@protocol XPEnterpriseRechargeProtocol <NSObject>
///请求钱包余额信息
- (void)getUserWalletInfo:(WalletInfoModel *)balanceInfo;
///获取充值列表成功
- (void)getRechargeListSuccess:(EnterpriseRechargeListInfoModel *)info;
///请求订单成功
- (void)requestPaySuccess:(id)data payChannel:(NSString *)payChannel;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,16 @@
//
// XPEnterpriseChargeListCollectionViewCell.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/14.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class EnterpriseRechargeInfoModel;
@interface XPEnterpriseChargeListCollectionViewCell : UICollectionViewCell
@property (nonatomic,strong) EnterpriseRechargeInfoModel *infoModel;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,114 @@
//
// XPEnterpriseChargeListCollectionViewCell.m
// xplan-ios
//
// Created by on 2022/5/14.
//
#import "XPEnterpriseChargeListCollectionViewCell.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor.h"
///Model
#import "EnterpriseRechargeListInfoModel.h"
@interface XPEnterpriseChargeListCollectionViewCell ()
///
@property (nonatomic,strong) UIView * backView;
///
@property (nonatomic,strong) UILabel *coinLabel;
///
@property (nonatomic,strong) UILabel *priceLabel;
@end
@implementation XPEnterpriseChargeListCollectionViewCell
- (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.backView];
[self.backView addSubview:self.coinLabel];
[self.backView addSubview:self.priceLabel];
}
- (void)initSubViewConstraints {
[self.backView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.mas_equalTo(self.contentView);
}];
[self.coinLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.mas_equalTo(self.backView);
make.bottom.mas_equalTo(self.backView.mas_centerY).offset(-2);
}];
[self.priceLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.mas_equalTo(self.backView);
make.top.mas_equalTo(self.backView.mas_centerY).offset(2);
}];
}
#pragma mark - Getters And Setters
- (void)setInfoModel:(EnterpriseRechargeInfoModel *)infoModel {
_infoModel = infoModel;
if (_infoModel) {
self.coinLabel.text = _infoModel.prodName;
if (_infoModel.prodName) {
NSMutableAttributedString * attribute = [[NSMutableAttributedString alloc] initWithString:_infoModel.prodName attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:16], NSForegroundColorAttributeName:[ThemeColor mainTextColor]}];
NSRange range = [_infoModel.prodName rangeOfString:@"钻石"];
if (range.location < _infoModel.prodName.length) {
[attribute addAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:14]} range:range];
[attribute addAttributes:@{NSForegroundColorAttributeName:[ThemeColor appMainColor]} range:range];
}
self.coinLabel.attributedText = attribute;
self.coinLabel.textAlignment = NSTextAlignmentCenter;
}
self.priceLabel.text = [NSString stringWithFormat:@"%.2f元",_infoModel.money.floatValue];
//
if (_infoModel.isSelect) {
self.backView.layer.borderColor = [ThemeColor appMainColor].CGColor;
}else {
self.backView.layer.borderColor = [ThemeColor appCellBackgroundColor].CGColor;
}
}
}
- (UIView *)backView {
if (!_backView) {
_backView = [[UIView alloc] init];
_backView.backgroundColor = [ThemeColor appCellBackgroundColor];
_backView.layer.cornerRadius = 10;
_backView.layer.borderWidth = 1.5;
}
return _backView;
}
- (UILabel *)coinLabel {
if (!_coinLabel) {
_coinLabel = [[UILabel alloc] init];
_coinLabel.font = [UIFont systemFontOfSize:18];
_coinLabel.textColor = [ThemeColor appMainColor];
_coinLabel.textAlignment = NSTextAlignmentCenter;
}
return _coinLabel;
}
- (UILabel *)priceLabel {
if (!_priceLabel) {
_priceLabel = [[UILabel alloc] init];
_priceLabel.font = [UIFont systemFontOfSize:15];
_priceLabel.textColor = [ThemeColor mainTextColor];
_priceLabel.textAlignment = NSTextAlignmentCenter;
}
return _priceLabel;
}
@end

View File

@@ -0,0 +1,25 @@
//
// XPEnterpriseChargeListTableViewCell.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/14.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class EnterpriseRechargeInfoModel, WalletInfoModel, XPEnterpriseChargeListTableViewCell;
@protocol XPEnterpriseChargeListTableViewCellDelegate <NSObject>
- (void)xPEnterpriseChargeListTableViewCell:(XPEnterpriseChargeListTableViewCell *)cell didSelectItem:(EnterpriseRechargeInfoModel *)infoModel;
@end
@interface XPEnterpriseChargeListTableViewCell : UITableViewCell
@property (nonatomic,strong) NSArray<EnterpriseRechargeInfoModel *> *rechargeList;
@property (nonatomic,strong) WalletInfoModel *balanceInfo;
///代理
@property (nonatomic,weak) id<XPEnterpriseChargeListTableViewCellDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,147 @@
//
// XPEnterpriseChargeListTableViewCell.m
// xplan-ios
//
// Created by on 2022/5/14.
//
#import "XPEnterpriseChargeListTableViewCell.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor.h"
#import "XPMacro.h"
///Model
#import "EnterpriseRechargeListInfoModel.h"
///View
#import "XPEnterpriseChargeListCollectionViewCell.h"
#import "XPEnterpriseRechargeHeaderView.h"
@interface XPEnterpriseChargeListTableViewCell ()<UICollectionViewDelegate, UICollectionViewDataSource>
///
@property (nonatomic,strong) UIImageView *backImageView;
///
@property (nonatomic,strong) XPEnterpriseRechargeHeaderView *infoView;
///
@property (nonatomic,strong) UICollectionView *collectionView;
///
@property (nonatomic,strong) EnterpriseRechargeInfoModel *selectInfo;
@end
@implementation XPEnterpriseChargeListTableViewCell
- (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.backImageView];
[self.contentView addSubview:self.infoView];
[self.contentView addSubview:self.collectionView];
}
- (void)initSubViewConstraints {
[self.backImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.right.top.left.mas_equalTo(self);
make.height.mas_equalTo(250);
}];
[self.infoView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.top.mas_equalTo(self.contentView);
make.height.mas_equalTo(190 + kSafeAreaTopHeight);
}];
[self.collectionView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.infoView.mas_bottom);
make.left.right.mas_equalTo(self.contentView);
make.bottom.mas_equalTo(self.contentView).offset(-15);
}];
}
#pragma mark - UICollectionViewCellDelegate And UICollectionViewDatasource
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
return self.rechargeList.count;
}
- (__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
XPEnterpriseChargeListCollectionViewCell * cell = [collectionView dequeueReusableCellWithReuseIdentifier:NSStringFromClass([XPEnterpriseChargeListCollectionViewCell class]) forIndexPath:indexPath];
EnterpriseRechargeInfoModel * info = [self.rechargeList objectAtIndex:indexPath.row];
if ([info.chargeProdId isEqualToString:self.selectInfo.chargeProdId]) {
info.isSelect = YES;
} else {
info.isSelect = NO;
}
cell.infoModel = info;
return cell;
}
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
if (self.rechargeList.count > 0) {
EnterpriseRechargeInfoModel * infor = [self.rechargeList objectAtIndex:indexPath.row];
self.selectInfo = infor;
[self.collectionView reloadData];
if (self.delegate && [self.delegate respondsToSelector:@selector(xPEnterpriseChargeListTableViewCell:didSelectItem:)]) {
[self.delegate xPEnterpriseChargeListTableViewCell:self didSelectItem:infor];
}
}
}
#pragma mark - Getters And Setters
- (void)setRechargeList:(NSArray<EnterpriseRechargeInfoModel *> *)rechargeList {
_rechargeList = rechargeList;
if (_rechargeList.count > 0) {
self.selectInfo = [rechargeList firstObject];
if (self.delegate && [self.delegate respondsToSelector:@selector(xPEnterpriseChargeListTableViewCell:didSelectItem:)]) {
[self.delegate xPEnterpriseChargeListTableViewCell:self didSelectItem:self.selectInfo];
}
}
[self.collectionView reloadData];
}
- (void)setBalanceInfo:(WalletInfoModel *)balanceInfo {
_balanceInfo = balanceInfo;
self.infoView.walletInfo =balanceInfo;
}
- (UICollectionView *)collectionView{
if (!_collectionView) {
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];
layout.itemSize = CGSizeMake((CGFloat)(KScreenWidth - 15 * 2 - 10 * 2) / 3.0, 80);
layout.sectionInset = UIEdgeInsetsMake(0, 15, 0, 15);
layout.minimumLineSpacing = 10;
layout.minimumInteritemSpacing = 10;
_collectionView = [[UICollectionView alloc] initWithFrame:CGRectZero collectionViewLayout:layout];
_collectionView.dataSource = self;
_collectionView.delegate = self;
_collectionView.backgroundColor = [UIColor clearColor];
_collectionView.scrollEnabled = NO;
[_collectionView registerClass:[XPEnterpriseChargeListCollectionViewCell class] forCellWithReuseIdentifier:NSStringFromClass([XPEnterpriseChargeListCollectionViewCell class])];
}
return _collectionView;
}
- (XPEnterpriseRechargeHeaderView *)infoView {
if (!_infoView) {
_infoView = [[XPEnterpriseRechargeHeaderView alloc] init];
}
return _infoView;
}
- (UIImageView *)backImageView {
if (!_backImageView) {
_backImageView = [[UIImageView alloc] init];
_backImageView.userInteractionEnabled = YES;
_backImageView.image = [UIImage imageNamed:@"mine_recharge_header_bg"];
_backImageView.layer.masksToBounds = YES;
_backImageView.contentMode = UIViewContentModeScaleAspectFill;
}
return _backImageView;
}
@end

View File

@@ -0,0 +1,17 @@
//
// XPEnterpriseChargeTypeTableViewCell.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/14.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class EnterPrieseRechargeTypeItemModel;
@interface XPEnterpriseChargeTypeTableViewCell : UITableViewCell
@property (nonatomic,strong) EnterPrieseRechargeTypeItemModel *rechargeTypeModel;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,117 @@
//
// XPEnterpriseChargeTypeTableViewCell.m
// xplan-ios
//
// Created by on 2022/5/14.
//
#import "XPEnterpriseChargeTypeTableViewCell.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor.h"
///Model
#import "EnterPrieseRechargeTypeItemModel.h"
@interface XPEnterpriseChargeTypeTableViewCell ()
///logo
@property (nonatomic,strong) UIImageView *logoImageView;
///
@property (nonatomic,strong) UILabel *titleLabel;
///
@property (nonatomic,strong) UIButton *chooseButton;
///线
@property (nonatomic,strong) UIView * lineView;
@end
@implementation XPEnterpriseChargeTypeTableViewCell
- (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.logoImageView];
[self.contentView addSubview:self.titleLabel];
[self.contentView addSubview:self.chooseButton];
[self.contentView addSubview:self.lineView];
}
- (void)initSubViewConstraints {
[self.logoImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.contentView).offset(10);
make.centerY.mas_equalTo(self.contentView);
make.size.mas_equalTo(CGSizeMake(24, 24));
}];
[self.titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerY.mas_equalTo(self.logoImageView);
make.left.mas_equalTo(self.logoImageView.mas_right).offset(10);
}];
[self.chooseButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(18, 18));
make.centerY.mas_equalTo(self.contentView);
make.right.mas_equalTo(self.contentView).offset(-10);
}];
[self.lineView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self.contentView).inset(10);
make.bottom.mas_equalTo(self.contentView);
make.height.mas_equalTo(1);
}];
}
#pragma mark - Getters And Setters
- (void)setRechargeTypeModel:(EnterPrieseRechargeTypeItemModel *)rechargeTypeModel {
_rechargeTypeModel = rechargeTypeModel;
if (_rechargeTypeModel) {
_logoImageView.image = [UIImage imageNamed:_rechargeTypeModel.imageName];
_titleLabel.text = _rechargeTypeModel.title;
_chooseButton.selected = _rechargeTypeModel.isSelect;
self.lineView.hidden = _rechargeTypeModel.isLastOne;
}
}
- (UIImageView *)logoImageView {
if (!_logoImageView) {
_logoImageView = [[UIImageView alloc] init];
_logoImageView.userInteractionEnabled = YES;
}
return _logoImageView;
}
- (UILabel *)titleLabel {
if (!_titleLabel) {
_titleLabel = [[UILabel alloc] init];
_titleLabel.font = [UIFont systemFontOfSize:15];
_titleLabel.textColor = [ThemeColor mainTextColor];
}
return _titleLabel;
}
- (UIButton *)chooseButton {
if (!_chooseButton) {
_chooseButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_chooseButton setImage:[UIImage imageNamed:@"mine_recharge_choose_normal"] forState:UIControlStateNormal];
[_chooseButton setImage:[UIImage imageNamed:@"mine_recharge_choose_select"] forState:UIControlStateSelected];
}
return _chooseButton;
}
- (UIView *)lineView {
if (!_lineView) {
_lineView = [[UIView alloc] init];
_lineView.backgroundColor = [ThemeColor dividerColor];
}
return _lineView;
}
@end

View File

@@ -0,0 +1,25 @@
//
// XPEnterpriseRechargePayTableViewCell.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/14.
//
#import <UIKit/UIKit.h>
#import "EnterpriseRechargeListInfoModel.h"
NS_ASSUME_NONNULL_BEGIN
@class XPEnterpriseRechargePayTableViewCell, EnterPrieseRechargeTypeItemModel;
@protocol XPEnterpriseRechargePayTableViewCellDelegate <NSObject>
- (void)xPEnterpriseRechargePayTableViewCell:(XPEnterpriseRechargePayTableViewCell *)view didChooseItem:(EnterPrieseRechargeTypeItemModel *)itemInfo;
@end
@interface XPEnterpriseRechargePayTableViewCell : UITableViewCell
///默认的充值类型
@property (nonatomic,assign) RechargeType type;
///代理
@property (nonatomic,weak) id<XPEnterpriseRechargePayTableViewCellDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,168 @@
//
// XPEnterpriseRechargePayTableViewCell.m
// xplan-ios
//
// Created by on 2022/5/14.
//
#import "XPEnterpriseRechargePayTableViewCell.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor.h"
///Model
#import "EnterPrieseRechargeTypeItemModel.h"
///View
#import "XPEnterpriseChargeTypeTableViewCell.h"
@interface XPEnterpriseRechargePayTableViewCell ()<UITableViewDelegate, UITableViewDataSource>
///
@property (nonatomic,strong) UIView * backView;
///
@property (nonatomic,strong) UILabel *titleLabel;
///
@property (nonatomic,strong) UITableView *tableView;
///
@property (nonatomic,strong) NSMutableArray<EnterPrieseRechargeTypeItemModel *> *rechargeTypeList;
///
@property (nonatomic,strong) EnterPrieseRechargeTypeItemModel *currentItem;
///
@property (nonatomic,strong) EnterPrieseRechargeTypeItemModel *aliPayItem;
///
@property (nonatomic,strong) EnterPrieseRechargeTypeItemModel *wxPayItem;
@end
@implementation XPEnterpriseRechargePayTableViewCell
- (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.titleLabel];
[self.backView addSubview:self.tableView];
}
- (void)initSubViewConstraints {
[self.backView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self.contentView).inset(15);
make.top.bottom.mas_equalTo(self.contentView);
}];
[self.titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.backView).offset(10);
make.top.mas_equalTo(self.backView).offset(15);
}];
[self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.titleLabel.mas_bottom).offset(0);
make.left.right.bottom.mas_equalTo(self.backView);
}];
}
#pragma mark - UITableViewDelegate And UITableViewDataSource
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return self.rechargeTypeList.count;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return 50;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
XPEnterpriseChargeTypeTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPEnterpriseChargeTypeTableViewCell class])];
EnterPrieseRechargeTypeItemModel * infoModel = [self.rechargeTypeList objectAtIndex:indexPath.row];
if (infoModel.type == self.currentItem.type) {
infoModel.isSelect = YES;
} else {
infoModel.isSelect = NO;
}
cell.rechargeTypeModel = infoModel;
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
if (self.rechargeTypeList.count > 0) {
self.currentItem = [self.rechargeTypeList objectAtIndex:indexPath.row];
[self.tableView reloadData];
if (self.delegate && [self.delegate respondsToSelector:@selector(xPEnterpriseRechargePayTableViewCell:didChooseItem:)]) {
[self.delegate xPEnterpriseRechargePayTableViewCell:self didChooseItem:self.currentItem];
}
}
}
#pragma mark - Getters And Setters
- (void)setType:(RechargeType)type {
_type =type;
self.currentItem = _type == RechargeType_WX ? self.wxPayItem : self.aliPayItem;
if (self.delegate && [self.delegate respondsToSelector:@selector(xPEnterpriseRechargePayTableViewCell:didChooseItem:)]) {
[self.delegate xPEnterpriseRechargePayTableViewCell:self didChooseItem:self.currentItem];
}
}
- (UITableView *)tableView {
if (!_tableView) {
_tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStylePlain];
_tableView.delegate = self;
_tableView.dataSource = self;
_tableView.tableFooterView = [UIView new];
_tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
_tableView.backgroundColor = [UIColor clearColor];
if (@available(iOS 11.0, *)) {
_tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}
[_tableView registerClass:[XPEnterpriseChargeTypeTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPEnterpriseChargeTypeTableViewCell class])];
}
return _tableView;
}
- (NSMutableArray<EnterPrieseRechargeTypeItemModel *> *)rechargeTypeList {
if (!_rechargeTypeList) {
_rechargeTypeList = [NSMutableArray array];
EnterPrieseRechargeTypeItemModel * wxItem = [[EnterPrieseRechargeTypeItemModel alloc] init];
wxItem.imageName = @"mine_recharge_wechat";
wxItem.title = @"微信";
wxItem.type = RechargeType_WX;
EnterPrieseRechargeTypeItemModel * zfbItem = [[EnterPrieseRechargeTypeItemModel alloc] init];
zfbItem.imageName = @"mine_recharge_alipay";
zfbItem.title = @"支付宝";
zfbItem.isSelect = YES;
zfbItem.type = RechargeType_ZFB;
_aliPayItem = zfbItem;
[_rechargeTypeList addObject:zfbItem];
[_rechargeTypeList addObject:wxItem];
}
return _rechargeTypeList;
}
- (UILabel *)titleLabel {
if (!_titleLabel) {
_titleLabel = [[UILabel alloc] init];
_titleLabel.font = [UIFont systemFontOfSize:13];
_titleLabel.textColor = [ThemeColor mainTextColor];
_titleLabel.text = @"支付方式";
}
return _titleLabel;
}
- (UIView *)backView {
if (!_backView) {
_backView = [[UIView alloc] init];
_backView.backgroundColor = [ThemeColor appCellBackgroundColor];
_backView.layer.masksToBounds = YES;
_backView.layer.cornerRadius = 10;
}
return _backView;
}
@end

View File

@@ -0,0 +1,24 @@
//
// XPEnterpriseRechargeFootView.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/14.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class XPEnterpriseRechargeFootView;
@protocol XPEnterpriseRechargeFootViewDelegate <NSObject>
///点击了充值按钮
- (void)xPEnterpriseRechargeFootView:(XPEnterpriseRechargeFootView *)view didClickRecharge:(UIButton *)sender;
///点击了充值协议
- (void)xPEnterpriseRechargeFootView:(XPEnterpriseRechargeFootView *)view didClickRechargeProtocol:(UILabel *)label;
@end
@interface XPEnterpriseRechargeFootView : UIView
///代理
@property (nonatomic,weak) id<XPEnterpriseRechargeFootViewDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,119 @@
//
// XPEnterpriseRechargeFootView.m
// xplan-ios
//
// Created by on 2022/5/14.
//
#import "XPEnterpriseRechargeFootView.h"
///Third
#import <Masonry/Masonry.h>
#import <YYText/YYText.h>
///Tool
#import "ThemeColor.h"
#import "UIImage+Utils.h"
#import "XPMacro.h"
@interface XPEnterpriseRechargeFootView ()
///
@property (nonatomic,strong) UIButton *rechargeButton;
///
@property (nonatomic,strong) YYLabel *privacyLable;
///
@property (nonatomic,strong) UILabel *descriptionLabel;
@end
@implementation XPEnterpriseRechargeFootView
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {
[self initSubViews];
[self initSubViewConstraints];
}
return self;
}
#pragma mark - Private Method
- (void)initSubViews {
[self addSubview:self.rechargeButton];
[self addSubview:self.privacyLable];
[self addSubview:self.descriptionLabel];
}
- (void)initSubViewConstraints {
self.frame = CGRectMake(0, 0, KScreenWidth, kNavigationHeight +190);
[self.rechargeButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(20);
make.left.right.mas_equalTo(self).inset(47);
make.height.mas_equalTo(44);
}];
[self.privacyLable mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.rechargeButton.mas_bottom).offset(15);
make.centerX.mas_equalTo(self);
}];
[self.descriptionLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.mas_equalTo(self);
make.top.mas_equalTo(self.privacyLable.mas_bottom).offset(10);
}];
}
#pragma mark - Event Response
- (void)rechargeButtonAction:(UIButton *)sender {
if (self.delegate && [self.delegate respondsToSelector:@selector(xPEnterpriseRechargeFootView:didClickRecharge:)]) {
[self.delegate xPEnterpriseRechargeFootView:self didClickRecharge:sender];
}
}
#pragma mark - Getters And Setters
- (UIButton *)rechargeButton {
if (!_rechargeButton) {
_rechargeButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_rechargeButton setTitle:@"确认充值" forState:UIControlStateNormal];
_rechargeButton.titleLabel.font = [UIFont systemFontOfSize:15];
[_rechargeButton setBackgroundImage:[UIImage gradientColorImageFromColors:@[[ThemeColor confirmButtonGradientStartColor], [ThemeColor confirmButtonGradientEndColor]] gradientType:GradientTypeLeftToRight imgSize:CGSizeMake(10, 10)] forState:UIControlStateNormal];
[_rechargeButton setTitleColor:[ThemeColor confirmButtonTextColor] forState:UIControlStateNormal];
_rechargeButton.layer.masksToBounds = YES;
_rechargeButton.layer.cornerRadius = 22;
[_rechargeButton addTarget:self action:@selector(rechargeButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _rechargeButton;
}
- (YYLabel *)privacyLable {
if (!_privacyLable) {
_privacyLable = [[YYLabel alloc] init];
NSMutableAttributedString *attString = [[NSMutableAttributedString alloc] initWithString:@"已阅读并同意"];
attString.yy_color = [ThemeColor secondTextColor];
attString.yy_font = [UIFont systemFontOfSize:14];
NSMutableAttributedString *rechargeAttString = [[NSMutableAttributedString alloc] initWithString:@"《用户充值协议》" attributes:@{NSForegroundColorAttributeName:[ThemeColor appMainColor]}];
@kWeakify(self);
[rechargeAttString yy_setTextHighlightRange:NSMakeRange(0, rechargeAttString.length) color:nil backgroundColor:nil userInfo:nil tapAction:^(UIView * _Nonnull containerView, NSAttributedString * _Nonnull text, NSRange range, CGRect rect) {
@kStrongify(self);
if (self.delegate && [self.delegate respondsToSelector:@selector(xPEnterpriseRechargeFootView:didClickRechargeProtocol:)]) {
[self.delegate xPEnterpriseRechargeFootView:self didClickRechargeProtocol:self.privacyLable];
}
} longPressAction:nil];
[attString appendAttributedString:rechargeAttString];
_privacyLable.textAlignment = NSTextAlignmentCenter;
_privacyLable.attributedText = attString;
}
return _privacyLable;
}
- (UILabel *)descriptionLabel {
if (!_descriptionLabel) {
_descriptionLabel = [[UILabel alloc] init];
_descriptionLabel.font = [UIFont systemFontOfSize:14];
_descriptionLabel.textColor = [ThemeColor appMainColor];
_descriptionLabel.text = @"如有任何问题请咨询客服魔力号88001";
_descriptionLabel.textAlignment = NSTextAlignmentCenter;
}
return _descriptionLabel;
}
@end

View File

@@ -0,0 +1,16 @@
//
// XPEnterpriseRechargeHeaderView.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/14.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class WalletInfoModel;
@interface XPEnterpriseRechargeHeaderView : UIView
@property (nonatomic,strong) WalletInfoModel *walletInfo;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,118 @@
//
// XPEnterpriseRechargeHeaderView.m
// xplan-ios
//
// Created by on 2022/5/14.
//
#import "XPEnterpriseRechargeHeaderView.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor.h"
#import "XPMacro.h"
///Model
#import "WalletInfoModel.h"
@interface XPEnterpriseRechargeHeaderView ()
///
@property (nonatomic,strong) UIImageView *bottomBackImg;
///
@property (nonatomic,strong) UIImageView *coinImageView;
///
@property (nonatomic,strong) UILabel *coinLabel;
///
@property (nonatomic,strong) UILabel *amountLabel;
@end
@implementation XPEnterpriseRechargeHeaderView
- (instancetype)initWithFrame:(CGRect)frame {
if (self = [super initWithFrame:frame]) {
[self initView];
[self initContrations];
}
return self;
}
#pragma mark - Private Method
- (void)initView {
[self addSubview:self.bottomBackImg];
[self.bottomBackImg addSubview:self.coinImageView];
[self.bottomBackImg addSubview:self.coinLabel];
[self.bottomBackImg addSubview:self.amountLabel];
}
- (void)initContrations {
[self.bottomBackImg mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.bottom.mas_equalTo(self);
make.height.mas_equalTo(110);
}];
[self.coinImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(21, 21));
make.top.mas_equalTo(self.bottomBackImg).offset(23);
make.right.mas_equalTo(self.coinLabel.mas_left).offset(-4);
}];
[self.coinLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerY.mas_equalTo(self.coinImageView);
make.centerX.mas_equalTo(self.bottomBackImg.mas_centerX).offset(12);
}];
[self.amountLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.mas_equalTo(self.bottomBackImg);
make.top.mas_equalTo(self.coinImageView.mas_bottom).offset(1);
}];
}
#pragma mark - Getters And Setters
- (void)setWalletInfo:(WalletInfoModel *)walletInfo {
_walletInfo = walletInfo;
if (_walletInfo) {
self.amountLabel.text = walletInfo.diamonds;
}
}
- (UIImageView *)bottomBackImg {
if (!_bottomBackImg) {
_bottomBackImg = [[UIImageView alloc] init];
_bottomBackImg.userInteractionEnabled = YES;
_bottomBackImg.image = [UIImage imageNamed:@"mine_recharge_coin_bg"];
_bottomBackImg.layer.masksToBounds = YES;
_bottomBackImg.contentMode = UIViewContentModeScaleAspectFit;
}
return _bottomBackImg;
}
- (UIImageView *)coinImageView {
if (!_coinImageView) {
_coinImageView = [[UIImageView alloc] init];
_coinImageView.userInteractionEnabled = YES;
_coinImageView.image = [UIImage imageNamed:@"common_diamond"];
}
return _coinImageView;
}
- (UILabel *)coinLabel {
if (!_coinLabel) {
_coinLabel = [[UILabel alloc] init];
_coinLabel.text = @"我的钻石";
_coinLabel.font = [UIFont systemFontOfSize:13];
_coinLabel.textColor = [UIColor whiteColor];
}
return _coinLabel;
}
- (UILabel *)amountLabel {
if (!_amountLabel) {
_amountLabel = [[UILabel alloc] init];
_amountLabel.font = [UIFont boldSystemFontOfSize:36];
_amountLabel.textColor = [ThemeColor appMainColor];
_amountLabel.textAlignment = NSTextAlignmentCenter;
}
return _amountLabel;
}
@end

View File

@@ -1,8 +1,8 @@
//
// XPMineRechargeViewController.h
// XPEnterPriseRechargeViewController.h
// xplan-ios
//
// Created by 冯硕 on 2021/9/24.
// Created by 冯硕 on 2022/5/14.
//
#import "MvpViewController.h"

View File

@@ -0,0 +1,348 @@
//
// XPEnterPriseRechargeViewController.m
// xplan-ios
//
// Created by on 2022/5/14.
//
#import "XPMineRechargeViewController.h"
///Third
#import <Masonry/Masonry.h>
#import <AlipaySDK/AlipaySDK.h>
#import <WXApi.h>
#import <WXApiObject.h>
#import <NIMSDK/NIMSDK.h>
///Tool
#import "ThemeColor.h"
#import "XPMacro.h"
#import "XPConstant.h"
///Model
#import "EnterpriseRechargeListInfoModel.h"
#import "EnterPrieseRechargeTypeItemModel.h"
#import "AttachmentModel.h"
#import "WalletInfoModel.h"
///P
#import "XPEnterpriseRechargePresenter.h"
#import "XPEnterpriseRechargeProtocol.h"
///View
#import "XPEnterpriseChargeListTableViewCell.h"
#import "XPEnterpriseRechargePayTableViewCell.h"
#import "XPEnterpriseRechargeFootView.h"
#import "XPWebViewController.h"
@interface XPMineRechargeViewController ()<XPEnterpriseRechargeProtocol, UITableViewDelegate, UITableViewDataSource, XPEnterpriseRechargeFootViewDelegate, XPEnterpriseChargeListTableViewCellDelegate, XPEnterpriseRechargePayTableViewCellDelegate, NIMSystemNotificationManagerDelegate>
///
@property (nonatomic,strong) UITableView *tableView;
///
@property (nonatomic,strong) NSMutableArray<EnterpriseRechargeInfoModel *> *datasource;
///
@property (nonatomic,strong) UIView * navView;
///
@property (nonatomic,strong) UIButton *backButton;
///
@property (nonatomic,strong) UILabel *titleLabel;
///
@property (nonatomic,strong) UIButton *incomeButton;
///
@property (nonatomic,strong) XPEnterpriseRechargeFootView *footView;
///
@property (nonatomic,strong) WalletInfoModel *balanceInfo;
///
@property (nonatomic,strong) EnterpriseRechargeInfoModel *rechargeInfo;
///
@property (nonatomic,strong) EnterpriseRechargeListInfoModel *listInfo;
///
@property (nonatomic,strong) EnterPrieseRechargeTypeItemModel *currentItem;
@end
@implementation XPMineRechargeViewController
- (void)dealloc {
[[NIMSDK sharedSDK].systemNotificationManager removeDelegate:self];
}
- (BOOL)isHiddenNavBar {
return YES;
}
- (__kindof id)createPresenter {
return [[XPEnterpriseRechargePresenter alloc] init];
}
- (void)viewDidLoad {
[super viewDidLoad];
[[NIMSDK sharedSDK].systemNotificationManager addDelegate:self];
NSString *universalLink = @"https://6cqhk.share2dlink.com/";
[WXApi registerApp:KeyWithType(KeyType_WechatAppid) universalLink:universalLink];
[self initData];
[self initSubViews];
[self initSubViewConstraints];
}
#pragma mark - Private Method
- (void)initData {
[self.presenter getUserWalletInfo];
[self.presenter getRechargeList:@"3"];
}
- (void)initSubViews {
[self.view addSubview:self.tableView];
[self.view addSubview:self.navView];
[self.navView addSubview:self.backButton];
[self.navView addSubview:self.titleLabel];
[self.navView addSubview:self.incomeButton];
self.tableView.tableFooterView = self.footView;
}
- (void)initSubViewConstraints {
[self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.mas_equalTo(self.view);
}];
[self.navView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.top.right.mas_equalTo(self.view);
make.height.mas_equalTo(kNavigationHeight);
}];
[self.backButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(15);
make.centerY.equalTo(self.navView.mas_bottom).mas_offset(-22);
}];
[self.incomeButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.right.mas_equalTo(-15);
make.centerY.equalTo(self.backButton);
}];
[self.titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerX.mas_equalTo(self.view);
make.centerY.equalTo(self.backButton);
}];
}
#pragma mark - UITableViewDelegate And UITableViewDataSource
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return 2;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return 1;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section == 0) {
CGFloat wallInfoHeight = (kSafeAreaTopHeight + 190);
if (self.datasource.count > 0) {
CGFloat listHeight= 0;
int page = self.datasource.count % 3;
int line = (int)self.datasource.count / 3;
if (page == 0) {
listHeight = 80 * line + (line - 1) * 10;
} else {
listHeight = (line + 1) * 80 + line * 10;
}
return (listHeight + wallInfoHeight + 15);
} else {
return wallInfoHeight;
}
} else {
return 50 * 2 + 30;
}
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section == 0) {
XPEnterpriseChargeListTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPEnterpriseChargeListTableViewCell class]) forIndexPath:indexPath];
cell.rechargeList = self.datasource;
cell.balanceInfo = self.balanceInfo;
cell.delegate = self;
return cell;
} else {
XPEnterpriseRechargePayTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPEnterpriseRechargePayTableViewCell class])];
cell.type = self.listInfo.defaultPay;
cell.delegate = self;
return cell;
}
}
#pragma mark - XPEnterpriseRechargeFootViewDelegate
- (void)xPEnterpriseRechargeFootView:(XPEnterpriseRechargeFootView *)view didClickRecharge:(UIButton *)sender {
if (self.rechargeInfo.chargeProdId.length >0) {
NSString * payType= self.currentItem.type == RechargeType_WX ? @"wx" : @"alipay_v2";
[self.presenter requestPay:self.rechargeInfo.chargeProdId payChannel:payType];
}
}
- (void)xPEnterpriseRechargeFootView:(XPEnterpriseRechargeFootView *)view didClickRechargeProtocol:(UILabel *)label {
XPWebViewController * webVC = [[XPWebViewController alloc] init];
webVC.url = @"yinyou/modules/rule/rechargeAgreement.html";
[self.navigationController pushViewController:webVC animated:YES];
}
#pragma mark - XPEnterpriseChargeListTableViewCellDelegate
- (void)xPEnterpriseChargeListTableViewCell:(XPEnterpriseChargeListTableViewCell *)cell didSelectItem:(EnterpriseRechargeInfoModel *)infoModel {
self.rechargeInfo = infoModel;
}
#pragma mark - XPEnterpriseRechargePayTableViewCellDelegate
- (void)xPEnterpriseRechargePayTableViewCell:(XPEnterpriseRechargePayTableViewCell *)view didChooseItem:(EnterPrieseRechargeTypeItemModel *)itemInfo {
self.currentItem = itemInfo;
}
#pragma mark - XPEnterpriseRechargeProtocol
- (void)getUserWalletInfo:(WalletInfoModel *)balanceInfo {
self.balanceInfo = balanceInfo;
[self.tableView reloadData];
}
- (void)getRechargeListSuccess:(EnterpriseRechargeListInfoModel *)info {
self.listInfo = info;
if (info.list.count > 0) {
[self.datasource addObjectsFromArray:info.list];
}
if (info.defaultPay == RechargeType_ZFB && info.bigList.count > 0) {
[self.datasource addObjectsFromArray: info.bigList];
}
[self.tableView reloadData];
}
- (void)requestPaySuccess:(id)data payChannel:(NSString *)payChannel {
if ([payChannel isEqualToString:@"alipay_v2"]) {
if ([data isKindOfClass:[NSDictionary class]]) {
if ([[data objectForKey:@"payType"] isEqualToString:@"h5"]) {
XPWebViewController *webView = [[XPWebViewController alloc] init];
webView.url = [data objectForKey:@"orderData"];
[self.navigationController pushViewController:webView animated:YES];
}else if ([[data objectForKey:@"payType"] isEqualToString:@"native"]) {
NSString * signedStr = [data objectForKey:@"orderData"];
NSString * scheme = @"daeplayappp";
[[AlipaySDK defaultService] payOrder:signedStr fromScheme:scheme callback:^(NSDictionary *resultDic) {
}];
}
}
} else if ([payChannel isEqualToString:@"alipay"]) {
if ([data isKindOfClass:[NSString class]]) {
NSString * scheme = @"daeplayappp";
NSString * signedStr = [data objectForKey:@"orderData"];
[[AlipaySDK defaultService] payOrder:signedStr fromScheme:scheme callback:^(NSDictionary *resultDic) {
}];
}
}else if ([payChannel isEqualToString:@"wx"]){
if ([data isKindOfClass:[NSDictionary class]]) {
PayReq *req = [[PayReq alloc] init];
NSDictionary * dict = data;
NSMutableString *stamp = [dict objectForKey:@"timestamp"];
req.partnerId = [dict objectForKey:@"partnerid"];
req.prepayId = [dict objectForKey:@"prepayid"];
req.nonceStr = [dict objectForKey:@"noncestr"];
req.timeStamp = stamp.intValue;
req.package = @"Sign=WXPay";
req.sign = [dict objectForKey:@"sign"];
[WXApi sendReq:req completion:^(BOOL success) {
if (success) {
NSLog(@"********调起微信支付成功");
}
}];
}
}
}
#pragma mark - NIMSystemNotificationManagerDelegate
- (void)onReceiveCustomSystemNotification:(NIMCustomSystemNotification *)notification {
if (notification.receiverType == NIMSessionTypeP2P) {
AttachmentModel *attachment = [AttachmentModel modelWithJSON:notification.content];
if (attachment.first == CustomMessageType_Account && attachment.second == Custom_Message_Sub_Account_Changed) {
WalletInfoModel * balanceInfo = [WalletInfoModel modelWithDictionary:attachment.data];
self.balanceInfo = balanceInfo;
[self.tableView reloadData];
}
}
}
#pragma mark - Event Response
- (void)backButtonAction:(UIButton *)sender {
[self.navigationController popViewControllerAnimated:YES];
}
- (void)incomeButtonAction:(UIButton *)sender {
XPWebViewController * webVC = [[XPWebViewController alloc] init];
webVC.url = @"yinyou/modules/myincome/index.html#/myincome";
[self.navigationController pushViewController:webVC animated:YES];
}
#pragma mark - Getters And Setters
- (UITableView *)tableView {
if (!_tableView) {
_tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStylePlain];
_tableView.delegate = self;
_tableView.dataSource = self;
_tableView.tableFooterView = [UIView new];
_tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
_tableView.backgroundColor = [UIColor clearColor];
if (@available(iOS 11.0, *)) {
_tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}
[_tableView registerClass:[XPEnterpriseRechargePayTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPEnterpriseRechargePayTableViewCell class])];
[_tableView registerClass:[XPEnterpriseChargeListTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPEnterpriseChargeListTableViewCell class])];
}
return _tableView;
}
- (XPEnterpriseRechargeFootView *)footView {
if (!_footView) {
_footView = [[XPEnterpriseRechargeFootView alloc] init];
_footView.delegate = self;
}
return _footView;
}
- (UIView *)navView {
if (!_navView) {
_navView = [[UIView alloc] init];
_navView.backgroundColor = [UIColor clearColor];
}
return _navView;
}
- (UIButton *)backButton {
if (!_backButton) {
_backButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_backButton setImage:[UIImage imageNamed:@"home_search_white_back"] forState:UIControlStateNormal];
[_backButton setImage:[UIImage imageNamed:@"home_search_white_back"] forState:UIControlStateSelected];
[_backButton addTarget:self action:@selector(backButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _backButton;
}
- (UILabel *)titleLabel {
if (!_titleLabel) {
_titleLabel = [[UILabel alloc] init];
_titleLabel.font = [UIFont systemFontOfSize:18 weight:UIFontWeightMedium];
_titleLabel.textColor = [UIColor whiteColor];
_titleLabel.textAlignment = NSTextAlignmentCenter;
_titleLabel.text = @"我的账户";
}
return _titleLabel;
}
- (UIButton *)incomeButton {
if (!_incomeButton) {
_incomeButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_incomeButton setTitle:@"我的收益" forState:UIControlStateNormal];
[_incomeButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
_incomeButton.titleLabel.font = [UIFont systemFontOfSize:13];
[_incomeButton addTarget:self action:@selector(incomeButtonAction:) forControlEvents:UIControlEventTouchUpInside];
}
return _incomeButton;
}
- (NSMutableArray<EnterpriseRechargeInfoModel *> *)datasource {
if (!_datasource) {
_datasource = [NSMutableArray array];
}
return _datasource;
}
@end