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
2a7477fb
Commit
2a7477fb
authored
Apr 01, 2024
by
pete谢兆麟
Browse files
Options
Browse Files
Download
Plain Diff
Merge commit '
e9e1ff43
' into xiezhaolin
# Conflicts: # galaxy/galaxy.xcodeproj/project.pbxproj
parents
49786bc2
e9e1ff43
Changes
15
Hide whitespace changes
Inline
Side-by-side
Showing
15 changed files
with
598 additions
and
91 deletions
+598
-91
project.pbxproj
galaxy/galaxy.xcodeproj/project.pbxproj
+8
-0
YHHKPlanDoctumentVC.swift
...rvice(服务中心)/MyDocuments(我的文书)/C/YHHKPlanDoctumentVC.swift
+134
-44
YHMyDocumentsListViewController.swift
...MyDocuments(我的文书)/C/YHMyDocumentsListViewController.swift
+1
-0
YHHKPlanDocModel.swift
...vice(服务中心)/MyDocuments(我的文书)/Model/YHHKPlanDocModel.swift
+28
-0
YHHKPlanCell.swift
...igentService(服务中心)/MyDocuments(我的文书)/V/YHHKPlanCell.swift
+217
-0
YHHKPlanTipsCell.swift
...tService(服务中心)/MyDocuments(我的文书)/V/YHHKPlanTipsCell.swift
+1
-1
YHMyDocumentsDetailViewModel.swift
...uments(我的文书)/ViewModel/YHMyDocumentsDetailViewModel.swift
+103
-11
YHChildPrimaryInfoVC.swift
...ilyMember(家庭成员信息表)/C/Child(子女)/YHChildPrimaryInfoVC.swift
+31
-16
YHSpousePrimaryInfoVC.swift
...yMember(家庭成员信息表)/C/Spouse(配偶)/YHSpousePrimaryInfoVC.swift
+34
-19
YHWholeScreenTipsView.swift
...y/galaxy/Classes/Tools/Helper/YHWholeScreenTipsView.swift
+19
-0
Contents.json
...erviceCenter/我的文书/my_doc_tips_icon.imageset/Contents.json
+22
-0
tishi@2x.png
...ServiceCenter/我的文书/my_doc_tips_icon.imageset/tishi@2x.png
+0
-0
tishi@3x.png
...ServiceCenter/我的文书/my_doc_tips_icon.imageset/tishi@3x.png
+0
-0
scheme_head_bg@2x.png
...Center/我的方案/scheme_head_bg.imageset/scheme_head_bg@2x.png
+0
-0
scheme_head_bg@3x.png
...Center/我的方案/scheme_head_bg.imageset/scheme_head_bg@3x.png
+0
-0
No files found.
galaxy/galaxy.xcodeproj/project.pbxproj
View file @
2a7477fb
...
...
@@ -275,6 +275,8 @@
A58037212BAD7B2A0031C312
/* YHMySchemeModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A58037202BAD7B2A0031C312
/* YHMySchemeModel.swift */
;
};
A582B23D2BB944ED009D098C
/* YHHKPlanDoctumentVC.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A582B23C2BB944ED009D098C
/* YHHKPlanDoctumentVC.swift */
;
};
A582B2412BB95998009D098C
/* YHHKPlanTipsCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A582B2402BB95998009D098C
/* YHHKPlanTipsCell.swift */
;
};
A582B2432BB95E20009D098C
/* YHHKPlanCell.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A582B2422BB95E20009D098C
/* YHHKPlanCell.swift */
;
};
A582B2452BBA4CF9009D098C
/* YHHKPlanDocModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A582B2442BBA4CF9009D098C
/* YHHKPlanDocModel.swift */
;
};
A58556BA2B6BCF1A003746B2
/* YHPersonInfoFillStepModel.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A58556B92B6BCF1A003746B2
/* YHPersonInfoFillStepModel.swift */
;
};
A58951C52B398D1000225C19
/* Launch Screen.storyboard in Resources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A58951C42B398D1000225C19
/* Launch Screen.storyboard */
;
};
A58A8C8F2BA6978100632765
/* YHMineCertificateEntryViewController.swift in Sources */
=
{
isa
=
PBXBuildFile
;
fileRef
=
A58A8C8E2BA6978100632765
/* YHMineCertificateEntryViewController.swift */
;
};
...
...
@@ -684,6 +686,8 @@
A58037202BAD7B2A0031C312
/* YHMySchemeModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMySchemeModel.swift
;
sourceTree
=
"<group>"
;
};
A582B23C2BB944ED009D098C
/* YHHKPlanDoctumentVC.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHHKPlanDoctumentVC.swift
;
sourceTree
=
"<group>"
;
};
A582B2402BB95998009D098C
/* YHHKPlanTipsCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHHKPlanTipsCell.swift
;
sourceTree
=
"<group>"
;
};
A582B2422BB95E20009D098C
/* YHHKPlanCell.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHHKPlanCell.swift
;
sourceTree
=
"<group>"
;
};
A582B2442BBA4CF9009D098C
/* YHHKPlanDocModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHHKPlanDocModel.swift
;
sourceTree
=
"<group>"
;
};
A58556B92B6BCF1A003746B2
/* YHPersonInfoFillStepModel.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHPersonInfoFillStepModel.swift
;
sourceTree
=
"<group>"
;
};
A58951C42B398D1000225C19
/* Launch Screen.storyboard */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
file.storyboard
;
path
=
"Launch Screen.storyboard"
;
sourceTree
=
"<group>"
;
};
A58A8C8E2BA6978100632765
/* YHMineCertificateEntryViewController.swift */
=
{
isa
=
PBXFileReference
;
lastKnownFileType
=
sourcecode.swift
;
path
=
YHMineCertificateEntryViewController.swift
;
sourceTree
=
"<group>"
;
};
...
...
@@ -1541,6 +1545,7 @@
04A7BD0E2BA41C9800BD35A2
/* YHMyDocumentsModel.swift */
,
04A7BD142BA4361700BD35A2
/* YHMyDocumentDetailModel.swift */
,
04A7BD182BA441D400BD35A2
/* YHMyDocumentsUrlModel.swift */
,
A582B2442BBA4CF9009D098C
/* YHHKPlanDocModel.swift */
,
);
path
=
Model
;
sourceTree
=
"<group>"
;
...
...
@@ -1659,6 +1664,7 @@
A5D5ADEE2BB90FBB0039FA6B
/* YHCheckEamilAlertView.swift */
,
A582B2402BB95998009D098C
/* YHHKPlanTipsCell.swift */
,
044CF8D52BBA57DC00008CE8
/* YHFailPromptView.swift */
,
A582B2422BB95E20009D098C
/* YHHKPlanCell.swift */
,
);
path
=
V
;
sourceTree
=
"<group>"
;
...
...
@@ -2346,6 +2352,7 @@
045EEEB32B9F171A0022A143
/* YHWorkFileSyncTableViewCell.swift in Sources */
,
045EEEF12B9F171A0022A143
/* YHChildInfoContainerVC.swift in Sources */
,
045EEF0B2B9F171A0022A143
/* YHBasicInfoFillViewController.swift in Sources */
,
A582B2452BBA4CF9009D098C
/* YHHKPlanDocModel.swift in Sources */
,
045EEF142B9F171A0022A143
/* YHItemModel.swift in Sources */
,
045EEED72B9F171A0022A143
/* YHEducationInfo.swift in Sources */
,
045EEEDE2B9F171A0022A143
/* YHEducationInfoCell.swift in Sources */
,
...
...
@@ -2423,6 +2430,7 @@
04C693642B723B56004C1758
/* YHMySettingCell.swift in Sources */
,
A5FD63C92B63A35B00D1D9DA
/* YHInformationFillTipsAlertView.swift in Sources */
,
045EEEE32B9F171A0022A143
/* YHMySignatureListModel.swift in Sources */
,
A582B2432BB95E20009D098C
/* YHHKPlanCell.swift in Sources */
,
045EEEC52B9F171A0022A143
/* YHOtherPickerView.swift in Sources */
,
045EEE842B9F171A0022A143
/* YHPreviewBasiceInformationViewController.swift in Sources */
,
A5ACE9282B4564F7002C94D2
/* YHSmsCodeView.swift in Sources */
,
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/MyDocuments(我的文书)/C/YHHKPlanDoctumentVC.swift
View file @
2a7477fb
...
...
@@ -18,9 +18,10 @@ class YHHKPlanDoctumentVC: YHBaseViewController {
let
vm
=
YHMyDocumentsDetailViewModel
()
return
vm
}()
var
supplement_id
:
Int
=
0
private
var
isEditFlag
:
Bool
=
false
var
supplement_id
:
Int
=
0
var
status
:
Int
=
0
private
var
canEditFlag
:
Bool
=
false
override
func
viewDidLoad
()
{
super
.
viewDidLoad
()
...
...
@@ -36,52 +37,126 @@ class YHHKPlanDoctumentVC: YHBaseViewController {
super
.
viewWillAppear
(
animated
)
getData
()
}
private
var
bottomView
:
UIView
=
{
let
view
=
UIView
()
view
.
backgroundColor
=
.
white
view
.
isHidden
=
true
return
view
}()
lazy
var
bottomButton
:
UIButton
=
{
let
button
=
UIButton
(
type
:
.
custom
)
button
.
titleLabel
?
.
font
=
UIFont
.
PFSC_B
(
ofSize
:
15
)
button
.
contentHorizontalAlignment
=
.
center
button
.
setTitle
(
"提交"
,
for
:
.
normal
)
button
.
setTitleColor
(
UIColor
(
hex
:
0xffffff
),
for
:
.
normal
)
button
.
layer
.
cornerRadius
=
kCornerRadius6
button
.
clipsToBounds
=
true
button
.
addTarget
(
self
,
action
:
#selector(
clickSubmitBtn
)
,
for
:
.
touchUpInside
)
return
button
}()
}
extension
YHHKPlanDoctumentVC
{
//点击提交按钮
@objc
func
clickSubmitBtn
()
{
submitOp
()
}
//提交数据
private
func
submitOp
()
{
if
viewModel
.
arrHKPlanData
.
count
>
5
{
if
let
orderID
=
UserDefaults
.
standard
.
value
(
forKey
:
"orderIdForPreview"
)
{
let
params
=
[
"order_id"
:
orderID
,
"supplement_id"
:
supplement_id
,
"career_achievement"
:
viewModel
.
arrHKPlanData
[
0
]
.
content
,
"professional_skills"
:
viewModel
.
arrHKPlanData
[
1
]
.
content
,
"academic_achievement"
:
viewModel
.
arrHKPlanData
[
2
]
.
content
,
"plan_detail"
:
viewModel
.
arrHKPlanData
[
3
]
.
content
,
"qualifications_and_awards"
:
viewModel
.
arrHKPlanData
[
4
]
.
content
,
"other"
:
viewModel
.
arrHKPlanData
[
5
]
.
content
,
"content_save"
:
1
]
viewModel
.
submitHKPlanDocument
(
params
)
{
success
,
error
in
if
success
{
YHHUD
.
flash
(
message
:
"提交成功"
)
}
else
{
YHHUD
.
flash
(
message
:
error
?
.
errorMsg
??
"提交失败"
)
}
}
}
else
{
YHHUD
.
flash
(
message
:
"订单ID 为空"
)
}
}
else
{
YHHUD
.
flash
(
message
:
"参数不合法"
)
}
}
func
getData
()
{
viewModel
.
requestDocumentsDetail
(
"
\(
supplement_id
)
"
,
callBackBlock
:
{[
weak
self
]
success
,
error
in
guard
let
self
=
self
else
{
return
}
// if self.viewModel.mainModel?.prospectus.id != 0 {
// self.stepView.snp.remakeConstraints { make in
// make.top.equalTo(k_Height_NavigationtBarAndStatuBar)
// make.left.right.equalTo(self.view)
// make.height.equalTo(0)
// }
// self.bottomView.isHidden = true
// }
// if self.viewModel.mainModel?.writing_document.doc_sign.supplement_id == 0 {
// self.stepView.currentIndex = 0
// self.bottomView.isHidden = true
// } else {
// let state = self.viewModel.mainModel?.writing_document.doc_sign.status
// // 0-待上传,1-未发送, 2-发送中,3-已发送,4-已签收,5-审核通过,6-驳回
// if state == 0 || state == 1 || state == 2 {
//
// } else if state == 3 || state == 4 || state == 5 {
//
// } else {
//
// }
// self.stepView.currentIndex = 1
// }
for
item
in
viewModel
.
arrHKPlanData
{
item
.
canEditFlag
=
self
.
canEditFlag
}
self
.
tableView
.
reloadData
()
})
}
func
updateDataSource
()
{
self
.
tableView
.
reloadData
()
}
func
setView
()
{
// view.addSubview(headSessionView)
// headSessionView.snp.makeConstraints { make in
// make.top.equalToSuperview().offset(k_Height_NavigationtBarAndStatuBar)
// make.left.equalToSuperview().offset(kMargin)
// make.right.equalToSuperview().offset(-kMargin)
// make.height.equalTo(YHMyDocListHeaderView.viewH)
// }
let
tipsHoldView
:
UIView
=
UIView
()
tipsHoldView
.
backgroundColor
=
UIColor
(
hex
:
0xE8F1FF
,
alpha
:
1.0
)
tipsHoldView
.
frame
=
CGRect
(
x
:
0
,
y
:
0
,
width
:
KScreenWidth
,
height
:
36.0
)
bottomView
.
addSubview
(
tipsHoldView
)
tipsHoldView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
0
)
make
.
left
.
right
.
equalTo
(
0
)
make
.
height
.
equalTo
(
36
)
}
let
iconImagV
:
UIImageView
=
UIImageView
(
image
:
UIImage
(
named
:
"my_doc_tips_icon"
))
iconImagV
.
contentMode
=
.
scaleAspectFill
tipsHoldView
.
addSubview
(
iconImagV
)
iconImagV
.
snp
.
makeConstraints
{
make
in
make
.
centerY
.
equalToSuperview
()
make
.
left
.
equalTo
(
kMargin
)
make
.
width
.
height
.
equalTo
(
kMargin
)
}
let
tipsLable
:
UILabel
=
UILabel
(
text
:
"请确认文书内容,修改完成后点击提交。"
)
tipsLable
.
textColor
=
.
brandMainColor
tipsLable
.
font
=
UIFont
.
PFSC_M
(
ofSize
:
12
)
tipsHoldView
.
addSubview
(
tipsLable
)
tipsLable
.
snp
.
makeConstraints
{
make
in
make
.
centerY
.
equalToSuperview
()
make
.
left
.
equalTo
(
iconImagV
.
snp
.
right
)
.
offset
(
4
)
make
.
height
.
equalTo
(
20
)
make
.
right
.
equalToSuperview
()
.
offset
(
-
kMargin
)
}
bottomView
.
addSubview
(
bottomButton
)
bottomButton
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
tipsHoldView
.
snp
.
bottom
)
make
.
left
.
equalTo
(
kMargin
)
make
.
right
.
equalTo
(
-
kMargin
)
make
.
height
.
equalTo
(
48
)
}
view
.
addSubview
(
bottomView
)
bottomView
.
snp
.
makeConstraints
{
make
in
make
.
bottom
.
left
.
right
.
equalToSuperview
()
make
.
height
.
equalTo
(
120
)
}
bottomView
.
layoutIfNeeded
()
bottomButton
.
addYinHeGradualLayer
()
tableView
=
{
let
tableView
=
UITableView
(
frame
:
.
zero
,
style
:
.
plain
)
...
...
@@ -90,16 +165,30 @@ extension YHHKPlanDoctumentVC {
tableView
.
separatorStyle
=
.
none
tableView
.
delegate
=
self
tableView
.
dataSource
=
self
tableView
.
register
(
cellWithClass
:
YH
DocList
Cell
.
self
)
tableView
.
register
(
cellWithClass
:
YH
HKPlan
Cell
.
self
)
tableView
.
register
(
cellWithClass
:
YHHKPlanTipsCell
.
self
)
return
tableView
}()
view
.
addSubview
(
tableView
)
tableView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
k_Height_NavigationtBarAndStatuBar
)
make
.
left
.
right
.
equalToSuperview
()
make
.
bottom
.
equalToSuperview
()
if
status
>
4
{
canEditFlag
=
false
bottomView
.
isHidden
=
true
tableView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
k_Height_NavigationtBarAndStatuBar
)
make
.
left
.
right
.
equalToSuperview
()
make
.
bottom
.
equalToSuperview
()
}
}
else
{
canEditFlag
=
true
bottomView
.
isHidden
=
false
tableView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
k_Height_NavigationtBarAndStatuBar
)
make
.
left
.
right
.
equalToSuperview
()
make
.
bottom
.
equalTo
(
bottomView
.
snp
.
top
)
.
offset
(
-
kMargin
)
}
}
}
}
...
...
@@ -114,7 +203,7 @@ extension YHHKPlanDoctumentVC: UITableViewDelegate, UITableViewDataSource {
if
section
==
0
{
return
1
}
return
6
return
viewModel
.
arrHKPlanData
.
count
}
func
tableView
(
_
tableView
:
UITableView
,
cellForRowAt
indexPath
:
IndexPath
)
->
UITableViewCell
{
...
...
@@ -125,8 +214,9 @@ extension YHHKPlanDoctumentVC: UITableViewDelegate, UITableViewDataSource {
}
let
cell
=
tableView
.
dequeueReusableCell
(
withClass
:
YH
DocList
Cell
.
self
)
let
cell
=
tableView
.
dequeueReusableCell
(
withClass
:
YH
HKPlan
Cell
.
self
)
cell
.
selectionStyle
=
.
none
cell
.
dataMode
=
viewModel
.
arrHKPlanData
[
indexPath
.
row
]
return
cell
}
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/MyDocuments(我的文书)/C/YHMyDocumentsListViewController.swift
View file @
2a7477fb
...
...
@@ -319,6 +319,7 @@ extension YHMyDocumentsListViewController: UITableViewDelegate, UITableViewDataS
//跳转赴港计划书
let
vc
=
YHHKPlanDoctumentVC
()
vc
.
supplement_id
=
model
.
id
vc
.
status
=
model
.
status
self
.
navigationController
?
.
pushViewController
(
vc
)
}
else
{
let
vc
=
YHMyDocumentsDetailViewController
()
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/MyDocuments(我的文书)/Model/YHHKPlanDocModel.swift
0 → 100644
View file @
2a7477fb
//
// YHHKPlanDocModel.swift
// galaxy
//
// Created by davidhuangA on 2024/4/1.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
enum
HKPlanDocQuestionType
{
case
unknow
case
planDocQuestion1
//1、主要事业成就
case
planDocQuestion2
//2、专业技能成就
case
planDocQuestion3
//3、学业成就
case
planDocQuestion4
//4、未来发展计划
case
planDocQuestion5
//5、专业资格及奖项
case
planDocQuestion6
//6、其他材料
}
class
YHHKPlanDocModel
{
var
title
:
String
=
""
var
content
:
String
=
""
var
type
:
HKPlanDocQuestionType
=
.
unknow
//本地使用
var
canEditFlag
:
Bool
=
true
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/MyDocuments(我的文书)/V/YHHKPlanCell.swift
0 → 100644
View file @
2a7477fb
//
// YHHKPlanCell.swift
// galaxy
//
// Created by davidhuangA on 2024/3/31.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import
UIKit
class
YHHKPlanCell
:
UITableViewCell
{
override
func
awakeFromNib
()
{
super
.
awakeFromNib
()
// Initialization code
}
override
func
setSelected
(
_
selected
:
Bool
,
animated
:
Bool
)
{
super
.
setSelected
(
selected
,
animated
:
animated
)
// Configure the view for the selected state
}
override
init
(
style
:
UITableViewCell
.
CellStyle
,
reuseIdentifier
:
String
?)
{
super
.
init
(
style
:
style
,
reuseIdentifier
:
reuseIdentifier
)
initView
()
}
required
init
?(
coder
:
NSCoder
)
{
fatalError
(
"init(coder:) has not been implemented"
)
}
private
lazy
var
line
:
UIView
=
{
let
view
=
UIView
()
view
.
backgroundColor
=
.
separatorColor
return
view
}()
private
lazy
var
numberLabel
:
UILabel
=
{
let
view
=
UILabel
()
view
.
text
=
"82/100"
view
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
12
)
view
.
textColor
=
UIColor
.
placeHolderColor
view
.
textAlignment
=
.
right
return
view
}()
private
lazy
var
myTextView
:
UITextView
=
{
let
view
=
UITextView
()
view
.
textColor
=
UIColor
.
mainTextColor
view
.
font
=
UIFont
.
PFSC_R
(
ofSize
:
14
)
view
.
backgroundColor
=
.
clear
// view.isScrollEnabled = false // 关闭滚动,允许自动增高
return
view
}()
private
lazy
var
nameLable
:
UILabel
=
{
let
lable0
=
UILabel
(
text
:
"1、主要事业成就"
)
lable0
.
textColor
=
UIColor
.
mainTextColor
lable0
.
font
=
UIFont
.
PFSC_M
(
ofSize
:
17
)
return
lable0
}()
private
lazy
var
iconImageV
:
UIImageView
=
{
let
view
=
UIImageView
()
view
.
image
=
UIImage
(
named
:
"other_info_warning"
)
view
.
contentMode
=
.
scaleAspectFill
return
view
}()
var
dataMode
:
YHHKPlanDocModel
?
{
didSet
{
updateUI
()
}
}
}
private
extension
YHHKPlanCell
{
func
initView
()
{
backgroundColor
=
.
clear
contentView
.
backgroundColor
=
.
clear
//应香港入境处最新要求,
//赴港计划书格式、内容作出调整,共分为六部分,每部分不得超过100字(不含标点)
//。其中“赴港具体计划”仅代表个人预期规划,无须严格执行。
contentView
.
addSubview
(
line
)
line
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalTo
(
kMargin
)
make
.
right
.
equalTo
(
-
kMargin
)
make
.
height
.
equalTo
(
0.5
)
make
.
bottom
.
equalToSuperview
()
}
let
holdView
:
UIView
=
UIView
()
holdView
.
backgroundColor
=
UIColor
.
white
holdView
.
clipsToBounds
=
true
holdView
.
layer
.
cornerRadius
=
kCornerRadius6
contentView
.
addSubview
(
holdView
)
holdView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
18
)
make
.
left
.
equalTo
(
12
)
make
.
right
.
equalTo
(
-
12
)
make
.
bottom
.
equalTo
(
line
.
snp
.
top
)
}
holdView
.
addSubview
(
nameLable
)
nameLable
.
snp
.
makeConstraints
{
make
in
make
.
top
.
left
.
equalTo
(
18
)
make
.
height
.
equalTo
(
20
)
}
holdView
.
addSubview
(
iconImageV
)
iconImageV
.
snp
.
makeConstraints
{
make
in
make
.
left
.
equalTo
(
nameLable
.
snp
.
right
)
.
offset
(
4
)
make
.
centerY
.
equalTo
(
nameLable
)
make
.
height
.
width
.
equalTo
(
16
)
}
let
tap
:
UITapGestureRecognizer
=
UITapGestureRecognizer
(
target
:
self
,
action
:
#selector(
tapButton(gestureRecognizer:)
)
)
iconImageV
.
isUserInteractionEnabled
=
true
iconImageV
.
addGestureRecognizer
(
tap
)
let
subHoldView
:
UIView
=
UIView
()
subHoldView
.
backgroundColor
=
UIColor
.
contentBkgColor
subHoldView
.
layer
.
cornerRadius
=
kCornerRadius6
subHoldView
.
clipsToBounds
=
true
holdView
.
addSubview
(
subHoldView
)
subHoldView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
nameLable
.
snp
.
bottom
)
.
offset
(
12
)
make
.
left
.
equalTo
(
18
)
make
.
right
.
equalTo
(
-
18
)
make
.
bottom
.
equalTo
(
line
.
snp
.
top
)
.
offset
(
-
18
)
}
subHoldView
.
addSubview
(
numberLabel
)
numberLabel
.
snp
.
makeConstraints
{
make
in
make
.
right
.
equalTo
(
-
12
)
make
.
height
.
equalTo
(
18
)
make
.
bottom
.
equalToSuperview
()
.
offset
(
-
8
)
}
subHoldView
.
addSubview
(
myTextView
)
myTextView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
left
.
equalToSuperview
()
.
offset
(
12
)
make
.
right
.
equalTo
(
-
12
)
make
.
height
.
greaterThanOrEqualTo
(
80
)
make
.
bottom
.
equalTo
(
numberLabel
.
snp
.
top
)
.
offset
(
-
2
)
}
myTextView
.
delegate
=
self
// myTextView.wrapToContent()
}
@objc
func
tapButton
(
gestureRecognizer
:
UITapGestureRecognizer
)
{
guard
let
model
=
dataMode
else
{
return
}
switch
model
.
type
{
case
.
planDocQuestion1
:
YHWholeScreenTipsView
.
show
(
type
:
.
hkPlanQ1
,
targetView
:
iconImageV
)
case
.
planDocQuestion2
:
YHWholeScreenTipsView
.
show
(
type
:
.
hkPlanQ2
,
targetView
:
iconImageV
)
case
.
planDocQuestion3
:
YHWholeScreenTipsView
.
show
(
type
:
.
hkPlanQ3
,
targetView
:
iconImageV
)
case
.
planDocQuestion4
:
YHWholeScreenTipsView
.
show
(
type
:
.
hkPlanQ4
,
targetView
:
iconImageV
)
case
.
planDocQuestion5
:
YHWholeScreenTipsView
.
show
(
type
:
.
hkPlanQ5
,
targetView
:
iconImageV
)
case
.
planDocQuestion6
:
YHWholeScreenTipsView
.
show
(
type
:
.
hkPlanQ6
,
targetView
:
iconImageV
)
case
.
unknow
:
printLog
(
""
)
}
}
func
updateUI
()
{
guard
let
model
=
dataMode
else
{
return
}
nameLable
.
text
=
model
.
title
myTextView
.
text
=
model
.
content
if
model
.
canEditFlag
{
myTextView
.
isEditable
=
true
myTextView
.
isSelectable
=
true
}
else
{
myTextView
.
isEditable
=
false
myTextView
.
isSelectable
=
false
myTextView
.
wrapToContent
()
}
numberLabel
.
text
=
myTextView
.
text
.
count
.
string
+
"/100"
}
}
extension
YHHKPlanCell
:
UITextViewDelegate
{
func
textView
(
_
textView
:
UITextView
,
shouldChangeTextIn
range
:
NSRange
,
replacementText
text
:
String
)
->
Bool
{
let
newLength
=
(
textView
.
text
as
NSString
)
.
length
+
text
.
count
-
range
.
length
return
newLength
<=
100
}
func
textViewDidChange
(
_
textView
:
UITextView
)
{
guard
let
model
=
dataMode
else
{
return
}
guard
let
text
=
textView
.
text
else
{
return
}
model
.
content
=
text
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/MyDocuments(我的文书)/V/YHHKPlanTipsCell.swift
View file @
2a7477fb
...
...
@@ -84,7 +84,7 @@ private extension YHHKPlanTipsCell {
let
a
:
ASAttributedString
=
.
init
(
"应香港入境处最新要求,"
,
.
font
(
UIFont
.
PFSC_R
(
ofSize
:
12
)),
.
foreground
(
UIColor
.
labelTextColor2
))
let
b
:
ASAttributedString
=
.
init
(
"赴港计划书格式、内容作出调整,共分为六部分,每部分不得超过100字
(不含标点)
"
,
.
font
(
UIFont
.
PFSC_R
(
ofSize
:
12
)),
.
foreground
(
UIColor
.
brandMainColor
))
let
b
:
ASAttributedString
=
.
init
(
"赴港计划书格式、内容作出调整,共分为六部分,每部分不得超过100字"
,
.
font
(
UIFont
.
PFSC_R
(
ofSize
:
12
)),
.
foreground
(
UIColor
.
brandMainColor
))
let
c
:
ASAttributedString
=
.
init
(
"。其中“赴港具体计划”仅代表个人预期规划,无须严格执行。"
,
.
font
(
UIFont
.
PFSC_R
(
ofSize
:
12
)),
.
foreground
(
UIColor
.
labelTextColor2
))
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/MyDocuments(我的文书)/ViewModel/YHMyDocumentsDetailViewModel.swift
View file @
2a7477fb
...
...
@@ -13,7 +13,11 @@ class YHMyDocumentsDetailViewModel: YHBaseViewModel {
var
urlModel
:
YHMyDocumentsUrlModel
?
var
pageUrl
:
String
?
var
personalUrl
:
String
?
//赴港计划书数据
var
arrHKPlanData
:
[
YHHKPlanDocModel
]
=
[]
override
init
()
{
super
.
init
()
}
...
...
@@ -31,6 +35,8 @@ class YHMyDocumentsDetailViewModel: YHBaseViewModel {
return
}
self
.
mainModel
=
result
//组装赴港计划书数据
self
.
installHKPlanData
()
callBackBlock
(
true
,
nil
)
}
else
{
let
error
:
YHErrorModel
=
YHErrorModel
(
errorCode
:
Int32
(
json
.
code
),
errorMsg
:
json
.
msg
)
...
...
@@ -70,9 +76,27 @@ class YHMyDocumentsDetailViewModel: YHBaseViewModel {
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
Documents
.
submitApi
let
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
,
params
:
params
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
guard
self
!=
nil
else
{
return
}
if
json
.
code
==
200
{
let
dic
=
json
.
data
_
=
json
.
data
callBackBlock
(
true
,
nil
)
}
else
{
let
error
:
YHErrorModel
=
YHErrorModel
(
errorCode
:
Int32
(
json
.
code
),
errorMsg
:
json
.
msg
)
callBackBlock
(
false
,
error
)
}
}
failBlock
:
{
err
in
callBackBlock
(
false
,
err
)
}
}
//提交赴港计划书
func
submitHKPlanDocument
(
_
params
:
[
String
:
Any
],
callBackBlock
:
@escaping
(
_
success
:
Bool
,
_
error
:
YHErrorModel
?)
->
())
{
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
Documents
.
hkPlanApi
let
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
,
params
:
params
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
self
!=
nil
else
{
return
}
if
json
.
code
==
200
{
_
=
json
.
data
callBackBlock
(
true
,
nil
)
}
else
{
let
error
:
YHErrorModel
=
YHErrorModel
(
errorCode
:
Int32
(
json
.
code
),
errorMsg
:
json
.
msg
)
...
...
@@ -90,9 +114,9 @@ class YHMyDocumentsDetailViewModel: YHBaseViewModel {
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
Documents
.
recordApi
let
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
,
params
:
params
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
guard
self
!=
nil
else
{
return
}
if
json
.
code
==
200
{
let
dic
=
json
.
data
_
=
json
.
data
callBackBlock
(
true
,
nil
)
}
else
{
let
error
:
YHErrorModel
=
YHErrorModel
(
errorCode
:
Int32
(
json
.
code
),
errorMsg
:
json
.
msg
)
...
...
@@ -157,7 +181,7 @@ class YHMyDocumentsDetailViewModel: YHBaseViewModel {
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
if
json
.
code
==
200
{
let
dic
=
json
.
data
_
=
json
.
data
self
.
pageUrl
=
json
.
data
as?
String
callBackBlock
(
true
,
nil
)
}
else
{
...
...
@@ -200,9 +224,9 @@ class YHMyDocumentsDetailViewModel: YHBaseViewModel {
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
Signature
.
upload
let
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
,
params
:
params
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
guard
self
!=
nil
else
{
return
}
if
json
.
code
==
200
{
let
dic
=
json
.
data
_
=
json
.
data
// guard let result = YHMySignatureURLModel.deserialize(from: dic as? Dictionary) else {
// callBackBlock(false,nil)
// return
...
...
@@ -224,7 +248,7 @@ class YHMyDocumentsDetailViewModel: YHBaseViewModel {
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
Signature
.
callBack
let
_
=
YHNetRequest
.
getRequest
(
url
:
strUrl
,
params
:
params
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
guard
self
!=
nil
else
{
return
}
if
json
.
code
==
200
{
callBackBlock
(
true
,
nil
)
}
else
{
...
...
@@ -242,7 +266,7 @@ class YHMyDocumentsDetailViewModel: YHBaseViewModel {
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
Signature
.
confirm
let
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
,
params
:
params
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
return
}
guard
self
!=
nil
else
{
return
}
if
json
.
code
==
200
{
callBackBlock
(
true
,
nil
)
}
else
{
...
...
@@ -258,7 +282,7 @@ class YHMyDocumentsDetailViewModel: YHBaseViewModel {
let
strUrl
=
YHBaseUrlManager
.
shared
.
curURL
()
+
YHAllApiName
.
Signature
.
sendMail
let
_
=
YHNetRequest
.
postRequest
(
url
:
strUrl
,
params
:
params
)
{
[
weak
self
]
json
,
code
in
//1. json字符串 转 对象
guard
let
self
=
self
else
{
guard
self
!=
nil
else
{
callBackBlock
(
false
,
nil
)
return
}
...
...
@@ -273,3 +297,71 @@ class YHMyDocumentsDetailViewModel: YHBaseViewModel {
}
}
}
private
extension
YHMyDocumentsDetailViewModel
{
func
installHKPlanData
()
{
guard
let
model
=
self
.
mainModel
?
.
prospectus
else
{
return
}
arrHKPlanData
.
removeAll
()
//1、主要事业成就
do
{
let
tModel
=
YHHKPlanDocModel
()
tModel
.
title
=
"1、主要事业成就"
tModel
.
content
=
model
.
career_achievement
.
defaultStringIfEmpty
(
detaultValue
:
""
)
tModel
.
type
=
.
planDocQuestion1
arrHKPlanData
.
append
(
tModel
)
}
//2、专业技能成就
do
{
let
tModel
=
YHHKPlanDocModel
()
tModel
.
title
=
"2、专业技能成就"
tModel
.
content
=
model
.
professional_skills
.
defaultStringIfEmpty
(
detaultValue
:
""
)
tModel
.
type
=
.
planDocQuestion2
arrHKPlanData
.
append
(
tModel
)
}
//3、学业成就
do
{
let
tModel
=
YHHKPlanDocModel
()
tModel
.
title
=
"3、学业成就"
tModel
.
content
=
model
.
academic_achievement
.
defaultStringIfEmpty
(
detaultValue
:
""
)
tModel
.
type
=
.
planDocQuestion3
arrHKPlanData
.
append
(
tModel
)
}
//4、未来发展计划
do
{
let
tModel
=
YHHKPlanDocModel
()
tModel
.
title
=
"4、未来发展计划"
tModel
.
content
=
model
.
plan_detail
.
defaultStringIfEmpty
(
detaultValue
:
""
)
tModel
.
type
=
.
planDocQuestion4
arrHKPlanData
.
append
(
tModel
)
}
//5、专业资格及奖项
do
{
let
tModel
=
YHHKPlanDocModel
()
tModel
.
title
=
"5、专业资格及奖项"
tModel
.
content
=
model
.
qualifications_and_awards
.
defaultStringIfEmpty
(
detaultValue
:
""
)
tModel
.
type
=
.
planDocQuestion5
arrHKPlanData
.
append
(
tModel
)
}
//6、其他材料
do
{
let
tModel
=
YHHKPlanDocModel
()
tModel
.
title
=
"6、其他材料"
tModel
.
content
=
model
.
other
.
defaultStringIfEmpty
(
detaultValue
:
""
)
tModel
.
type
=
.
planDocQuestion6
arrHKPlanData
.
append
(
tModel
)
}
}
}
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/FamilyMember(家庭成员信息表)/C/Child(子女)/YHChildPrimaryInfoVC.swift
View file @
2a7477fb
...
...
@@ -367,11 +367,13 @@ extension YHChildPrimaryInfoVC : UITableViewDelegate, UITableViewDataSource {
[
weak
self
]
country
in
guard
let
self
=
self
else
{
return
}
let
title
=
arr
[
0
]
as!
YHFormTitleItem
if
title
.
type
==
.
nationality
{
if
title
.
type
==
.
nationality
{
// 选国籍
self
.
child
?
.
nationality
=
country
}
else
if
title
.
type
==
.
liveInfo
{
}
else
if
title
.
type
==
.
liveInfo
{
// // 居住信息选国家地区
self
.
child
?
.
address
.
country
=
country
// 选择国家地区后需清空城市
self
.
child
?
.
address
.
area
=
[]
}
self
.
loadInfo
()
...
...
@@ -381,23 +383,36 @@ extension YHChildPrimaryInfoVC : UITableViewDelegate, UITableViewDataSource {
}
else
if
detailItem
.
type
==
.
liveCity
{
let
vc
=
YHAddressViewController
()
vc
.
backLocationStringController
=
{
[
weak
self
]
(
string1
,
string2
,
string3
,
string4
)
in
guard
let
self
=
self
else
{
return
}
print
(
"
\(
string1
)\n\(
string2
)\n\(
string3
)\n\(
string4
)
"
)
var
provice
=
""
if
let
country
=
self
.
child
?
.
address
.
country
{
if
country
.
contains
(
"台湾"
)
{
provice
=
"台湾省"
}
if
country
.
contains
(
"香港"
)
{
provice
=
"香港特别行政区"
}
if
country
.
contains
(
"澳门"
)
{
provice
=
"澳门特别行政区"
}
}
let
addressPicker
=
YHAddressViewController
(
selectProvince
:
provice
)
addressPicker
.
backLocationStringController
=
{
[
weak
self
]
(
address
,
province
,
city
,
area
)
in
guard
let
self
=
self
else
{
return
}
print
(
"
\(
address
)\n\(
province
)\n\(
city
)\n\(
area
)
"
)
var
citys
:[
String
]
=
[]
if
!
isEmptyString
(
string2
)
{
citys
.
append
(
string2
)
if
!
isEmptyString
(
province
)
{
citys
.
append
(
province
)
}
if
!
isEmptyString
(
string3
)
{
citys
.
append
(
string3
)
if
!
isEmptyString
(
city
)
{
citys
.
append
(
city
)
}
self
.
child
?
.
address
.
area
=
citys
self
.
loadInfo
()
save
()
}
self
.
present
(
vc
,
animated
:
true
)
self
.
child
?
.
address
.
area
=
citys
self
.
loadInfo
()
save
()
}
UIViewController
.
current
?
.
present
(
addressPicker
,
animated
:
true
,
completion
:
nil
)
}
else
if
detailItem
.
type
==
.
birthday
{
// 出生日期
...
...
galaxy/galaxy/Classes/Modules/IntelligentService(服务中心)/ServiceProcess(我的信息流程)/FamilyMember(家庭成员信息表)/C/Spouse(配偶)/YHSpousePrimaryInfoVC.swift
View file @
2a7477fb
...
...
@@ -326,11 +326,13 @@ extension YHSpousePrimaryInfoVC : UITableViewDelegate, UITableViewDataSource {
[
weak
self
]
country
in
guard
let
self
=
self
else
{
return
}
let
title
=
arr
[
0
]
as!
YHFormTitleItem
if
title
.
type
==
.
nationality
{
if
title
.
type
==
.
nationality
{
// 选国籍
self
.
spouse
?
.
nationality
=
country
}
else
if
title
.
type
==
.
liveInfo
{
}
else
if
title
.
type
==
.
liveInfo
{
// 居住信息选国家地区
self
.
spouse
?
.
address
.
country
=
country
// 选择国家地区后需清空城市
self
.
spouse
?
.
address
.
area
=
[]
}
self
.
loadInfo
()
...
...
@@ -340,23 +342,36 @@ extension YHSpousePrimaryInfoVC : UITableViewDelegate, UITableViewDataSource {
}
else
if
detailItem
.
type
==
.
liveCity
{
let
vc
=
YHAddressViewController
()
vc
.
backLocationStringController
=
{
[
weak
self
]
(
string1
,
string2
,
string3
,
string4
)
in
guard
let
self
=
self
else
{
return
}
print
(
"
\(
string1
)\n\(
string2
)\n\(
string3
)\n\(
string4
)
"
)
var
citys
:[
String
]
=
[]
if
!
isEmptyString
(
string2
)
{
citys
.
append
(
string2
)
}
if
!
isEmptyString
(
string3
)
{
citys
.
append
(
string3
)
}
self
.
spouse
?
.
address
.
area
=
citys
self
.
loadInfo
()
save
()
}
self
.
present
(
vc
,
animated
:
true
)
var
provice
=
""
if
let
country
=
self
.
spouse
?
.
address
.
country
{
if
country
.
contains
(
"台湾"
)
{
provice
=
"台湾省"
}
if
country
.
contains
(
"香港"
)
{
provice
=
"香港特别行政区"
}
if
country
.
contains
(
"澳门"
)
{
provice
=
"澳门特别行政区"
}
}
let
addressPicker
=
YHAddressViewController
(
selectProvince
:
provice
)
addressPicker
.
backLocationStringController
=
{
[
weak
self
]
(
address
,
province
,
city
,
area
)
in
guard
let
self
=
self
else
{
return
}
print
(
"
\(
address
)\n\(
province
)\n\(
city
)\n\(
area
)
"
)
var
citys
:[
String
]
=
[]
if
!
isEmptyString
(
province
)
{
citys
.
append
(
province
)
}
if
!
isEmptyString
(
city
)
{
citys
.
append
(
city
)
}
self
.
spouse
?
.
address
.
area
=
citys
self
.
loadInfo
()
save
()
}
UIViewController
.
current
?
.
present
(
addressPicker
,
animated
:
true
,
completion
:
nil
)
}
}
...
...
galaxy/galaxy/Classes/Tools/Helper/YHWholeScreenTipsView.swift
View file @
2a7477fb
...
...
@@ -14,6 +14,13 @@ enum YHWholeScreenTipsViewType : Int {
case
degreeType
//学位类型
case
company
//用人单位介绍
case
officialWebsite
//用人单位官网
case
hkPlanQ1
//赴港计划书问题1
case
hkPlanQ2
//赴港计划书问题2
case
hkPlanQ3
//赴港计划书问题3
case
hkPlanQ4
//赴港计划书问题4
case
hkPlanQ5
//赴港计划书问题5
case
hkPlanQ6
//赴港计划书问题6
}
...
...
@@ -66,6 +73,18 @@ class YHWholeScreenTipsView: UIView {
return
"可先填写用人单位名称,选择指定的用人单位后,系统将为您自动填写单位介绍"
case
.
officialWebsite
:
return
"可先填写用人单位名称,选择指定的用人单位后,系统将为您自动填写单位官网"
case
.
hkPlanQ1
:
return
"请以不超过100字简介你的主要事业成就,包括你在主要工作项目上曾担当的角色、你工作期间曾服务的知名机构/单位或你对有关工作项目及机构的重大贡献"
case
.
hkPlanQ2
:
return
"请以不超过100字简介你的专业技能或人才清单内相关专业的成就,以及有关技能/专业如何对香港经济或社会做出重大贡献"
case
.
hkPlanQ3
:
return
"请以不超过100字简介你的学业成就,包括你的学业成绩或曾取得的奖项(如有)"
case
.
hkPlanQ4
:
return
"请以不超过100字简介你未来在香港发展事业的计划,包括你与本地商业或学业机构联系及合作的详情(如有)"
case
.
hkPlanQ5
:
return
"请以不超过100字简介你所属的专业界别内曾获取由国家或国际认可/著名团体颁奖的专业资格,及曾取得的奖项(如有)"
case
.
hkPlanQ6
:
return
"请以不超过100字简介你认为对评核你的申请非常重要的其他材料"
default
:
return
"--"
}
...
...
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/我的文书/my_doc_tips_icon.imageset/Contents.json
0 → 100644
View file @
2a7477fb
{
"images"
:
[
{
"idiom"
:
"universal"
,
"scale"
:
"1x"
},
{
"filename"
:
"tishi@2x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"2x"
},
{
"filename"
:
"tishi@3x.png"
,
"idiom"
:
"universal"
,
"scale"
:
"3x"
}
],
"info"
:
{
"author"
:
"xcode"
,
"version"
:
1
}
}
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/我的文书/my_doc_tips_icon.imageset/tishi@2x.png
0 → 100644
View file @
2a7477fb
2.52 KB
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/我的文书/my_doc_tips_icon.imageset/tishi@3x.png
0 → 100644
View file @
2a7477fb
3.84 KB
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/我的方案/scheme_head_bg.imageset/scheme_head_bg@2x.png
View replaced file @
49786bc2
View file @
2a7477fb
This diff is collapsed.
Click to expand it.
galaxy/galaxy/Res/Assets.xcassets/ServiceCenter/我的方案/scheme_head_bg.imageset/scheme_head_bg@3x.png
View replaced file @
49786bc2
View file @
2a7477fb
This diff is collapsed.
Click to expand it.
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