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
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
184 additions
and
157 deletions
+184
-157
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
+0
-0
YHSelectCountryViewModel.swift
...cantInformation(主申请人信息)/VM/YHSelectCountryViewModel.swift
+2
-5
YHWorkExperienceListViewController.swift
...WorkExperience/C/YHWorkExperienceListViewController.swift
+4
-1
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
+0
-0
YHWorkIntroductionViewModel.swift
...orkExperience/ViewModel/YHWorkIntroductionViewModel.swift
+6
-6
YHWorkItemListViewModel.swift
...程)/WorkExperience/ViewModel/YHWorkItemListViewModel.swift
+3
-3
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
This diff is collapsed.
Click to expand it.
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,6 +15,7 @@ class YHWorkExperienceListViewController: YHBaseViewController {
var
dataSource
:
[
YHWorkItemListModel
]?
var
viewModel
:
YHWorkItemListViewModel
?
var
isMore
:
Bool
=
false
var
orderId
:
Int
=
0
override
func
viewDidLoad
()
{
super
.
viewDidLoad
()
...
...
@@ -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
This diff is collapsed.
Click to expand it.
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
,
let
params
:
[
String
:
Any
]
=
[
"app_id"
:
workModel
.
create_from_appid
,
"id"
:
projectModel
.
id
??
0
,
"order_id"
:
workModel
.
order_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
??
0
"work_id"
:
workModel
.
id
]
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
"frontend/workInfo/project/save"
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
{
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