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
ac4879e8
Commit
ac4879e8
authored
Nov 19, 2024
by
David黄金龙
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
其他信息 UI 修改
parent
ad60d466
Changes
22
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
1348 additions
and
178 deletions
+1348
-178
project.pbxproj
galaxy/galaxy.xcodeproj/project.pbxproj
+24
-8
YHConfigManager.swift
...y/galaxy/Classes/Modules/Home(首页)/C/YHConfigManager.swift
+2
-2
YHOtherInfoFillViewController.swift
...erInformation(其他信息)/C/YHOtherInfoFillViewController.swift
+39
-20
YHOtherInfoFillModel.swift
...信息流程)/OtherInformation(其他信息)/M/YHOtherInfoFillModel.swift
+41
-0
YHOtherInfoFillCell.swift
...的信息流程)/OtherInformation(其他信息)/V/YHOtherInfoFillCell.swift
+169
-136
YHOtherLanguageSelecteView.swift
...OtherInformation(其他信息)/V/YHOtherLanguageSelecteView.swift
+282
-0
YHOtherMultipleChoiceItemView.swift
...erInformation(其他信息)/V/YHOtherMultipleChoiceItemView.swift
+124
-0
YHOtherSingleChoiceItemView.swift
...therInformation(其他信息)/V/YHOtherSingleChoiceItemView.swift
+113
-0
YHSingleOptionalItemsView.swift
.../OtherInformation(其他信息)/V/YHSingleOptionalItemsView.swift
+221
-0
YHOtherInfoFillViewModel.swift
.../OtherInformation(其他信息)/VM/YHOtherInfoFillViewModel.swift
+245
-12
Contents.json
...rviceCenter/其他信息/other_multi_check.imageset/Contents.json
+22
-0
Group 33333990@2x.png
...ter/其他信息/other_multi_check.imageset/Group 33333990@2x.png
+0
-0
Group 33333990@3x.png
...ter/其他信息/other_multi_check.imageset/Group 33333990@3x.png
+0
-0
Contents.json
...viceCenter/其他信息/other_multi_normal.imageset/Contents.json
+22
-0
Rectangle 2957@2x.png
...er/其他信息/other_multi_normal.imageset/Rectangle 2957@2x.png
+0
-0
Rectangle 2957@3x.png
...er/其他信息/other_multi_normal.imageset/Rectangle 2957@3x.png
+0
-0
Contents.json
...viceCenter/其他信息/other_single_check.imageset/Contents.json
+22
-0
Group 33333990@2x.png
...er/其他信息/other_single_check.imageset/Group 33333990@2x.png
+0
-0
Group 33333990@3x.png
...er/其他信息/other_single_check.imageset/Group 33333990@3x.png
+0
-0
Contents.json
...iceCenter/其他信息/other_single_normal.imageset/Contents.json
+22
-0
Rectangle 2956@2x.png
...r/其他信息/other_single_normal.imageset/Rectangle 2956@2x.png
+0
-0
Rectangle 2956@3x.png
...r/其他信息/other_single_normal.imageset/Rectangle 2956@3x.png
+0
-0
No files found.
galaxy/galaxy.xcodeproj/project.pbxproj
View file @
ac4879e8
...
@@ -752,6 +752,8 @@
...
@@ -752,6 +752,8 @@
A51D14EB2C75E98500E2820C
/* UINavigationController+Extension.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A51D14EA2C75E98500E2820C
/* UINavigationController+Extension.swift */
;
};
A51D14EB2C75E98500E2820C
/* UINavigationController+Extension.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A51D14EA2C75E98500E2820C
/* UINavigationController+Extension.swift */
;
};
A520124F2BABCE05008655EA
/* YHFileListContentView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A520124E2BABCE05008655EA
/* YHFileListContentView.swift */
;
};
A520124F2BABCE05008655EA
/* YHFileListContentView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A520124E2BABCE05008655EA
/* YHFileListContentView.swift */
;
};
A537126F2C64EA0800FF1844
/* officalsuccess.gif in Resources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A537126E2C64EA0800FF1844
/* officalsuccess.gif */
;
};
A537126F2C64EA0800FF1844
/* officalsuccess.gif in Resources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A537126E2C64EA0800FF1844
/* officalsuccess.gif */
;
};
A53A35092CE87D2A002FE6A3
/* YHOtherLanguageSelecteView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A53A35082CE87D2A002FE6A3
/* YHOtherLanguageSelecteView.swift */
;
};
A53A350B2CE88B86002FE6A3
/* YHSingleOptionalItemsView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A53A350A2CE88B86002FE6A3
/* YHSingleOptionalItemsView.swift */
;
};
A53B61122BB128AF0010B573
/* YHFileListItemsView2.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A53B61112BB128AF0010B573
/* YHFileListItemsView2.swift */
;
};
A53B61122BB128AF0010B573
/* YHFileListItemsView2.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A53B61112BB128AF0010B573
/* YHFileListItemsView2.swift */
;
};
A53B61192BB3C9960010B573
/* YHMyDocListHeaderView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A53B61182BB3C9960010B573
/* YHMyDocListHeaderView.swift */
;
};
A53B61192BB3C9960010B573
/* YHMyDocListHeaderView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A53B61182BB3C9960010B573
/* YHMyDocListHeaderView.swift */
;
};
A54A07C92C7F478200F749AB
/* YHTravelHKDLGuideSheetView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A54A07C82C7F478200F749AB
/* YHTravelHKDLGuideSheetView.swift */
;
};
A54A07C92C7F478200F749AB
/* YHTravelHKDLGuideSheetView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A54A07C82C7F478200F749AB
/* YHTravelHKDLGuideSheetView.swift */
;
};
...
@@ -842,6 +844,8 @@
...
@@ -842,6 +844,8 @@
A59FD0732CBFAC7800BBED55
/* YHRangeDatePickerCell2.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A59FD06D2CBFAC7800BBED55
/* YHRangeDatePickerCell2.swift */
;
};
A59FD0732CBFAC7800BBED55
/* YHRangeDatePickerCell2.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A59FD06D2CBFAC7800BBED55
/* YHRangeDatePickerCell2.swift */
;
};
A59FD0772CC0A62A00BBED55
/* YHPickTimeHoldView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A59FD0762CC0A62A00BBED55
/* YHPickTimeHoldView.swift */
;
};
A59FD0772CC0A62A00BBED55
/* YHPickTimeHoldView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A59FD0762CC0A62A00BBED55
/* YHPickTimeHoldView.swift */
;
};
A5A89FD72C256B94005A71DD
/* YHHomeLastMessageModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5A89FD62C256B94005A71DD
/* YHHomeLastMessageModel.swift */
;
};
A5A89FD72C256B94005A71DD
/* YHHomeLastMessageModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5A89FD62C256B94005A71DD
/* YHHomeLastMessageModel.swift */
;
};
A5AC63EA2CE83F800080960D
/* YHOtherMultipleChoiceItemView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5AC63E92CE83F800080960D
/* YHOtherMultipleChoiceItemView.swift */
;
};
A5AC63EC2CE83FD30080960D
/* YHOtherSingleChoiceItemView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5AC63EB2CE83FD30080960D
/* YHOtherSingleChoiceItemView.swift */
;
};
A5ACE9282B4564F7002C94D2
/* YHSmsCodeView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5ACE8DE2B4564F7002C94D2
/* YHSmsCodeView.swift */
;
};
A5ACE9282B4564F7002C94D2
/* YHSmsCodeView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5ACE8DE2B4564F7002C94D2
/* YHSmsCodeView.swift */
;
};
A5ACE9292B4564F7002C94D2
/* YHSmsCodeInputView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5ACE8E02B4564F7002C94D2
/* YHSmsCodeInputView.swift */
;
};
A5ACE9292B4564F7002C94D2
/* YHSmsCodeInputView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5ACE8E02B4564F7002C94D2
/* YHSmsCodeInputView.swift */
;
};
A5ACE92C2B4564F7002C94D2
/* YHLoginStyleButton.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5ACE8E42B4564F7002C94D2
/* YHLoginStyleButton.swift */
;
};
A5ACE92C2B4564F7002C94D2
/* YHLoginStyleButton.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5ACE8E42B4564F7002C94D2
/* YHLoginStyleButton.swift */
;
};
...
@@ -1726,6 +1730,8 @@
...
@@ -1726,6 +1730,8 @@
A51D14EA2C75E98500E2820C
/* UINavigationController+Extension.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
"UINavigationController+Extension.swift"
;
sourceTree
=
"<group>"
;
};
A51D14EA2C75E98500E2820C
/* UINavigationController+Extension.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
"UINavigationController+Extension.swift"
;
sourceTree
=
"<group>"
;
};
A520124E2BABCE05008655EA
/* YHFileListContentView.swift */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHFileListContentView.swift
;
sourceTree
=
"<group>"
;
};
A520124E2BABCE05008655EA
/* YHFileListContentView.swift */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHFileListContentView.swift
;
sourceTree
=
"<group>"
;
};
A537126E2C64EA0800FF1844
/* officalsuccess.gif */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
image.gif
;
path
=
officalsuccess.gif
;
sourceTree
=
"<group>"
;
};
A537126E2C64EA0800FF1844
/* officalsuccess.gif */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
image.gif
;
path
=
officalsuccess.gif
;
sourceTree
=
"<group>"
;
};
A53A35082CE87D2A002FE6A3
/* YHOtherLanguageSelecteView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHOtherLanguageSelecteView.swift
;
sourceTree
=
"<group>"
;
};
A53A350A2CE88B86002FE6A3
/* YHSingleOptionalItemsView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHSingleOptionalItemsView.swift
;
sourceTree
=
"<group>"
;
};
A53B61112BB128AF0010B573
/* YHFileListItemsView2.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHFileListItemsView2.swift
;
sourceTree
=
"<group>"
;
};
A53B61112BB128AF0010B573
/* YHFileListItemsView2.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHFileListItemsView2.swift
;
sourceTree
=
"<group>"
;
};
A53B61182BB3C9960010B573
/* YHMyDocListHeaderView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMyDocListHeaderView.swift
;
sourceTree
=
"<group>"
;
};
A53B61182BB3C9960010B573
/* YHMyDocListHeaderView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMyDocListHeaderView.swift
;
sourceTree
=
"<group>"
;
};
A54A07C82C7F478200F749AB
/* YHTravelHKDLGuideSheetView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHTravelHKDLGuideSheetView.swift
;
sourceTree
=
"<group>"
;
};
A54A07C82C7F478200F749AB
/* YHTravelHKDLGuideSheetView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHTravelHKDLGuideSheetView.swift
;
sourceTree
=
"<group>"
;
};
...
@@ -1820,6 +1826,8 @@
...
@@ -1820,6 +1826,8 @@
A59FD06F2CBFAC7800BBED55
/* YHRangeDatePickerView2.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHRangeDatePickerView2.swift
;
sourceTree
=
"<group>"
;
};
A59FD06F2CBFAC7800BBED55
/* YHRangeDatePickerView2.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHRangeDatePickerView2.swift
;
sourceTree
=
"<group>"
;
};
A59FD0762CC0A62A00BBED55
/* YHPickTimeHoldView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHPickTimeHoldView.swift
;
sourceTree
=
"<group>"
;
};
A59FD0762CC0A62A00BBED55
/* YHPickTimeHoldView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHPickTimeHoldView.swift
;
sourceTree
=
"<group>"
;
};
A5A89FD62C256B94005A71DD
/* YHHomeLastMessageModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHHomeLastMessageModel.swift
;
sourceTree
=
"<group>"
;
};
A5A89FD62C256B94005A71DD
/* YHHomeLastMessageModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHHomeLastMessageModel.swift
;
sourceTree
=
"<group>"
;
};
A5AC63E92CE83F800080960D
/* YHOtherMultipleChoiceItemView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHOtherMultipleChoiceItemView.swift
;
sourceTree
=
"<group>"
;
};
A5AC63EB2CE83FD30080960D
/* YHOtherSingleChoiceItemView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHOtherSingleChoiceItemView.swift
;
sourceTree
=
"<group>"
;
};
A5ACE8DE2B4564F7002C94D2
/* YHSmsCodeView.swift */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHSmsCodeView.swift
;
sourceTree
=
"<group>"
;
};
A5ACE8DE2B4564F7002C94D2
/* YHSmsCodeView.swift */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHSmsCodeView.swift
;
sourceTree
=
"<group>"
;
};
A5ACE8E02B4564F7002C94D2
/* YHSmsCodeInputView.swift */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHSmsCodeInputView.swift
;
sourceTree
=
"<group>"
;
};
A5ACE8E02B4564F7002C94D2
/* YHSmsCodeInputView.swift */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHSmsCodeInputView.swift
;
sourceTree
=
"<group>"
;
};
A5ACE8E42B4564F7002C94D2
/* YHLoginStyleButton.swift */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHLoginStyleButton.swift
;
sourceTree
=
"<group>"
;
};
A5ACE8E42B4564F7002C94D2
/* YHLoginStyleButton.swift */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHLoginStyleButton.swift
;
sourceTree
=
"<group>"
;
};
...
@@ -2912,7 +2920,11 @@
...
@@ -2912,7 +2920,11 @@
045EEDF42B9F171A0022A143
/* YHOtherTextViewItemView.swift */
,
045EEDF42B9F171A0022A143
/* YHOtherTextViewItemView.swift */
,
045EEDF52B9F171A0022A143
/* YHOtherYesOrNoItemView.swift */
,
045EEDF52B9F171A0022A143
/* YHOtherYesOrNoItemView.swift */
,
045EEDF62B9F171A0022A143
/* YHOtherSelecteItemView.swift */
,
045EEDF62B9F171A0022A143
/* YHOtherSelecteItemView.swift */
,
A53A35082CE87D2A002FE6A3
/* YHOtherLanguageSelecteView.swift */
,
045EEDF72B9F171A0022A143
/* YHOtherInfoSessionView.swift */
,
045EEDF72B9F171A0022A143
/* YHOtherInfoSessionView.swift */
,
A5AC63E92CE83F800080960D
/* YHOtherMultipleChoiceItemView.swift */
,
A5AC63EB2CE83FD30080960D
/* YHOtherSingleChoiceItemView.swift */
,
A53A350A2CE88B86002FE6A3
/* YHSingleOptionalItemsView.swift */
,
);
);
path
=
V
;
path
=
V
;
sourceTree
=
"<group>"
;
sourceTree
=
"<group>"
;
...
@@ -5581,6 +5593,7 @@
...
@@ -5581,6 +5593,7 @@
0468D4362B57752F00CFB916
/* YHUserModel.swift in Sources */
,
0468D4362B57752F00CFB916
/* YHUserModel.swift in Sources */
,
040450CF2CC8A0F400D1CFE5
/* YHResignDocumentMultiLineTipsCell.swift in Sources */
,
040450CF2CC8A0F400D1CFE5
/* YHResignDocumentMultiLineTipsCell.swift in Sources */
,
A567E5982BD7643D00D5D5A0
/* YHHKEventModel.swift in Sources */
,
A567E5982BD7643D00D5D5A0
/* YHHKEventModel.swift in Sources */
,
A5AC63EC2CE83FD30080960D
/* YHOtherSingleChoiceItemView.swift in Sources */
,
045EEE992B9F171A0022A143
/* YHPreviewInfoHoldView.swift in Sources */
,
045EEE992B9F171A0022A143
/* YHPreviewInfoHoldView.swift in Sources */
,
045EEE7E2B9F171A0022A143
/* YHPersonInfoCellModel1.swift in Sources */
,
045EEE7E2B9F171A0022A143
/* YHPersonInfoCellModel1.swift in Sources */
,
047AA3DD2C4A6126009C4554
/* YHLifeViewController.swift in Sources */
,
047AA3DD2C4A6126009C4554
/* YHLifeViewController.swift in Sources */
,
...
@@ -5596,9 +5609,11 @@
...
@@ -5596,9 +5609,11 @@
044E31C72CBD264D00500F8E
/* YHResignInfoConfirmInfoListModel.swift in Sources */
,
044E31C72CBD264D00500F8E
/* YHResignInfoConfirmInfoListModel.swift in Sources */
,
0430E63B2C6DA106000511E2
/* CGFloat+Extention.swift in Sources */
,
0430E63B2C6DA106000511E2
/* CGFloat+Extention.swift in Sources */
,
045EEF192B9F171A0022A143
/* YHAddressModel.swift in Sources */
,
045EEF192B9F171A0022A143
/* YHAddressModel.swift in Sources */
,
A5AC63EA2CE83F800080960D
/* YHOtherMultipleChoiceItemView.swift in Sources */
,
045EEEDB2B9F171A0022A143
/* YHCollegeSearchViewController.swift in Sources */
,
045EEEDB2B9F171A0022A143
/* YHCollegeSearchViewController.swift in Sources */
,
04C85DE72C36ADAE008B20D6
/* YHMyFileListHeaderView.swift in Sources */
,
04C85DE72C36ADAE008B20D6
/* YHMyFileListHeaderView.swift in Sources */
,
A598E9DC2C7CA52300F84739
/* YHTravelDocsPreparationTipsCell.swift in Sources */
,
A598E9DC2C7CA52300F84739
/* YHTravelDocsPreparationTipsCell.swift in Sources */
,
A53A350B2CE88B86002FE6A3
/* YHSingleOptionalItemsView.swift in Sources */
,
045EEE982B9F171A0022A143
/* YHPreviewInfoQuestionAndAnswerItemsView.swift in Sources */
,
045EEE982B9F171A0022A143
/* YHPreviewInfoQuestionAndAnswerItemsView.swift in Sources */
,
045EEE7A2B9F171A0022A143
/* YHPreviewForOtherInfoModel.swift in Sources */
,
045EEE7A2B9F171A0022A143
/* YHPreviewForOtherInfoModel.swift in Sources */
,
0414BDA92BC7E81500225367
/* YHMyPermissionSettingVC.swift in Sources */
,
0414BDA92BC7E81500225367
/* YHMyPermissionSettingVC.swift in Sources */
,
...
@@ -5724,6 +5739,7 @@
...
@@ -5724,6 +5739,7 @@
043D2C8C2C0F037B00172438
/* YHServiceOrderSearchViewModel.swift in Sources */
,
043D2C8C2C0F037B00172438
/* YHServiceOrderSearchViewModel.swift in Sources */
,
0468D4262B495A5400CFB916
/* YHPickPhoneAddressViewController.swift in Sources */
,
0468D4262B495A5400CFB916
/* YHPickPhoneAddressViewController.swift in Sources */
,
A5FD45232C523DD300908AD9
/* YHJsApi.swift in Sources */
,
A5FD45232C523DD300908AD9
/* YHJsApi.swift in Sources */
,
A53A35092CE87D2A002FE6A3
/* YHOtherLanguageSelecteView.swift in Sources */
,
04B360E32C60A346001EB053
/* YHPrinciplePhotoListCell.swift in Sources */
,
04B360E32C60A346001EB053
/* YHPrinciplePhotoListCell.swift in Sources */
,
044EE2512C955CDE00A2FE3A
/* YHResignGuidelinesExampleViewController.swift in Sources */
,
044EE2512C955CDE00A2FE3A
/* YHResignGuidelinesExampleViewController.swift in Sources */
,
0457920F2CBCE9D000EBD99B
/* YHResignUploadTravelCardListTableViewCell.swift in Sources */
,
0457920F2CBCE9D000EBD99B
/* YHResignUploadTravelCardListTableViewCell.swift in Sources */
,
...
@@ -6373,7 +6389,7 @@
...
@@ -6373,7 +6389,7 @@
CODE_SIGN_IDENTITY
=
"Apple Development"
;
CODE_SIGN_IDENTITY
=
"Apple Development"
;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]"
=
"iPhone Developer"
;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]"
=
"iPhone Developer"
;
CODE_SIGN_STYLE
=
Manual
;
CODE_SIGN_STYLE
=
Manual
;
CURRENT_PROJECT_VERSION
=
4
;
CURRENT_PROJECT_VERSION
=
1
;
DEVELOPMENT_TEAM
=
""
;
DEVELOPMENT_TEAM
=
""
;
"DEVELOPMENT_TEAM[sdk=iphoneos*]"
=
RXHYW88XR7
;
"DEVELOPMENT_TEAM[sdk=iphoneos*]"
=
RXHYW88XR7
;
ENABLE_USER_SCRIPT_SANDBOXING
=
NO
;
ENABLE_USER_SCRIPT_SANDBOXING
=
NO
;
...
@@ -6400,7 +6416,7 @@
...
@@ -6400,7 +6416,7 @@
"$(inherited)"
,
"$(inherited)"
,
"@executable_path/Frameworks"
,
"@executable_path/Frameworks"
,
);
);
MARKETING_VERSION
=
1.0.
3
;
MARKETING_VERSION
=
1.0.
4
;
PRODUCT_BUNDLE_IDENTIFIER
=
com.intelligence.galaxy
;
PRODUCT_BUNDLE_IDENTIFIER
=
com.intelligence.galaxy
;
PRODUCT_NAME
=
"$(TARGET_NAME)"
;
PRODUCT_NAME
=
"$(TARGET_NAME)"
;
PROVISIONING_PROFILE_SPECIFIER
=
""
;
PROVISIONING_PROFILE_SPECIFIER
=
""
;
...
@@ -6518,7 +6534,7 @@
...
@@ -6518,7 +6534,7 @@
CODE_SIGN_IDENTITY
=
"Apple Development"
;
CODE_SIGN_IDENTITY
=
"Apple Development"
;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]"
=
"iPhone Developer"
;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]"
=
"iPhone Developer"
;
CODE_SIGN_STYLE
=
Manual
;
CODE_SIGN_STYLE
=
Manual
;
CURRENT_PROJECT_VERSION
=
4
;
CURRENT_PROJECT_VERSION
=
1
;
DEVELOPMENT_TEAM
=
""
;
DEVELOPMENT_TEAM
=
""
;
"DEVELOPMENT_TEAM[sdk=iphoneos*]"
=
RXHYW88XR7
;
"DEVELOPMENT_TEAM[sdk=iphoneos*]"
=
RXHYW88XR7
;
ENABLE_USER_SCRIPT_SANDBOXING
=
NO
;
ENABLE_USER_SCRIPT_SANDBOXING
=
NO
;
...
@@ -6545,7 +6561,7 @@
...
@@ -6545,7 +6561,7 @@
"$(inherited)"
,
"$(inherited)"
,
"@executable_path/Frameworks"
,
"@executable_path/Frameworks"
,
);
);
MARKETING_VERSION
=
1.0.
3
;
MARKETING_VERSION
=
1.0.
4
;
PRODUCT_BUNDLE_IDENTIFIER
=
com.intelligence.galaxy
;
PRODUCT_BUNDLE_IDENTIFIER
=
com.intelligence.galaxy
;
PRODUCT_NAME
=
"$(TARGET_NAME)"
;
PRODUCT_NAME
=
"$(TARGET_NAME)"
;
PROVISIONING_PROFILE_SPECIFIER
=
""
;
PROVISIONING_PROFILE_SPECIFIER
=
""
;
...
@@ -6726,7 +6742,7 @@
...
@@ -6726,7 +6742,7 @@
CODE_SIGN_IDENTITY
=
"Apple Development"
;
CODE_SIGN_IDENTITY
=
"Apple Development"
;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]"
=
"iPhone Developer"
;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]"
=
"iPhone Developer"
;
CODE_SIGN_STYLE
=
Manual
;
CODE_SIGN_STYLE
=
Manual
;
CURRENT_PROJECT_VERSION
=
4
;
CURRENT_PROJECT_VERSION
=
1
;
DEVELOPMENT_TEAM
=
""
;
DEVELOPMENT_TEAM
=
""
;
"DEVELOPMENT_TEAM[sdk=iphoneos*]"
=
RXHYW88XR7
;
"DEVELOPMENT_TEAM[sdk=iphoneos*]"
=
RXHYW88XR7
;
ENABLE_USER_SCRIPT_SANDBOXING
=
NO
;
ENABLE_USER_SCRIPT_SANDBOXING
=
NO
;
...
@@ -6753,7 +6769,7 @@
...
@@ -6753,7 +6769,7 @@
"$(inherited)"
,
"$(inherited)"
,
"@executable_path/Frameworks"
,
"@executable_path/Frameworks"
,
);
);
MARKETING_VERSION
=
1.0.
3
;
MARKETING_VERSION
=
1.0.
4
;
PRODUCT_BUNDLE_IDENTIFIER
=
com.intelligence.galaxy
;
PRODUCT_BUNDLE_IDENTIFIER
=
com.intelligence.galaxy
;
PRODUCT_NAME
=
"$(TARGET_NAME)"
;
PRODUCT_NAME
=
"$(TARGET_NAME)"
;
PROVISIONING_PROFILE_SPECIFIER
=
""
;
PROVISIONING_PROFILE_SPECIFIER
=
""
;
...
@@ -6776,7 +6792,7 @@
...
@@ -6776,7 +6792,7 @@
CODE_SIGN_IDENTITY
=
"Apple Development"
;
CODE_SIGN_IDENTITY
=
"Apple Development"
;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]"
=
"iPhone Developer"
;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]"
=
"iPhone Developer"
;
CODE_SIGN_STYLE
=
Manual
;
CODE_SIGN_STYLE
=
Manual
;
CURRENT_PROJECT_VERSION
=
4
;
CURRENT_PROJECT_VERSION
=
1
;
DEVELOPMENT_TEAM
=
""
;
DEVELOPMENT_TEAM
=
""
;
"DEVELOPMENT_TEAM[sdk=iphoneos*]"
=
RXHYW88XR7
;
"DEVELOPMENT_TEAM[sdk=iphoneos*]"
=
RXHYW88XR7
;
ENABLE_USER_SCRIPT_SANDBOXING
=
NO
;
ENABLE_USER_SCRIPT_SANDBOXING
=
NO
;
...
@@ -6803,7 +6819,7 @@
...
@@ -6803,7 +6819,7 @@
"$(inherited)"
,
"$(inherited)"
,
"@executable_path/Frameworks"
,
"@executable_path/Frameworks"
,
);
);
MARKETING_VERSION
=
1.0.
3
;
MARKETING_VERSION
=
1.0.
4
;
PRODUCT_BUNDLE_IDENTIFIER
=
com.intelligence.galaxy
;
PRODUCT_BUNDLE_IDENTIFIER
=
com.intelligence.galaxy
;
PRODUCT_NAME
=
"$(TARGET_NAME)"
;
PRODUCT_NAME
=
"$(TARGET_NAME)"
;
PROVISIONING_PROFILE_SPECIFIER
=
""
;
PROVISIONING_PROFILE_SPECIFIER
=
""
;
...
...
galaxy/galaxy/Classes/Modules/Home(首页)/C/YHConfigManager.swift
View file @
ac4879e8
...
@@ -24,9 +24,9 @@ class YHConfigManager: NSObject {
...
@@ -24,9 +24,9 @@ class YHConfigManager: NSObject {
//测试环境-H5
//测试环境-H5
static
let
baseH5UrlTest
:
String
=
"https://test-hk
diy-h5
.galaxy-immi.com"
static
let
baseH5UrlTest
:
String
=
"https://test-hk
life
.galaxy-immi.com"
//正式环境-H5
//正式环境-H5
static
let
baseH5UrlRelease
:
String
=
"https://hk
diy-h5
.galaxy-immi.com"
static
let
baseH5UrlRelease
:
String
=
"https://hk
life
.galaxy-immi.com"
//h5地址
//h5地址
var
h5Url
:
String
{
var
h5Url
:
String
{
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/ServiceProcess(我的信息流程)/OtherInformation(其他信息)/C/YHOtherInfoFillViewController.swift
View file @
ac4879e8
...
@@ -112,6 +112,25 @@ extension YHOtherInfoFillViewController {
...
@@ -112,6 +112,25 @@ extension YHOtherInfoFillViewController {
private
func
submitDataOp
(
flag
:
Bool
)
{
private
func
submitDataOp
(
flag
:
Bool
)
{
//提交
//提交
let
model
=
otherInfoVM
.
otherInfoFillData
let
model
=
otherInfoVM
.
otherInfoFillData
//处理提交的数据 //for test hjl
var
tID
=
0
if
let
arr
=
model
?
.
language_detail_new
,
arr
.
count
>
0
{
tID
=
arr
[
0
]
.
id
}
let
fakeData
:
LanguageDetailNew
=
LanguageDetailNew
()
fakeData
.
id
=
tID
fakeData
.
first_select
=
3
fakeData
.
second_select
=
"1"
fakeData
.
other_instructions
=
"DavidTest"
model
?
.
language_detail_new
=
[
fakeData
]
model
?
.
is_update
=
flag
model
?
.
is_update
=
flag
//保存
//保存
if
let
param
=
model
?
.
toDictionary
()
{
if
let
param
=
model
?
.
toDictionary
()
{
...
@@ -145,27 +164,27 @@ extension YHOtherInfoFillViewController {
...
@@ -145,27 +164,27 @@ extension YHOtherInfoFillViewController {
private
func
dataIsOK
()
->
Bool
{
private
func
dataIsOK
()
->
Bool
{
var
returnValue
:
Bool
=
true
var
returnValue
:
Bool
=
true
if
let
model
=
otherInfoVM
.
otherInfoFillData
{
if
let
model
=
otherInfoVM
.
otherInfoFillData
{
//1.居住信息
//
//1.居住信息
for
item
in
model
.
residences
{
//
for item in model.residences {
if
item
.
country
.
isEmpty
||
item
.
start_time
.
isEmpty
||
item
.
end_time
.
isEmpty
{
//
if item.country.isEmpty || item.start_time.isEmpty || item.end_time.isEmpty {
returnValue
=
false
//
returnValue = false
return
returnValue
//
return returnValue
}
//
}
}
//
}
//2.语言水平
//
//2.语言水平
if
model
.
language_detail
?
.
levelDes
.
isEmpty
==
true
{
//
if model.language_detail?.levelDes.isEmpty == true {
returnValue
=
false
//
returnValue = false
return
returnValue
//
return returnValue
}
else
{
//
} else {
if
let
language
=
model
.
language_detail
,
language
.
level
==
4
{
//
if let language = model.language_detail,language.level == 4 {
if
language
.
name
.
isEmpty
||
language
.
remark
.
isEmpty
{
//
if language.name.isEmpty || language.remark.isEmpty {
returnValue
=
false
//
returnValue = false
return
returnValue
//
return returnValue
}
//
}
}
//
}
//
}
//
}
//3.专业技能行业
//3.专业技能行业
if
model
.
profession
?
.
optionDes
.
isEmpty
==
true
{
if
model
.
profession
?
.
optionDes
.
isEmpty
==
true
{
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/ServiceProcess(我的信息流程)/OtherInformation(其他信息)/M/YHOtherInfoFillModel.swift
View file @
ac4879e8
...
@@ -13,6 +13,13 @@ class YHOtherInfoFillModel: SmartCodable {
...
@@ -13,6 +13,13 @@ class YHOtherInfoFillModel: SmartCodable {
var
order_id
:
String
=
""
var
order_id
:
String
=
""
var
residences
:
[
Residence
]
=
[]
var
residences
:
[
Residence
]
=
[]
var
language_detail
:
LanguageDetail
?
var
language_detail
:
LanguageDetail
?
//服务器返回
var
language_detail_new
:
[
LanguageDetailNew
]
=
[]
//数据储存在各端的数据
var
language_detail_new_data
:
[
LanguageDetailModel
]
=
[]
var
profession
:
Profession
?
var
profession
:
Profession
?
var
question
:
Question
?
var
question
:
Question
?
var
is_update
:
Bool
=
false
//true-提交 false-保存
var
is_update
:
Bool
=
false
//true-提交 false-保存
...
@@ -63,6 +70,40 @@ class LanguageDetail : SmartCodable {
...
@@ -63,6 +70,40 @@ class LanguageDetail : SmartCodable {
}
}
}
}
class
LanguageDetailNew
:
SmartCodable
{
var
id
:
Int
=
0
var
first_select
:
Int
=
0
var
second_select
:
String
=
""
//"1,2,3" 兼容多选
var
other_instructions
:
String
=
""
required
init
()
{
}
}
class
LanguageOptionModel
:
SmartCodable
{
var
id
:
Int
=
0
var
name
:
String
=
""
var
select
:
Bool
=
false
var
subname
:
String
=
""
var
highlight
:
String
=
""
required
init
()
{
}
}
class
LanguageDetailModel
:
SmartCodable
{
var
id
:
Int
=
0
var
name
:
String
=
""
var
select
:
Bool
=
false
var
other_instructions
:
String
=
""
var
options
:
[
LanguageOptionModel
]
=
[]
required
init
()
{
}
}
// MARK: - Profession
// MARK: - Profession
class
Profession
:
SmartCodable
{
class
Profession
:
SmartCodable
{
var
option
:
Int
=
-
1
var
option
:
Int
=
-
1
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/ServiceProcess(我的信息流程)/OtherInformation(其他信息)/V/YHOtherInfoFillCell.swift
View file @
ac4879e8
...
@@ -54,6 +54,11 @@ class YHOtherInfoFillCell: UITableViewCell {
...
@@ -54,6 +54,11 @@ class YHOtherInfoFillCell: UITableViewCell {
let
languageView
=
YHOtherSelecteItemView
()
let
languageView
=
YHOtherSelecteItemView
()
let
skillView
=
YHOtherSelecteItemView
()
let
skillView
=
YHOtherSelecteItemView
()
private
lazy
var
languageViewNew
:
YHOtherLanguageSelecteView
=
{
let
view
=
YHOtherLanguageSelecteView
()
return
view
}()
}
}
extension
YHOtherInfoFillCell
{
extension
YHOtherInfoFillCell
{
...
@@ -71,133 +76,134 @@ extension YHOtherInfoFillCell {
...
@@ -71,133 +76,134 @@ extension YHOtherInfoFillCell {
contentView
.
backgroundColor
=
.
clear
contentView
.
backgroundColor
=
.
clear
backgroundColor
=
.
clear
backgroundColor
=
.
clear
//1.居住信息
//
//1.居住信息
let
holdView1
=
createHoldView
()
//
let holdView1 = createHoldView()
contentView
.
addSubview
(
holdView1
)
//
contentView.addSubview(holdView1)
holdView1
.
snp
.
makeConstraints
{
make
in
//
holdView1.snp.makeConstraints { make in
make
.
top
.
left
.
right
.
equalToSuperview
()
//
make.top.left.right.equalToSuperview()
}
//
}
//
do
{
//
do {
//
var
lastTargetView
:
UIView
!
//
var lastTargetView : UIView!
if
dataModel
.
residences
.
count
>
1
{
//
if dataModel.residences.count > 1 {
for
(
index
,
item
)
in
dataModel
.
residences
.
enumerated
()
{
//
for (index,item) in dataModel.residences.enumerated() {
if
index
==
0
{
//
if index == 0 {
let
sessionView
=
YHOtherInfoSessionView
(
frame
:
.
zero
)
//
let sessionView = YHOtherInfoSessionView(frame: .zero)
sessionView
.
type
=
3
//
sessionView.type = 3
sessionView
.
updateTitle
(
title
:
"居住信息"
)
//
sessionView.updateTitle(title: "居住信息")
holdView1
.
addSubview
(
sessionView
)
//
holdView1.addSubview(sessionView)
sessionView
.
snp
.
makeConstraints
{
make
in
//
sessionView.snp.makeConstraints { make in
make
.
top
.
equalToSuperview
()
//
make.top.equalToSuperview()
make
.
left
.
equalToSuperview
()
.
offset
(
18
)
//
make.left.equalToSuperview().offset(18)
make
.
right
.
equalToSuperview
()
.
offset
(
-
18
)
//
make.right.equalToSuperview().offset(-18)
make
.
height
.
equalTo
(
YHOtherInfoSessionView
.
viewH
)
//
make.height.equalTo(YHOtherInfoSessionView.viewH)
}
//
}
//
let
residenceView
=
YHOtherResidenceFillView
(
frame
:
.
zero
)
//
let residenceView = YHOtherResidenceFillView(frame: .zero)
item
.
needCheckFlag
=
dataModel
.
needCheckFlag
//
item.needCheckFlag = dataModel.needCheckFlag
residenceView
.
dataModel
=
item
//
residenceView.dataModel = item
holdView1
.
addSubview
(
residenceView
)
//
holdView1.addSubview(residenceView)
//
residenceView
.
snp
.
makeConstraints
{
make
in
//
residenceView.snp.makeConstraints { make in
make
.
top
.
equalTo
(
sessionView
.
snp
.
bottom
)
//
make.top.equalTo(sessionView.snp.bottom)
make
.
left
.
equalToSuperview
()
.
offset
(
18
)
//
make.left.equalToSuperview().offset(18)
make
.
right
.
equalToSuperview
()
.
offset
(
-
18
)
//
make.right.equalToSuperview().offset(-18)
}
//
}
//
lastTargetView
=
residenceView
//
lastTargetView = residenceView
}
else
{
//
} else {
let
sessionView
=
YHOtherInfoSessionView
(
frame
:
.
zero
)
//
let sessionView = YHOtherInfoSessionView(frame: .zero)
//
let
addationIndex
=
dataModel
.
residences
.
count
>
1
?
String
(
index
+
1
)
:
""
//
let addationIndex = dataModel.residences.count > 1 ? String(index + 1) : ""
let
title
=
"居住信息"
+
addationIndex
//
let title = "居住信息" + addationIndex
sessionView
.
updateTitle
(
title
:
title
)
//
sessionView.updateTitle(title: title)
sessionView
.
type
=
1
//
sessionView.type = 1
sessionView
.
tag
=
index
//
sessionView.tag = index
sessionView
.
block
=
{
tag
in
//
sessionView.block = { tag in
if
tag
<
dataModel
.
residences
.
count
{
//
if tag < dataModel.residences.count {
dataModel
.
residences
.
remove
(
at
:
tag
)
//
dataModel.residences.remove(at: tag)
self
.
block
?()
//
self.block?()
}
//
}
}
//
}
//
holdView1
.
addSubview
(
sessionView
)
//
holdView1.addSubview(sessionView)
sessionView
.
snp
.
makeConstraints
{
make
in
//
sessionView.snp.makeConstraints { make in
make
.
top
.
equalTo
(
lastTargetView
.
snp
.
bottom
)
.
offset
(
kMargin
)
//
make.top.equalTo(lastTargetView.snp.bottom).offset(kMargin)
make
.
left
.
equalToSuperview
()
.
offset
(
18
)
//
make.left.equalToSuperview().offset(18)
make
.
right
.
equalToSuperview
()
.
offset
(
-
18
)
//
make.right.equalToSuperview().offset(-18)
make
.
height
.
equalTo
(
YHOtherInfoSessionView
.
viewH
)
//
make.height.equalTo(YHOtherInfoSessionView.viewH)
}
//
}
//
let
residenceView
=
YHOtherResidenceFillView
(
frame
:
.
zero
)
//
let residenceView = YHOtherResidenceFillView(frame: .zero)
item
.
needCheckFlag
=
dataModel
.
needCheckFlag
//
item.needCheckFlag = dataModel.needCheckFlag
residenceView
.
dataModel
=
item
//
residenceView.dataModel = item
holdView1
.
addSubview
(
residenceView
)
//
holdView1.addSubview(residenceView)
residenceView
.
snp
.
makeConstraints
{
make
in
//
residenceView.snp.makeConstraints { make in
make
.
top
.
equalTo
(
sessionView
.
snp
.
bottom
)
//
make.top.equalTo(sessionView.snp.bottom)
make
.
left
.
equalToSuperview
()
.
offset
(
18
)
//
make.left.equalToSuperview().offset(18)
make
.
right
.
equalToSuperview
()
.
offset
(
-
18
)
//
make.right.equalToSuperview().offset(-18)
}
//
}
//
lastTargetView
=
residenceView
//
lastTargetView = residenceView
}
//
}
}
//
}
}
else
{
//
} else {
//
let
sessionView
=
YHOtherInfoSessionView
(
frame
:
.
zero
)
//
let sessionView = YHOtherInfoSessionView(frame: .zero)
sessionView
.
type
=
3
//
sessionView.type = 3
sessionView
.
updateTitle
(
title
:
"居住信息"
)
//
sessionView.updateTitle(title: "居住信息")
holdView1
.
addSubview
(
sessionView
)
//
holdView1.addSubview(sessionView)
sessionView
.
snp
.
makeConstraints
{
make
in
//
sessionView.snp.makeConstraints { make in
make
.
top
.
equalToSuperview
()
//
make.top.equalToSuperview()
make
.
left
.
equalToSuperview
()
.
offset
(
18
)
//
make.left.equalToSuperview().offset(18)
make
.
right
.
equalToSuperview
()
.
offset
(
-
18
)
//
make.right.equalToSuperview().offset(-18)
make
.
height
.
equalTo
(
YHOtherInfoSessionView
.
viewH
)
//
make.height.equalTo(YHOtherInfoSessionView.viewH)
}
//
}
//
let
residenceView
=
YHOtherResidenceFillView
(
frame
:
.
zero
)
//
let residenceView = YHOtherResidenceFillView(frame: .zero)
if
dataModel
.
residences
.
count
>
0
{
//
if dataModel.residences.count > 0 {
let
item
=
dataModel
.
residences
[
0
]
//
let item = dataModel.residences[0]
item
.
needCheckFlag
=
dataModel
.
needCheckFlag
//
item.needCheckFlag = dataModel.needCheckFlag
residenceView
.
dataModel
=
item
//
residenceView.dataModel = item
}
else
{
//
} else {
printLog
(
"error: 数据源有问题"
)
//
printLog("error: 数据源有问题")
}
//
}
//
holdView1
.
addSubview
(
residenceView
)
//
holdView1.addSubview(residenceView)
residenceView
.
snp
.
makeConstraints
{
make
in
//
residenceView.snp.makeConstraints { make in
make
.
top
.
equalTo
(
sessionView
.
snp
.
bottom
)
//
make.top.equalTo(sessionView.snp.bottom)
make
.
left
.
equalToSuperview
()
.
offset
(
18
)
//
make.left.equalToSuperview().offset(18)
make
.
right
.
equalToSuperview
()
.
offset
(
-
18
)
//
make.right.equalToSuperview().offset(-18)
}
//
}
//
lastTargetView
=
residenceView
//
lastTargetView = residenceView
}
//
}
//
//添加按钮
//
//添加按钮
holdView1
.
addSubview
(
addBtn
)
//
holdView1.addSubview(addBtn)
addBtn
.
layer
.
addSublayer
(
dotLineLayer
)
//
addBtn.layer.addSublayer(dotLineLayer)
//
//
addBtn
.
snp
.
makeConstraints
{
make
in
//
addBtn.snp.makeConstraints { make in
make
.
top
.
equalTo
(
lastTargetView
.
snp
.
bottom
)
.
offset
(
kMargin
)
//
make.top.equalTo(lastTargetView.snp.bottom).offset(kMargin)
make
.
left
.
equalToSuperview
()
.
offset
(
18
)
//
make.left.equalToSuperview().offset(18)
make
.
right
.
equalToSuperview
()
.
offset
(
-
18
)
//
make.right.equalToSuperview().offset(-18)
make
.
height
.
equalTo
(
44
)
//
make.height.equalTo(44)
//
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
18
)
.
priority
(
.
high
)
//
make.bottom.equalToSuperview().offset(-18).priority(.high)
}
//
}
addBtn
.
layoutIfNeeded
()
//
addBtn.layoutIfNeeded()
dotLineLayer
.
path
=
UIBezierPath
(
roundedRect
:
CGRect
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
-
18
*
2
-
16
*
2
,
height
:
44
),
cornerRadius
:
kCornerRadius6
)
.
cgPath
//
dotLineLayer.path = UIBezierPath(roundedRect: CGRect(x: 0, y: 0, width: KScreenWidth - 18 * 2 - 16 * 2, height: 44), cornerRadius: kCornerRadius6).cgPath
}
//
}
holdView1
.
layoutIfNeeded
()
//
holdView1.layoutIfNeeded()
//2.语言水平
//2.语言水平
let
holdView2
=
createHoldView
()
let
holdView2
=
createHoldView
()
contentView
.
addSubview
(
holdView2
)
contentView
.
addSubview
(
holdView2
)
holdView2
.
snp
.
makeConstraints
{
make
in
holdView2
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
holdView1
.
snp
.
bottom
)
.
offset
(
18
)
.
priority
(
.
low
)
// make.top.equalTo(holdView1.snp.bottom).offset(18).priority(.low)
make
.
top
.
equalToSuperview
()
make
.
left
.
right
.
equalToSuperview
()
make
.
left
.
right
.
equalToSuperview
()
}
}
...
@@ -213,28 +219,55 @@ extension YHOtherInfoFillCell {
...
@@ -213,28 +219,55 @@ extension YHOtherInfoFillCell {
}
}
let
view
=
languageView
// let view = languageView
view
.
updateKeyName
(
name
:
"您的语言水平与下列哪一项符合"
,
keyValue
:
dataModel
.
language_detail
?
.
levelDes
??
""
,
firstTxt
:
dataModel
.
language_detail
?
.
name
??
""
,
secondTxt
:
dataModel
.
language_detail
?
.
remark
??
""
)
// view.updateKeyName(name: "您的语言水平与下列哪一项符合(多选)", keyValue:dataModel.language_detail?.levelDes ?? "",firstTxt: dataModel.language_detail?.name ?? "",secondTxt: dataModel.language_detail?.remark ?? "")
view
.
needCheckFlag
=
dataModel
.
needCheckFlag
// view.needCheckFlag = dataModel.needCheckFlag
view
.
type
=
2
// view.type = 2
//
// view.textBlock = {firstTxt,secondTxt in
// self.dataModel?.language_detail?.name = firstTxt
// self.dataModel?.language_detail?.remark = secondTxt
// }
//
// holdView2.addSubview(view)
// view.snp.makeConstraints { make in
// make.top.equalTo(sessionView.snp.bottom)
// make.left.equalToSuperview().offset(18)
// make.right.equalToSuperview().offset(-18)
//
// make.bottom.equalToSuperview()
// }
view
.
textBlock
=
{
firstTxt
,
secondTxt
in
// let tap = UITapGestureRecognizer(target: self, action: #selector(tapViewItem))
self
.
dataModel
?
.
language_detail
?
.
name
=
firstTxt
// view.addGestureRecognizer(tap)
self
.
dataModel
?
.
language_detail
?
.
remark
=
secondTxt
languageViewNew
.
dataModel
=
dataModel
.
language_detail_new_data
languageViewNew
.
block
=
{
model
in
if
let
tmpModel
=
model
{
var
targetIndex
:
Int
=
-
1
for
(
index
,
item
)
in
dataModel
.
language_detail_new_data
.
enumerated
()
{
if
item
.
id
==
tmpModel
.
id
{
targetIndex
=
index
}
}
if
targetIndex
>
-
1
,
targetIndex
<
dataModel
.
language_detail_new_data
.
count
{
dataModel
.
language_detail_new_data
[
targetIndex
]
=
tmpModel
}
}
self
.
block
?()
}
}
holdView2
.
addSubview
(
vi
ew
)
holdView2
.
addSubview
(
languageViewN
ew
)
vi
ew
.
snp
.
makeConstraints
{
make
in
languageViewN
ew
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
sessionView
.
snp
.
bottom
)
make
.
top
.
equalTo
(
sessionView
.
snp
.
bottom
)
make
.
left
.
equalToSuperview
()
.
offset
(
18
)
make
.
left
.
equalToSuperview
()
.
offset
(
18
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
18
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
18
)
make
.
bottom
.
equalToSuperview
()
make
.
bottom
.
equalToSuperview
()
}
}
let
tap
=
UITapGestureRecognizer
(
target
:
self
,
action
:
#selector(
tapViewItem
)
)
view
.
addGestureRecognizer
(
tap
)
}
}
holdView2
.
layoutIfNeeded
()
holdView2
.
layoutIfNeeded
()
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/ServiceProcess(我的信息流程)/OtherInformation(其他信息)/V/YHOtherLanguageSelecteView.swift
0 → 100644
View file @
ac4879e8
//
// YHOtherLanguageSelecteView.swift
// galaxy
//
// Created by davidhuangA on 2024/2/19.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHOtherLanguageSelecteView
:
UIView
{
typealias
Block
=
(
LanguageDetailModel
?)
->
()
var
block
:
Block
?
var
needCheckFlag
:
Bool
=
false
{
didSet
{
layoutIfNeeded
()
}
}
override
init
(
frame
:
CGRect
)
{
super
.
init
(
frame
:
frame
)
setupUI
()
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
private
lazy
var
titleLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
textColor
=
.
mainTextColor
label
.
textAlignment
=
.
left
label
.
numberOfLines
=
0
label
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
14
)
label
.
lineBreakMode
=
.
byCharWrapping
return
label
}()
//提示lable
private
lazy
var
noTextTipsLable
:
UILabel
=
{
let
label
=
UILabel
()
label
.
textColor
=
.
failColor
label
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
12
)
label
.
text
=
"请选择"
return
label
}()
var
mutilHoldView
:
UIView
=
{
let
view
=
UIView
()
return
view
}()
//
private
var
arrLanguage
:
[
UIView
]
=
[]
private
var
arrLanguageOptions
:
[
UIView
]
=
[]
var
dataModel
:
[
LanguageDetailModel
]
=
[]
{
didSet
{
updateUI
()
}
}
override
func
layoutSubviews
()
{
super
.
layoutSubviews
()
updateUI
()
}
}
extension
YHOtherLanguageSelecteView
{
func
setupUI
()
{
noTextTipsLable
.
text
=
"请选择"
let
str
=
"* "
+
"您的语言水平与下列哪一项符合(多选)"
let
attributes
:
[
NSAttributedString
.
Key
:
Any
]
=
[
.
font
:
UIFont
.
PFSC_R
(
ofSize
:
14
),
.
foregroundColor
:
UIColor
.
mainTextColor
]
let
questionAttrStr
=
NSMutableAttributedString
(
string
:
str
,
attributes
:
attributes
)
let
starRange
=
NSRange
(
location
:
0
,
length
:
1
)
questionAttrStr
.
addAttribute
(
NSAttributedString
.
Key
.
foregroundColor
,
value
:
UIColor
.
failColor
,
range
:
starRange
)
titleLabel
.
attributedText
=
questionAttrStr
addSubview
(
titleLabel
)
addSubview
(
mutilHoldView
)
addSubview
(
noTextTipsLable
)
titleLabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalToSuperview
()
.
offset
(
kMargin
)
make
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
20
)
}
mutilHoldView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
titleLabel
.
snp
.
bottom
)
.
offset
(
kMargin
)
make
.
right
.
equalToSuperview
()
make
.
left
.
equalToSuperview
()
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
kMargin
)
}
//初始化页面数据
arrLanguage
.
removeAll
()
arrLanguageOptions
.
removeAll
()
if
let
arr
=
[
LanguageDetailModel
]
.
deserialize
(
from
:
YHOtherInfoFillViewModel
.
languageJsonData
),
arr
.
count
>
0
{
var
lastView
:
UIView
?
for
(
index
,
item
)
in
arr
.
enumerated
()
{
let
tmpView
=
YHOtherMultipleChoiceItemView
()
tmpView
.
dataModel
=
item
tmpView
.
block
=
{
model
in
self
.
block
?(
model
)
}
mutilHoldView
.
addSubview
(
tmpView
)
arrLanguage
.
append
(
tmpView
)
if
index
==
0
{
//第一个
tmpView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
YHOtherMultipleChoiceItemView
.
viewH
)
}
}
else
if
index
+
1
==
arr
.
count
{
//最后一个
if
let
tttV
=
lastView
{
tmpView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
tttV
.
snp
.
bottom
)
.
offset
(
12
)
make
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
YHOtherMultipleChoiceItemView
.
viewH
)
make
.
bottom
.
equalToSuperview
()
}
}
}
else
{
//中间
if
let
tttV
=
lastView
{
tmpView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
tttV
.
snp
.
bottom
)
.
offset
(
12
)
make
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
YHOtherMultipleChoiceItemView
.
viewH
)
}
}
}
lastView
=
tmpView
//对应的选项 view
let
optionView
=
YHSingleOptionalItemsView
()
optionView
.
dataModel
=
item
mutilHoldView
.
addSubview
(
optionView
)
optionView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
YHOtherMultipleChoiceItemView
.
viewH
)
//占位置
}
arrLanguageOptions
.
append
(
optionView
)
optionView
.
isHidden
=
true
}
}
}
func
updateUI
()
{
if
dataModel
.
count
>
0
{
for
(
_
,
item
)
in
arrLanguage
.
enumerated
()
{
item
.
snp
.
removeConstraints
()
}
for
(
_
,
item
)
in
arrLanguageOptions
.
enumerated
()
{
item
.
snp
.
removeConstraints
()
}
if
dataModel
.
count
==
3
{
var
lastView
:
UIView
?
var
offsetY
:
CGFloat
=
12.0
for
(
index
,
item
)
in
dataModel
.
enumerated
()
{
let
multiCheckView
=
arrLanguage
[
index
]
let
optionView
=
arrLanguageOptions
[
index
]
if
index
==
0
{
multiCheckView
.
snp
.
remakeConstraints
{
make
in
make
.
top
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
YHOtherMultipleChoiceItemView
.
viewH
)
}
if
item
.
select
{
//展示选择项
optionView
.
isHidden
=
false
optionView
.
snp
.
remakeConstraints
{
make
in
make
.
top
.
equalTo
(
multiCheckView
.
snp
.
bottom
)
.
offset
(
8
)
make
.
left
.
right
.
equalToSuperview
()
}
offsetY
=
8
lastView
=
optionView
}
else
{
optionView
.
isHidden
=
true
offsetY
=
12
lastView
=
multiCheckView
}
}
else
if
index
+
1
==
dataModel
.
count
{
if
let
tttView
=
lastView
{
if
item
.
select
{
//展示选择项
multiCheckView
.
snp
.
remakeConstraints
{
make
in
make
.
top
.
equalTo
(
tttView
.
snp
.
bottom
)
.
offset
(
offsetY
)
make
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
YHOtherMultipleChoiceItemView
.
viewH
)
}
optionView
.
isHidden
=
false
optionView
.
snp
.
remakeConstraints
{
make
in
make
.
top
.
equalTo
(
multiCheckView
.
snp
.
bottom
)
.
offset
(
8
)
make
.
left
.
right
.
equalToSuperview
()
make
.
bottom
.
equalToSuperview
()
}
offsetY
=
8
lastView
=
optionView
}
else
{
optionView
.
isHidden
=
true
multiCheckView
.
snp
.
remakeConstraints
{
make
in
make
.
top
.
equalTo
(
tttView
.
snp
.
bottom
)
.
offset
(
offsetY
)
make
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
YHOtherMultipleChoiceItemView
.
viewH
)
make
.
bottom
.
equalToSuperview
()
}
}
}
}
else
{
if
let
tttView
=
lastView
{
multiCheckView
.
snp
.
remakeConstraints
{
make
in
make
.
top
.
equalTo
(
tttView
.
snp
.
bottom
)
.
offset
(
offsetY
)
make
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
YHOtherMultipleChoiceItemView
.
viewH
)
}
if
item
.
select
{
//展示选择项
optionView
.
isHidden
=
false
optionView
.
snp
.
remakeConstraints
{
make
in
make
.
top
.
equalTo
(
multiCheckView
.
snp
.
bottom
)
.
offset
(
8
)
make
.
left
.
right
.
equalToSuperview
()
}
offsetY
=
8
lastView
=
optionView
}
else
{
optionView
.
isHidden
=
true
offsetY
=
12
lastView
=
multiCheckView
}
}
}
}
}
}
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/ServiceProcess(我的信息流程)/OtherInformation(其他信息)/V/YHOtherMultipleChoiceItemView.swift
0 → 100644
View file @
ac4879e8
//
// YHOtherLanguageItemsView.swift
// galaxy
//
// Created by davidhuangA on 2024/11/16.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHOtherMultipleChoiceItemView
:
UIView
{
static
let
viewH
:
CGFloat
=
52.0
override
init
(
frame
:
CGRect
)
{
super
.
init
(
frame
:
frame
)
setupUI
()
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
var
isSelected
:
Bool
=
false
{
didSet
{
setViewSelected
()
}
}
//数据结构
var
dataModel
:
LanguageDetailModel
?
{
didSet
{
updateUI
()
}
}
private
lazy
var
titleLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
textColor
=
.
mainTextColor
label
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
14
)
label
.
text
=
"中文"
label
.
numberOfLines
=
0
label
.
lineBreakMode
=
.
byCharWrapping
return
label
}()
private
lazy
var
checkImgV
:
UIImageView
=
{
let
view
=
UIImageView
()
view
.
image
=
UIImage
(
named
:
"other_multi_normal"
)
view
.
contentMode
=
.
scaleAspectFill
return
view
}()
typealias
Block
=
(
LanguageDetailModel
?)
->
()
var
block
:
Block
?
}
extension
YHOtherMultipleChoiceItemView
{
func
setupUI
()
{
addSubview
(
checkImgV
)
addSubview
(
titleLabel
)
layer
.
cornerRadius
=
3
layer
.
masksToBounds
=
true
checkImgV
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalTo
(
kMargin
)
make
.
width
.
height
.
equalTo
(
14
)
make
.
centerY
.
equalToSuperview
()
}
titleLabel
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalTo
(
checkImgV
.
snp
.
right
)
.
offset
(
8
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
kMargin
)
make
.
centerY
.
equalToSuperview
()
}
setViewSelected
()
let
tap
:
UITapGestureRecognizer
=
UITapGestureRecognizer
(
target
:
self
,
action
:
#selector(
tapItem(gestureRecognizer:)
)
)
addGestureRecognizer
(
tap
)
}
func
setViewSelected
()
{
if
isSelected
{
backgroundColor
=
UIColor
(
hexString
:
"#EBF0F9"
)
!
layer
.
borderWidth
=
1
layer
.
borderColor
=
UIColor
.
brandMainColor
.
cgColor
checkImgV
.
image
=
UIImage
(
named
:
"other_multi_check"
)
}
else
{
backgroundColor
=
.
contentBkgColor
layer
.
borderWidth
=
0
layer
.
borderColor
=
UIColor
.
clear
.
cgColor
checkImgV
.
image
=
UIImage
(
named
:
"other_multi_normal"
)
}
}
func
updateUI
()
{
guard
let
model
=
dataModel
else
{
return
}
titleLabel
.
text
=
model
.
name
isSelected
=
model
.
select
}
@objc
func
tapItem
(
gestureRecognizer
:
UITapGestureRecognizer
)
{
guard
let
model
=
dataModel
else
{
return
}
model
.
select
=
!
model
.
select
isSelected
=
model
.
select
self
.
block
?(
model
)
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/ServiceProcess(我的信息流程)/OtherInformation(其他信息)/V/YHOtherSingleChoiceItemView.swift
0 → 100644
View file @
ac4879e8
//
// YHOtherSingleChoiceItemView.swift
// galaxy
//
// Created by davidhuangA on 2024/11/16.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHOtherSingleChoiceItemView
:
UIView
{
override
init
(
frame
:
CGRect
)
{
super
.
init
(
frame
:
frame
)
setupUI
()
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
var
isSelected
:
Bool
=
false
{
didSet
{
setViewSelected
()
}
}
private
lazy
var
titleLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
textColor
=
.
mainTextColor
label
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
14
)
label
.
text
=
"相关语言国家授予的学位证及成绩单相关语言国家授予的学位证及成绩单"
label
.
numberOfLines
=
0
label
.
lineBreakMode
=
.
byCharWrapping
return
label
}()
private
lazy
var
descLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
textColor
=
UIColor
.
init
(
hex
:
0x8993A2
)
label
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
12
)
label
.
text
=
"(仅可尝试加分,此类文件加分以港府审批为准)"
label
.
numberOfLines
=
0
label
.
lineBreakMode
=
.
byCharWrapping
return
label
}()
private
lazy
var
checkImgV
:
UIImageView
=
{
let
view
=
UIImageView
()
view
.
image
=
UIImage
(
named
:
"other_single_normal"
)
view
.
contentMode
=
.
scaleAspectFill
return
view
}()
var
dataModel
:
LanguageOptionModel
?
{
didSet
{
updateUI
()
}
}
}
extension
YHOtherSingleChoiceItemView
{
func
setupUI
()
{
addSubview
(
checkImgV
)
addSubview
(
titleLabel
)
addSubview
(
descLabel
)
checkImgV
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
make
.
top
.
equalToSuperview
()
.
offset
(
2
)
make
.
width
.
height
.
equalTo
(
14
)
}
titleLabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalToSuperview
()
make
.
left
.
equalTo
(
checkImgV
.
snp
.
right
)
.
offset
(
8
)
make
.
right
.
equalToSuperview
()
make
.
height
.
greaterThanOrEqualTo
(
18
)
}
descLabel
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
titleLabel
.
snp
.
bottom
)
.
offset
(
2
)
make
.
left
.
equalTo
(
titleLabel
.
snp
.
left
)
make
.
right
.
equalTo
(
titleLabel
.
snp
.
right
)
make
.
bottom
.
equalToSuperview
()
}
setViewSelected
()
}
func
updateUI
()
{
guard
let
model
=
dataModel
else
{
return
}
titleLabel
.
text
=
model
.
name
descLabel
.
text
=
model
.
subname
isSelected
=
model
.
select
setViewSelected
()
}
func
setViewSelected
()
{
if
isSelected
{
checkImgV
.
image
=
UIImage
(
named
:
"other_single_check"
)
}
else
{
checkImgV
.
image
=
UIImage
(
named
:
"other_single_normal"
)
}
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/ServiceProcess(我的信息流程)/OtherInformation(其他信息)/V/YHSingleOptionalItemsView.swift
0 → 100644
View file @
ac4879e8
//
// YHSingleOptionalItemsView.swift
// galaxy
//
// Created by davidhuangA on 2024/11/16.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHSingleOptionalItemsView
:
UIView
{
//提示lable
private
lazy
var
noTextTipsLable
:
UILabel
=
{
let
label
=
UILabel
()
label
.
textColor
=
.
failColor
label
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
12
)
label
.
text
=
"请选择"
return
label
}()
//输入名称
private
lazy
var
languageTextField
:
UITextField
=
{
let
textField
=
UITextField
()
textField
.
backgroundColor
=
.
clear
textField
.
attributedPlaceholder
=
NSAttributedString
(
string
:
"请输入语言"
.
local
,
attributes
:
[
NSAttributedString
.
Key
.
foregroundColor
:
UIColor
(
hex
:
0xB9C1CC
)])
textField
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
14
)
textField
.
tintColor
=
UIColor
.
brandMainColor
textField
.
textColor
=
UIColor
.
mainTextColor
textField
.
clearButtonMode
=
.
whileEditing
textField
.
addTarget
(
self
,
action
:
#selector(
textFieldChanged(textField:)
)
,
for
:
.
editingChanged
)
textField
.
delegate
=
self
return
textField
}()
var
textFieldHoldView
:
UIView
=
{
let
view
=
UIView
()
view
.
backgroundColor
=
.
contentBkgColor
view
.
clipsToBounds
=
true
view
.
layer
.
cornerRadius
=
kCornerRadius3
return
view
}()
var
optionsHoldView
:
UIView
=
{
let
view
=
UIView
()
view
.
backgroundColor
=
.
contentBkgColor
view
.
clipsToBounds
=
true
view
.
layer
.
cornerRadius
=
kCornerRadius3
return
view
}()
override
init
(
frame
:
CGRect
)
{
super
.
init
(
frame
:
frame
)
setupUI
()
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
//数据结构
var
dataModel
:
LanguageDetailModel
?
{
didSet
{
updateUI
()
}
}
}
private
extension
YHSingleOptionalItemsView
{
func
setupUI
()
{
addSubview
(
textFieldHoldView
)
textFieldHoldView
.
isHidden
=
true
textFieldHoldView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
52
)
}
textFieldHoldView
.
addSubview
(
languageTextField
)
languageTextField
.
snp
.
makeConstraints
{
make
in
make
.
centerY
.
equalToSuperview
()
make
.
left
.
equalToSuperview
()
.
offset
(
kMargin
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
kMargin
)
}
addSubview
(
optionsHoldView
)
optionsHoldView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
textFieldHoldView
.
snp
.
bottom
)
.
offset
(
8
)
make
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
60
)
//for test hjl
make
.
bottom
.
equalToSuperview
()
}
//for test hjl
let
tmpOption
=
YHOtherSingleChoiceItemView
()
optionsHoldView
.
addSubview
(
tmpOption
)
tmpOption
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalToSuperview
()
.
offset
(
kMargin
)
make
.
left
.
equalToSuperview
()
.
offset
(
kMargin
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
kMargin
)
}
let
tmpOption1
=
YHOtherSingleChoiceItemView
()
tmpOption1
.
isSelected
=
true
optionsHoldView
.
addSubview
(
tmpOption1
)
tmpOption1
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
tmpOption
.
snp
.
bottom
)
.
offset
(
kMargin
)
make
.
left
.
equalToSuperview
()
.
offset
(
kMargin
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
kMargin
)
}
let
tmpOption2
=
YHOtherSingleChoiceItemView
()
optionsHoldView
.
addSubview
(
tmpOption2
)
tmpOption2
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
tmpOption1
.
snp
.
bottom
)
.
offset
(
kMargin
)
make
.
left
.
equalToSuperview
()
.
offset
(
kMargin
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
kMargin
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
kMargin
)
}
}
@objc
func
textFieldChanged
(
textField
:
UITextField
)
{
printLog
(
textField
.
text
)
}
func
updateUI
()
{
guard
let
model
=
dataModel
else
{
return
}
if
model
.
options
.
count
>
0
{
optionsHoldView
.
snp
.
removeConstraints
()
optionsHoldView
.
removeSubviews
()
if
model
.
id
==
3
{
textFieldHoldView
.
isHidden
=
false
optionsHoldView
.
snp
.
remakeConstraints
()
{
make
in
make
.
top
.
equalTo
(
textFieldHoldView
.
snp
.
bottom
)
.
offset
(
8
)
make
.
left
.
right
.
equalToSuperview
()
make
.
bottom
.
equalToSuperview
()
}
}
else
{
textFieldHoldView
.
isHidden
=
true
optionsHoldView
.
snp
.
remakeConstraints
()
{
make
in
make
.
top
.
equalToSuperview
()
make
.
left
.
right
.
equalToSuperview
()
make
.
bottom
.
equalToSuperview
()
}
}
var
lastView
:
UIView
?
for
(
index
,
item
)
in
model
.
options
.
enumerated
()
{
let
tmpOption
=
YHOtherSingleChoiceItemView
()
tmpOption
.
dataModel
=
item
optionsHoldView
.
addSubview
(
tmpOption
)
if
index
==
0
{
//第一个
tmpOption
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalToSuperview
()
.
offset
(
kMargin
)
make
.
left
.
equalToSuperview
()
.
offset
(
kMargin
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
kMargin
)
}
}
else
if
index
+
1
==
model
.
options
.
count
{
//最后一个
if
let
tttView
=
lastView
{
tmpOption
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
tttView
.
snp
.
bottom
)
.
offset
(
kMargin
)
make
.
left
.
equalToSuperview
()
.
offset
(
kMargin
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
kMargin
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
kMargin
)
}
}
}
else
{
//中间
if
let
tttView
=
lastView
{
tmpOption
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
tttView
.
snp
.
bottom
)
.
offset
(
kMargin
)
make
.
left
.
equalToSuperview
()
.
offset
(
kMargin
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
kMargin
)
}
}
}
lastView
=
tmpOption
}
}
}
}
extension
YHSingleOptionalItemsView
:
UITextFieldDelegate
{
func
textField
(
_
textField
:
UITextField
,
shouldChangeCharactersIn
range
:
NSRange
,
replacementString
string
:
String
)
->
Bool
{
if
string
.
isEmpty
==
true
{
// 点击删除
return
true
}
let
newText
=
(
textField
.
text
!
as
NSString
)
.
replacingCharacters
(
in
:
range
,
with
:
string
)
if
newText
.
count
>
30
{
return
false
}
return
true
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/QMAS(优才)/ServiceProcess(我的信息流程)/OtherInformation(其他信息)/VM/YHOtherInfoFillViewModel.swift
View file @
ac4879e8
...
@@ -10,6 +10,211 @@ import UIKit
...
@@ -10,6 +10,211 @@ import UIKit
class
YHOtherInfoFillViewModel
:
YHBaseViewModel
{
class
YHOtherInfoFillViewModel
:
YHBaseViewModel
{
var
otherInfoFillData
:
YHOtherInfoFillModel
?
var
otherInfoFillData
:
YHOtherInfoFillModel
?
/*
//语言枚举
const LANGUAGE_DETAIL = [
"data" => [
[
"id" => 1,
'name' => "中文",
"select" => 0,
"other_instructions" => "",
'child' => [
['id' => 99, "name" => "均不能提供", "select" => 0,],
['id' => 1, "name" => "母语(不用任何证明)", "select" => 0,],
['id' => 2, "name" => "《普通话水平测试》取得及格或以上成绩的证书", "select" => 0,],
['id' => 3, "name" => "《中国汉语水平考试》取得第三级或以上成绩的证书", "select" => 0,],
['id' => 4, "name" => "其他证件(仅尝试加分)", "select" => 0,],
],
],
[
"id" => 2,
'name' => "英文",
"select" => 0,
"other_instructions" => "",
'child' => [
['id' => 99, "name" => "均不能提供", "select" => 0,],
['id' => 1, "name" => "母语(不用任何证明)", "select" => 0,],
['id' => 2, "name" => "雅思(ELTS)考试取得7.0或以上成绩的成绩单", "select" => 0,],
['id' => 3, "name" => "托福(TOEFL)网上考试取得94分或以上成绩的成绩单", "select" => 0,],
['id' => 4, "name" => "全国大学英语六级考试(CET-6)取得520分或以上成绩的证书", "select" => 0,],
['id' => 5, "name" => "英语授课证明", "select" => 0,],
['id' => 6, "name" => "英语国家授予的学位证及成绩单", "select" => 0,],
['id' => 7, "name" => "英语相关专业学位证 、 毕业证、 学位认证报告", "select" => 0,],
['id' => 8, "name" => "其他证件(仅尝试加分)", "select" => 0,],
],
],
[
"id" => 3,
'name' => "其他",
"select" => 0,
"other_instructions" => "",
'child' => [
['id' => 99, "name" => "均不能提供", "select" => 0,],
['id' => 1, "name" => "母语", "select" => 0,],
['id' => 2, "name" => "授课语言证明]", "select" => 0,],
['id' => 3, "name" => "相关语言国家授予的学位证及成绩单", "select" => 0,],
['id' => 4, "name" => "该语言相关专业学位证 、 毕业证、 学位认证报告", "select" => 0,],
['id' => 5, "name" => "官方语言成绩单", "select" => 0,],
],
],
],
];
*/
static
let
languageJsonData
:
[[
String
:
Any
]]
=
[
[
"id"
:
1
,
"name"
:
"中文"
,
"select"
:
0
,
"other_instructions"
:
""
,
"options"
:[
[
"id"
:
1
,
"name"
:
"母语(不用任何证明)"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
2
,
"name"
:
"《普通话水平测试》取得及格或以上成绩的证书"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
3
,
"name"
:
"《中国汉语水平考试》取得第三级或以上成绩的证书"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
4
,
"name"
:
"其他证件"
,
"select"
:
0
,
"subname"
:
"(仅可尝试加分,此类文件加分以港府审批为准)"
,
"highlight"
:
""
],
[
"id"
:
99
,
"name"
:
"以上均不能提供"
,
"select"
:
0
,
"subname"
:
"(或将导致您的该语言能力不被认可,请尽可能准备以上材料并修改此选项)"
,
"highlight"
:
"不被认可"
],
]
],
[
"id"
:
2
,
"name"
:
"英文"
,
"select"
:
0
,
"other_instructions"
:
""
,
"options"
:[
[
"id"
:
1
,
"name"
:
"母语(不用任何证明)"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
2
,
"name"
:
"雅思(ELTS)考试取得7.0或以上成绩的成绩单"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
3
,
"name"
:
"托福(TOEFL)网上考试取得94分或以上成绩的成绩单"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
4
,
"name"
:
"全国大学英语六级考试(CET-6)取得520分或以上成绩的证书"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
5
,
"name"
:
"英语授课证明"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
6
,
"name"
:
"英语国家授予的学位证及成绩单"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
7
,
"name"
:
"英语相关专业学位证 、 毕业证、 学位认证报告"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
8
,
"name"
:
"其他证明"
,
"select"
:
0
,
"subname"
:
"(仅可尝试加分,此类文件加分以港府审批为准)"
,
"highlight"
:
""
],
[
"id"
:
99
,
"name"
:
"以上均不能提供"
,
"select"
:
0
,
"subname"
:
"(或将导致您的该语言能力不被认可,请尽可能准备以上材料并修改此选项)"
,
"highlight"
:
"不被认可"
],
]
],
[
"id"
:
3
,
"name"
:
"其他"
,
"select"
:
0
,
"other_instructions"
:
""
,
"options"
:[
[
"id"
:
1
,
"name"
:
"母语"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
2
,
"name"
:
"授课语言证明"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
3
,
"name"
:
"相关语言国家授予的学位证及成绩单"
,
"select"
:
0
,
"subname"
:
""
,
"highlight"
:
""
],
[
"id"
:
4
,
"name"
:
"其他证件"
,
"select"
:
0
,
"subname"
:
"该语言相关专业学位证 、 毕业证、 学位认证报告"
,
"highlight"
:
""
],
[
"id"
:
5
,
"name"
:
"其他证件"
,
"select"
:
0
,
"subname"
:
"官方语言成绩单"
,
"highlight"
:
""
],
[
"id"
:
6
,
"name"
:
"其他证明"
,
"select"
:
0
,
"subname"
:
"(仅可尝试加分,此类文件加分以港府审批为准)"
,
"highlight"
:
""
],
[
"id"
:
99
,
"name"
:
"以上均不能提供"
,
"select"
:
0
,
"subname"
:
"(或将导致您的该语言能力不被认可,请尽可能准备以上材料并修改此选项)"
,
"highlight"
:
"不被认可"
],
]
],
]
}
}
extension
YHOtherInfoFillViewModel
{
extension
YHOtherInfoFillViewModel
{
...
@@ -28,15 +233,15 @@ extension YHOtherInfoFillViewModel {
...
@@ -28,15 +233,15 @@ extension YHOtherInfoFillViewModel {
return
return
}
}
if
resultModel
.
residences
.
isEmpty
{
//
if resultModel.residences.isEmpty {
resultModel
.
residences
.
append
(
Residence
())
//
resultModel.residences.append(Residence())
}
//
}
self
.
otherInfoFillData
=
resultModel
self
.
otherInfoFillData
=
resultModel
//根据返回值 组装 真实的数据
handleData
()
handleData
()
//根据返回值 组装 真实的数据
callBackBlock
(
true
,
nil
)
callBackBlock
(
true
,
nil
)
}
else
{
}
else
{
...
@@ -74,19 +279,47 @@ extension YHOtherInfoFillViewModel {
...
@@ -74,19 +279,47 @@ extension YHOtherInfoFillViewModel {
extension
YHOtherInfoFillViewModel
{
extension
YHOtherInfoFillViewModel
{
func
handleData
()
{
func
handleData
()
{
if
let
language
=
self
.
otherInfoFillData
?
.
language_detail
{
// if let language = self.otherInfoFillData?.language_detail {
if
language
.
level
>
0
{
// if language.level > 0 {
let
target
=
String
(
language
.
level
)
// let target = String(language.level)
for
(
_
,
item
)
in
YHConstantArrayData
.
arrLanguage
.
enumerated
()
{
// for(_,item) in YHConstantArrayData.arrLanguage.enumerated() {
//
if
target
==
item
[
"id"
]
{
// if target == item["id"] {
language
.
levelDes
=
item
[
"title"
]
??
""
// language.levelDes = item["title"] ?? ""
break
// break
// }
// }
// }
// }
//语言 根据 返回值 进行数据结构
if
let
arr
=
[
LanguageDetailModel
]
.
deserialize
(
from
:
YHOtherInfoFillViewModel
.
languageJsonData
)
{
if
let
arrT
=
self
.
otherInfoFillData
?
.
language_detail_new
,
arrT
.
count
>
0
{
for
(
index
,
item
)
in
arrT
.
enumerated
()
{
for
(
ii
,
tt
)
in
arr
.
enumerated
()
{
if
item
.
first_select
==
tt
.
id
{
tt
.
select
=
true
let
arrTTT
=
item
.
second_select
.
split
(
separator
:
","
)
if
arrTTT
.
count
>
0
{
let
tmpId
:
Int
=
Int
(
arrTTT
[
0
])
??
0
for
(
iii
,
ttt
)
in
tt
.
options
.
enumerated
()
{
if
tmpId
==
ttt
.
id
{
ttt
.
select
=
true
}
}
}
}
}
}
}
}
}
}
self
.
otherInfoFillData
?
.
language_detail_new_data
=
arr
}
else
{
self
.
otherInfoFillData
?
.
language_detail_new_data
=
[]
}
}
if
let
profession
=
self
.
otherInfoFillData
?
.
profession
{
if
let
profession
=
self
.
otherInfoFillData
?
.
profession
{
if
profession
.
option
>
0
{
if
profession
.
option
>
0
{
let
target
=
String
(
profession
.
option
)
let
target
=
String
(
profession
.
option
)
...
...
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/其他信息/other_multi_check.imageset/Contents.json
0 → 100644
View file @
ac4879e8
{
"images"
:
[
{
"idiom"
:
"universal"
,
"scale"
:
"1x"
},
{
"filename"
:
"Group 33333990@2x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"2x"
},
{
"filename"
:
"Group 33333990@3x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"3x"
}
],
"info"
:
{
"author"
:
"xcode"
,
"version"
:
1
}
}
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/其他信息/other_multi_check.imageset/Group 33333990@2x.png
0 → 100644
View file @
ac4879e8
530 Bytes
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/其他信息/other_multi_check.imageset/Group 33333990@3x.png
0 → 100644
View file @
ac4879e8
720 Bytes
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/其他信息/other_multi_normal.imageset/Contents.json
0 → 100644
View file @
ac4879e8
{
"images"
:
[
{
"idiom"
:
"universal"
,
"scale"
:
"1x"
},
{
"filename"
:
"Rectangle 2957@2x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"2x"
},
{
"filename"
:
"Rectangle 2957@3x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"3x"
}
],
"info"
:
{
"author"
:
"xcode"
,
"version"
:
1
}
}
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/其他信息/other_multi_normal.imageset/Rectangle 2957@2x.png
0 → 100644
View file @
ac4879e8
639 Bytes
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/其他信息/other_multi_normal.imageset/Rectangle 2957@3x.png
0 → 100644
View file @
ac4879e8
861 Bytes
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/其他信息/other_single_check.imageset/Contents.json
0 → 100644
View file @
ac4879e8
{
"images"
:
[
{
"idiom"
:
"universal"
,
"scale"
:
"1x"
},
{
"filename"
:
"Group 33333990@2x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"2x"
},
{
"filename"
:
"Group 33333990@3x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"3x"
}
],
"info"
:
{
"author"
:
"xcode"
,
"version"
:
1
}
}
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/其他信息/other_single_check.imageset/Group 33333990@2x.png
0 → 100644
View file @
ac4879e8
783 Bytes
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/其他信息/other_single_check.imageset/Group 33333990@3x.png
0 → 100644
View file @
ac4879e8
1.05 KB
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/其他信息/other_single_normal.imageset/Contents.json
0 → 100644
View file @
ac4879e8
{
"images"
:
[
{
"idiom"
:
"universal"
,
"scale"
:
"1x"
},
{
"filename"
:
"Rectangle 2956@2x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"2x"
},
{
"filename"
:
"Rectangle 2956@3x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"3x"
}
],
"info"
:
{
"author"
:
"xcode"
,
"version"
:
1
}
}
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/其他信息/other_single_normal.imageset/Rectangle 2956@2x.png
0 → 100644
View file @
ac4879e8
904 Bytes
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/其他信息/other_single_normal.imageset/Rectangle 2956@3x.png
0 → 100644
View file @
ac4879e8
1.12 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