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
cfec4509
Commit
cfec4509
authored
Mar 10, 2025
by
Alex朱枝文
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
续签申请缴费调整
parent
7efc138d
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
195 additions
and
199 deletions
+195
-199
project.pbxproj
galaxy/galaxy.xcodeproj/project.pbxproj
+8
-0
YHHKVisaRenewalApplicationVC.swift
...newalPayment(续签在港缴费)/C/YHHKVisaRenewalApplicationVC.swift
+52
-199
YHHKVisaRenewalPaymentInfoList.swift
...walPayment(续签在港缴费)/M/YHHKVisaRenewalPaymentInfoList.swift
+31
-0
YHVisaRenewalItemDetailType.swift
...enewalPayment(续签在港缴费)/M/YHVisaRenewalItemDetailType.swift
+10
-0
YHVisaRenewalPayMemberCell.swift
...RenewalPayment(续签在港缴费)/V/YHVisaRenewalPayMemberCell.swift
+66
-0
YHHKVisaRenewalPaymentViewModel.swift
...lPayment(续签在港缴费)/VM/YHHKVisaRenewalPaymentViewModel.swift
+26
-0
YHAllApiName.swift
galaxy/galaxy/Classes/Tools/NetWork/YHAllApiName.swift
+2
-0
No files found.
galaxy/galaxy.xcodeproj/project.pbxproj
View file @
cfec4509
...
@@ -36,6 +36,8 @@
...
@@ -36,6 +36,8 @@
0411CF1A2D22960900644D35
/* YHGCWorkExperienceListReasonTableViewCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
0411CF192D22960900644D35
/* YHGCWorkExperienceListReasonTableViewCell.swift */
;
};
0411CF1A2D22960900644D35
/* YHGCWorkExperienceListReasonTableViewCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
0411CF192D22960900644D35
/* YHGCWorkExperienceListReasonTableViewCell.swift */
;
};
0411CF1C2D2BA99500644D35
/* YHGCWorkExperienceListTableViewCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
0411CF1B2D2BA99500644D35
/* YHGCWorkExperienceListTableViewCell.swift */
;
};
0411CF1C2D2BA99500644D35
/* YHGCWorkExperienceListTableViewCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
0411CF1B2D2BA99500644D35
/* YHGCWorkExperienceListTableViewCell.swift */
;
};
041938712D2B722D00C7A52A
/* YHGCCollegeSearchViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
041938702D2B722D00C7A52A
/* YHGCCollegeSearchViewController.swift */
;
};
041938712D2B722D00C7A52A
/* YHGCCollegeSearchViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
041938702D2B722D00C7A52A
/* YHGCCollegeSearchViewController.swift */
;
};
041CCDF72D7ED9030015E7BC
/* YHHKVisaRenewalPaymentInfoList.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
041CCDF62D7ED9030015E7BC
/* YHHKVisaRenewalPaymentInfoList.swift */
;
};
041CCDF92D7EE8B90015E7BC
/* YHVisaRenewalPayMemberCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
041CCDF82D7EE8B90015E7BC
/* YHVisaRenewalPayMemberCell.swift */
;
};
04307B662D1942F500ED8E8D
/* YHDynamicSheetPickerView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04307B652D1942F500ED8E8D
/* YHDynamicSheetPickerView.swift */
;
};
04307B662D1942F500ED8E8D
/* YHDynamicSheetPickerView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04307B652D1942F500ED8E8D
/* YHDynamicSheetPickerView.swift */
;
};
04307B682D19911800ED8E8D
/* YHIncomeInfoEditCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04307B672D19911800ED8E8D
/* YHIncomeInfoEditCell.swift */
;
};
04307B682D19911800ED8E8D
/* YHIncomeInfoEditCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04307B672D19911800ED8E8D
/* YHIncomeInfoEditCell.swift */
;
};
04307B6A2D1A4C6500ED8E8D
/* YHIncomeInfoSelectCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04307B692D1A4C6500ED8E8D
/* YHIncomeInfoSelectCell.swift */
;
};
04307B6A2D1A4C6500ED8E8D
/* YHIncomeInfoSelectCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04307B692D1A4C6500ED8E8D
/* YHIncomeInfoSelectCell.swift */
;
};
...
@@ -1286,6 +1288,8 @@
...
@@ -1286,6 +1288,8 @@
0411CF192D22960900644D35
/* YHGCWorkExperienceListReasonTableViewCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHGCWorkExperienceListReasonTableViewCell.swift
;
sourceTree
=
"<group>"
;
};
0411CF192D22960900644D35
/* YHGCWorkExperienceListReasonTableViewCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHGCWorkExperienceListReasonTableViewCell.swift
;
sourceTree
=
"<group>"
;
};
0411CF1B2D2BA99500644D35
/* YHGCWorkExperienceListTableViewCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHGCWorkExperienceListTableViewCell.swift
;
sourceTree
=
"<group>"
;
};
0411CF1B2D2BA99500644D35
/* YHGCWorkExperienceListTableViewCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHGCWorkExperienceListTableViewCell.swift
;
sourceTree
=
"<group>"
;
};
041938702D2B722D00C7A52A
/* YHGCCollegeSearchViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHGCCollegeSearchViewController.swift
;
sourceTree
=
"<group>"
;
};
041938702D2B722D00C7A52A
/* YHGCCollegeSearchViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHGCCollegeSearchViewController.swift
;
sourceTree
=
"<group>"
;
};
041CCDF62D7ED9030015E7BC
/* YHHKVisaRenewalPaymentInfoList.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHHKVisaRenewalPaymentInfoList.swift
;
sourceTree
=
"<group>"
;
};
041CCDF82D7EE8B90015E7BC
/* YHVisaRenewalPayMemberCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHVisaRenewalPayMemberCell.swift
;
sourceTree
=
"<group>"
;
};
04307B652D1942F500ED8E8D
/* YHDynamicSheetPickerView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHDynamicSheetPickerView.swift
;
sourceTree
=
"<group>"
;
};
04307B652D1942F500ED8E8D
/* YHDynamicSheetPickerView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHDynamicSheetPickerView.swift
;
sourceTree
=
"<group>"
;
};
04307B672D19911800ED8E8D
/* YHIncomeInfoEditCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHIncomeInfoEditCell.swift
;
sourceTree
=
"<group>"
;
};
04307B672D19911800ED8E8D
/* YHIncomeInfoEditCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHIncomeInfoEditCell.swift
;
sourceTree
=
"<group>"
;
};
04307B692D1A4C6500ED8E8D
/* YHIncomeInfoSelectCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHIncomeInfoSelectCell.swift
;
sourceTree
=
"<group>"
;
};
04307B692D1A4C6500ED8E8D
/* YHIncomeInfoSelectCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHIncomeInfoSelectCell.swift
;
sourceTree
=
"<group>"
;
};
...
@@ -4335,6 +4339,7 @@
...
@@ -4335,6 +4339,7 @@
isa
=
PBXGroup
;
isa
=
PBXGroup
;
children
=
(
children
=
(
045C0CB42D12CA5E00BD2DC0
/* YHHKVisaRenewalPaymentList.swift */
,
045C0CB42D12CA5E00BD2DC0
/* YHHKVisaRenewalPaymentList.swift */
,
041CCDF62D7ED9030015E7BC
/* YHHKVisaRenewalPaymentInfoList.swift */
,
045C0CB52D12CA5E00BD2DC0
/* YHHKVisaRenewalPersonType.swift */
,
045C0CB52D12CA5E00BD2DC0
/* YHHKVisaRenewalPersonType.swift */
,
045C0CB62D12CA5E00BD2DC0
/* YHVisaRenewalItemDetailType.swift */
,
045C0CB62D12CA5E00BD2DC0
/* YHVisaRenewalItemDetailType.swift */
,
045C0CB72D12CA5E00BD2DC0
/* YHVisaRenewalPaymentStatus.swift */
,
045C0CB72D12CA5E00BD2DC0
/* YHVisaRenewalPaymentStatus.swift */
,
...
@@ -4361,6 +4366,7 @@
...
@@ -4361,6 +4366,7 @@
045C0CC62D12CA5E00BD2DC0
/* YHVisaRenewalPayMethodQrcodeCell.swift */
,
045C0CC62D12CA5E00BD2DC0
/* YHVisaRenewalPayMethodQrcodeCell.swift */
,
045C0CC72D12CA5E00BD2DC0
/* YHVisaRenewalPayMethodUrlCell.swift */
,
045C0CC72D12CA5E00BD2DC0
/* YHVisaRenewalPayMethodUrlCell.swift */
,
045C0CC82D12CA5E00BD2DC0
/* YHVisaRenewalPayOccupyingSpaceCell.swift */
,
045C0CC82D12CA5E00BD2DC0
/* YHVisaRenewalPayOccupyingSpaceCell.swift */
,
041CCDF82D7EE8B90015E7BC
/* YHVisaRenewalPayMemberCell.swift */
,
045C0CC92D12CA5E00BD2DC0
/* YHVisaRenewalPayStatusCell.swift */
,
045C0CC92D12CA5E00BD2DC0
/* YHVisaRenewalPayStatusCell.swift */
,
045C0CCA2D12CA5E00BD2DC0
/* YHVisaRenewalPayTipsCell.swift */
,
045C0CCA2D12CA5E00BD2DC0
/* YHVisaRenewalPayTipsCell.swift */
,
045C0CCB2D12CA5E00BD2DC0
/* YHVisaRenewalResidenceActionCell.swift */
,
045C0CCB2D12CA5E00BD2DC0
/* YHVisaRenewalResidenceActionCell.swift */
,
...
@@ -7298,6 +7304,7 @@
...
@@ -7298,6 +7304,7 @@
045C111B2D12CA5F00BD2DC0
/* YHSegmentView.swift in Sources */
,
045C111B2D12CA5F00BD2DC0
/* YHSegmentView.swift in Sources */
,
045C111C2D12CA5F00BD2DC0
/* YHCertificateFilterView.swift in Sources */
,
045C111C2D12CA5F00BD2DC0
/* YHCertificateFilterView.swift in Sources */
,
045C111D2D12CA5F00BD2DC0
/* YHResignInfoValidTimeItemView.swift in Sources */
,
045C111D2D12CA5F00BD2DC0
/* YHResignInfoValidTimeItemView.swift in Sources */
,
041CCDF72D7ED9030015E7BC
/* YHHKVisaRenewalPaymentInfoList.swift in Sources */
,
045C111E2D12CA5F00BD2DC0
/* YHPreviewAcademicAndProfessionalQualificationViewController.swift in Sources */
,
045C111E2D12CA5F00BD2DC0
/* YHPreviewAcademicAndProfessionalQualificationViewController.swift in Sources */
,
045C111F2D12CA5F00BD2DC0
/* YHWorkExperienceTableViewCell.swift in Sources */
,
045C111F2D12CA5F00BD2DC0
/* YHWorkExperienceTableViewCell.swift in Sources */
,
04307BAA2D1FF74500ED8E8D
/* YHRecommendLiveListModel.swift in Sources */
,
04307BAA2D1FF74500ED8E8D
/* YHRecommendLiveListModel.swift in Sources */
,
...
@@ -7537,6 +7544,7 @@
...
@@ -7537,6 +7544,7 @@
045C11EC2D12CA5F00BD2DC0
/* YHMyDocumentsListViewController.swift in Sources */
,
045C11EC2D12CA5F00BD2DC0
/* YHMyDocumentsListViewController.swift in Sources */
,
045C11ED2D12CA5F00BD2DC0
/* YHCertificateEntryBottomView.swift in Sources */
,
045C11ED2D12CA5F00BD2DC0
/* YHCertificateEntryBottomView.swift in Sources */
,
045C11EE2D12CA5F00BD2DC0
/* YHAppointItem.swift in Sources */
,
045C11EE2D12CA5F00BD2DC0
/* YHAppointItem.swift in Sources */
,
041CCDF92D7EE8B90015E7BC
/* YHVisaRenewalPayMemberCell.swift in Sources */
,
045C11EF2D12CA5F00BD2DC0
/* YHResignUploadTravelCardDetailViewModel.swift in Sources */
,
045C11EF2D12CA5F00BD2DC0
/* YHResignUploadTravelCardDetailViewModel.swift in Sources */
,
045C11F02D12CA5F00BD2DC0
/* YHFamilyGroupModel.swift in Sources */
,
045C11F02D12CA5F00BD2DC0
/* YHFamilyGroupModel.swift in Sources */
,
045C11F12D12CA5F00BD2DC0
/* YHHomeAlertViewManager.swift in Sources */
,
045C11F12D12CA5F00BD2DC0
/* YHHomeAlertViewManager.swift in Sources */
,
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/Resign(续签)/HongKongVisaRenewalPayment(续签在港缴费)/C/YHHKVisaRenewalApplicationVC.swift
View file @
cfec4509
...
@@ -8,18 +8,17 @@
...
@@ -8,18 +8,17 @@
import
UIKit
import
UIKit
import
UIKit
import
AttributedString
import
AttributedString
import
SafariServices
import
Photos
import
Photos
import
SafariServices
import
UIKit
class
YHHKVisaRenewalApplicationVC
:
YHBaseViewController
{
class
YHHKVisaRenewalApplicationVC
:
YHBaseViewController
{
private
lazy
var
headerView
:
YHHKVisaRenewalApplicationHeader
=
{
private
lazy
var
headerView
:
YHHKVisaRenewalApplicationHeader
=
{
let
view
=
YHHKVisaRenewalApplicationHeader
(
frame
:
CGRect
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
YHHKVisaRenewalApplicationHeader
.
viewHeight
))
let
view
=
YHHKVisaRenewalApplicationHeader
(
frame
:
CGRect
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
YHHKVisaRenewalApplicationHeader
.
viewHeight
))
return
view
return
view
}()
}()
private
lazy
var
tableView
:
UITableView
=
{
private
lazy
var
tableView
:
UITableView
=
{
let
view
=
UITableView
(
frame
:
.
zero
,
style
:
.
grouped
)
let
view
=
UITableView
(
frame
:
.
zero
,
style
:
.
grouped
)
view
.
estimatedSectionHeaderHeight
=
16.0
view
.
estimatedSectionHeaderHeight
=
16.0
...
@@ -34,52 +33,38 @@ class YHHKVisaRenewalApplicationVC: YHBaseViewController {
...
@@ -34,52 +33,38 @@ class YHHKVisaRenewalApplicationVC: YHBaseViewController {
view
.
dataSource
=
self
view
.
dataSource
=
self
view
.
delegate
=
self
view
.
delegate
=
self
view
.
showsVerticalScrollIndicator
=
false
view
.
showsVerticalScrollIndicator
=
false
view
.
register
(
YHVisaRenewalSectionHeaderCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalSectionHeaderCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalSectionHeaderCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalSectionHeaderCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalTipsCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalTipsCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalResidenceActionCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalResidenceActionCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPayMethodUrlCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayMethodUrlCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPayMethodUrlCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayMethodUrlCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPayMethodQrcodeCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayMethodQrcodeCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPayMethodQrcodeCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayMethodQrcodeCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPayOccupyingSpaceCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayOccupyingSpaceCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPayOccupyingSpaceCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayOccupyingSpaceCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPay
StatusCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayStatus
Cell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPay
MemberCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayMember
Cell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPayInfoCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayInfoCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPayInfoCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayInfoCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPayContentCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayContentCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPayContentCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayContentCell
.
cellReuseIdentifier
)
view
.
register
(
YHVisaRenewalPayTipsCell
.
self
,
forCellReuseIdentifier
:
YHVisaRenewalPayTipsCell
.
cellReuseIdentifier
)
return
view
return
view
}()
}()
private
lazy
var
datas
:
[[
YHVisaRenewalItemDetailType
]]
=
[]
private
lazy
var
datas
:
[[
YHVisaRenewalInfoItemDetailType
]]
=
[]
private
lazy
var
viewModel
=
YHHKVisaRenewalPaymentViewModel
()
private
lazy
var
viewModel
=
YHHKVisaRenewalPaymentViewModel
()
private
var
orderId
:
Int
=
0
private
var
renewalId
:
Int
=
0
private
var
id
:
Int
=
0
private
var
id
:
Int
=
0
private
var
isEdit
:
Int
=
0
private
var
isEdit
:
Int
=
0
init
(
id
:
Int
,
isEdit
:
Int
)
{
init
(
id
:
Int
,
isEdit
:
Int
)
{
self
.
id
=
id
self
.
id
=
id
self
.
isEdit
=
isEdit
self
.
isEdit
=
isEdit
super
.
init
(
nibName
:
nil
,
bundle
:
nil
)
super
.
init
(
nibName
:
nil
,
bundle
:
nil
)
}
}
init
(
orderId
:
Int
,
renewalId
:
Int
)
{
self
.
orderId
=
orderId
self
.
renewalId
=
renewalId
super
.
init
(
nibName
:
nil
,
bundle
:
nil
)
}
required
init
?(
coder
:
NSCoder
)
{
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
fatalError
(
"init(coder:) has not been implemented"
)
}
}
override
func
viewDidLoad
()
{
override
func
viewDidLoad
()
{
super
.
viewDidLoad
()
super
.
viewDidLoad
()
setupUI
()
setupUI
()
}
}
override
func
viewWillAppear
(
_
animated
:
Bool
)
{
override
func
viewWillAppear
(
_
animated
:
Bool
)
{
super
.
viewWillAppear
(
animated
)
super
.
viewWillAppear
(
animated
)
requestData
()
requestData
()
...
@@ -87,40 +72,29 @@ class YHHKVisaRenewalApplicationVC: YHBaseViewController {
...
@@ -87,40 +72,29 @@ class YHHKVisaRenewalApplicationVC: YHBaseViewController {
}
}
extension
YHHKVisaRenewalApplicationVC
{
extension
YHHKVisaRenewalApplicationVC
{
@objc
private
func
clickGuideButton
()
{
showGuideVC
()
}
@objc
private
func
clickSureButton
()
{
let
vc
=
YHResignUploadTravelCardListViewController
()
vc
.
orderId
=
orderId
vc
.
batchId
=
renewalId
navigationController
?
.
pushViewController
(
vc
)
}
private
func
setupUI
()
{
private
func
setupUI
()
{
gk_navTitle
=
"续签申请缴费"
gk_navTitle
=
"续签申请缴费"
gk_navBarAlpha
=
1.0
gk_navBarAlpha
=
1.0
gk_navBackgroundColor
=
.
white
gk_navBackgroundColor
=
.
white
view
.
backgroundColor
=
UIColor
.
contentBkgColor
view
.
backgroundColor
=
UIColor
.
contentBkgColor
view
.
addSubview
(
tableView
)
view
.
addSubview
(
tableView
)
tableView
.
snp
.
makeConstraints
{
make
in
tableView
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
make
.
left
.
equalToSuperview
()
make
.
right
.
equalToSuperview
()
make
.
right
.
equalToSuperview
()
make
.
top
.
equalTo
(
k_Height_NavigationtBarAndStatuBar
)
make
.
top
.
equalTo
(
k_Height_NavigationtBarAndStatuBar
)
make
.
bottom
.
equalToSuperview
()
make
.
bottom
.
equalToSuperview
()
}
}
tableView
.
tableFooterView
=
UIView
(
frame
:
CGRect
.
init
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
kMargin
))
tableView
.
tableFooterView
=
UIView
(
frame
:
CGRect
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
kMargin
))
tableView
.
tableHeaderView
=
headerView
tableView
.
tableHeaderView
=
headerView
}
}
private
func
requestData
(
isNeedLoading
:
Bool
=
false
)
{
private
func
requestData
(
isNeedLoading
:
Bool
=
false
)
{
if
isNeedLoading
{
if
isNeedLoading
{
YHHUD
.
show
(
.
progress
(
message
:
"加载中..."
))
YHHUD
.
show
(
.
progress
(
message
:
"加载中..."
))
}
}
viewModel
.
getPayment
List
(
orderId
:
orderId
,
renewalId
:
renewalId
)
{
[
weak
self
]
paymentListModel
,
error
in
viewModel
.
getPayment
Info
(
id
:
id
,
isEdit
:
isEdit
)
{
[
weak
self
]
paymentListModel
,
error
in
guard
let
self
=
self
else
{
guard
let
self
=
self
else
{
return
return
}
}
...
@@ -136,107 +110,33 @@ extension YHHKVisaRenewalApplicationVC {
...
@@ -136,107 +110,33 @@ extension YHHKVisaRenewalApplicationVC {
self
.
tableView
.
reloadData
()
self
.
tableView
.
reloadData
()
return
return
}
}
var
sections
:
[[
YHVisaRenewalItemDetailType
]]
=
[]
var
sections
:
[[
YHVisaRenewalI
nfoI
temDetailType
]]
=
[]
var
paymentMembers
:
[
YHVisaRenewalItemDetailType
]
=
[]
var
paymentMembers
:
[
YHVisaRenewalI
nfoI
temDetailType
]
=
[]
paymentListModel
.
list
.
forEach
{
[
weak
self
]
person
in
paymentListModel
.
list
.
forEach
{
[
weak
self
]
person
in
guard
let
self
=
self
else
{
guard
let
self
=
self
else
{
return
return
}
}
guard
let
presenceStatus
=
YHVisaRenewalPresenceStatus
(
rawValue
:
person
.
confirm_hk_status
)
else
{
return
}
paymentMembers
.
append
(
.
occupyingSpace
)
guard
let
paymentStatus
=
YHVisaRenewalPaymentStatus
(
rawValue
:
person
.
pay_status
)
else
{
paymentMembers
.
append
(
.
subHeader
(
person
.
name
))
return
paymentMembers
.
append
(
.
subInfo
(
"临时档案号:"
,
person
.
file_num
,
"复制"
,
.
top
,
nil
,
false
,
{
[
weak
self
]
in
}
guard
let
self
=
self
else
{
switch
paymentStatus
{
return
case
.
pendingPayment
:
paymentMembers
.
append
(
.
occupyingSpace
)
paymentMembers
.
append
(
.
subHeader
(
person
.
name
,
.
pendingPayment
))
switch
presenceStatus
{
case
.
approvalPending
:
paymentMembers
.
append
(
.
subRemark
(
"续签申请暂未正式获批,请耐心等待"
))
case
.
confirmingPresence
:
paymentMembers
.
append
(
.
subInfo
(
"临时档案号:"
,
"-"
,
nil
))
paymentMembers
.
append
(
.
subInfo
(
"可缴费时间段:"
,
"
\(
person
.
min_pay_time
)
-
\(
person
.
max_pay_time
)
"
,
nil
))
if
person
.
fee_money
.
count
>
0
{
paymentMembers
.
append
(
.
subInfo
(
"缴费金额:"
,
"
\(
person
.
fee_money
)
"
,
nil
))
}
else
{
paymentMembers
.
append
(
.
subInfo
(
"缴费金额:"
,
"
\(
person
.
fee_hkd
)
港币(≈
\(
person
.
fee_rmb
)
人民币)"
,
nil
))
}
paymentMembers
.
append
(
.
subRemark
(
"请先确认用户完成确认在港"
))
case
.
confirmedPresence
:
paymentMembers
.
append
(
.
subInfo
(
"临时档案号:"
,
person
.
file_num
,
"复制"
,
.
mid
,
nil
,
false
,
{
[
weak
self
]
in
guard
let
self
=
self
else
{
return
}
self
.
copyToPasteBoard
(
person
.
file_num
,
message
:
"已复制档案号"
)
}))
paymentMembers
.
append
(
.
subInfo
(
"可缴费时间段:"
,
"
\(
person
.
min_pay_time
)
-
\(
person
.
max_pay_time
)
"
,
nil
))
if
person
.
fee_money
.
count
>
0
{
paymentMembers
.
append
(
.
subInfo
(
"缴费金额:"
,
"
\(
person
.
fee_money
)
"
,
nil
))
}
else
{
paymentMembers
.
append
(
.
subInfo
(
"缴费金额:"
,
"
\(
person
.
fee_hkd
)
港币(≈
\(
person
.
fee_rmb
)
人民币)"
,
nil
))
}
paymentMembers
.
append
(
.
subRemark
(
"请复制档案号去港府官网缴费"
))
}
case
.
paid
:
var
fileName
=
person
.
receipt
if
fileName
.
count
>
0
,
let
url
=
URL
(
string
:
fileName
)
{
fileName
=
url
.
lastPathComponent
}
paymentMembers
.
append
(
.
occupyingSpace
)
paymentMembers
.
append
(
.
subHeader
(
person
.
name
,
.
paid
))
paymentMembers
.
append
(
.
subInfo
(
"临时档案号:"
,
person
.
file_num
,
"复制"
,
.
mid
,
12
,
true
,
{
[
weak
self
]
in
guard
let
self
=
self
else
{
return
}
self
.
copyToPasteBoard
(
person
.
file_num
,
message
:
"已复制档案号"
)
}))
if
person
.
fee_money
.
count
>
0
{
paymentMembers
.
append
(
.
subInfo
(
"缴费金额:"
,
"
\(
person
.
fee_money
)
"
,
nil
))
}
else
{
paymentMembers
.
append
(
.
subInfo
(
"缴费金额:"
,
"
\(
person
.
fee_hkd
)
港币(≈
\(
person
.
fee_rmb
)
人民币)"
,
nil
))
}
paymentMembers
.
append
(
.
subContent
(
"缴费电子签证:"
,
fileName
,
"查看"
,
.
bottom
,
{
[
weak
self
]
in
guard
let
self
=
self
else
{
return
}
self
.
gotoPreview
(
person
.
receipt
)
}))
case
.
expired
:
paymentMembers
.
append
(
.
occupyingSpace
)
paymentMembers
.
append
(
.
subHeader
(
person
.
name
,
.
expired
))
paymentMembers
.
append
(
.
subInfo
(
"临时档案号:"
,
person
.
file_num
,
"复制"
,
.
mid
,
nil
,
false
,
{
[
weak
self
]
in
guard
let
self
=
self
else
{
return
}
self
.
copyToPasteBoard
(
person
.
file_num
,
message
:
"已复制档案号"
)
}))
paymentMembers
.
append
(
.
subInfo
(
"可缴费时间段:"
,
"
\(
person
.
min_pay_time
)
-
\(
person
.
max_pay_time
)
"
,
nil
))
if
person
.
fee_money
.
count
>
0
{
paymentMembers
.
append
(
.
subInfo
(
"缴费金额:"
,
"
\(
person
.
fee_money
)
"
,
nil
))
}
else
{
paymentMembers
.
append
(
.
subInfo
(
"缴费金额:"
,
"
\(
person
.
fee_hkd
)
港币(≈
\(
person
.
fee_rmb
)
人民币)"
,
nil
))
}
}
case
.
pendingApproval
:
self
.
copyToPasteBoard
(
person
.
file_num
,
message
:
"已复制临时档案号"
)
paymentMembers
.
append
(
.
occupyingSpace
)
}))
paymentMembers
.
append
(
.
subHeader
(
person
.
name
,
.
pendingApproval
))
paymentMembers
.
append
(
.
subInfo
(
"申请人出生日期:"
,
"
\(
person
.
birthday
)
"
,
nil
))
paymentMembers
.
append
(
.
subRemark
(
"续签申请暂未正式获批,请耐心等待"
))
paymentMembers
.
append
(
.
subInfo
(
"缴费金额:"
,
"
\(
person
.
fee_money
)
"
,
nil
,
.
bottom
))
}
}
}
if
paymentMembers
.
count
>
0
{
if
paymentMembers
.
count
>
0
{
paymentMembers
.
append
(
.
occupyingSpace
)
paymentMembers
.
append
(
.
occupyingSpace
)
}
}
let
payMethodTips
:
ASAttributedString
=
.
init
(
string
:
"提示:"
,
.
foreground
(
UIColor
.
yhOrangeColor
))
+
.
init
(
string
:
"请先到下方“缴费成员”处"
)
+
.
init
(
string
:
"复制档案号"
,
.
foreground
(
UIColor
.
yhOrangeColor
))
+
.
init
(
string
:
"再缴费"
)
let
webPageUrl
=
paymentListModel
.
payment_url
let
webPageUrl
=
paymentListModel
.
payment_url
if
webPageUrl
.
count
>
0
,
URL
(
string
:
webPageUrl
)
!=
nil
{
if
webPageUrl
.
count
>
0
,
URL
(
string
:
webPageUrl
)
!=
nil
{
let
payMethodSection
:
[
YHVisaRenewalItemDetailType
]
=
[
.
sectionHeader
(
"港府官网缴费方式"
,
"缴费遇到问题?"
,
{
[
weak
self
]
in
let
payMethodSection
:
[
YHVisaRenewalInfoItemDetailType
]
=
[
.
sectionHeader
(
"港府官网缴费方式"
,
""
,
{
guard
let
self
=
self
else
{
}),
.
payMethodUrl
(
"方式一"
,
"点击下方链接,跳转浏览器,进入港府官网操作缴费"
,
webPageUrl
,
{
[
weak
self
]
in
return
}
printLog
(
"缴费遇到问题"
)
self
.
showTroubleshootingGuideVC
()
}),
.
tips
(
payMethodTips
),
.
payMethodUrl
(
"方式一"
,
"点击下方链接,跳转浏览器,进入港府官网操作缴费"
,
webPageUrl
,
{
[
weak
self
]
in
guard
let
self
=
self
else
{
guard
let
self
=
self
else
{
return
return
}
}
...
@@ -245,11 +145,7 @@ extension YHHKVisaRenewalApplicationVC {
...
@@ -245,11 +145,7 @@ extension YHHKVisaRenewalApplicationVC {
}),
.
payMethodQrcode
(
"方式二"
,
"用其他设备直接扫码,或长按保存图片,通过微信识别打开"
,
webPageUrl
)]
}),
.
payMethodQrcode
(
"方式二"
,
"用其他设备直接扫码,或长按保存图片,通过微信识别打开"
,
webPageUrl
)]
sections
.
append
(
payMethodSection
)
sections
.
append
(
payMethodSection
)
}
}
var
payMembersSection
:
[
YHVisaRenewalItemDetailType
]
=
[
.
sectionHeader
(
"缴费成员"
,
"电子签证范例"
,
{
[
weak
self
]
in
var
payMembersSection
:
[
YHVisaRenewalInfoItemDetailType
]
=
[
.
sectionHeader
(
"缴费成员"
,
""
,
{
guard
let
self
=
self
else
{
return
}
self
.
gotoPreview
(
paymentListModel
.
evisa_example_url
)
})]
})]
payMembersSection
.
append
(
contentsOf
:
paymentMembers
)
payMembersSection
.
append
(
contentsOf
:
paymentMembers
)
sections
.
append
(
payMembersSection
)
sections
.
append
(
payMembersSection
)
...
@@ -257,7 +153,7 @@ extension YHHKVisaRenewalApplicationVC {
...
@@ -257,7 +153,7 @@ extension YHHKVisaRenewalApplicationVC {
self
.
tableView
.
reloadData
()
self
.
tableView
.
reloadData
()
}
}
}
}
private
func
showAlertView
(
confirmBlock
:
(()
->
Void
)?)
{
private
func
showAlertView
(
confirmBlock
:
(()
->
Void
)?)
{
let
alert
=
YHVisaRenewalPayConfirmingPresenceAlertView
.
alertView
()
let
alert
=
YHVisaRenewalPayConfirmingPresenceAlertView
.
alertView
()
alert
.
confirmBlock
=
{
alert
.
confirmBlock
=
{
...
@@ -265,18 +161,7 @@ extension YHHKVisaRenewalApplicationVC {
...
@@ -265,18 +161,7 @@ extension YHHKVisaRenewalApplicationVC {
}
}
alert
.
show
()
alert
.
show
()
}
}
private
func
showGuideVC
()
{
let
vc
=
YHVisaRenewalGuideVC
()
let
pc
=
YHBottomPresentationController
(
presentedViewController
:
vc
,
presenting
:
self
)
pc
.
customRadius
=
16.0
vc
.
transitioningDelegate
=
pc
vc
.
sureButtonEvent
=
{
[
weak
vc
]
in
vc
?
.
dismiss
(
animated
:
true
)
}
present
(
vc
,
animated
:
true
,
completion
:
nil
)
}
private
func
gotoWebVC
(
_
urlString
:
String
)
{
private
func
gotoWebVC
(
_
urlString
:
String
)
{
guard
let
url
=
URL
(
string
:
urlString
)
else
{
guard
let
url
=
URL
(
string
:
urlString
)
else
{
printLog
(
"无法打开链接"
)
printLog
(
"无法打开链接"
)
...
@@ -290,7 +175,7 @@ extension YHHKVisaRenewalApplicationVC {
...
@@ -290,7 +175,7 @@ extension YHHKVisaRenewalApplicationVC {
YHHUD
.
flash
(
message
:
"无法打开链接"
)
YHHUD
.
flash
(
message
:
"无法打开链接"
)
}
}
}
}
private
func
gotoPreview
(
_
urlString
:
String
)
{
private
func
gotoPreview
(
_
urlString
:
String
)
{
YHHUD
.
show
(
.
progress
(
message
:
"加载中..."
))
YHHUD
.
show
(
.
progress
(
message
:
"加载中..."
))
viewModel
.
getRealUsefulUrl
(
urlString
)
{
[
weak
self
]
resultUrl
in
viewModel
.
getRealUsefulUrl
(
urlString
)
{
[
weak
self
]
resultUrl
in
...
@@ -302,24 +187,13 @@ extension YHHKVisaRenewalApplicationVC {
...
@@ -302,24 +187,13 @@ extension YHHKVisaRenewalApplicationVC {
self
.
present
(
safariViewController
,
animated
:
true
,
completion
:
nil
)
self
.
present
(
safariViewController
,
animated
:
true
,
completion
:
nil
)
}
}
}
}
private
func
showTroubleshootingGuideVC
()
{
let
vc
=
YHVisaRenewalTroubleshootingGuideVC
()
let
pc
=
YHBottomPresentationController
(
presentedViewController
:
vc
,
presenting
:
self
)
pc
.
customRadius
=
16.0
vc
.
transitioningDelegate
=
pc
vc
.
sureButtonEvent
=
{
[
weak
vc
]
in
vc
?
.
dismiss
(
animated
:
true
)
}
present
(
vc
,
animated
:
true
,
completion
:
nil
)
}
private
func
copyToPasteBoard
(
_
text
:
String
,
message
:
String
=
"复制成功"
)
{
private
func
copyToPasteBoard
(
_
text
:
String
,
message
:
String
=
"复制成功"
)
{
let
pasteBoard
=
UIPasteboard
.
general
let
pasteBoard
=
UIPasteboard
.
general
pasteBoard
.
string
=
text
pasteBoard
.
string
=
text
YHHUD
.
flash
(
message
:
message
)
YHHUD
.
flash
(
message
:
message
)
}
}
private
func
saveImage
(
_
image
:
UIImage
)
{
private
func
saveImage
(
_
image
:
UIImage
)
{
// 确保应用有权访问相册
// 确保应用有权访问相册
PHPhotoLibrary
.
requestAuthorization
{
status
in
PHPhotoLibrary
.
requestAuthorization
{
status
in
...
@@ -335,7 +209,7 @@ extension YHHKVisaRenewalApplicationVC {
...
@@ -335,7 +209,7 @@ extension YHHKVisaRenewalApplicationVC {
}
}
}
}
}
}
@objc
func
image
(
_
image
:
UIImage
,
didFinishSavingWithError
error
:
Error
?,
contextInfo
:
UnsafeMutableRawPointer
?)
{
@objc
func
image
(
_
image
:
UIImage
,
didFinishSavingWithError
error
:
Error
?,
contextInfo
:
UnsafeMutableRawPointer
?)
{
// 保存完成后的处理逻辑
// 保存完成后的处理逻辑
if
let
error
=
error
{
if
let
error
=
error
{
...
@@ -343,18 +217,17 @@ extension YHHKVisaRenewalApplicationVC {
...
@@ -343,18 +217,17 @@ extension YHHKVisaRenewalApplicationVC {
YHHUD
.
flash
(
message
:
"保存失败"
)
YHHUD
.
flash
(
message
:
"保存失败"
)
}
else
{
}
else
{
printLog
(
"保存照片成功"
)
printLog
(
"保存照片成功"
)
YHHUD
.
flash
(
message
:
"保存成功"
)
YHHUD
.
flash
(
message
:
"保存成功"
)
}
}
}
}
}
}
extension
YHHKVisaRenewalApplicationVC
:
UITableViewDelegate
,
UITableViewDataSource
{
extension
YHHKVisaRenewalApplicationVC
:
UITableViewDelegate
,
UITableViewDataSource
{
func
numberOfSections
(
in
tableView
:
UITableView
)
->
Int
{
func
numberOfSections
(
in
tableView
:
UITableView
)
->
Int
{
return
datas
.
count
return
datas
.
count
}
}
func
tableView
(
_
tableView
:
UITableView
,
numberOfRowsInSection
section
:
Int
)
->
Int
{
func
tableView
(
_
tableView
:
UITableView
,
numberOfRowsInSection
section
:
Int
)
->
Int
{
guard
datas
.
count
>
section
else
{
guard
datas
.
count
>
section
else
{
return
0
return
0
...
@@ -362,7 +235,7 @@ extension YHHKVisaRenewalApplicationVC: UITableViewDelegate, UITableViewDataSour
...
@@ -362,7 +235,7 @@ extension YHHKVisaRenewalApplicationVC: UITableViewDelegate, UITableViewDataSour
let
sectionArr
=
datas
[
section
]
let
sectionArr
=
datas
[
section
]
return
sectionArr
.
count
return
sectionArr
.
count
}
}
func
tableView
(
_
tableView
:
UITableView
,
cellForRowAt
indexPath
:
IndexPath
)
->
UITableViewCell
{
func
tableView
(
_
tableView
:
UITableView
,
cellForRowAt
indexPath
:
IndexPath
)
->
UITableViewCell
{
guard
datas
.
count
>
indexPath
.
section
else
{
guard
datas
.
count
>
indexPath
.
section
else
{
return
UITableViewCell
()
return
UITableViewCell
()
...
@@ -372,7 +245,7 @@ extension YHHKVisaRenewalApplicationVC: UITableViewDelegate, UITableViewDataSour
...
@@ -372,7 +245,7 @@ extension YHHKVisaRenewalApplicationVC: UITableViewDelegate, UITableViewDataSour
return
UITableViewCell
()
return
UITableViewCell
()
}
}
let
row
=
sectionArr
[
indexPath
.
row
]
let
row
=
sectionArr
[
indexPath
.
row
]
switch
row
{
switch
row
{
case
let
.
sectionHeader
(
title
,
actionTitle
,
action
):
case
let
.
sectionHeader
(
title
,
actionTitle
,
action
):
if
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHVisaRenewalSectionHeaderCell
.
cellReuseIdentifier
)
as?
YHVisaRenewalSectionHeaderCell
{
if
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHVisaRenewalSectionHeaderCell
.
cellReuseIdentifier
)
as?
YHVisaRenewalSectionHeaderCell
{
...
@@ -382,19 +255,6 @@ extension YHHKVisaRenewalApplicationVC: UITableViewDelegate, UITableViewDataSour
...
@@ -382,19 +255,6 @@ extension YHHKVisaRenewalApplicationVC: UITableViewDelegate, UITableViewDataSour
}
}
return
cell
return
cell
}
}
case
let
.
tips
(
detail
):
if
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHVisaRenewalTipsCell
.
cellReuseIdentifier
)
as?
YHVisaRenewalTipsCell
{
cell
.
setupCellInfo
(
detail
:
detail
)
return
cell
}
case
let
.
residenceAction
(
title
,
status
,
cellType
,
action
):
if
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHVisaRenewalResidenceActionCell
.
cellReuseIdentifier
)
as?
YHVisaRenewalResidenceActionCell
{
cell
.
setupCellInfo
(
title
:
title
,
presenceStatus
:
status
,
cellType
:
cellType
)
cell
.
rightButtonEvent
=
{
action
?()
}
return
cell
}
case
let
.
payMethodUrl
(
title
,
detail
,
url
,
action
):
case
let
.
payMethodUrl
(
title
,
detail
,
url
,
action
):
if
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHVisaRenewalPayMethodUrlCell
.
cellReuseIdentifier
)
as?
YHVisaRenewalPayMethodUrlCell
{
if
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHVisaRenewalPayMethodUrlCell
.
cellReuseIdentifier
)
as?
YHVisaRenewalPayMethodUrlCell
{
cell
.
setupCellInfo
(
title
:
title
,
tips
:
detail
,
url
:
url
)
cell
.
setupCellInfo
(
title
:
title
,
tips
:
detail
,
url
:
url
)
...
@@ -411,9 +271,9 @@ extension YHHKVisaRenewalApplicationVC: UITableViewDelegate, UITableViewDataSour
...
@@ -411,9 +271,9 @@ extension YHHKVisaRenewalApplicationVC: UITableViewDelegate, UITableViewDataSour
}
}
return
cell
return
cell
}
}
case
let
.
subHeader
(
title
,
status
):
case
let
.
subHeader
(
title
):
if
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHVisaRenewalPay
StatusCell
.
cellReuseIdentifier
)
as?
YHVisaRenewalPayStatus
Cell
{
if
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHVisaRenewalPay
MemberCell
.
cellReuseIdentifier
)
as?
YHVisaRenewalPayMember
Cell
{
cell
.
setupCellInfo
(
title
:
title
,
status
:
status
)
cell
.
setupCellInfo
(
title
:
title
)
return
cell
return
cell
}
}
case
let
.
subInfo
(
title
,
detail
,
actionTitle
,
cellType
,
defaultMargin
,
showBottomLine
,
action
):
case
let
.
subInfo
(
title
,
detail
,
actionTitle
,
cellType
,
defaultMargin
,
showBottomLine
,
action
):
...
@@ -432,11 +292,6 @@ extension YHHKVisaRenewalApplicationVC: UITableViewDelegate, UITableViewDataSour
...
@@ -432,11 +292,6 @@ extension YHHKVisaRenewalApplicationVC: UITableViewDelegate, UITableViewDataSour
}
}
return
cell
return
cell
}
}
case
let
.
subRemark
(
detail
):
if
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHVisaRenewalPayTipsCell
.
cellReuseIdentifier
)
as?
YHVisaRenewalPayTipsCell
{
cell
.
setupCellInfo
(
detail
:
detail
)
return
cell
}
case
.
occupyingSpace
:
case
.
occupyingSpace
:
if
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHVisaRenewalPayOccupyingSpaceCell
.
cellReuseIdentifier
)
as?
YHVisaRenewalPayOccupyingSpaceCell
{
if
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHVisaRenewalPayOccupyingSpaceCell
.
cellReuseIdentifier
)
as?
YHVisaRenewalPayOccupyingSpaceCell
{
let
isBottom
=
indexPath
.
row
==
sectionArr
.
count
-
1
let
isBottom
=
indexPath
.
row
==
sectionArr
.
count
-
1
...
@@ -445,32 +300,30 @@ extension YHHKVisaRenewalApplicationVC: UITableViewDelegate, UITableViewDataSour
...
@@ -445,32 +300,30 @@ extension YHHKVisaRenewalApplicationVC: UITableViewDelegate, UITableViewDataSour
}
}
}
}
return
UITableViewCell
()
return
UITableViewCell
()
}
}
func
tableView
(
_
tableView
:
UITableView
,
heightForRowAt
indexPath
:
IndexPath
)
->
CGFloat
{
func
tableView
(
_
tableView
:
UITableView
,
heightForRowAt
indexPath
:
IndexPath
)
->
CGFloat
{
return
UITableView
.
automaticDimension
return
UITableView
.
automaticDimension
}
}
func
tableView
(
_
tableView
:
UITableView
,
didSelectRowAt
indexPath
:
IndexPath
)
{
func
tableView
(
_
tableView
:
UITableView
,
didSelectRowAt
indexPath
:
IndexPath
)
{
}
}
private
func
tableView
(
_
tableView
:
UITableView
,
viewForHeaderInSection
section
:
Int
)
->
CGFloat
{
private
func
tableView
(
_
tableView
:
UITableView
,
viewForHeaderInSection
section
:
Int
)
->
CGFloat
{
return
16.0
return
16.0
}
}
private
func
tableView
(
_
tableView
:
UITableView
,
viewForFooterInSection
section
:
Int
)
->
CGFloat
{
private
func
tableView
(
_
tableView
:
UITableView
,
viewForFooterInSection
section
:
Int
)
->
CGFloat
{
return
0.01
return
0.01
}
}
func
tableView
(
_
tableView
:
UITableView
,
viewForHeaderInSection
section
:
Int
)
->
UIView
?
{
func
tableView
(
_
tableView
:
UITableView
,
viewForHeaderInSection
section
:
Int
)
->
UIView
?
{
let
view
=
UIView
()
let
view
=
UIView
()
return
view
return
view
}
}
func
tableView
(
_
tableView
:
UITableView
,
viewForFooterInSection
section
:
Int
)
->
UIView
?
{
func
tableView
(
_
tableView
:
UITableView
,
viewForFooterInSection
section
:
Int
)
->
UIView
?
{
let
view
=
UIView
()
let
view
=
UIView
()
return
view
return
view
}
}
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/Resign(续签)/HongKongVisaRenewalPayment(续签在港缴费)/M/YHHKVisaRenewalPaymentInfoList.swift
0 → 100644
View file @
cfec4509
//
// YHHKVisaRenewalPaymentInfoList.swift
// galaxy
//
// Created by alexzzw on 2025/3/10.
// Copyright © 2025 https://www.galaxy-immi.com. All rights reserved.
//
import
Foundation
import
SmartCodable
class
YHHKVisaRenewalPaymentInfoList
:
SmartCodable
{
var
payment_url
:
String
=
""
var
list
:
[
YHHKVisaRenewalPaymentInfoItem
]
=
[]
required
init
()
{
}
}
class
YHHKVisaRenewalPaymentInfoItem
:
SmartCodable
{
// 用户姓名
var
name
:
String
=
""
// 档案号
var
file_num
:
String
=
""
// 出生日期
var
birthday
:
String
=
""
// 缴费金额,2025-2-26之后的用区间
var
fee_money
:
String
=
""
required
init
()
{
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/Resign(续签)/HongKongVisaRenewalPayment(续签在港缴费)/M/YHVisaRenewalItemDetailType.swift
View file @
cfec4509
...
@@ -21,3 +21,13 @@ enum YHVisaRenewalItemDetailType {
...
@@ -21,3 +21,13 @@ enum YHVisaRenewalItemDetailType {
case
subRemark
(
_
remark
:
String
)
case
subRemark
(
_
remark
:
String
)
case
occupyingSpace
case
occupyingSpace
}
}
enum
YHVisaRenewalInfoItemDetailType
{
case
sectionHeader
(
_
title
:
String
,
_
actionTitle
:
String
?
=
nil
,
_
action
:
(()
->
Void
)?
=
nil
)
case
payMethodUrl
(
_
title
:
String
,
_
tips
:
String
,
_
url
:
String
,
_
action
:
(()
->
Void
)?
=
nil
)
case
payMethodQrcode
(
_
title
:
String
,
_
tips
:
String
,
_
qrcodeUrl
:
String
)
case
subHeader
(
_
title
:
String
)
case
subInfo
(
_
title
:
String
,
_
detail
:
String
,
_
actionTitle
:
String
?
=
nil
,
_
cellType
:
YHResignRoundCellType
=
.
mid
,
_
defaultMargin
:
CGFloat
?
=
nil
,
_
showBottomLine
:
Bool
=
false
,
_
action
:
(()
->
Void
)?
=
nil
)
case
subContent
(
_
title
:
String
,
_
detail
:
String
,
_
actionTitle
:
String
?
=
nil
,
_
cellType
:
YHResignRoundCellType
=
.
mid
,
_
action
:
(()
->
Void
)?
=
nil
)
case
occupyingSpace
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/Resign(续签)/HongKongVisaRenewalPayment(续签在港缴费)/V/YHVisaRenewalPayMemberCell.swift
0 → 100644
View file @
cfec4509
//
// YHVisaRenewalPayMemberCell.swift
// galaxy
//
// Created by alexzzw on 2025/3/10.
// Copyright © 2025 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHVisaRenewalPayMemberCell
:
YHResignDocumentCell
{
static
let
cellReuseIdentifier
=
"YHVisaRenewalPayMemberCell"
private
lazy
var
iconView
:
UIView
=
{
let
view
=
UIView
()
view
.
backgroundColor
=
.
brandMainColor
return
view
}()
private
lazy
var
infoTitleLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
font
=
.
PFSC_M
(
ofSize
:
15
)
label
.
textColor
=
.
mainTextColor
return
label
}()
override
init
(
style
:
UITableViewCell
.
CellStyle
,
reuseIdentifier
:
String
?)
{
super
.
init
(
style
:
style
,
reuseIdentifier
:
reuseIdentifier
)
setupUI
()
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
func
setupCellInfo
(
title
:
String
)
{
infoTitleLabel
.
text
=
title
}
}
extension
YHVisaRenewalPayMemberCell
{
private
func
setupUI
()
{
updateCellCorner
(
.
mid
)
subContainerView
.
addSubview
(
iconView
)
subContainerView
.
addSubview
(
infoTitleLabel
)
iconView
.
setContentCompressionResistancePriority
(
.
required
,
for
:
.
horizontal
)
infoTitleLabel
.
setContentCompressionResistancePriority
(
.
defaultLow
,
for
:
.
horizontal
)
iconView
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
.
offset
(
18
)
make
.
width
.
equalTo
(
4
)
make
.
height
.
equalTo
(
15
)
make
.
centerY
.
equalTo
(
infoTitleLabel
)
}
infoTitleLabel
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalTo
(
iconView
.
snp
.
right
)
.
offset
(
12
)
make
.
top
.
equalToSuperview
()
.
offset
(
20
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
16
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
18
)
}
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/Resign(续签)/HongKongVisaRenewalPayment(续签在港缴费)/VM/YHHKVisaRenewalPaymentViewModel.swift
View file @
cfec4509
...
@@ -55,4 +55,30 @@ class YHHKVisaRenewalPaymentViewModel: YHBaseViewModel {
...
@@ -55,4 +55,30 @@ class YHHKVisaRenewalPaymentViewModel: YHBaseViewModel {
callBackBlock
(
false
,
err
)
callBackBlock
(
false
,
err
)
}
}
}
}
func
getPaymentInfo
(
id
:
Int
,
isEdit
:
Int
,
callBackBlock
:
@escaping
(
_
paymentListModel
:
YHHKVisaRenewalPaymentInfoList
?,
_
error
:
YHErrorModel
?)
->
()
)
{
let
params
:
[
String
:
Any
]
=
[
"id"
:
id
,
"is_edit"
:
isEdit
]
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
ResignVisa
.
paymentInfo
let
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
,
params
:
params
)
{
json
,
code
in
//1. json字符串 转 对象
printLog
(
"model 是 ==>
\(
json
)
"
)
if
json
.
code
==
200
{
guard
let
dic
=
json
.
data
?
.
peel
as?
[
String
:
Any
],
let
resultModel
=
YHHKVisaRenewalPaymentInfoList
.
deserialize
(
from
:
dic
)
else
{
let
err
=
YHErrorModel
(
errorCode
:
YHErrorCode
.
dictParseError
.
rawValue
,
errorMsg
:
YHErrorCode
.
dictParseError
.
description
())
callBackBlock
(
nil
,
err
)
return
}
callBackBlock
(
resultModel
,
nil
)
}
else
{
let
err
=
YHErrorModel
(
errorCode
:
Int32
(
json
.
code
),
errorMsg
:
json
.
msg
.
isEmpty
?
""
:
json
.
msg
)
callBackBlock
(
nil
,
err
)
}
}
failBlock
:
{
err
in
callBackBlock
(
nil
,
err
)
}
}
}
}
galaxy/galaxy/Classes/Tools/NetWork/YHAllApiName.swift
View file @
cfec4509
...
@@ -670,6 +670,8 @@ class YHAllApiName {
...
@@ -670,6 +670,8 @@ class YHAllApiName {
static
let
paymentList
=
"super-app/renewal-visa/payment-list"
static
let
paymentList
=
"super-app/renewal-visa/payment-list"
// 确认在港
// 确认在港
static
let
confirmInHK
=
"super-app/renewal-visa/confirm-in-hk"
static
let
confirmInHK
=
"super-app/renewal-visa/confirm-in-hk"
// 续签缴费信息
static
let
paymentInfo
=
"super-app/order/customer/payment"
}
}
//续签旅行证件
//续签旅行证件
...
...
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