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
b3e20e2e
Commit
b3e20e2e
authored
Oct 09, 2024
by
Steven杜宇
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'develop' of
http://gitlab.galaxy-immi.com/mobile-group/galaxy-iOS
into develop
parents
87527580
55a3adf9
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
840 additions
and
9 deletions
+840
-9
project.pbxproj
galaxy/galaxy.xcodeproj/project.pbxproj
+56
-0
YHInvatationShareViewController.swift
...onWithGifts(邀请有礼)/C/YHInvatationShareViewController.swift
+1
-1
YHConsultantQRCodeView.swift
...y/Classes/Modules/Home(首页)/V/YHConsultantQRCodeView.swift
+1
-1
YHFileListViewController.swift
...ice(服务中心)/FileList(文件清单)/C/YHFileListViewController.swift
+1
-1
YHMyFileListViewController.swift
...e(服务中心)/FileList(文件清单)/C/YHMyFileListViewController.swift
+1
-1
YHHKRecordsSummaryVC.swift
...ngImmigrationRecords(在港记录管理)/C/YHHKRecordsSummaryVC.swift
+2
-2
YHHKVisaRenewalPaymentVC.swift
...saRenewalPayment(续签在港缴费)/C/YHHKVisaRenewalPaymentVC.swift
+113
-0
YHVisaRenewalGuideVC.swift
...ngVisaRenewalPayment(续签在港缴费)/C/YHVisaRenewalGuideVC.swift
+109
-0
YHBottomPresentationController.swift
...walPayment(续签在港缴费)/V/YHBottomPresentationController.swift
+241
-0
YHDashLineView.swift
...HongKongVisaRenewalPayment(续签在港缴费)/V/YHDashLineView.swift
+45
-0
YHHKVisaRenewalPaymentStepView.swift
...walPayment(续签在港缴费)/V/YHHKVisaRenewalPaymentStepView.swift
+168
-0
YHVisaRenewalGuideHeaderCell.swift
...newalPayment(续签在港缴费)/V/YHVisaRenewalGuideHeaderCell.swift
+99
-0
YHResignGuidelinesExampleShareViewController.swift
...份指引)/C/YHResignGuidelinesExampleShareViewController.swift
+1
-1
YHH5WebViewVC.swift
.../Classes/Modules/InteractionH5(与H5交互)/YHH5WebViewVC.swift
+1
-1
YHLongtapPictureSheetView.swift
...dules/PictureReview(图片预览)/YHLongtapPictureSheetView.swift
+1
-1
No files found.
galaxy/galaxy.xcodeproj/project.pbxproj
View file @
b3e20e2e
...
@@ -217,6 +217,12 @@
...
@@ -217,6 +217,12 @@
044EE2532C9565FF00A2FE3A
/* YHResignGuidelinesExampleShareViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044EE2522C9565FF00A2FE3A
/* YHResignGuidelinesExampleShareViewController.swift */
;
};
044EE2532C9565FF00A2FE3A
/* YHResignGuidelinesExampleShareViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044EE2522C9565FF00A2FE3A
/* YHResignGuidelinesExampleShareViewController.swift */
;
};
044EE2562C9D0E4500A2FE3A
/* YHResignGuidelinesModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044EE2552C9D0E4500A2FE3A
/* YHResignGuidelinesModel.swift */
;
};
044EE2562C9D0E4500A2FE3A
/* YHResignGuidelinesModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044EE2552C9D0E4500A2FE3A
/* YHResignGuidelinesModel.swift */
;
};
044EE2592C9D0F2800A2FE3A
/* YHResignGuidelinesViewModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044EE2582C9D0F2800A2FE3A
/* YHResignGuidelinesViewModel.swift */
;
};
044EE2592C9D0F2800A2FE3A
/* YHResignGuidelinesViewModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044EE2582C9D0F2800A2FE3A
/* YHResignGuidelinesViewModel.swift */
;
};
044F392C2CB54C5E007CA277
/* YHHKVisaRenewalPaymentVC.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044F392B2CB54C5E007CA277
/* YHHKVisaRenewalPaymentVC.swift */
;
};
044F392E2CB55050007CA277
/* YHHKVisaRenewalPaymentStepView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044F392D2CB55050007CA277
/* YHHKVisaRenewalPaymentStepView.swift */
;
};
044F39302CB55D5E007CA277
/* YHDashLineView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044F392F2CB55D5E007CA277
/* YHDashLineView.swift */
;
};
044F39322CB64CC0007CA277
/* YHBottomPresentationController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044F39312CB64CC0007CA277
/* YHBottomPresentationController.swift */
;
};
044F39342CB6507D007CA277
/* YHVisaRenewalGuideVC.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044F39332CB6507D007CA277
/* YHVisaRenewalGuideVC.swift */
;
};
044F39362CB6574D007CA277
/* YHVisaRenewalGuideHeaderCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044F39352CB6574D007CA277
/* YHVisaRenewalGuideHeaderCell.swift */
;
};
04506F552C6F57E600738EA1
/* YHFamilyMemberInfoCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04506F542C6F57E600738EA1
/* YHFamilyMemberInfoCell.swift */
;
};
04506F552C6F57E600738EA1
/* YHFamilyMemberInfoCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04506F542C6F57E600738EA1
/* YHFamilyMemberInfoCell.swift */
;
};
045A08C02C37ABF500BCBABA
/* YHSegmentView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045A08BF2C37ABF500BCBABA
/* YHSegmentView.swift */
;
};
045A08C02C37ABF500BCBABA
/* YHSegmentView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045A08BF2C37ABF500BCBABA
/* YHSegmentView.swift */
;
};
045A08C22C37EB8B00BCBABA
/* YHMyFileListNoneCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045A08C12C37EB8B00BCBABA
/* YHMyFileListNoneCell.swift */
;
};
045A08C22C37EB8B00BCBABA
/* YHMyFileListNoneCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045A08C12C37EB8B00BCBABA
/* YHMyFileListNoneCell.swift */
;
};
...
@@ -1070,6 +1076,12 @@
...
@@ -1070,6 +1076,12 @@
044EE2522C9565FF00A2FE3A
/* YHResignGuidelinesExampleShareViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHResignGuidelinesExampleShareViewController.swift
;
sourceTree
=
"<group>"
;
};
044EE2522C9565FF00A2FE3A
/* YHResignGuidelinesExampleShareViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHResignGuidelinesExampleShareViewController.swift
;
sourceTree
=
"<group>"
;
};
044EE2552C9D0E4500A2FE3A
/* YHResignGuidelinesModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHResignGuidelinesModel.swift
;
sourceTree
=
"<group>"
;
};
044EE2552C9D0E4500A2FE3A
/* YHResignGuidelinesModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHResignGuidelinesModel.swift
;
sourceTree
=
"<group>"
;
};
044EE2582C9D0F2800A2FE3A
/* YHResignGuidelinesViewModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHResignGuidelinesViewModel.swift
;
sourceTree
=
"<group>"
;
};
044EE2582C9D0F2800A2FE3A
/* YHResignGuidelinesViewModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHResignGuidelinesViewModel.swift
;
sourceTree
=
"<group>"
;
};
044F392B2CB54C5E007CA277
/* YHHKVisaRenewalPaymentVC.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHHKVisaRenewalPaymentVC.swift
;
sourceTree
=
"<group>"
;
};
044F392D2CB55050007CA277
/* YHHKVisaRenewalPaymentStepView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHHKVisaRenewalPaymentStepView.swift
;
sourceTree
=
"<group>"
;
};
044F392F2CB55D5E007CA277
/* YHDashLineView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHDashLineView.swift
;
sourceTree
=
"<group>"
;
};
044F39312CB64CC0007CA277
/* YHBottomPresentationController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHBottomPresentationController.swift
;
sourceTree
=
"<group>"
;
};
044F39332CB6507D007CA277
/* YHVisaRenewalGuideVC.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHVisaRenewalGuideVC.swift
;
sourceTree
=
"<group>"
;
};
044F39352CB6574D007CA277
/* YHVisaRenewalGuideHeaderCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHVisaRenewalGuideHeaderCell.swift
;
sourceTree
=
"<group>"
;
};
04506F542C6F57E600738EA1
/* YHFamilyMemberInfoCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHFamilyMemberInfoCell.swift
;
sourceTree
=
"<group>"
;
};
04506F542C6F57E600738EA1
/* YHFamilyMemberInfoCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHFamilyMemberInfoCell.swift
;
sourceTree
=
"<group>"
;
};
045A08BF2C37ABF500BCBABA
/* YHSegmentView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHSegmentView.swift
;
sourceTree
=
"<group>"
;
};
045A08BF2C37ABF500BCBABA
/* YHSegmentView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHSegmentView.swift
;
sourceTree
=
"<group>"
;
};
045A08C12C37EB8B00BCBABA
/* YHMyFileListNoneCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMyFileListNoneCell.swift
;
sourceTree
=
"<group>"
;
};
045A08C12C37EB8B00BCBABA
/* YHMyFileListNoneCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMyFileListNoneCell.swift
;
sourceTree
=
"<group>"
;
};
...
@@ -2147,6 +2159,7 @@
...
@@ -2147,6 +2159,7 @@
isa
=
PBXGroup
;
isa
=
PBXGroup
;
children
=
(
children
=
(
04912F562CB6675D00CC3105
/* ResignInfoConfirm(续签信息确认) */
,
04912F562CB6675D00CC3105
/* ResignInfoConfirm(续签信息确认) */
,
044F39272CB54BB3007CA277
/* HongKongVisaRenewalPayment(续签在港缴费) */
,
04F243322C957ED600DF2C74
/* HongKongImmigrationRecords(在港记录管理) */
,
04F243322C957ED600DF2C74
/* HongKongImmigrationRecords(在港记录管理) */
,
044EE24D2C955C4300A2FE3A
/* ResignGuidelines(续期身份指引) */
,
044EE24D2C955C4300A2FE3A
/* ResignGuidelines(续期身份指引) */
,
044EE2302C9290D800A2FE3A
/* ResignCertificateManage(续期证件管理) */
,
044EE2302C9290D800A2FE3A
/* ResignCertificateManage(续期证件管理) */
,
...
@@ -2384,6 +2397,43 @@
...
@@ -2384,6 +2397,43 @@
path
=
VM
;
path
=
VM
;
sourceTree
=
"<group>"
;
sourceTree
=
"<group>"
;
};
};
044F39272CB54BB3007CA277
/* HongKongVisaRenewalPayment(续签在港缴费) */
=
{
isa
=
PBXGroup
;
children
=
(
044F392A2CB54C15007CA277
/* V */
,
044F39292CB54C07007CA277
/* M */
,
044F39282CB54C00007CA277
/* C */
,
);
path
=
"HongKongVisaRenewalPayment(续签在港缴费)"
;
sourceTree
=
"<group>"
;
};
044F39282CB54C00007CA277
/* C */
=
{
isa
=
PBXGroup
;
children
=
(
044F392B2CB54C5E007CA277
/* YHHKVisaRenewalPaymentVC.swift */
,
044F39332CB6507D007CA277
/* YHVisaRenewalGuideVC.swift */
,
);
path
=
C
;
sourceTree
=
"<group>"
;
};
044F39292CB54C07007CA277
/* M */
=
{
isa
=
PBXGroup
;
children
=
(
);
path
=
M
;
sourceTree
=
"<group>"
;
};
044F392A2CB54C15007CA277
/* V */
=
{
isa
=
PBXGroup
;
children
=
(
044F392D2CB55050007CA277
/* YHHKVisaRenewalPaymentStepView.swift */
,
044F39312CB64CC0007CA277
/* YHBottomPresentationController.swift */
,
044F392F2CB55D5E007CA277
/* YHDashLineView.swift */
,
044F39352CB6574D007CA277
/* YHVisaRenewalGuideHeaderCell.swift */
,
);
path
=
V
;
sourceTree
=
"<group>"
;
};
045EED972B9F171A0022A143
/* ServiceProcess(我的信息流程) */
=
{
045EED972B9F171A0022A143
/* ServiceProcess(我的信息流程) */
=
{
isa
=
PBXGroup
;
isa
=
PBXGroup
;
children
=
(
children
=
(
...
@@ -4912,6 +4962,7 @@
...
@@ -4912,6 +4962,7 @@
04F243682C9D670E00DF2C74
/* YHResignDocumentListModel.swift in Sources */
,
04F243682C9D670E00DF2C74
/* YHResignDocumentListModel.swift in Sources */
,
04FD85702C21646200BEF9C5
/* YHMyInterestTopicCell.swift in Sources */
,
04FD85702C21646200BEF9C5
/* YHMyInterestTopicCell.swift in Sources */
,
04F243742CA07C6C00DF2C74
/* YHCollectionViewLeftAlignedFlowLayout.swift in Sources */
,
04F243742CA07C6C00DF2C74
/* YHCollectionViewLeftAlignedFlowLayout.swift in Sources */
,
044F392C2CB54C5E007CA277
/* YHHKVisaRenewalPaymentVC.swift in Sources */
,
04F243592C9C43A100DF2C74
/* YHHKRecordsEditButtonCell.swift in Sources */
,
04F243592C9C43A100DF2C74
/* YHHKRecordsEditButtonCell.swift in Sources */
,
A5CA3F542C744CAB00EB22F5
/* YHUploadCertificateDetailCell.swift in Sources */
,
A5CA3F542C744CAB00EB22F5
/* YHUploadCertificateDetailCell.swift in Sources */
,
04A7BD172BA43A0F00BD35A2
/* YHMyDocumentsDetailViewModel.swift in Sources */
,
04A7BD172BA43A0F00BD35A2
/* YHMyDocumentsDetailViewModel.swift in Sources */
,
...
@@ -5135,6 +5186,7 @@
...
@@ -5135,6 +5186,7 @@
045EEEAE2B9F171A0022A143
/* YHWorkHighlightsTableViewCell.swift in Sources */
,
045EEEAE2B9F171A0022A143
/* YHWorkHighlightsTableViewCell.swift in Sources */
,
A567E59A2BD7643D00D5D5A0
/* YHHomeKingKongBlockModel.swift in Sources */
,
A567E59A2BD7643D00D5D5A0
/* YHHomeKingKongBlockModel.swift in Sources */
,
045EEF062B9F171A0022A143
/* YHFormItemQuestionsCell.swift in Sources */
,
045EEF062B9F171A0022A143
/* YHFormItemQuestionsCell.swift in Sources */
,
044F392E2CB55050007CA277
/* YHHKVisaRenewalPaymentStepView.swift in Sources */
,
0419A09A2C48F87B00A5FCFA
/* YHInvitationWithGiftsViewController.swift in Sources */
,
0419A09A2C48F87B00A5FCFA
/* YHInvitationWithGiftsViewController.swift in Sources */
,
04F5F86E2C1AC351004A463C
/* YHHKEventCenterViewController.swift in Sources */
,
04F5F86E2C1AC351004A463C
/* YHHKEventCenterViewController.swift in Sources */
,
A567E5922BD7643D00D5D5A0
/* YHHomeWebViewModel.swift in Sources */
,
A567E5922BD7643D00D5D5A0
/* YHHomeWebViewModel.swift in Sources */
,
...
@@ -5358,6 +5410,7 @@
...
@@ -5358,6 +5410,7 @@
A5CA3F502C7447FB00EB22F5
/* YHUploadCertificateVC.swift in Sources */
,
A5CA3F502C7447FB00EB22F5
/* YHUploadCertificateVC.swift in Sources */
,
04A7BD192BA441D400BD35A2
/* YHMyDocumentsUrlModel.swift in Sources */
,
04A7BD192BA441D400BD35A2
/* YHMyDocumentsUrlModel.swift in Sources */
,
04174D792BCD5B74000BA46D
/* YHMessageSessionCell.swift in Sources */
,
04174D792BCD5B74000BA46D
/* YHMessageSessionCell.swift in Sources */
,
044F39362CB6574D007CA277
/* YHVisaRenewalGuideHeaderCell.swift in Sources */
,
04C85DE92C36BF49008B20D6
/* YHMyFileListFooterView.swift in Sources */
,
04C85DE92C36BF49008B20D6
/* YHMyFileListFooterView.swift in Sources */
,
045EEEA62B9F171A0022A143
/* YHCompanySelectViewController.swift in Sources */
,
045EEEA62B9F171A0022A143
/* YHCompanySelectViewController.swift in Sources */
,
0425E6462BA9678E00A5E763
/* YHSchemeHeadTotalScoreView.swift in Sources */
,
0425E6462BA9678E00A5E763
/* YHSchemeHeadTotalScoreView.swift in Sources */
,
...
@@ -5398,6 +5451,7 @@
...
@@ -5398,6 +5451,7 @@
0418921F2C91BAAC00B9FB94
/* YHBaseDynamicCornerRadiusView.swift in Sources */
,
0418921F2C91BAAC00B9FB94
/* YHBaseDynamicCornerRadiusView.swift in Sources */
,
047AA3E02C4A63B2009C4554
/* YHLifeSectionView.swift in Sources */
,
047AA3E02C4A63B2009C4554
/* YHLifeSectionView.swift in Sources */
,
0430E67E2C75872E000511E2
/* YHAdopterOtherViewController.swift in Sources */
,
0430E67E2C75872E000511E2
/* YHAdopterOtherViewController.swift in Sources */
,
044F39302CB55D5E007CA277
/* YHDashLineView.swift in Sources */
,
04174D772BCD5B74000BA46D
/* YHMessageDetailListVC.swift in Sources */
,
04174D772BCD5B74000BA46D
/* YHMessageDetailListVC.swift in Sources */
,
044D0BFE2C21649A00C5CF5E
/* YHUserInformationModel.swift in Sources */
,
044D0BFE2C21649A00C5CF5E
/* YHUserInformationModel.swift in Sources */
,
0430E67A2C757F13000511E2
/* YHAdoptedChinaTravelViewController.swift in Sources */
,
0430E67A2C757F13000511E2
/* YHAdoptedChinaTravelViewController.swift in Sources */
,
...
@@ -5414,6 +5468,7 @@
...
@@ -5414,6 +5468,7 @@
045EEEF32B9F171A0022A143
/* YHFamilyMemberInfoListVC.swift in Sources */
,
045EEEF32B9F171A0022A143
/* YHFamilyMemberInfoListVC.swift in Sources */
,
04B4B8DC2C90696E00ED82BC
/* YHResignDocumentManagementVC.swift in Sources */
,
04B4B8DC2C90696E00ED82BC
/* YHResignDocumentManagementVC.swift in Sources */
,
F8BAADA52C4FCE9C0074D6C3
/* YHUatHelperViewModel.swift in Sources */
,
F8BAADA52C4FCE9C0074D6C3
/* YHUatHelperViewModel.swift in Sources */
,
044F39342CB6507D007CA277
/* YHVisaRenewalGuideVC.swift in Sources */
,
0445E6B42BEA15C4003C52F9
/* YHAppVersionManager.swift in Sources */
,
0445E6B42BEA15C4003C52F9
/* YHAppVersionManager.swift in Sources */
,
04CE1AD92C2AD91F001CB80A
/* YHActivityDetailBottomView.swift in Sources */
,
04CE1AD92C2AD91F001CB80A
/* YHActivityDetailBottomView.swift in Sources */
,
04EA230C2BB5199D009DA928
/* YHDocumentToActionTableViewCell.swift in Sources */
,
04EA230C2BB5199D009DA928
/* YHDocumentToActionTableViewCell.swift in Sources */
,
...
@@ -5481,6 +5536,7 @@
...
@@ -5481,6 +5536,7 @@
A580371E2BAD784B0031C312
/* YHMySchemeViewModel.swift in Sources */
,
A580371E2BAD784B0031C312
/* YHMySchemeViewModel.swift in Sources */
,
0425E6482BA96B4100A5E763
/* YHSchemeHeadScoreItemView.swift in Sources */
,
0425E6482BA96B4100A5E763
/* YHSchemeHeadScoreItemView.swift in Sources */
,
04A271252BAC33BB00652B1B
/* YHFilePreviewTool.swift in Sources */
,
04A271252BAC33BB00652B1B
/* YHFilePreviewTool.swift in Sources */
,
044F39322CB64CC0007CA277
/* YHBottomPresentationController.swift in Sources */
,
045EEEC32B9F171A0022A143
/* YHOtherResidenceFillView.swift in Sources */
,
045EEEC32B9F171A0022A143
/* YHOtherResidenceFillView.swift in Sources */
,
045EEE792B9F171A0022A143
/* YHPreviewViewModel.swift in Sources */
,
045EEE792B9F171A0022A143
/* YHPreviewViewModel.swift in Sources */
,
A54A07C92C7F478200F749AB
/* YHTravelHKDLGuideSheetView.swift in Sources */
,
A54A07C92C7F478200F749AB
/* YHTravelHKDLGuideSheetView.swift in Sources */
,
...
...
galaxy/galaxy/Classes/Modules/Home(首页)/InvitationWithGifts(邀请有礼)/C/YHInvatationShareViewController.swift
View file @
b3e20e2e
...
@@ -156,8 +156,8 @@ extension YHInvatationShareViewController {
...
@@ -156,8 +156,8 @@ extension YHInvatationShareViewController {
PHPhotoLibrary
.
requestAuthorization
{
status
in
PHPhotoLibrary
.
requestAuthorization
{
status
in
if
status
==
.
authorized
{
if
status
==
.
authorized
{
// 保存图片到相册
// 保存图片到相册
UIImageWriteToSavedPhotosAlbum
(
image
,
nil
,
nil
,
nil
)
DispatchQueue
.
main
.
async
{
DispatchQueue
.
main
.
async
{
UIImageWriteToSavedPhotosAlbum
(
image
,
nil
,
nil
,
nil
)
YHHUD
.
flash
(
message
:
"保存成功"
)
YHHUD
.
flash
(
message
:
"保存成功"
)
}
}
}
else
{
}
else
{
...
...
galaxy/galaxy/Classes/Modules/Home(首页)/V/YHConsultantQRCodeView.swift
View file @
b3e20e2e
...
@@ -191,7 +191,7 @@ class YHConsultantQRCodeView: UIView {
...
@@ -191,7 +191,7 @@ class YHConsultantQRCodeView: UIView {
PHPhotoLibrary
.
requestAuthorization
{
status
in
PHPhotoLibrary
.
requestAuthorization
{
status
in
if
status
==
.
authorized
{
if
status
==
.
authorized
{
// 保存图片到相册
// 保存图片到相册
DispatchQueue
.
main
.
sync
{
DispatchQueue
.
main
.
a
sync
{
UIImageWriteToSavedPhotosAlbum
(
image
,
self
,
#selector(
self.image(image:didFinishSavingWithError:contextInfo:)
)
,
nil
)
UIImageWriteToSavedPhotosAlbum
(
image
,
self
,
#selector(
self.image(image:didFinishSavingWithError:contextInfo:)
)
,
nil
)
}
}
}
else
{
}
else
{
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/FileList(文件清单)/C/YHFileListViewController.swift
View file @
b3e20e2e
...
@@ -233,7 +233,7 @@ extension YHFileListViewController {
...
@@ -233,7 +233,7 @@ extension YHFileListViewController {
PHPhotoLibrary
.
requestAuthorization
{
status
in
PHPhotoLibrary
.
requestAuthorization
{
status
in
if
status
==
.
authorized
{
if
status
==
.
authorized
{
// 保存图片到相册
// 保存图片到相册
DispatchQueue
.
main
.
sync
{
DispatchQueue
.
main
.
a
sync
{
UIImageWriteToSavedPhotosAlbum
(
image
,
self
,
#selector(
self.image(image:didFinishSavingWithError:contextInfo:)
)
,
nil
)
UIImageWriteToSavedPhotosAlbum
(
image
,
self
,
#selector(
self.image(image:didFinishSavingWithError:contextInfo:)
)
,
nil
)
}
}
}
else
{
}
else
{
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/FileList(文件清单)/C/YHMyFileListViewController.swift
View file @
b3e20e2e
...
@@ -489,7 +489,7 @@ extension YHMyFileListViewController {
...
@@ -489,7 +489,7 @@ extension YHMyFileListViewController {
PHPhotoLibrary
.
requestAuthorization
{
status
in
PHPhotoLibrary
.
requestAuthorization
{
status
in
if
status
==
.
authorized
{
if
status
==
.
authorized
{
// 保存图片到相册
// 保存图片到相册
DispatchQueue
.
main
.
sync
{
DispatchQueue
.
main
.
a
sync
{
UIImageWriteToSavedPhotosAlbum
(
image
,
self
,
#selector(
self.image(image:didFinishSavingWithError:contextInfo:)
)
,
nil
)
UIImageWriteToSavedPhotosAlbum
(
image
,
self
,
#selector(
self.image(image:didFinishSavingWithError:contextInfo:)
)
,
nil
)
}
}
}
else
{
}
else
{
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/Resign(续签)/HongKongImmigrationRecords(在港记录管理)/C/YHHKRecordsSummaryVC.swift
View file @
b3e20e2e
...
@@ -23,8 +23,8 @@ class YHHKRecordsSummaryVC: YHBaseViewController {
...
@@ -23,8 +23,8 @@ class YHHKRecordsSummaryVC: YHBaseViewController {
private
lazy
var
datas
:
[
YHHKRecordSectionType
]
=
[]
private
lazy
var
datas
:
[
YHHKRecordSectionType
]
=
[]
private
lazy
var
tableView
:
YHGesture
TableView
=
{
private
lazy
var
tableView
:
UI
TableView
=
{
let
view
=
YHGesture
TableView
(
frame
:
.
zero
,
style
:
.
plain
)
let
view
=
UI
TableView
(
frame
:
.
zero
,
style
:
.
plain
)
view
.
backgroundColor
=
.
clear
view
.
backgroundColor
=
.
clear
view
.
separatorStyle
=
.
none
view
.
separatorStyle
=
.
none
view
.
rowHeight
=
UITableView
.
automaticDimension
view
.
rowHeight
=
UITableView
.
automaticDimension
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/Resign(续签)/HongKongVisaRenewalPayment(续签在港缴费)/C/YHHKVisaRenewalPaymentVC.swift
0 → 100644
View file @
b3e20e2e
//
// YHHKVisaRenewalPaymentVC.swift
// galaxy
//
// Created by alexzzw on 2024/10/8.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHHKVisaRenewalPaymentVC
:
YHBaseViewController
{
private
lazy
var
stepView
:
YHHKVisaRenewalPaymentStepView
=
{
let
view
=
YHHKVisaRenewalPaymentStepView
.
init
(
frame
:
CGRect
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
74
))
return
view
}()
private
lazy
var
tableView
:
UITableView
=
{
let
view
=
UITableView
(
frame
:
.
zero
,
style
:
.
plain
)
view
.
backgroundColor
=
.
clear
view
.
separatorStyle
=
.
none
view
.
rowHeight
=
UITableView
.
automaticDimension
view
.
estimatedRowHeight
=
52.0
view
.
dataSource
=
self
view
.
delegate
=
self
view
.
showsVerticalScrollIndicator
=
false
//view.register(YHHKRecordsHeaderCell.self, forCellReuseIdentifier: YHHKRecordsHeaderCell.cellReuseIdentifier)
return
view
}()
private
let
orderId
:
Int
init
(
orderId
:
Int
)
{
self
.
orderId
=
orderId
super
.
init
(
nibName
:
nil
,
bundle
:
nil
)
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
override
func
viewDidLoad
()
{
super
.
viewDidLoad
()
setupUI
()
}
}
extension
YHHKVisaRenewalPaymentVC
{
private
func
setupUI
()
{
gk_navTitle
=
"签证缴费"
gk_navBarAlpha
=
1.0
gk_navBackgroundColor
=
.
white
view
.
backgroundColor
=
UIColor
.
contentBkgColor
view
.
addSubview
(
stepView
)
view
.
addSubview
(
tableView
)
stepView
.
snp
.
makeConstraints
{
make
in
make
.
left
.
right
.
equalToSuperview
()
make
.
top
.
equalTo
(
k_Height_NavigationtBarAndStatuBar
)
make
.
height
.
equalTo
(
74
)
}
tableView
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
.
offset
(
kMargin
)
.
priority
(
.
high
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
kMargin
)
.
priority
(
.
high
)
make
.
top
.
equalTo
(
stepView
.
snp
.
bottom
)
make
.
bottom
.
equalToSuperview
()
}
tableView
.
tableHeaderView
=
UIView
(
frame
:
CGRect
.
init
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
kMargin
))
tableView
.
tableFooterView
=
UIView
(
frame
:
CGRect
.
init
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
kMargin
))
}
}
extension
YHHKVisaRenewalPaymentVC
:
UITableViewDelegate
,
UITableViewDataSource
{
func
numberOfSections
(
in
tableView
:
UITableView
)
->
Int
{
return
0
}
func
tableView
(
_
tableView
:
UITableView
,
numberOfRowsInSection
section
:
Int
)
->
Int
{
return
1
}
func
tableView
(
_
tableView
:
UITableView
,
cellForRowAt
indexPath
:
IndexPath
)
->
UITableViewCell
{
return
UITableViewCell
()
}
func
tableView
(
_
tableView
:
UITableView
,
heightForRowAt
indexPath
:
IndexPath
)
->
CGFloat
{
return
UITableView
.
automaticDimension
}
func
tableView
(
_
tableView
:
UITableView
,
didSelectRowAt
indexPath
:
IndexPath
)
{
}
private
func
tableView
(
_
tableView
:
UITableView
,
viewForHeaderInSection
section
:
Int
)
->
CGFloat
{
return
16.0
}
private
func
tableView
(
_
tableView
:
UITableView
,
viewForFooterInSection
section
:
Int
)
->
CGFloat
{
return
0.01
}
func
tableView
(
_
tableView
:
UITableView
,
viewForHeaderInSection
section
:
Int
)
->
UIView
?
{
let
view
=
UIView
()
return
view
}
func
tableView
(
_
tableView
:
UITableView
,
viewForFooterInSection
section
:
Int
)
->
UIView
?
{
let
view
=
UIView
()
return
view
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/Resign(续签)/HongKongVisaRenewalPayment(续签在港缴费)/C/YHVisaRenewalGuideVC.swift
0 → 100644
View file @
b3e20e2e
//
// YHVisaRenewalGuideVC.swift
// galaxy
//
// Created by alexzzw on 2024/10/9.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHVisaRenewalGuideVC
:
YHBaseViewController
{
private
lazy
var
tableView
:
UITableView
=
{
let
view
=
UITableView
(
frame
:
.
zero
,
style
:
.
plain
)
view
.
backgroundColor
=
.
clear
view
.
separatorStyle
=
.
none
view
.
rowHeight
=
UITableView
.
automaticDimension
view
.
estimatedRowHeight
=
52.0
view
.
dataSource
=
self
view
.
delegate
=
self
view
.
showsVerticalScrollIndicator
=
false
view
.
register
(
YHHKRecordsHeaderCell
.
self
,
forCellReuseIdentifier
:
YHHKRecordsHeaderCell
.
cellReuseIdentifier
)
return
view
}()
private
lazy
var
sureButton
:
UIButton
=
{
let
button
=
UIButton
(
type
:
.
custom
)
button
.
titleLabel
?
.
font
=
UIFont
.
PFSC_M
(
ofSize
:
16
)
button
.
setTitle
(
"请上滑看完指引后操作(5s)"
,
for
:
.
disabled
)
button
.
setTitle
(
"我已知悉,确认"
,
for
:
.
normal
)
button
.
setTitle
(
"我已知悉,确认"
,
for
:
.
highlighted
)
button
.
setTitleColor
(
UIColor
(
hex
:
0xffffff
),
for
:
.
normal
)
button
.
setTitleColor
(
UIColor
(
hex
:
0xffffff
),
for
:
.
highlighted
)
button
.
addTarget
(
self
,
action
:
#selector(
clickSureButton
)
,
for
:
.
touchUpInside
)
button
.
layer
.
cornerRadius
=
kCornerRadius3
button
.
clipsToBounds
=
true
button
.
backgroundColor
=
.
brandMainColor
return
button
}()
private
lazy
var
bottomView
:
UIView
=
{
let
view
=
UIView
()
view
.
backgroundColor
=
.
white
return
view
}()
override
func
viewDidLoad
()
{
super
.
viewDidLoad
()
setupUI
()
}
}
extension
YHVisaRenewalGuideVC
{
@objc
private
func
clickSureButton
()
{
//
}
private
func
setupUI
()
{
gk_navBarAlpha
=
0
gk_navigationBar
.
isHidden
=
true
view
.
backgroundColor
=
UIColor
.
white
view
.
addSubview
(
tableView
)
view
.
addSubview
(
bottomView
)
bottomView
.
addSubview
(
sureButton
)
bottomView
.
snp
.
makeConstraints
{
make
in
make
.
left
.
right
.
equalToSuperview
()
make
.
right
.
equalToSuperview
()
make
.
bottom
.
equalTo
(
view
.
safeAreaLayoutGuide
.
snp
.
bottom
)
make
.
height
.
equalTo
(
64
)
}
sureButton
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
.
offset
(
kMargin
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
kMargin
)
make
.
centerY
.
equalToSuperview
()
make
.
height
.
equalTo
(
48
)
}
tableView
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
make
.
right
.
equalToSuperview
()
make
.
top
.
equalToSuperview
()
make
.
bottom
.
equalTo
(
bottomView
.
snp
.
top
)
}
tableView
.
tableFooterView
=
UIView
(
frame
:
CGRect
.
init
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
kMargin
))
preferredContentSize
=
CGSize
(
width
:
KScreenWidth
,
height
:
KScreenHeight
-
k_Height_NavigationtBarAndStatuBar
)
}
}
extension
YHVisaRenewalGuideVC
:
UITableViewDelegate
,
UITableViewDataSource
{
func
numberOfSections
(
in
tableView
:
UITableView
)
->
Int
{
return
0
}
func
tableView
(
_
tableView
:
UITableView
,
numberOfRowsInSection
section
:
Int
)
->
Int
{
return
0
}
func
tableView
(
_
tableView
:
UITableView
,
cellForRowAt
indexPath
:
IndexPath
)
->
UITableViewCell
{
return
UITableViewCell
()
}
func
tableView
(
_
tableView
:
UITableView
,
heightForRowAt
indexPath
:
IndexPath
)
->
CGFloat
{
return
UITableView
.
automaticDimension
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/Resign(续签)/HongKongVisaRenewalPayment(续签在港缴费)/V/YHBottomPresentationController.swift
0 → 100644
View file @
b3e20e2e
//
// YHBottomPresentationController.swift
// galaxy
//
// Created by alexzzw on 2024/10/9.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHBottomPresentationController
:
UIPresentationController
{
/*
let vc = UIViewController()
let pc = YHBottomPresentationController(presentedViewController: vc, presenting: self)
pc.customRadius = 12.0
vc.transitioningDelegate = pc
vc.closeButtonClickClosure = { [weak vc] in
vc?.dismiss(animated: true)
}
pc.dimmingViewTapAction = {
vc.dismiss(animated: true, completion: nil)
}
present(vc, animated: true, completion: nil)
*/
// MARK: - Properties
@IBInspectable
public
var
customRadius
:
CGFloat
=
8.0
@IBInspectable
public
var
blurEffectAlpha
:
CGFloat
=
0.5
public
var
dimmingViewTapAction
:
(()
->
Void
)?
private
var
presentationWrappingView
:
UIView
?
private
enum
TransitionState
{
case
presenting
case
dismissing
}
private
struct
Constants
{
static
let
animationDuration
:
TimeInterval
=
0.35
static
let
shadowOpacity
:
Float
=
0.44
static
let
shadowRadius
:
CGFloat
=
13.0
static
let
shadowOffset
:
CGSize
=
CGSize
(
width
:
0
,
height
:
-
6
)
}
// MARK: - Lazy Properties
private
lazy
var
dimmingView
:
UIView
=
{
let
view
=
UIView
()
view
.
backgroundColor
=
UIColor
.
black
.
withAlphaComponent
(
blurEffectAlpha
)
view
.
isOpaque
=
false
view
.
autoresizingMask
=
[
.
flexibleHeight
,
.
flexibleWidth
]
view
.
addGestureRecognizer
(
UITapGestureRecognizer
(
target
:
self
,
action
:
#selector(
dimmingViewTapped(_:)
)
))
return
view
}()
private
lazy
var
visualEffectView
:
UIVisualEffectView
=
{
let
effect
=
UIBlurEffect
(
style
:
.
dark
)
let
view
=
UIVisualEffectView
(
effect
:
effect
)
view
.
alpha
=
blurEffectAlpha
return
view
}()
// MARK: - Initialization
override
init
(
presentedViewController
:
UIViewController
,
presenting
presentingViewController
:
UIViewController
?)
{
super
.
init
(
presentedViewController
:
presentedViewController
,
presenting
:
presentingViewController
)
presentedViewController
.
modalPresentationStyle
=
.
custom
}
// MARK: - Overrides
override
var
presentedView
:
UIView
?
{
return
presentationWrappingView
}
override
func
presentationTransitionWillBegin
()
{
guard
let
containerView
=
containerView
else
{
return
}
let
presentationWrapperView
=
createPresentationWrapperView
()
presentationWrappingView
=
presentationWrapperView
setupDimmingView
(
in
:
containerView
)
let
transitionCoordinator
=
presentingViewController
.
transitionCoordinator
dimmingView
.
alpha
=
0.0
transitionCoordinator
?
.
animate
(
alongsideTransition
:
{
[
weak
self
]
_
in
self
?
.
dimmingView
.
alpha
=
1
},
completion
:
nil
)
}
override
func
presentationTransitionDidEnd
(
_
completed
:
Bool
)
{
if
!
completed
{
presentationWrappingView
=
nil
dimmingView
.
removeFromSuperview
()
}
}
override
func
dismissalTransitionWillBegin
()
{
let
transitionCoordinator
=
presentingViewController
.
transitionCoordinator
transitionCoordinator
?
.
animate
(
alongsideTransition
:
{
[
weak
self
]
_
in
self
?
.
dimmingView
.
alpha
=
0
},
completion
:
nil
)
}
override
func
dismissalTransitionDidEnd
(
_
completed
:
Bool
)
{
if
completed
{
presentationWrappingView
=
nil
dimmingView
.
removeFromSuperview
()
}
}
override
func
preferredContentSizeDidChange
(
forChildContentContainer
container
:
UIContentContainer
)
{
super
.
preferredContentSizeDidChange
(
forChildContentContainer
:
container
)
if
container
===
presentedViewController
{
containerView
?
.
setNeedsLayout
()
}
}
override
func
size
(
forChildContentContainer
container
:
UIContentContainer
,
withParentContainerSize
parentSize
:
CGSize
)
->
CGSize
{
if
container
===
presentedViewController
{
return
container
.
preferredContentSize
}
return
super
.
size
(
forChildContentContainer
:
container
,
withParentContainerSize
:
parentSize
)
}
override
var
frameOfPresentedViewInContainerView
:
CGRect
{
guard
let
containerView
=
containerView
else
{
return
.
zero
}
let
containerViewBounds
=
containerView
.
bounds
let
presentedViewContentSize
=
size
(
forChildContentContainer
:
presentedViewController
,
withParentContainerSize
:
containerViewBounds
.
size
)
var
presentedViewControllerFrame
=
containerViewBounds
presentedViewControllerFrame
.
size
.
height
=
presentedViewContentSize
.
height
presentedViewControllerFrame
.
origin
.
y
=
containerViewBounds
.
maxY
-
presentedViewContentSize
.
height
return
presentedViewControllerFrame
}
override
func
containerViewWillLayoutSubviews
()
{
super
.
containerViewWillLayoutSubviews
()
dimmingView
.
frame
=
containerView
?
.
bounds
??
.
zero
presentationWrappingView
?
.
frame
=
frameOfPresentedViewInContainerView
}
// MARK: - Private Methods
private
func
createPresentationWrapperView
()
->
UIView
{
let
wrapperView
=
UIView
(
frame
:
frameOfPresentedViewInContainerView
)
wrapperView
.
layer
.
shadowOpacity
=
Constants
.
shadowOpacity
wrapperView
.
layer
.
shadowRadius
=
Constants
.
shadowRadius
wrapperView
.
layer
.
shadowOffset
=
Constants
.
shadowOffset
let
roundedCornerView
=
createRoundedCornerView
(
in
:
wrapperView
)
let
presentedControllerWrapperView
=
createPresentedControllerWrapperView
(
in
:
roundedCornerView
)
if
let
presentedView
=
super
.
presentedView
{
presentedView
.
autoresizingMask
=
[
.
flexibleHeight
,
.
flexibleWidth
]
presentedView
.
frame
=
presentedControllerWrapperView
.
bounds
presentedControllerWrapperView
.
addSubview
(
presentedView
)
}
return
wrapperView
}
private
func
createRoundedCornerView
(
in
wrapperView
:
UIView
)
->
UIView
{
let
roundedCornerView
=
UIView
(
frame
:
wrapperView
.
bounds
.
inset
(
by
:
UIEdgeInsets
(
top
:
0
,
left
:
0
,
bottom
:
-
customRadius
,
right
:
0
)))
roundedCornerView
.
autoresizingMask
=
[
.
flexibleHeight
,
.
flexibleWidth
]
roundedCornerView
.
layer
.
cornerRadius
=
customRadius
roundedCornerView
.
layer
.
masksToBounds
=
true
wrapperView
.
addSubview
(
roundedCornerView
)
return
roundedCornerView
}
private
func
createPresentedControllerWrapperView
(
in
roundedCornerView
:
UIView
)
->
UIView
{
let
wrapperView
=
UIView
(
frame
:
roundedCornerView
.
bounds
.
inset
(
by
:
UIEdgeInsets
(
top
:
0
,
left
:
0
,
bottom
:
customRadius
,
right
:
0
)))
wrapperView
.
autoresizingMask
=
[
.
flexibleHeight
,
.
flexibleWidth
]
roundedCornerView
.
addSubview
(
wrapperView
)
return
wrapperView
}
private
func
setupDimmingView
(
in
containerView
:
UIView
)
{
dimmingView
.
frame
=
containerView
.
bounds
visualEffectView
.
frame
=
dimmingView
.
bounds
dimmingView
.
addSubview
(
visualEffectView
)
visualEffectView
.
autoresizingMask
=
[
.
flexibleHeight
,
.
flexibleWidth
]
containerView
.
addSubview
(
dimmingView
)
}
// MARK: - Actions
@objc
private
func
dimmingViewTapped
(
_
:
UITapGestureRecognizer
)
{
dimmingViewTapAction
?()
}
}
// MARK: - UIViewControllerAnimatedTransitioning
extension
YHBottomPresentationController
:
UIViewControllerAnimatedTransitioning
{
func
transitionDuration
(
using
transitionContext
:
UIViewControllerContextTransitioning
?)
->
TimeInterval
{
return
transitionContext
?
.
isAnimated
==
true
?
Constants
.
animationDuration
:
0
}
func
animateTransition
(
using
transitionContext
:
UIViewControllerContextTransitioning
)
{
let
state
:
TransitionState
=
(
transitionContext
.
viewController
(
forKey
:
.
from
)
===
presentingViewController
)
?
.
presenting
:
.
dismissing
guard
let
view
=
state
==
.
presenting
?
transitionContext
.
view
(
forKey
:
.
to
)
:
transitionContext
.
view
(
forKey
:
.
from
)
else
{
return
}
let
initialFrame
=
view
.
frame
let
finalFrame
=
state
==
.
presenting
?
transitionContext
.
finalFrame
(
for
:
presentedViewController
)
:
initialFrame
.
offsetBy
(
dx
:
0
,
dy
:
initialFrame
.
height
)
view
.
frame
=
state
==
.
presenting
?
initialFrame
:
finalFrame
let
animator
=
UIViewPropertyAnimator
(
duration
:
Constants
.
animationDuration
,
curve
:
.
easeInOut
)
{
view
.
frame
=
state
==
.
presenting
?
finalFrame
:
initialFrame
}
animator
.
addCompletion
{
_
in
transitionContext
.
completeTransition
(
!
transitionContext
.
transitionWasCancelled
)
}
animator
.
startAnimation
()
}
}
// MARK: - UIViewControllerTransitioningDelegate
extension
YHBottomPresentationController
:
UIViewControllerTransitioningDelegate
{
func
presentationController
(
forPresented
presented
:
UIViewController
,
presenting
:
UIViewController
?,
source
:
UIViewController
)
->
UIPresentationController
?
{
assert
(
presentedViewController
===
presented
,
"You didn't initialize
\(
self
)
with the correct presentedViewController. Expected
\(
presented
)
, got
\(
presentedViewController
)
."
)
return
self
}
func
animationController
(
forPresented
presented
:
UIViewController
,
presenting
:
UIViewController
,
source
:
UIViewController
)
->
UIViewControllerAnimatedTransitioning
?
{
return
self
}
func
animationController
(
forDismissed
dismissed
:
UIViewController
)
->
UIViewControllerAnimatedTransitioning
?
{
return
self
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/Resign(续签)/HongKongVisaRenewalPayment(续签在港缴费)/V/YHDashLineView.swift
0 → 100644
View file @
b3e20e2e
//
// YHDashLineView.swift
// galaxy
//
// Created by alexzzw on 2024/10/8.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHDashLineView
:
UIView
{
private
var
strokeColor
:
CGColor
=
UIColor
(
hex
:
0x121A26
,
alpha
:
0.12
)
.
cgColor
private
var
lineWidth
:
CGFloat
=
1
private
var
lineDashPattern
:
[
NSNumber
]
=
[
2
,
2
]
init
(
strokeColor
:
CGColor
=
UIColor
(
hex
:
0x121A26
,
alpha
:
0.12
)
.
cgColor
,
lineWidth
:
CGFloat
=
1
,
lineDashPattern
:
[
NSNumber
]
=
[
2
,
2
])
{
self
.
strokeColor
=
strokeColor
self
.
lineWidth
=
lineWidth
self
.
lineDashPattern
=
lineDashPattern
super
.
init
(
frame
:
CGRect
.
zero
)
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
override
func
layoutSubviews
()
{
super
.
layoutSubviews
()
// 移除之前的层,避免重复添加
layer
.
sublayers
?
.
filter
{
$0
is
CAShapeLayer
}
.
forEach
{
$0
.
removeFromSuperlayer
()
}
let
shapeLayer
=
CAShapeLayer
()
shapeLayer
.
strokeColor
=
strokeColor
shapeLayer
.
lineWidth
=
lineWidth
shapeLayer
.
lineDashPattern
=
lineDashPattern
// 实线长度,间隔长度
let
path
=
CGMutablePath
()
path
.
move
(
to
:
CGPoint
(
x
:
0
,
y
:
bounds
.
midY
))
path
.
addLine
(
to
:
CGPoint
(
x
:
bounds
.
width
,
y
:
bounds
.
midY
))
shapeLayer
.
path
=
path
layer
.
addSublayer
(
shapeLayer
)
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/Resign(续签)/HongKongVisaRenewalPayment(续签在港缴费)/V/YHHKVisaRenewalPaymentStepView.swift
0 → 100644
View file @
b3e20e2e
//
// YHHKVisaRenewalPaymentStepView.swift
// galaxy
//
// Created by alexzzw on 2024/10/8.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHHKVisaRenewalPaymentStepView
:
UIView
{
private
let
stepNames
:
[
String
]
=
[
"确认在港"
,
"复制档案号"
,
"官网缴费"
,
"查看签证"
]
private
let
stepLabelHeight
:
CGFloat
=
18
private
lazy
var
firstStepLabel
:
UILabel
=
{
return
getStepLabel
(
"1"
)
}()
private
lazy
var
secondStepLabel
:
UILabel
=
{
return
getStepLabel
(
"2"
)
}()
private
lazy
var
thirdStepLabel
:
UILabel
=
{
return
getStepLabel
(
"3"
)
}()
private
lazy
var
fourthStepLabel
:
UILabel
=
{
return
getStepLabel
(
"4"
)
}()
private
lazy
var
firstStepNameLabel
:
UILabel
=
{
return
getStepNameLabel
(
stepNames
[
0
])
}()
private
lazy
var
secondStepNameLabel
:
UILabel
=
{
return
getStepNameLabel
(
stepNames
[
1
])
}()
private
lazy
var
thirdStepNameLabel
:
UILabel
=
{
return
getStepNameLabel
(
stepNames
[
2
])
}()
private
lazy
var
fourthStepNameLabel
:
UILabel
=
{
return
getStepNameLabel
(
stepNames
[
3
])
}()
private
lazy
var
firstDashLine
:
YHDashLineView
=
{
return
getDashLineView
()
}()
private
lazy
var
secondDashLine
:
YHDashLineView
=
{
return
getDashLineView
()
}()
private
lazy
var
thirdDashLine
:
YHDashLineView
=
{
return
getDashLineView
()
}()
override
init
(
frame
:
CGRect
)
{
super
.
init
(
frame
:
frame
)
setupViews
()
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
}
extension
YHHKVisaRenewalPaymentStepView
{
private
func
setupViews
()
{
backgroundColor
=
.
white
addSubviews
([
firstStepLabel
,
secondStepLabel
,
thirdStepLabel
,
fourthStepLabel
])
addSubviews
([
firstDashLine
,
secondDashLine
,
thirdDashLine
])
addSubviews
([
firstStepNameLabel
,
secondStepNameLabel
,
thirdStepNameLabel
,
fourthStepNameLabel
])
firstStepLabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalToSuperview
()
.
offset
(
16
)
make
.
left
.
equalToSuperview
()
.
offset
(
50
)
make
.
width
.
height
.
equalTo
(
stepLabelHeight
)
}
fourthStepLabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
firstStepLabel
.
snp
.
top
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
50
)
make
.
width
.
height
.
equalTo
(
stepLabelHeight
)
}
secondStepLabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalToSuperview
()
.
offset
(
16
)
make
.
width
.
height
.
equalTo
(
stepLabelHeight
)
}
thirdStepLabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
firstStepLabel
.
snp
.
top
)
make
.
width
.
height
.
equalTo
(
stepLabelHeight
)
}
firstDashLine
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalTo
(
firstStepLabel
.
snp
.
right
)
.
offset
(
8
)
make
.
right
.
equalTo
(
secondStepLabel
.
snp
.
left
)
.
offset
(
-
8
)
make
.
height
.
equalTo
(
1
)
make
.
centerY
.
equalTo
(
firstStepLabel
)
}
secondDashLine
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalTo
(
secondStepLabel
.
snp
.
right
)
.
offset
(
8
)
make
.
right
.
equalTo
(
thirdStepLabel
.
snp
.
left
)
.
offset
(
-
8
)
make
.
width
.
equalTo
(
firstDashLine
)
make
.
height
.
equalTo
(
1
)
make
.
centerY
.
equalTo
(
firstStepLabel
)
}
thirdDashLine
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalTo
(
thirdStepLabel
.
snp
.
right
)
.
offset
(
8
)
make
.
right
.
equalTo
(
fourthStepLabel
.
snp
.
left
)
.
offset
(
-
8
)
make
.
width
.
equalTo
(
firstDashLine
)
make
.
height
.
equalTo
(
1
)
make
.
centerY
.
equalTo
(
firstStepLabel
)
}
firstStepNameLabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
firstStepLabel
.
snp
.
bottom
)
.
offset
(
6
)
make
.
centerX
.
equalTo
(
firstStepLabel
.
snp
.
centerX
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
16
)
}
secondStepNameLabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
secondStepLabel
.
snp
.
bottom
)
.
offset
(
6
)
make
.
centerX
.
equalTo
(
secondStepLabel
.
snp
.
centerX
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
16
)
}
thirdStepNameLabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
thirdStepLabel
.
snp
.
bottom
)
.
offset
(
6
)
make
.
centerX
.
equalTo
(
thirdStepLabel
.
snp
.
centerX
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
16
)
}
fourthStepNameLabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
fourthStepLabel
.
snp
.
bottom
)
.
offset
(
6
)
make
.
centerX
.
equalTo
(
fourthStepLabel
.
snp
.
centerX
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
16
)
}
}
private
func
getStepLabel
(
_
title
:
String
)
->
UILabel
{
let
label
=
UILabel
()
label
.
font
=
UIFont
(
name
:
"DIN Alternate Bold"
,
size
:
12
)
label
.
textColor
=
.
mainTextColor70
label
.
backgroundColor
=
UIColor
(
hex
:
0xf4f6fa
)
label
.
layer
.
cornerRadius
=
stepLabelHeight
/
2.0
label
.
clipsToBounds
=
true
label
.
text
=
title
label
.
textAlignment
=
.
center
return
label
}
private
func
getStepNameLabel
(
_
title
:
String
)
->
UILabel
{
let
label
=
UILabel
()
label
.
font
=
.
PFSC_R
(
ofSize
:
12
)
label
.
textColor
=
.
mainTextColor70
label
.
text
=
title
return
label
}
private
func
getDashLineView
()
->
YHDashLineView
{
let
view
=
YHDashLineView
(
strokeColor
:
UIColor
(
hex
:
0x121A26
,
alpha
:
0.12
)
.
cgColor
,
lineWidth
:
1
,
lineDashPattern
:
[
2
,
2
])
return
view
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/Resign(续签)/HongKongVisaRenewalPayment(续签在港缴费)/V/YHVisaRenewalGuideHeaderCell.swift
0 → 100644
View file @
b3e20e2e
//
// YHVisaRenewalGuideHeaderCell.swift
// galaxy
//
// Created by alexzzw on 2024/10/9.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
import
AttributedString
class
YHVisaRenewalGuideHeaderCell
:
UITableViewCell
{
static
let
cellReuseIdentifier
=
"YHVisaRenewalGuideHeaderCell"
private
lazy
var
infoTitleLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
font
=
.
PFSC_M
(
ofSize
:
17
)
label
.
textColor
=
UIColor
(
hexString
:
"#222222"
)
return
label
}()
private
lazy
var
tipIcon
:
UIImageView
=
{
let
view
=
UIImageView
()
view
.
image
=
UIImage
(
named
:
"right_arrow_black_20"
)
return
view
}()
private
lazy
var
tipTitleLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
font
=
.
PFSC_M
(
ofSize
:
17
)
label
.
textColor
=
UIColor
(
hexString
:
"#222222"
)
return
label
}()
private
lazy
var
tipDetailLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
font
=
.
PFSC_M
(
ofSize
:
17
)
label
.
textColor
=
UIColor
(
hexString
:
"#222222"
)
return
label
}()
private
lazy
var
subContainerView
:
YHBaseDynamicCornerRadiusView
=
{
let
view
=
YHBaseDynamicCornerRadiusView
(
cornerRadius
:
8
,
corner
:
.
none
)
view
.
backgroundColor
=
.
white
return
view
}()
private
lazy
var
warrnIcon
:
UIImageView
=
{
let
view
=
UIImageView
()
view
.
image
=
UIImage
(
named
:
"right_arrow_black_20"
)
return
view
}()
private
lazy
var
warrnDetailLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
font
=
.
PFSC_M
(
ofSize
:
17
)
label
.
textColor
=
UIColor
(
hexString
:
"#222222"
)
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
?,
detail
:
String
?)
{
// infoTitleLabel.text = title
// infoDetailLabel.text = detail
}
func
setupCellASAttributedInfo
(
title
:
String
?,
detail
:
ASAttributedString
?,
detailColor
:
UIColor
=
.
mainTextColor50
)
{
// infoTitleLabel.text = title
// infoDetailLabel.textColor = detailColor
// infoDetailLabel.attributed.text = detail
}
}
extension
YHVisaRenewalGuideHeaderCell
{
private
func
setupUI
()
{
selectionStyle
=
.
none
backgroundColor
=
.
clear
contentView
.
addSubview
(
subContainerView
)
// subContainerView.snp.makeConstraints { make in
// make.edges.equalToSuperview()
// }
//
// bottomLineView.snp.makeConstraints { make in
// make.bottom.equalToSuperview()
// make.left.equalToSuperview().offset(18)
// make.right.equalToSuperview().offset(-18)
// make.height.equalTo(0.5)
// }
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/Resign(续签)/ResignGuidelines(续期身份指引)/C/YHResignGuidelinesExampleShareViewController.swift
View file @
b3e20e2e
...
@@ -147,8 +147,8 @@ extension YHResignGuidelinesExampleShareViewController {
...
@@ -147,8 +147,8 @@ extension YHResignGuidelinesExampleShareViewController {
PHPhotoLibrary
.
requestAuthorization
{
status
in
PHPhotoLibrary
.
requestAuthorization
{
status
in
if
status
==
.
authorized
{
if
status
==
.
authorized
{
// 保存图片到相册
// 保存图片到相册
UIImageWriteToSavedPhotosAlbum
(
image
,
nil
,
nil
,
nil
)
DispatchQueue
.
main
.
async
{
DispatchQueue
.
main
.
async
{
UIImageWriteToSavedPhotosAlbum
(
image
,
nil
,
nil
,
nil
)
YHHUD
.
flash
(
message
:
"保存成功"
)
YHHUD
.
flash
(
message
:
"保存成功"
)
}
}
}
else
{
}
else
{
...
...
galaxy/galaxy/Classes/Modules/InteractionH5(与H5交互)/YHH5WebViewVC.swift
View file @
b3e20e2e
...
@@ -407,8 +407,8 @@ extension YHH5WebViewVC {
...
@@ -407,8 +407,8 @@ extension YHH5WebViewVC {
PHPhotoLibrary
.
requestAuthorization
{
status
in
PHPhotoLibrary
.
requestAuthorization
{
status
in
if
status
==
.
authorized
{
if
status
==
.
authorized
{
// 保存图片到相册
// 保存图片到相册
UIImageWriteToSavedPhotosAlbum
(
image
,
nil
,
nil
,
nil
)
DispatchQueue
.
main
.
async
{
DispatchQueue
.
main
.
async
{
UIImageWriteToSavedPhotosAlbum
(
image
,
nil
,
nil
,
nil
)
YHHUD
.
flash
(
message
:
"保存成功"
)
YHHUD
.
flash
(
message
:
"保存成功"
)
}
}
}
else
{
}
else
{
...
...
galaxy/galaxy/Classes/Modules/PictureReview(图片预览)/YHLongtapPictureSheetView.swift
View file @
b3e20e2e
...
@@ -254,8 +254,8 @@ private extension YHLongtapPictureSheetView {
...
@@ -254,8 +254,8 @@ private extension YHLongtapPictureSheetView {
PHPhotoLibrary
.
requestAuthorization
{
status
in
PHPhotoLibrary
.
requestAuthorization
{
status
in
if
status
==
.
authorized
{
if
status
==
.
authorized
{
// 保存图片到相册
// 保存图片到相册
UIImageWriteToSavedPhotosAlbum
(
image
,
nil
,
nil
,
nil
)
DispatchQueue
.
main
.
async
{
DispatchQueue
.
main
.
async
{
UIImageWriteToSavedPhotosAlbum
(
image
,
nil
,
nil
,
nil
)
YHHUD
.
flash
(
message
:
"保存成功"
)
YHHUD
.
flash
(
message
:
"保存成功"
)
}
}
}
else
{
}
else
{
...
...
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