Commit ea95ed39 authored by Steven杜宇's avatar Steven杜宇

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

parents 92a17536 a98e006a
...@@ -102,11 +102,6 @@ class YHHKVisaRenewalPaymentVC: YHBaseViewController { ...@@ -102,11 +102,6 @@ class YHHKVisaRenewalPaymentVC: YHBaseViewController {
private let orderId: Int private let orderId: Int
private let renewalId: Int private let renewalId: Int
init(orderId: Int, renewalId: Int) { init(orderId: Int, renewalId: Int) {
// self.orderId = 136927
// self.renewalId = 343
// self.orderId = 151296
// self.renewalId = 439
self.orderId = orderId self.orderId = orderId
self.renewalId = renewalId self.renewalId = renewalId
super.init(nibName: nil, bundle: nil) super.init(nibName: nil, bundle: nil)
...@@ -225,7 +220,7 @@ extension YHHKVisaRenewalPaymentVC { ...@@ -225,7 +220,7 @@ extension YHHKVisaRenewalPaymentVC {
guard let self = self else { guard let self = self else {
return return
} }
if let presenceStatus = YHVisaRenewalPresenceStatus(rawValue: person.confirm_hk_status) { guard let presenceStatus = YHVisaRenewalPresenceStatus(rawValue: person.confirm_hk_status) else { return }
let member = YHVisaRenewalItemDetailType.residenceAction(person.name, presenceStatus, .mid) { [weak self] in let member = YHVisaRenewalItemDetailType.residenceAction(person.name, presenceStatus, .mid) { [weak self] in
guard let self = self else { guard let self = self else {
return return
...@@ -259,13 +254,23 @@ extension YHHKVisaRenewalPaymentVC { ...@@ -259,13 +254,23 @@ extension YHHKVisaRenewalPaymentVC {
} }
} }
actionMembers.append(member) actionMembers.append(member)
}
if let paymentStatus = YHVisaRenewalPaymentStatus(rawValue: person.pay_status) { guard let paymentStatus = YHVisaRenewalPaymentStatus(rawValue: person.pay_status) else {
return
}
switch paymentStatus { switch paymentStatus {
case .pendingPayment: case .pendingPayment:
paymentMembers.append(.occupyingSpace) paymentMembers.append(.occupyingSpace)
paymentMembers.append(.subHeader(person.name, .pendingPayment)) paymentMembers.append(.subHeader(person.name, .pendingPayment))
switch presenceStatus {
case .approvalPending:
paymentMembers.append(.subRemark("续签申请暂未正式获批,请耐心等待"))
case .confirmingPresence:
paymentMembers.append(.subInfo("档案号:", "-", nil))
paymentMembers.append(.subInfo("可缴费时间段:", "\(person.min_pay_time) - \(person.max_pay_time)", nil))
paymentMembers.append(.subInfo("缴费金额:", "\(person.fee_hkd)港币(≈\(person.fee_rmb)人民币)", nil))
paymentMembers.append(.subRemark("请先确认用户完成确认在港"))
case .confirmedPresence:
paymentMembers.append(.subInfo("档案号:", person.file_num, "复制", .mid, nil, false, { [weak self] in paymentMembers.append(.subInfo("档案号:", person.file_num, "复制", .mid, nil, false, { [weak self] in
guard let self = self else { guard let self = self else {
return return
...@@ -275,7 +280,12 @@ extension YHHKVisaRenewalPaymentVC { ...@@ -275,7 +280,12 @@ extension YHHKVisaRenewalPaymentVC {
paymentMembers.append(.subInfo("可缴费时间段:", "\(person.min_pay_time) - \(person.max_pay_time)", nil)) paymentMembers.append(.subInfo("可缴费时间段:", "\(person.min_pay_time) - \(person.max_pay_time)", nil))
paymentMembers.append(.subInfo("缴费金额:", "\(person.fee_hkd)港币(≈\(person.fee_rmb)人民币)", nil)) paymentMembers.append(.subInfo("缴费金额:", "\(person.fee_hkd)港币(≈\(person.fee_rmb)人民币)", nil))
paymentMembers.append(.subRemark("请复制档案号去港府官网缴费")) paymentMembers.append(.subRemark("请复制档案号去港府官网缴费"))
}
case .paid: case .paid:
var fileName = person.receipt
if fileName.count > 0, let url = URL(string: fileName) {
fileName = url.lastPathComponent
}
paymentMembers.append(.occupyingSpace) paymentMembers.append(.occupyingSpace)
paymentMembers.append(.subHeader(person.name, .paid)) paymentMembers.append(.subHeader(person.name, .paid))
paymentMembers.append(.subInfo("档案号:", person.file_num, "复制", .mid, 12, true, { [weak self] in paymentMembers.append(.subInfo("档案号:", person.file_num, "复制", .mid, 12, true, { [weak self] in
...@@ -284,10 +294,7 @@ extension YHHKVisaRenewalPaymentVC { ...@@ -284,10 +294,7 @@ extension YHHKVisaRenewalPaymentVC {
} }
self.copyToPasteBoard(person.file_num, message: "已复制档案号") self.copyToPasteBoard(person.file_num, message: "已复制档案号")
})) }))
var fileName = person.receipt
if let url = URL(string: fileName) {
fileName = url.lastPathComponent
}
paymentMembers.append(.subContent("缴费电子签证:", fileName, "查看", .mid, { [weak self] in paymentMembers.append(.subContent("缴费电子签证:", fileName, "查看", .mid, { [weak self] in
guard let self = self else { guard let self = self else {
return return
...@@ -301,6 +308,7 @@ extension YHHKVisaRenewalPaymentVC { ...@@ -301,6 +308,7 @@ extension YHHKVisaRenewalPaymentVC {
self.copyToPasteBoard(person.receipt, message: "已复制电子签证链接") self.copyToPasteBoard(person.receipt, message: "已复制电子签证链接")
})) }))
self.updateSureButtonState(true) self.updateSureButtonState(true)
case .expired: case .expired:
paymentMembers.append(.occupyingSpace) paymentMembers.append(.occupyingSpace)
paymentMembers.append(.subHeader(person.name, .expired)) paymentMembers.append(.subHeader(person.name, .expired))
...@@ -318,8 +326,6 @@ extension YHHKVisaRenewalPaymentVC { ...@@ -318,8 +326,6 @@ extension YHHKVisaRenewalPaymentVC {
paymentMembers.append(.subRemark("续签申请暂未正式获批,请耐心等待")) paymentMembers.append(.subRemark("续签申请暂未正式获批,请耐心等待"))
} }
} }
}
if let lastMember = actionMembers.last, case let.residenceAction(name, status, _, action) = lastMember { if let lastMember = actionMembers.last, case let.residenceAction(name, status, _, action) = lastMember {
actionMembers[actionMembers.count - 1] = .residenceAction(name, status, .bottom, action) actionMembers[actionMembers.count - 1] = .residenceAction(name, status, .bottom, action)
confirmingPresenceSection.append(contentsOf: actionMembers) confirmingPresenceSection.append(contentsOf: actionMembers)
......
...@@ -170,11 +170,7 @@ extension YHVisaRenewalGuideVC { ...@@ -170,11 +170,7 @@ extension YHVisaRenewalGuideVC {
DispatchQueue.main.async { DispatchQueue.main.async {
countDown -= 1 countDown -= 1
if countDown == 0 { if countDown == 0 {
self.cancelTimer() self.didReadGuide()
self.sureButton.isEnabled = true
self.sureButton.backgroundColor = .brandMainColor
UserDefaults.standard.set(true, forKey: YHVisaRenewalGuideVC.showCardGuideKey)
UserDefaults.standard.synchronize()
return return
} }
self.sureButton.isEnabled = false self.sureButton.isEnabled = false
...@@ -192,6 +188,14 @@ extension YHVisaRenewalGuideVC { ...@@ -192,6 +188,14 @@ extension YHVisaRenewalGuideVC {
timer = nil timer = nil
} }
} }
private func didReadGuide() {
cancelTimer()
sureButton.isEnabled = true
sureButton.backgroundColor = .brandMainColor
UserDefaults.standard.set(true, forKey: YHVisaRenewalGuideVC.showCardGuideKey)
UserDefaults.standard.synchronize()
}
} }
extension YHVisaRenewalGuideVC: UITableViewDelegate, UITableViewDataSource { extension YHVisaRenewalGuideVC: UITableViewDelegate, UITableViewDataSource {
...@@ -240,4 +244,19 @@ extension YHVisaRenewalGuideVC: UITableViewDelegate, UITableViewDataSource { ...@@ -240,4 +244,19 @@ extension YHVisaRenewalGuideVC: UITableViewDelegate, UITableViewDataSource {
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat { func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return UITableView.automaticDimension return UITableView.automaticDimension
} }
func scrollViewDidScroll(_ scrollView: UIScrollView) {
guard !YHVisaRenewalGuideVC.didShowGuide else {
return
}
let offsetY = scrollView.contentOffset.y
let contentHeight = scrollView.contentSize.height
let height = scrollView.frame.size.height
if offsetY > contentHeight - height {
printLog("Reached bottom!")
// 在这里执行到达底部时的操作
didReadGuide()
}
}
} }
...@@ -57,7 +57,7 @@ class YHVisaRenewalPayConfirmingPresenceAlertView: UIView { ...@@ -57,7 +57,7 @@ class YHVisaRenewalPayConfirmingPresenceAlertView: UIView {
label.numberOfLines = 0 label.numberOfLines = 0
let a: ASAttributedString = .init("建议入境香港后,", .font(UIFont.PFSC_R(ofSize: 14)),.foreground(UIColor.mainTextColor(alpha: 0.7))) let a: ASAttributedString = .init("建议入境香港后,", .font(UIFont.PFSC_R(ofSize: 14)),.foreground(UIColor.mainTextColor(alpha: 0.7)))
let b: ASAttributedString = .init("远离海关,并延迟20分钟后再进行确认", .font(UIFont.PFSC_B(ofSize: 14)),.foreground(UIColor.brandMainColor)) let b: ASAttributedString = .init("远离海关,并延迟20分钟后再进行确认", .font(UIFont.PFSC_B(ofSize: 14)),.foreground(UIColor.brandMainColor))
let c: ASAttributedString = .init(",避免香港海关系统还未识别到已入境!", .font(UIFont.PFSC_R(ofSize: 14)),.foreground(UIColor.mainTextColor(alpha: 0.7))) let c: ASAttributedString = .init(",避免香港海关系统还未识别到入境记录!", .font(UIFont.PFSC_R(ofSize: 14)),.foreground(UIColor.mainTextColor(alpha: 0.7)))
label.attributed.text = a+b+c label.attributed.text = a+b+c
return label return label
}() }()
......
...@@ -96,15 +96,21 @@ private extension YHLookResignResultViewController { ...@@ -96,15 +96,21 @@ private extension YHLookResignResultViewController {
func loadData() { func loadData() {
viewModel.getRenewalResult(batchId) {[weak self] success, error in viewModel.getRenewalResult(batchId) {[weak self] success, error in
guard let self = self else { return } guard let self = self else { return }
if success {
if self.viewModel.dataModel.status == 1 || self.viewModel.dataModel.status == 2 { if self.viewModel.dataModel.status == 1 || self.viewModel.dataModel.status == 2 {
state = 0 state = 0
} else if self.viewModel.dataModel.status == 2 { } else if self.viewModel.dataModel.status == 3 {
state = 1 state = 1
} else { } else {
state = 2 state = 2
} }
self.updateView() self.updateView()
self.tableView.reloadData() self.tableView.reloadData()
} else {
YHHUD.flash(message: error?.errorMsg ?? "数据错误")
self.tableView.isHidden = true
self.bottomView.isHidden = true
}
} }
} }
...@@ -170,6 +176,7 @@ private extension YHLookResignResultViewController { ...@@ -170,6 +176,7 @@ private extension YHLookResignResultViewController {
make.right.equalTo(0) make.right.equalTo(0)
} }
} }
headView.state = state
headView.dataSource = self.viewModel.dataModel headView.dataSource = self.viewModel.dataModel
} }
......
...@@ -286,6 +286,11 @@ extension YHResignCertificateDetailHkViewController: UITableViewDelegate, UITabl ...@@ -286,6 +286,11 @@ extension YHResignCertificateDetailHkViewController: UITableViewDelegate, UITabl
cell.urlBlock = { [weak self] url, index in cell.urlBlock = { [weak self] url, index in
guard let self = self else { return } guard let self = self else { return }
self.urls[index] = url self.urls[index] = url
if index == 0 {
self.dataModel.cert_info.img_front = url
} else {
self.dataModel.cert_info.img_back = url
}
self.viewModel.getPublicImageUrl(url) {[weak self] success, error in self.viewModel.getPublicImageUrl(url) {[weak self] success, error in
guard let self = self else { return } guard let self = self else { return }
guard let url = success else { return } guard let url = success else { return }
......
...@@ -79,6 +79,16 @@ class YHResignCertificateHKTableViewCell: UITableViewCell { ...@@ -79,6 +79,16 @@ class YHResignCertificateHKTableViewCell: UITableViewCell {
cardEndView.isHidden = true cardEndView.isHidden = true
signBeginView.isHidden = true signBeginView.isHidden = true
signEndView.isHidden = true signEndView.isHidden = true
guard let lastUrl = urls?.last, lastUrl.count != 0 else { return }
self.lastUrl = lastUrl
self.viewModel.getPublicImageUrl(lastUrl) {[weak self] success, error in
guard let self = self else { return }
guard let url = success else { return }
self.backSurfaceImageButton.kf.setBackgroundImage(with: URL(string: url), for: .normal, completionHandler: { _ in
self.backSurfaceDeleteButton.isHidden = false
})
self.backSurfaceImageButton.setContent("", "")
}
return return
} }
cerInfoLabel.isHidden = false cerInfoLabel.isHidden = false
......
...@@ -24,21 +24,20 @@ class YHPickTimeHoldView: UIView { ...@@ -24,21 +24,20 @@ class YHPickTimeHoldView: UIView {
let label = UILabel() let label = UILabel()
label.font = UIFont.PFSC_R(ofSize: 14) label.font = UIFont.PFSC_R(ofSize: 14)
label.textColor = .mainTextColor label.textColor = .mainTextColor
label.text = "具体时间" label.text = "具体时间"
return label return label
}() }()
lazy var tipImageV : UIImageView = { private lazy var iconImageV : UIImageView = {
let view = UIImageView() let view = UIImageView()
view.image = UIImage(named: "other_info_warning")
view.contentMode = .scaleAspectFill view.contentMode = .scaleAspectFill
view.image = UIImage(named: "activity_travel_bkg")
return view return view
}() }()
lazy var nextImageV : UIImageView = { private lazy var arrowIcon: UIImageView = {
let view = UIImageView() let view = UIImageView()
view.contentMode = .scaleAspectFill view.image = UIImage(named: "right_arrow_black_20")
view.image = UIImage(named: "activity_travel_bkg")
return view return view
}() }()
...@@ -47,6 +46,8 @@ class YHPickTimeHoldView: UIView { ...@@ -47,6 +46,8 @@ class YHPickTimeHoldView: UIView {
tf.font = UIFont.PFSC_M(ofSize: 14) tf.font = UIFont.PFSC_M(ofSize: 14)
tf.textColor = UIColor.mainTextColor tf.textColor = UIColor.mainTextColor
tf.placeholder = "请选择" tf.placeholder = "请选择"
tf.isEnabled = false
tf.textAlignment = .right
return tf return tf
}() }()
...@@ -67,8 +68,11 @@ class YHPickTimeHoldView: UIView { ...@@ -67,8 +68,11 @@ class YHPickTimeHoldView: UIView {
func createUI() { func createUI() {
self.addSubview(lineView) addSubview(lineView)
self.addSubview(applicantNamesLabel) addSubview(applicantNamesLabel)
addSubview(iconImageV)
addSubview(arrowIcon)
addSubview(timeTextField)
lineView.snp.makeConstraints { make in lineView.snp.makeConstraints { make in
make.left.right.top.equalToSuperview() make.left.right.top.equalToSuperview()
...@@ -77,7 +81,37 @@ class YHPickTimeHoldView: UIView { ...@@ -77,7 +81,37 @@ class YHPickTimeHoldView: UIView {
applicantNamesLabel.snp.makeConstraints { make in applicantNamesLabel.snp.makeConstraints { make in
make.left.equalTo(16) make.left.equalTo(16)
make.right.equalTo(-18-71-5) make.centerY.equalToSuperview().offset(1)
}
iconImageV.snp.makeConstraints { make in
make.left.equalTo(applicantNamesLabel.snp.right).offset(4)
make.centerY.equalTo(applicantNamesLabel)
make.height.width.equalTo(kMargin)
} }
let tap : UITapGestureRecognizer = UITapGestureRecognizer(target: self, action: #selector(tapButton(gestureRecognizer:)))
iconImageV.isUserInteractionEnabled = true
iconImageV.addGestureRecognizer(tap)
arrowIcon.snp.makeConstraints { make in
make.right.equalToSuperview().offset(-kMargin)
make.centerY.equalTo(applicantNamesLabel)
make.height.width.equalTo(16)
}
timeTextField.snp.makeConstraints { make in
make.right.equalTo(arrowIcon.snp.left).offset(-10)
make.centerY.equalTo(applicantNamesLabel)
make.width.equalTo(80)
}
}
}
private extension YHPickTimeHoldView {
@objc func tapButton(gestureRecognizer:UITapGestureRecognizer) {
YHWholeScreenTipsView.show(type: .renewTimeTips, targetView: iconImageV)
} }
} }
...@@ -96,8 +96,8 @@ class YHRangeDatePickerSheetView2: UIView { ...@@ -96,8 +96,8 @@ class YHRangeDatePickerSheetView2: UIView {
return imageV return imageV
}() }()
lazy var timeHoldView : UIView = { lazy var timeHoldView : YHPickTimeHoldView = {
let imageV = UIView() let imageV = YHPickTimeHoldView()
imageV.backgroundColor = .yellow //52 imageV.backgroundColor = .yellow //52
return imageV return imageV
}() }()
......
...@@ -248,7 +248,7 @@ extension YHJsApi { ...@@ -248,7 +248,7 @@ extension YHJsApi {
//普通界面 //普通界面
if !url.isEmpty { if !url.isEmpty {
var tUrl = url var tUrl = url
if !url.contains("avigationH=") { if !url.contains("navigationH=") {
tUrl = url + "?navigationH=\(k_Height_NavigationtBarAndStatuBar)" tUrl = url + "?navigationH=\(k_Height_NavigationtBarAndStatuBar)"
if url.contains("?") { if url.contains("?") {
tUrl = url + "&navigationH=\(k_Height_NavigationtBarAndStatuBar)" tUrl = url + "&navigationH=\(k_Height_NavigationtBarAndStatuBar)"
......
...@@ -409,29 +409,27 @@ extension YHMyViewController : UITableViewDelegate, UITableViewDataSource { ...@@ -409,29 +409,27 @@ extension YHMyViewController : UITableViewDelegate, UITableViewDataSource {
self.navigationController?.pushViewController(vc) self.navigationController?.pushViewController(vc)
case .myOrder: case .myOrder:
//我的订单 //我的订单
if let token = YHLoginManager.shared.userModel?.token,token.count > 5 { // if let token = YHLoginManager.shared.userModel?.token,token.count > 5 {
var url = YHBaseUrlManager.shared.curH5URL() + "superAppBridge.html#/order/my" // var url = YHBaseUrlManager.shared.curH5URL() + "superAppBridge.html#/order/my"
url = "?param=" + YHLoginManager.shared.h5Token // url = "?param=" + YHLoginManager.shared.h5Token
printLog("URL: \(url)") // printLog("URL: \(url)")
let vc = YHH5WebViewVC() // let vc = YHH5WebViewVC()
vc.url = url // vc.url = url
vc.isFullScreenFlag = false // vc.isFullScreenFlag = false
vc.navTitle = "我的订单" // vc.navTitle = "我的订单"
vc.isSupportWebviewInterBackFlag = true // vc.isSupportWebviewInterBackFlag = true
UIViewController.current?.navigationController?.pushViewController(vc) // UIViewController.current?.navigationController?.pushViewController(vc)
} // }
let view = YHRangeDatePickerSheetView2.sheetView()
view.block = {
[weak self] (startDate,endDate) in
guard let self = self else { return }
// let view = YHRangeDatePickerSheetView2.sheetView() printLog("开始时间: \(startDate)")
// view.block = { printLog("结束时间: \(endDate)")
// [weak self] (startDate,endDate) in }
// guard let self = self else { return } view.show()//for test hjl
//
// printLog("开始时间: \(startDate)")
// printLog("结束时间: \(endDate)")
// }
// view.show()//for test hjl
default: default:
printLog("不需要响应") printLog("不需要响应")
} }
......
...@@ -24,6 +24,8 @@ enum YHWholeScreenTipsViewType : Int { ...@@ -24,6 +24,8 @@ enum YHWholeScreenTipsViewType : Int {
case hkPlanQ5 //赴港计划书问题5 case hkPlanQ5 //赴港计划书问题5
case hkPlanQ6 //赴港计划书问题6 case hkPlanQ6 //赴港计划书问题6
case hkPlanQ7 //赴港计划书问题7 case hkPlanQ7 //赴港计划书问题7
case renewTimeTips //选择预约在港递交时间
} }
...@@ -94,6 +96,8 @@ class YHWholeScreenTipsView: UIView { ...@@ -94,6 +96,8 @@ class YHWholeScreenTipsView: UIView {
return "请以不超过100字简介你认为对评核你的申请非常重要的其他材料" return "请以不超过100字简介你认为对评核你的申请非常重要的其他材料"
case .hkPlanQ7: case .hkPlanQ7:
return "您可以在此输入因为字数限制无法输入的内容" return "您可以在此输入因为字数限制无法输入的内容"
case .renewTimeTips:
return "入境处网址18:00之后可能会存在系统更新,为避免预约时间无法递交,请尽量选择18:00之前的时间"
default: default:
return "--" return "--"
} }
......
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