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
711a9289
Commit
711a9289
authored
Mar 14, 2024
by
pete谢兆麟
Browse files
Options
Browse Files
Download
Plain Diff
Merge commit '
6d320a31
' into xiezhaolin
parents
e9ce944f
6d320a31
Changes
37
Hide whitespace changes
Inline
Side-by-side
Showing
37 changed files
with
743 additions
and
141 deletions
+743
-141
project.pbxproj
galaxy/galaxy.xcodeproj/project.pbxproj
+26
-6
AppDelegate.swift
galaxy/galaxy/AppDelegate.swift
+14
-4
YHInformationPerfectListVC.swift
...telligentService(服务中心)/C/YHInformationPerfectListVC.swift
+5
-1
YHServiceCenterMainViewController.swift
...ntService(服务中心)/C/YHServiceCenterMainViewController.swift
+3
-5
YHContactMainItemStatusModel.swift
...lligentService(服务中心)/M/YHContactMainItemStatusModel.swift
+2
-2
YHCertificateFilterItemCell.swift
.../MyCertificates(我的证书)/V/YHCertificateFilterItemCell.swift
+24
-10
YHCertificateFilterView.swift
...务中心)/MyCertificates(我的证书)/V/YHCertificateFilterView.swift
+69
-11
YHCertificateUploadFailTipsView.swift
...ertificates(我的证书)/V/YHCertificateUploadFailTipsView.swift
+142
-0
YHEducationDetailVC.swift
...ation&Qualification(学历专业资格填写)/C/YHEducationDetailVC.swift
+55
-5
YHQualificationDetailVC.swift
...n&Qualification(学历专业资格填写)/C/YHQualificationDetailVC.swift
+33
-2
YHCollegeSearchBar.swift
...cation&Qualification(学历专业资格填写)/V/YHCollegeSearchBar.swift
+3
-0
YHCertificateInfoController.swift
...Certificates(证书上传和证书信息)/YHCertificateInfoController.swift
+48
-7
YHChildBasicInfoVC.swift
...amilyMember(家庭成员信息表)/C/Child(子女)/YHChildBasicInfoVC.swift
+27
-5
YHBrotherInfoVC.swift
...庭成员信息表)/C/Parents&Brothers(父母和兄弟姐妹)/YHBrotherInfoVC.swift
+13
-2
YHParentInfoVC.swift
...家庭成员信息表)/C/Parents&Brothers(父母和兄弟姐妹)/YHParentInfoVC.swift
+13
-2
YHSpouseBasicInfoVC.swift
...ilyMember(家庭成员信息表)/C/Spouse(配偶)/YHSpouseBasicInfoVC.swift
+31
-5
YHFamilyMemberInfoListVC.swift
...程)/FamilyMember(家庭成员信息表)/C/YHFamilyMemberInfoListVC.swift
+17
-14
YHFormItemEnterDetailCell.swift
...)/FamilyMember(家庭成员信息表)/V/YHFormItemEnterDetailCell.swift
+36
-4
YHFormItemInputTextCell.swift
...流程)/FamilyMember(家庭成员信息表)/V/YHFormItemInputTextCell.swift
+1
-1
YHItemView.swift
...信息流程)/MainApplicantInformation(主申请人信息)/V/YHItemView.swift
+17
-5
YHMainApplicantInformationViewModel.swift
...tion(主申请人信息)/VM/YHMainApplicantInformationViewModel.swift
+4
-2
YHOtherTextViewItemView.swift
...程)/OtherInformation(其他信息)/V/YHOtherTextViewItemView.swift
+1
-1
YHPreviewViewModel.swift
...的信息流程)/PersonInfoList(个人信息预览)/VM/YHPreviewViewModel.swift
+8
-1
YHCompanySelectViewController.swift
...orkExperience(工作经验)/C/YHCompanySelectViewController.swift
+10
-0
YHWorkIntroductionViewController.swift
...Experience(工作经验)/C/YHWorkIntroductionViewController.swift
+4
-0
YHWorkExperienceItemView.swift
...流程)/WorkExperience(工作经验)/V/YHWorkExperienceItemView.swift
+22
-2
YHInformationFillTipsAlertView.swift
...igentService(服务中心)/V/YHInformationFillTipsAlertView.swift
+5
-5
YHInformationFillTipsCell.swift
...ntelligentService(服务中心)/V/YHInformationFillTipsCell.swift
+5
-5
YHLoginTipsView.swift
.../Modules/IntelligentService(服务中心)/V/YHLoginTipsView.swift
+33
-1
YHServiceCenterMainViewModel.swift
...ligentService(服务中心)/VM/YHServiceCenterMainViewModel.swift
+28
-30
YHMyViewController.swift
...alaxy/Classes/Modules/Mine(我的)/C/YHMyViewController.swift
+15
-0
YHConstantArrayData.swift
galaxy/galaxy/Classes/Tools/Helper/YHConstantArrayData.swift
+3
-3
Contents.json
...viceCenter/我的证书/my_cer_upload_fail.imageset/Contents.json
+22
-0
Group 3034@2x.png
...Center/我的证书/my_cer_upload_fail.imageset/Group 3034@2x.png
+0
-0
Group 3034@3x.png
...Center/我的证书/my_cer_upload_fail.imageset/Group 3034@3x.png
+0
-0
DIN Alternate Bold.ttf
galaxy/galaxy/Res/Font/DIN Alternate Bold.ttf
+0
-0
Info.plist
galaxy/galaxy/Res/Info.plist
+4
-0
No files found.
galaxy/galaxy.xcodeproj/project.pbxproj
View file @
711a9289
...
...
@@ -13,6 +13,7 @@
0435FA832BA2DEB100024EAE
/* YHCardButton.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
0435FA822BA2DEB100024EAE
/* YHCardButton.swift */
;
};
044867B42BA1953B00DFAD4A
/* YHCertificateFilterView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044867B32BA1953B00DFAD4A
/* YHCertificateFilterView.swift */
;
};
044867B62BA1A03800DFAD4A
/* YHCertificateFilterItemCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044867B52BA1A03800DFAD4A
/* YHCertificateFilterItemCell.swift */
;
};
044867B82BA1C75700DFAD4A
/* YHCertificateUploadFailTipsView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
044867B72BA1C75700DFAD4A
/* YHCertificateUploadFailTipsView.swift */
;
};
045EEE792B9F171A0022A143
/* YHPreviewViewModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045EED9A2B9F171A0022A143
/* YHPreviewViewModel.swift */
;
};
045EEE7A2B9F171A0022A143
/* YHPreviewForOtherInfoModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045EED9C2B9F171A0022A143
/* YHPreviewForOtherInfoModel.swift */
;
};
045EEE7B2B9F171A0022A143
/* YHPersonInfoCellModel2.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
045EED9D2B9F171A0022A143
/* YHPersonInfoCellModel2.swift */
;
};
...
...
@@ -307,6 +308,7 @@
A5C5B32D2B57D66000A7C5D1
/* YHBbxCollectionViewCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5C5B32C2B57D66000A7C5D1
/* YHBbxCollectionViewCell.swift */
;
};
A5D6AB1B2B46A1CC001C10A5
/* YHHomeModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5D6AB1A2B46A1CC001C10A5
/* YHHomeModel.swift */
;
};
A5D6AB1D2B46AAFB001C10A5
/* YHHomePageViewModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5D6AB1C2B46AAFB001C10A5
/* YHHomePageViewModel.swift */
;
};
A5E69D512BA304D400411932
/* DIN Alternate Bold.ttf in Resources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5E69D502BA304D400411932
/* DIN Alternate Bold.ttf */
;
};
A5F8AC082B9F414000A21EFA
/* YHCustomTextView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5F8AC072B9F414000A21EFA
/* YHCustomTextView.swift */
;
};
A5FD63BD2B623C2C00D1D9DA
/* YHInformationPerfectListVC.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5FD63BC2B623C2C00D1D9DA
/* YHInformationPerfectListVC.swift */
;
};
A5FD63BF2B6250BC00D1D9DA
/* YHInformationPerfectCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A5FD63BE2B6250BC00D1D9DA
/* YHInformationPerfectCell.swift */
;
};
...
...
@@ -356,6 +358,7 @@
0435FA822BA2DEB100024EAE
/* YHCardButton.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHCardButton.swift
;
sourceTree
=
"<group>"
;
};
044867B32BA1953B00DFAD4A
/* YHCertificateFilterView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHCertificateFilterView.swift
;
sourceTree
=
"<group>"
;
};
044867B52BA1A03800DFAD4A
/* YHCertificateFilterItemCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHCertificateFilterItemCell.swift
;
sourceTree
=
"<group>"
;
};
044867B72BA1C75700DFAD4A
/* YHCertificateUploadFailTipsView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHCertificateUploadFailTipsView.swift
;
sourceTree
=
"<group>"
;
};
045EED9A2B9F171A0022A143
/* YHPreviewViewModel.swift */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHPreviewViewModel.swift
;
sourceTree
=
"<group>"
;
};
045EED9C2B9F171A0022A143
/* YHPreviewForOtherInfoModel.swift */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHPreviewForOtherInfoModel.swift
;
sourceTree
=
"<group>"
;
};
045EED9D2B9F171A0022A143
/* YHPersonInfoCellModel2.swift */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHPersonInfoCellModel2.swift
;
sourceTree
=
"<group>"
;
};
...
...
@@ -655,6 +658,7 @@
A5C5B32C2B57D66000A7C5D1
/* YHBbxCollectionViewCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHBbxCollectionViewCell.swift
;
sourceTree
=
"<group>"
;
};
A5D6AB1A2B46A1CC001C10A5
/* YHHomeModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHHomeModel.swift
;
sourceTree
=
"<group>"
;
};
A5D6AB1C2B46AAFB001C10A5
/* YHHomePageViewModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHHomePageViewModel.swift
;
sourceTree
=
"<group>"
;
};
A5E69D502BA304D400411932
/* DIN Alternate Bold.ttf */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
file
;
path
=
"DIN Alternate Bold.ttf"
;
sourceTree
=
"<group>"
;
};
A5F8AC072B9F414000A21EFA
/* YHCustomTextView.swift */
=
{
isa
=
PBXFileReference
;
fileEncoding
=
4
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHCustomTextView.swift
;
sourceTree
=
"<group>"
;
};
A5FD63BC2B623C2C00D1D9DA
/* YHInformationPerfectListVC.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHInformationPerfectListVC.swift
;
sourceTree
=
"<group>"
;
};
A5FD63BE2B6250BC00D1D9DA
/* YHInformationPerfectCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHInformationPerfectCell.swift
;
sourceTree
=
"<group>"
;
};
...
...
@@ -1342,6 +1346,7 @@
04A671612BA058DE00C1FB91
/* YHCertificateEditSheetView.swift */
,
048097702BA18D66000B9DCA
/* YHCertificateSearchBar.swift */
,
044867B32BA1953B00DFAD4A
/* YHCertificateFilterView.swift */
,
044867B72BA1C75700DFAD4A
/* YHCertificateUploadFailTipsView.swift */
,
04A6715F2BA0280800C1FB91
/* YHFileRenameInputView.swift */
,
04A6715D2B9FFCA700C1FB91
/* YHCertificateNameCell.swift */
,
0480976A2BA15269000B9DCA
/* YHCertificateInfoCell.swift */
,
...
...
@@ -1630,6 +1635,7 @@
A5ACE9142B4564F7002C94D2
/* Res */
=
{
isa
=
PBXGroup
;
children
=
(
A5E69D4F2BA304D400411932
/* Font */
,
A5C5B2ED2B4F9B8800A7C5D1
/* Localizable.xcstrings */
,
04808C022B4686510056D53C
/* Frameworks */
,
A5573EDA2B317C0000D98EC0
/* Assets.xcassets */
,
...
...
@@ -1802,6 +1808,14 @@
path
=
VM
;
sourceTree
=
"<group>"
;
};
A5E69D4F2BA304D400411932
/* Font */
=
{
isa
=
PBXGroup
;
children
=
(
A5E69D502BA304D400411932
/* DIN Alternate Bold.ttf */
,
);
path
=
Font
;
sourceTree
=
"<group>"
;
};
/* End PBXGroup section */
/* Begin PBXNativeTarget section */
...
...
@@ -1920,6 +1934,7 @@
045EEF182B9F171A0022A143
/* area.plist in Resources */
,
A51044182B493675006B60BB
/* README.md in Resources */
,
A5573EDB2B317C0000D98EC0
/* Assets.xcassets in Resources */
,
A5E69D512BA304D400411932
/* DIN Alternate Bold.ttf in Resources */
,
);
runOnlyForDeploymentPostprocessing
=
0
;
};
...
...
@@ -1994,6 +2009,7 @@
045EEEF02B9F171A0022A143
/* YHChildPrimaryInfoVC.swift in Sources */
,
0468D4202B49320900CFB916
/* YHVerificationCodeLoginController.swift in Sources */
,
045EEEF62B9F171A0022A143
/* YHSpousePrimaryInfoVC.swift in Sources */
,
044867B82BA1C75700DFAD4A
/* YHCertificateUploadFailTipsView.swift in Sources */
,
045EEF002B9F171A0022A143
/* YHFormItemEnterDetailCell.swift in Sources */
,
A5ACE9362B4564F7002C94D2
/* YHNetworkStatusManager.swift in Sources */
,
045EEEEF2B9F171A0022A143
/* YHCertificateInfoController.swift in Sources */
,
...
...
@@ -2443,7 +2459,7 @@
CODE_SIGN_IDENTITY
=
"Apple Development"
;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]"
=
"iPhone Developer"
;
CODE_SIGN_STYLE
=
Manual
;
CURRENT_PROJECT_VERSION
=
5
;
CURRENT_PROJECT_VERSION
=
1
;
DEVELOPMENT_TEAM
=
""
;
"DEVELOPMENT_TEAM[sdk=iphoneos*]"
=
RXHYW88XR7
;
ENABLE_USER_SCRIPT_SANDBOXING
=
NO
;
...
...
@@ -2463,7 +2479,7 @@
"$(inherited)"
,
"@executable_path/Frameworks"
,
);
MARKETING_VERSION
=
0.1.
8
;
MARKETING_VERSION
=
0.1.
9
;
PRODUCT_BUNDLE_IDENTIFIER
=
com.intelligence.galaxy
;
PRODUCT_NAME
=
"$(TARGET_NAME)"
;
PROVISIONING_PROFILE_SPECIFIER
=
""
;
...
...
@@ -2485,7 +2501,7 @@
CODE_SIGN_IDENTITY
=
"Apple Development"
;
"CODE_SIGN_IDENTITY[sdk=iphoneos*]"
=
"iPhone Developer"
;
CODE_SIGN_STYLE
=
Manual
;
CURRENT_PROJECT_VERSION
=
5
;
CURRENT_PROJECT_VERSION
=
1
;
DEVELOPMENT_TEAM
=
""
;
"DEVELOPMENT_TEAM[sdk=iphoneos*]"
=
RXHYW88XR7
;
ENABLE_USER_SCRIPT_SANDBOXING
=
NO
;
...
...
@@ -2505,7 +2521,7 @@
"$(inherited)"
,
"@executable_path/Frameworks"
,
);
MARKETING_VERSION
=
0.1.
8
;
MARKETING_VERSION
=
0.1.
9
;
PRODUCT_BUNDLE_IDENTIFIER
=
com.intelligence.galaxy
;
PRODUCT_NAME
=
"$(TARGET_NAME)"
;
PROVISIONING_PROFILE_SPECIFIER
=
""
;
...
...
@@ -2559,12 +2575,14 @@
isa
=
XCBuildConfiguration
;
buildSettings
=
{
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES
=
YES
;
CODE_SIGN_STYLE
=
Automatic
;
CODE_SIGN_STYLE
=
Manual
;
CURRENT_PROJECT_VERSION
=
1
;
DEVELOPMENT_TEAM
=
""
;
GENERATE_INFOPLIST_FILE
=
YES
;
MARKETING_VERSION
=
1.0
;
PRODUCT_BUNDLE_IDENTIFIER
=
com.galaxy.cn.galaxyUITests
;
PRODUCT_NAME
=
"$(TARGET_NAME)"
;
PROVISIONING_PROFILE_SPECIFIER
=
""
;
SWIFT_EMIT_LOC_STRINGS
=
NO
;
SWIFT_VERSION
=
5.0
;
TARGETED_DEVICE_FAMILY
=
"1,2"
;
...
...
@@ -2576,12 +2594,14 @@
isa
=
XCBuildConfiguration
;
buildSettings
=
{
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES
=
YES
;
CODE_SIGN_STYLE
=
Automatic
;
CODE_SIGN_STYLE
=
Manual
;
CURRENT_PROJECT_VERSION
=
1
;
DEVELOPMENT_TEAM
=
""
;
GENERATE_INFOPLIST_FILE
=
YES
;
MARKETING_VERSION
=
1.0
;
PRODUCT_BUNDLE_IDENTIFIER
=
com.galaxy.cn.galaxyUITests
;
PRODUCT_NAME
=
"$(TARGET_NAME)"
;
PROVISIONING_PROFILE_SPECIFIER
=
""
;
SWIFT_EMIT_LOC_STRINGS
=
NO
;
SWIFT_VERSION
=
5.0
;
TARGETED_DEVICE_FAMILY
=
"1,2"
;
...
...
galaxy/galaxy/AppDelegate.swift
View file @
711a9289
...
...
@@ -44,7 +44,17 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
YHLoginManager
.
shared
.
loadLocalUserInfoData
()
// YHAnalytics.analyticsStart(launchOptions: launchOptions)
// var i = 0
// for family: String in UIFont.familyNames {
// print("\(i)---项目字体---\(family)")
// for names: String in UIFont.fontNames(forFamilyName: family) {
// print("== \(names)")
// }
// i += 1
// }
return
true
}
...
...
@@ -71,7 +81,7 @@ extension AppDelegate {
//1.数据解析
#if DEBUG
// SmartConfig.debugMode = .verbose
// SmartConfig.debugMode = .verbose
SmartConfig
.
debugMode
=
.
none
//for test hjl
#else
SmartConfig
.
debugMode
=
.
none
...
...
@@ -124,7 +134,7 @@ extension AppDelegate {
let
tabBarController
=
YHTabBarViewController
()
let
v0
=
YHNavigationController
(
rootVC
:
YHHomeViewController
())
// let v0 = YHNavigationController(rootVC:YHPersonInformMainViewController())//for test hjl
// let v0 = YHNavigationController(rootVC:YHPersonInformMainViewController())//for test hjl
let
v1
=
YHNavigationController
(
rootVC
:
YHServiceCenterMainViewController
())
let
v2
=
YHNavigationController
(
rootVC
:
YHMyViewController
())
...
...
@@ -133,7 +143,7 @@ extension AppDelegate {
v1
.
tabBarItem
=
ESTabBarItem
.
init
(
YHBasicContentView
(),
title
:
"服务中心"
,
image
:
UIImage
(
named
:
"home"
),
selectedImage
:
UIImage
(
named
:
"home_1"
))
v2
.
tabBarItem
=
ESTabBarItem
.
init
(
YHBasicContentView
(),
title
:
"我的"
,
image
:
UIImage
(
named
:
"find"
),
selectedImage
:
UIImage
(
named
:
"find_1"
))
tabBarController
.
viewControllers
=
[
v0
,
v1
,
v2
]
// tabBarController.viewControllers = [v1,v2] for test hjl 配合测试同学做自动化测试 Moon 2023.03.12
// tabBarController.viewControllers = [v1,v2] for test hjl 配合测试同学做自动化测试 Moon 2023.03.12
tabBarController
.
tabBar
.
backgroundColor
=
.
white
window
=
UIWindow
(
frame
:
UIScreen
.
main
.
bounds
)
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/C/YHInformationPerfectListVC.swift
View file @
711a9289
...
...
@@ -23,7 +23,11 @@ class YHInformationPerfectListVC: YHBaseViewController {
if
hasSubmitFlag
==
true
{
headerTitleDesLable
.
text
=
"您已提交信息表"
}
else
{
headerTitleDesLable
.
text
=
"您好,"
+
(
serviceCenterMainReqVM
.
informationFillStepModel
?
.
applicantName
??
"-"
)
var
name
=
""
if
let
applicant
=
serviceCenterMainReqVM
.
informationFillStepModel
{
name
=
applicant
.
applicantName
.
defaultStringIfEmpty
(
detaultValue
:
"尊敬的客户"
)
}
headerTitleDesLable
.
text
=
"您好,"
+
name
}
}
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/C/YHServiceCenterMainViewController.swift
View file @
711a9289
...
...
@@ -97,17 +97,18 @@ extension YHServiceCenterMainViewController {
make
.
height
.
equalTo
(
216
)
}
view
.
addSubview
(
loginTipsView
)
loginTipsView
.
snp
.
makeConstraints
{
make
in
make
.
centerX
.
equalToSuperview
()
make
.
centerY
.
equalToSuperview
()
.
offset
(
-
64
)
make
.
centerY
.
equalToSuperview
()
make
.
width
.
equalTo
(
KScreenWidth
)
}
view
.
addSubview
(
noDataView
)
noDataView
.
snp
.
makeConstraints
{
make
in
make
.
centerX
.
equalToSuperview
()
make
.
centerY
.
equalToSuperview
()
.
offset
(
-
64
)
make
.
centerY
.
equalToSuperview
()
make
.
width
.
equalTo
(
KScreenWidth
)
}
...
...
@@ -124,12 +125,9 @@ extension YHServiceCenterMainViewController {
self
.
homeTableView
.
isHidden
=
true
self
.
noDataView
.
isHidden
=
false
NotificationCenter
.
default
.
addObserver
(
self
,
selector
:
#selector(
loginSuccess
)
,
name
:
YhConstant
.
YhNotification
.
didLoginSuccessNotifiction
,
object
:
nil
)
NotificationCenter
.
default
.
addObserver
(
self
,
selector
:
#selector(
logoutSuccess
)
,
name
:
YhConstant
.
YhNotification
.
didLogoutSuccessNotifiction
,
object
:
nil
)
}
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/M/YHContactMainItemStatusModel.swift
View file @
711a9289
...
...
@@ -14,10 +14,10 @@ class YHContactMainItemStatusModel {
didSet
{
if
type
==
1
{
iconName
=
"service_center_sfsq_xxws_icon"
itemName
=
"
信息完善
"
itemName
=
"
我的信息
"
}
else
if
type
==
2
{
iconName
=
"service_center_sfsq_zlsc_icon"
itemName
=
"
证件上传
"
itemName
=
"
我的证件
"
}
else
if
type
==
3
{
iconName
=
"service_center_sfsq_wdpf_icon"
itemName
=
"我的评分"
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/MyCertificates(我的证书)/V/YHCertificateFilterItemCell.swift
View file @
711a9289
...
...
@@ -11,15 +11,34 @@ import UIKit
class
YHCertificateFilterItemCell
:
UICollectionViewCell
{
static
let
cellReuseIdentifier
=
"YHCertificateFilterItemCell"
private
let
titleSelectColor
=
UIColor
.
brandMainColor
private
let
titleDefaultColor
=
UIColor
.
mainTextColor
private
let
btnSelectFont
=
UIFont
.
PFSC_M
(
ofSize
:
13
)
private
let
btnDefaultFont
=
UIFont
.
PFSC_R
(
ofSize
:
13
)
var
title
:
String
?
{
didSet
{
contentBtn
.
setTitle
(
title
,
for
:
.
normal
)
}
}
var
isSelect
:
Bool
=
false
{
didSet
{
contentBtn
.
layer
.
borderColor
=
(
isSelect
?
titleSelectColor
:
.
clear
)
.
cgColor
contentBtn
.
setTitleColor
((
isSelect
?
titleSelectColor
:
titleDefaultColor
),
for
:
.
normal
)
contentBtn
.
titleLabel
?
.
font
=
(
isSelect
?
btnSelectFont
:
btnDefaultFont
)
}
}
lazy
var
contentBtn
:
UIButton
=
{
let
btn
=
UIButton
()
btn
.
setTitle
(
"
证件
"
,
for
:
.
normal
)
btn
.
titleLabel
?
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
14
)
btn
.
setTitleColor
(
UIColor
.
mainTex
tColor
,
for
:
.
normal
)
btn
.
setTitle
(
""
,
for
:
.
normal
)
btn
.
titleLabel
?
.
font
=
btnDefaultFont
btn
.
setTitleColor
(
titleDefaul
tColor
,
for
:
.
normal
)
btn
.
backgroundColor
=
UIColor
(
hexString
:
"#F8F9FB"
)
btn
.
layer
.
cornerRadius
=
8.0
btn
.
addTarget
(
self
,
action
:
#selector(
didClickBtn
)
,
for
:
.
touchUpInside
)
btn
.
layer
.
cornerRadius
=
YHCertificateFilterView
.
itemHeight
/
2.0
btn
.
layer
.
borderWidth
=
1.0
btn
.
isEnabled
=
false
return
btn
}()
...
...
@@ -38,9 +57,4 @@ class YHCertificateFilterItemCell: UICollectionViewCell {
make
.
edges
.
equalToSuperview
()
}
}
@objc
func
didClickBtn
()
{
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/MyCertificates(我的证书)/V/YHCertificateFilterView.swift
View file @
711a9289
...
...
@@ -33,6 +33,7 @@ class YHCertificateFilterSectionInfo {
class
YHCertificateFilterItem
{
var
type
:
YHCertificateFilterType
var
title
:
String
var
isSelected
:
Bool
=
false
init
(
type
:
YHCertificateFilterType
,
title
:
String
)
{
self
.
type
=
type
...
...
@@ -43,22 +44,33 @@ class YHCertificateFilterItem {
class
YHCertificateFilterView
:
UIView
{
static
let
margin
=
21.0
static
let
gap
=
12.0
static
let
itemHeight
=
36.0
static
let
sheetView
=
YHCertificateFilterView
(
frame
:
UIScreen
.
main
.
bounds
)
var
items
:[
YHCertificateFilterSectionInfo
]
=
[
YHCertificateFilterSectionInfo
(
title
:
"类型"
.
local
,
items
:
[
YHCertificateFilterItem
(
type
:
.
certificate
,
title
:
"证件"
)])
]
YHCertificateFilterSectionInfo
(
title
:
"类型"
.
local
,
items
:
[
YHCertificateFilterItem
(
type
:
.
certificate
,
title
:
"证件"
),
YHCertificateFilterItem
(
type
:
.
degree
,
title
:
"学历"
),
YHCertificateFilterItem
(
type
:
.
employmentProof
,
title
:
"工作证明"
),
YHCertificateFilterItem
(
type
:
.
other
,
title
:
"其他"
),
]),
YHCertificateFilterSectionInfo
(
title
:
"状态"
.
local
,
items
:
[
YHCertificateFilterItem
(
type
:
.
preUpload
,
title
:
"待上传"
),
YHCertificateFilterItem
(
type
:
.
rejected
,
title
:
"已驳回"
),
YHCertificateFilterItem
(
type
:
.
review
,
title
:
"审核中"
),
YHCertificateFilterItem
(
type
:
.
pass
,
title
:
"已通过"
),
])]
lazy
var
collectionView
:
UICollectionView
=
{
// 设置布局方向
let
flowLayout
=
UICollectionViewFlowLayout
()
let
margin
=
21.0
let
gap
=
12.0
flowLayout
.
minimumInteritemSpacing
=
12.0
flowLayout
.
minimumLineSpacing
=
12.0
flowLayout
.
minimumInteritemSpacing
=
Self
.
gap
flowLayout
.
minimumLineSpacing
=
Self
.
gap
flowLayout
.
scrollDirection
=
.
vertical
collectionView
=
UICollectionView
(
frame
:
.
zero
,
collectionViewLayout
:
flowLayout
)
collectionView
.
contentInset
=
UIEdgeInsets
(
top
:
0
,
left
:
margin
,
bottom
:
0
,
right
:
margin
)
collectionView
.
contentInset
=
UIEdgeInsets
(
top
:
0
,
left
:
Self
.
margin
,
bottom
:
0
,
right
:
Self
.
margin
)
collectionView
.
backgroundColor
=
UIColor
.
white
collectionView
.
register
(
YHCertificateFilterItemCell
.
self
,
forCellWithReuseIdentifier
:
YHCertificateFilterItemCell
.
cellReuseIdentifier
)
collectionView
.
register
(
YHCertificateFilterTypeView
.
self
,
forSupplementaryViewOfKind
:
UICollectionView
.
elementKindSectionHeader
,
withReuseIdentifier
:
YHCertificateFilterTypeView
.
reuseIdentifier
)
...
...
@@ -244,18 +256,34 @@ extension YHCertificateFilterView {
}
@objc
func
didClickResetBtn
()
{
for
sectionInfo
in
items
{
for
item
in
sectionInfo
.
items
{
item
.
isSelected
=
false
}
}
collectionView
.
reloadData
()
}
}
extension
YHCertificateFilterView
:
UICollectionViewDataSource
,
UICollectionViewDelegate
,
UICollectionViewDelegateFlowLayout
{
func
collectionView
(
_
collectionView
:
UICollectionView
,
numberOfItemsInSection
section
:
Int
)
->
Int
{
func
numberOfSections
(
in
collectionView
:
UICollectionView
)
->
Int
{
return
items
.
count
}
func
collectionView
(
_
collectionView
:
UICollectionView
,
numberOfItemsInSection
section
:
Int
)
->
Int
{
if
0
<=
section
&&
section
<
items
.
count
{
let
sectionInfo
=
items
[
section
]
return
sectionInfo
.
items
.
count
}
return
0
}
func
collectionView
(
_
collectionView
:
UICollectionView
,
layout
collectionViewLayout
:
UICollectionViewLayout
,
sizeForItemAt
indexPath
:
IndexPath
)
->
CGSize
{
return
CGSize
(
width
:
74
,
height
:
36
)
var
width
=
Double
(
KScreenWidth
-
Self
.
margin
*
2.0
-
Self
.
gap
*
3.0
)
width
=
floor
(
width
/
4.0
)
return
CGSize
(
width
:
width
,
height
:
Self
.
itemHeight
)
}
func
collectionView
(
_
collectionView
:
UICollectionView
,
layout
collectionViewLayout
:
UICollectionViewLayout
,
referenceSizeForHeaderInSection
:
Int
)
->
CGSize
{
...
...
@@ -267,22 +295,52 @@ extension YHCertificateFilterView:UICollectionViewDataSource, UICollectionViewDe
if
kind
==
UICollectionView
.
elementKindSectionHeader
{
let
headerView
:
YHCertificateFilterTypeView
=
collectionView
.
dequeueReusableSupplementaryView
(
ofKind
:
UICollectionView
.
elementKindSectionHeader
,
withReuseIdentifier
:
YHCertificateFilterTypeView
.
reuseIdentifier
,
for
:
indexPath
)
as!
YHCertificateFilterTypeView
return
headerView
if
0
<=
indexPath
.
section
&&
indexPath
.
section
<
items
.
count
{
let
sectionInfo
=
items
[
indexPath
.
section
]
headerView
.
title
=
sectionInfo
.
title
}
return
headerView
}
return
UICollectionReusableView
()
}
func
collectionView
(
_
collectionView
:
UICollectionView
,
cellForItemAt
indexPath
:
IndexPath
)
->
UICollectionViewCell
{
let
cell
=
collectionView
.
dequeueReusableCell
(
withReuseIdentifier
:
YHCertificateFilterItemCell
.
cellReuseIdentifier
,
for
:
indexPath
)
as!
YHCertificateFilterItemCell
if
0
<=
indexPath
.
section
&&
indexPath
.
section
<
items
.
count
{
let
sectionInfo
=
items
[
indexPath
.
section
]
if
0
<=
indexPath
.
row
&&
indexPath
.
row
<
sectionInfo
.
items
.
count
{
let
item
=
sectionInfo
.
items
[
indexPath
.
row
]
cell
.
title
=
item
.
title
cell
.
isSelect
=
item
.
isSelected
}
}
return
cell
}
func
collectionView
(
_
collectionView
:
UICollectionView
,
didSelectItemAt
indexPath
:
IndexPath
)
{
if
0
<=
indexPath
.
section
&&
indexPath
.
section
<
items
.
count
{
let
sectionInfo
=
items
[
indexPath
.
section
]
if
0
<=
indexPath
.
row
&&
indexPath
.
row
<
sectionInfo
.
items
.
count
{
let
item
=
sectionInfo
.
items
[
indexPath
.
row
]
item
.
isSelected
=
!
item
.
isSelected
}
collectionView
.
reloadData
()
}
}
}
class
YHCertificateFilterTypeView
:
UICollectionReusableView
{
static
let
reuseIdentifier
=
"YHCertificateFilterTypeView"
var
title
:
String
?
{
didSet
{
titleLabel
.
text
=
title
}
}
lazy
var
titleLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
textColor
=
UIColor
.
mainTextColor
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/MyCertificates(我的证书)/V/YHCertificateUploadFailTipsView.swift
0 → 100644
View file @
711a9289
//
// YHCertificateUploadFailTipsView.swift
// galaxy
//
// Created by edy on 2024/3/13.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
/*
【Usage】
YHCertificateUploadFailTipsView.tipsView().show()
*/
import
UIKit
class
YHCertificateUploadFailTipsView
:
UIView
{
lazy
var
blackMaskView
:
UIView
=
{
let
view
=
UIView
(
frame
:
UIScreen
.
main
.
bounds
)
view
.
backgroundColor
=
UIColor
(
hex
:
0x0F1214
,
alpha
:
0.5
)
let
tap
=
UITapGestureRecognizer
(
target
:
self
,
action
:
#selector(
dismiss
)
)
view
.
addGestureRecognizer
(
tap
)
return
view
}()
lazy
var
whiteContentView
:
UIView
=
{
let
view
=
UIView
()
view
.
backgroundColor
=
.
white
view
.
layer
.
cornerRadius
=
6.0
return
view
}()
lazy
var
failIconImgView
:
UIImageView
=
{
let
imgV
=
UIImageView
(
image
:
UIImage
(
named
:
"my_cer_upload_fail"
))
return
imgV
}()
lazy
var
titleLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
textColor
=
.
mainTextColor
label
.
textAlignment
=
.
center
label
.
font
=
UIFont
.
PFSC_M
(
ofSize
:
17
)
label
.
text
=
"上传失败"
return
label
}()
lazy
var
tipsLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
textColor
=
.
labelTextColor2
label
.
textAlignment
=
.
center
label
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
14
)
label
.
numberOfLines
=
0
label
.
text
=
"请检查文件格式是否为docx、jpg、doc、png、pptx、pdf"
.
local
return
label
}()
lazy
var
knowBtn
:
UIButton
=
{
let
btn
=
UIButton
()
btn
.
setTitle
(
"我知道了"
.
local
,
for
:
.
normal
)
btn
.
titleLabel
?
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
14
)
btn
.
setTitleColor
(
.
white
,
for
:
.
normal
)
btn
.
backgroundColor
=
UIColor
(
hexString
:
"#4388FF"
)
btn
.
layer
.
cornerRadius
=
6.0
btn
.
addTarget
(
self
,
action
:
#selector(
dismiss
)
,
for
:
.
touchUpInside
)
return
btn
}()
static
func
tipsView
()
->
YHCertificateUploadFailTipsView
{
let
view
=
YHCertificateUploadFailTipsView
(
frame
:
UIScreen
.
main
.
bounds
)
return
view
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
override
init
(
frame
:
CGRect
)
{
super
.
init
(
frame
:
frame
)
createUI
()
}
func
createUI
()
{
self
.
addSubview
(
blackMaskView
)
self
.
addSubview
(
whiteContentView
)
whiteContentView
.
addSubview
(
failIconImgView
)
whiteContentView
.
addSubview
(
titleLabel
)
whiteContentView
.
addSubview
(
tipsLabel
)
whiteContentView
.
addSubview
(
knowBtn
)
blackMaskView
.
snp
.
makeConstraints
{
make
in
make
.
edges
.
equalToSuperview
()
}
whiteContentView
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
.
offset
(
38
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
38
)
make
.
centerX
.
equalToSuperview
()
make
.
centerY
.
equalToSuperview
()
}
failIconImgView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalToSuperview
()
.
offset
(
30
)
make
.
centerX
.
equalToSuperview
()
make
.
width
.
height
.
equalTo
(
53
)
}
titleLabel
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
.
offset
(
16
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
16
)
make
.
height
.
equalTo
(
24
)
make
.
top
.
equalTo
(
failIconImgView
.
snp
.
bottom
)
.
offset
(
16
)
}
tipsLabel
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
.
offset
(
16
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
16
)
make
.
top
.
equalTo
(
titleLabel
.
snp
.
bottom
)
.
offset
(
8
)
}
knowBtn
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
.
offset
(
21
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
21
)
make
.
height
.
equalTo
(
45
)
make
.
top
.
equalTo
(
tipsLabel
.
snp
.
bottom
)
.
offset
(
31
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
21
)
}
}
}
extension
YHCertificateUploadFailTipsView
{
func
show
()
{
UIApplication
.
shared
.
yhKeyWindow
()?
.
addSubview
(
self
)
}
@objc
func
dismiss
()
{
self
.
removeFromSuperview
()
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/Education&Qualification(学历专业资格填写)/C/YHEducationDetailVC.swift
View file @
711a9289
...
...
@@ -210,6 +210,24 @@ extension YHEducationDetailVC : UITableViewDelegate, UITableViewDataSource {
cell
.
isMust
=
detailItem
.
isNeed
cell
.
title
=
detailItem
.
getTitle
()
cell
.
text
=
detailItem
.
value
cell
.
textInputCondtion
=
{
textField
in
var
max
=
-
1
if
detailItem
.
type
==
.
educationMajor
||
detailItem
.
type
==
.
educationCity
{
max
=
100
}
if
max
>
0
{
if
let
textStr
=
textField
.
text
{
textField
.
text
=
(
textStr
.
count
>
max
?
textStr
[
safe
:
..<
max
]
:
textStr
)
}
}
return
true
}
cell
.
textChange
=
{
[
weak
self
]
(
text
,
isEditEnd
)
in
guard
let
self
=
self
else
{
return
}
...
...
@@ -322,14 +340,46 @@ extension YHEducationDetailVC : UITableViewDelegate, UITableViewDataSource {
}
else
if
detailItem
.
type
==
.
educationTime
||
detailItem
.
type
==
.
graduateTime
{
// 入学及毕业年月
YHDatePickView
.
show
(
type
:
.
yyyymm
)
{
[
weak
self
]
date
in
[
weak
self
]
date
Str
in
guard
let
self
=
self
else
{
return
}
if
detailItem
.
type
==
.
educationTime
{
detailInfo
.
admissionTime
=
date
let
format
=
DateFormatter
()
format
.
dateFormat
=
"yyyy-MM"
if
let
selectDate
=
format
.
date
(
from
:
dateStr
)
{
let
selectTimeInterval
=
selectDate
.
timeIntervalSince1970
let
currentTimeInterval
=
Date
()
.
timeIntervalSince1970
if
detailItem
.
type
==
.
educationTime
{
// 选择入学日期
// 入学日期须早于当前日期
if
selectTimeInterval
>
currentTimeInterval
{
YHHUD
.
flash
(
message
:
"入学日期须早于当前日期"
)
return
}
if
!
detailInfo
.
graduateTime
.
isEmpty
,
let
endDate
=
format
.
date
(
from
:
detailInfo
.
graduateTime
)
{
let
endTimeInterval
=
endDate
.
timeIntervalSince1970
if
selectTimeInterval
>
endTimeInterval
{
YHHUD
.
flash
(
message
:
"入学日期须早于毕业日期"
)
return
}
}
detailInfo
.
admissionTime
=
dateStr
}
}
else
if
detailItem
.
type
==
.
graduateTime
{
detailInfo
.
graduateTime
=
date
if
detailItem
.
type
==
.
graduateTime
{
// 选择毕业日期
if
!
detailInfo
.
admissionTime
.
isEmpty
,
let
startDate
=
format
.
date
(
from
:
detailInfo
.
admissionTime
)
{
let
startTimeInterval
=
startDate
.
timeIntervalSince1970
if
selectTimeInterval
<
startTimeInterval
{
YHHUD
.
flash
(
message
:
"毕业日期须晚于入学日期"
)
return
}
}
detailInfo
.
graduateTime
=
dateStr
}
}
loadInfo
()
saveInfoSilent
()
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/Education&Qualification(学历专业资格填写)/C/YHQualificationDetailVC.swift
View file @
711a9289
...
...
@@ -184,6 +184,24 @@ extension YHQualificationDetailVC : UITableViewDelegate, UITableViewDataSource {
cell
.
isMust
=
detailItem
.
isNeed
cell
.
title
=
detailItem
.
getTitle
()
cell
.
text
=
detailItem
.
value
cell
.
textInputCondtion
=
{
textField
in
var
max
=
-
1
if
detailItem
.
type
==
.
conferAgencyFullName
||
detailItem
.
type
==
.
conferCity
{
max
=
100
}
if
max
>
0
{
if
let
textStr
=
textField
.
text
{
textField
.
text
=
(
textStr
.
count
>
max
?
textStr
[
safe
:
..<
max
]
:
textStr
)
}
}
return
true
}
cell
.
textChange
=
{
[
weak
self
]
(
text
,
isEditEnd
)
in
guard
let
self
=
self
else
{
return
}
...
...
@@ -276,9 +294,22 @@ extension YHQualificationDetailVC : UITableViewDelegate, UITableViewDataSource {
}
else
if
detailItem
.
type
==
.
conferTime
{
// 授权年份
YHDatePickView
.
show
(
type
:
.
yyyy
)
{
[
weak
self
]
date
in
[
weak
self
]
date
Str
in
guard
let
self
=
self
else
{
return
}
detailInfo
.
issuingYear
=
Int
(
date
)
??
2024
let
format
=
DateFormatter
()
format
.
dateFormat
=
"yyyy"
if
let
selectDate
=
format
.
date
(
from
:
dateStr
)
{
let
selectTimeInterval
=
selectDate
.
timeIntervalSince1970
let
currentTimeInterval
=
Date
()
.
timeIntervalSince1970
// 出生日期须早于当前日期
if
selectTimeInterval
>
currentTimeInterval
{
YHHUD
.
flash
(
message
:
"授权年份须早于当前年份"
.
local
)
return
}
}
detailInfo
.
issuingYear
=
Int
(
dateStr
)
??
2024
loadInfo
()
saveInfoSilent
()
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/Education&Qualification(学历专业资格填写)/V/YHCollegeSearchBar.swift
View file @
711a9289
...
...
@@ -98,6 +98,9 @@ class YHCollegeSearchBar: UIView {
}
@objc
func
textFieldChanged
(
textField
:
UITextField
)
{
let
text
=
textField
.
text
??
""
let
max
=
100
textField
.
text
=
(
text
.
count
>
max
?
text
[
safe
:
..<
max
]
:
text
)
if
let
textChange
=
textChange
{
textChange
(
textField
.
text
)
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/FamilyMember(家庭成员信息表)/C/Certificates(证书上传和证书信息)/YHCertificateInfoController.swift
View file @
711a9289
...
...
@@ -154,7 +154,12 @@ extension YHCertificateInfoController : UITableViewDelegate, UITableViewDataSour
cell
.
placeHolder
=
detailItem
.
placeHolder
cell
.
title
=
detailItem
.
getTitle
()
cell
.
text
=
detailItem
.
value
cell
.
setTips
(
detailItem
.
tips
,
isShow
:
isNeedShowError
&&
detailItem
.
isNeed
&&
detailItem
.
isShowTips
)
if
detailItem
.
type
==
.
chinaIdentityCardNumber
{
cell
.
setTips
(
detailItem
.
tips
,
isShow
:
isNeedShowError
&&
detailItem
.
isNeed
&&
detailItem
.
value
?
.
count
!=
18
)
}
else
{
cell
.
setTips
(
detailItem
.
tips
,
isShow
:
isNeedShowError
&&
detailItem
.
isNeed
&&
detailItem
.
isShowTips
)
}
cell
.
textInputCondtion
=
{
textField
in
...
...
@@ -162,7 +167,7 @@ extension YHCertificateInfoController : UITableViewDelegate, UITableViewDataSour
if
detailItem
.
type
==
.
chinaIdentityCardNumber
{
// 身份证
max
=
18
}
else
if
detailItem
.
type
==
.
certificateSignPlace
{
// 签发地
max
=
10
0
max
=
5
0
}
else
if
detailItem
.
type
==
.
traverlPassportNumber
||
detailItem
.
type
==
.
certificateNumber
{
max
=
50
...
...
@@ -305,9 +310,10 @@ extension YHCertificateInfoController : UITableViewDelegate, UITableViewDataSour
self
.
view
?
.
endEditing
(
true
)
YHDatePickView
.
show
(
type
:
.
yyyymmdd
)
{
[
weak
self
]
date
in
let
dataArr
=
date
.
components
(
separatedBy
:
YHDatePickView
.
separator
)
print
(
dataArr
)
[
weak
self
]
dateStr
in
print
(
dateStr
)
guard
let
self
=
self
else
{
return
}
guard
let
familyMember
=
self
.
familyMember
else
{
return
}
...
...
@@ -321,7 +327,42 @@ extension YHCertificateInfoController : UITableViewDelegate, UITableViewDataSour
}
else
if
title
.
type
==
.
passPortOrTravelInfo
{
certificate
=
familyMember
.
certificates
.
passport
}
changeCertificateDate
(
certificate
,
type
:
detailItem
.
type
,
date
:
date
)
let
format
=
DateFormatter
()
format
.
dateFormat
=
"yyyy-MM-dd"
if
let
selectDate
=
format
.
date
(
from
:
dateStr
)
{
let
selectTimeInterval
=
selectDate
.
timeIntervalSince1970
let
currentTimeInterval
=
Date
()
.
timeIntervalSince1970
if
detailItem
.
type
==
.
certificateSignDate
{
// 选择签发日期
// 签发日期须早于当前日期
if
selectTimeInterval
>
currentTimeInterval
{
YHHUD
.
flash
(
message
:
"签发日期须早于当前日期"
)
return
}
if
!
certificate
.
issueDateEndAt
.
isEmpty
,
let
endDate
=
format
.
date
(
from
:
certificate
.
issueDateEndAt
)
{
let
endTimeInterval
=
endDate
.
timeIntervalSince1970
if
selectTimeInterval
>
endTimeInterval
{
YHHUD
.
flash
(
message
:
"签发日期须早于届满日期"
)
return
}
}
}
if
detailItem
.
type
==
.
certificateValidDate
{
// 届满日期
if
!
certificate
.
issueDateStartAt
.
isEmpty
,
let
startDate
=
format
.
date
(
from
:
certificate
.
issueDateStartAt
)
{
let
startTimeInterval
=
startDate
.
timeIntervalSince1970
if
selectTimeInterval
<
startTimeInterval
{
YHHUD
.
flash
(
message
:
"届满日期须晚于签发日期"
)
return
}
}
}
}
changeCertificateDate
(
certificate
,
type
:
detailItem
.
type
,
date
:
dateStr
)
self
.
loadInfo
()
save
()
}
...
...
@@ -379,7 +420,7 @@ extension YHCertificateInfoController : UITableViewDelegate, UITableViewDataSour
let
isChinaCardMust
=
familyMember
.
isChinese
()
&&
familyMember
.
relationType
!=
.
child
if
isChinaCardMust
{
if
familyMember
.
certificates
.
cnIdentityCard
.
number
.
count
<=
0
if
familyMember
.
certificates
.
cnIdentityCard
.
number
.
count
!=
18
||
familyMember
.
certificates
.
cnIdentityCard
.
issueAt
.
count
<=
0
||
familyMember
.
certificates
.
cnIdentityCard
.
issueDateStartAt
.
count
<=
0
||
familyMember
.
certificates
.
cnIdentityCard
.
issueDateEndAt
.
count
<=
0
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/FamilyMember(家庭成员信息表)/C/Child(子女)/YHChildBasicInfoVC.swift
View file @
711a9289
...
...
@@ -265,11 +265,18 @@ extension YHChildBasicInfoVC : UITableViewDelegate, UITableViewDataSource {
cell
.
title
=
detailItem
.
getTitle
()
cell
.
text
=
detailItem
.
value
cell
.
setTips
(
detailItem
.
tips
,
isShow
:
isNeedShowError
&&
detailItem
.
isShowTips
)
if
detailItem
.
type
==
.
befourMarryFirstName
{
cell
.
textField
.
keyboardType
=
.
asciiCapable
// 英文键盘
}
else
{
cell
.
textField
.
keyboardType
=
.
default
}
cell
.
textInputCondtion
=
{
textField
in
if
detailItem
.
type
==
.
befourMarryFirstName
{
// 仅支持输入最多30个大写字母
let
regex
=
"[^A-Z]+"
let
regex
=
"[^A-Z
a-z
]+"
textField
.
limitInputWithPattern
(
pattern
:
regex
,
30
)
return
true
}
...
...
@@ -302,7 +309,10 @@ extension YHChildBasicInfoVC : UITableViewDelegate, UITableViewDataSource {
self
.
child
?
.
usedName
=
text
??
""
}
else
if
detailItem
.
type
==
.
befourMarryFirstName
{
self
.
child
?
.
surname
=
text
??
""
let
tt
=
text
?
.
uppercased
()
self
.
child
?
.
surname
=
tt
??
""
cell
.
textField
.
text
=
tt
}
else
if
detailItem
.
type
==
.
birthCity
{
self
.
child
?
.
birthPlace
.
foreign
=
text
??
""
...
...
@@ -442,13 +452,25 @@ extension YHChildBasicInfoVC : UITableViewDelegate, UITableViewDataSource {
}
else
if
detailItem
.
type
==
.
stayHKDate
{
title
=
"选择逗留日期"
}
YHDatePickView
.
show
(
type
:
.
yyyymmdd
,
title
:
title
)
{
[
weak
self
]
date
in
YHDatePickView
.
show
(
type
:
.
yyyymmdd
,
title
:
title
)
{
[
weak
self
]
date
Str
in
guard
let
self
=
self
else
{
return
}
if
detailItem
.
type
==
.
birthday
{
self
.
child
?
.
birthday
=
date
let
format
=
DateFormatter
()
format
.
dateFormat
=
"yyyy-MM-dd"
if
let
selectDate
=
format
.
date
(
from
:
dateStr
)
{
let
selectTimeInterval
=
selectDate
.
timeIntervalSince1970
let
currentTimeInterval
=
Date
()
.
timeIntervalSince1970
// 出生日期须早于当前日期
if
selectTimeInterval
>
currentTimeInterval
{
YHHUD
.
flash
(
message
:
"出生日期须早于当前日期"
.
local
)
return
}
}
self
.
child
?
.
birthday
=
dateStr
}
else
if
detailItem
.
type
==
.
stayHKDate
{
self
.
child
?
.
childInHk
.
info
=
date
self
.
child
?
.
childInHk
.
info
=
date
Str
}
loadInfo
()
save
()
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/FamilyMember(家庭成员信息表)/C/Parents&Brothers(父母和兄弟姐妹)/YHBrotherInfoVC.swift
View file @
711a9289
...
...
@@ -410,11 +410,22 @@ extension YHBrotherInfoVC : UITableViewDelegate, UITableViewDataSource {
let
detailItem
=
item
as!
YHFormDetailItem
if
detailItem
.
type
==
.
birthday
{
// 出生日期
YHDatePickView
.
show
(
type
:
.
yyyymmdd
)
{
[
weak
self
]
date
in
YHDatePickView
.
show
(
type
:
.
yyyymmdd
)
{
[
weak
self
]
date
Str
in
guard
let
self
=
self
else
{
return
}
if
detailItem
.
type
==
.
birthday
{
self
.
brotherInfo
?
.
birthday
=
date
let
format
=
DateFormatter
()
format
.
dateFormat
=
"yyyy-MM-dd"
if
let
selectDate
=
format
.
date
(
from
:
dateStr
)
{
let
selectTimeInterval
=
selectDate
.
timeIntervalSince1970
let
currentTimeInterval
=
Date
()
.
timeIntervalSince1970
// 出生日期须早于当前日期
if
selectTimeInterval
>
currentTimeInterval
{
YHHUD
.
flash
(
message
:
"出生日期须早于当前日期"
.
local
)
return
}
}
self
.
brotherInfo
?
.
birthday
=
dateStr
}
self
.
loadInfo
()
saveInfoSilent
()
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/FamilyMember(家庭成员信息表)/C/Parents&Brothers(父母和兄弟姐妹)/YHParentInfoVC.swift
View file @
711a9289
...
...
@@ -455,11 +455,22 @@ extension YHParentInfoVC : UITableViewDelegate, UITableViewDataSource {
let
detailItem
=
item
as!
YHFormDetailItem
if
detailItem
.
type
==
.
birthday
{
// 出生日期
YHDatePickView
.
show
(
type
:
.
yyyymmdd
)
{
[
weak
self
]
date
in
YHDatePickView
.
show
(
type
:
.
yyyymmdd
)
{
[
weak
self
]
date
Str
in
guard
let
self
=
self
else
{
return
}
if
detailItem
.
type
==
.
birthday
{
self
.
parentInfo
?
.
birthday
=
date
let
format
=
DateFormatter
()
format
.
dateFormat
=
"yyyy-MM-dd"
if
let
selectDate
=
format
.
date
(
from
:
dateStr
)
{
let
selectTimeInterval
=
selectDate
.
timeIntervalSince1970
let
currentTimeInterval
=
Date
()
.
timeIntervalSince1970
// 出生日期须早于当前日期
if
selectTimeInterval
>
currentTimeInterval
{
YHHUD
.
flash
(
message
:
"出生日期须早于当前日期"
.
local
)
return
}
}
self
.
parentInfo
?
.
birthday
=
dateStr
}
self
.
loadInfo
()
saveInfoSilent
()
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/FamilyMember(家庭成员信息表)/C/Spouse(配偶)/YHSpouseBasicInfoVC.swift
View file @
711a9289
...
...
@@ -391,11 +391,18 @@ extension YHSpouseBasicInfoVC : UITableViewDelegate, UITableViewDataSource {
}
else
{
cell
.
setTips
(
detailItem
.
tips
,
isShow
:
isNeedShowError
&&
detailItem
.
isShowTips
)
}
if
detailItem
.
type
==
.
befourMarryFirstName
{
cell
.
textField
.
keyboardType
=
.
asciiCapable
// 英文键盘
}
else
{
cell
.
textField
.
keyboardType
=
.
default
}
cell
.
textInputCondtion
=
{
textField
in
if
detailItem
.
type
==
.
befourMarryFirstName
{
// 仅支持输入最多30个大写字母
let
regex
=
"[^A-Z]+"
let
regex
=
"[^A-Z
a-z
]+"
textField
.
limitInputWithPattern
(
pattern
:
regex
,
30
)
return
true
}
...
...
@@ -425,7 +432,12 @@ extension YHSpouseBasicInfoVC : UITableViewDelegate, UITableViewDataSource {
}
else
if
detailItem
.
type
==
.
everName
{
self
.
spouse
?
.
usedName
=
text
??
""
}
else
if
detailItem
.
type
==
.
befourMarryFirstName
{
self
.
spouse
?
.
surname
=
text
??
""
let
tt
=
text
?
.
uppercased
()
self
.
spouse
?
.
surname
=
tt
??
""
cell
.
textField
.
text
=
tt
}
else
if
detailItem
.
type
==
.
birthCity
{
self
.
spouse
?
.
birthPlace
.
foreign
=
text
??
""
}
else
if
detailItem
.
type
==
.
occupationName
{
...
...
@@ -630,13 +642,27 @@ extension YHSpouseBasicInfoVC : UITableViewDelegate, UITableViewDataSource {
}
else
if
detailItem
.
type
==
.
stayHKDate
{
title
=
"选择逗留日期"
}
YHDatePickView
.
show
(
type
:
.
yyyymmdd
,
title
:
title
)
{
[
weak
self
]
date
in
YHDatePickView
.
show
(
type
:
.
yyyymmdd
,
title
:
title
)
{
[
weak
self
]
date
Str
in
guard
let
self
=
self
else
{
return
}
if
detailItem
.
type
==
.
birthday
{
self
.
spouse
?
.
birthday
=
date
let
format
=
DateFormatter
()
format
.
dateFormat
=
"yyyy-MM-dd"
if
let
selectDate
=
format
.
date
(
from
:
dateStr
)
{
let
selectTimeInterval
=
selectDate
.
timeIntervalSince1970
let
currentTimeInterval
=
Date
()
.
timeIntervalSince1970
// 出生日期须早于当前日期
if
selectTimeInterval
>
currentTimeInterval
{
YHHUD
.
flash
(
message
:
"出生日期须早于当前日期"
.
local
)
return
}
}
self
.
spouse
?
.
birthday
=
dateStr
}
else
if
detailItem
.
type
==
.
stayHKDate
{
self
.
spouse
?
.
childInHk
.
info
=
date
self
.
spouse
?
.
childInHk
.
info
=
date
Str
}
loadInfo
()
save
()
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/FamilyMember(家庭成员信息表)/C/YHFamilyMemberInfoListVC.swift
View file @
711a9289
...
...
@@ -118,15 +118,15 @@ class YHFamilyMemberInfoListVC: YHBaseViewController {
}
@objc
func
didClickSubmitBtn
()
{
//
let isChecked = checkIntegrity()
//
isNeedShowError = !isChecked
//
//
self.tableView .reloadData()
//
//
if !isChecked {
//
YHHUD.flash(message: "资料还未填完")
//
return
//
}
let
isChecked
=
checkIntegrity
()
isNeedShowError
=
!
isChecked
self
.
tableView
.
reloadData
()
if
!
isChecked
{
YHHUD
.
flash
(
message
:
"资料还未填完"
)
return
}
submit
()
}
...
...
@@ -306,7 +306,7 @@ extension YHFamilyMemberInfoListVC {
if
let
errMsg
=
error
?
.
errorMsg
,
errMsg
.
count
>
0
{
errorMsg
=
errMsg
}
YHHUD
.
flash
(
message
:
errorMsg
)
YHHUD
.
flash
(
message
:
errorMsg
,
duration
:
3
)
}
}
}
...
...
@@ -377,15 +377,18 @@ extension YHFamilyMemberInfoListVC : UITableViewDelegate, UITableViewDataSource
let
detailItem
=
item
as!
YHFamilyMember
let
cell
=
tableView
.
dequeueReusableCell
(
withIdentifier
:
YHFormItemEnterDetailCell
.
cellReuseIdentifier
,
for
:
indexPath
)
as!
YHFormItemEnterDetailCell
cell
.
title
=
detailItem
.
getTitle
()
cell
.
detailLabel
.
textColor
=
(
isNeedShowError
&&
detailItem
.
notFillNumber
!=
0
?
.
failColor
:
.
labelTextColor2
)
//
cell.detailLabel.textColor = (isNeedShowError && detailItem.notFillNumber != 0 ? .failColor : .labelTextColor2)
var
tips
=
""
if
detailItem
.
notFillNumber
>
0
{
cell
.
detailLabel
.
text
=
String
(
format
:
"有%d项未填写"
.
local
,
detailItem
.
notFillNumber
)
tips
=
String
(
format
:
"有%d项未填写"
.
local
,
detailItem
.
notFillNumber
)
}
else
if
detailItem
.
notFillNumber
==
0
{
cell
.
detailLabel
.
text
=
"已填完"
.
local
tips
=
"已填完"
.
local
}
else
{
cell
.
detailLabel
.
text
=
"还未开始填写"
.
local
tips
=
"还未开始填写"
.
local
}
cell
.
detailLabel
.
text
=
tips
cell
.
setTips
(
tips
,
isShow
:
(
isNeedShowError
&&
detailItem
.
notFillNumber
!=
0
))
if
isEmptyString
(
detailItem
.
subsetName
)
{
// 姓名为空
if
detailItem
.
relationType
==
.
child
{
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/FamilyMember(家庭成员信息表)/V/YHFormItemEnterDetailCell.swift
View file @
711a9289
...
...
@@ -55,7 +55,6 @@ class YHFormItemEnterDetailCell: UITableViewCell {
private
lazy
var
titleLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
text
=
"XXXXXXX"
label
.
textColor
=
titleColor
label
.
textAlignment
=
.
left
label
.
numberOfLines
=
0
...
...
@@ -65,13 +64,20 @@ class YHFormItemEnterDetailCell: UITableViewCell {
lazy
var
detailLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
text
=
"XXXXXXX"
label
.
textColor
=
.
labelTextColor2
label
.
textAlignment
=
.
right
label
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
14
)
return
label
}()
lazy
var
tipsLabel
:
UILabel
=
{
let
label
=
UILabel
()
label
.
textColor
=
.
failColor
label
.
textAlignment
=
.
left
label
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
12
)
return
label
}()
private
lazy
var
arrowImgView
:
UIImageView
=
{
let
imgView
=
UIImageView
(
image
:
UIImage
(
named
:
"form_right_arrow"
))
return
imgView
...
...
@@ -110,6 +116,7 @@ class YHFormItemEnterDetailCell: UITableViewCell {
contentView
.
addSubview
(
titleLabel
)
contentView
.
addSubview
(
detailLabel
)
contentView
.
addSubview
(
tipsLabel
)
contentView
.
addSubview
(
arrowImgView
)
contentView
.
addSubview
(
deleteButton
)
contentView
.
addSubview
(
topLine
)
...
...
@@ -119,7 +126,7 @@ class YHFormItemEnterDetailCell: UITableViewCell {
make
.
top
.
equalToSuperview
()
.
offset
(
16
)
make
.
left
.
equalToSuperview
()
.
offset
(
horizonalGap
)
make
.
right
.
equalTo
(
detailLabel
.
snp
.
left
)
.
offset
(
-
8
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
16
)
make
.
height
.
equalTo
(
20
)
}
detailLabel
.
snp
.
makeConstraints
{
make
in
...
...
@@ -127,7 +134,7 @@ class YHFormItemEnterDetailCell: UITableViewCell {
make
.
width
.
equalTo
(
110.0
)
make
.
top
.
equalTo
(
titleLabel
)
}
arrowImgView
.
snp
.
makeConstraints
{
make
in
make
.
size
.
equalTo
(
CGSizeMake
(
20
,
20
))
make
.
right
.
equalToSuperview
()
.
offset
(
-
horizonalGap
)
...
...
@@ -146,6 +153,31 @@ class YHFormItemEnterDetailCell: UITableViewCell {
make
.
height
.
equalTo
(
1.0
)
make
.
top
.
equalToSuperview
()
}
setTips
(
""
,
isShow
:
false
)
}
func
setTips
(
_
tips
:
String
?,
isShow
:
Bool
)
{
tipsLabel
.
text
=
tips
tipsLabel
.
isHidden
=
!
isShow
if
isShow
{
tipsLabel
.
snp
.
remakeConstraints
{
make
in
make
.
left
.
equalToSuperview
()
.
offset
(
horizonalGap
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
horizonalGap
)
make
.
top
.
equalTo
(
titleLabel
.
snp
.
bottom
)
.
offset
(
6
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
16
)
}
}
else
{
tipsLabel
.
snp
.
remakeConstraints
{
make
in
make
.
top
.
equalTo
(
titleLabel
.
snp
.
bottom
)
make
.
left
.
equalToSuperview
()
.
offset
(
horizonalGap
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
horizonalGap
)
make
.
height
.
equalTo
(
0
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
16
)
}
}
self
.
setNeedsLayout
()
self
.
layoutIfNeeded
()
}
@objc
func
didClickDeleteBtn
(
btn
:
UIButton
)
{
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/FamilyMember(家庭成员信息表)/V/YHFormItemInputTextCell.swift
View file @
711a9289
...
...
@@ -69,7 +69,7 @@ class YHFormItemInputTextCell: UITableViewCell {
return
label
}()
private
lazy
var
textField
:
UITextField
=
{
lazy
var
textField
:
UITextField
=
{
let
textField
=
UITextField
()
textField
.
backgroundColor
=
.
clear
textField
.
placeholder
=
"请输入"
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/MainApplicantInformation(主申请人信息)/V/YHItemView.swift
View file @
711a9289
...
...
@@ -273,6 +273,14 @@ class YHItemView: UIView {
if
dataSource
.
isShowPrompts
??
false
{
if
dataSource
.
message
?
.
count
!=
0
{
showPromptLabel
.
isHidden
=
true
//特殊处理身份证
if
dataSource
.
id
==
.
id8
{
if
let
message
=
dataSource
.
message
,
message
.
count
==
18
{
}
else
{
showPromptLabel
.
isHidden
=
false
}
}
}
else
{
showPromptLabel
.
isHidden
=
false
}
...
...
@@ -280,6 +288,7 @@ class YHItemView: UIView {
showPromptLabel
.
isHidden
=
true
}
if
dataSource
.
id
==
.
id11
||
dataSource
.
id
==
.
id15
||
dataSource
.
id
==
.
id20
{
longTimeButton
.
isHidden
=
false
nextStepImageView
.
isHidden
=
true
...
...
@@ -476,19 +485,20 @@ extension YHItemView: UITextFieldDelegate {
func
textField
(
_
textField
:
UITextField
,
shouldChangeCharactersIn
range
:
NSRange
,
replacementString
string
:
String
)
->
Bool
{
var
newText
=
(
textField
.
text
!
as
NSString
)
.
replacingCharacters
(
in
:
range
,
with
:
string
)
if
(
dataSource
?
.
id
==
.
id
9
||
dataSource
?
.
id
==
.
id
21
||
dataSource
?
.
id
==
.
id22
||
dataSource
?
.
id
==
.
id23
)
&&
newText
.
count
>
30
{
if
(
dataSource
?
.
id
==
.
id21
||
dataSource
?
.
id
==
.
id22
||
dataSource
?
.
id
==
.
id23
)
&&
newText
.
count
>
30
{
return
false
}
if
(
dataSource
?
.
id
==
.
id4
||
dataSource
?
.
id
==
.
id32
||
dataSource
?
.
id
==
.
id13
||
dataSource
?
.
id
==
.
id
18
||
dataSource
?
.
id
==
.
id32
)
&&
newText
.
count
>
100
{
if
(
dataSource
?
.
id
==
.
id4
||
dataSource
?
.
id
==
.
id32
||
dataSource
?
.
id
==
.
id13
||
dataSource
?
.
id
==
.
id
32
||
dataSource
?
.
id
==
.
id26
||
dataSource
?
.
id
==
.
id34
)
&&
newText
.
count
>
100
{
return
false
}
if
(
dataSource
?
.
id
==
.
id12
||
dataSource
?
.
id
==
.
id17
||
dataSource
?
.
id
==
.
id30
)
&&
newText
.
count
>
50
{
if
(
dataSource
?
.
id
==
.
id12
||
dataSource
?
.
id
==
.
id17
||
dataSource
?
.
id
==
.
id30
||
dataSource
?
.
id
==
.
id9
||
dataSource
?
.
id
==
.
id13
||
dataSource
?
.
id
==
.
id18
)
&&
newText
.
count
>
50
{
return
false
}
if
(
dataSource
?
.
id
==
.
id8
)
&&
newText
.
count
>
20
{
if
(
dataSource
?
.
id
==
.
id8
)
&&
newText
.
count
>
18
{
return
false
}
...
...
@@ -497,7 +507,9 @@ extension YHItemView: UITextFieldDelegate {
}
if
dataSource
?
.
id
==
.
id23
{
newText
=
newText
.
uppercased
()
let
regex
=
"[^A-Za-z]+"
textField
.
limitInputWithPattern
(
pattern
:
regex
,
30
)
newText
=
textField
.
text
!.
uppercased
()
}
var
data
=
dataSource
??
YHItemModel
()
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/MainApplicantInformation(主申请人信息)/VM/YHMainApplicantInformationViewModel.swift
View file @
711a9289
...
...
@@ -472,6 +472,8 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
let
passport_issue_date_start_at
=
mainModel
.
certificates
.
passport
.
issue_date_start_at
let
passport_issue_date_end_at
=
mainModel
.
certificates
.
passport
.
issue_date_end_at
let
nationality
=
mainModel
.
nationality
if
self
.
mainModel
.
is_handled
==
1
{
guard
hk_macao_pass_number
.
count
>
0
else
{
return
false
}
guard
hk_macao_pass_issue_at
.
count
>
0
else
{
return
false
}
...
...
@@ -479,7 +481,7 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
guard
hk_macao_pass_issue_date_end_at
.
count
>
0
else
{
return
false
}
}
if
nationality
.
contains
(
"中国"
)
{
guard
cn_identity_card_number
.
count
>
0
else
{
return
false
}
guard
cn_identity_card_number
.
count
==
18
else
{
return
false
}
guard
cn_identity_card_issue_at
.
count
>
0
else
{
return
false
}
guard
cn_identity_card_issue_date_start_at
.
count
>
0
else
{
return
false
}
guard
cn_identity_card_issue_date_end_at
.
count
>
0
else
{
return
false
}
...
...
@@ -498,7 +500,7 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
let
birth_place_area
=
mainModel
.
birth_place
.
area
let
birth_place_foreign
=
mainModel
.
birth_place
.
foreign
let
sex
=
mainModel
.
sex
let
married
=
mainModel
.
married
_
=
mainModel
.
married
let
mobile
=
mainModel
.
mobile
let
email
=
mainModel
.
email
let
has_hk_id
=
mainModel
.
has_hk_id
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/OtherInformation(其他信息)/V/YHOtherTextViewItemView.swift
View file @
711a9289
...
...
@@ -158,7 +158,7 @@ extension YHOtherTextViewItemView : UITextFieldDelegate {
func
textView
(
_
textView
:
UITextView
,
shouldChangeTextIn
range
:
NSRange
,
replacementText
text
:
String
)
->
Bool
{
if
!
text
.
isEmpty
{
if
textView
.
text
.
count
>
999
{
if
textView
.
text
.
count
>
1
999
{
return
false
}
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/PersonInfoList(个人信息预览)/VM/YHPreviewViewModel.swift
View file @
711a9289
...
...
@@ -256,7 +256,14 @@ private extension YHPreviewViewModel {
let
tempppp
=
YHConstantArrayData
.
getShowNameBy
(
indexStr
:
String
(
model
.
administrative_level
),
type
:
.
structure
)
let
tmp13
=
YHPreviewQuestionAndAnswerModel
(
question
:
"行政架构层级:"
,
answer
:
tempppp
)
let
tmp14
=
YHPreviewQuestionAndAnswerModel
(
question
:
"下属管理人数:"
,
answer
:
String
(
model
.
company_manage_total
))
let
tmp15
=
YHPreviewQuestionAndAnswerModel
(
question
:
"公司营业额/港元(近一年):"
,
answer
:
String
(
model
.
turnover
)
.
defaultStringIfEmpty
())
var
ttt
=
""
if
model
.
turnover
==
0
{
ttt
=
title
.
defaultStringIfEmpty
()
}
else
{
ttt
=
String
(
model
.
turnover
)
.
defaultStringIfEmpty
()
}
let
tmp15
=
YHPreviewQuestionAndAnswerModel
(
question
:
"公司营业额/港元(近一年):"
,
answer
:
ttt
)
let
tempppp0
=
YHConstantArrayData
.
getShowNameBy
(
indexStr
:
String
(
model
.
professional_level
),
type
:
.
level
)
let
tmp16
=
YHPreviewQuestionAndAnswerModel
(
question
:
"职业水平类别:"
,
answer
:
tempppp0
)
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/WorkExperience(工作经验)/C/YHCompanySelectViewController.swift
View file @
711a9289
...
...
@@ -166,6 +166,16 @@ extension YHCompanySelectViewController: UITextFieldDelegate {
textField
.
text
=
""
return
true
}
func
textField
(
_
textField
:
UITextField
,
shouldChangeCharactersIn
range
:
NSRange
,
replacementString
string
:
String
)
->
Bool
{
if
string
.
count
>
0
{
let
newText
=
(
textField
.
text
!
as
NSString
)
.
replacingCharacters
(
in
:
range
,
with
:
string
)
if
newText
.
count
>
100
{
return
false
}
}
return
true
}
}
extension
YHCompanySelectViewController
:
UITableViewDelegate
,
UITableViewDataSource
{
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/WorkExperience(工作经验)/C/YHWorkIntroductionViewController.swift
View file @
711a9289
...
...
@@ -329,6 +329,10 @@ extension YHWorkIntroductionViewController: UITextFieldDelegate {
func
textField
(
_
textField
:
UITextField
,
shouldChangeCharactersIn
range
:
NSRange
,
replacementString
string
:
String
)
->
Bool
{
let
newText
=
(
textField
.
text
!
as
NSString
)
.
replacingCharacters
(
in
:
range
,
with
:
string
)
if
newText
.
count
>
100
{
return
false
}
dataSource
.
project_name
=
newText
return
true
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/WorkExperience(工作经验)/V/YHWorkExperienceItemView.swift
View file @
711a9289
...
...
@@ -476,7 +476,7 @@ extension YHWorkExperienceItemView: UITextFieldDelegate {
func
textField
(
_
textField
:
UITextField
,
shouldChangeCharactersIn
range
:
NSRange
,
replacementString
string
:
String
)
->
Bool
{
let
newText
=
(
textField
.
text
!
as
NSString
)
.
replacingCharacters
(
in
:
range
,
with
:
string
)
if
(
dataSource
?
.
id
==
.
id1
||
dataSource
?
.
id
==
.
id7
||
dataSource
?
.
id
==
.
id8
||
dataSource
?
.
id
==
.
id12
||
dataSource
?
.
id
==
.
id14
||
dataSource
?
.
id
==
.
id16
||
dataSource
?
.
id
==
.
id18
)
&&
newText
.
count
>
1
00
{
if
(
dataSource
?
.
id
==
.
id1
||
dataSource
?
.
id
==
.
id7
||
dataSource
?
.
id
==
.
id8
||
dataSource
?
.
id
==
.
id12
||
dataSource
?
.
id
==
.
id14
||
dataSource
?
.
id
==
.
id16
||
dataSource
?
.
id
==
.
id18
)
&&
newText
.
count
>
1
{
return
false
}
...
...
@@ -488,10 +488,30 @@ extension YHWorkExperienceItemView: UITextFieldDelegate {
return
false
}
if
dataSource
?
.
id
==
.
id17
&&
newText
.
count
>
10
{
if
dataSource
?
.
id
==
.
id17
&&
newText
.
count
>
14
{
//10万亿元 100000 000000000
// let target = 100000000000000
// if let value = Int64(newText) {
// if value > target {
// return false
// }
// } else {
// return false
// }
return
false
}
if
dataSource
?
.
id
==
.
id12
&&
newText
.
count
>
50
{
return
false
}
if
(
dataSource
?
.
id
==
.
id14
||
dataSource
?
.
id
==
.
id16
||
dataSource
?
.
id
==
.
id18
)
&&
newText
.
count
>
100
{
return
false
}
var
data
=
dataSource
??
YHWorkExperienceModel
()
data
.
message
=
newText
if
let
block
=
block
{
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/V/YHInformationFillTipsAlertView.swift
View file @
711a9289
...
...
@@ -161,25 +161,25 @@ class YHInformationFillTipsAlertView: UIView {
let
lable01
=
UILabel
(
text
:
"信息填写提示"
)
lable01
.
textAlignment
=
.
center
lable01
.
font
=
UIFont
.
PFSC_M
(
ofSize
:
17
)
lable01
.
textColor
=
UIColor
.
mainTextColor
topView
.
addSubview
(
lable01
)
lable01
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalTo
(
21
)
make
.
right
.
equalTo
(
-
21
)
make
.
top
.
equalTo
(
16
)
make
.
top
.
equalTo
(
kMargin
)
make
.
centerX
.
equalToSuperview
()
make
.
height
.
equalTo
(
24
)
}
let
line
=
UIView
()
line
.
backgroundColor
=
UIColor
(
hexString
:
"#F0F0F0"
)
line
.
backgroundColor
=
UIColor
.
separatorColor
topView
.
addSubview
(
line
)
line
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
lable01
.
snp
.
bottom
)
.
offset
(
12
)
make
.
left
.
equalTo
(
21
)
make
.
right
.
equalTo
(
-
21
)
make
.
top
.
equalTo
(
lable01
.
snp
.
bottom
)
.
offset
(
12
)
make
.
height
.
equalTo
(
0.5
)
make
.
bottom
.
equalToSuperview
()
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/V/YHInformationFillTipsCell.swift
View file @
711a9289
...
...
@@ -57,7 +57,7 @@ extension YHInformationFillTipsCell {
}
//添加元素
let
lable0
=
UILabel
(
text
:
" 您好!欢迎来到香港优才申请系统,请按照实际情况填写。"
)
let
lable0
=
UILabel
(
text
:
"
您好!欢迎来到香港优才申请系统,请按照实际情况填写。"
)
lable0
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
14
)
lable0
.
textColor
=
UIColor
.
mainTextColor
lable0
.
numberOfLines
=
0
...
...
@@ -70,12 +70,12 @@ extension YHInformationFillTipsCell {
}
let
lable1
=
UILabel
(
text
:
" 1. 如您填写途中想离开系统,记得点击保存,在您有空闲的时间再继续进行填写;"
)
let
lable1
=
UILabel
(
text
:
"
1. 如您填写途中想离开系统,记得点击保存,在您有空闲的时间再继续进行填写;"
)
lable1
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
14
)
lable1
.
textColor
=
UIColor
.
mainTextColor
lable1
.
numberOfLines
=
0
lable1
.
lineBreakMode
=
.
byWordWrapping
let
a
:
ASAttributedString
=
.
init
(
" 1. 如您填写途中想离开系统,"
,
.
font
(
UIFont
.
PFSC_R
(
ofSize
:
14
)),
.
foreground
(
UIColor
.
mainTextColor
))
let
a
:
ASAttributedString
=
.
init
(
"
1. 如您填写途中想离开系统,"
,
.
font
(
UIFont
.
PFSC_R
(
ofSize
:
14
)),
.
foreground
(
UIColor
.
mainTextColor
))
let
b
:
ASAttributedString
=
.
init
(
"记得点击保存"
,
.
font
(
UIFont
.
PFSC_R
(
ofSize
:
14
)),
.
foreground
(
UIColor
.
brandMainColor
))
let
c
:
ASAttributedString
=
.
init
(
",在您有空闲的时间再继续进行填写;"
,
.
font
(
UIFont
.
PFSC_R
(
ofSize
:
14
)),
.
foreground
(
UIColor
.
mainTextColor
))
lable1
.
attributed
.
text
=
a
+
b
+
c
...
...
@@ -86,13 +86,13 @@ extension YHInformationFillTipsCell {
make
.
left
.
right
.
equalToSuperview
()
}
let
lable2
=
UILabel
(
text
:
" 2. 此次填写将花费您30-40分钟,系统将根据您所填写的信息,形成详细资料清单,一起为香港身份起航吧~"
)
let
lable2
=
UILabel
(
text
:
"
2. 此次填写将花费您30-40分钟,系统将根据您所填写的信息,形成详细资料清单,一起为香港身份起航吧~"
)
lable2
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
14
)
lable2
.
textColor
=
UIColor
.
mainTextColor
lable2
.
numberOfLines
=
0
lable2
.
lineBreakMode
=
.
byWordWrapping
let
aa
:
ASAttributedString
=
.
init
(
" 2. 此次填写将花费您"
,
.
font
(
UIFont
.
PFSC_R
(
ofSize
:
14
)),
.
foreground
(
UIColor
.
mainTextColor
))
let
aa
:
ASAttributedString
=
.
init
(
"
2. 此次填写将花费您"
,
.
font
(
UIFont
.
PFSC_R
(
ofSize
:
14
)),
.
foreground
(
UIColor
.
mainTextColor
))
let
bb
:
ASAttributedString
=
.
init
(
"30-40分钟"
,
.
font
(
UIFont
.
PFSC_R
(
ofSize
:
14
)),
.
foreground
(
UIColor
.
brandMainColor
))
let
cc
:
ASAttributedString
=
.
init
(
",系统将根据您所填写的信息,形成详细资料清单,一起为香港身份起航吧~"
,
.
font
(
UIFont
.
PFSC_R
(
ofSize
:
14
)),
.
foreground
(
UIColor
.
mainTextColor
))
lable2
.
attributed
.
text
=
aa
+
bb
+
cc
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/V/YHLoginTipsView.swift
View file @
711a9289
...
...
@@ -61,6 +61,38 @@ class YHLoginTipsView: UIView {
initView
()
}
override
func
layoutSubviews
()
{
super
.
layoutSubviews
()
tipsLab
.
snp
.
removeConstraints
()
loginBtn
.
snp
.
removeConstraints
()
loginBtn
.
isHidden
=
true
if
viewType
==
0
{
loginBtn
.
isHidden
=
false
tipsLab
.
snp
.
remakeConstraints
{
make
in
make
.
top
.
equalTo
(
iconImgV
.
snp
.
bottom
)
.
offset
(
12
)
make
.
centerX
.
equalToSuperview
()
make
.
left
.
right
.
equalToSuperview
()
}
loginBtn
.
snp
.
remakeConstraints
{
make
in
make
.
top
.
equalTo
(
tipsLab
.
snp
.
bottom
)
.
offset
(
21
)
make
.
centerX
.
equalToSuperview
()
make
.
height
.
equalTo
(
36
)
make
.
width
.
equalTo
(
86
)
make
.
bottom
.
equalToSuperview
()
}
}
else
{
tipsLab
.
snp
.
remakeConstraints
{
make
in
make
.
top
.
equalTo
(
iconImgV
.
snp
.
bottom
)
.
offset
(
12
)
make
.
centerX
.
equalToSuperview
()
make
.
left
.
right
.
equalToSuperview
()
make
.
bottom
.
equalToSuperview
()
}
}
}
private
func
initView
()
{
addSubview
(
iconImgV
)
iconImgV
.
snp
.
makeConstraints
{
make
in
...
...
@@ -88,7 +120,7 @@ class YHLoginTipsView: UIView {
loginBtn
.
addTarget
(
self
,
action
:
#selector(
clickLoginBtn
)
,
for
:
.
touchUpInside
)
layoutIfNeeded
()
loginBtn
.
backgroundColor
=
.
brandMainColor
//for test hjl
loginBtn
.
backgroundColor
=
.
brandMainColor
loginBtn
.
addYinHeGradualLayer
()
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/VM/YHServiceCenterMainViewModel.swift
View file @
711a9289
...
...
@@ -135,47 +135,45 @@ extension YHServiceCenterMainViewModel {
model
.
isFinished
=
true
arrContactStausItmes
.
append
(
model
)
let
model2
=
YHContactMainItemStatusModel
()
model2
.
type
=
2
model2
.
isFinished
=
false
arrContactStausItmes
.
append
(
model2
)
if
resultModel
.
supplement_not_submit_num
>
0
{
let
model2
=
YHContactMainItemStatusModel
()
model2
.
type
=
2
model2
.
isFinished
=
false
arrContactStausItmes
.
append
(
model2
)
}
else
{
let
model2
=
YHContactMainItemStatusModel
()
model2
.
type
=
2
model2
.
isFinished
=
true
arrContactStausItmes
.
append
(
model2
)
}
//我的评分
let
model3
=
YHContactMainItemStatusModel
()
model3
.
type
=
3
model3
.
isFinished
=
fals
e
model3
.
isFinished
=
tru
e
arrContactStausItmes
.
append
(
model3
)
let
model4
=
YHContactMainItemStatusModel
()
model4
.
type
=
4
model4
.
isFinished
=
false
arrContactStausItmes
.
append
(
model4
)
let
model5
=
YHContactMainItemStatusModel
()
model5
.
type
=
5
model5
.
isFinished
=
false
arrContactStausItmes
.
append
(
model5
)
if
resultModel
.
my_document
{
//我的文书
let
model4
=
YHContactMainItemStatusModel
()
model4
.
type
=
4
model4
.
isFinished
=
true
arrContactStausItmes
.
append
(
model4
)
}
if
resultModel
.
my_signature
{
let
model5
=
YHContactMainItemStatusModel
()
model5
.
type
=
5
model5
.
isFinished
=
true
arrContactStausItmes
.
append
(
model5
)
}
}
else
{
let
model
=
YHContactMainItemStatusModel
()
model
.
type
=
1
model
.
isFinished
=
false
arrContactStausItmes
.
append
(
model
)
let
model2
=
YHContactMainItemStatusModel
()
model2
.
type
=
2
model2
.
isFinished
=
false
arrContactStausItmes
.
append
(
model2
)
let
model4
=
YHContactMainItemStatusModel
()
model4
.
type
=
4
model4
.
isFinished
=
false
arrContactStausItmes
.
append
(
model4
)
let
model5
=
YHContactMainItemStatusModel
()
model5
.
type
=
5
model5
.
isFinished
=
false
arrContactStausItmes
.
append
(
model5
)
}
callBackBlock
(
true
,
nil
)
}
else
{
...
...
galaxy/galaxy/Classes/Modules/Mine(我的)/C/YHMyViewController.swift
View file @
711a9289
...
...
@@ -169,6 +169,21 @@ extension YHMyViewController : UITableViewDelegate, UITableViewDataSource {
if
(
indexPath
.
row
>=
items
.
count
)
{
return
}
// if true {
// YHCertificateUploadFailTipsView.tipsView().show()
// let vc = YHUploadContentVC()
// self.navigationController?.pushViewController(vc)
// let vc = YHCertificateResourceUploadVC()
// self.navigationController?.pushViewController(vc)
// return
// }
if
!
checkLogin
()
{
let
vc
=
UINavigationController
(
rootVC
:
YHPhoneLoginViewController
())
vc
.
modalPresentationStyle
=
.
custom
...
...
galaxy/galaxy/Classes/Tools/Helper/YHConstantArrayData.swift
View file @
711a9289
...
...
@@ -345,7 +345,7 @@ class YHConstantArrayData {
//通过 id 获取 title
static
func
getShowNameBy
(
indexStr
:
String
,
type
:
YHOtherPickerViewType
)
->
String
{
if
indexStr
.
isEmpty
{
return
"
未知
"
return
"
--
"
}
var
arrData
:
[[
String
:
String
]]
=
[[:]]
switch
type
{
...
...
@@ -365,9 +365,9 @@ class YHConstantArrayData {
for
item
in
arrData
{
if
let
target
=
item
[
"id"
],
indexStr
==
target
{
return
item
[
"title"
]
??
"
未知
"
return
item
[
"title"
]
??
"
--
"
}
}
return
"
未知
"
return
"
--
"
}
}
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/我的证书/my_cer_upload_fail.imageset/Contents.json
0 → 100644
View file @
711a9289
{
"images"
:
[
{
"idiom"
:
"universal"
,
"scale"
:
"1x"
},
{
"filename"
:
"Group 3034@2x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"2x"
},
{
"filename"
:
"Group 3034@3x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"3x"
}
],
"info"
:
{
"author"
:
"xcode"
,
"version"
:
1
}
}
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/我的证书/my_cer_upload_fail.imageset/Group 3034@2x.png
0 → 100644
View file @
711a9289
4.58 KB
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/我的证书/my_cer_upload_fail.imageset/Group 3034@3x.png
0 → 100644
View file @
711a9289
6.81 KB
galaxy/galaxy/Res/Font/DIN Alternate Bold.ttf
0 → 100644
View file @
711a9289
File added
galaxy/galaxy/Res/Info.plist
View file @
711a9289
...
...
@@ -2,6 +2,10 @@
<
!
D
O
C
TYP
E
plist
PU
B
LI
C
"-//
A
ppl
e
//
D
T
D
PLIST
1
.
0
//
E
N"
"http://www.
a
ppl
e
.
c
om/
D
T
D
s/Prop
e
rtyList-
1
.
0
.
d
t
d
"
>
<
plist
v
e
rsion="
1
.
0
"
>
<
d
i
c
t
>
<
k
e
y
>
UIAppFonts
<
/k
e
y
>
<
a
rr
a
y
>
<
string
>
DIN
Alternate
Bold
<
/string
>
<
/
a
rr
a
y
>
<
k
e
y
>
NSAppTransportSecurity
<
/k
e
y
>
<
d
i
c
t
>
<
k
e
y
>
NSAllowsArbitraryLoads
<
/k
e
y
>
...
...
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