Commit b33b8e54 authored by pete谢兆麟's avatar pete谢兆麟

Merge commit '80eb19ec' into xiezhaolin

parents 341a0b73 80eb19ec
This source diff could not be displayed because it is too large. You can view the blob instead.
...@@ -132,10 +132,10 @@ extension AppDelegate { ...@@ -132,10 +132,10 @@ extension AppDelegate {
v0.tabBarItem = ESTabBarItem.init(YHBasicContentView(),title: "首页", image: UIImage(named: "photo"), selectedImage: UIImage(named: "photo_1")) v0.tabBarItem = ESTabBarItem.init(YHBasicContentView(),title: "首页", image: UIImage(named: "photo"), selectedImage: UIImage(named: "photo_1"))
v1.tabBarItem = ESTabBarItem.init(YHBasicContentView(),title: "服务中心", image: UIImage(named: "home"), selectedImage: UIImage(named: "home_1")) v1.tabBarItem = ESTabBarItem.init(YHBasicContentView(),title: "服务中心", image: UIImage(named: "home"), selectedImage: UIImage(named: "home_1"))
v2.tabBarItem = ESTabBarItem.init(YHBasicContentView(),title: "我的", image: UIImage(named: "find"), selectedImage: UIImage(named: "find_1")) v2.tabBarItem = ESTabBarItem.init(YHBasicContentView(),title: "我的", image: UIImage(named: "find"), selectedImage: UIImage(named: "find_1"))
tabBarController.viewControllers = [v0,v1,v2] // tabBarController.viewControllers = [v0,v1,v2]
tabBarController.viewControllers = [v1,v2] //for test hjl 配合测试同学做自动化测试 Moon 2023.03.12
tabBarController.tabBar.backgroundColor = .white tabBarController.tabBar.backgroundColor = .white
window = UIWindow(frame: UIScreen.main.bounds) window = UIWindow(frame: UIScreen.main.bounds)
window?.rootViewController = tabBarController window?.rootViewController = tabBarController
window?.makeKeyAndVisible() window?.makeKeyAndVisible()
......
...@@ -308,12 +308,12 @@ extension YHHomeViewController : UITableViewDelegate,UITableViewDataSource { ...@@ -308,12 +308,12 @@ extension YHHomeViewController : UITableViewDelegate,UITableViewDataSource {
} }
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
// if section == 0 { if section == 0 {
// return 6 return 6
// } }
// return 1//for test hjl return 1//for test hjl
return 0 //for test hjl // return 0 //for test hjl
} }
...@@ -403,9 +403,9 @@ extension YHHomeViewController : UITableViewDelegate,UITableViewDataSource { ...@@ -403,9 +403,9 @@ extension YHHomeViewController : UITableViewDelegate,UITableViewDataSource {
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
tableView.deselectRow(at: indexPath, animated: true) tableView.deselectRow(at: indexPath, animated: true)
printLog("点击了 tableView Cell \(indexPath.row)") printLog("点击了 tableView Cell \(indexPath.row)")
let vc = YHNewWebViewController() // let vc = YHNewWebViewController()
vc.url = "https://cloudapi.qiyuesuo.cn/contract/share/3203196638675878889?openPageToken=1c9e8a62-eeb5-4651-9a13-adf335ae3dbe" // vc.url = "https://cloudapi.qiyuesuo.cn/contract/share/3203196638675878889?openPageToken=1c9e8a62-eeb5-4651-9a13-adf335ae3dbe"
self.navigationController?.pushViewController(vc) // self.navigationController?.pushViewController(vc)
// https://cloudapi.qiyuesuo.cn/contract/share/3202449385770287813?openPageToken=d004e5af-aab9-43e4-b813-c5a6a8c16497 // https://cloudapi.qiyuesuo.cn/contract/share/3202449385770287813?openPageToken=d004e5af-aab9-43e4-b813-c5a6a8c16497
} }
} }
......
...@@ -394,7 +394,6 @@ extension YHInformationPerfectListVC : UITableViewDelegate,UITableViewDataSource ...@@ -394,7 +394,6 @@ extension YHInformationPerfectListVC : UITableViewDelegate,UITableViewDataSource
} }
private func handleJumpLogicDebug(tapIndex : Int) { private func handleJumpLogicDebug(tapIndex : Int) {
// if self.serviceCenterMainReqVM.myInfoFillStep > 6 { // if self.serviceCenterMainReqVM.myInfoFillStep > 6 {
// goInfoListVCOp(index:tapIndex) // goInfoListVCOp(index:tapIndex)
// return // return
......
...@@ -179,6 +179,7 @@ extension YHServiceCenterMainViewController : UITableViewDelegate,UITableViewDat ...@@ -179,6 +179,7 @@ extension YHServiceCenterMainViewController : UITableViewDelegate,UITableViewDat
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
tableView.deselectRow(at: indexPath, animated: true) tableView.deselectRow(at: indexPath, animated: true)
printLog("点击了 tableView Cell \(indexPath.section)") printLog("点击了 tableView Cell \(indexPath.section)")
//获取订单号 //获取订单号
let orderId = serviceCenterMainReqVM.arrContactList[indexPath.section].id let orderId = serviceCenterMainReqVM.arrContactList[indexPath.section].id
......
...@@ -72,7 +72,7 @@ class YHCertificateInfoController: YHBaseViewController, YHFamilyMemberProtol { ...@@ -72,7 +72,7 @@ class YHCertificateInfoController: YHBaseViewController, YHFamilyMemberProtol {
items.removeAll() items.removeAll()
// 中国身份证 // 中国身份证
let isChinaCardMust = familyMember.isChinese() let isChinaCardMust = familyMember.isChinese() && familyMember.relationType != .child
let title0 = YHFormTitleItem(type: .chinaIdCardInfo) let title0 = YHFormTitleItem(type: .chinaIdCardInfo)
let item01 = YHFormDetailItem(type: .chinaIdentityCardNumber, isNeed:isChinaCardMust, value:familyMember.certificates.cnIdentityCard.number, tips: "请输入正确的中国身份证号".local) let item01 = YHFormDetailItem(type: .chinaIdentityCardNumber, isNeed:isChinaCardMust, value:familyMember.certificates.cnIdentityCard.number, tips: "请输入正确的中国身份证号".local)
...@@ -376,8 +376,9 @@ extension YHCertificateInfoController : UITableViewDelegate, UITableViewDataSour ...@@ -376,8 +376,9 @@ extension YHCertificateInfoController : UITableViewDelegate, UITableViewDataSour
func checkIntegrity() -> Bool { func checkIntegrity() -> Bool {
guard let familyMember = familyMember else { return false} guard let familyMember = familyMember else { return false}
// 国籍为中国需验证身份证
if familyMember.isChinese() { let isChinaCardMust = familyMember.isChinese() && familyMember.relationType != .child
if isChinaCardMust {
if familyMember.certificates.cnIdentityCard.number.count <= 0 if familyMember.certificates.cnIdentityCard.number.count <= 0
|| familyMember.certificates.cnIdentityCard.issueAt.count <= 0 || familyMember.certificates.cnIdentityCard.issueAt.count <= 0
|| familyMember.certificates.cnIdentityCard.issueDateStartAt.count <= 0 || familyMember.certificates.cnIdentityCard.issueDateStartAt.count <= 0
......
//
// YHUploadContentVC.swift
// galaxy
//
// Created by edy on 2024/3/12.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHUploadContentVC: YHBaseViewController {
var items:[String] = ["1", "2", "2", "2", "2", "2", "2", "2"]
lazy var tableView: UITableView = {
let tableView = UITableView(frame:.zero, style:.grouped)
if #available(iOS 11.0, *) {
tableView.contentInsetAdjustmentBehavior = .never
}
tableView.showsVerticalScrollIndicator = false
tableView.backgroundColor = .white
tableView.separatorStyle = .none
tableView.delegate = self
tableView.dataSource = self
tableView.register(UITableViewCell.self, forCellReuseIdentifier: "UITableViewCell")
tableView.register(YHCertificateInfoCell.self, forCellReuseIdentifier: YHCertificateInfoCell.cellReuseIdentifier)
let size = headView.systemLayoutSizeFitting(UIView.layoutFittingCompressedSize)
let rect = CGRect(x: 0, y: 0, width: 0, height: size.height)
headView.frame = rect
tableView.tableHeaderView = headView
return tableView
}()
lazy var headView:UIView = {
let view = UIView()
view.addSubview(templateTitleLabel)
view.addSubview(tipsLabel)
view.addSubview(templateView)
templateTitleLabel.snp.makeConstraints { make in
make.left.equalToSuperview().offset(20)
make.right.equalToSuperview().offset(-20)
make.top.equalToSuperview().offset(16)
make.height.equalTo(24.0)
}
tipsLabel.snp.makeConstraints { make in
make.left.equalToSuperview().offset(20)
make.right.equalToSuperview().offset(-20)
make.top.equalTo(templateTitleLabel.snp.bottom).offset(5)
make.height.equalTo(44)
}
templateView.snp.makeConstraints { make in
make.left.equalToSuperview().offset(20)
make.right.equalToSuperview().offset(-20)
make.top.equalTo(tipsLabel.snp.bottom).offset(15)
make.height.equalTo(62.0)
make.bottom.equalToSuperview().offset(-34)
}
return view
}()
lazy var tipsLabel: UILabel = {
let label = UILabel()
label.textColor = UIColor.labelTextColor2
label.textAlignment = .left
label.font = UIFont.PFSC_R(ofSize:12)
label.numberOfLines = 0
label.text = "注意事项:这里是上传应该注意的事项这里是上传应该注意的事项这里是上传应该注意的事项。"
return label
}()
lazy var templateTitleLabel: UILabel = {
let label = UILabel()
label.textColor = UIColor.mainTextColor
label.textAlignment = .left
label.font = UIFont.PFSC_M(ofSize:17)
label.text = "身份证示例模版"
return label
}()
lazy var templateView: YHCertificateSampleTemplateView = {
let view = YHCertificateSampleTemplateView(frame:CGRectZero)
// let tap = UITapGestureRecognizer(target:self, action:#selector(action(_:)))
// view.addGestureRecognizer(tap)
return view
}()
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = .white
self.gk_navTitle = "上传内容"
createUI()
}
func createUI() {
view.addSubview(tableView)
tableView.snp.makeConstraints { make in
make.top.equalTo(k_Height_NavigationtBarAndStatuBar)
make.left.right.equalTo(view)
make.bottom.equalToSuperview().offset(-k_Height_safeAreaInsetsBottom())
}
}
}
extension YHUploadContentVC: UITableViewDelegate, UITableViewDataSource {
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return items.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let item = items[indexPath.row]
let cell = tableView.dequeueReusableCell(withIdentifier: YHCertificateInfoCell.cellReuseIdentifier, for: indexPath)
return cell
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return 55.0
}
private func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> CGFloat {
return 24.0
}
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let view = UIView()
let label = UILabel()
label.textColor = UIColor.mainTextColor
label.textAlignment = .left
label.font = UIFont.PFSC_M(ofSize:17)
label.text = "身份证件"
view.addSubview(label)
let statusLabel = UILabel()
statusLabel.textColor = .warnColor
statusLabel.backgroundColor = .warnColor8
statusLabel.textAlignment = .center
statusLabel.font = UIFont.PFSC_M(ofSize:10)
statusLabel.text = "审核中"
view.addSubview(statusLabel)
label.snp.makeConstraints { make in
make.left.equalToSuperview().offset(20)
make.height.equalTo(24.0)
make.centerY.equalToSuperview()
}
statusLabel.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.left.equalTo(label.snp.right).offset(4)
make.height.equalTo(16)
make.width.equalTo(38)
}
return view
}
private func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> CGFloat {
return 60.0
}
func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
let view = UIView()
let label = UILabel(frame: CGRect(x: 0, y: 20, width:KScreenWidth, height:20))
label.textColor = UIColor.labelTextColor2
label.textAlignment = .center
label.font = UIFont.PFSC_R(ofSize:12)
label.text = "*最多上传5/99张图片或文件"
view.addSubview(label)
return view
}
}
//
// YHCertificateInfoCell.swift
// galaxy
//
// Created by edy on 2024/3/12.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHCertificateInfoCell: UITableViewCell {
static let cellReuseIdentifier = "YHCertificateInfoCell"
var whiteView: UIView!
var iconImgV: UIImageView!
var nameLabel: UILabel!
var timeLabel: UILabel!
var editBtn: UIButton!
required init?(coder: NSCoder) {
super.init(coder: coder)
}
override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
super.init(style: style, reuseIdentifier: reuseIdentifier)
setupUI()
}
func setupUI() {
self.selectionStyle = .none
contentView.backgroundColor = .white
whiteView = UIView()
contentView.addSubview(whiteView)
iconImgV = UIImageView(image:UIImage(named:"my_cer_type_pdf"))
whiteView.addSubview(iconImgV)
nameLabel = UILabel()
nameLabel.textColor = UIColor.mainTextColor
nameLabel.textAlignment = .left
nameLabel.font = UIFont.PFSC_M(ofSize:14)
nameLabel.text = "文档名称.doc"
whiteView.addSubview(nameLabel)
timeLabel = UILabel()
timeLabel.textColor = UIColor.labelTextColor2
timeLabel.textAlignment = .left
timeLabel.font = UIFont.PFSC_R(ofSize:11)
timeLabel.text = "上传于2024.01.01"
whiteView.addSubview(timeLabel)
editBtn = UIButton()
editBtn.setImage(UIImage(named:"my_cer_btn_edit"), for:.normal)
whiteView.addSubview(editBtn)
whiteView.snp.makeConstraints { make in
make.left.equalToSuperview().offset(20)
make.right.equalToSuperview().offset(-20)
make.height.equalTo(55)
make.top.equalToSuperview().offset(15)
}
iconImgV.snp.makeConstraints { make in
make.width.height.equalTo(31)
make.centerY.equalToSuperview()
make.left.equalToSuperview().offset(6)
}
nameLabel.snp.makeConstraints { make in
make.left.equalTo(iconImgV.snp.right).offset(18)
make.height.equalTo(20)
make.bottom.equalTo(whiteView.snp.centerY).offset(-1)
make.right.equalTo(editBtn.snp.left)
}
timeLabel.snp.makeConstraints { make in
make.left.right.equalTo(nameLabel)
make.top.equalTo(whiteView.snp.centerY).offset(1)
make.height.equalTo(20)
}
editBtn.snp.makeConstraints { make in
make.width.height.equalTo(16)
make.centerY.equalToSuperview()
make.right.equalToSuperview().offset(-6)
}
}
}
...@@ -159,12 +159,28 @@ extension YHOtherInfoFillViewController { ...@@ -159,12 +159,28 @@ extension YHOtherInfoFillViewController {
if model.language_detail?.levelDes.isEmpty == true { if model.language_detail?.levelDes.isEmpty == true {
returnValue = false returnValue = false
return returnValue return returnValue
} else {
if let language = model.language_detail,language.level == 4 {
if language.name.isEmpty || language.remark.isEmpty {
returnValue = false
return returnValue
}
}
} }
//3.专业技能行业 //3.专业技能行业
if model.profession?.optionDes.isEmpty == true { if model.profession?.optionDes.isEmpty == true {
returnValue = false returnValue = false
return returnValue return returnValue
} else {
if let language = model.profession,language.option == 15 {
if language.remark.isEmpty {
returnValue = false
return returnValue
}
}
} }
//4.辅助资料 //4.辅助资料
......
//
// YHCustomTextView.swift
// galaxy
//
// Created by davidhuangA on 2024/3/11.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHCustomTextView: UIView, UITextViewDelegate {
override init(frame: CGRect) {
super.init(frame: frame)
setupUI()
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
typealias Block = (String) -> ()
var block: Block?
lazy var tipsLabel: UILabel = {
let label = UILabel()
label.textColor = .placeHolderColor
label.textAlignment = .left
label.numberOfLines = 0
label.font = UIFont.PFSC_R(ofSize: 14)
label.lineBreakMode = .byCharWrapping
label.text = "请输入中文之外的语种"
return label
}()
lazy var noTextTipsLable: UILabel = {
let label = UILabel()
label.textColor = .failColor
label.font = UIFont.PFSC_R(ofSize: 12)
label.text = "无数据时候的提示"
return label
}()
private lazy var bottomLine : UIView = {
let view = UIView()
view.backgroundColor = .clear//UIColor(hex: 0xF0F0F0)
return view
}()
private lazy var additionHoldView : UIView = {
let view = UIView()
view.backgroundColor = UIColor.contentBkgColor
view.layer.cornerRadius = kCornerRadius6
view.clipsToBounds = true
return view
}()
var myTextView : UITextView!
var needCheckFlag : Bool = false {
didSet {
layoutMyUI()
}
}
override func layoutSubviews() {
super.layoutSubviews()
layoutMyUI()
}
}
private extension YHCustomTextView {
func setupUI() {
backgroundColor = .clear
addSubview(additionHoldView)
additionHoldView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.left.right.equalToSuperview()
make.height.equalTo(44)
}
let textView : UITextView = UITextView()
textView.backgroundColor = .clear
textView.font = UIFont.PFSC_R(ofSize: 14)
additionHoldView.addSubview(textView)
textView.snp.makeConstraints { make in
make.edges.equalTo(0)
}
myTextView = textView
myTextView.delegate = self
myTextView.contentInset = UIEdgeInsets(top: 12, left: 12, bottom: 12, right: 12)
additionHoldView.addSubview(tipsLabel)
tipsLabel.snp.makeConstraints { make in
make.top.equalTo(14)
make.left.equalTo(16)
make.right.equalTo(-12)
}
addSubview(noTextTipsLable)
noTextTipsLable.snp.makeConstraints { make in
make.top.equalTo(additionHoldView.snp.bottom).offset(6)
make.left.right.equalToSuperview()
make.height.equalTo(20)
}
noTextTipsLable.isHidden = true
addSubview(bottomLine)
bottomLine.snp.makeConstraints { make in
make.left.right.equalToSuperview()
make.height.equalTo(0.5)
make.top.equalTo(noTextTipsLable.snp.bottom).offset(12)
make.bottom.equalToSuperview()
}
}
private func layoutMyUI() {
noTextTipsLable.snp.removeConstraints()
bottomLine.snp.removeConstraints()
if myTextView.text.isEmpty {
tipsLabel.isHidden = false
} else {
tipsLabel.isHidden = true
}
if needCheckFlag == true,myTextView.text.isEmpty {
noTextTipsLable.isHidden = false
noTextTipsLable.snp.remakeConstraints { make in
make.top.equalTo(additionHoldView.snp.bottom).offset(6)
make.left.right.equalToSuperview()
make.height.equalTo(20)
}
bottomLine.snp.remakeConstraints { make in
make.left.right.equalToSuperview()
make.height.equalTo(0.5)
make.top.equalTo(noTextTipsLable.snp.bottom).offset(12)
make.bottom.equalToSuperview()
}
} else {
noTextTipsLable.isHidden = true
bottomLine.snp.remakeConstraints { make in
make.left.right.equalToSuperview()
make.height.equalTo(0.5)
make.top.equalTo(additionHoldView.snp.bottom).offset(12)
make.bottom.equalToSuperview()
}
}
}
}
extension YHCustomTextView : UITextFieldDelegate {
internal func textViewDidChange(_ textView: UITextView) {
if textView.text == "" {
tipsLabel.isHidden = false
} else {
tipsLabel.isHidden = true
}
self.block?(textView.text)
}
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
if !text.isEmpty {
if textView.text.count > 999 {
return false
}
}
return true
}
}
extension YHCustomTextView {
func updateUI(title : String,value : String, type : YHOtherTextViewItemType = .unknowAwards) {
myTextView.text = value
if value.count > 0 {
tipsLabel.isHidden = true
} else {
tipsLabel.isHidden = false
}
layoutMyUI()
}
}
...@@ -175,8 +175,6 @@ extension YHOtherInfoFillCell { ...@@ -175,8 +175,6 @@ extension YHOtherInfoFillCell {
lastTargetView = residenceView lastTargetView = residenceView
} }
//添加按钮 //添加按钮
holdView1.addSubview(addBtn) holdView1.addSubview(addBtn)
addBtn.layer.addSublayer(dotLineLayer) addBtn.layer.addSublayer(dotLineLayer)
...@@ -216,9 +214,15 @@ extension YHOtherInfoFillCell { ...@@ -216,9 +214,15 @@ extension YHOtherInfoFillCell {
let view = languageView let view = languageView
view.updateKeyName(name: "您的语言水平与下列哪一项符合", keyValue:dataModel.language_detail?.levelDes ?? "") view.updateKeyName(name: "您的语言水平与下列哪一项符合", keyValue:dataModel.language_detail?.levelDes ?? "",firstTxt: dataModel.language_detail?.name ?? "",secondTxt: dataModel.language_detail?.remark ?? "")
view.needCheckFlag = dataModel.needCheckFlag view.needCheckFlag = dataModel.needCheckFlag
view.type = 2 view.type = 2
view.textBlock = {firstTxt,secondTxt in
self.dataModel?.language_detail?.name = firstTxt
self.dataModel?.language_detail?.remark = secondTxt
}
holdView2.addSubview(view) holdView2.addSubview(view)
view.snp.makeConstraints { make in view.snp.makeConstraints { make in
make.top.equalTo(sessionView.snp.bottom) make.top.equalTo(sessionView.snp.bottom)
...@@ -256,9 +260,13 @@ extension YHOtherInfoFillCell { ...@@ -256,9 +260,13 @@ extension YHOtherInfoFillCell {
let view = skillView let view = skillView
view.updateKeyName(name: "最能代表你的专业技能的行业", keyValue: dataModel.profession?.optionDes ?? "") view.updateKeyName(name: "最能代表你的专业技能的行业", keyValue: dataModel.profession?.optionDes ?? "",firstTxt: dataModel.profession?.remark ?? "")
view.needCheckFlag = dataModel.needCheckFlag view.needCheckFlag = dataModel.needCheckFlag
view.type = 2 view.type = 2
view.textBlock = { firstTxt,secondTxt in
self.dataModel?.profession?.remark = firstTxt
}
holdView3.addSubview(view) holdView3.addSubview(view)
view.snp.makeConstraints { make in view.snp.makeConstraints { make in
make.top.equalTo(sessionView.snp.bottom) make.top.equalTo(sessionView.snp.bottom)
...@@ -415,6 +423,8 @@ extension YHOtherInfoFillCell { ...@@ -415,6 +423,8 @@ extension YHOtherInfoFillCell {
self.dataModel?.language_detail?.level = Int(item.index) ?? 0 self.dataModel?.language_detail?.level = Int(item.index) ?? 0
self.dataModel?.language_detail?.levelDes = item.title self.dataModel?.language_detail?.levelDes = item.title
self.languageView.updateKeyName(name: "您的语言水平与下列哪一项符合", keyValue:self.dataModel?.language_detail?.levelDes ?? "") self.languageView.updateKeyName(name: "您的语言水平与下列哪一项符合", keyValue:self.dataModel?.language_detail?.levelDes ?? "")
self.block?()
} }
} }
...@@ -424,6 +434,8 @@ extension YHOtherInfoFillCell { ...@@ -424,6 +434,8 @@ extension YHOtherInfoFillCell {
self.dataModel?.profession?.option = Int(item.index) ?? 0 self.dataModel?.profession?.option = Int(item.index) ?? 0
self.dataModel?.profession?.optionDes = item.title self.dataModel?.profession?.optionDes = item.title
self.skillView.updateKeyName(name: "最能代表你的专业技能的行业", keyValue:self.dataModel?.profession?.optionDes ?? "") self.skillView.updateKeyName(name: "最能代表你的专业技能的行业", keyValue:self.dataModel?.profession?.optionDes ?? "")
self.block?()
} }
} }
} }
...@@ -40,6 +40,11 @@ class YHOtherSelecteItemView: UIView { ...@@ -40,6 +40,11 @@ class YHOtherSelecteItemView: UIView {
var block: ItemBlock? var block: ItemBlock?
typealias TextViewBlock = (_ firstTxt: String, _ secondTxt: String) -> ()
var textBlock: TextViewBlock?
lazy var longTimeButton = { lazy var longTimeButton = {
let button = UIButton(type: .custom) let button = UIButton(type: .custom)
button.setImage(UIImage(named: "main_time_normal"), for: .normal) button.setImage(UIImage(named: "main_time_normal"), for: .normal)
...@@ -119,9 +124,10 @@ class YHOtherSelecteItemView: UIView { ...@@ -119,9 +124,10 @@ class YHOtherSelecteItemView: UIView {
return view return view
}() }()
let firstTextView : YHCustomTextView = YHCustomTextView()
let secondTextView : YHCustomTextView = YHCustomTextView()
private let rightIcon = UIImageView() private let rightIcon = UIImageView()
override func layoutSubviews() { override func layoutSubviews() {
super.layoutSubviews() super.layoutSubviews()
...@@ -164,6 +170,17 @@ extension YHOtherSelecteItemView { ...@@ -164,6 +170,17 @@ extension YHOtherSelecteItemView {
make.height.equalTo(32) make.height.equalTo(32)
make.width.equalTo(43) make.width.equalTo(43)
} }
addSubview(firstTextView)
addSubview(secondTextView)
firstTextView.block = { text in
self.textBlock?(self.firstTextView.myTextView.text,self.secondTextView.myTextView.text)
}
secondTextView.block = { text in
self.textBlock?(self.firstTextView.myTextView.text,self.secondTextView.myTextView.text)
}
} }
@objc func longTimeButtonClick() { @objc func longTimeButtonClick() {
...@@ -179,7 +196,7 @@ extension YHOtherSelecteItemView { ...@@ -179,7 +196,7 @@ extension YHOtherSelecteItemView {
} }
extension YHOtherSelecteItemView { extension YHOtherSelecteItemView {
func updateKeyName(name : String, keyValue : String) { func updateKeyName(name : String, keyValue : String,firstTxt:String = "",secondTxt: String = "") {
if type == 1 { if type == 1 {
noTextTipsLable.text = "请选择" + name noTextTipsLable.text = "请选择" + name
...@@ -189,21 +206,22 @@ extension YHOtherSelecteItemView { ...@@ -189,21 +206,22 @@ extension YHOtherSelecteItemView {
title = name title = name
textField.text = keyValue textField.text = keyValue
firstTextView.myTextView.text = firstTxt
secondTextView.myTextView.text = secondTxt
secondTextView.layoutIfNeeded()
layoutMyUI() layoutMyUI()
} }
func layoutMyUI() { func layoutMyUI() {
titleLabel.snp.removeConstraints() titleLabel.snp.removeConstraints()
subHoldView.snp.removeConstraints() subHoldView.snp.removeConstraints()
bottomLine.snp.removeConstraints() bottomLine.snp.removeConstraints()
noTextTipsLable.snp.removeConstraints() noTextTipsLable.snp.removeConstraints()
if type == 1 { if type == 1 {
if needCheckFlag == true { if needCheckFlag == true {
titleLabel.snp.remakeConstraints { make in titleLabel.snp.remakeConstraints { make in
make.top.equalToSuperview().offset(kMargin) make.top.equalToSuperview().offset(kMargin)
...@@ -346,6 +364,12 @@ extension YHOtherSelecteItemView { ...@@ -346,6 +364,12 @@ extension YHOtherSelecteItemView {
make.left.equalToSuperview() make.left.equalToSuperview()
} }
firstTextView.isHidden = true
secondTextView.isHidden = true
firstTextView.snp.removeConstraints()
secondTextView.snp.removeConstraints()
bottomLine.snp.removeConstraints()
if textField.isEmpty == true { if textField.isEmpty == true {
noTextTipsLable.isHidden = false noTextTipsLable.isHidden = false
noTextTipsLable.snp.remakeConstraints { make in noTextTipsLable.snp.remakeConstraints { make in
...@@ -364,10 +388,50 @@ extension YHOtherSelecteItemView { ...@@ -364,10 +388,50 @@ extension YHOtherSelecteItemView {
} }
else { else {
noTextTipsLable.isHidden = true noTextTipsLable.isHidden = true
var lastView : UIView = subHoldView
if let text = textField.text,text.contains("其他") {
firstTextView.noTextTipsLable.text = "请输入其他专业技能的行业"
firstTextView.tipsLabel.text = "请输入其他专业技能的行业"
firstTextView.isHidden = false
firstTextView.snp.remakeConstraints { make in
make.top.equalTo(lastView.snp.bottom).offset(kMargin)
make.left.right.equalToSuperview()
}
firstTextView.needCheckFlag = needCheckFlag
lastView = firstTextView
} else if let text = textField.text,text.contains("中文及另一种外语") {
firstTextView.isHidden = false
secondTextView.isHidden = false
firstTextView.noTextTipsLable.text = "请输入中文之外的语种"
firstTextView.tipsLabel.text = "请输入中文之外的语种"
firstTextView.snp.remakeConstraints { make in
make.top.equalTo(lastView.snp.bottom).offset(kMargin)
make.left.right.equalToSuperview()
}
secondTextView.noTextTipsLable.text = "请输入2年内获取的证书及分数"
secondTextView.tipsLabel.text = "请输入2年内获取的证书及分数"
secondTextView.snp.remakeConstraints { make in
make.top.equalTo(firstTextView.snp.bottom).offset(kMargin)
make.left.right.equalToSuperview()
}
firstTextView.needCheckFlag = needCheckFlag
secondTextView.needCheckFlag = needCheckFlag
lastView = secondTextView
} else {
}
bottomLine.snp.removeConstraints()
bottomLine.snp.remakeConstraints { make in bottomLine.snp.remakeConstraints { make in
make.top.equalTo(subHoldView.snp.bottom).offset(kMargin) make.top.equalTo(lastView.snp.bottom).offset(kMargin)
make.bottom.left.right.equalToSuperview() make.left.right.equalToSuperview()
make.height.equalTo(0.5) make.height.equalTo(0.5)
make.bottom.equalToSuperview()
} }
} }
} else { } else {
...@@ -386,10 +450,56 @@ extension YHOtherSelecteItemView { ...@@ -386,10 +450,56 @@ extension YHOtherSelecteItemView {
make.left.equalToSuperview() make.left.equalToSuperview()
} }
firstTextView.snp.removeConstraints()
secondTextView.snp.removeConstraints()
firstTextView.isHidden = true
secondTextView.isHidden = true
var lastView : UIView = subHoldView
if let text = textField.text,text.contains("其他") {
firstTextView.noTextTipsLable.text = "请输入其他专业技能的行业"
firstTextView.tipsLabel.text = "请输入其他专业技能的行业"
firstTextView.isHidden = false
firstTextView.snp.remakeConstraints { make in
make.top.equalTo(lastView.snp.bottom).offset(kMargin)
make.left.right.equalToSuperview()
}
firstTextView.needCheckFlag = needCheckFlag
lastView = firstTextView
} else if let text = textField.text,text.contains("中文及另一种外语") {
firstTextView.isHidden = false
secondTextView.isHidden = false
firstTextView.noTextTipsLable.text = "请输入中文之外的语种"
firstTextView.tipsLabel.text = "请输入中文之外的语种"
firstTextView.snp.remakeConstraints { make in
make.top.equalTo(lastView.snp.bottom).offset(kMargin)
make.left.right.equalToSuperview()
}
secondTextView.noTextTipsLable.text = "请输入2年内获取的证书及分数"
secondTextView.tipsLabel.text = "请输入2年内获取的证书及分数"
secondTextView.snp.remakeConstraints { make in
make.top.equalTo(firstTextView.snp.bottom).offset(kMargin)
make.left.right.equalToSuperview()
}
firstTextView.needCheckFlag = needCheckFlag
secondTextView.needCheckFlag = needCheckFlag
lastView = secondTextView
} else {
}
bottomLine.snp.removeConstraints()
bottomLine.snp.remakeConstraints { make in bottomLine.snp.remakeConstraints { make in
make.top.equalTo(subHoldView.snp.bottom).offset(kMargin) make.top.equalTo(lastView.snp.bottom).offset(kMargin)
make.bottom.left.right.equalToSuperview() make.left.right.equalToSuperview()
make.height.equalTo(0.5) make.height.equalTo(0.5)
make.bottom.equalToSuperview()
} }
} }
} else { } else {
......
...@@ -40,27 +40,6 @@ class YHPreviewBaseViewController: YHBaseViewController { ...@@ -40,27 +40,6 @@ class YHPreviewBaseViewController: YHBaseViewController {
} }
} }
// MARK: - 滑动使用
extension YHPreviewBaseViewController: UIScrollViewDelegate {
//控制滑动交互
func scrollViewDidScroll(_ scrollView: UIScrollView) {
let scrollViewSet: CGFloat = scrollView.contentOffset.y
if vcCanScroll == false {//不能滚动时
scrollView.contentOffset = CGPoint(x: 0, y: 0)
} else {
if (scrollViewSet <= 0) {
scrollView.contentOffset = CGPoint(x: 0, y: 0)
vcCanScroll = false
NotificationCenter.default.post(name: Notification.Name(rawValue: "leaveTop0"), object: nil)
} else {
scrollView.contentOffset = CGPoint(x: 0, y: scrollViewSet)
}
}
}
}
// MARK: - JXSegmentedListContainerViewListDelegate // MARK: - JXSegmentedListContainerViewListDelegate
extension YHPreviewBaseViewController: JXSegmentedListContainerViewListDelegate { extension YHPreviewBaseViewController: JXSegmentedListContainerViewListDelegate {
func listView() -> UIView { func listView() -> UIView {
...@@ -102,3 +81,23 @@ extension YHPreviewBaseViewController : UITableViewDelegate,UITableViewDataSourc ...@@ -102,3 +81,23 @@ extension YHPreviewBaseViewController : UITableViewDelegate,UITableViewDataSourc
} }
} }
// MARK: - 滑动使用
extension YHPreviewBaseViewController: UIScrollViewDelegate {
//控制滑动交互
func scrollViewDidScroll(_ scrollView: UIScrollView) {
let scrollViewSet: CGFloat = scrollView.contentOffset.y
if vcCanScroll == false {//不能滚动时
scrollView.contentOffset = CGPoint(x: 0, y: 0)
} else {
if (scrollViewSet <= 0) {
scrollView.contentOffset = CGPoint(x: 0, y: 0)
vcCanScroll = false
NotificationCenter.default.post(name: Notification.Name(rawValue: "leaveTop0"), object: nil)
} else {
scrollView.contentOffset = CGPoint(x: 0, y: scrollViewSet)
}
}
}
}
...@@ -116,8 +116,9 @@ private extension YHPreviewFamilyMemberViewController { ...@@ -116,8 +116,9 @@ private extension YHPreviewFamilyMemberViewController {
//延迟刷新 //延迟刷新
DispatchQueue.main.asyncAfter(deadline: .now() + 0.25) { DispatchQueue.main.asyncAfter(deadline: .now() + 0.5) {
self.clickButton(sender: self.parentButton) self.clickButton(sender: self.parentButton)
self.homeTableView.reloadData()
} }
} }
......
...@@ -104,21 +104,6 @@ class YHPreviewMainViewController: YHBaseViewController { ...@@ -104,21 +104,6 @@ class YHPreviewMainViewController: YHBaseViewController {
// MARK: - 私有方法 // MARK: - 私有方法
extension YHPreviewMainViewController { extension YHPreviewMainViewController {
@objc func leaveTopOp() {
canScroll = true
}
@objc func beginDragging() {
homeTableView.isScrollEnabled = false
canScroll = false
}
@objc func endDragging() {
homeTableView.isScrollEnabled = true
canScroll = true
}
func loadData() { func loadData() {
if let orderID = UserDefaults.standard.value(forKey: "orderIdForPreview") { if let orderID = UserDefaults.standard.value(forKey: "orderIdForPreview") {
previewVM.getPreviewForMainApplicationInfo(params: ["order_id" : orderID]) { success, error in previewVM.getPreviewForMainApplicationInfo(params: ["order_id" : orderID]) { success, error in
...@@ -279,10 +264,14 @@ extension YHPreviewMainViewController: UIScrollViewDelegate { ...@@ -279,10 +264,14 @@ extension YHPreviewMainViewController: UIScrollViewDelegate {
if (scrollView.contentOffset.y >= bottomCellOffset) { if (scrollView.contentOffset.y >= bottomCellOffset) {
scrollView.contentOffset = CGPointMake(0, bottomCellOffset) scrollView.contentOffset = CGPointMake(0, bottomCellOffset)
if canScroll == true { if canScroll == true {
canScroll = false // canScroll = false
//传递参数到 子VC // //传递参数到 子VC
cellView.canScroll = true // cellView.canScroll = true
} }
canScroll = false
//传递参数到 子VC
cellView.canScroll = true
}else{ }else{
if canScroll == false { if canScroll == false {
scrollView.contentOffset = CGPoint(x: 0, y: bottomCellOffset) scrollView.contentOffset = CGPoint(x: 0, y: bottomCellOffset)
...@@ -291,3 +280,19 @@ extension YHPreviewMainViewController: UIScrollViewDelegate { ...@@ -291,3 +280,19 @@ extension YHPreviewMainViewController: UIScrollViewDelegate {
self.homeTableView.showsVerticalScrollIndicator = false self.homeTableView.showsVerticalScrollIndicator = false
} }
} }
extension YHPreviewMainViewController {
@objc func leaveTopOp() {
canScroll = true
}
@objc func beginDragging() {
homeTableView.isScrollEnabled = false
canScroll = false
}
@objc func endDragging() {
homeTableView.isScrollEnabled = true
canScroll = true
}
}
...@@ -48,6 +48,9 @@ extension UIColor { ...@@ -48,6 +48,9 @@ extension UIColor {
//警告 color //警告 color
static let warnColor : UIColor = UIColor(hexString: "#FF9900")! static let warnColor : UIColor = UIColor(hexString: "#FF9900")!
//警告 背景色 color
static let warnColor8 : UIColor = UIColor(hexString: "#FF9900",transparency: 0.08)!
//提示 color //提示 color
static let tipsColor : UIColor = UIColor(hexString: "#2F7EF6")! static let tipsColor : UIColor = UIColor(hexString: "#2F7EF6")!
......
...@@ -313,14 +313,7 @@ class YHConstantArrayData { ...@@ -313,14 +313,7 @@ class YHConstantArrayData {
"id": "10" "id": "10"
] ]
] ]
// static func getIdTypeBy(index : Int) -> String {
// for item in YHConstantArrayData.arrIdType {
// if let target = item["id"],index == Int(target) {
// return item["title"] ?? "未知"
// }
// }
// return "未知"
// }
static let arrSex : [[String : String]] = [ static let arrSex : [[String : String]] = [
["title": "男", ["title": "男",
"id": "1" "id": "1"
......
...@@ -95,14 +95,13 @@ class YHNetRequest: NSObject { ...@@ -95,14 +95,13 @@ class YHNetRequest: NSObject {
requestHeader.add(name:"sign",value:sign) requestHeader.add(name:"sign",value:sign)
requestHeader.add(name: "token", value: YHLoginManager.shared.userModel?.token ?? "-") requestHeader.add(name: "token", value: YHLoginManager.shared.userModel?.token ?? "-")
// testToken(&requestHeader) //for test hjl 使用测试token
headers = requestHeader headers = requestHeader
} }
private func testToken(_ requestHeader:inout HTTPHeaders) { // private func testToken(_ requestHeader:inout HTTPHeaders) {
//金龙的账号 // //金龙的账号
requestHeader.add(name: "token", value: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MTE2MDcwNjQsImkiOjE0NDg0MTczMjc0MjE2LCJ1Ijoi6ZO25rKz6ZuG5ZuiIiwiciI6InN1cGVyX2FwcCJ9.KwTWdaLy5UG4LLs6i-D9ne0RflRTT5v4zvu-66yihDE") // requestHeader.add(name: "token", value: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE3MTE2MDcwNjQsImkiOjE0NDg0MTczMjc0MjE2LCJ1Ijoi6ZO25rKz6ZuG5ZuiIiwiciI6InN1cGVyX2FwcCJ9.KwTWdaLy5UG4LLs6i-D9ne0RflRTT5v4zvu-66yihDE")
} // }
///  链式语法 ///  链式语法
func url(_ url:String?) -> Self{ func url(_ url:String?) -> Self{
......
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "icon-更多@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "icon-更多@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Group 2848@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Group 2848@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Frame@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Frame@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Group 2190@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Group 2190@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Mask group@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Mask group@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Group 2191@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Group 2191@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Group 2192@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Group 2192@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "Group 2189@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "Group 2189@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