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
b62d4d75
Commit
b62d4d75
authored
Feb 28, 2024
by
pete谢兆麟
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
工作经验逻辑
parent
3ef508f1
Changes
22
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
446 additions
and
414 deletions
+446
-414
project.pbxproj
galaxy/galaxy.xcodeproj/project.pbxproj
+12
-8
YHBaseModel.swift
galaxy/galaxy/Classes/Base/M/YHBaseModel.swift
+16
-0
YHInformationPerfectListVC.swift
...telligentService(服务中心)/C/YHInformationPerfectListVC.swift
+1
-0
YHMainApplicantInformationViewController.swift
...(主申请人信息)/C/YHMainApplicantInformationViewController.swift
+1
-1
YHCountryMessage.swift
...MainApplicantInformation(主申请人信息)/M/YHCountryMessage.swift
+1
-11
YHMainInformationModel.swift
...plicantInformation(主申请人信息)/M/YHMainInformationModel.swift
+44
-45
YHItemView.swift
...s(流程)/MainApplicantInformation(主申请人信息)/V/YHItemView.swift
+4
-6
YHMainApplicantInformationViewModel.swift
...tion(主申请人信息)/VM/YHMainApplicantInformationViewModel.swift
+140
-140
YHSelectCountryViewModel.swift
...cantInformation(主申请人信息)/VM/YHSelectCountryViewModel.swift
+2
-5
YHWorkExperienceListViewController.swift
...WorkExperience/C/YHWorkExperienceListViewController.swift
+5
-2
YHWorkExperienceViewController.swift
...流程)/WorkExperience/C/YHWorkExperienceViewController.swift
+3
-2
YHCompanyModel.swift
...viceProcess(流程)/WorkExperience/Model/YHCompanyModel.swift
+2
-3
YHWorkExampleModel.swift
...Process(流程)/WorkExperience/Model/YHWorkExampleModel.swift
+1
-2
YHWorkExperienceDetailModel.swift
...程)/WorkExperience/Model/YHWorkExperienceDetailModel.swift
+50
-51
YHWorkExperienceProjectModel.swift
...)/WorkExperience/Model/YHWorkExperienceProjectModel.swift
+1
-1
YHWorkItemListModel.swift
...rocess(流程)/WorkExperience/Model/YHWorkItemListModel.swift
+2
-3
YHCompanyViewModel.swift
...ess(流程)/WorkExperience/ViewModel/YHCompanyViewModel.swift
+2
-2
YHWorkExperienceViewModel.swift
.../WorkExperience/ViewModel/YHWorkExperienceViewModel.swift
+114
-109
YHWorkIntroductionViewModel.swift
...orkExperience/ViewModel/YHWorkIntroductionViewModel.swift
+12
-12
YHWorkItemListViewModel.swift
...程)/WorkExperience/ViewModel/YHWorkItemListViewModel.swift
+4
-4
YHAllApiName.swift
galaxy/galaxy/Classes/Tools/NetWork/YHAllApiName.swift
+27
-0
YHNetRequest.swift
galaxy/galaxy/Classes/Tools/NetWork/YHNetRequest.swift
+2
-7
No files found.
galaxy/galaxy.xcodeproj/project.pbxproj
View file @
b62d4d75
...
...
@@ -86,6 +86,7 @@
04C6936F2B7350E7004C1758
/* YHEducationDetailVC.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04C6936E2B7350E7004C1758
/* YHEducationDetailVC.swift */
;
};
04C693712B735C6F004C1758
/* YHQualificationDetailVC.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04C693702B735C6F004C1758
/* YHQualificationDetailVC.swift */
;
};
04C8F4832B7216D800ADF59B
/* YHUserInfoHeaderView.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04C8F4822B7216D800ADF59B
/* YHUserInfoHeaderView.swift */
;
};
04D5C5662B8ED92600190021
/* YHBaseModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04D5C5652B8ED92600190021
/* YHBaseModel.swift */
;
};
04E86E092B707ACE00A35F4B
/* YHPhoneLoginViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04E86E082B707ACE00A35F4B
/* YHPhoneLoginViewController.swift */
;
};
04E86E0B2B70C13300A35F4B
/* YHCodeSueecssViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04E86E0A2B70C13300A35F4B
/* YHCodeSueecssViewController.swift */
;
};
04E86E0D2B70D51D00A35F4B
/* YHWebViewViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
04E86E0C2B70D51D00A35F4B
/* YHWebViewViewController.swift */
;
};
...
...
@@ -381,6 +382,7 @@
04C6936E2B7350E7004C1758
/* YHEducationDetailVC.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHEducationDetailVC.swift
;
sourceTree
=
"<group>"
;
};
04C693702B735C6F004C1758
/* YHQualificationDetailVC.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHQualificationDetailVC.swift
;
sourceTree
=
"<group>"
;
};
04C8F4822B7216D800ADF59B
/* YHUserInfoHeaderView.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHUserInfoHeaderView.swift
;
sourceTree
=
"<group>"
;
};
04D5C5652B8ED92600190021
/* YHBaseModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHBaseModel.swift
;
sourceTree
=
"<group>"
;
};
04E86E082B707ACE00A35F4B
/* YHPhoneLoginViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHPhoneLoginViewController.swift
;
sourceTree
=
"<group>"
;
};
04E86E0A2B70C13300A35F4B
/* YHCodeSueecssViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHCodeSueecssViewController.swift
;
sourceTree
=
"<group>"
;
};
04E86E0C2B70D51D00A35F4B
/* YHWebViewViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHWebViewViewController.swift
;
sourceTree
=
"<group>"
;
};
...
...
@@ -601,13 +603,6 @@
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
040FA3352B6F700F0069D17F
/* M */
=
{
isa
=
PBXGroup
;
children
=
(
);
path
=
M
;
sourceTree
=
"<group>"
;
};
041B52852B565798007EBCEB
/* IM */
=
{
isa
=
PBXGroup
;
children
=
(
...
...
@@ -856,6 +851,14 @@
path
=
"Child(子女)"
;
sourceTree
=
"<group>"
;
};
04D5C5642B8ED91200190021
/* M */
=
{
isa
=
PBXGroup
;
children
=
(
04D5C5652B8ED92600190021
/* YHBaseModel.swift */
,
);
path
=
M
;
sourceTree
=
"<group>"
;
};
04E86E212B81E9FA00A35F4B
/* Recovered References */
=
{
isa
=
PBXGroup
;
children
=
(
...
...
@@ -1460,7 +1463,7 @@
A5ACE91E2B4564F7002C94D2
/* Base */
=
{
isa
=
PBXGroup
;
children
=
(
04
0FA3352B6F700F0069D17F
/* M */
,
04
D5C5642B8ED91200190021
/* M */
,
A5ACE91F2B4564F7002C94D2
/* C */
,
A5ACE9232B4564F7002C94D2
/* V */
,
);
...
...
@@ -1997,6 +2000,7 @@
04E86E6E2B87388100A35F4B
/* YHCompanyViewModel.swift in Sources */
,
A5FD63CB2B63D6C300D1D9DA
/* YHInformationFillTipsCell.swift in Sources */
,
04C693712B735C6F004C1758
/* YHQualificationDetailVC.swift in Sources */
,
04D5C5662B8ED92600190021
/* YHBaseModel.swift in Sources */
,
04E86E492B8445F400A35F4B
/* YHWorkActionView.swift in Sources */
,
A5ACE9272B4564F7002C94D2
/* YHLoginViewController.swift in Sources */
,
);
...
...
galaxy/galaxy/Classes/Base/M/YHBaseModel.swift
0 → 100644
View file @
b62d4d75
//
// YHBaseModel.swift
// galaxy
//
// Created by EDY on 2024/2/28.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
import
HandyJSON
class
YHBaseModel
:
HandyJSON
{
required
init
()
{
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/C/YHInformationPerfectListVC.swift
View file @
b62d4d75
...
...
@@ -355,6 +355,7 @@ extension YHInformationPerfectListVC : UITableViewDelegate,UITableViewDataSource
}
else
if
indexPath
.
row
==
4
{
//工作经历
let
vc
=
YHWorkExperienceListViewController
()
vc
.
orderId
=
orderId
??
0
navigationController
?
.
pushViewController
(
vc
)
}
else
if
indexPath
.
row
==
5
{
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/MainApplicantInformation(主申请人信息)/C/YHMainApplicantInformationViewController.swift
View file @
b62d4d75
...
...
@@ -53,7 +53,7 @@ class YHMainApplicantInformationViewController: YHBaseViewController {
stepView
=
{
let
step
=
YHStepView
()
step
.
dataSource
=
[
"初始信息"
,
"证件上传"
,
"
基本信息"
,
"证件
信息"
]
step
.
dataSource
=
[
"初始信息"
,
"证件上传"
,
"
证件信息"
,
"基本
信息"
]
step
.
block
=
{
[
weak
self
]
(
index
)
in
guard
let
self
=
self
else
{
return
}
self
.
updateDataSource
()
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/MainApplicantInformation(主申请人信息)/M/YHCountryMessage.swift
View file @
b62d4d75
...
...
@@ -7,19 +7,9 @@
//
import
Foundation
import
SmartCodable
struct
YHCountryMessage
:
SmartCodable
{
class
YHCountryMessage
:
YHBaseModel
{
var
name_cn
:
String
?
var
name_en
:
String
?
var
code
:
String
?
init
(
name_cn
:
String
?
=
nil
,
name_en
:
String
?
=
nil
,
code
:
String
?
=
nil
)
{
self
.
name_cn
=
name_cn
self
.
name_en
=
name_en
self
.
code
=
code
}
init
()
{
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/MainApplicantInformation(主申请人信息)/M/YHMainInformationModel.swift
View file @
b62d4d75
...
...
@@ -7,58 +7,57 @@
//
import
Foundation
import
SmartCodable
struct
YHMainInformationModel
:
SmartCodable
{
var
id
:
Int
?
=
0
var
order_id
:
String
?
=
""
var
nationality
:
String
?
=
""
var
is_handled
:
Int
?
=
0
var
username
:
String
?
=
""
var
used_name
:
String
?
=
""
var
birthday
:
String
?
=
""
var
age
:
String
?
=
""
var
birth_place_aboard
:
Int
?
=
0
var
sex
:
Int
?
=
0
var
married
:
Int
?
=
0
var
mobile
:
String
?
=
""
var
email
:
String
?
=
""
var
address_aboard
:
Int
?
=
0
var
has_hk_id
:
Int
?
=
0
var
hk_id_number
:
String
?
=
""
var
step
:
Int
?
=
0
var
surname
:
String
?
=
""
var
is_live_oversea_year
:
Int
?
=
0
var
username_pinyin
:
YHUserNameModel
?
=
YHUserNameModel
()
var
birth_place
:
YHAddressModel
?
=
YHAddressModel
()
var
address
:
YHAddressModel
?
=
YHAddressModel
()
var
certificates
:
YHCertificatesModels
?
=
YHCertificatesModels
()
class
YHMainInformationModel
:
YHBaseModel
{
var
id
:
Int
=
0
var
order_id
:
String
=
""
var
nationality
:
String
=
""
var
is_handled
:
Int
=
0
var
username
:
String
=
""
var
used_name
:
String
=
""
var
birthday
:
String
=
""
var
age
:
String
=
""
var
birth_place_aboard
:
Int
=
0
var
sex
:
Int
=
0
var
married
:
Int
=
0
var
mobile
:
String
=
""
var
email
:
String
=
""
var
address_aboard
:
Int
=
0
var
has_hk_id
:
Int
=
0
var
hk_id_number
:
String
=
""
var
step
:
Int
=
0
var
surname
:
String
=
""
var
is_live_oversea_year
:
Int
=
0
var
username_pinyin
:
YHUserNameModel
=
YHUserNameModel
()
var
birth_place
:
YHAddressModel
=
YHAddressModel
()
var
address
:
YHAddressModel
=
YHAddressModel
()
var
certificates
:
YHCertificatesModels
=
YHCertificatesModels
()
}
struct
YHUserNameModel
:
SmartCodable
{
var
family_name
:
String
?
=
""
var
given_name
:
String
?
=
""
class
YHUserNameModel
:
YHBaseModel
{
var
family_name
:
String
=
""
var
given_name
:
String
=
""
}
struct
YHAddressModel
:
SmartCodable
{
var
area
:
[
String
]
?
=
[]
var
country
:
String
?
=
""
var
details
:
String
?
=
""
var
foreign
:
String
?
=
""
class
YHAddressModel
:
YHBaseModel
{
var
area
:
[
String
]
=
[]
var
country
:
String
=
""
var
details
:
String
=
""
var
foreign
:
String
=
""
}
struct
YHCertificatesModels
:
SmartCodable
{
var
hk_macao_pass
:
YHCertificatesModel
?
=
YHCertificatesModel
()
var
passport
:
YHCertificatesModel
?
=
YHCertificatesModel
()
var
cn_identity_card
:
YHCertificatesModel
?
=
YHCertificatesModel
()
class
YHCertificatesModels
:
YHBaseModel
{
var
hk_macao_pass
:
YHCertificatesModel
=
YHCertificatesModel
()
var
passport
:
YHCertificatesModel
=
YHCertificatesModel
()
var
cn_identity_card
:
YHCertificatesModel
=
YHCertificatesModel
()
}
struct
YHCertificatesModel
:
SmartCodable
{
var
number
:
String
?
=
""
var
issue_at
:
String
?
=
""
var
issue_date_start_at
:
String
?
=
""
var
issue_date_end_at
:
String
?
=
""
var
img_front
:
String
?
=
""
var
img_back
:
String
?
=
""
var
passport_type
:
String
?
=
""
class
YHCertificatesModel
:
YHBaseModel
{
var
number
:
String
=
""
var
issue_at
:
String
=
""
var
issue_date_start_at
:
String
=
""
var
issue_date_end_at
:
String
=
""
var
img_front
:
String
=
""
var
img_back
:
String
=
""
var
passport_type
:
String
=
""
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/MainApplicantInformation(主申请人信息)/V/YHItemView.swift
View file @
b62d4d75
...
...
@@ -360,17 +360,15 @@ class YHItemView: UIView {
extension
YHItemView
:
UITextFieldDelegate
{
func
textFieldDidEndEditing
(
_
textField
:
UITextField
)
{
dataSource
?
.
message
=
textField
.
text
if
let
block
=
block
{
block
(
dataSource
??
YHItemModel
())
}
}
func
textField
(
_
textField
:
UITextField
,
shouldChangeCharactersIn
range
:
NSRange
,
replacementString
string
:
String
)
->
Bool
{
let
newText
=
(
textField
.
text
!
as
NSString
)
.
replacingCharacters
(
in
:
range
,
with
:
string
)
dataSource
?
.
message
=
newText
var
data
=
dataSource
??
YHItemModel
()
data
.
message
=
newText
if
let
block
=
block
{
block
(
data
Source
??
YHItemModel
()
)
block
(
data
)
}
return
true
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/MainApplicantInformation(主申请人信息)/VM/YHMainApplicantInformationViewModel.swift
View file @
b62d4d75
...
...
@@ -25,23 +25,22 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
let
item
=
YHItemModel
(
id
:
.
id1
,
isNeed
:
true
,
title
:
"国家/地区"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
nationality
,
type
:
.
country
,
isShowPrompts
:
isShowPrompt
)
let
section
=
YHSectionItemModel
(
title
:
"国籍"
,
models
:
[
item
])
let
item4
=
YHItemModel
(
id
:
.
id2
,
isNeed
:
true
,
title
:
"国家/地区"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
address
?
.
country
,
type
:
.
country
,
isShowPrompts
:
isShowPrompt
)
let
item4
=
YHItemModel
(
id
:
.
id2
,
isNeed
:
true
,
title
:
"国家/地区"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
address
.
country
,
type
:
.
country
,
isShowPrompts
:
isShowPrompt
)
var
string
=
""
if
let
array
=
mainModel
.
address
?
.
area
{
for
item
in
array
{
string
=
string
+
item
}
let
array
=
mainModel
.
address
.
area
for
item
in
array
{
string
=
string
+
item
}
let
item1
=
YHItemModel
(
id
:
.
id3
,
isNeed
:
true
,
title
:
"省市地区"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
string
,
type
:
.
address
,
isShowPrompts
:
isShowPrompt
)
let
item2
=
YHItemModel
(
id
:
.
id4
,
isNeed
:
true
,
title
:
"详细地址"
,
isUserKeyBoard
:
true
,
prompts
:
"请填写小区、楼栋、单元室等"
,
message
:
mainModel
.
address
?
.
details
,
isShowPrompts
:
isShowPrompt
)
let
item11
=
YHItemModel
(
id
:
.
id32
,
isNeed
:
true
,
title
:
"详细地址"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
address
?
.
foreign
,
isShowPrompts
:
isShowPrompt
)
let
item22
=
YHItemModel
(
id
:
.
id33
,
isNeed
:
true
,
title
:
"是否在海外居住一年及以上"
,
isUserKeyBoard
:
false
,
prompts
:
""
,
message
:
"
\(
mainModel
.
is_live_oversea_year
??
0
)
"
,
leftButtonString
:
"是"
,
rightButtonString
:
"否"
,
isShowPrompts
:
isShowPrompt
)
let
item2
=
YHItemModel
(
id
:
.
id4
,
isNeed
:
true
,
title
:
"详细地址"
,
isUserKeyBoard
:
true
,
prompts
:
"请填写小区、楼栋、单元室等"
,
message
:
mainModel
.
address
.
details
,
isShowPrompts
:
isShowPrompt
)
let
item11
=
YHItemModel
(
id
:
.
id32
,
isNeed
:
true
,
title
:
"详细地址"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
address
.
foreign
,
isShowPrompts
:
isShowPrompt
)
let
item22
=
YHItemModel
(
id
:
.
id33
,
isNeed
:
true
,
title
:
"是否在海外居住一年及以上"
,
isUserKeyBoard
:
false
,
prompts
:
""
,
message
:
"
\(
mainModel
.
is_live_oversea_year
)
"
,
leftButtonString
:
"是"
,
rightButtonString
:
"否"
,
isShowPrompts
:
isShowPrompt
)
let
section1
=
YHSectionItemModel
(
title
:
"现居住地址"
,
models
:
[
item4
,
item1
,
item2
])
let
section11
=
YHSectionItemModel
(
title
:
"现居住地址"
,
models
:
[
item4
,
item11
,
item22
])
let
item3
=
YHItemModel
(
id
:
.
id5
,
isNeed
:
true
,
title
:
"是否办理"
,
isUserKeyBoard
:
false
,
prompts
:
""
,
message
:
"
\(
mainModel
.
has_hk_id
??
0
)
"
,
leftButtonString
:
"是"
,
rightButtonString
:
"否"
,
isShowPrompts
:
isShowPrompt
)
let
item3
=
YHItemModel
(
id
:
.
id5
,
isNeed
:
true
,
title
:
"是否办理"
,
isUserKeyBoard
:
false
,
prompts
:
""
,
message
:
"
\(
mainModel
.
has_hk_id
)
"
,
leftButtonString
:
"是"
,
rightButtonString
:
"否"
,
isShowPrompts
:
isShowPrompt
)
let
section2
=
YHSectionItemModel
(
title
:
"港澳通行证"
,
models
:
[
item3
])
let
addressCountry
=
mainModel
.
address
?
.
country
??
""
let
addressCountry
=
mainModel
.
address
.
country
if
addressCountry
.
contains
(
"中国"
)
{
return
[
section
,
section1
,
section2
]
}
else
{
...
...
@@ -51,27 +50,27 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
func
getDocumentInformation
(
_
isShowPrompt
:
Bool
)
->
[
YHSectionItemModel
]
{
var
flag
=
false
let
nationality
=
mainModel
.
nationality
??
""
let
nationality
=
mainModel
.
nationality
if
nationality
.
contains
(
"中国"
)
{
flag
=
true
}
let
item
=
YHItemModel
(
id
:
.
id8
,
isNeed
:
flag
,
title
:
"身份证号码"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
number
,
isShowPrompts
:
isShowPrompt
)
let
item1
=
YHItemModel
(
id
:
.
id9
,
isNeed
:
flag
,
title
:
"签发地"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
issue_at
,
isShowPrompts
:
isShowPrompt
)
let
item2
=
YHItemModel
(
id
:
.
id10
,
isNeed
:
flag
,
title
:
"签发日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
issue_date_start_at
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
item3
=
YHItemModel
(
id
:
.
id11
,
isNeed
:
flag
,
title
:
"届满日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
issue_date_end_at
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
item
=
YHItemModel
(
id
:
.
id8
,
isNeed
:
flag
,
title
:
"身份证号码"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
certificates
.
cn_identity_card
.
number
,
isShowPrompts
:
isShowPrompt
)
let
item1
=
YHItemModel
(
id
:
.
id9
,
isNeed
:
flag
,
title
:
"签发地"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
certificates
.
cn_identity_card
.
issue_at
,
isShowPrompts
:
isShowPrompt
)
let
item2
=
YHItemModel
(
id
:
.
id10
,
isNeed
:
flag
,
title
:
"签发日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
.
cn_identity_card
.
issue_date_start_at
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
item3
=
YHItemModel
(
id
:
.
id11
,
isNeed
:
flag
,
title
:
"届满日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
.
cn_identity_card
.
issue_date_end_at
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
section
=
YHSectionItemModel
(
title
:
"中国身份证"
,
models
:
[
item
,
item1
,
item2
,
item3
])
let
item10
=
YHItemModel
(
id
:
.
id12
,
isNeed
:
true
,
title
:
"身份证号码"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
number
,
isShowPrompts
:
isShowPrompt
)
let
item11
=
YHItemModel
(
id
:
.
id13
,
isNeed
:
true
,
title
:
"签发地"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
issue_at
,
isShowPrompts
:
isShowPrompt
)
let
item12
=
YHItemModel
(
id
:
.
id14
,
isNeed
:
true
,
title
:
"签发日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
issue_date_start_at
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
item13
=
YHItemModel
(
id
:
.
id15
,
isNeed
:
true
,
title
:
"届满日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
issue_date_end_at
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
item10
=
YHItemModel
(
id
:
.
id12
,
isNeed
:
true
,
title
:
"身份证号码"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
certificates
.
hk_macao_pass
.
number
,
isShowPrompts
:
isShowPrompt
)
let
item11
=
YHItemModel
(
id
:
.
id13
,
isNeed
:
true
,
title
:
"签发地"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
certificates
.
hk_macao_pass
.
issue_at
,
isShowPrompts
:
isShowPrompt
)
let
item12
=
YHItemModel
(
id
:
.
id14
,
isNeed
:
true
,
title
:
"签发日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
.
hk_macao_pass
.
issue_date_start_at
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
item13
=
YHItemModel
(
id
:
.
id15
,
isNeed
:
true
,
title
:
"届满日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
.
hk_macao_pass
.
issue_date_end_at
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
section1
=
YHSectionItemModel
(
title
:
"港澳通行证"
,
models
:
[
item10
,
item11
,
item12
,
item13
])
let
item4
=
YHItemModel
(
id
:
.
id16
,
isNeed
:
false
,
title
:
"证件类别"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
?
.
passport
?
.
passport_type
,
type
:
.
id
,
isShowPrompts
:
isShowPrompt
)
let
item5
=
YHItemModel
(
id
:
.
id17
,
isNeed
:
false
,
title
:
"证件号码"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
certificates
?
.
passport
?
.
number
,
isShowPrompts
:
isShowPrompt
)
let
item6
=
YHItemModel
(
id
:
.
id18
,
isNeed
:
false
,
title
:
"签发地"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
certificates
?
.
passport
?
.
issue_at
,
isShowPrompts
:
isShowPrompt
)
let
item7
=
YHItemModel
(
id
:
.
id19
,
isNeed
:
false
,
title
:
"签发日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
?
.
passport
?
.
issue_date_start_at
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
item8
=
YHItemModel
(
id
:
.
id20
,
isNeed
:
false
,
title
:
"届满日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
?
.
passport
?
.
issue_date_end_at
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
item4
=
YHItemModel
(
id
:
.
id16
,
isNeed
:
false
,
title
:
"证件类别"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
.
passport
.
passport_type
,
type
:
.
id
,
isShowPrompts
:
isShowPrompt
)
let
item5
=
YHItemModel
(
id
:
.
id17
,
isNeed
:
false
,
title
:
"证件号码"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
certificates
.
passport
.
number
,
isShowPrompts
:
isShowPrompt
)
let
item6
=
YHItemModel
(
id
:
.
id18
,
isNeed
:
false
,
title
:
"签发地"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
certificates
.
passport
.
issue_at
,
isShowPrompts
:
isShowPrompt
)
let
item7
=
YHItemModel
(
id
:
.
id19
,
isNeed
:
false
,
title
:
"签发日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
.
passport
.
issue_date_start_at
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
item8
=
YHItemModel
(
id
:
.
id20
,
isNeed
:
false
,
title
:
"届满日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
certificates
.
passport
.
issue_date_end_at
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
section2
=
YHSectionItemModel
(
title
:
"护照及其他旅行证件(选填)"
,
models
:
[
item4
,
item5
,
item6
,
item7
,
item8
])
if
mainModel
.
has_hk_id
==
1
{
return
[
section
,
section1
,
section2
]
...
...
@@ -85,17 +84,17 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
let
item1
=
YHItemModel
(
id
:
.
id22
,
isNeed
:
false
,
title
:
"曾用名"
,
isUserKeyBoard
:
true
,
prompts
:
"请与户口本一致,若无则不填"
,
message
:
mainModel
.
used_name
,
isShowPrompts
:
isShowPrompt
)
let
item2
=
YHItemModel
(
id
:
.
id23
,
isNeed
:
false
,
title
:
"婚前姓氏"
,
isUserKeyBoard
:
true
,
prompts
:
"如有则填写,仅支持输入字母"
,
message
:
mainModel
.
surname
,
isShowPrompts
:
isShowPrompt
)
let
item3
=
YHItemModel
(
id
:
.
id24
,
isNeed
:
true
,
title
:
"出生日期"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
birthday
,
type
:
.
time
,
isShowPrompts
:
isShowPrompt
)
let
item4
=
YHItemModel
(
id
:
.
id25
,
isNeed
:
true
,
title
:
"出生国家/地区"
,
isUserKeyBoard
:
false
,
prompts
:
nil
,
message
:
"
\(
mainModel
.
birth_place_aboard
??
0
)
"
,
leftButtonString
:
"国外"
,
rightButtonString
:
"国内"
,
isShowPrompts
:
isShowPrompt
)
let
item4
=
YHItemModel
(
id
:
.
id25
,
isNeed
:
true
,
title
:
"出生国家/地区"
,
isUserKeyBoard
:
false
,
prompts
:
nil
,
message
:
"
\(
mainModel
.
birth_place_aboard
)
"
,
leftButtonString
:
"国外"
,
rightButtonString
:
"国内"
,
isShowPrompts
:
isShowPrompt
)
var
string
=
""
if
let
array
=
mainModel
.
birth_place
?
.
area
{
for
item
in
array
{
string
=
string
+
item
}
let
array
=
mainModel
.
birth_place
.
area
for
item
in
array
{
string
=
string
+
item
}
let
item5
=
YHItemModel
(
id
:
.
id26
,
isNeed
:
true
,
title
:
"出生城市"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
string
,
type
:
.
address
,
isShowPrompts
:
isShowPrompt
)
let
item55
=
YHItemModel
(
id
:
.
id34
,
isNeed
:
true
,
title
:
"出生城市"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
birth_place
?
.
foreign
,
isShowPrompts
:
isShowPrompt
)
let
item6
=
YHItemModel
(
id
:
.
id27
,
isNeed
:
true
,
title
:
"性别"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
"
\(
mainModel
.
sex
??
0
)
"
,
type
:
.
sex
)
let
item7
=
YHItemModel
(
id
:
.
id28
,
isNeed
:
true
,
title
:
"婚姻状况"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
"
\(
mainModel
.
married
??
0
)
"
,
type
:
.
marry
,
isShowPrompts
:
isShowPrompt
)
let
item55
=
YHItemModel
(
id
:
.
id34
,
isNeed
:
true
,
title
:
"出生城市"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
birth_place
.
foreign
,
isShowPrompts
:
isShowPrompt
)
let
item6
=
YHItemModel
(
id
:
.
id27
,
isNeed
:
true
,
title
:
"性别"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
"
\(
mainModel
.
sex
)
"
,
type
:
.
sex
)
let
item7
=
YHItemModel
(
id
:
.
id28
,
isNeed
:
true
,
title
:
"婚姻状况"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
"
\(
mainModel
.
married
)
"
,
type
:
.
marry
,
isShowPrompts
:
isShowPrompt
)
var
item555
=
item5
if
mainModel
.
birth_place_aboard
==
1
{
item555
=
item55
...
...
@@ -106,7 +105,7 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
let
item9
=
YHItemModel
(
id
:
.
id30
,
isNeed
:
true
,
title
:
"电子邮箱"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
email
,
isShowPrompts
:
isShowPrompt
)
let
section1
=
YHSectionItemModel
(
title
:
"联系方式"
,
models
:
[
item8
,
item9
])
let
item10
=
YHItemModel
(
id
:
.
id31
,
isNeed
:
true
,
title
:
"是否办理过"
,
isUserKeyBoard
:
false
,
prompts
:
nil
,
message
:
"
\(
mainModel
.
has_hk_id
??
0
)
"
,
leftButtonString
:
"是"
,
rightButtonString
:
"否"
,
isShowPrompts
:
isShowPrompt
)
let
item10
=
YHItemModel
(
id
:
.
id31
,
isNeed
:
true
,
title
:
"是否办理过"
,
isUserKeyBoard
:
false
,
prompts
:
nil
,
message
:
"
\(
mainModel
.
has_hk_id
)
"
,
leftButtonString
:
"是"
,
rightButtonString
:
"否"
,
isShowPrompts
:
isShowPrompt
)
let
item11
=
YHItemModel
(
id
:
.
id35
,
isNeed
:
true
,
title
:
"香港身份证号码"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
hk_id_number
,
isShowPrompts
:
isShowPrompt
)
let
section2
=
YHSectionItemModel
(
title
:
"香港身份证"
,
models
:
[
item10
])
let
section22
=
YHSectionItemModel
(
title
:
"香港身份证"
,
models
:
[
item10
,
item11
])
...
...
@@ -134,75 +133,75 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
switch
type
{
case
.
id1
:
mainModel
.
nationality
=
item
.
message
mainModel
.
nationality
=
item
.
message
??
""
case
.
id2
:
mainModel
.
address
?
.
country
=
item
.
message
mainModel
.
address
.
country
=
item
.
message
??
""
case
.
id3
:
mainModel
.
address
?
.
area
=
item
.
value
mainModel
.
address
.
area
=
item
.
value
??
[]
case
.
id4
:
mainModel
.
address
?
.
details
=
item
.
message
mainModel
.
address
.
details
=
item
.
message
??
""
case
.
id5
:
mainModel
.
has_hk_id
=
item
.
value
?
.
first
?
.
int
mainModel
.
has_hk_id
=
item
.
value
?
.
first
?
.
int
??
0
case
.
id6
:
printLog
(
"1"
)
case
.
id7
:
printLog
(
"1"
)
case
.
id8
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
number
=
item
.
message
mainModel
.
certificates
.
cn_identity_card
.
number
=
item
.
message
??
""
case
.
id9
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
issue_at
=
item
.
message
mainModel
.
certificates
.
cn_identity_card
.
issue_at
=
item
.
message
??
""
case
.
id10
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
issue_date_start_at
=
item
.
message
mainModel
.
certificates
.
cn_identity_card
.
issue_date_start_at
=
item
.
message
??
""
case
.
id11
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
issue_date_end_at
=
item
.
message
mainModel
.
certificates
.
cn_identity_card
.
issue_date_end_at
=
item
.
message
??
""
case
.
id12
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
number
=
item
.
message
mainModel
.
certificates
.
hk_macao_pass
.
number
=
item
.
message
??
""
case
.
id13
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
issue_at
=
item
.
message
mainModel
.
certificates
.
hk_macao_pass
.
issue_at
=
item
.
message
??
""
case
.
id14
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
issue_date_start_at
=
item
.
message
mainModel
.
certificates
.
hk_macao_pass
.
issue_date_start_at
=
item
.
message
??
""
case
.
id15
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
issue_date_end_at
=
item
.
message
mainModel
.
certificates
.
hk_macao_pass
.
issue_date_end_at
=
item
.
message
??
""
case
.
id16
:
mainModel
.
certificates
?
.
passport
?
.
passport_type
=
item
.
value
?
.
first
mainModel
.
certificates
.
passport
.
passport_type
=
item
.
value
?
.
first
??
""
case
.
id17
:
mainModel
.
certificates
?
.
passport
?
.
number
=
item
.
message
mainModel
.
certificates
.
passport
.
number
=
item
.
message
??
""
case
.
id18
:
mainModel
.
certificates
?
.
passport
?
.
issue_at
=
item
.
message
mainModel
.
certificates
.
passport
.
issue_at
=
item
.
message
??
""
case
.
id19
:
mainModel
.
certificates
?
.
passport
?
.
issue_date_start_at
=
item
.
message
mainModel
.
certificates
.
passport
.
issue_date_start_at
=
item
.
message
??
""
case
.
id20
:
mainModel
.
certificates
?
.
passport
?
.
issue_date_end_at
=
item
.
message
mainModel
.
certificates
.
passport
.
issue_date_end_at
=
item
.
message
??
""
case
.
id21
:
mainModel
.
username
=
item
.
message
mainModel
.
username
=
item
.
message
??
""
case
.
id22
:
mainModel
.
used_name
=
item
.
message
mainModel
.
used_name
=
item
.
message
??
""
case
.
id23
:
mainModel
.
surname
=
item
.
message
mainModel
.
surname
=
item
.
message
??
""
case
.
id24
:
mainModel
.
birthday
=
item
.
message
mainModel
.
birthday
=
item
.
message
??
""
case
.
id25
:
mainModel
.
birth_place_aboard
=
item
.
value
?
.
first
?
.
int
mainModel
.
birth_place_aboard
=
item
.
value
?
.
first
?
.
int
??
0
case
.
id26
:
mainModel
.
birth_place
?
.
area
=
item
.
value
mainModel
.
birth_place
.
area
=
item
.
value
??
[]
case
.
id27
:
mainModel
.
sex
=
item
.
value
?
.
first
?
.
int
mainModel
.
sex
=
item
.
value
?
.
first
?
.
int
??
0
case
.
id28
:
mainModel
.
married
=
item
.
value
?
.
first
?
.
int
mainModel
.
married
=
item
.
value
?
.
first
?
.
int
??
0
case
.
id29
:
mainModel
.
mobile
=
item
.
message
mainModel
.
mobile
=
item
.
message
??
""
case
.
id30
:
mainModel
.
email
=
item
.
message
mainModel
.
email
=
item
.
message
??
""
case
.
id31
:
mainModel
.
has_hk_id
=
item
.
value
?
.
first
?
.
int
mainModel
.
has_hk_id
=
item
.
value
?
.
first
?
.
int
??
0
case
.
id32
:
mainModel
.
address
?
.
foreign
=
item
.
message
mainModel
.
address
.
foreign
=
item
.
message
??
""
case
.
id33
:
mainModel
.
is_live_oversea_year
=
item
.
value
?
.
first
?
.
int
mainModel
.
is_live_oversea_year
=
item
.
value
?
.
first
?
.
int
??
0
case
.
id34
:
mainModel
.
birth_place
?
.
foreign
=
item
.
message
mainModel
.
birth_place
.
foreign
=
item
.
message
??
""
case
.
id35
:
mainModel
.
hk_id_number
=
item
.
message
mainModel
.
hk_id_number
=
item
.
message
??
""
}
}
...
...
@@ -217,7 +216,8 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
guard
let
self
=
self
else
{
return
}
let
dic
=
json
.
data
guard
let
result
=
YHMainInformationModel
.
deserialize
(
dict
:
dic
as?
[
AnyHashable
:
Any
])
else
{
guard
let
result
=
YHMainInformationModel
.
deserialize
(
from
:
dic
as?
Dictionary
)
else
{
printLog
(
"解析data失败:
\(
dic
!
)
"
)
callBackBlock
(
nil
,
nil
)
return
}
...
...
@@ -235,59 +235,59 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
}
else
{
type
=
"submit"
}
let
area
:
[
String
]
=
mainModel
.
address
?
.
area
??
[]
let
birthArea
:
[
String
]
=
mainModel
.
birth_place
?
.
area
??
[]
let
area
:
[
String
]
=
mainModel
.
address
.
area
let
birthArea
:
[
String
]
=
mainModel
.
birth_place
.
area
let
address
=
[
"area"
:
area
,
"country"
:
mainModel
.
address
?
.
country
??
""
,
"details"
:
mainModel
.
address
?
.
details
??
""
,
"foreign"
:
mainModel
.
address
?
.
foreign
??
""
]
as
[
String
:
Any
]
"country"
:
mainModel
.
address
.
country
,
"details"
:
mainModel
.
address
.
details
,
"foreign"
:
mainModel
.
address
.
foreign
]
as
[
String
:
Any
]
let
birthPlace
=
[
"area"
:
birthArea
,
"country"
:
mainModel
.
birth_place
?
.
country
??
""
,
"details"
:
mainModel
.
birth_place
?
.
details
??
""
,
"foreign"
:
mainModel
.
birth_place
?
.
foreign
??
""
]
as
[
String
:
Any
]
let
cnID
=
[
"img_back"
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
img_back
??
""
,
"img_front"
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
img_front
??
""
,
"issue_at"
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
issue_at
??
""
,
"issue_date_end_at"
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
issue_date_end_at
??
""
,
"issue_date_start_at"
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
issue_date_start_at
??
""
,
"number"
:
mainModel
.
certificates
?
.
cn_identity_card
?
.
number
??
""
]
as
[
String
:
Any
]
let
hkID
=
[
"img_back"
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
img_back
??
""
,
"img_front"
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
img_front
??
""
,
"issue_at"
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
issue_at
??
""
,
"issue_date_end_at"
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
issue_date_end_at
??
""
,
"issue_date_start_at"
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
issue_date_start_at
??
""
,
"number"
:
mainModel
.
certificates
?
.
hk_macao_pass
?
.
number
??
""
]
as
[
String
:
Any
]
let
passport
=
[
"img_back"
:
mainModel
.
certificates
?
.
passport
?
.
img_back
??
""
,
"img_front"
:
mainModel
.
certificates
?
.
passport
?
.
img_front
??
""
,
"issue_at"
:
mainModel
.
certificates
?
.
passport
?
.
issue_at
??
""
,
"issue_date_end_at"
:
mainModel
.
certificates
?
.
passport
?
.
issue_date_end_at
??
""
,
"issue_date_start_at"
:
mainModel
.
certificates
?
.
passport
?
.
issue_date_start_at
??
""
,
"number"
:
mainModel
.
certificates
?
.
passport
?
.
number
??
""
,
"passport_type"
:
mainModel
.
certificates
?
.
passport
?
.
passport_type
??
0
]
as
[
String
:
Any
]
"country"
:
mainModel
.
birth_place
.
country
,
"details"
:
mainModel
.
birth_place
.
details
,
"foreign"
:
mainModel
.
birth_place
.
foreign
]
as
[
String
:
Any
]
let
cnID
=
[
"img_back"
:
mainModel
.
certificates
.
cn_identity_card
.
img_back
,
"img_front"
:
mainModel
.
certificates
.
cn_identity_card
.
img_front
,
"issue_at"
:
mainModel
.
certificates
.
cn_identity_card
.
issue_at
,
"issue_date_end_at"
:
mainModel
.
certificates
.
cn_identity_card
.
issue_date_end_at
,
"issue_date_start_at"
:
mainModel
.
certificates
.
cn_identity_card
.
issue_date_start_at
,
"number"
:
mainModel
.
certificates
.
cn_identity_card
.
number
]
as
[
String
:
Any
]
let
hkID
=
[
"img_back"
:
mainModel
.
certificates
.
hk_macao_pass
.
img_back
,
"img_front"
:
mainModel
.
certificates
.
hk_macao_pass
.
img_front
,
"issue_at"
:
mainModel
.
certificates
.
hk_macao_pass
.
issue_at
,
"issue_date_end_at"
:
mainModel
.
certificates
.
hk_macao_pass
.
issue_date_end_at
,
"issue_date_start_at"
:
mainModel
.
certificates
.
hk_macao_pass
.
issue_date_start_at
,
"number"
:
mainModel
.
certificates
.
hk_macao_pass
.
number
]
as
[
String
:
Any
]
let
passport
=
[
"img_back"
:
mainModel
.
certificates
.
passport
.
img_back
,
"img_front"
:
mainModel
.
certificates
.
passport
.
img_front
,
"issue_at"
:
mainModel
.
certificates
.
passport
.
issue_at
,
"issue_date_end_at"
:
mainModel
.
certificates
.
passport
.
issue_date_end_at
,
"issue_date_start_at"
:
mainModel
.
certificates
.
passport
.
issue_date_start_at
,
"number"
:
mainModel
.
certificates
.
passport
.
number
,
"passport_type"
:
mainModel
.
certificates
.
passport
.
passport_type
]
as
[
String
:
Any
]
let
params
:
[
String
:
Any
]
=
[
"address"
:
address
,
"address_aboard"
:
mainModel
.
address_aboard
??
0
,
"age"
:
mainModel
.
age
??
""
,
"address_aboard"
:
mainModel
.
address_aboard
,
"age"
:
mainModel
.
age
,
"birth_place"
:
birthPlace
,
"birth_place_aboard"
:
mainModel
.
birth_place_aboard
??
0
,
"birthday"
:
mainModel
.
birthday
??
""
,
"email"
:
mainModel
.
email
??
""
,
"has_hk_id"
:
mainModel
.
has_hk_id
??
0
,
"hk_id_number"
:
mainModel
.
hk_id_number
??
""
,
"id"
:
mainModel
.
id
??
0
,
"is_handled"
:
mainModel
.
is_handled
??
0
,
"is_live_oversea_year"
:
mainModel
.
is_live_oversea_year
??
0
,
"married"
:
mainModel
.
married
??
0
,
"mobile"
:
mainModel
.
mobile
??
""
,
"nationality"
:
mainModel
.
nationality
??
""
,
"birth_place_aboard"
:
mainModel
.
birth_place_aboard
,
"birthday"
:
mainModel
.
birthday
,
"email"
:
mainModel
.
email
,
"has_hk_id"
:
mainModel
.
has_hk_id
,
"hk_id_number"
:
mainModel
.
hk_id_number
,
"id"
:
mainModel
.
id
,
"is_handled"
:
mainModel
.
is_handled
,
"is_live_oversea_year"
:
mainModel
.
is_live_oversea_year
,
"married"
:
mainModel
.
married
,
"mobile"
:
mainModel
.
mobile
,
"nationality"
:
mainModel
.
nationality
,
"order_id"
:
orderID
,
"sex"
:
mainModel
.
sex
??
0
,
"step"
:
mainModel
.
step
??
0
,
"surname"
:
mainModel
.
surname
??
""
,
"used_name"
:
mainModel
.
used_name
??
""
,
"username"
:
mainModel
.
username
??
""
,
"sex"
:
mainModel
.
sex
,
"step"
:
mainModel
.
step
,
"surname"
:
mainModel
.
surname
,
"used_name"
:
mainModel
.
used_name
,
"username"
:
mainModel
.
username
,
"save_type"
:
type
,
"username_pinyin"
:
[
"family_name"
:
mainModel
.
username_pinyin
?
.
family_name
??
""
,
"given_name"
:
mainModel
.
username_pinyin
?
.
given_name
??
""
],
"username_pinyin"
:
[
"family_name"
:
mainModel
.
username_pinyin
.
family_name
,
"given_name"
:
mainModel
.
username_pinyin
.
given_name
],
"certificates"
:[
"cn_identity_card"
:
cnID
,
"hk_macao_pass"
:
hkID
,
"passport"
:
passport
]
...
...
@@ -304,13 +304,13 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
func
isCanNext
(
_
step
:
Int
)
->
Bool
{
if
step
==
0
{
let
nationality
=
mainModel
.
nationality
??
""
let
country
=
mainModel
.
address
?
.
country
??
""
let
area
=
mainModel
.
address
?
.
area
??
[]
let
details
=
mainModel
.
address
?
.
details
??
""
let
foreign
=
mainModel
.
address
?
.
foreign
??
""
let
is_live_oversea_year
=
mainModel
.
is_live_oversea_year
??
0
let
has_hk_id
=
mainModel
.
has_hk_id
??
0
let
nationality
=
mainModel
.
nationality
let
country
=
mainModel
.
address
.
country
let
area
=
mainModel
.
address
.
area
let
details
=
mainModel
.
address
.
details
let
foreign
=
mainModel
.
address
.
foreign
let
is_live_oversea_year
=
mainModel
.
is_live_oversea_year
let
has_hk_id
=
mainModel
.
has_hk_id
if
country
.
contains
(
"中国"
)
{
if
nationality
.
count
!=
0
&&
country
.
count
!=
0
&&
area
.
count
!=
0
&&
details
.
count
!=
0
{
return
true
...
...
@@ -327,14 +327,14 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
}
else
if
step
==
1
{
return
true
}
else
if
step
==
2
{
let
cn_identity_card_number
=
mainModel
.
certificates
?
.
cn_identity_card
?
.
number
??
""
let
cn_identity_card_issue_at
=
mainModel
.
certificates
?
.
cn_identity_card
?
.
issue_at
??
""
let
cn_identity_card_issue_date_start_at
=
mainModel
.
certificates
?
.
cn_identity_card
?
.
issue_date_start_at
??
""
let
cn_identity_card_issue_date_end_at
=
mainModel
.
certificates
?
.
cn_identity_card
?
.
issue_date_end_at
??
""
let
hk_macao_pass_number
=
mainModel
.
certificates
?
.
hk_macao_pass
?
.
number
??
""
let
hk_macao_pass_issue_at
=
mainModel
.
certificates
?
.
hk_macao_pass
?
.
issue_at
??
""
let
hk_macao_pass_issue_date_start_at
=
mainModel
.
certificates
?
.
hk_macao_pass
?
.
issue_date_start_at
??
""
let
hk_macao_pass_issue_date_end_at
=
mainModel
.
certificates
?
.
hk_macao_pass
?
.
issue_date_end_at
??
""
let
cn_identity_card_number
=
mainModel
.
certificates
.
cn_identity_card
.
number
let
cn_identity_card_issue_at
=
mainModel
.
certificates
.
cn_identity_card
.
issue_at
let
cn_identity_card_issue_date_start_at
=
mainModel
.
certificates
.
cn_identity_card
.
issue_date_start_at
let
cn_identity_card_issue_date_end_at
=
mainModel
.
certificates
.
cn_identity_card
.
issue_date_end_at
let
hk_macao_pass_number
=
mainModel
.
certificates
.
hk_macao_pass
.
number
let
hk_macao_pass_issue_at
=
mainModel
.
certificates
.
hk_macao_pass
.
issue_at
let
hk_macao_pass_issue_date_start_at
=
mainModel
.
certificates
.
hk_macao_pass
.
issue_date_start_at
let
hk_macao_pass_issue_date_end_at
=
mainModel
.
certificates
.
hk_macao_pass
.
issue_date_end_at
if
mainModel
.
has_hk_id
==
1
{
if
cn_identity_card_number
.
count
!=
0
&&
cn_identity_card_issue_at
.
count
!=
0
&&
cn_identity_card_issue_date_start_at
.
count
!=
0
&&
cn_identity_card_issue_date_end_at
.
count
!=
0
&&
hk_macao_pass_number
.
count
!=
0
&&
hk_macao_pass_issue_at
.
count
!=
0
&&
hk_macao_pass_issue_date_start_at
.
count
!=
0
&&
hk_macao_pass_issue_date_end_at
.
count
!=
0
{
return
true
...
...
@@ -349,17 +349,17 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
}
}
}
else
{
let
username
=
mainModel
.
username
??
""
let
birthday
=
mainModel
.
birthday
??
""
let
birth_place_aboard
=
mainModel
.
birth_place_aboard
??
0
let
birth_place_area
=
mainModel
.
birth_place
?
.
area
??
[]
let
birth_place_foreign
=
mainModel
.
birth_place
?
.
foreign
??
""
let
sex
=
mainModel
.
sex
??
0
let
married
=
mainModel
.
married
??
0
let
mobile
=
mainModel
.
mobile
??
""
let
email
=
mainModel
.
email
??
""
let
has_hk_id
=
mainModel
.
has_hk_id
??
0
let
hk_id_numbe
=
mainModel
.
hk_id_number
??
""
let
username
=
mainModel
.
username
let
birthday
=
mainModel
.
birthday
let
birth_place_aboard
=
mainModel
.
birth_place_aboard
let
birth_place_area
=
mainModel
.
birth_place
.
area
let
birth_place_foreign
=
mainModel
.
birth_place
.
foreign
let
sex
=
mainModel
.
sex
let
married
=
mainModel
.
married
let
mobile
=
mainModel
.
mobile
let
email
=
mainModel
.
email
let
has_hk_id
=
mainModel
.
has_hk_id
let
hk_id_numbe
=
mainModel
.
hk_id_number
if
birth_place_aboard
==
1
{
if
username
.
count
!=
0
&&
birthday
.
count
!=
0
&&
birth_place_foreign
.
count
!=
0
&&
mobile
.
count
!=
0
&&
email
.
count
!=
0
{
if
has_hk_id
==
1
{
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/MainApplicantInformation(主申请人信息)/VM/YHSelectCountryViewModel.swift
View file @
b62d4d75
...
...
@@ -17,15 +17,12 @@ class YHSelectCountryViewModel: NSObject {
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
OrderInformation
.
countryInformation
+
"?keyword =
\(
key
)
"
YHNetRequest
.
getRequest
(
url
:
strUrl
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
//// printLog("model 是 ==> \(model)")
let
dic
=
json
.
data
guard
let
resultArray
=
[
YHCountryMessage
]
.
deserialize
(
array
:
dic
as?
[
Any
])
else
{
let
dic
=
json
.
data
as?
[
Any
]
guard
let
resultArray
=
[
YHCountryMessage
]
.
deserialize
(
from
:
dic
)
else
{
callBackBlock
([],
nil
)
return
}
callBackBlock
(
resultArray
,
nil
)
}
failBlock
:
{
err
in
callBackBlock
([],
err
)
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/WorkExperience/C/YHWorkExperienceListViewController.swift
View file @
b62d4d75
...
...
@@ -15,7 +15,8 @@ class YHWorkExperienceListViewController: YHBaseViewController {
var
dataSource
:
[
YHWorkItemListModel
]?
var
viewModel
:
YHWorkItemListViewModel
?
var
isMore
:
Bool
=
false
var
orderId
:
Int
=
0
override
func
viewDidLoad
()
{
super
.
viewDidLoad
()
viewModel
=
YHWorkItemListViewModel
()
...
...
@@ -26,7 +27,7 @@ class YHWorkExperienceListViewController: YHBaseViewController {
}
func
getData
()
{
viewModel
?
.
requestWorkList
(
"
133969
"
,
callBackBlock
:
{[
weak
self
]
success
,
error
in
viewModel
?
.
requestWorkList
(
"
\(
orderId
)
"
,
callBackBlock
:
{[
weak
self
]
success
,
error
in
guard
let
self
=
self
else
{
return
}
self
.
dataSource
=
success
self
.
tableView
.
reloadData
()
...
...
@@ -112,6 +113,7 @@ extension YHWorkExperienceListViewController: UITableViewDelegate, UITableViewDa
guard
let
self
=
self
else
{
return
}
let
vc
=
YHWorkExperienceViewController
()
vc
.
workExperienceID
=
"
\(
model
.
id
??
0
)
"
vc
.
orderID
=
self
.
orderId
self
.
navigationController
?
.
pushViewController
(
vc
,
animated
:
true
)
}
cell
.
deleteBlock
=
{[
weak
self
]
model
in
...
...
@@ -128,6 +130,7 @@ extension YHWorkExperienceListViewController: UITableViewDelegate, UITableViewDa
cell
.
newWorkBlock
=
{[
weak
self
]
in
guard
let
self
=
self
else
{
return
}
let
vc
=
YHWorkExperienceViewController
()
vc
.
orderID
=
self
.
orderId
self
.
navigationController
?
.
pushViewController
(
vc
,
animated
:
true
)
}
return
cell
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/WorkExperience/C/YHWorkExperienceViewController.swift
View file @
b62d4d75
...
...
@@ -18,6 +18,7 @@ class YHWorkExperienceViewController: YHBaseViewController {
var
introductionDataSource
:
[
YHWorkExperienceProjectModel
]?
var
fileDataSource
:
[
String
]?
var
workExperienceID
:
String
?
var
orderID
:
Int
=
0
var
isMore
:
Bool
=
false
override
func
viewDidLoad
()
{
...
...
@@ -101,7 +102,7 @@ class YHWorkExperienceViewController: YHBaseViewController {
let
bottom
=
YHBottomNextView
()
bottom
.
nextblock
=
{
[
weak
self
]
in
guard
let
self
=
self
else
{
return
}
self
.
viewModel
.
saveWorkDetail
(
1
,
callBackBlock
:
{[
weak
self
]
flag
,
model
in
self
.
viewModel
.
saveWorkDetail
(
1
,
orderID
:
self
.
orderID
,
callBackBlock
:
{[
weak
self
]
flag
,
model
in
guard
let
self
=
self
else
{
return
}
self
.
stepView
.
currentIndex
=
self
.
stepView
.
currentIndex
+
1
self
.
updateDataSource
()
...
...
@@ -109,7 +110,7 @@ class YHWorkExperienceViewController: YHBaseViewController {
}
bottom
.
saveBlock
=
{
[
weak
self
]
in
guard
let
self
=
self
else
{
return
}
self
.
viewModel
.
saveWorkDetail
(
0
,
callBackBlock
:
{[
weak
self
]
flag
,
model
in
self
.
viewModel
.
saveWorkDetail
(
0
,
orderID
:
self
.
orderID
,
callBackBlock
:
{[
weak
self
]
flag
,
model
in
guard
let
self
=
self
else
{
return
}
})
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/WorkExperience/Model/YHCompanyModel.swift
View file @
b62d4d75
...
...
@@ -7,9 +7,8 @@
//
import
UIKit
import
SmartCodable
struct
YHCompanyModel
:
SmartCodable
{
class
YHCompanyModel
:
YHBaseModel
{
var
current_page
:
Int
?
var
first_page_url
:
String
?
var
from
:
Int
?
...
...
@@ -23,7 +22,7 @@ struct YHCompanyModel: SmartCodable {
var
data
:
[
YHCompanyModelListModel
]?
}
struct
YHCompanyModelListModel
:
SmartCodable
{
class
YHCompanyModelListModel
:
YHBaseModel
{
var
id
:
Int
?
var
name
:
String
?
var
customer_num
:
Int
?
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/WorkExperience/Model/YHWorkExampleModel.swift
View file @
b62d4d75
...
...
@@ -7,9 +7,8 @@
//
import
UIKit
import
SmartCodable
struct
YHWorkExampleModel
:
SmartCodable
{
class
YHWorkExampleModel
:
YHBaseModel
{
var
type
:
Int
?
var
industry
:
String
?
var
wduty_list
:
[
String
]?
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/WorkExperience/Model/YHWorkExperienceDetailModel.swift
View file @
b62d4d75
...
...
@@ -7,56 +7,55 @@
//
import
Foundation
import
SmartCodable
struct
YHWorkExperienceDetailModel
:
SmartCodable
{
var
id
:
Int
?
var
order_id
:
Int
?
var
company_name
:
String
?
var
is_famous_enterprise
:
Int
?
var
duty
:
String
?
var
entry_time
:
String
?
var
departure_time
:
String
?
var
industry
:
String
?
var
location
:
YHAddressModel
?
var
location_aboard
:
Int
?
var
professional_level
:
Int
?
var
professional_other
:
String
?
var
position
:
String
?
var
remark
:
String
?
var
old_id
:
Int
?
var
created_at
:
String
?
var
updated_at
:
String
?
var
is_show
:
Int
?
var
deleted_at
:
String
?
var
operator_name
:
String
?
var
operator_english_name
:
String
?
var
operator_id
:
Int
?
var
work_certificate
:
String
?
var
executives_certificate
:
String
?
var
is_executives
:
Int
?
var
wduty
:
String
?
var
highlights
:
String
?
var
file
:
[
String
]
?
var
not_need_upload_file
:
Int
?
var
company_member_total
:
Int
?
var
administrative_level
:
Int
?
var
company_manage_total
:
Int
?
var
top_manager_start_at
:
String
?
var
top_manager_end_at
:
String
?
var
master_of_important_project
:
Int
?
var
match_listing
:
Int
?
var
is_synthetic
:
Int
?
var
step
:
Int
?
var
create_from_appid
:
Int
?
var
update_from_appid
:
Int
?
var
international_work_experience
:
Int
?
var
turnover
:
Int
?
var
business_nature
:
String
?
var
company_website
:
String
?
var
company_introduce
:
String
?
var
business_remark
:
String
?
var
is_project_introduction
:
Int
?
var
customer_center_id
:
Int
?
var
projects
:
[
String
]
?
class
YHWorkExperienceDetailModel
:
YHBaseModel
{
var
id
:
Int
=
0
var
order_id
:
Int
=
0
var
company_name
:
String
=
""
var
is_famous_enterprise
:
Int
=
0
var
duty
:
String
=
""
var
entry_time
:
String
=
""
var
departure_time
:
String
=
""
var
industry
:
String
=
""
var
location
:
YHAddressModel
=
YHAddressModel
()
var
location_aboard
:
Int
=
0
var
professional_level
:
Int
=
0
var
professional_other
:
String
=
""
var
position
:
String
=
""
var
remark
:
String
=
""
var
old_id
:
Int
=
0
var
created_at
:
String
=
""
var
updated_at
:
String
=
""
var
is_show
:
Int
=
0
var
deleted_at
:
String
=
""
var
operator_name
:
String
=
""
var
operator_english_name
:
String
=
""
var
operator_id
:
Int
=
0
var
work_certificate
:
String
=
""
var
executives_certificate
:
String
=
""
var
is_executives
:
Int
=
0
var
wduty
:
String
=
""
var
highlights
:
String
=
""
var
file
:
[
String
]
=
[]
var
not_need_upload_file
:
Int
=
0
var
company_member_total
:
Int
=
0
var
administrative_level
:
Int
=
0
var
company_manage_total
:
Int
=
0
var
top_manager_start_at
:
String
=
""
var
top_manager_end_at
:
String
=
""
var
master_of_important_project
:
Int
=
0
var
match_listing
:
Int
=
0
var
is_synthetic
:
Int
=
0
var
step
:
Int
=
0
var
create_from_appid
:
Int
=
0
var
update_from_appid
:
Int
=
0
var
international_work_experience
:
Int
=
0
var
turnover
:
Int
=
0
var
business_nature
:
String
=
""
var
company_website
:
String
=
""
var
company_introduce
:
String
=
""
var
business_remark
:
String
=
""
var
is_project_introduction
:
Int
=
0
var
customer_center_id
:
Int
=
0
var
projects
:
[
String
]
=
[]
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/WorkExperience/Model/YHWorkExperienceProjectModel.swift
View file @
b62d4d75
...
...
@@ -9,7 +9,7 @@
import
UIKit
import
SmartCodable
struct
YHWorkExperienceProjectModel
:
SmartCodable
{
class
YHWorkExperienceProjectModel
:
YHBaseModel
{
var
id
:
Int
?
var
order_id
:
Int
?
var
work_id
:
Int
?
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/WorkExperience/Model/YHWorkItemListModel.swift
View file @
b62d4d75
...
...
@@ -7,16 +7,15 @@
//
import
UIKit
import
SmartCodable
struct
YHWorkModel
:
SmartCodable
{
class
YHWorkModel
:
YHBaseModel
{
var
count
:
Int
?
var
list
:
[
YHWorkItemListModel
]?
}
struct
YHWorkItemListModel
:
SmartCodable
{
class
YHWorkItemListModel
:
YHBaseModel
{
var
id
:
Int
?
var
order_id
:
Int
?
var
company_name
:
String
?
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/WorkExperience/ViewModel/YHCompanyViewModel.swift
View file @
b62d4d75
...
...
@@ -14,12 +14,12 @@ class YHCompanyViewModel: YHBaseViewModel {
}
func
requestCompany
(
_
key
:
String
,
callBackBlock
:
@escaping
(
_
success
:
[
YHCompanyModelListModel
]?,
_
error
:
YHErrorModel
?)
->
())
{
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
"frontend/workInfo/company-search
?company=
\(
key
)
&page_size=20"
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
WorkExperience
.
company
+
"
?company=
\(
key
)
&page_size=20"
YHNetRequest
.
getRequest
(
url
:
strUrl
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
let
dic
=
json
.
data
guard
let
result
=
YHCompanyModel
.
deserialize
(
dict
:
dic
as?
[
AnyHashable
:
Any
]
)
else
{
guard
let
result
=
YHCompanyModel
.
deserialize
(
from
:
dic
as?
Dictionary
)
else
{
callBackBlock
([],
nil
)
return
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/WorkExperience/ViewModel/YHWorkExperienceViewModel.swift
View file @
b62d4d75
...
...
@@ -17,26 +17,25 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
}
func
getBaseDataSource
()
->
[
YHSectionWorkExperienceModel
]
{
let
item
=
YHWorkExperienceModel
(
id
:
.
id1
,
isNeed
:
true
,
title
:
"用人单位"
,
isUserKeyBoard
:
false
,
prompts
:
"请输入"
,
message
:
mainModel
.
company_name
??
""
,
type
:
.
unit
)
let
item1
=
YHWorkExperienceModel
(
id
:
.
id2
,
isNeed
:
true
,
title
:
"用人单位性质"
,
isUserKeyBoard
:
false
,
prompts
:
"请输入"
,
message
:
mainModel
.
industry
??
""
,
type
:
.
nature
)
let
item2
=
YHWorkExperienceModel
(
id
:
.
id3
,
isNeed
:
false
,
title
:
"用人单位介绍"
,
isUserKeyBoard
:
true
,
prompts
:
"如方便提供,请填写"
,
message
:
mainModel
.
company_introduce
??
""
)
let
item3
=
YHWorkExperienceModel
(
id
:
.
id4
,
isNeed
:
false
,
title
:
"用人单位官网"
,
isUserKeyBoard
:
true
,
prompts
:
"如有,请输入官网链接"
,
message
:
mainModel
.
company_website
??
""
)
let
item4
=
YHWorkExperienceModel
(
id
:
.
id5
,
isNeed
:
true
,
title
:
"出生国家/地区"
,
isUserKeyBoard
:
false
,
prompts
:
nil
,
message
:
mainModel
.
location
?
.
country
??
""
,
type
:
.
country
)
let
item
=
YHWorkExperienceModel
(
id
:
.
id1
,
isNeed
:
true
,
title
:
"用人单位"
,
isUserKeyBoard
:
false
,
prompts
:
"请输入"
,
message
:
mainModel
.
company_name
,
type
:
.
unit
)
let
item1
=
YHWorkExperienceModel
(
id
:
.
id2
,
isNeed
:
true
,
title
:
"用人单位性质"
,
isUserKeyBoard
:
false
,
prompts
:
"请输入"
,
message
:
mainModel
.
industry
,
type
:
.
nature
)
let
item2
=
YHWorkExperienceModel
(
id
:
.
id3
,
isNeed
:
false
,
title
:
"用人单位介绍"
,
isUserKeyBoard
:
true
,
prompts
:
"如方便提供,请填写"
,
message
:
mainModel
.
company_introduce
)
let
item3
=
YHWorkExperienceModel
(
id
:
.
id4
,
isNeed
:
false
,
title
:
"用人单位官网"
,
isUserKeyBoard
:
true
,
prompts
:
"如有,请输入官网链接"
,
message
:
mainModel
.
company_website
)
let
item4
=
YHWorkExperienceModel
(
id
:
.
id5
,
isNeed
:
true
,
title
:
"出生国家/地区"
,
isUserKeyBoard
:
false
,
prompts
:
nil
,
message
:
mainModel
.
location
.
country
,
type
:
.
country
)
var
string
=
""
if
let
array
=
mainModel
.
location
?
.
area
{
for
item
in
array
{
string
=
string
+
item
}
let
array
=
mainModel
.
location
.
area
for
item
in
array
{
string
=
string
+
item
}
let
item5
=
YHWorkExperienceModel
(
id
:
.
id6
,
isNeed
:
true
,
title
:
"出生城市"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
string
,
type
:
.
address
)
let
item55
=
YHWorkExperienceModel
(
id
:
.
id7
,
isNeed
:
true
,
title
:
"出生城市"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
location
?
.
foreign
??
""
)
let
item6
=
YHWorkExperienceModel
(
id
:
.
id8
,
isNeed
:
true
,
title
:
"职位"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
position
??
""
)
let
item7
=
YHWorkExperienceModel
(
id
:
.
id9
,
isNeed
:
true
,
title
:
"入职年月"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
entry_time
??
""
,
type
:
.
time
)
let
item8
=
YHWorkExperienceModel
(
id
:
.
id10
,
isNeed
:
true
,
title
:
"离职年月"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
departure_time
??
""
,
type
:
.
time
)
let
item9
=
YHWorkExperienceModel
(
id
:
.
id11
,
isNeed
:
true
,
title
:
"工作证明文件"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
work_certificate
??
""
,
type
:
.
certificate
)
let
item10
=
YHWorkExperienceModel
(
id
:
.
id12
,
isNeed
:
false
,
title
:
"职责性质"
,
isUserKeyBoard
:
true
,
prompts
:
"请选择"
,
message
:
mainModel
.
duty
??
""
)
let
item11
=
YHWorkExperienceModel
(
id
:
.
id13
,
isNeed
:
false
,
title
:
"相关工作经验是否属于国际工作经验"
,
isUserKeyBoard
:
false
,
prompts
:
""
,
message
:
"
\(
mainModel
.
international_work_experience
??
0
)
"
,
leftButtonString
:
"是"
,
rightButtonString
:
"否"
)
let
addressCountry
=
mainModel
.
location
?
.
country
??
""
let
item55
=
YHWorkExperienceModel
(
id
:
.
id7
,
isNeed
:
true
,
title
:
"出生城市"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
location
.
foreign
)
let
item6
=
YHWorkExperienceModel
(
id
:
.
id8
,
isNeed
:
true
,
title
:
"职位"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
mainModel
.
position
)
let
item7
=
YHWorkExperienceModel
(
id
:
.
id9
,
isNeed
:
true
,
title
:
"入职年月"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
entry_time
,
type
:
.
time
)
let
item8
=
YHWorkExperienceModel
(
id
:
.
id10
,
isNeed
:
true
,
title
:
"离职年月"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
departure_time
,
type
:
.
time
)
let
item9
=
YHWorkExperienceModel
(
id
:
.
id11
,
isNeed
:
true
,
title
:
"工作证明文件"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
work_certificate
,
type
:
.
certificate
)
let
item10
=
YHWorkExperienceModel
(
id
:
.
id12
,
isNeed
:
false
,
title
:
"职责性质"
,
isUserKeyBoard
:
true
,
prompts
:
"请选择"
,
message
:
mainModel
.
duty
)
let
item11
=
YHWorkExperienceModel
(
id
:
.
id13
,
isNeed
:
false
,
title
:
"相关工作经验是否属于国际工作经验"
,
isUserKeyBoard
:
false
,
prompts
:
""
,
message
:
"
\(
mainModel
.
international_work_experience
)
"
,
leftButtonString
:
"是"
,
rightButtonString
:
"否"
)
let
addressCountry
=
mainModel
.
location
.
country
var
section
=
YHSectionWorkExperienceModel
()
if
addressCountry
.
contains
(
"中国"
)
{
section
=
YHSectionWorkExperienceModel
(
title
:
"企业信息"
,
models
:
[
item
,
item1
,
item2
,
item3
,
item4
,
item5
,
item6
,
item7
,
item8
,
item9
,
item10
,
item11
])
...
...
@@ -44,15 +43,15 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
section
=
YHSectionWorkExperienceModel
(
title
:
"企业信息"
,
models
:
[
item
,
item1
,
item2
,
item3
,
item4
,
item55
,
item6
,
item7
,
item8
,
item9
,
item10
,
item11
])
}
let
item12
=
YHWorkExperienceModel
(
id
:
.
id14
,
isNeed
:
true
,
title
:
"企业人数规模"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
"
\(
mainModel
.
company_member_total
??
0
)
"
)
let
item13
=
YHWorkExperienceModel
(
id
:
.
id15
,
isNeed
:
false
,
title
:
"行政架构层级"
,
isUserKeyBoard
:
false
,
prompts
:
"请输入"
,
message
:
"
\(
mainModel
.
administrative_level
??
0
)
"
,
type
:
.
structure
)
let
item14
=
YHWorkExperienceModel
(
id
:
.
id16
,
isNeed
:
true
,
title
:
"下属管理人数"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
"
\(
mainModel
.
company_manage_total
??
0
)
"
)
let
item15
=
YHWorkExperienceModel
(
id
:
.
id17
,
isNeed
:
false
,
title
:
"公司营业额/港元 (近一年)"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入具体数字"
,
message
:
"
\(
mainModel
.
turnover
??
0
)
"
)
let
item16
=
YHWorkExperienceModel
(
id
:
.
id18
,
isNeed
:
false
,
title
:
"公司业务性质/范畴/所属行业"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入,100字内"
,
message
:
mainModel
.
business_nature
??
""
)
let
item17
=
YHWorkExperienceModel
(
id
:
.
id19
,
isNeed
:
true
,
title
:
"职位水平类别"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
"
\(
mainModel
.
professional_level
??
0
)
"
,
type
:
.
level
)
let
item18
=
YHWorkExperienceModel
(
id
:
.
id20
,
isNeed
:
true
,
title
:
"高管证明文件"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
executives_certificate
??
""
,
type
:
.
prove
)
let
item19
=
YHWorkExperienceModel
(
id
:
.
id21
,
isNeed
:
true
,
title
:
"高管在职开始时间"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
top_manager_start_at
??
""
,
type
:
.
time
)
let
item20
=
YHWorkExperienceModel
(
id
:
.
id22
,
isNeed
:
true
,
title
:
"高管在职结束时间"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
top_manager_end_at
??
""
,
type
:
.
time
)
let
item12
=
YHWorkExperienceModel
(
id
:
.
id14
,
isNeed
:
true
,
title
:
"企业人数规模"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
"
\(
mainModel
.
company_member_total
)
"
)
let
item13
=
YHWorkExperienceModel
(
id
:
.
id15
,
isNeed
:
false
,
title
:
"行政架构层级"
,
isUserKeyBoard
:
false
,
prompts
:
"请输入"
,
message
:
"
\(
mainModel
.
administrative_level
)
"
,
type
:
.
structure
)
let
item14
=
YHWorkExperienceModel
(
id
:
.
id16
,
isNeed
:
true
,
title
:
"下属管理人数"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入"
,
message
:
"
\(
mainModel
.
company_manage_total
)
"
)
let
item15
=
YHWorkExperienceModel
(
id
:
.
id17
,
isNeed
:
false
,
title
:
"公司营业额/港元 (近一年)"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入具体数字"
,
message
:
"
\(
mainModel
.
turnover
)
"
)
let
item16
=
YHWorkExperienceModel
(
id
:
.
id18
,
isNeed
:
false
,
title
:
"公司业务性质/范畴/所属行业"
,
isUserKeyBoard
:
true
,
prompts
:
"请输入,100字内"
,
message
:
mainModel
.
business_nature
)
let
item17
=
YHWorkExperienceModel
(
id
:
.
id19
,
isNeed
:
true
,
title
:
"职位水平类别"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
"
\(
mainModel
.
professional_level
)
"
,
type
:
.
level
)
let
item18
=
YHWorkExperienceModel
(
id
:
.
id20
,
isNeed
:
true
,
title
:
"高管证明文件"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
executives_certificate
,
type
:
.
prove
)
let
item19
=
YHWorkExperienceModel
(
id
:
.
id21
,
isNeed
:
true
,
title
:
"高管在职开始时间"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
top_manager_start_at
,
type
:
.
time
)
let
item20
=
YHWorkExperienceModel
(
id
:
.
id22
,
isNeed
:
true
,
title
:
"高管在职结束时间"
,
isUserKeyBoard
:
false
,
prompts
:
"请选择"
,
message
:
mainModel
.
top_manager_end_at
,
type
:
.
time
)
var
section1
=
YHSectionWorkExperienceModel
()
if
mainModel
.
professional_level
==
1
{
section1
=
YHSectionWorkExperienceModel
(
title
:
"企业规模"
,
models
:
[
item12
,
item13
,
item14
,
item15
,
item16
,
item17
,
item18
,
item19
,
item20
])
...
...
@@ -68,49 +67,49 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
switch
type
{
case
.
id1
:
// 用人单位
mainModel
.
company_name
=
item
.
message
mainModel
.
company_name
=
item
.
message
??
""
case
.
id2
:
// 用人单位性质
mainModel
.
industry
=
item
.
message
mainModel
.
industry
=
item
.
message
??
""
case
.
id3
:
// 用人单位介绍
mainModel
.
company_introduce
=
item
.
message
mainModel
.
company_introduce
=
item
.
message
??
""
case
.
id4
:
// 用人单位官网
mainModel
.
company_website
=
item
.
message
mainModel
.
company_website
=
item
.
message
??
""
case
.
id5
:
// 工作地区国家
mainModel
.
location
?
.
country
=
item
.
message
mainModel
.
location
.
country
=
item
.
message
??
""
case
.
id6
:
// 工作城市 国内
mainModel
.
location
?
.
area
=
item
.
value
mainModel
.
location
.
area
=
item
.
value
??
[]
case
.
id7
:
// 工作城市国外
mainModel
.
location
?
.
foreign
=
item
.
message
mainModel
.
location
.
foreign
=
item
.
message
??
""
case
.
id8
:
// 职位
mainModel
.
position
=
item
.
message
mainModel
.
position
=
item
.
message
??
""
case
.
id9
:
// 入职年月
mainModel
.
entry_time
=
item
.
message
mainModel
.
entry_time
=
item
.
message
??
""
case
.
id10
:
// 离职年月
mainModel
.
departure_time
=
item
.
message
mainModel
.
departure_time
=
item
.
message
??
""
case
.
id11
:
// 工作证明文件
mainModel
.
work_certificate
=
item
.
message
mainModel
.
work_certificate
=
item
.
message
??
""
case
.
id12
:
// 职责性质
mainModel
.
duty
=
item
.
message
mainModel
.
duty
=
item
.
message
??
""
case
.
id13
:
// 是否国际工作经验
mainModel
.
international_work_experience
=
Int
(
item
.
value
?
.
first
??
"0"
)
mainModel
.
international_work_experience
=
Int
(
item
.
value
?
.
first
??
"0"
)
??
0
case
.
id14
:
// 企业人数规模
mainModel
.
company_member_total
=
Int
(
item
.
message
??
"0"
)
mainModel
.
company_member_total
=
Int
(
item
.
message
??
"0"
)
??
0
case
.
id15
:
// 行政架构层级
mainModel
.
administrative_level
=
Int
(
item
.
value
?
.
first
??
"0"
)
mainModel
.
administrative_level
=
Int
(
item
.
value
?
.
first
??
"0"
)
??
0
case
.
id16
:
// 下属管理人数
mainModel
.
company_manage_total
=
Int
(
item
.
message
??
"0"
)
mainModel
.
company_manage_total
=
Int
(
item
.
message
??
"0"
)
??
0
case
.
id17
:
// 公司营业额/港元
mainModel
.
turnover
=
Int
(
item
.
message
??
"0"
)
mainModel
.
turnover
=
Int
(
item
.
message
??
"0"
)
??
0
case
.
id18
:
// 公司性质/范畴/所属行业
mainModel
.
business_nature
=
item
.
message
mainModel
.
business_nature
=
item
.
message
??
""
case
.
id19
:
// 职位水平类型
mainModel
.
professional_level
=
Int
(
item
.
value
?
.
first
??
"0"
)
mainModel
.
professional_level
=
Int
(
item
.
value
?
.
first
??
"0"
)
??
0
case
.
id20
:
// 高管证明文件
mainModel
.
executives_certificate
=
item
.
message
mainModel
.
executives_certificate
=
item
.
message
??
""
case
.
id21
:
// 高管在职开始时间
mainModel
.
top_manager_start_at
=
item
.
message
mainModel
.
top_manager_start_at
=
item
.
message
??
""
case
.
id22
:
// 高管在职结束时间
mainModel
.
top_manager_end_at
=
item
.
message
mainModel
.
top_manager_end_at
=
item
.
message
??
""
}
}
...
...
@@ -135,12 +134,12 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
}
func
requestWorkExample
(
callBackBlock
:
@escaping
(
_
success
:
Bool
?,
_
error
:
YHErrorModel
?)
->
())
{
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
"frontend/workInfo/example"
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
WorkExperience
.
example
let
_
=
YHNetRequest
.
getRequest
(
url
:
strUrl
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
let
dic
=
json
.
data
guard
let
result
=
[
YHWorkExampleModel
]
.
deserialize
(
array
:
dic
as?
[
Any
])
else
{
guard
let
result
=
[
YHWorkExampleModel
]
.
deserialize
(
from
:
dic
as?
[
Any
])
else
{
callBackBlock
(
false
,
nil
)
return
}
...
...
@@ -152,12 +151,12 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
}
func
requestWorkDetail
(
_
workId
:
String
,
callBackBlock
:
@escaping
(
_
success
:
Bool
?,
_
error
:
YHErrorModel
?)
->
())
{
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
"frontend/workInfo/detail
?id=
\(
workId
)
"
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
WorkExperience
.
detail
+
"
?id=
\(
workId
)
"
let
_
=
YHNetRequest
.
getRequest
(
url
:
strUrl
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
let
dic
=
json
.
data
guard
let
result
=
YHWorkExperienceDetailModel
.
deserialize
(
dict
:
dic
as?
[
AnyHashable
:
Any
]
)
else
{
guard
let
result
=
YHWorkExperienceDetailModel
.
deserialize
(
from
:
dic
as?
Dictionary
)
else
{
callBackBlock
(
false
,
nil
)
return
}
...
...
@@ -169,66 +168,72 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
}
// 0保存 1下一步
func
saveWorkDetail
(
_
saveType
:
Int
,
callBackBlock
:
@escaping
(
_
success
:
Bool
?,
_
error
:
YHErrorModel
?)
->
())
{
let
area
:
[
String
]
=
mainModel
.
location
?
.
area
??
[]
func
saveWorkDetail
(
_
saveType
:
Int
,
orderID
:
Int
,
callBackBlock
:
@escaping
(
_
success
:
Bool
?,
_
error
:
YHErrorModel
?)
->
())
{
let
area
:
[
String
]
=
mainModel
.
location
.
area
let
location
=
[
"area"
:
area
,
"country"
:
mainModel
.
location
?
.
country
??
""
,
"details"
:
mainModel
.
location
?
.
details
??
""
,
"foreign"
:
mainModel
.
location
?
.
foreign
??
""
]
as
[
String
:
Any
]
let
params
:
[
String
:
Any
]
=
[
"administrative_level"
:
mainModel
.
administrative_level
??
0
,
"business_nature"
:
mainModel
.
business_nature
??
""
,
"business_remark"
:
mainModel
.
business_remark
??
""
,
"company_introduce"
:
mainModel
.
company_introduce
??
""
,
"company_manage_total"
:
mainModel
.
company_manage_total
??
0
,
"company_member_total"
:
mainModel
.
company_member_total
??
0
,
"company_name"
:
mainModel
.
company_name
??
""
,
"company_website"
:
mainModel
.
company_website
??
""
,
"create_from_appid"
:
mainModel
.
create_from_appid
??
0
,
"created_at"
:
mainModel
.
created_at
??
""
,
"customer_center_id"
:
mainModel
.
customer_center_id
??
0
,
"deleted_at"
:
mainModel
.
deleted_at
??
""
,
"departure_time"
:
mainModel
.
departure_time
??
""
,
"duty"
:
mainModel
.
duty
??
""
,
"entry_time"
:
mainModel
.
entry_time
??
""
,
"executives_certificate"
:
mainModel
.
executives_certificate
??
""
,
"file"
:
mainModel
.
file
??
[],
"highlights"
:
mainModel
.
highlights
??
""
,
"id"
:
mainModel
.
id
??
0
,
"industry"
:
mainModel
.
industry
??
""
,
"international_work_experience"
:
mainModel
.
international_work_experience
??
0
,
"is_executives"
:
mainModel
.
is_executives
??
0
,
"is_famous_enterprise"
:
mainModel
.
is_famous_enterprise
??
0
,
"is_project_introduction"
:
mainModel
.
is_project_introduction
??
0
,
"is_show"
:
mainModel
.
is_show
??
0
,
"is_synthetic"
:
mainModel
.
is_synthetic
??
0
,
"country"
:
mainModel
.
location
.
country
,
"details"
:
mainModel
.
location
.
details
,
"foreign"
:
mainModel
.
location
.
foreign
]
as
[
String
:
Any
]
let
params
:
[
String
:
Any
]
=
[
"administrative_level"
:
mainModel
.
administrative_level
,
"business_nature"
:
mainModel
.
business_nature
,
"business_remark"
:
mainModel
.
business_remark
,
"company_introduce"
:
mainModel
.
company_introduce
,
"company_manage_total"
:
mainModel
.
company_manage_total
,
"company_member_total"
:
mainModel
.
company_member_total
,
"company_name"
:
mainModel
.
company_name
,
"company_website"
:
mainModel
.
company_website
,
"create_from_appid"
:
mainModel
.
create_from_appid
,
"created_at"
:
mainModel
.
created_at
,
"customer_center_id"
:
mainModel
.
customer_center_id
,
"deleted_at"
:
mainModel
.
deleted_at
,
"departure_time"
:
mainModel
.
departure_time
,
"duty"
:
mainModel
.
duty
,
"entry_time"
:
mainModel
.
entry_time
,
"executives_certificate"
:
mainModel
.
executives_certificate
,
"file"
:
mainModel
.
file
,
"highlights"
:
mainModel
.
highlights
,
"id"
:
mainModel
.
id
,
"orderId"
:
orderID
,
"industry"
:
mainModel
.
industry
,
"international_work_experience"
:
mainModel
.
international_work_experience
,
"is_executives"
:
mainModel
.
is_executives
,
"is_famous_enterprise"
:
mainModel
.
is_famous_enterprise
,
"is_project_introduction"
:
mainModel
.
is_project_introduction
,
"is_show"
:
mainModel
.
is_show
,
"is_synthetic"
:
mainModel
.
is_synthetic
,
"location"
:
location
,
"location_aboard"
:
mainModel
.
location_aboard
??
0
,
"master_of_important_project"
:
mainModel
.
master_of_important_project
??
0
,
"match_listing"
:
mainModel
.
match_listing
??
0
,
"not_need_upload_file"
:
mainModel
.
not_need_upload_file
??
0
,
"old_id"
:
mainModel
.
old_id
??
0
,
"operator_english_name"
:
mainModel
.
operator_english_name
??
""
,
"operator_id"
:
mainModel
.
operator_id
??
0
,
"operator_name"
:
mainModel
.
operator_name
??
""
,
"order_id"
:
mainModel
.
order_id
??
0
,
"position"
:
mainModel
.
position
??
""
,
"professional_level"
:
mainModel
.
professional_level
??
0
,
"professional_other"
:
mainModel
.
professional_other
??
""
,
"projects"
:
mainModel
.
projects
??
[],
"remark"
:
mainModel
.
remark
??
""
,
"step"
:
mainModel
.
step
??
0
,
"top_manager_end_at"
:
mainModel
.
top_manager_end_at
??
""
,
"top_manager_start_at"
:
mainModel
.
top_manager_start_at
??
""
,
"turnover"
:
mainModel
.
turnover
??
0
,
"update_from_appid"
:
mainModel
.
update_from_appid
??
0
,
"updated_at"
:
mainModel
.
updated_at
??
""
,
"wduty"
:
mainModel
.
wduty
??
""
,
"work_certificate"
:
mainModel
.
work_certificate
??
""
,
"location_aboard"
:
mainModel
.
location_aboard
,
"master_of_important_project"
:
mainModel
.
master_of_important_project
,
"match_listing"
:
mainModel
.
match_listing
,
"not_need_upload_file"
:
mainModel
.
not_need_upload_file
,
"old_id"
:
mainModel
.
old_id
,
"operator_english_name"
:
mainModel
.
operator_english_name
,
"operator_id"
:
mainModel
.
operator_id
,
"operator_name"
:
mainModel
.
operator_name
,
"position"
:
mainModel
.
position
,
"professional_level"
:
mainModel
.
professional_level
,
"professional_other"
:
mainModel
.
professional_other
,
"projects"
:
mainModel
.
projects
,
"remark"
:
mainModel
.
remark
,
"step"
:
mainModel
.
step
,
"top_manager_end_at"
:
mainModel
.
top_manager_end_at
,
"top_manager_start_at"
:
mainModel
.
top_manager_start_at
,
"turnover"
:
mainModel
.
turnover
,
"update_from_appid"
:
mainModel
.
update_from_appid
,
"updated_at"
:
mainModel
.
updated_at
,
"wduty"
:
mainModel
.
wduty
,
"work_certificate"
:
mainModel
.
work_certificate
,
"verify"
:
saveType
]
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
"frontend/workInfo/save"
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
WorkExperience
.
save
let
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
,
params
:
params
)
{
[
weak
self
]
json
,
code
in
guard
let
self
=
self
else
{
return
}
let
dic
=
json
.
data
guard
let
result
=
YHWorkExperienceDetailModel
.
deserialize
(
from
:
dic
as?
Dictionary
)
else
{
callBackBlock
(
false
,
nil
)
return
}
self
.
mainModel
=
result
callBackBlock
(
true
,
nil
)
}
failBlock
:
{
err
in
callBackBlock
(
false
,
err
)
...
...
@@ -236,12 +241,12 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
}
func
requestWorkInfoProject
(
_
workId
:
String
,
callBackBlock
:
@escaping
(
_
success
:
[
YHWorkExperienceProjectModel
]?,
_
error
:
YHErrorModel
?)
->
()){
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
"frontend/workInfo/project/list
?work_id=
\(
workId
)
"
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
WorkExperience
.
projectList
+
"
?work_id=
\(
workId
)
"
let
_
=
YHNetRequest
.
getRequest
(
url
:
strUrl
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
let
dic
=
json
.
data
guard
let
resultArray
=
[
YHWorkExperienceProjectModel
]
.
deserialize
(
array
:
dic
as?
[
Any
])
else
{
guard
let
resultArray
=
[
YHWorkExperienceProjectModel
]
.
deserialize
(
from
:
dic
as?
[
Any
])
else
{
callBackBlock
([],
nil
)
return
}
...
...
@@ -254,7 +259,7 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
func
requestDeleteWorkExperienceProject
(
_
orderId
:
String
,
callBackBlock
:
@escaping
(
_
success
:
Bool
?,
_
error
:
YHErrorModel
?)
->
())
{
let
params
:
[
String
:
Any
]
=
[
"id"
:
orderId
]
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
"frontend/workInfo/project/del"
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
WorkExperience
.
projectDel
let
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
,
params
:
params
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/WorkExperience/ViewModel/YHWorkIntroductionViewModel.swift
View file @
b62d4d75
...
...
@@ -16,12 +16,12 @@ class YHWorkIntroductionViewModel: YHBaseViewModel {
}
func
requestIntroducetionExample
(
callBackBlock
:
@escaping
(
_
success
:
Bool
?,
_
error
:
YHErrorModel
?)
->
())
{
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
"frontend/workInfo/item-example"
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
WorkExperience
.
projectExample
let
_
=
YHNetRequest
.
getRequest
(
url
:
strUrl
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
let
dic
=
json
.
data
guard
let
result
=
[
YHWorkExampleModel
]
.
deserialize
(
array
:
dic
as?
[
Any
])
else
{
guard
let
result
=
[
YHWorkExampleModel
]
.
deserialize
(
from
:
dic
as?
[
Any
])
else
{
callBackBlock
(
false
,
nil
)
return
}
...
...
@@ -34,16 +34,16 @@ class YHWorkIntroductionViewModel: YHBaseViewModel {
// 0保存 1下一步
func
saveWorkProjectDetail
(
_
workModel
:
YHWorkExperienceDetailModel
,
projectModel
:
YHWorkExperienceProjectModel
,
callBackBlock
:
@escaping
(
_
success
:
Bool
?,
_
error
:
YHErrorModel
?)
->
())
{
let
params
:
[
String
:
Any
]
=
[
"app_id"
:
workModel
.
create_from_appid
??
0
,
"id"
:
projectModel
.
id
??
0
,
"order_id"
:
workModel
.
order_id
??
0
,
"project_end_time"
:
projectModel
.
project_end_time
??
""
,
"project_highlights"
:
projectModel
.
project_highlights
??
0
,
"project_name"
:
projectModel
.
project_name
??
0
,
"project_start_time"
:
projectModel
.
project_start_time
??
""
,
"work_id"
:
workModel
.
id
??
0
]
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
"frontend/workInfo/project/save"
let
params
:
[
String
:
Any
]
=
[
"app_id"
:
workModel
.
create_from_appid
,
"id"
:
projectModel
.
id
??
0
,
"order_id"
:
workModel
.
order_id
,
"project_end_time"
:
projectModel
.
project_end_time
??
""
,
"project_highlights"
:
projectModel
.
project_highlights
??
0
,
"project_name"
:
projectModel
.
project_name
??
0
,
"project_start_time"
:
projectModel
.
project_start_time
??
""
,
"work_id"
:
workModel
.
id
]
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
WorkExperience
.
saveProject
let
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
,
params
:
params
)
{
[
weak
self
]
json
,
code
in
guard
let
self
=
self
else
{
return
}
callBackBlock
(
true
,
nil
)
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(流程)/WorkExperience/ViewModel/YHWorkItemListViewModel.swift
View file @
b62d4d75
...
...
@@ -17,12 +17,12 @@ class YHWorkItemListViewModel: YHBaseViewModel {
}
func
requestWorkList
(
_
orderId
:
String
,
callBackBlock
:
@escaping
(
_
success
:
[
YHWorkItemListModel
]?,
_
error
:
YHErrorModel
?)
->
())
{
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
"frontend/workInfo/list
?order_id=
\(
orderId
)
"
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
WorkExperience
.
list
+
"
?order_id=
\(
orderId
)
"
let
_
=
YHNetRequest
.
getRequest
(
url
:
strUrl
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
let
dic
=
json
.
data
guard
let
result
=
YHWorkModel
.
deserialize
(
dict
:
dic
as?
[
AnyHashable
:
Any
]
)
else
{
let
dic
=
json
.
data
guard
let
result
=
YHWorkModel
.
deserialize
(
from
:
dic
as?
Dictionary
)
else
{
callBackBlock
([],
nil
)
return
}
...
...
@@ -35,7 +35,7 @@ class YHWorkItemListViewModel: YHBaseViewModel {
func
requestDeleteWorkExperience
(
_
orderId
:
String
,
callBackBlock
:
@escaping
(
_
success
:
Bool
?,
_
error
:
YHErrorModel
?)
->
())
{
let
params
:
[
String
:
Any
]
=
[
"id"
:
orderId
]
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
"frontend/workInfo/del"
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
WorkExperience
.
del
let
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
,
params
:
params
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
...
...
galaxy/galaxy/Classes/Tools/NetWork/YHAllApiName.swift
View file @
b62d4d75
...
...
@@ -114,4 +114,31 @@ class YHAllApiName {
// 主申请人国家信息
static
let
countryInformation
=
"infoflow/country"
}
struct
WorkExperience
{
//工作经验列表
static
let
list
=
"infoflow/work/list"
//工作经验详情
static
let
detail
=
"infoflow/work/detail"
//工作经验保存
static
let
save
=
"infoflow/work/save"
static
let
saveAll
=
"infoflow/work/save-all"
//公司列表
static
let
company
=
"infoflow/company/search"
//工作经历删除
static
let
del
=
"infoflow/work/del"
//工作经历参考模版
static
let
example
=
"infoflow/work/getWorkExampleList"
static
let
projectExample
=
"infoflow/work/getWorkProjectExampleList"
//工作经验项目保存
static
let
saveProject
=
"infoflow/work/saveWorkProject"
//工作经验项目列表
static
let
projectList
=
"infoflow/work/getWorkProjectList"
//工作经验项目列表
static
let
projectDetail
=
"infoflow/work/getWorkProjectDetail"
//删除工作经验项目
static
let
projectDel
=
"infoflow/work/delWorkProject"
//识别附件
static
let
ocrFileContent
=
"infoflow/work/getOcrFileContent"
}
}
galaxy/galaxy/Classes/Tools/NetWork/YHNetRequest.swift
View file @
b62d4d75
...
...
@@ -100,15 +100,10 @@ class YHNetRequest: NSObject {
}
private
func
testToken
(
_
requestHeader
:
inout
HTTPHeaders
)
{
//杜宇的账号
// requestHeader.add(name: "token", value: "eyJpdiI6Ik5aeEVDclZTK0FISEFBZUgxN2VkdGc9PSIsInZhbHVlIjoiRFRJOHlObzVrZlp4T2tVYW1MSE1ZK0Z3dXlyK3p4QlczNmxsTXdkdW5GQVY4Q2VqZlNNUDdrdVpsb0JcLytpYmJheUp2MWZTUE5pOWgrVWRLdEtIUkx4R1wvS3F6SmRSQ0dWeFVXanFINGkyRWNMTXB4TVlcLzhjXC9NSzVoMFwvZ1ZOaVIwb0VqWlo1VERPSHY2RWJhME1RdWtkXC8yanBQdm9lMWM4WXJVK1BnMDd6SncwVVlWMDNnbSswSnM3eVwveFRRck03M3pOaDFSc3g0UmlYMTJQdmZpSkhUWHVMa21RV2xRbXBkalVTTUFicmFaN2NVNXl1ZTJOeEJoKzhrMnZtdzdvM1U5Qmh4WXNiSEFERUpiZHNWNkxoM2ZkVVRUdFlMMU1MQnIyaWNxNSt4S1NocDVEbnNqeHphUCtVVk1qTlVnMk1ydVNPamJ0c2tDQ1wvWFk1SkxtSWtDMU9oT3ZqaFpuNU5aVUVicHpYVU56VnlqK01Cb20welJMbkQrcTFWOHFUbzlPK0RGdDRcLzJ1T094MjNjYTVZZmJcL2txRE93cEFUYzlKWWdVWE9cLzFnYnVwTFZ4VUtqMFQ5QlgzZitDQjhyNURpU3p0bktqblBicUxPekNBcWRWM0g0WklSOEc0T0RPVkNBMGZQdEtWV3ZqN3IrcHZDYm9UNjREdnA3U1RZY1Z1dFE3K1RRM2F2eGY0QXc2dGlha0RBUDVpVHdFWE53dzl2eVczVk9VNTJSa1Fzb1J4ZGd0c0RCdktPQ1FWOUQ5Y0krckQ3bFc4NkNJMHliSXlnNGtYU1ZCUHRZWTdCKzA5d1wvdldzWTlpeUdYaEg4eGhITHpRSUthMWpSVlZvZVhwZ3BvamxCTHFSUXJmQ1hQNThYbUNNanZnVGs0b3RDTUFmYkdsYTEzeEtnTXJpZVU0QnJHWDJoUk9sUklzaFFhUkJiNWk0Z2E0cUUwejU4RmF2RnE4Z2U0eEo3VmZ2SmFMTlVacFBvSFlZUmM2N3liVTdhTk5NWU9YS0xtalk3QUN3NWV2UTlPeE5hMmk0aHU4MSt0YjNJQytFczRMa2l6XC9jV0Jxc01QYU0yYXdTXC92RXBxTFNVOVd6SlwvRm9KM21jUHlcL2diRlMyU3REeEl0K1RxSjRuck8xaXlOaWY4NXVzMVBibXpVSEZJWkVZQnFUd2k5TUVJcDUwUEFjTmljTzYyaWFYaFkzZUtkR294d29LUzBUTFF1Y0xxbWtMNFF4ZlZkN2k4YktEUnRGekU3OEdaN2J3TUR4T2FpVHRKaGlqRWNcL2c5dlwvOUVEVmdLNUhBSk1wSGV5UXVoOFJydlczc09HU1EyeXI4SFZZQmJJQWx1cGFIaXhmK1VJNmdoNmwrOElMZXFxSHZtazQreW84RFBlOXFnVDI2bm1tZWl0K01OcU1DSGJEQXdnWW9Hc0ptWFVJbXVXdEpyT2FKUHprTzJ1MkxFSEViZGV4cFpuOWRXK3dUdVR4bmJHZ1VRRGJycFRBME5lWUtaT0JCYjViSWVvcVJ3RXllb2tQZ1VkUWFqVWo0UHQzMUQwWVMwZ05rTTU0Nk1QQUdxTm9rZFNISVYrTG5DWlArNkt5RkZxajdZN1luakRKQVdUaVpnOUhCUExYMEVKRXRRT3QyZTI4cU9TdlBrbWxVZkFLSWZFbXNha3lCZUhFRVpyTmxQOERjbVwvMytCc0JpNnZcL1Nvek9yR2pUWGF2XC9VMzN4OEY5T3VsdUNGRFNWbHZZMnBzNHhMeEdIR21majBOOUJNbEhlK1J4S3dFTnlJamdTeFQyTWlTTlhCUWxnSDF6VmNhWHIzVGpoREY5clB2XC9uZHZjSm1iTHZ1bjFIUUFRait6dUJlUk1WQ1FhdXFoN002YlQ5MVwvQVMzYzJJQ0RFR1czdEtqMFBTQT09IiwibWFjIjoiOGVlZjBmNTVmMzEwNjhkZjVmYTlkYzAwYzllMjJmNjUyZmRmN2U1ODFiZTIzNzRjMDVjMTNiOTNhOWRhMmVkYSJ9")
//明杰的账号
// requestHeader.add(name: "token", value: "eyJpdiI6InM0a3dcL1hQYUtPOENKOXNJYzRoMHJnPT0iLCJ2YWx1ZSI6Ik12dW9PUWI2SGRIZDF1cGVrREZ0b2tyd3ZLeUJkVXp5am9vRWhhYVVNRnRyT0FNNW· 、dlNW9cL1BpMFBSS1RKd3B6Y2dyaVM0aHV0NXlIcXJkc1MxdG11d3hMZ3RsZHJ4aGNiRnZLZDJ0Q0NSYndUMUNuODRaYW1lQk1KZ0FqTFFVbTZ1TllMTGdtY1dlV0ZkRm5TeW9Vc1FYY09ZMFMrbGo4TmRnZ0syOWRhUFFRbjBjWDFDKzEwQWxLWjExNWJ5R3VxRGNEbWN0K0Z6Z1VieFIrMmdSbTZ6dU9CZGdFcDJlTktPMTY2cHYyeGhKVXpSNVhxT0VTQjRCa05OTE9aalQzWVFPczRpS1lldk16Zk9BUmZYbnRybDVoVXdRZWM3V1BUV3J0NkIxRHBCT3JDd1czQ0Q3YjU4cnVxVE5Lb0ZnbnlmMWN1RU9ocnU1ZE5pUmVDS21CbmhWTDdxTmYrRCtNNHZLQzdNXC9Bb0lRWXdNcE5HNW5ielwvWGtCZmpKNlNHWW9MaE94TXNSOURlemVSSkNkUXVveFJkUHVWbFIyeXNVZFJ3K0pXNElUWVhLSXpvUGNQek1cLzRBc3BaRE1lUVdKSENCS0FJdjFyeUVBSnNXeTZcL0RNajJIeFF0QUdndzBWRllOQ2R5UzZMK3lqdFZTanRxbXhmeGFrRVRJOE95enA1cUl0VzVjUytpVnBkRTFXMm9uQytobG1vWTlRQWhvNGN4THdRSTUyS0tub29xK25VZkNIb1FVOEh6YktGbjgzdjQ0NlA1cVc0aWNqYWp6OElSb3Vlb0ZPWmVzdVRLQW5SejVJa09kUDIrZW5jbmVtTzYyOFwvQnRTV3ExZVFhOWh4XC9BbDUxaHNRSDlIXC96QThkVGlBcEVkOUZCelBIV21WVXZ0OFlQaWtsclFPOXJzOXFoeGc1QXcyeEgwU2NqcWxXb2g4aTJBK2tCZkxoNjBTU1VrNDEwWWxVUW50STcyMFwvQjlCU2lxc3RSRGFOemdJTDN5NGRhN1RLSHVXVlFVRHdWN1dIVGppTVFNZEkzMWU4ckpXZ1lcL3BKRENnZGpuR0ZaTlpBVFowMVRWc1dpOFEzcERUY3RjXC9nUGYrTkxLdkFGSlc3b0dSUWVuQkRVR2tzZVN2UDFEdCtKNnNMMHNQZnJaT0tGV293OHMxXC9WZ1V5Z0dmM1VLeFM5QVdvVGVcL2IrS0Y3M0Zya0tQbXl6ZTNkWm00V1hZUUdiY3p5UVwvZWthUVlkNGV6cVlNaDMwazJNS0FoejlLT3FlZlBzWklnWkRZclhwUmFqTzk1VWF2eHJ1c1pqYzI2eThqOEJVZDZIbUt1dE81VjZoM0xiWm1NOVBrcjlhM1djOUJvb3VLTjJ2VTJvMzd3MHA1cmRuSWxTMGgzclYrUHF0NnFRN1BPSE4rM1ZTWWF5VlBTWE56aTV0U3Y5M0NrcDNBYVFHTTJvOUsyR1Y4S2k3N05CZUFDMk4xUVwvVWZKSUdiMjdmOXIxSXZjSTdvaGhMSHFISk12N2xDdlRrZUloaVBMS0cyMkVrclhcL3loenQ1MTF2V0lORDZyVmZMaytiWVJyMnk4SzhDRktQSFRQR1FoTFpQZHBzUllRbUUza3NaXC9lMXFSSFZud05JTWo1UkVTTXZjZmZucUF3Mzh2OVpkT2QyaVQ2VXRFVHltRW1MQjlzaHh1Ym02YW1LRUphSVNUeEltMWN5WGxRdlgzSE96V0ErbDdldnQ0ZkRjdGxsQVVpRFZCdnlMSnVrSW5aS3BrT3FRbDh0NWR0TWoxdjNMb3ZUVEJwbkVMbzJjeHRibGJJTGlMOHhSU0tNaTk5VHJxSk9xanRIOTMreVVmZm5lXC82SThIXC9iVXFudW9VOVd1S1RNYlwvbzF5b2V0bDVtRWNkalBTdkVVRGFPVlE9PSIsIm1hYyI6IjNkOTZlZDhiOTVlNmUxZmVlMzZmNDIyYmMzYTc4N2Y2ZmE0ZTI3MGI2YjQxZGVkZGRmMTY0N2IyOGZiM2RhNjYifQ==")
//金龙的账号
requestHeader
.
add
(
name
:
"token"
,
value
:
"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MTE2MDcwNjQsImkiOjE0NDg0MTczMjc0MjE2LCJ1Ijoi6ZO25rKz6ZuG5ZuiIiwiciI6InN1cGVyX2FwcCJ9.KwTWdaLy5UG4LLs6i-D9ne0RflRTT5v4zvu-66yihDE"
)
// requestHeader.add(name: "token", value:"eyJpdiI6InhISTlXZjA2cXE5Z2pqMDZDa2NrTkE9PSIsInZhbHVlIjoiR3NkRVR0dVdjWE5GN2N3UmNiU0xobVYzZTR6SXlGXC9XVEhWV0xcL1F1YXVBOU9jRDlFZ2pOanBcL1RBMUVkUDlRQ2xhREx0c3dKeHNJQjMwaVVuYkloZHBiUXQzZkJlS2dTWDJrTE90K2FpM0FDWm10a3FFUGZpdW90TDNscStud0tSenRRV2kyV3JVbEZ6eXppUHZ5ajFQMXpBejh0YUZ4Z0VPZkwwdEtwXC9mNjh4bWQySGpSS2pzVkJ1Y3ZrbGFKdGVsMkhkRXJrTlRHbzkxcVdkcE1yWXRja2xDRHVmRUhhdU9ybkJmXC9VRVJnY2RXeVpXMzZVc2h2eUsxYVRmSXR0QXB1WjVsaDBLTllVOEtKWUhSTE5yNXFvYWlaQzdQSWZ0T0V2VTZwTFJjb25OZGdYbE1lNHZOZ0ZWcWhWWkhnUm8rWGJqSE1Jdm1DY3hlWVliY2F0YkplZFwvQ0pMMndtdHFBQUF0MjJYTFNZYk14Tzh0d0g1K2c2M1U2bXFZY3JUbXptbEhCSXR5R3hFZ0JHNmpXTHgzeTJvc0Z2UXpENk5LOTlBN0VjWE8rNmYzTklBN3d0YVVPb2VyS0lNK3FINUZlTmR6UTlBdENuZEtDKzE3emwxMGxvaEc1Sm1mc0E3Y251cU5xcjd4ZzdSbHNNQ2xoRUc4VUJTR24zQ1lRSE5VRGtUd0s0ZTljSlRxRmdwMFVqY0RsMjQwcm1SaVdSN29lNjYrd1JDSlwvSUtiSWpneFpuR2VzeUFBbzNBUUh2MnNVTFZ5bXVLTGVLNFM5TjdzdXpaM1ZFRDdvRUVlRFF0QUY4d2pXcmF4NkFwMGVodXRVUFlxVGhVRmVpYlwvRUJFT05idFhyeXp4TUtcLzN0MlVcL3ZIc2dWSncxaW55TDVUVXFIWjZZMUdHakJKVnpzRkxGeE52RWdLaW9WT0tCb3pTQW1xelNwaTRaQmtGeEpITjVEUU44Q3VGSnBGdzdOcFRyTE9sYmFTT3RrMDJYU3l0XC9PcVJ1OXo2MUpJdm5XSHZFZ0lIMGh5OGR2TEJkNTZjVHFKM1hSYnVEbm9vVFU1VUUzcmRDZ3JhZWRYQWZ1cU9aajVKMHdOMGpxczBSVU5GejNrNzk3bnVBa210dFdCblVBaUs5Y0VIWmxCdE04UlV6T2NEN3ZTN2E0MEhRYmlCNGk3V2xZN1R2ZUM4cVVZZ1Rlb1BndmFcL2phemNnbEhKb05QeHhxa1BldFFqK2ErcWZmYWs1RnNPWEpNK0x4MFo4MTU4OEttZTNxeDMrcCtkNUVwSUd4b1krOXRFdU1UNVFxZyszXC9Lb21TSG5hSFI2OVRVWmxIRm9UcTRlU2kyNWF6K1pQR3lMK1MyS0FvQ2ZFaTViTmdybm1xQ1BscVMzM2tjeUFCQVlvZFdPMTJTb2ttZDl2Q3BuTXVvTnJkUDRpa0g5cE4rWlRcL1l2MWdNdmY0MFVsMFArWWYzWVNmMW5oUnkwWk1mTVc3WUluU3dyQUM4TTZBbHJac0lOMDNiYVhVWks2TCs3QnN0VDlOXC9xaEwyUEtmblVmOXpcL3hoekQ1K3JKWVozVWxrdElKbTdWTHpaMnk2bXFQQ0VJalR1TVpIc1d4bmJjVVIwdTR1VXY1M1wvMEJMODVTWkNreVpCVmh3MWRDeERROGh5YnVsMkVKV2poMFwvYnZHakMycHJmQjUycDQ3b3laUUlTSjdmaDdFMnFtTHhIN1RvUnhhcUhCWXkybkhoMlFwZUVtM0VPUVZrcXp3S0lLMFwvOUtvZnhibE1ZUnp0bGVkcGdqTlp0dGV0cGhCa3hjUmxZXC96SWRFXC83OWxEUnRma1MyYnZqWGhMN0lSM0x2Z0NCTWxIR0pUYjByWDN4Y3JCT3JLTzFzUWkzS3NYTDVDZVJ3MmhEbXlXSENqYWc9PSIsIm1hYyI6Ijc1YmU5YTE4ZGEwNzExZGJlZWQ0MzZhNGVkNWE1NGMzYmE1YWFjNjBhYTgxYjFlYjUyN2M1Yzc4ZjkwNTcyNmMifQ==")
}
/// 链式语法
...
...
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