Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
galaxy-iOS
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
mobile-group
galaxy-iOS
Commits
eb6e6503
Commit
eb6e6503
authored
Feb 24, 2025
by
Alex朱枝文
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
会员中心页调整
parent
db5f0ae5
Changes
11
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
296 additions
and
32 deletions
+296
-32
project.pbxproj
galaxy/galaxy.xcodeproj/project.pbxproj
+4
-0
YHMemberCenterViewController.swift
...ses/Modules/Mine(我的)/C/YHMemberCenterViewController.swift
+44
-25
YHMemberCenterHeaderBannerCell.swift
...s/Modules/Mine(我的)/V/YHMemberCenterHeaderBannerCell.swift
+27
-0
YHMemberCenterHeaderView.swift
...Classes/Modules/Mine(我的)/V/YHMemberCenterHeaderView.swift
+15
-7
YHMembershipGrowthGuideView.swift
...sses/Modules/Mine(我的)/V/YHMembershipGrowthGuideView.swift
+162
-0
Contents.json
...e/memberCenter/arrow_right_gold_16.imageset/Contents.json
+22
-0
arrow_right_gold_16@2x.png
...r/arrow_right_gold_16.imageset/arrow_right_gold_16@2x.png
+0
-0
arrow_right_gold_16@3x.png
...r/arrow_right_gold_16.imageset/arrow_right_gold_16@3x.png
+0
-0
Contents.json
...mberCenter/membership_growth_guide.imageset/Contents.json
+22
-0
membership_growth_guide@2x.png
...ship_growth_guide.imageset/membership_growth_guide@2x.png
+0
-0
membership_growth_guide@3x.png
...ship_growth_guide.imageset/membership_growth_guide@3x.png
+0
-0
No files found.
galaxy/galaxy.xcodeproj/project.pbxproj
View file @
eb6e6503
...
@@ -74,6 +74,7 @@
...
@@ -74,6 +74,7 @@
043671412D64935200E8D9BA
/* YHMemberCenterCellContent.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
043671402D64935200E8D9BA
/* YHMemberCenterCellContent.swift */
;
};
043671412D64935200E8D9BA
/* YHMemberCenterCellContent.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
043671402D64935200E8D9BA
/* YHMemberCenterCellContent.swift */
;
};
043671432D66DDB500E8D9BA
/* YHMemberCenterInfo.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
043671422D66DDB500E8D9BA
/* YHMemberCenterInfo.swift */
;
};
043671432D66DDB500E8D9BA
/* YHMemberCenterInfo.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
043671422D66DDB500E8D9BA
/* YHMemberCenterInfo.swift */
;
};
043671452D66FBEE00E8D9BA
/* YHMemberCenterViewModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
043671442D66FBEE00E8D9BA
/* YHMemberCenterViewModel.swift */
;
};
043671452D66FBEE00E8D9BA
/* YHMemberCenterViewModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
043671442D66FBEE00E8D9BA
/* YHMemberCenterViewModel.swift */
;
};
043671472D6C3ED100E8D9BA
/* YHMembershipGrowthGuideView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
043671462D6C3ED100E8D9BA
/* YHMembershipGrowthGuideView.swift */
;
};
045C0F7F2D12CA5F00BD2DC0
/* submit_page_scroll.gif in Resources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045C0F4F2D12CA5E00BD2DC0
/* submit_page_scroll.gif */
;
};
045C0F7F2D12CA5F00BD2DC0
/* submit_page_scroll.gif in Resources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045C0F4F2D12CA5E00BD2DC0
/* submit_page_scroll.gif */
;
};
045C0F802D12CA5F00BD2DC0
/* Localizable.xcstrings in Resources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045C0F762D12CA5E00BD2DC0
/* Localizable.xcstrings */
;
};
045C0F802D12CA5F00BD2DC0
/* Localizable.xcstrings in Resources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045C0F762D12CA5E00BD2DC0
/* Localizable.xcstrings */
;
};
045C0F812D12CA5F00BD2DC0
/* img_0.png in Resources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045C0F5E2D12CA5E00BD2DC0
/* img_0.png */
;
};
045C0F812D12CA5F00BD2DC0
/* img_0.png in Resources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045C0F5E2D12CA5E00BD2DC0
/* img_0.png */
;
};
...
@@ -1316,6 +1317,7 @@
...
@@ -1316,6 +1317,7 @@
043671402D64935200E8D9BA
/* YHMemberCenterCellContent.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMemberCenterCellContent.swift
;
sourceTree
=
"<group>"
;
};
043671402D64935200E8D9BA
/* YHMemberCenterCellContent.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMemberCenterCellContent.swift
;
sourceTree
=
"<group>"
;
};
043671422D66DDB500E8D9BA
/* YHMemberCenterInfo.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMemberCenterInfo.swift
;
sourceTree
=
"<group>"
;
};
043671422D66DDB500E8D9BA
/* YHMemberCenterInfo.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMemberCenterInfo.swift
;
sourceTree
=
"<group>"
;
};
043671442D66FBEE00E8D9BA
/* YHMemberCenterViewModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMemberCenterViewModel.swift
;
sourceTree
=
"<group>"
;
};
043671442D66FBEE00E8D9BA
/* YHMemberCenterViewModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMemberCenterViewModel.swift
;
sourceTree
=
"<group>"
;
};
043671462D6C3ED100E8D9BA
/* YHMembershipGrowthGuideView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMembershipGrowthGuideView.swift
;
sourceTree
=
"<group>"
;
};
045C0A142D12CA5E00BD2DC0
/* YHBaseViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHBaseViewController.swift
;
sourceTree
=
"<group>"
;
};
045C0A142D12CA5E00BD2DC0
/* YHBaseViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHBaseViewController.swift
;
sourceTree
=
"<group>"
;
};
045C0A152D12CA5E00BD2DC0
/* YHBaseViewModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHBaseViewModel.swift
;
sourceTree
=
"<group>"
;
};
045C0A152D12CA5E00BD2DC0
/* YHBaseViewModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHBaseViewModel.swift
;
sourceTree
=
"<group>"
;
};
045C0A162D12CA5E00BD2DC0
/* YHNavigationController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHNavigationController.swift
;
sourceTree
=
"<group>"
;
};
045C0A162D12CA5E00BD2DC0
/* YHNavigationController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHNavigationController.swift
;
sourceTree
=
"<group>"
;
};
...
@@ -5816,6 +5818,7 @@
...
@@ -5816,6 +5818,7 @@
04AFEF4A2D5DF3710007A011
/* YHMyUserInfoView.swift */
,
04AFEF4A2D5DF3710007A011
/* YHMyUserInfoView.swift */
,
04AFEF4C2D5EEF860007A011
/* YHUserVipInfoView.swift */
,
04AFEF4C2D5EEF860007A011
/* YHUserVipInfoView.swift */
,
048D6ADC2D5EF0A900BC6F4C
/* YHMemberCenterHeaderView.swift */
,
048D6ADC2D5EF0A900BC6F4C
/* YHMemberCenterHeaderView.swift */
,
043671462D6C3ED100E8D9BA
/* YHMembershipGrowthGuideView.swift */
,
048D6ADE2D5F0FBE00BC6F4C
/* YHMemberCenterHeaderBannerCell.swift */
,
048D6ADE2D5F0FBE00BC6F4C
/* YHMemberCenterHeaderBannerCell.swift */
,
048D6AE22D6348EF00BC6F4C
/* YHMemberCenterCurrentPrivilegeCell.swift */
,
048D6AE22D6348EF00BC6F4C
/* YHMemberCenterCurrentPrivilegeCell.swift */
,
0436713A2D643A7A00E8D9BA
/* YHMemberCenterMyPrivilegeCell.swift */
,
0436713A2D643A7A00E8D9BA
/* YHMemberCenterMyPrivilegeCell.swift */
,
...
@@ -7528,6 +7531,7 @@
...
@@ -7528,6 +7531,7 @@
045C11FC2D12CA5F00BD2DC0
/* YHHKPlaceInfoCell.swift in Sources */
,
045C11FC2D12CA5F00BD2DC0
/* YHHKPlaceInfoCell.swift in Sources */
,
045C11FD2D12CA5F00BD2DC0
/* YHIncomeRecordUtilType.swift in Sources */
,
045C11FD2D12CA5F00BD2DC0
/* YHIncomeRecordUtilType.swift in Sources */
,
045C11FE2D12CA5F00BD2DC0
/* YHVideoPlayerControlView.swift in Sources */
,
045C11FE2D12CA5F00BD2DC0
/* YHVideoPlayerControlView.swift in Sources */
,
043671472D6C3ED100E8D9BA
/* YHMembershipGrowthGuideView.swift in Sources */
,
045C11FF2D12CA5F00BD2DC0
/* YHResignCertificateModel.swift in Sources */
,
045C11FF2D12CA5F00BD2DC0
/* YHResignCertificateModel.swift in Sources */
,
045C12002D12CA5F00BD2DC0
/* YHPrincipleApprovedAlertView.swift in Sources */
,
045C12002D12CA5F00BD2DC0
/* YHPrincipleApprovedAlertView.swift in Sources */
,
045C12012D12CA5F00BD2DC0
/* YHSchemeTableHeadView.swift in Sources */
,
045C12012D12CA5F00BD2DC0
/* YHSchemeTableHeadView.swift in Sources */
,
...
...
galaxy/galaxy/Classes/Modules/Mine(我的)/C/YHMemberCenterViewController.swift
View file @
eb6e6503
...
@@ -16,13 +16,13 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -16,13 +16,13 @@ class YHMemberCenterViewController: YHBaseViewController {
}
}
private
var
currentLevel
:
YHMembershipLevel
=
.
normal
private
var
currentLevel
:
YHMembershipLevel
=
.
normal
private
var
viewModel
=
YHMemberCenterViewModel
()
private
var
viewModel
=
YHMemberCenterViewModel
()
private
var
firstEnter
=
true
private
var
firstEnter
=
true
var
datas
:
[
TableRow
]
=
[]
var
datas
:
[
TableRow
]
=
[]
private
lazy
var
tableView
:
UITableView
=
{
private
lazy
var
tableView
:
UITableView
=
{
let
view
=
UITableView
(
frame
:
CGRect
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
KScreenHeight
),
style
:
.
grouped
)
let
view
=
UITableView
(
frame
:
CGRect
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
KScreenHeight
),
style
:
.
grouped
)
view
.
estimatedSectionHeaderHeight
=
0.01
view
.
estimatedSectionHeaderHeight
=
0.01
...
@@ -57,6 +57,12 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -57,6 +57,12 @@ class YHMemberCenterViewController: YHBaseViewController {
self
.
updateDatas
(
info
)
self
.
updateDatas
(
info
)
}
}
}
}
view
.
levelButtonEvent
=
{
[
weak
self
]
_
in
self
?
.
gotoGuideView
()
}
view
.
upgradeButtonEvent
=
{
[
weak
self
]
_
in
self
?
.
gotoYinheStore
()
}
return
view
return
view
}()
}()
...
@@ -69,7 +75,7 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -69,7 +75,7 @@ class YHMemberCenterViewController: YHBaseViewController {
super
.
viewDidLoad
()
super
.
viewDidLoad
()
setupUI
()
setupUI
()
}
}
override
func
viewWillAppear
(
_
animated
:
Bool
)
{
override
func
viewWillAppear
(
_
animated
:
Bool
)
{
super
.
viewWillAppear
(
animated
)
super
.
viewWillAppear
(
animated
)
if
firstEnter
{
if
firstEnter
{
...
@@ -78,7 +84,6 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -78,7 +84,6 @@ class YHMemberCenterViewController: YHBaseViewController {
}
else
{
}
else
{
requestData
(
isNeedLoading
:
false
)
requestData
(
isNeedLoading
:
false
)
}
}
}
}
private
func
setupUI
()
{
private
func
setupUI
()
{
...
@@ -108,7 +113,7 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -108,7 +113,7 @@ class YHMemberCenterViewController: YHBaseViewController {
tableView
.
tableHeaderView
=
headerView
tableView
.
tableHeaderView
=
headerView
tableView
.
tableFooterView
=
footerView
tableView
.
tableFooterView
=
footerView
}
}
private
func
requestData
(
isNeedLoading
:
Bool
=
false
)
{
private
func
requestData
(
isNeedLoading
:
Bool
=
false
)
{
if
isNeedLoading
{
if
isNeedLoading
{
YHHUD
.
show
(
.
progress
(
message
:
"加载中..."
))
YHHUD
.
show
(
.
progress
(
message
:
"加载中..."
))
...
@@ -133,6 +138,7 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -133,6 +138,7 @@ class YHMemberCenterViewController: YHBaseViewController {
}
}
}
}
}
}
private
func
updateDatas
(
_
memberCenterInfo
:
YHMemberCenterInfo
)
{
private
func
updateDatas
(
_
memberCenterInfo
:
YHMemberCenterInfo
)
{
datas
.
removeAll
()
datas
.
removeAll
()
switch
currentLevel
{
switch
currentLevel
{
...
@@ -151,10 +157,10 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -151,10 +157,10 @@ class YHMemberCenterViewController: YHBaseViewController {
datas
.
append
(
.
currentPrivilege
(
.
gold
,
7
))
datas
.
append
(
.
currentPrivilege
(
.
gold
,
7
))
datas
.
append
(
.
myPrivilege
(
.
normal
,
5
))
datas
.
append
(
.
myPrivilege
(
.
normal
,
5
))
let
services
:
[
YHMemberCenterCellContent
]
=
[
.
kidsBay
,
.
luxury
,
.
afternoonTea
,
.
offlineSalons
,
.
onSiteConsultation
,
.
customerService
,
.
pointsConsumption
]
let
services
:
[
YHMemberCenterCellContent
]
=
[
.
kidsBay
,
.
luxury
,
.
afternoonTea
,
.
offlineSalons
,
.
onSiteConsultation
,
.
customerService
,
.
pointsConsumption
]
let
ids
:
[
String
]
=
[
memberCenterInfo
.
highTeaBox
.
giftId
,
memberCenterInfo
.
experienceCenter
.
giftId
,
let
ids
:
[
String
]
=
[
memberCenterInfo
.
highTeaBox
.
giftId
,
memberCenterInfo
.
experienceCenter
.
giftId
,
memberCenterInfo
.
luxuryTea
.
giftId
,
memberCenterInfo
.
luxuryTea
.
giftId
,
memberCenterInfo
.
offlineSalon
.
giftId
,
memberCenterInfo
.
answerConsult
.
giftId
,
memberCenterInfo
.
dedicatedAdviser
.
giftId
,
memberCenterInfo
.
offlineSalon
.
giftId
,
memberCenterInfo
.
answerConsult
.
giftId
,
memberCenterInfo
.
dedicatedAdviser
.
giftId
,
memberCenterInfo
.
specialIntegralConsumption
.
giftId
]
memberCenterInfo
.
specialIntegralConsumption
.
giftId
]
let
details
:
[
String
]
=
[
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
]
let
details
:
[
String
]
=
[
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
]
let
buttonTitles
:
[
String
]
=
[
"了解更多"
,
"了解更多"
,
"立即兑换"
,
"了解更多"
,
"了解更多"
,
"立即联系"
,
"了解更多"
]
let
buttonTitles
:
[
String
]
=
[
"了解更多"
,
"了解更多"
,
"立即兑换"
,
"了解更多"
,
"了解更多"
,
"立即联系"
,
"了解更多"
]
let
buttonStates
:
[
YHMemberCenterActionButton
.
ButtonState
]
=
[
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
]
let
buttonStates
:
[
YHMemberCenterActionButton
.
ButtonState
]
=
[
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
]
...
@@ -166,12 +172,12 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -166,12 +172,12 @@ class YHMemberCenterViewController: YHBaseViewController {
datas
.
append
(
.
currentPrivilege
(
.
platinum
,
8
))
datas
.
append
(
.
currentPrivilege
(
.
platinum
,
8
))
datas
.
append
(
.
myPrivilege
(
.
normal
,
5
))
datas
.
append
(
.
myPrivilege
(
.
normal
,
5
))
let
services
:
[
YHMemberCenterCellContent
]
=
[
.
kidsBay
,
.
luxury
,
.
hkTravel
,
.
afternoonTea
,
.
offlineSalons
,
.
onSiteConsultation
,
.
customerService
,
.
pointsConsumption
]
let
services
:
[
YHMemberCenterCellContent
]
=
[
.
kidsBay
,
.
luxury
,
.
hkTravel
,
.
afternoonTea
,
.
offlineSalons
,
.
onSiteConsultation
,
.
customerService
,
.
pointsConsumption
]
let
ids
:
[
String
]
=
[
memberCenterInfo
.
highTeaBox
.
giftId
,
memberCenterInfo
.
experienceCenter
.
giftId
,
let
ids
:
[
String
]
=
[
memberCenterInfo
.
highTeaBox
.
giftId
,
memberCenterInfo
.
experienceCenter
.
giftId
,
memberCenterInfo
.
hkCarTransfer
.
giftId
,
memberCenterInfo
.
hkCarTransfer
.
giftId
,
memberCenterInfo
.
luxuryTea
.
giftId
,
memberCenterInfo
.
luxuryTea
.
giftId
,
memberCenterInfo
.
offlineSalon
.
giftId
,
memberCenterInfo
.
answerConsult
.
giftId
,
memberCenterInfo
.
dedicatedAdviser
.
giftId
,
memberCenterInfo
.
offlineSalon
.
giftId
,
memberCenterInfo
.
answerConsult
.
giftId
,
memberCenterInfo
.
dedicatedAdviser
.
giftId
,
memberCenterInfo
.
specialIntegralConsumption
.
giftId
]
memberCenterInfo
.
specialIntegralConsumption
.
giftId
]
let
details
:
[
String
]
=
[
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
]
let
details
:
[
String
]
=
[
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
]
let
buttonTitles
:
[
String
]
=
[
"了解更多"
,
"了解更多"
,
"了解更多"
,
"立即兑换"
,
"了解更多"
,
"了解更多"
,
"立即联系"
,
"了解更多"
]
let
buttonTitles
:
[
String
]
=
[
"了解更多"
,
"了解更多"
,
"了解更多"
,
"立即兑换"
,
"了解更多"
,
"了解更多"
,
"立即联系"
,
"了解更多"
]
let
buttonStates
:
[
YHMemberCenterActionButton
.
ButtonState
]
=
[
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
]
let
buttonStates
:
[
YHMemberCenterActionButton
.
ButtonState
]
=
[
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
]
...
@@ -182,19 +188,19 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -182,19 +188,19 @@ class YHMemberCenterViewController: YHBaseViewController {
case
.
diamond
:
case
.
diamond
:
datas
.
append
(
.
currentPrivilege
(
.
diamond
,
13
))
datas
.
append
(
.
currentPrivilege
(
.
diamond
,
13
))
datas
.
append
(
.
myPrivilege
(
.
normal
,
5
))
datas
.
append
(
.
myPrivilege
(
.
normal
,
5
))
let
services
:
[
YHMemberCenterCellContent
]
=
[
.
kidsBay
,
.
luxury
,
.
crossBorder
,
.
hkTravel
,
.
drivingLicense
,
.
schoolSelection
,
.
brandPlanning
,
.
highEndMeeting
,
.
afternoonTea
,
.
offlineSalons
,
.
onSiteConsultation
,
.
customerService
,
.
pointsConsumption
]
let
services
:
[
YHMemberCenterCellContent
]
=
[
.
kidsBay
,
.
luxury
,
.
crossBorder
,
.
hkTravel
,
.
drivingLicense
,
.
schoolSelection
,
.
brandPlanning
,
.
highEndMeeting
,
.
afternoonTea
,
.
offlineSalons
,
.
onSiteConsultation
,
.
customerService
,
.
pointsConsumption
]
let
ids
:
[
String
]
=
[
memberCenterInfo
.
highTeaBox
.
giftId
,
memberCenterInfo
.
experienceCenter
.
giftId
,
let
ids
:
[
String
]
=
[
memberCenterInfo
.
highTeaBox
.
giftId
,
memberCenterInfo
.
experienceCenter
.
giftId
,
memberCenterInfo
.
carTransfer
.
giftId
,
memberCenterInfo
.
carTransfer
.
giftId
,
memberCenterInfo
.
hkCarTransfer
.
giftId
,
memberCenterInfo
.
hkCarTransfer
.
giftId
,
memberCenterInfo
.
internationalDrivingLicense
.
giftId
,
memberCenterInfo
.
internationalDrivingLicense
.
giftId
,
memberCenterInfo
.
hongkongSchoolPlanning
.
giftId
,
memberCenterInfo
.
hongkongSchoolPlanning
.
giftId
,
memberCenterInfo
.
brandStrategy
.
giftId
,
memberCenterInfo
.
brandStrategy
.
giftId
,
memberCenterInfo
.
highEndPrivilege
.
giftId
,
memberCenterInfo
.
highEndPrivilege
.
giftId
,
memberCenterInfo
.
luxuryTea
.
giftId
,
memberCenterInfo
.
luxuryTea
.
giftId
,
memberCenterInfo
.
offlineSalon
.
giftId
,
memberCenterInfo
.
answerConsult
.
giftId
,
memberCenterInfo
.
dedicatedAdviser
.
giftId
,
memberCenterInfo
.
offlineSalon
.
giftId
,
memberCenterInfo
.
answerConsult
.
giftId
,
memberCenterInfo
.
dedicatedAdviser
.
giftId
,
memberCenterInfo
.
specialIntegralConsumption
.
giftId
]
memberCenterInfo
.
specialIntegralConsumption
.
giftId
]
let
details
:
[
String
]
=
[
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"本月已兑换完毕,次月更新"
,
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
]
let
details
:
[
String
]
=
[
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"本月已兑换完毕,次月更新"
,
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"本月剩余兑换数量:20"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
,
"不限次数兑换"
]
let
buttonTitles
:
[
String
]
=
[
"了解更多"
,
"了解更多"
,
"暂无库存"
,
"了解更多"
,
"了解更多"
,
"了解更多"
,
"了解更多"
,
"了解更多"
,
"立即兑换"
,
"了解更多"
,
"了解更多"
,
"立即联系"
,
"了解更多"
]
let
buttonTitles
:
[
String
]
=
[
"了解更多"
,
"了解更多"
,
"暂无库存"
,
"了解更多"
,
"了解更多"
,
"了解更多"
,
"了解更多"
,
"了解更多"
,
"立即兑换"
,
"了解更多"
,
"了解更多"
,
"立即联系"
,
"了解更多"
]
let
buttonStates
:
[
YHMemberCenterActionButton
.
ButtonState
]
=
[
.
redeemable
,
.
redeemable
,
.
outOfStock
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
]
let
buttonStates
:
[
YHMemberCenterActionButton
.
ButtonState
]
=
[
.
redeemable
,
.
redeemable
,
.
outOfStock
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
,
.
redeemable
]
...
@@ -206,7 +212,6 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -206,7 +212,6 @@ class YHMemberCenterViewController: YHBaseViewController {
tableView
.
reloadData
()
tableView
.
reloadData
()
}
}
@objc
private
func
didHistoryButtonClicked
()
{
@objc
private
func
didHistoryButtonClicked
()
{
var
url
=
YHBaseUrlManager
.
shared
.
curH5URL
()
+
"superAppBridge.html#/vip/order"
var
url
=
YHBaseUrlManager
.
shared
.
curH5URL
()
+
"superAppBridge.html#/vip/order"
if
YHLoginManager
.
shared
.
isLogin
()
{
if
YHLoginManager
.
shared
.
isLogin
()
{
...
@@ -235,7 +240,13 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -235,7 +240,13 @@ class YHMemberCenterViewController: YHBaseViewController {
let
url
=
YHBaseUrlManager
.
shared
.
curH5URL
()
+
"superAppBridge.html#/vip/center"
let
url
=
YHBaseUrlManager
.
shared
.
curH5URL
()
+
"superAppBridge.html#/vip/center"
YHShareManager
.
shared
.
sendLinkContent
(
"分享会员中心"
,
""
,
UIImage
(
named
:
"AppIcon"
)
??
UIImage
(),
link
:
url
)
YHShareManager
.
shared
.
sendLinkContent
(
"分享会员中心"
,
""
,
UIImage
(
named
:
"AppIcon"
)
??
UIImage
(),
link
:
url
)
}
}
private
func
gotoYinheStore
()
{
let
vc
=
YHSelectViewController
()
vc
.
hideFlag
=
false
navigationController
?
.
pushViewController
(
vc
)
}
private
func
serviceDidClick
(
id
:
String
,
contentType
:
YHMemberCenterCellContent
)
{
private
func
serviceDidClick
(
id
:
String
,
contentType
:
YHMemberCenterCellContent
)
{
switch
contentType
{
switch
contentType
{
case
.
kidsBay
,
.
luxury
,
.
crossBorder
,
.
hkTravel
,
.
drivingLicense
,
.
schoolSelection
,
.
brandPlanning
,
.
highEndMeeting
,
.
afternoonTea
,
.
onSiteConsultation
:
case
.
kidsBay
,
.
luxury
,
.
crossBorder
,
.
hkTravel
,
.
drivingLicense
,
.
schoolSelection
,
.
brandPlanning
,
.
highEndMeeting
,
.
afternoonTea
,
.
onSiteConsultation
:
...
@@ -248,7 +259,7 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -248,7 +259,7 @@ class YHMemberCenterViewController: YHBaseViewController {
gotoScoreCenter
()
gotoScoreCenter
()
}
}
}
}
private
func
gotoCommunity
()
{
private
func
gotoCommunity
()
{
goTabBarBy
(
tabType
:
.
community
)
goTabBarBy
(
tabType
:
.
community
)
DispatchQueue
.
main
.
async
{
DispatchQueue
.
main
.
async
{
...
@@ -256,8 +267,16 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -256,8 +267,16 @@ class YHMemberCenterViewController: YHBaseViewController {
}
}
}
}
private
func
gotoGuideView
()
{
let
view
=
YHMembershipGrowthGuideView
.
sheetView
()
view
.
closeButtonEvent
=
{
}
view
.
show
()
}
private
func
gotoScoreCenter
()
{
private
func
gotoScoreCenter
()
{
if
let
param
=
YHLoginManager
.
shared
.
userModel
?
.
token
,
param
.
count
>
5
{
if
let
param
=
YHLoginManager
.
shared
.
userModel
?
.
token
,
param
.
count
>
5
{
var
url
=
YHBaseUrlManager
.
shared
.
curH5URL
()
+
"superApp/integral"
var
url
=
YHBaseUrlManager
.
shared
.
curH5URL
()
+
"superApp/integral"
url
=
url
+
"?param="
+
YHLoginManager
.
shared
.
h5Token
url
=
url
+
"?param="
+
YHLoginManager
.
shared
.
h5Token
let
vc
=
YHH5WebViewVC
()
let
vc
=
YHH5WebViewVC
()
...
@@ -269,7 +288,7 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -269,7 +288,7 @@ class YHMemberCenterViewController: YHBaseViewController {
navigationController
?
.
pushViewController
(
vc
)
navigationController
?
.
pushViewController
(
vc
)
}
}
}
}
private
func
gotoService
(
_
id
:
String
)
{
private
func
gotoService
(
_
id
:
String
)
{
var
url
=
YHBaseUrlManager
.
shared
.
curH5URL
()
+
"superAppBridge.html#/vip/detail?exchange_support_type=2&source=vip&id=
\(
id
)
"
var
url
=
YHBaseUrlManager
.
shared
.
curH5URL
()
+
"superAppBridge.html#/vip/detail?exchange_support_type=2&source=vip&id=
\(
id
)
"
if
YHLoginManager
.
shared
.
isLogin
()
{
if
YHLoginManager
.
shared
.
isLogin
()
{
...
@@ -293,7 +312,7 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -293,7 +312,7 @@ class YHMemberCenterViewController: YHBaseViewController {
vc
.
isFullScreenFlag
=
true
vc
.
isFullScreenFlag
=
true
navigationController
?
.
pushViewController
(
vc
)
navigationController
?
.
pushViewController
(
vc
)
}
}
private
func
goQiyuService
()
{
private
func
goQiyuService
()
{
guard
let
userId
=
YHLoginManager
.
shared
.
userModel
?
.
id
,
userId
.
count
>
0
,
let
navigationController
=
UIViewController
.
current
?
.
navigationController
else
{
guard
let
userId
=
YHLoginManager
.
shared
.
userModel
?
.
id
,
userId
.
count
>
0
,
let
navigationController
=
UIViewController
.
current
?
.
navigationController
else
{
return
return
...
@@ -301,7 +320,7 @@ class YHMemberCenterViewController: YHBaseViewController {
...
@@ -301,7 +320,7 @@ class YHMemberCenterViewController: YHBaseViewController {
YHButlerServiceManager
.
shared
.
gotoButlerServiceSessionVC
(
navigationController
:
navigationController
,
completion
:
{
_
in
YHButlerServiceManager
.
shared
.
gotoButlerServiceSessionVC
(
navigationController
:
navigationController
,
completion
:
{
_
in
})
})
}
}
private
func
gotoPrivilegePage
()
{
private
func
gotoPrivilegePage
()
{
YHHUD
.
flash
(
message
:
"进特权页,待完善!!"
)
YHHUD
.
flash
(
message
:
"进特权页,待完善!!"
)
}
}
...
@@ -393,7 +412,7 @@ extension YHMemberCenterViewController: UITableViewDelegate, UITableViewDataSour
...
@@ -393,7 +412,7 @@ extension YHMemberCenterViewController: UITableViewDelegate, UITableViewDataSour
}
}
return
0.01
return
0.01
}
}
func
tableView
(
_
tableView
:
UITableView
,
heightForFooterInSection
section
:
Int
)
->
CGFloat
{
func
tableView
(
_
tableView
:
UITableView
,
heightForFooterInSection
section
:
Int
)
->
CGFloat
{
guard
datas
.
count
>
section
else
{
guard
datas
.
count
>
section
else
{
return
0.01
return
0.01
...
...
galaxy/galaxy/Classes/Modules/Mine(我的)/V/YHMemberCenterHeaderBannerCell.swift
View file @
eb6e6503
...
@@ -10,6 +10,11 @@ import FSPagerView
...
@@ -10,6 +10,11 @@ import FSPagerView
import
UIKit
import
UIKit
class
YHMemberCenterHeaderBannerCell
:
FSPagerViewCell
{
class
YHMemberCenterHeaderBannerCell
:
FSPagerViewCell
{
var
upgradeButtonEvent
:
((
_
level
:
YHMembershipLevel
)
->
Void
)?
var
levelButtonEvent
:
((
_
level
:
YHMembershipLevel
)
->
Void
)?
private
var
level
:
YHMembershipLevel
=
.
normal
private
lazy
var
bannerImagV
:
UIImageView
=
{
private
lazy
var
bannerImagV
:
UIImageView
=
{
let
imagV
:
UIImageView
=
UIImageView
()
let
imagV
:
UIImageView
=
UIImageView
()
imagV
.
contentMode
=
.
scaleAspectFit
imagV
.
contentMode
=
.
scaleAspectFit
...
@@ -28,6 +33,7 @@ class YHMemberCenterHeaderBannerCell: FSPagerViewCell {
...
@@ -28,6 +33,7 @@ class YHMemberCenterHeaderBannerCell: FSPagerViewCell {
private
lazy
var
levelButton
:
UIButton
=
{
private
lazy
var
levelButton
:
UIButton
=
{
let
button
=
UIButton
(
type
:
.
custom
)
let
button
=
UIButton
(
type
:
.
custom
)
button
.
titleLabel
?
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
13
)
button
.
titleLabel
?
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
13
)
button
.
addTarget
(
self
,
action
:
#selector(
levelButtonClicked
)
,
for
:
.
touchUpInside
)
return
button
return
button
}()
}()
...
@@ -36,6 +42,7 @@ class YHMemberCenterHeaderBannerCell: FSPagerViewCell {
...
@@ -36,6 +42,7 @@ class YHMemberCenterHeaderBannerCell: FSPagerViewCell {
button
.
titleLabel
?
.
font
=
UIFont
.
PFSC_M
(
ofSize
:
12
)
button
.
titleLabel
?
.
font
=
UIFont
.
PFSC_M
(
ofSize
:
12
)
button
.
clipsToBounds
=
true
button
.
clipsToBounds
=
true
button
.
layer
.
cornerRadius
=
17
button
.
layer
.
cornerRadius
=
17
button
.
addTarget
(
self
,
action
:
#selector(
upgradeButtonClicked
)
,
for
:
.
touchUpInside
)
return
button
return
button
}()
}()
...
@@ -133,11 +140,14 @@ class YHMemberCenterHeaderBannerCell: FSPagerViewCell {
...
@@ -133,11 +140,14 @@ class YHMemberCenterHeaderBannerCell: FSPagerViewCell {
}
}
func
setupData
(
level
:
YHMembershipLevel
,
levelString
:
String
,
tips
:
String
,
upgradeTitle
:
String
,
showProgress
:
Bool
,
ratioString
:
String
,
ratio
:
CGFloat
,
showRatio
:
Bool
,
showTips
:
Bool
)
{
func
setupData
(
level
:
YHMembershipLevel
,
levelString
:
String
,
tips
:
String
,
upgradeTitle
:
String
,
showProgress
:
Bool
,
ratioString
:
String
,
ratio
:
CGFloat
,
showRatio
:
Bool
,
showTips
:
Bool
)
{
self
.
level
=
level
bannerImagV
.
image
=
UIImage
(
named
:
level
.
cardIconTitle
())
bannerImagV
.
image
=
UIImage
(
named
:
level
.
cardIconTitle
())
bannerTitleLabel
.
text
=
level
.
description
bannerTitleLabel
.
text
=
level
.
description
bannerTitleLabel
.
textColor
=
level
.
levelTitleColor
()
bannerTitleLabel
.
textColor
=
level
.
levelTitleColor
()
levelButton
.
setTitleColor
(
level
.
levelButtonTitleColor
(),
for
:
.
normal
)
levelButton
.
setTitleColor
(
level
.
levelButtonTitleColor
(),
for
:
.
normal
)
levelButton
.
setTitle
(
levelString
,
for
:
.
normal
)
levelButton
.
setTitle
(
levelString
,
for
:
.
normal
)
levelButton
.
setImage
(
UIImage
(
named
:
level
.
levelButtonImageTitle
()),
for
:
.
normal
)
levelButton
.
iconInRight
(
with
:
0
)
countLabel
.
textColor
=
level
.
countTitleColor
()
countLabel
.
textColor
=
level
.
countTitleColor
()
countLabel
.
text
=
ratioString
countLabel
.
text
=
ratioString
countLabel
.
isHidden
=
!
showRatio
countLabel
.
isHidden
=
!
showRatio
...
@@ -165,6 +175,14 @@ class YHMemberCenterHeaderBannerCell: FSPagerViewCell {
...
@@ -165,6 +175,14 @@ class YHMemberCenterHeaderBannerCell: FSPagerViewCell {
}
}
}
}
}
}
@objc
private
func
upgradeButtonClicked
()
{
upgradeButtonEvent
?(
level
)
}
@objc
private
func
levelButtonClicked
()
{
levelButtonEvent
?(
level
)
}
}
}
fileprivate
extension
YHMembershipLevel
{
fileprivate
extension
YHMembershipLevel
{
...
@@ -219,6 +237,15 @@ fileprivate extension YHMembershipLevel {
...
@@ -219,6 +237,15 @@ fileprivate extension YHMembershipLevel {
return
UIColor
(
hexString
:
"#E0C9AF80"
)?
.
withAlphaComponent
(
0.5
)
return
UIColor
(
hexString
:
"#E0C9AF80"
)?
.
withAlphaComponent
(
0.5
)
}
}
}
}
func
levelButtonImageTitle
()
->
String
{
switch
self
{
case
.
normal
,
.
gold
,
.
platinum
:
return
"arrow_right_white_16"
case
.
diamond
:
return
"arrow_right_gold_16"
}
}
func
countTitleColor
()
->
UIColor
?
{
func
countTitleColor
()
->
UIColor
?
{
switch
self
{
switch
self
{
...
...
galaxy/galaxy/Classes/Modules/Mine(我的)/V/YHMemberCenterHeaderView.swift
View file @
eb6e6503
...
@@ -53,6 +53,8 @@ class YHMemberCenterHeaderView: UIView {
...
@@ -53,6 +53,8 @@ class YHMemberCenterHeaderView: UIView {
}
}
var
scrollToIndexEvent
:
((
YHMembershipLevel
)
->
Void
)?
var
scrollToIndexEvent
:
((
YHMembershipLevel
)
->
Void
)?
var
upgradeButtonEvent
:
((
_
level
:
YHMembershipLevel
)
->
Void
)?
var
levelButtonEvent
:
((
_
level
:
YHMembershipLevel
)
->
Void
)?
private
lazy
var
bannerView
:
FSPagerView
=
{
private
lazy
var
bannerView
:
FSPagerView
=
{
let
view
=
FSPagerView
()
let
view
=
FSPagerView
()
...
@@ -103,8 +105,8 @@ class YHMemberCenterHeaderView: UIView {
...
@@ -103,8 +105,8 @@ class YHMemberCenterHeaderView: UIView {
showTips
=
false
showTips
=
false
}
}
case
.
gold
:
case
.
gold
:
countFrom
=
0
countFrom
=
1
countTo
=
600
00
countTo
=
600
1
if
memberCenterInfo
.
currentLevel
<
level
.
rawValue
{
if
memberCenterInfo
.
currentLevel
<
level
.
rawValue
{
levelString
=
"您未达到该等级"
levelString
=
"您未达到该等级"
upgradeTitle
=
"去升级"
upgradeTitle
=
"去升级"
...
@@ -118,7 +120,7 @@ class YHMemberCenterHeaderView: UIView {
...
@@ -118,7 +120,7 @@ class YHMemberCenterHeaderView: UIView {
upgradeTitle
=
"已达成"
upgradeTitle
=
"已达成"
tips
=
"距铂金会员还需
\(
countTo
-
memberCenterInfo
.
growthValue
)
成长值"
tips
=
"距铂金会员还需
\(
countTo
-
memberCenterInfo
.
growthValue
)
成长值"
ratioString
=
"
\(
memberCenterInfo
.
growthValue
)
/(countTo)"
ratioString
=
"
\(
memberCenterInfo
.
growthValue
)
/(countTo)"
let
value
=
Double
(
memberCenterInfo
.
growthValue
)
/
Double
(
countTo
)
let
value
=
Double
(
memberCenterInfo
.
growthValue
)
/
Double
(
countTo
-
1
)
ratio
=
value
<
0
?
0
:
value
ratio
=
value
<
0
?
0
:
value
showProgress
=
true
showProgress
=
true
showRatio
=
true
showRatio
=
true
...
@@ -131,8 +133,8 @@ class YHMemberCenterHeaderView: UIView {
...
@@ -131,8 +133,8 @@ class YHMemberCenterHeaderView: UIView {
ratio
=
0
ratio
=
0
}
}
case
.
platinum
:
case
.
platinum
:
countFrom
=
600
00
countFrom
=
600
1
countTo
=
1500
00
countTo
=
1500
1
if
memberCenterInfo
.
currentLevel
<
level
.
rawValue
{
if
memberCenterInfo
.
currentLevel
<
level
.
rawValue
{
levelString
=
"您未达到该等级"
levelString
=
"您未达到该等级"
upgradeTitle
=
"去升级"
upgradeTitle
=
"去升级"
...
@@ -145,7 +147,7 @@ class YHMemberCenterHeaderView: UIView {
...
@@ -145,7 +147,7 @@ class YHMemberCenterHeaderView: UIView {
upgradeTitle
=
"已达成"
upgradeTitle
=
"已达成"
tips
=
"距钻石会员还需
\(
countTo
-
memberCenterInfo
.
growthValue
)
成长值"
tips
=
"距钻石会员还需
\(
countTo
-
memberCenterInfo
.
growthValue
)
成长值"
ratioString
=
"
\(
memberCenterInfo
.
growthValue
)
/(countTo)"
ratioString
=
"
\(
memberCenterInfo
.
growthValue
)
/(countTo)"
let
value
=
Double
(
memberCenterInfo
.
growthValue
)
/
Double
(
countTo
)
let
value
=
Double
(
memberCenterInfo
.
growthValue
)
/
Double
(
countTo
-
1
)
ratio
=
value
<
0
?
0
:
value
ratio
=
value
<
0
?
0
:
value
showProgress
=
true
showProgress
=
true
showRatio
=
true
showRatio
=
true
...
@@ -158,7 +160,7 @@ class YHMemberCenterHeaderView: UIView {
...
@@ -158,7 +160,7 @@ class YHMemberCenterHeaderView: UIView {
ratio
=
0
ratio
=
0
}
}
case
.
diamond
:
case
.
diamond
:
countFrom
=
1500
00
countFrom
=
1500
1
countTo
=
Int
.
max
countTo
=
Int
.
max
if
memberCenterInfo
.
currentLevel
<
level
.
rawValue
{
if
memberCenterInfo
.
currentLevel
<
level
.
rawValue
{
levelString
=
"您未达到该等级"
levelString
=
"您未达到该等级"
...
@@ -215,6 +217,12 @@ extension YHMemberCenterHeaderView: FSPagerViewDataSource, FSPagerViewDelegate {
...
@@ -215,6 +217,12 @@ extension YHMemberCenterHeaderView: FSPagerViewDataSource, FSPagerViewDelegate {
if
let
cell
=
pagerView
.
dequeueReusableCell
(
withReuseIdentifier
:
"YHMemberCenterHeaderBannerCell"
,
at
:
index
)
as?
YHMemberCenterHeaderBannerCell
{
if
let
cell
=
pagerView
.
dequeueReusableCell
(
withReuseIdentifier
:
"YHMemberCenterHeaderBannerCell"
,
at
:
index
)
as?
YHMemberCenterHeaderBannerCell
{
let
model
=
datas
[
index
]
let
model
=
datas
[
index
]
cell
.
setupData
(
level
:
model
.
level
,
levelString
:
model
.
levelString
,
tips
:
model
.
tips
,
upgradeTitle
:
model
.
upgradeTitle
,
showProgress
:
model
.
showProgress
,
ratioString
:
model
.
ratioString
,
ratio
:
model
.
ratio
,
showRatio
:
model
.
showRatio
,
showTips
:
model
.
showTips
)
cell
.
setupData
(
level
:
model
.
level
,
levelString
:
model
.
levelString
,
tips
:
model
.
tips
,
upgradeTitle
:
model
.
upgradeTitle
,
showProgress
:
model
.
showProgress
,
ratioString
:
model
.
ratioString
,
ratio
:
model
.
ratio
,
showRatio
:
model
.
showRatio
,
showTips
:
model
.
showTips
)
cell
.
levelButtonEvent
=
{
[
weak
self
]
level
in
self
?
.
levelButtonEvent
?(
level
)
}
cell
.
upgradeButtonEvent
=
{
[
weak
self
]
level
in
self
?
.
upgradeButtonEvent
?(
level
)
}
return
cell
return
cell
}
}
return
FSPagerViewCell
()
return
FSPagerViewCell
()
...
...
galaxy/galaxy/Classes/Modules/Mine(我的)/V/YHMembershipGrowthGuideView.swift
0 → 100644
View file @
eb6e6503
//
// YHMembershipGrowthGuideView.swift
// galaxy
//
// Created by alexzzw on 2025/2/24.
// Copyright © 2025 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHMembershipGrowthGuideView
:
UIView
{
var
closeButtonEvent
:
(()
->
Void
)?
private
lazy
var
topTitleLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
text
=
"会员及成长值说明"
label
.
font
=
.
PFSC_B
(
ofSize
:
17
)
label
.
textColor
=
.
mainTextColor
label
.
textAlignment
=
.
center
return
label
}()
private
lazy
var
closeButton
:
UIButton
=
{
let
button
=
UIButton
(
type
:
.
custom
)
button
.
setImage
(
UIImage
(
named
:
"service_card_close"
),
for
:
.
normal
)
button
.
addTarget
(
self
,
action
:
#selector(
closeButtonClicked
)
,
for
:
.
touchUpInside
)
return
button
}()
private
lazy
var
topLineView
:
UIView
=
{
let
view
=
UIView
()
view
.
backgroundColor
=
UIColor
(
hexString
:
"#E9ECF0"
)
return
view
}()
lazy
var
blackMaskView
:
UIView
=
{
let
view
=
UIView
()
view
.
backgroundColor
=
UIColor
(
hex
:
0x0F1214
,
alpha
:
0.5
)
return
view
}()
lazy
var
whiteContentView
:
UIView
=
{
let
view
=
UIView
()
view
.
backgroundColor
=
.
white
return
view
}()
lazy
var
myScrollView
:
UIScrollView
=
{
let
view
=
UIScrollView
()
view
.
backgroundColor
=
.
clear
view
.
showsVerticalScrollIndicator
=
false
view
.
showsHorizontalScrollIndicator
=
false
return
view
}()
lazy
var
bkgImageV
:
UIImageView
=
{
let
imageV
=
UIImageView
()
imageV
.
image
=
UIImage
(
named
:
"membership_growth_guide"
)
imageV
.
contentMode
=
.
scaleAspectFit
imageV
.
clipsToBounds
=
true
return
imageV
}()
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
override
init
(
frame
:
CGRect
)
{
super
.
init
(
frame
:
frame
)
setupUI
()
}
}
extension
YHMembershipGrowthGuideView
{
static
func
sheetView
()
->
YHMembershipGrowthGuideView
{
let
view
=
YHMembershipGrowthGuideView
(
frame
:
UIScreen
.
main
.
bounds
)
return
view
}
func
show
()
{
UIApplication
.
shared
.
yhKeyWindow
()?
.
addSubview
(
self
)
UIView
.
animate
(
withDuration
:
0.5
)
{
let
whiteHeight
=
KScreenHeight
-
k_Height_NavigationtBarAndStatuBar
self
.
whiteContentView
.
frame
=
CGRect
(
x
:
0
,
y
:
KScreenHeight
-
whiteHeight
,
width
:
KScreenWidth
,
height
:
whiteHeight
)
}
}
@objc
func
dismiss
()
{
removeFromSuperview
()
}
}
private
extension
YHMembershipGrowthGuideView
{
@objc
private
func
closeButtonClicked
()
{
dismiss
()
closeButtonEvent
?()
}
func
setupUI
()
{
addSubview
(
blackMaskView
)
addSubview
(
whiteContentView
)
let
corner
=
UIRectCorner
(
rawValue
:
UIRectCorner
.
topLeft
.
rawValue
|
UIRectCorner
.
topRight
.
rawValue
)
let
path
=
UIBezierPath
(
roundedRect
:
bounds
,
byRoundingCorners
:
corner
,
cornerRadii
:
CGSizeMake
(
kCornerRadius6
,
kCornerRadius6
))
let
layer
=
CAShapeLayer
()
layer
.
frame
=
whiteContentView
.
bounds
layer
.
path
=
path
.
cgPath
whiteContentView
.
layer
.
mask
=
layer
whiteContentView
.
clipsToBounds
=
true
blackMaskView
.
snp
.
makeConstraints
{
make
in
make
.
edges
.
equalToSuperview
()
}
let
whiteHeight
=
KScreenHeight
-
k_Height_NavigationtBarAndStatuBar
whiteContentView
.
frame
=
CGRect
(
x
:
0
,
y
:
KScreenHeight
,
width
:
KScreenWidth
,
height
:
whiteHeight
)
whiteContentView
.
addSubview
(
topTitleLabel
)
whiteContentView
.
addSubview
(
closeButton
)
whiteContentView
.
addSubview
(
topLineView
)
topTitleLabel
.
snp
.
makeConstraints
{
make
in
make
.
centerX
.
equalToSuperview
()
make
.
top
.
equalToSuperview
()
.
offset
(
16
)
}
closeButton
.
snp
.
makeConstraints
{
make
in
make
.
centerY
.
equalTo
(
topTitleLabel
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
20
)
make
.
width
.
height
.
equalTo
(
24
)
}
topLineView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalToSuperview
()
.
offset
(
52
)
make
.
left
.
equalToSuperview
()
.
offset
(
20
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
20
)
}
whiteContentView
.
addSubview
(
myScrollView
)
myScrollView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalToSuperview
()
.
offset
(
54
)
make
.
left
.
equalToSuperview
()
make
.
right
.
equalToSuperview
()
make
.
width
.
equalTo
(
KScreenWidth
)
make
.
height
.
equalTo
(
whiteHeight
-
54
)
}
if
let
_
=
UIImage
(
named
:
"membership_growth_guide"
)
{
let
radio
=
558.0
/
333.0
let
margin
=
(
375.0
-
333.0
)
/
2.0
myScrollView
.
addSubview
(
bkgImageV
)
bkgImageV
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalToSuperview
()
make
.
left
.
equalToSuperview
()
.
offset
(
margin
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
margin
)
make
.
width
.
equalTo
(
333.0
)
make
.
height
.
equalTo
(
333.0
*
radio
)
}
myScrollView
.
contentSize
=
CGSize
(
width
:
KScreenWidth
,
height
:
333.0
*
radio
)
}
}
}
galaxy/galaxy/Res/Assets.xcassets/Mine/memberCenter/arrow_right_gold_16.imageset/Contents.json
0 → 100644
View file @
eb6e6503
{
"images"
:
[
{
"idiom"
:
"universal"
,
"scale"
:
"1x"
},
{
"filename"
:
"arrow_right_gold_16@2x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"2x"
},
{
"filename"
:
"arrow_right_gold_16@3x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"3x"
}
],
"info"
:
{
"author"
:
"xcode"
,
"version"
:
1
}
}
galaxy/galaxy/Res/Assets.xcassets/Mine/memberCenter/arrow_right_gold_16.imageset/arrow_right_gold_16@2x.png
0 → 100644
View file @
eb6e6503
371 Bytes
galaxy/galaxy/Res/Assets.xcassets/Mine/memberCenter/arrow_right_gold_16.imageset/arrow_right_gold_16@3x.png
0 → 100644
View file @
eb6e6503
494 Bytes
galaxy/galaxy/Res/Assets.xcassets/Mine/memberCenter/membership_growth_guide.imageset/Contents.json
0 → 100644
View file @
eb6e6503
{
"images"
:
[
{
"idiom"
:
"universal"
,
"scale"
:
"1x"
},
{
"filename"
:
"membership_growth_guide@2x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"2x"
},
{
"filename"
:
"membership_growth_guide@3x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"3x"
}
],
"info"
:
{
"author"
:
"xcode"
,
"version"
:
1
}
}
galaxy/galaxy/Res/Assets.xcassets/Mine/memberCenter/membership_growth_guide.imageset/membership_growth_guide@2x.png
0 → 100644
View file @
eb6e6503
173 KB
galaxy/galaxy/Res/Assets.xcassets/Mine/memberCenter/membership_growth_guide.imageset/membership_growth_guide@3x.png
0 → 100644
View file @
eb6e6503
257 KB
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment