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

// 预约

parent b7348a1f
......@@ -484,6 +484,9 @@
04912F882CB8FF3000CC3105 /* YHResignAppointedScheduleSingleItemView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04912F872CB8FF3000CC3105 /* YHResignAppointedScheduleSingleItemView.swift */; };
04912F8A2CB9000200CC3105 /* YHResignHaveAppointedSingleInfoCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04912F892CB9000200CC3105 /* YHResignHaveAppointedSingleInfoCell.swift */; };
04912F8C2CB907F200CC3105 /* YHResignAppointTimeMultipleCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04912F8B2CB907F100CC3105 /* YHResignAppointTimeMultipleCell.swift */; };
04912F8E2CB916F500CC3105 /* YHResignAppointViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04912F8D2CB916F500CC3105 /* YHResignAppointViewModel.swift */; };
04912F902CB917BC00CC3105 /* YHResignAppointMember.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04912F8F2CB917BC00CC3105 /* YHResignAppointMember.swift */; };
04912F922CB91A6F00CC3105 /* YHResignAppointGroup.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04912F912CB91A6F00CC3105 /* YHResignAppointGroup.swift */; };
0493B3DC2BA7EFE600AF9393 /* YHCertificateSearchViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0493B3DB2BA7EFE600AF9393 /* YHCertificateSearchViewController.swift */; };
0493B3DE2BA80C2300AF9393 /* YHCertificateFilterButton.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0493B3DD2BA80C2300AF9393 /* YHCertificateFilterButton.swift */; };
049537852BA9B28500AF7E59 /* YHCertificateTemplateCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 049537842BA9B28500AF7E59 /* YHCertificateTemplateCell.swift */; };
......@@ -1386,6 +1389,9 @@
04912F872CB8FF3000CC3105 /* YHResignAppointedScheduleSingleItemView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHResignAppointedScheduleSingleItemView.swift; sourceTree = "<group>"; };
04912F892CB9000200CC3105 /* YHResignHaveAppointedSingleInfoCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHResignHaveAppointedSingleInfoCell.swift; sourceTree = "<group>"; };
04912F8B2CB907F100CC3105 /* YHResignAppointTimeMultipleCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHResignAppointTimeMultipleCell.swift; sourceTree = "<group>"; };
04912F8D2CB916F500CC3105 /* YHResignAppointViewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHResignAppointViewModel.swift; sourceTree = "<group>"; };
04912F8F2CB917BC00CC3105 /* YHResignAppointMember.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHResignAppointMember.swift; sourceTree = "<group>"; };
04912F912CB91A6F00CC3105 /* YHResignAppointGroup.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHResignAppointGroup.swift; sourceTree = "<group>"; };
0493B3DB2BA7EFE600AF9393 /* YHCertificateSearchViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateSearchViewController.swift; sourceTree = "<group>"; };
0493B3DD2BA80C2300AF9393 /* YHCertificateFilterButton.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateFilterButton.swift; sourceTree = "<group>"; };
049537842BA9B28500AF7E59 /* YHCertificateTemplateCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateTemplateCell.swift; sourceTree = "<group>"; };
......@@ -3490,6 +3496,8 @@
04912F6A2CB6A5D800CC3105 /* M */ = {
isa = PBXGroup;
children = (
04912F8F2CB917BC00CC3105 /* YHResignAppointMember.swift */,
04912F912CB91A6F00CC3105 /* YHResignAppointGroup.swift */,
);
path = M;
sourceTree = "<group>";
......@@ -3497,6 +3505,7 @@
04912F6B2CB6A5DE00CC3105 /* VM */ = {
isa = PBXGroup;
children = (
04912F8D2CB916F500CC3105 /* YHResignAppointViewModel.swift */,
);
path = VM;
sourceTree = "<group>";
......@@ -5549,6 +5558,7 @@
04912F602CB6697300CC3105 /* YHResignRiskWarningAlertView.swift in Sources */,
0480976B2BA15269000B9DCA /* YHCertificateInfoCell.swift in Sources */,
0430E6862C76DF6A000511E2 /* YHAdopterMainModel.swift in Sources */,
04912F922CB91A6F00CC3105 /* YHResignAppointGroup.swift in Sources */,
A56D2D612B62020C009C83A8 /* YHContractMainItemStatusCell.swift in Sources */,
045EEECF2B9F171A0022A143 /* YHScoreOptionsView.swift in Sources */,
0431F8822C942D88003B84F4 /* YHResignMaterialNameCell.swift in Sources */,
......@@ -5582,6 +5592,7 @@
045EEEE42B9F171A0022A143 /* YHMySignatureDetailModel.swift in Sources */,
A5DF9C652C78B5A400CE48E6 /* YHUploadCertificateViewModel.swift in Sources */,
A5EB6C722C69FB9A0081FB6C /* YHOffivialApprovalGuildLineCheckView.swift in Sources */,
04912F902CB917BC00CC3105 /* YHResignAppointMember.swift in Sources */,
04256E272C77127600A37BA4 /* YHWaitAppointMembersCell.swift in Sources */,
047AA3D72C4A4399009C4554 /* YHInvitationWithGiftsShareView.swift in Sources */,
04F243532C9C434100DF2C74 /* YHHKRecordsCustomerItemCell.swift in Sources */,
......@@ -5821,6 +5832,7 @@
A58037212BAD7B2A0031C312 /* YHMySchemeModel.swift in Sources */,
0493B3DE2BA80C2300AF9393 /* YHCertificateFilterButton.swift in Sources */,
04912F862CB7EF6200CC3105 /* YHResignHaveAppointedMultipleInfoCell.swift in Sources */,
04912F8E2CB916F500CC3105 /* YHResignAppointViewModel.swift in Sources */,
04F2435D2C9D153C00DF2C74 /* YHHKRecordsTimeSelectCell.swift in Sources */,
0430E6902C7EC78C000511E2 /* YHCardUploadView.swift in Sources */,
04FA8B2B2C06F59D00ABE43F /* YHAppleLoginManager.swift in Sources */,
......
......@@ -10,8 +10,166 @@ import UIKit
class YHResignAppointSubmitScheduleViewController: YHBaseViewController {
var familyArr: [String] = ["", "", "", "", ""]
lazy var tableView: UITableView = {
let tableView = UITableView(frame: CGRect.zero, style:.grouped)
if #available(iOS 15.0, *) {
tableView.sectionHeaderTopPadding = 0.0
}
tableView.estimatedSectionHeaderHeight = 0.1
tableView.estimatedSectionFooterHeight = 16.0
tableView.contentInsetAdjustmentBehavior = .never
tableView.showsVerticalScrollIndicator = false
tableView.backgroundColor = .clear
tableView.separatorStyle = .none
tableView.bounces = false
tableView.register(YHResignAppointTimeSingleCell.self, forCellReuseIdentifier: YHResignAppointTimeSingleCell.cellReuseIdentifier)
tableView.register(YHResignAppointOptionCell.self, forCellReuseIdentifier: YHResignAppointOptionCell.cellReuseIdentifier)
tableView.register(YHResignAppointApplicantInfoCell.self, forCellReuseIdentifier: YHResignAppointApplicantInfoCell.cellReuseIdentifier)
tableView.register(YHResignAppointOptionResultCell.self, forCellReuseIdentifier: YHResignAppointOptionResultCell.cellReuseIdentifier)
tableView.register(YHResignHaveAppointedMultipleInfoCell.self, forCellReuseIdentifier: YHResignHaveAppointedMultipleInfoCell.cellReuseIdentifier)
tableView.register(YHResignHaveAppointedSingleInfoCell.self, forCellReuseIdentifier: YHResignHaveAppointedSingleInfoCell.cellReuseIdentifier)
tableView.register(YHResignAppointTimeMultipleCell.self, forCellReuseIdentifier: YHResignAppointTimeMultipleCell.cellReuseIdentifier)
tableView.delegate = self
tableView.dataSource = self
return tableView
}()
lazy var tipsBtn: UIButton = {
let button = UIButton()
button.setTitle("递交提示", for: .normal)
button.titleLabel?.font = .PFSC_R(ofSize: 11)
button.setTitleColor(UIColor.mainTextColor, for: .normal)
button.setImage(UIImage(named: "resign_appoint_tips_btn"), for: .normal)
button.centerTextAndImage(imageAboveText: true, spacing: 0.0)
return button
}()
lazy var submitBtn: UIButton = {
let btn = UIButton()
btn.backgroundColor = .brandMainColor
btn.setTitle("确认提交", for: .normal)
btn.setTitleColor(.white, for: .normal)
btn.titleLabel?.font = UIFont.PFSC_M(ofSize: 15)
btn.addTarget(self, action: #selector(didSubmitBtnClicked), for: .touchUpInside)
btn.layer.cornerRadius = kCornerRadius3
return btn
}()
lazy var bottomView: UIView = {
let view = UIView()
view.backgroundColor = .white
view.addSubview(tipsBtn)
view.addSubview(submitBtn)
tipsBtn.snp.makeConstraints { make in
make.left.equalTo(22)
make.width.equalTo(44)
make.height.equalTo(48)
make.centerY.equalTo(submitBtn)
}
submitBtn.snp.makeConstraints { make in
make.left.equalTo(tipsBtn.snp.right).offset(22)
make.right.equalTo(-20)
make.top.equalTo(8)
make.height.equalTo(48)
}
return view
}()
override func viewDidLoad() {
super.viewDidLoad()
self.gk_navTitle = "预约在港递交时间"
self.gk_navigationBar.backgroundColor = .white
self.view.backgroundColor = .init(hex: 0xF8F9FB)
self.view.addSubview(tableView)
self.view.addSubview(bottomView)
self.tableView.snp.makeConstraints { make in
make.left.equalTo(16)
make.right.equalTo(-16)
make.top.equalTo(k_Height_NavigationtBarAndStatuBar+16)
make.bottom.equalTo(bottomView.snp.top)
}
self.bottomView.snp.makeConstraints { make in
make.left.right.bottom.equalToSuperview()
make.height.equalTo(98)
}
}
@objc func didSubmitBtnClicked() {
}
}
extension YHResignAppointSubmitScheduleViewController: UITableViewDelegate, UITableViewDataSource {
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return familyArr.count
}
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell2 = tableView.dequeueReusableCell(withIdentifier: YHResignAppointTimeSingleCell.cellReuseIdentifier, for: indexPath) as! YHResignAppointTimeSingleCell
if 0 <= indexPath.row && indexPath.row < familyArr.count {
if indexPath.row == 0 {
let cell1 = tableView.dequeueReusableCell(withIdentifier: YHResignAppointOptionResultCell.cellReuseIdentifier, for: indexPath) as! YHResignAppointOptionResultCell
return cell1
}
if indexPath.row == 1 {
let cell1 = tableView.dequeueReusableCell(withIdentifier: YHResignAppointOptionCell.cellReuseIdentifier, for: indexPath) as! YHResignAppointOptionCell
return cell1
}
if indexPath.row == 2 {
let cell1 = tableView.dequeueReusableCell(withIdentifier: YHResignAppointApplicantInfoCell.cellReuseIdentifier, for: indexPath) as! YHResignAppointApplicantInfoCell
return cell1
}
if indexPath.row == 3 {
let cell1 = tableView.dequeueReusableCell(withIdentifier: YHResignHaveAppointedSingleInfoCell.cellReuseIdentifier, for: indexPath) as! YHResignHaveAppointedSingleInfoCell
return cell1
}
if indexPath.row == 4 {
let cell1 = tableView.dequeueReusableCell(withIdentifier: YHResignAppointTimeMultipleCell.cellReuseIdentifier, for: indexPath) as! YHResignAppointTimeMultipleCell
return cell1
}
}
return cell2
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
return UITableView.automaticDimension
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
if 0 <= indexPath.row && indexPath.row < familyArr.count {
let model = familyArr[indexPath.row]
}
}
private func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> CGFloat {
return 0.1
}
private func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> CGFloat {
return 16
}
func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
let view = UIView()
return view
}
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let view = UIView()
return view
}
}
//
// YHResignAppointGroup.swift
// galaxy
//
// Created by edy on 2024/10/11.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
import SmartCodable
class YHResignAppointGroup: SmartCodable {
var id: Int = 0
var user_list: [YHResignAppointUser] = []
var ready_to_submit_at: String = ""
var leave_hk_at: String = ""
var determine_hk_at: String = ""
var actually_submit_at: String = ""
var result_file_at: String = ""
required init() {
}
}
class YHResignAppointUser: SmartCodable {
var id: Int = 0
var name: String = ""
var memberId: Int = 0
required init() {
}
}
//
// YHResignAppointMember.swift
// galaxy
//
// Created by edy on 2024/10/11.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
import SmartCodable
class YHResignAppointMember: SmartCodable {
var id: Int = 0
var renewal_number: Int = 0
var apply_relation: Int = 0
var apply_uid: String = ""
var apply_name: String = ""
var stay_deadline: String = ""
var state: String = ""
required init() {
}
}
//
// YHResignAppointViewModel.swift
// galaxy
//
// Created by edy on 2024/10/11.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
class YHResignAppointViewModel: NSObject {
var appointUsers: [YHResignAppointMember] = []
// 赴港人员列表
func getResignAppointUserlist(renewalId: Int, callBack: @escaping (_ success: Bool,_ error: YHErrorModel?)->()) {
let params = ["renewal_id" : renewalId]
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.ResignAppoint.appointUserList
let _ = YHNetRequest.getRequest(url: strUrl, params: params) {
[weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
if json.code == 200 {
guard let dic = json.data?.peel as? [Any], let resultModel = [YHResignAppointMember].deserialize(from: dic) else {
let err = YHErrorModel(errorCode: YHErrorCode.dictParseError.rawValue, errorMsg: YHErrorCode.dictParseError.description())
self.appointUsers = []
callBack(false, err)
return
}
self.appointUsers = resultModel
callBack(true, nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg)
self.appointUsers = []
callBack(false, error)
}
} failBlock: { err in
self.appointUsers = []
callBack(false, err)
}
}
}
......@@ -548,6 +548,12 @@ class YHAllApiName {
static let getResginDocumentUrl = "super-app/renewal/doc/url"
}
// 续签预约
struct ResignAppoint {
// 赴港人员列表
static let appointUserList = "super-app/renewal/user"
}
// 在港记录
struct HKImmigrationRecords {
// 在港记录-汇总
......
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