Commit eee4fed0 authored by David黄金龙's avatar David黄金龙

Merge branch 'develop' of http://gitlab.galaxy-immi.com/mobile-group/galaxy-iOS into develop

* 'develop' of http://gitlab.galaxy-immi.com/mobile-group/galaxy-iOS:
  // UI走查
  UI走查
  我的方案
parents 62f13d50 414a3757
......@@ -8,6 +8,12 @@
/* Begin PBXBuildFile section */
041B52872B5657B3007EBCEB /* IMAppKey.swift in Sources */ = {isa = PBXBuildFile; fileRef = 041B52862B5657B3007EBCEB /* IMAppKey.swift */; };
0425E63D2BA9345200A5E763 /* YHSchemeTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0425E63C2BA9345200A5E763 /* YHSchemeTableViewCell.swift */; };
0425E6402BA9357D00A5E763 /* YHScemeItemModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0425E63F2BA9357D00A5E763 /* YHScemeItemModel.swift */; };
0425E6422BA95B1B00A5E763 /* YHSchemeTableFooterView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0425E6412BA95B1B00A5E763 /* YHSchemeTableFooterView.swift */; };
0425E6442BA95FE100A5E763 /* YHSchemeTableHeadView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0425E6432BA95FE100A5E763 /* YHSchemeTableHeadView.swift */; };
0425E6462BA9678E00A5E763 /* YHSchemeHeadTotalScoreView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0425E6452BA9678E00A5E763 /* YHSchemeHeadTotalScoreView.swift */; };
0425E6482BA96B4100A5E763 /* YHSchemeHeadScoreItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0425E6472BA96B4100A5E763 /* YHSchemeHeadScoreItemView.swift */; };
0435FA7F2BA178C100024EAE /* YHCommonAlertView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0435FA7E2BA178C100024EAE /* YHCommonAlertView.swift */; };
0435FA812BA186D600024EAE /* YHMyFileMethodTableViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0435FA802BA186D600024EAE /* YHMyFileMethodTableViewCell.swift */; };
0435FA832BA2DEB100024EAE /* YHCardButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0435FA822BA2DEB100024EAE /* YHCardButton.swift */; };
......@@ -375,6 +381,12 @@
/* Begin PBXFileReference section */
041B52862B5657B3007EBCEB /* IMAppKey.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = IMAppKey.swift; sourceTree = "<group>"; };
0425E63C2BA9345200A5E763 /* YHSchemeTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHSchemeTableViewCell.swift; sourceTree = "<group>"; };
0425E63F2BA9357D00A5E763 /* YHScemeItemModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHScemeItemModel.swift; sourceTree = "<group>"; };
0425E6412BA95B1B00A5E763 /* YHSchemeTableFooterView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHSchemeTableFooterView.swift; sourceTree = "<group>"; };
0425E6432BA95FE100A5E763 /* YHSchemeTableHeadView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHSchemeTableHeadView.swift; sourceTree = "<group>"; };
0425E6452BA9678E00A5E763 /* YHSchemeHeadTotalScoreView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHSchemeHeadTotalScoreView.swift; sourceTree = "<group>"; };
0425E6472BA96B4100A5E763 /* YHSchemeHeadScoreItemView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHSchemeHeadScoreItemView.swift; sourceTree = "<group>"; };
0435FA7E2BA178C100024EAE /* YHCommonAlertView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCommonAlertView.swift; sourceTree = "<group>"; };
0435FA802BA186D600024EAE /* YHMyFileMethodTableViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHMyFileMethodTableViewCell.swift; sourceTree = "<group>"; };
0435FA822BA2DEB100024EAE /* YHCardButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCardButton.swift; sourceTree = "<group>"; };
......@@ -753,6 +765,26 @@
path = IM;
sourceTree = "<group>";
};
0425E63B2BA931B300A5E763 /* View */ = {
isa = PBXGroup;
children = (
0425E63C2BA9345200A5E763 /* YHSchemeTableViewCell.swift */,
0425E6412BA95B1B00A5E763 /* YHSchemeTableFooterView.swift */,
0425E6432BA95FE100A5E763 /* YHSchemeTableHeadView.swift */,
0425E6452BA9678E00A5E763 /* YHSchemeHeadTotalScoreView.swift */,
0425E6472BA96B4100A5E763 /* YHSchemeHeadScoreItemView.swift */,
);
path = View;
sourceTree = "<group>";
};
0425E63E2BA9355F00A5E763 /* Model */ = {
isa = PBXGroup;
children = (
0425E63F2BA9357D00A5E763 /* YHScemeItemModel.swift */,
);
path = Model;
sourceTree = "<group>";
};
045EED972B9F171A0022A143 /* ServiceProcess(我的信息流程) */ = {
isa = PBXGroup;
children = (
......@@ -1505,6 +1537,8 @@
A525D22A2BA836D6001A84F5 /* MyScheme(我的方案) */ = {
isa = PBXGroup;
children = (
0425E63E2BA9355F00A5E763 /* Model */,
0425E63B2BA931B300A5E763 /* View */,
A525D22B2BA8370F001A84F5 /* C */,
);
path = "MyScheme(我的方案)";
......@@ -2140,6 +2174,7 @@
buildActionMask = 2147483647;
files = (
04A671592B9F18C800C1FB91 /* YHCertificateUploadSheetView.swift in Sources */,
0425E6422BA95B1B00A5E763 /* YHSchemeTableFooterView.swift in Sources */,
045EEEBD2B9F171A0022A143 /* YHWorkExampleTypeView.swift in Sources */,
045EEEB12B9F171A0022A143 /* YHClipperView.swift in Sources */,
A514E5DC2B60A2B700C93951 /* YHServiceCenterSecondViewController.swift in Sources */,
......@@ -2298,6 +2333,7 @@
04E86E092B707ACE00A35F4B /* YHPhoneLoginViewController.swift in Sources */,
045EEED02B9F171A0022A143 /* YHScoreResultView.swift in Sources */,
A5ACE9422B4564F7002C94D2 /* AppDelegate+Extension.swift in Sources */,
0425E6442BA95FE100A5E763 /* YHSchemeTableHeadView.swift in Sources */,
045EEEBC2B9F171A0022A143 /* YHClipperButton.swift in Sources */,
045EEF102B9F171A0022A143 /* YHMainApplicantInformationViewModel.swift in Sources */,
0493B3DC2BA7EFE600AF9393 /* YHCertificateSearchViewController.swift in Sources */,
......@@ -2365,6 +2401,7 @@
045EEECB2B9F171A0022A143 /* YHScoreResultBaseModel.swift in Sources */,
04A7BD192BA441D400BD35A2 /* YHMyDocumentsUrlModel.swift in Sources */,
045EEEA62B9F171A0022A143 /* YHCompanySelectViewController.swift in Sources */,
0425E6462BA9678E00A5E763 /* YHSchemeHeadTotalScoreView.swift in Sources */,
045EEEA92B9F171A0022A143 /* YHWorkExperienceListViewController.swift in Sources */,
04A7BD132BA42F4200BD35A2 /* YHMyDocumentsDetailViewController.swift in Sources */,
04A671622BA058DE00C1FB91 /* YHCertificateEditSheetView.swift in Sources */,
......@@ -2409,6 +2446,7 @@
045EEE8B2B9F171A0022A143 /* YHPreviewMainApplicantInfoViewController.swift in Sources */,
045EEE922B9F171A0022A143 /* YHPreviewInfoNameAndSubNameItemView.swift in Sources */,
045EEEF92B9F171A0022A143 /* YHFormItemTitleCell.swift in Sources */,
0425E6482BA96B4100A5E763 /* YHSchemeHeadScoreItemView.swift in Sources */,
045EEEC32B9F171A0022A143 /* YHOtherResidenceFillView.swift in Sources */,
045EEE792B9F171A0022A143 /* YHPreviewViewModel.swift in Sources */,
0493B3DE2BA80C2300AF9393 /* YHCertificateFilterButton.swift in Sources */,
......@@ -2427,6 +2465,7 @@
A554A5122B99715000EA5973 /* YHConstantArrayData.swift in Sources */,
045EEE962B9F171A0022A143 /* YHPreviewInfoCertificatePictureItemsView.swift in Sources */,
A592FE912BA6CC010062FACA /* YHCertificateEntryHeadView.swift in Sources */,
0425E63D2BA9345200A5E763 /* YHSchemeTableViewCell.swift in Sources */,
A5ACE9302B4564F7002C94D2 /* Algorithm.swift in Sources */,
045EEED52B9F171A0022A143 /* YHEducationRequestViewModel.swift in Sources */,
045EEEB62B9F171A0022A143 /* YHWorkExperienceItemView.swift in Sources */,
......@@ -2450,6 +2489,7 @@
04D5C5662B8ED92600190021 /* YHBaseModel.swift in Sources */,
A5F8AC082B9F414000A21EFA /* YHCustomTextView.swift in Sources */,
A5ACE9272B4564F7002C94D2 /* YHLoginViewController.swift in Sources */,
0425E6402BA9357D00A5E763 /* YHScemeItemModel.swift in Sources */,
045EEECC2B9F171A0022A143 /* YHScoreResultModel.swift in Sources */,
045EEEDC2B9F171A0022A143 /* YHQualificationDetailVC.swift in Sources */,
045EEEF52B9F171A0022A143 /* YHSpouseInfoContainerVC.swift in Sources */,
......
......@@ -13,23 +13,84 @@ import UIKit
*/
class YHMineSchemeViewController: YHBaseViewController {
var tableView: UITableView!
var dataSource: [YHScemeItemModel]? = []
override func viewDidLoad() {
super.viewDidLoad()
gk_navTitle = "我的方案"
gk_navTitleColor = .white
gk_navBarAlpha = 1
gk_navBackgroundImage = UIImage(named: "my_scheme_nav")
gk_backImage = UIImage(named: "nav_icon_back")
setView()
getData()
// Do any additional setup after loading the view.
}
/*
// MARK: - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
// Get the new view controller using segue.destination.
// Pass the selected object to the new view controller.
func getData() {
let model1 = YHScemeItemModel(title: "行业定位", mainMessage: "根据您目前给来的材料,初步建议您申请的行业:其他(环境科学、HSE)", lightMessage: "其他(环境科学、HSE)", subMessage: "后续会根据您文书准备的补充情况来最终确定,如有修改会再告知您。")
let model2 = YHScemeItemModel(title: "资料清单", buttonTitle: "资料清单", mainMessage: "这是您的资料清单,请您前往查看。请您在1-2周内上传基础类证件哦,需要重新办理的可以晚些提供。需要注意的点如下:", lightMessage: "1-2周内", subMessage: "(1)港澳通如未办理,请尽快办理好反馈过来;\n(2)如为国内学校,需要尽快办理学位认证报告;\n(3)如为海外学校,需提供成绩单副本")
let model3 = YHScemeItemModel(title: "文书清单", buttonTitle: "文书写作", mainMessage: "这是您的文书清单,包括推荐信、赴港计划书,我写好后会发在微信里,与您一起沟通进行哈。3周-4周左右完成,需要咱们共同配合完成的噢", lightMessage: "3周-4周")
dataSource = [model1, model2, model3]
tableView.reloadData()
}
func updateDataSource() {
}
*/
func setView() {
view.backgroundColor = .contentBkgColor
tableView = {
let tableView = UITableView(frame:.zero, style:.plain)
if #available(iOS 11.0, *) {
tableView.contentInsetAdjustmentBehavior = .never
}
tableView.backgroundColor = .clear
tableView.separatorStyle = .none
tableView.delegate = self
tableView.dataSource = self
tableView.tableFooterView = YHSchemeTableFooterView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: 112))
let head = YHSchemeTableHeadView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: 511))
head.dataSource = YHScemeHeadModel(totalScore: "100", scoreArray: ["年龄30分","学历30分","工作经验加分15分","语言加分15分","家庭背景加分10分"], scoreLightArray: ["30","30","15","15","10"], addScore: "", name: "黄金龙")
tableView.tableHeaderView = head
tableView.register(cellWithClass: YHSchemeTableViewCell.self)
tableView.bounces = false
return tableView
}()
view.addSubview(tableView)
tableView.snp.makeConstraints { make in
make.top.equalTo(k_Height_NavigationtBarAndStatuBar)
make.left.right.bottom.equalToSuperview()
}
}
}
extension YHMineSchemeViewController: UITableViewDelegate, UITableViewDataSource {
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return dataSource?.count ?? 0
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withClass: YHSchemeTableViewCell.self)
cell.dataSource = dataSource?[indexPath.row]
return cell
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
if indexPath.row == 0 {
return 199
}
if indexPath.row == 1 {
return 251
}
if indexPath.row == 2 {
return 190
}
return 0
}
}
//
// YHScemeItemModel.swift
// galaxy
//
// Created by EDY on 2024/3/19.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
struct YHScemeItemModel {
var title: String = ""
var buttonTitle: String = ""
var mainMessage: String = ""
var lightMessage: String = ""
var subMessage: String = ""
}
struct YHScemeHeadModel {
var totalScore: String = ""
var scoreArray: [String] = []
var scoreLightArray: [String] = []
var addScore: String = ""
var name: String = ""
}
//
// YHSchemeHeadScoreItemView.swift
// galaxy
//
// Created by EDY on 2024/3/19.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHSchemeHeadScoreItemView: UIView {
var titleLabel: UILabel!
var itemImageView: UIImageView!
override init(frame: CGRect) {
super.init(frame: frame)
setUpView()
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
func setUpView() {
titleLabel = {
let label = UILabel()
label.font = UIFont.PFSC_M(ofSize: 14)
label.textColor = UIColor.mainTextColor
return label
}()
addSubview(titleLabel)
titleLabel.snp.makeConstraints { make in
make.left.equalTo(15)
make.top.bottom.equalToSuperview()
}
itemImageView = {
let view = UIImageView()
view.image = UIImage(named: "scheme_head_score_item")
return view
}()
addSubview(itemImageView)
itemImageView.snp.makeConstraints { make in
make.width.height.equalTo(3)
make.centerY.left.equalToSuperview()
}
}
func setContent(_ message: String, _ light: String) {
let newString: NSAttributedString = message.highlighted(keyWords: light, highlightColor: UIColor(hex: 0xd48638))
titleLabel.attributedText = newString
}
}
//
// YHSchemeHeadTotalScoreView.swift
// galaxy
//
// Created by EDY on 2024/3/19.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHSchemeHeadTotalScoreView: UIView {
var titleLabel: UILabel!
var scoreLabel: UILabel!
var scoreUnitLabel: UILabel!
override init(frame: CGRect) {
super.init(frame: frame)
backgroundColor = UIColor(hex: 0xcf9764).withAlphaComponent(0.12)
setUpView()
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
func setUpView() {
titleLabel = {
let label = UILabel()
label.font = UIFont.PFSC_M(ofSize: 14)
label.textColor = UIColor.mainTextColor
label.text = "总分"
return label
}()
addSubview(titleLabel)
titleLabel.snp.makeConstraints { make in
make.left.equalTo(16)
make.top.bottom.equalToSuperview()
}
scoreUnitLabel = {
let label = UILabel()
label.font = UIFont.PFSC_M(ofSize: 14)
label.textColor = UIColor.mainTextColor
label.textAlignment = .right
label.text = "分"
return label
}()
addSubview(scoreUnitLabel)
scoreUnitLabel.snp.makeConstraints { make in
make.right.equalTo(-16)
make.top.bottom.equalToSuperview()
}
scoreLabel = {
let label = UILabel()
label.font = UIFont(name: "AlibabaPuHuiTi-Bold", size: 24)
label.textColor = UIColor(hex: 0xd48638)
label.textAlignment = .right
label.text = "140"
return label
}()
addSubview(scoreLabel)
scoreLabel.snp.makeConstraints { make in
make.right.equalTo(-34)
make.top.bottom.equalToSuperview()
}
}
func setScore(_ score: String) {
scoreLabel.text = score
}
}
//
// YHSchemeTableFooterView.swift
// galaxy
//
// Created by EDY on 2024/3/19.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHSchemeTableFooterView: UIView {
var centerView: UIView!
var leftLineImageView: UIImageView!
var rightLineImageView: UIImageView!
var logoImageView: UIImageView!
override init(frame: CGRect) {
super.init(frame: frame)
backgroundColor = UIColor(hex: 0x070E33)
setUpView()
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
func setUpView() {
centerView = {
let view = UIView()
view.backgroundColor = .white
view.masksToBounds = true
view.layer.cornerRadius = kCornerRadius8
view.layer.maskedCorners = [.layerMinXMaxYCorner, .layerMaxXMaxYCorner]
return view
}()
addSubview(centerView)
centerView.snp.makeConstraints { make in
make.left.equalTo(8)
make.right.equalTo(-8)
make.top.equalToSuperview()
make.bottom.equalTo(-55)
}
logoImageView = {
let view = UIImageView()
view.image = UIImage(named: "scheme_foot_logo")
return view
}()
centerView.addSubview(logoImageView)
logoImageView.snp.makeConstraints { make in
make.centerX.equalToSuperview()
make.height.equalTo(17)
make.width.equalTo(90)
make.bottom.equalTo(-19)
}
leftLineImageView = {
let view = UIImageView()
view.image = UIImage(named: "scheme_foot_left")
return view
}()
centerView.addSubview(leftLineImageView)
leftLineImageView.snp.makeConstraints { make in
make.right.equalTo(logoImageView.snp.left).offset(-10)
make.height.equalTo(3)
make.width.equalTo(92)
make.bottom.equalTo(-21)
}
rightLineImageView = {
let view = UIImageView()
view.image = UIImage(named: "scheme_foot_right")
return view
}()
centerView.addSubview(rightLineImageView)
rightLineImageView.snp.makeConstraints { make in
make.left.equalTo(logoImageView.snp.right).offset(10)
make.height.equalTo(3)
make.width.equalTo(92)
make.bottom.equalTo(-21)
}
}
}
//
// YHSchemeTableHeadView.swift
// galaxy
//
// Created by EDY on 2024/3/19.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHSchemeTableHeadView: UIView {
var centerImageView: UIImageView!
var centerView: UIView!
var leftImageView: UIImageView!
var rightImageView: UIImageView!
var nameLabel: UILabel!
var messageLabel: UILabel!
var logoImageView: UIImageView!
var titleView: UIView!
var titleLabel: UILabel!
var titleButton: UIButton!
var scoreTotalView: YHSchemeHeadTotalScoreView!
var scoreItemView: UIView!
var dataSource: YHScemeHeadModel? {
didSet {
updateAllViews()
}
}
override init(frame: CGRect) {
super.init(frame: frame)
backgroundColor = UIColor(hex: 0x070E33)
setUpView()
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
func setUpView() {
centerImageView = {
let view = UIImageView()
view.image = UIImage(named: "scheme_head_bg")
return view
}()
addSubview(centerImageView)
centerImageView.snp.makeConstraints { make in
make.left.right.top.equalToSuperview()
make.height.equalTo(416)
}
centerView = {
let view = UIView()
view.backgroundColor = .white
return view
}()
addSubview(centerView)
centerView.snp.makeConstraints { make in
make.left.equalTo(8)
make.right.equalTo(-8)
make.top.equalTo(416)
make.bottom.equalToSuperview()
}
leftImageView = {
let view = UIImageView()
view.image = UIImage(named: "scheme_head_left")
return view
}()
addSubview(leftImageView)
leftImageView.snp.makeConstraints { make in
make.left.equalTo(35)
make.height.equalTo(80)
make.width.equalTo(65)
make.top.equalTo(27)
}
rightImageView = {
let view = UIImageView()
view.image = UIImage(named: "scheme_head_right")
return view
}()
addSubview(rightImageView)
rightImageView.snp.makeConstraints { make in
make.right.equalTo(-35)
make.height.equalTo(80)
make.width.equalTo(65)
make.top.equalTo(27)
}
nameLabel = {
let label = UILabel()
label.font = UIFont.PFSC_B(ofSize: 24)
label.textColor = UIColor(hex: 0xffffff)
label.textAlignment = .center
label.text = "尊敬的侯林先生"
return label
}()
addSubview(nameLabel)
nameLabel.snp.makeConstraints { make in
make.right.equalTo(-35)
make.height.equalTo(33.5)
make.left.equalTo(35)
make.top.equalTo(26)
}
messageLabel = {
let label = UILabel()
label.font = UIFont.PFSC_R(ofSize: 14)
label.textColor = UIColor(hex: 0xffffff)
label.textAlignment = .center
label.numberOfLines = 0
label.text = "您好,如电话沟通,这是我们为您定制的申请方案,方案详情如下:"
return label
}()
addSubview(messageLabel)
messageLabel.snp.makeConstraints { make in
make.right.equalTo(-75)
make.height.equalTo(43)
make.left.equalTo(75)
make.top.equalTo(65.5)
}
logoImageView = {
let view = UIImageView()
view.image = UIImage(named: "scheme_head_logo")
return view
}()
addSubview(logoImageView)
logoImageView.snp.makeConstraints { make in
make.centerX.equalToSuperview()
make.height.equalTo(22)
make.width.equalTo(58.5)
make.top.equalTo(147)
}
titleView = {
let view = UIView()
view.backgroundColor = UIColor(hex: 0xd48638)
return view
}()
addSubview(titleView)
titleView.snp.makeConstraints { make in
make.left.equalTo(28)
make.top.equalTo(238.5)
make.height.equalTo(16.5)
make.width.equalTo(3.5)
}
titleLabel = {
let label = UILabel()
label.font = UIFont.PFSC_M(ofSize: 17)
label.textColor = UIColor.mainTextColor
label.text = "综合评分"
return label
}()
addSubview(titleLabel)
titleLabel.snp.makeConstraints { make in
make.centerY.equalTo(titleView.snp.centerY)
make.left.equalTo(titleView.snp.right).offset(4)
make.height.equalTo(24)
make.width.equalTo(150)
}
titleButton = {
let button = UIButton(type: .custom)
button.titleLabel?.font = UIFont.PFSC_M(ofSize: 12)
button.backgroundColor = UIColor(hex: 0xd48638).withAlphaComponent(0.08)
button.contentHorizontalAlignment = .center
button.setTitle("我的评分", for: .normal)
button.setImage(UIImage(named: "scheme_button_icon"), for: .normal)
button.setTitleColor(UIColor(hex:0xd48638), for: .normal)
button.layer.cornerRadius = kCornerRadius4
button.clipsToBounds = true
// button.addTarget(self, action: #selector(goNext), for: .touchUpInside)
return button
}()
addSubview(titleButton)
titleButton.snp.makeConstraints { make in
make.centerY.equalTo(titleView.snp.centerY)
make.right.equalTo(-28)
make.height.equalTo(27)
make.width.equalTo(76)
}
titleButton.iconInRight(with: 2)
scoreTotalView = {
let view = YHSchemeHeadTotalScoreView()
view.masksToBounds = true
view.layer.cornerRadius = kCornerRadius4
return view
}()
addSubview(scoreTotalView)
scoreTotalView.snp.makeConstraints { make in
make.top.equalTo(277)
make.right.equalTo(-28)
make.left.equalTo(28)
make.height.equalTo(65)
}
scoreItemView = {
let view = UIView()
view.masksToBounds = true
view.layer.cornerRadius = kCornerRadius4
return view
}()
addSubview(scoreItemView)
scoreItemView.snp.makeConstraints { make in
make.top.equalTo(354)
make.right.equalTo(-28)
make.left.equalTo(28)
make.bottom.equalToSuperview()
}
}
func updateAllViews() {
guard let model = dataSource else { return }
nameLabel.text = "尊敬的" + model.name + "先生"
scoreTotalView.setScore(model.totalScore)
scoreItemView.removeSubviews()
for i in 0..<model.scoreArray.count {
let string = model.scoreArray[i]
let light = model.scoreLightArray[i]
let view = YHSchemeHeadScoreItemView()
view.setContent(string, light)
scoreItemView.addSubview(view)
view.snp.makeConstraints { make in
make.top.equalTo(i * 28)
make.left.right.equalToSuperview()
make.height.equalTo(21)
}
}
}
}
//
// YHSchemeTableViewCell.swift
// galaxy
//
// Created by EDY on 2024/3/19.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHSchemeTableViewCell: UITableViewCell {
typealias SchemeBlock = (_ index: Int) -> ()
var schemeBlock: SchemeBlock?
var centerView: UIView!
var lineImageView: UIImageView!
var titleView: UIView!
var titleLabel: UILabel!
var titleButton: UIButton!
var mainMessageLabel: UILabel!
var subMessageLabel: UILabel!
var dataSource: YHScemeItemModel?{
didSet {
updateAllViews()
}
}
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
}
required init?(coder: NSCoder) {
super.init(coder: coder)
}
override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
selectionStyle = .none
setupUI()
}
func setupUI() {
contentView.backgroundColor = UIColor(hex: 0x070E33)
backgroundColor = UIColor(hex: 0x070E33)
centerView = {
let view = UIView()
view.backgroundColor = .white
return view
}()
contentView.addSubview(centerView)
centerView.snp.makeConstraints { make in
make.left.equalTo(8)
make.right.equalTo(-8)
make.top.bottom.equalToSuperview()
}
lineImageView = {
let imageView = UIImageView()
imageView.image = UIImage(named: "scheme_line_image")
return imageView
}()
contentView.addSubview(lineImageView)
lineImageView.snp.makeConstraints { make in
make.left.equalTo(28)
make.top.equalTo(0)
make.height.equalTo(1)
make.right.equalTo(-28)
}
titleView = {
let view = UIView()
view.backgroundColor = UIColor(hex: 0xd48638)
return view
}()
contentView.addSubview(titleView)
titleView.snp.makeConstraints { make in
make.left.equalTo(28)
make.top.equalTo(29)
make.height.equalTo(16.5)
make.width.equalTo(3.5)
}
titleLabel = {
let label = UILabel()
label.font = UIFont.PFSC_M(ofSize: 17)
label.textColor = UIColor.mainTextColor
return label
}()
centerView.addSubview(titleLabel)
titleLabel.snp.makeConstraints { make in
make.centerY.equalTo(titleView.snp.centerY)
make.left.equalTo(titleView.snp.right).offset(4)
make.height.equalTo(24)
make.width.equalTo(150)
}
titleButton = {
let button = UIButton(type: .custom)
button.titleLabel?.font = UIFont.PFSC_M(ofSize: 12)
button.backgroundColor = UIColor(hex: 0xd48638).withAlphaComponent(0.08)
button.contentHorizontalAlignment = .center
button.setTitle("资料清单", for: .normal)
button.setImage(UIImage(named: "scheme_button_icon"), for: .normal)
button.setTitleColor(UIColor(hex:0xd48638), for: .normal)
button.layer.cornerRadius = kCornerRadius4
button.clipsToBounds = true
// button.addTarget(self, action: #selector(goNext), for: .touchUpInside)
return button
}()
centerView.addSubview(titleButton)
titleButton.snp.makeConstraints { make in
make.centerY.equalTo(titleView.snp.centerY)
make.right.equalTo(-28)
make.height.equalTo(27)
make.width.equalTo(76)
}
mainMessageLabel = {
let label = UILabel()
label.font = UIFont.PFSC_R(ofSize: 14)
label.textColor = UIColor.mainTextColor
label.numberOfLines = 0
return label
}()
centerView.addSubview(mainMessageLabel)
mainMessageLabel.snp.makeConstraints { make in
make.top.equalTo(69)
make.left.equalTo(28)
make.right.equalTo(-28)
}
subMessageLabel = {
let label = UILabel()
label.font = UIFont.PFSC_R(ofSize: 14)
label.textColor = UIColor.labelTextColor2
label.numberOfLines = 0
return label
}()
centerView.addSubview(subMessageLabel)
subMessageLabel.snp.makeConstraints { make in
make.top.equalTo(mainMessageLabel.snp.bottom).offset(12)
make.left.equalTo(28)
make.right.equalTo(-28)
}
}
func updateAllViews() {
guard let model = dataSource else { return }
if model.buttonTitle.count == 0 {
titleButton.isHidden = true
}
titleLabel.text = model.title
titleButton.setTitle(model.buttonTitle, for: .normal)
titleButton.iconInRight(with: 2)
let newString: NSAttributedString = model.mainMessage.highlighted(keyWords: model.lightMessage, highlightColor: UIColor(hex: 0xd48638))
mainMessageLabel.attributedText = newString
subMessageLabel.text = model.subMessage
}
}
......@@ -89,7 +89,7 @@ extension YHCertificateUploadVC: UITableViewDelegate, UITableViewDataSource {
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 217.0
return UITableView.automaticDimension
}
}
......@@ -67,17 +67,33 @@ class YHSheetPickerView: UIView {
view.addSubview(titleLabel)
view.addSubview(cancelBtn)
view.addSubview(confirmBtn)
view.addSubview(topLineView)
titleLabel.snp.makeConstraints { make in
make.edges.equalToSuperview()
}
cancelBtn.snp.makeConstraints { make in
make.left.top.bottom.equalToSuperview()
make.width.equalTo(60)
make.left.equalToSuperview().offset(21)
make.centerY.equalToSuperview()
make.size.equalTo(CGSizeMake(30, 20))
}
confirmBtn.snp.makeConstraints { make in
make.right.top.bottom.equalToSuperview()
make.width.equalTo(60)
make.right.equalToSuperview().offset(-21)
make.centerY.equalToSuperview()
make.size.equalTo(CGSizeMake(30, 20))
}
topLineView.snp.makeConstraints { make in
make.left.equalToSuperview().offset(21)
make.right.equalToSuperview().offset(-21)
make.bottom.equalToSuperview()
make.height.equalTo(1)
}
return view
}()
lazy var topLineView:UIView = {
let view = UIView()
view.backgroundColor = UIColor(hexString: "#F0F0F0")
return view
}()
......@@ -85,7 +101,7 @@ class YHSheetPickerView: UIView {
let label = UILabel()
label.textColor = UIColor.mainTextColor
label.textAlignment = .center
label.font = UIFont.PFSC_R(ofSize: 16)
label.font = UIFont.PFSC_M(ofSize: 17)
label.text = "请选择"
return label
}()
......@@ -93,18 +109,20 @@ class YHSheetPickerView: UIView {
lazy var cancelBtn: UIButton = {
let btn = UIButton()
btn.setTitle("取消".local, for: .normal)
btn.titleLabel?.font = UIFont.PFSC_R(ofSize: 14)
btn.titleLabel?.font = UIFont.PFSC_M(ofSize: 14)
btn.setTitleColor(UIColor.mainTextColor, for: .normal)
btn.addTarget(self, action: #selector(didClickCancelButton), for: .touchUpInside)
btn.YH_clickEdgeInsets = UIEdgeInsets(top: 20, left: 20, bottom: 20, right: 20)
return btn
}()
lazy var confirmBtn: UIButton = {
let btn = UIButton()
btn.setTitle("确定".local, for: .normal)
btn.titleLabel?.font = UIFont.PFSC_R(ofSize: 14)
btn.titleLabel?.font = UIFont.PFSC_M(ofSize: 14)
btn.setTitleColor(UIColor(hex: 0x4487F9), for: .normal)
btn.addTarget(self, action: #selector(didClickConfirmButton), for: .touchUpInside)
btn.YH_clickEdgeInsets = UIEdgeInsets(top: 20, left: 20, bottom: 20, right: 20)
return btn
}()
......@@ -129,6 +147,7 @@ class YHSheetPickerView: UIView {
pickerView.selectRow(selectRow, inComponent: 0, animated: true)
} else {
selectRow = 0
pickerView.selectRow(0, inComponent: 0, animated: true)
}
}
......@@ -296,11 +315,11 @@ class YHSheetPickerView: UIView {
whiteContentView.addSubview(pickerView)
let corner = UIRectCorner(rawValue: UIRectCorner.topLeft.rawValue | UIRectCorner.topRight.rawValue)
let path = UIBezierPath(roundedRect:bounds,byRoundingCorners: corner,cornerRadii:CGSizeMake(16.0, 16.0));
let layer = CAShapeLayer();
layer.frame = whiteContentView.bounds;
layer.path = path.cgPath;
whiteContentView.layer.mask = layer;
let path = UIBezierPath(roundedRect:bounds,byRoundingCorners: corner,cornerRadii:CGSizeMake(8.0, 8.0))
let layer = CAShapeLayer()
layer.frame = whiteContentView.bounds
layer.path = path.cgPath
whiteContentView.layer.mask = layer
if let title = title {
titleLabel.text = title
......@@ -312,9 +331,21 @@ class YHSheetPickerView: UIView {
make.edges.equalToSuperview()
}
var whiteContentHeight = 322.0
if self.type == .educationDegree
|| self.type == .marriage
|| self.type == .profession
|| self.type == .certificate
|| self.type == .identity
|| self.type == .professionCertificate
|| self.type == .degreeCategory
{
whiteContentHeight = 411.0
}
whiteContentView.snp.makeConstraints { make in
make.left.right.bottom.equalToSuperview()
make.top.equalToSuperview().offset(KScreenHeight*2/3.0)
make.height.equalTo(whiteContentHeight)
}
topView.snp.makeConstraints { make in
......@@ -477,6 +508,8 @@ extension YHSheetPickerView: UIPickerViewDelegate, UIPickerViewDataSource {
let item :YHSheetPickerViewItem = arr[row]
print(item.title)
selectRow = row
//刷新picker,看上面的代理
pickerView.reloadComponent(component)
}
}
}
......@@ -486,16 +519,19 @@ extension YHSheetPickerView: UIPickerViewDelegate, UIPickerViewDataSource {
}
func pickerView(_ pickerView: UIPickerView, rowHeightForComponent component: Int) -> CGFloat {
return 44
if self.type == .professionCertificate {
return 62.0
}
return 42.0
}
func pickerView(_ pickerView: UIPickerView, viewForRow row: Int, forComponent component: Int, reusing view: UIView?) -> UIView {
let label = UILabel()
label.textColor = UIColor.mainTextColor
label.font = UIFont.PFSC_R(ofSize: 14)
label.textAlignment = .center
label.numberOfLines = 2
label.font = UIFont.PFSC_R(ofSize: 14)
label.text = ""
if let arr = Self.dataSource[type] {
if 0 <= row && row < arr.count {
......@@ -503,6 +539,13 @@ extension YHSheetPickerView: UIPickerViewDelegate, UIPickerViewDataSource {
label.text = item.title
}
}
if selectRow == row {
label.font = UIFont.PFSC_M(ofSize: 14)
} else {
label.font = UIFont.PFSC_R(ofSize: 14)
}
// 选中背景色
if #available(iOS 14.0, *), pickerView.subviews.count > 1 {
pickerView.subviews[1].backgroundColor = UIColor(hex: 0x4487F9, alpha: 0.06)
......
......@@ -117,10 +117,10 @@ class YHIdentityCardCell: UITableViewCell {
contentView.addSubview(centerView)
centerView.snp.makeConstraints { make in
make.left.equalTo(16)
make.right.equalTo(-16)
make.top.equalTo(7)
make.bottom.equalTo(-16)
make.left.equalToSuperview().offset(16)
make.right.equalToSuperview().offset(-16)
make.top.equalToSuperview().offset(14)
make.bottom.equalToSuperview()
}
titleLabel = {
......@@ -163,7 +163,7 @@ class YHIdentityCardCell: UITableViewCell {
centerView.addSubview(lineView)
lineView.snp.makeConstraints { make in
make.left.equalTo(18)
make.top.equalTo(52)
make.top.equalTo(titleLabel.snp.bottom).offset(12)
make.height.equalTo(1)
make.right.equalTo(-18)
}
......@@ -179,7 +179,7 @@ class YHIdentityCardCell: UITableViewCell {
frontLabel.snp.makeConstraints { make in
make.left.equalTo(18)
make.right.equalTo(centerView.snp.centerX)
make.top.equalTo(64)
make.top.equalTo(lineView.snp.bottom).offset(12)
make.height.equalTo(20)
}
......@@ -194,7 +194,7 @@ class YHIdentityCardCell: UITableViewCell {
backSurfaceLabel.snp.makeConstraints { make in
make.right.equalTo(-18)
make.left.equalTo(centerView.snp.centerX)
make.top.equalTo(64)
make.top.equalTo(lineView.snp.bottom).offset(12)
make.height.equalTo(20)
}
......@@ -210,9 +210,10 @@ class YHIdentityCardCell: UITableViewCell {
centerView.addSubview(frontImageButton)
frontImageButton.snp.makeConstraints { make in
make.left.equalTo(18)
make.top.equalTo(96)
make.top.equalTo(frontLabel.snp.bottom).offset(12)
make.height.equalTo(91)
make.width.equalTo(147)
make.bottom.equalToSuperview().offset(-16)
}
frontDeleteButton = {
......@@ -242,7 +243,7 @@ class YHIdentityCardCell: UITableViewCell {
centerView.addSubview(backSurfaceImageButton)
backSurfaceImageButton.snp.makeConstraints { make in
make.right.equalTo(-18)
make.top.equalTo(96)
make.top.equalTo(frontLabel.snp.bottom).offset(12)
make.height.equalTo(91)
make.width.equalTo(147)
}
......
......@@ -185,7 +185,7 @@ extension YHCompanySelectViewController: UITableViewDelegate, UITableViewDataSou
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withClass: YHCompanyTableViewCell.self)
let newString = searchDataSource?[indexPath.row].company_name?.highlight(keyWords: searchView.text, highlightColor: UIColor.brandMainColor)
let newString = searchDataSource?[indexPath.row].company_name?.highlighted(keyWords: searchView.text, highlightColor: UIColor.brandMainColor)
cell.titleLabel.attributedText = newString
return cell
}
......
......@@ -200,7 +200,7 @@ extension String {
/// 指定关键词高亮
/// - Parameter keyWords: 关键词
/// - Parameter color: 高亮颜色
func highlight(keyWords: String?, highlightColor color: UIColor) -> NSAttributedString {
func highlighted(keyWords: String?, highlightColor color: UIColor) -> NSAttributedString {
let string: String = self
let attributeString = NSMutableAttributedString(string: string)
guard let keyWords = keyWords else { return attributeString }
......
......@@ -29,6 +29,7 @@ public func printLog<T>(_ message: T, file: String = #file, method: String = #fu
let kMargin : CGFloat = 16.0
//圆角
let kCornerRadius4 : CGFloat = 4.0
let kCornerRadius6 : CGFloat = 6.0
let kCornerRadius8 : CGFloat = 8.0
......
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "my_scheme_head@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "my_scheme_head@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"filename" : "my_scheme_nav.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "my_scheme_nav@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "my_scheme_nav@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
......
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "scheme_button_icon@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "scheme_button_icon@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "scheme_foot_left@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "scheme_foot_left@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "scheme_foot_logo@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "scheme_foot_logo@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "scheme_foot_right@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "scheme_foot_right@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "scheme_head_bg@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "scheme_head_bg@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "scheme_head_left@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "scheme_head_left@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "scheme_head_logo@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "scheme_head_logo@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "scheme_head_right@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "scheme_head_right@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "scheme_head_score_item@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "scheme_head_score_item@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "scheme_line_image@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "scheme_line_image@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment