Commit 3d3011b2 authored by Alex朱枝文's avatar Alex朱枝文

在港记录完结

parent cf6ddc78
...@@ -523,6 +523,8 @@ ...@@ -523,6 +523,8 @@
04CCEDF92CA0FD5F0026EA70 /* YHHKImmigrationRecordsSummaryModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CCEDF82CA0FD5F0026EA70 /* YHHKImmigrationRecordsSummaryModel.swift */; }; 04CCEDF92CA0FD5F0026EA70 /* YHHKImmigrationRecordsSummaryModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CCEDF82CA0FD5F0026EA70 /* YHHKImmigrationRecordsSummaryModel.swift */; };
04CCEDFB2CA142010026EA70 /* YHHKImmigrationRecordsStatisticsModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CCEDFA2CA142010026EA70 /* YHHKImmigrationRecordsStatisticsModel.swift */; }; 04CCEDFB2CA142010026EA70 /* YHHKImmigrationRecordsStatisticsModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CCEDFA2CA142010026EA70 /* YHHKImmigrationRecordsStatisticsModel.swift */; };
04CCEDFD2CA150ED0026EA70 /* YHHKImmigrationRecordsSingleModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CCEDFC2CA150ED0026EA70 /* YHHKImmigrationRecordsSingleModel.swift */; }; 04CCEDFD2CA150ED0026EA70 /* YHHKImmigrationRecordsSingleModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CCEDFC2CA150ED0026EA70 /* YHHKImmigrationRecordsSingleModel.swift */; };
04CCEDFF2CA161910026EA70 /* YHHKRecordsFamilyMembers.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CCEDFE2CA161910026EA70 /* YHHKRecordsFamilyMembers.swift */; };
04CCEE012CA165070026EA70 /* YHHKImmigrationEditRecordModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CCEE002CA165070026EA70 /* YHHKImmigrationEditRecordModel.swift */; };
04CE1ACF2C2AD91F001CB80A /* YHActivityViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CE1AB72C2AD91F001CB80A /* YHActivityViewModel.swift */; }; 04CE1ACF2C2AD91F001CB80A /* YHActivityViewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CE1AB72C2AD91F001CB80A /* YHActivityViewModel.swift */; };
04CE1AD02C2AD91F001CB80A /* YHActivityListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CE1AB92C2AD91F001CB80A /* YHActivityListModel.swift */; }; 04CE1AD02C2AD91F001CB80A /* YHActivityListModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CE1AB92C2AD91F001CB80A /* YHActivityListModel.swift */; };
04CE1AD12C2AD91F001CB80A /* YHActivityTravelModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CE1ABA2C2AD91F001CB80A /* YHActivityTravelModel.swift */; }; 04CE1AD12C2AD91F001CB80A /* YHActivityTravelModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04CE1ABA2C2AD91F001CB80A /* YHActivityTravelModel.swift */; };
...@@ -598,7 +600,6 @@ ...@@ -598,7 +600,6 @@
04F2436C2C9D9A3A00DF2C74 /* YHResignDocumentCompleteModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F2436B2C9D9A3A00DF2C74 /* YHResignDocumentCompleteModel.swift */; }; 04F2436C2C9D9A3A00DF2C74 /* YHResignDocumentCompleteModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F2436B2C9D9A3A00DF2C74 /* YHResignDocumentCompleteModel.swift */; };
04F2436E2C9E5D8D00DF2C74 /* YHResignDocumentSignatureModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F2436D2C9E5D8D00DF2C74 /* YHResignDocumentSignatureModel.swift */; }; 04F2436E2C9E5D8D00DF2C74 /* YHResignDocumentSignatureModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F2436D2C9E5D8D00DF2C74 /* YHResignDocumentSignatureModel.swift */; };
04F243702C9E788200DF2C74 /* YHResignDocumentPreviewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F2436F2C9E788200DF2C74 /* YHResignDocumentPreviewModel.swift */; }; 04F243702C9E788200DF2C74 /* YHResignDocumentPreviewModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F2436F2C9E788200DF2C74 /* YHResignDocumentPreviewModel.swift */; };
04F243722C9EC90C00DF2C74 /* YHHKRecordsEditPersonnelModel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F243712C9EC90C00DF2C74 /* YHHKRecordsEditPersonnelModel.swift */; };
04F243742CA07C6C00DF2C74 /* YHCollectionViewLeftAlignedFlowLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F243732CA07C6C00DF2C74 /* YHCollectionViewLeftAlignedFlowLayout.swift */; }; 04F243742CA07C6C00DF2C74 /* YHCollectionViewLeftAlignedFlowLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F243732CA07C6C00DF2C74 /* YHCollectionViewLeftAlignedFlowLayout.swift */; };
04F316442C3568F000024164 /* YHAboutGalaxyViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F316432C3568F000024164 /* YHAboutGalaxyViewController.swift */; }; 04F316442C3568F000024164 /* YHAboutGalaxyViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F316432C3568F000024164 /* YHAboutGalaxyViewController.swift */; };
04F4B76B2BAA7E1E00D13284 /* YHCertificateTemplateSheetView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F4B76A2BAA7E1E00D13284 /* YHCertificateTemplateSheetView.swift */; }; 04F4B76B2BAA7E1E00D13284 /* YHCertificateTemplateSheetView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 04F4B76A2BAA7E1E00D13284 /* YHCertificateTemplateSheetView.swift */; };
...@@ -1376,6 +1377,8 @@ ...@@ -1376,6 +1377,8 @@
04CCEDF82CA0FD5F0026EA70 /* YHHKImmigrationRecordsSummaryModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHKImmigrationRecordsSummaryModel.swift; sourceTree = "<group>"; }; 04CCEDF82CA0FD5F0026EA70 /* YHHKImmigrationRecordsSummaryModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHKImmigrationRecordsSummaryModel.swift; sourceTree = "<group>"; };
04CCEDFA2CA142010026EA70 /* YHHKImmigrationRecordsStatisticsModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHKImmigrationRecordsStatisticsModel.swift; sourceTree = "<group>"; }; 04CCEDFA2CA142010026EA70 /* YHHKImmigrationRecordsStatisticsModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHKImmigrationRecordsStatisticsModel.swift; sourceTree = "<group>"; };
04CCEDFC2CA150ED0026EA70 /* YHHKImmigrationRecordsSingleModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHKImmigrationRecordsSingleModel.swift; sourceTree = "<group>"; }; 04CCEDFC2CA150ED0026EA70 /* YHHKImmigrationRecordsSingleModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHKImmigrationRecordsSingleModel.swift; sourceTree = "<group>"; };
04CCEDFE2CA161910026EA70 /* YHHKRecordsFamilyMembers.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHKRecordsFamilyMembers.swift; sourceTree = "<group>"; };
04CCEE002CA165070026EA70 /* YHHKImmigrationEditRecordModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHKImmigrationEditRecordModel.swift; sourceTree = "<group>"; };
04CE1AB72C2AD91F001CB80A /* YHActivityViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHActivityViewModel.swift; sourceTree = "<group>"; }; 04CE1AB72C2AD91F001CB80A /* YHActivityViewModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHActivityViewModel.swift; sourceTree = "<group>"; };
04CE1AB92C2AD91F001CB80A /* YHActivityListModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHActivityListModel.swift; sourceTree = "<group>"; }; 04CE1AB92C2AD91F001CB80A /* YHActivityListModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHActivityListModel.swift; sourceTree = "<group>"; };
04CE1ABA2C2AD91F001CB80A /* YHActivityTravelModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHActivityTravelModel.swift; sourceTree = "<group>"; }; 04CE1ABA2C2AD91F001CB80A /* YHActivityTravelModel.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHActivityTravelModel.swift; sourceTree = "<group>"; };
...@@ -1451,7 +1454,6 @@ ...@@ -1451,7 +1454,6 @@
04F2436B2C9D9A3A00DF2C74 /* YHResignDocumentCompleteModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHResignDocumentCompleteModel.swift; sourceTree = "<group>"; }; 04F2436B2C9D9A3A00DF2C74 /* YHResignDocumentCompleteModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHResignDocumentCompleteModel.swift; sourceTree = "<group>"; };
04F2436D2C9E5D8D00DF2C74 /* YHResignDocumentSignatureModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHResignDocumentSignatureModel.swift; sourceTree = "<group>"; }; 04F2436D2C9E5D8D00DF2C74 /* YHResignDocumentSignatureModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHResignDocumentSignatureModel.swift; sourceTree = "<group>"; };
04F2436F2C9E788200DF2C74 /* YHResignDocumentPreviewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHResignDocumentPreviewModel.swift; sourceTree = "<group>"; }; 04F2436F2C9E788200DF2C74 /* YHResignDocumentPreviewModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHResignDocumentPreviewModel.swift; sourceTree = "<group>"; };
04F243712C9EC90C00DF2C74 /* YHHKRecordsEditPersonnelModel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHHKRecordsEditPersonnelModel.swift; sourceTree = "<group>"; };
04F243732CA07C6C00DF2C74 /* YHCollectionViewLeftAlignedFlowLayout.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHCollectionViewLeftAlignedFlowLayout.swift; sourceTree = "<group>"; }; 04F243732CA07C6C00DF2C74 /* YHCollectionViewLeftAlignedFlowLayout.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = YHCollectionViewLeftAlignedFlowLayout.swift; sourceTree = "<group>"; };
04F316432C3568F000024164 /* YHAboutGalaxyViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHAboutGalaxyViewController.swift; sourceTree = "<group>"; }; 04F316432C3568F000024164 /* YHAboutGalaxyViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHAboutGalaxyViewController.swift; sourceTree = "<group>"; };
04F4B76A2BAA7E1E00D13284 /* YHCertificateTemplateSheetView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateTemplateSheetView.swift; sourceTree = "<group>"; }; 04F4B76A2BAA7E1E00D13284 /* YHCertificateTemplateSheetView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = YHCertificateTemplateSheetView.swift; sourceTree = "<group>"; };
...@@ -3573,7 +3575,8 @@ ...@@ -3573,7 +3575,8 @@
04CCEDF82CA0FD5F0026EA70 /* YHHKImmigrationRecordsSummaryModel.swift */, 04CCEDF82CA0FD5F0026EA70 /* YHHKImmigrationRecordsSummaryModel.swift */,
04CCEDFA2CA142010026EA70 /* YHHKImmigrationRecordsStatisticsModel.swift */, 04CCEDFA2CA142010026EA70 /* YHHKImmigrationRecordsStatisticsModel.swift */,
04CCEDFC2CA150ED0026EA70 /* YHHKImmigrationRecordsSingleModel.swift */, 04CCEDFC2CA150ED0026EA70 /* YHHKImmigrationRecordsSingleModel.swift */,
04F243712C9EC90C00DF2C74 /* YHHKRecordsEditPersonnelModel.swift */, 04CCEDFE2CA161910026EA70 /* YHHKRecordsFamilyMembers.swift */,
04CCEE002CA165070026EA70 /* YHHKImmigrationEditRecordModel.swift */,
); );
path = M; path = M;
sourceTree = "<group>"; sourceTree = "<group>";
...@@ -5166,6 +5169,7 @@ ...@@ -5166,6 +5169,7 @@
A567E5AD2BD7643D00D5D5A0 /* YHSearchInfoHistoryCell.swift in Sources */, A567E5AD2BD7643D00D5D5A0 /* YHSearchInfoHistoryCell.swift in Sources */,
04CE1ADC2C2AD91F001CB80A /* YHActivityTipsItemView.swift in Sources */, 04CE1ADC2C2AD91F001CB80A /* YHActivityTipsItemView.swift in Sources */,
048058312C7DBDC900502CAA /* YHTravelCertificateTipsView.swift in Sources */, 048058312C7DBDC900502CAA /* YHTravelCertificateTipsView.swift in Sources */,
04CCEE012CA165070026EA70 /* YHHKImmigrationEditRecordModel.swift in Sources */,
A5EF21332BA6E030005027E6 /* YHFileListViewController.swift in Sources */, A5EF21332BA6E030005027E6 /* YHFileListViewController.swift in Sources */,
045EEF1E2B9F171A0022A143 /* YHBottomNextView.swift in Sources */, 045EEF1E2B9F171A0022A143 /* YHBottomNextView.swift in Sources */,
A567E59E2BD7643D00D5D5A0 /* YHHomePageViewController.swift in Sources */, A567E59E2BD7643D00D5D5A0 /* YHHomePageViewController.swift in Sources */,
...@@ -5417,6 +5421,7 @@ ...@@ -5417,6 +5421,7 @@
045EEEF82B9F171A0022A143 /* YHFormItemOnlyDoubleChoiceCell.swift in Sources */, 045EEEF82B9F171A0022A143 /* YHFormItemOnlyDoubleChoiceCell.swift in Sources */,
A598E9DF2C7CB2C400F84739 /* YHTravelDocsPreparationViewModel.swift in Sources */, A598E9DF2C7CB2C400F84739 /* YHTravelDocsPreparationViewModel.swift in Sources */,
0480976D2BA158A1000B9DCA /* YHCertificateListVC.swift in Sources */, 0480976D2BA158A1000B9DCA /* YHCertificateListVC.swift in Sources */,
04CCEDFF2CA161910026EA70 /* YHHKRecordsFamilyMembers.swift in Sources */,
0430E6522C733D82000511E2 /* YHAdopterIncomeFileTableViewCell.swift in Sources */, 0430E6522C733D82000511E2 /* YHAdopterIncomeFileTableViewCell.swift in Sources */,
045EEE8B2B9F171A0022A143 /* YHPreviewMainApplicantInfoViewController.swift in Sources */, 045EEE8B2B9F171A0022A143 /* YHPreviewMainApplicantInfoViewController.swift in Sources */,
04256E162C75BD2700A37BA4 /* YHPayMemberSectionItem.swift in Sources */, 04256E162C75BD2700A37BA4 /* YHPayMemberSectionItem.swift in Sources */,
...@@ -5467,7 +5472,6 @@ ...@@ -5467,7 +5472,6 @@
A5ACE9562B4564F7002C94D2 /* YHBouncesContentView.swift in Sources */, A5ACE9562B4564F7002C94D2 /* YHBouncesContentView.swift in Sources */,
A554A5122B99715000EA5973 /* YHConstantArrayData.swift in Sources */, A554A5122B99715000EA5973 /* YHConstantArrayData.swift in Sources */,
045EEE962B9F171A0022A143 /* YHPreviewInfoCertificatePictureItemsView.swift in Sources */, 045EEE962B9F171A0022A143 /* YHPreviewInfoCertificatePictureItemsView.swift in Sources */,
04F243722C9EC90C00DF2C74 /* YHHKRecordsEditPersonnelModel.swift in Sources */,
044EE2362C92916600A2FE3A /* YHResignCertificateListViewController.swift in Sources */, 044EE2362C92916600A2FE3A /* YHResignCertificateListViewController.swift in Sources */,
04F243412C9AFBAB00DF2C74 /* YHHKRecordItemDetailType.swift in Sources */, 04F243412C9AFBAB00DF2C74 /* YHHKRecordItemDetailType.swift in Sources */,
04256DDE2C72DA3B00A37BA4 /* YHCertificateAppointViewController.swift in Sources */, 04256DDE2C72DA3B00A37BA4 /* YHCertificateAppointViewController.swift in Sources */,
......
...@@ -81,8 +81,6 @@ class YHHKImmigrationRecordsVC: YHBaseViewController { ...@@ -81,8 +81,6 @@ class YHHKImmigrationRecordsVC: YHBaseViewController {
private let orderId: Int private let orderId: Int
init(orderId: Int) { init(orderId: Int) {
self.orderId = orderId self.orderId = orderId
// TODO: - 先写死id alex,后续有可以调试账号再改
//self.orderId = 136013
super.init(nibName: nil, bundle: nil) super.init(nibName: nil, bundle: nil)
} }
...@@ -147,8 +145,7 @@ extension YHHKImmigrationRecordsVC { ...@@ -147,8 +145,7 @@ extension YHHKImmigrationRecordsVC {
} else { } else {
printLog("YHHKImmigrationRecordsVC: 请求失败") printLog("YHHKImmigrationRecordsVC: 请求失败")
if let errorMsg = error?.errorMsg, errorMsg.count > 0 { if let errorMsg = error?.errorMsg, errorMsg.count > 0 {
YHHUD.show(.error(message: errorMsg)) YHHUD.flash(message: errorMsg)
YHHUD.hide(afterDelay: 1)
} }
} }
} }
...@@ -161,7 +158,7 @@ extension YHHKImmigrationRecordsVC { ...@@ -161,7 +158,7 @@ extension YHHKImmigrationRecordsVC {
} }
@objc private func clickAddNewButton() { @objc private func clickAddNewButton() {
let vc = YHHKRecordsEditContentVC(pageType: .add) let vc = YHHKRecordsEditContentVC(orderId: orderId, pageType: .add)
navigationController?.pushViewController(vc) navigationController?.pushViewController(vc)
} }
} }
......
...@@ -21,7 +21,7 @@ class YHHKRecordsContentVC: YHBaseViewController { ...@@ -21,7 +21,7 @@ class YHHKRecordsContentVC: YHBaseViewController {
case customer(_ title: String, _ detail: String) case customer(_ title: String, _ detail: String)
case info(_ title: String, _ detail: String, _ topMargin: CGFloat = 18, _ bottomMargin: CGFloat = 18) case info(_ title: String, _ detail: String, _ topMargin: CGFloat = 18, _ bottomMargin: CGFloat = 18)
case remark(_ title: String, _ detail: String) case remark(_ title: String, _ detail: String)
case edit(_ title: String) case edit(_ title: String, _ editModel: YHHKImmigrationEditRecordModel)
} }
private lazy var viewModel = YHHKImmigrationRecordsViewModel() private lazy var viewModel = YHHKImmigrationRecordsViewModel()
...@@ -111,8 +111,7 @@ extension YHHKRecordsContentVC { ...@@ -111,8 +111,7 @@ extension YHHKRecordsContentVC {
} else { } else {
printLog("YHHKRecordsContentVC: 请求失败") printLog("YHHKRecordsContentVC: 请求失败")
if let errorMsg = error?.errorMsg, errorMsg.count > 0 { if let errorMsg = error?.errorMsg, errorMsg.count > 0 {
YHHUD.show(.error(message: errorMsg)) YHHUD.flash(message: errorMsg)
YHHUD.hide(afterDelay: 1)
} }
} }
} }
...@@ -134,7 +133,15 @@ extension YHHKRecordsContentVC { ...@@ -134,7 +133,15 @@ extension YHHKRecordsContentVC {
if record.remark.count > 0 { if record.remark.count > 0 {
section.append(.remark("备注:", record.remark)) section.append(.remark("备注:", record.remark))
} }
section.append(.edit("编辑")) let editModel = YHHKImmigrationEditRecordModel()
editModel.id = record.id
editModel.order_id = orderId
editModel.users = record.users
editModel.start_date = record.start_date
editModel.end_date = record.end_date
editModel.remark = record.remark
section.append(.edit("编辑", editModel))
sections.append(section) sections.append(section)
} }
guard sections.count > 0 else { guard sections.count > 0 else {
...@@ -191,7 +198,7 @@ extension YHHKRecordsContentVC: UITableViewDelegate, UITableViewDataSource { ...@@ -191,7 +198,7 @@ extension YHHKRecordsContentVC: UITableViewDelegate, UITableViewDataSource {
cell.setupCellInfo(title: title, detail: detail) cell.setupCellInfo(title: title, detail: detail)
return cell return cell
} }
case let .edit(title): case let .edit(title, _):
if let cell = tableView.dequeueReusableCell(withIdentifier: YHHKRecordsEditButtonCell.cellReuseIdentifier) as? YHHKRecordsEditButtonCell { if let cell = tableView.dequeueReusableCell(withIdentifier: YHHKRecordsEditButtonCell.cellReuseIdentifier) as? YHHKRecordsEditButtonCell {
cell.setupCellInfo(title: title) cell.setupCellInfo(title: title)
return cell return cell
...@@ -209,8 +216,8 @@ extension YHHKRecordsContentVC: UITableViewDelegate, UITableViewDataSource { ...@@ -209,8 +216,8 @@ extension YHHKRecordsContentVC: UITableViewDelegate, UITableViewDataSource {
return return
} }
let row = sectionArr[indexPath.row] let row = sectionArr[indexPath.row]
if case .edit = row { if case let .edit(_, editModel) = row {
let vc = YHHKRecordsEditContentVC(pageType: .edit) let vc = YHHKRecordsEditContentVC(orderId: orderId, pageType: .edit, editModel: editModel)
navigationController?.pushViewController(vc) navigationController?.pushViewController(vc)
} }
} }
......
...@@ -97,8 +97,7 @@ extension YHHKRecordsSummaryVC { ...@@ -97,8 +97,7 @@ extension YHHKRecordsSummaryVC {
} else { } else {
printLog("YHHKRecordsSummaryVC: 请求失败") printLog("YHHKRecordsSummaryVC: 请求失败")
if let errorMsg = error?.errorMsg, errorMsg.count > 0 { if let errorMsg = error?.errorMsg, errorMsg.count > 0 {
YHHUD.show(.error(message: errorMsg)) YHHUD.flash(message: errorMsg)
YHHUD.hide(afterDelay: 1)
} }
} }
} }
......
//
// YHHKImmigrationEditRecordModel.swift
// galaxy
//
// Created by alexzzw on 2024/9/23.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import Foundation
class YHHKImmigrationEditRecordModel {
var valueChanged: ((Bool) -> Void)?
var id: Int? = nil
var order_id: Int = 0
var users: [YHHKRecordsUserItem] = [] {
didSet {
valueChanged?(isSubmittable)
}
}
var start_date: String = "" {
didSet {
valueChanged?(isSubmittable)
}
}
var end_date: String = "" {
didSet {
valueChanged?(isSubmittable)
}
}
var remark: String = ""
var isSubmittable: Bool {
let basicInfoOk = order_id > 0 && users.count > 0 && start_date.count > 0 && end_date.count > 0
var ret: Bool = basicInfoOk
if let id = id {
ret = ret && id > 0
}
return ret
}
func getParameters() -> [String: Any] {
var parameters: [String: Any] = [:]
if let id = id {
parameters["id"] = id
}
parameters["order_id"] = order_id
parameters["start_date"] = start_date
parameters["end_date"] = end_date
parameters["remark"] = remark
var userDicArr: [[String: Any]] = []
users.forEach { item in
var dict = [String: Any]()
dict["user_type"] = item.user_type
dict["user_id"] = item.user_id
userDicArr.append(dict)
}
parameters["users"] = userDicArr
return parameters
}
}
...@@ -35,6 +35,7 @@ class YHHKRecordsUserItem: SmartCodable { ...@@ -35,6 +35,7 @@ class YHHKRecordsUserItem: SmartCodable {
var user_type: Int = 0 var user_type: Int = 0
var user_id: Int = 0 var user_id: Int = 0
var user_name: String = "" var user_name: String = ""
var isSelected: Bool = false
required init() { required init() {
......
// //
// YHHKRecordsEditPersonnelModel.swift // YHHKRecordsFamilyMembers.swift
// galaxy // galaxy
// //
// Created by alexzzw on 2024/9/21. // Created by alexzzw on 2024/9/23.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved. // Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
// //
import Foundation import Foundation
import SmartCodable
struct YHHKRecordsEditPersonnelModel { class YHHKRecordsFamilyMembers: SmartCodable {
var name: String = "" var list: [YHHKRecordsUserItem] = []
var isSelected: Bool = false
required init() {
}
} }
...@@ -90,9 +90,9 @@ class YHHKRecordsPersonnelSelectCell: UICollectionViewCell { ...@@ -90,9 +90,9 @@ class YHHKRecordsPersonnelSelectCell: UICollectionViewCell {
} }
} }
func setupCellInfo(_ text: String?, isSelected: Bool) { func setupCellInfo(_ text: String?) {
tagLabel.text = text tagLabel.text = text
self.isSelected = isSelected //self.isSelected = isSelected
} }
} }
...@@ -11,8 +11,10 @@ import UIKit ...@@ -11,8 +11,10 @@ import UIKit
class YHHKRecordsRemarkCell: YHResignDocumentCell { class YHHKRecordsRemarkCell: YHResignDocumentCell {
static let cellReuseIdentifier = "YHHKRecordsRemarkCell" static let cellReuseIdentifier = "YHHKRecordsRemarkCell"
private let maxCount = 200
var textViewDidChanged: ((UITextView) -> Void)? var textViewDidChanged: ((UITextView) -> Void)?
var textDidExceedsMaxLimit: ((Int) -> Void)?
private lazy var infoTitleLabel: UILabel = { private lazy var infoTitleLabel: UILabel = {
let label = UILabel() let label = UILabel()
...@@ -93,4 +95,25 @@ extension YHHKRecordsRemarkCell: UITextViewDelegate { ...@@ -93,4 +95,25 @@ extension YHHKRecordsRemarkCell: UITextViewDelegate {
editTipsLabel.isHidden = textView.text.count > 0 editTipsLabel.isHidden = textView.text.count > 0
textViewDidChanged?(textView) textViewDidChanged?(textView)
} }
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
if textView == remarkTextView {
/// 正在输入拼音
if let textRange = textView.markedTextRange, range.length == 0 {
/// 刚输入拼音的时候总字数
let start = textView.offset(from: textView.beginningOfDocument, to: textRange.start)
return start <= maxCount
}
let count = (textView.text?.utf16.count ?? 0) - range.length + text.utf16.count
if count > maxCount && text == "" {
return true
}
guard count > maxCount else {
return true
}
textDidExceedsMaxLimit?(maxCount)
return false
}
return true
}
} }
...@@ -18,16 +18,22 @@ class YHHKRecordsStayingPersonnelCell: YHResignDocumentCell { ...@@ -18,16 +18,22 @@ class YHHKRecordsStayingPersonnelCell: YHResignDocumentCell {
private static let labelToTop: CGFloat = 16 private static let labelToTop: CGFloat = 16
private static let labelHeight: CGFloat = 20 private static let labelHeight: CGFloat = 20
var selectItemAction: ((YHHKRecordsEditPersonnelModel?) -> Void)? var selectItemAction: ((YHHKRecordsUserItem) -> Void)?
var deselectItemAction: ((YHHKRecordsUserItem) -> Void)?
var didHeightChanged: ((CGFloat) -> Void)? var didHeightChanged: ((CGFloat) -> Void)?
var didFinishLoading: (() -> Void)?
var collectionData: [YHHKRecordsEditPersonnelModel] = [] { var collectionData: [YHHKRecordsUserItem] = [] {
didSet { didSet {
hasFinishedLoading = false
infoCollectionView.reloadData() infoCollectionView.reloadData()
} }
} }
private var hasFinishedLoading = false
private var minWidth: CGFloat { private var minWidth: CGFloat {
return (KScreenWidth - YHHKRecordsStayingPersonnelCell.offsetX * 2 - YHHKRecordsStayingPersonnelCell.minimumInteritemSpacing * 3 - 2 * kMargin) / 4.0 return (KScreenWidth - YHHKRecordsStayingPersonnelCell.offsetX * 2 - YHHKRecordsStayingPersonnelCell.minimumInteritemSpacing * 3 - 2 * kMargin) / 4.0
} }
...@@ -115,6 +121,14 @@ class YHHKRecordsStayingPersonnelCell: YHResignDocumentCell { ...@@ -115,6 +121,14 @@ class YHHKRecordsStayingPersonnelCell: YHResignDocumentCell {
func setupCellInfo(title: String?) { func setupCellInfo(title: String?) {
infoTitleLabel.text = title infoTitleLabel.text = title
} }
func defaultSelectItems(rows: [Int]) {
rows.forEach { row in
if collectionData.count > row {
infoCollectionView.selectItem(at: IndexPath(item: row, section: 0), animated: false, scrollPosition: .left)
}
}
}
} }
extension YHHKRecordsStayingPersonnelCell { extension YHHKRecordsStayingPersonnelCell {
...@@ -172,7 +186,7 @@ extension YHHKRecordsStayingPersonnelCell: UICollectionViewDelegate, UICollectio ...@@ -172,7 +186,7 @@ extension YHHKRecordsStayingPersonnelCell: UICollectionViewDelegate, UICollectio
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
if collectionData.count > indexPath.item, let cell = collectionView.dequeueReusableCell(withReuseIdentifier: YHHKRecordsPersonnelSelectCell.cellReuseIdentifier, for: indexPath) as? YHHKRecordsPersonnelSelectCell { if collectionData.count > indexPath.item, let cell = collectionView.dequeueReusableCell(withReuseIdentifier: YHHKRecordsPersonnelSelectCell.cellReuseIdentifier, for: indexPath) as? YHHKRecordsPersonnelSelectCell {
let data = collectionData[indexPath.item] let data = collectionData[indexPath.item]
cell.setupCellInfo(data.name, isSelected: data.isSelected) cell.setupCellInfo(data.user_name)
return cell return cell
} }
return UICollectionViewCell() return UICollectionViewCell()
...@@ -181,7 +195,7 @@ extension YHHKRecordsStayingPersonnelCell: UICollectionViewDelegate, UICollectio ...@@ -181,7 +195,7 @@ extension YHHKRecordsStayingPersonnelCell: UICollectionViewDelegate, UICollectio
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize { func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
if collectionData.count > indexPath.item { if collectionData.count > indexPath.item {
let data = collectionData[indexPath.item] let data = collectionData[indexPath.item]
let attrString = NSAttributedString(string: data.name, attributes: [.font: YHHKRecordsPersonnelSelectCell.labelFont]) let attrString = NSAttributedString(string: data.user_name, attributes: [.font: YHHKRecordsPersonnelSelectCell.labelFont])
var width = attrString.yh_width(containerHeight: YHHKRecordsPersonnelSelectCell.cellHeight) + 2 * YHHKRecordsPersonnelSelectCell.offsetX var width = attrString.yh_width(containerHeight: YHHKRecordsPersonnelSelectCell.cellHeight) + 2 * YHHKRecordsPersonnelSelectCell.offsetX
if width < minWidth { if width < minWidth {
width = minWidth width = minWidth
...@@ -195,22 +209,29 @@ extension YHHKRecordsStayingPersonnelCell: UICollectionViewDelegate, UICollectio ...@@ -195,22 +209,29 @@ extension YHHKRecordsStayingPersonnelCell: UICollectionViewDelegate, UICollectio
return CGSize.zero return CGSize.zero
} }
func collectionView(_ collectionView: UICollectionView, shouldSelectItemAt indexPath: IndexPath) -> Bool { func collectionView(_ collectionView: UICollectionView, willDisplay cell: UICollectionViewCell, forItemAt indexPath: IndexPath) {
if collectionData.count > indexPath.item, let cell = collectionView.cellForItem(at: indexPath) as? YHHKRecordsPersonnelSelectCell { if indexPath.item == collectionView.numberOfItems(inSection: 0) - 1, !hasFinishedLoading {
if cell.isSelected { // CollectionView 中的最后一个 cell 即将显示
collectionView.deselectItem(at: indexPath, animated: true) hasFinishedLoading = true
selectItemAction?(nil) DispatchQueue.main.async {
return false self.didFinishLoading?()
} }
return true
} }
return true
} }
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) { func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
if collectionData.count > indexPath.item, let cell = collectionView.cellForItem(at: indexPath) as? YHHKRecordsPersonnelSelectCell { if collectionData.count > indexPath.item, let cell = collectionView.cellForItem(at: indexPath) as? YHHKRecordsPersonnelSelectCell {
let data = collectionData[indexPath.item] let data = collectionData[indexPath.item]
selectItemAction?(cell.isSelected ? data : nil) data.isSelected = true
selectItemAction?(data)
}
}
func collectionView(_ collectionView: UICollectionView, didDeselectItemAt indexPath: IndexPath) {
if collectionData.count > indexPath.item, let cell = collectionView.cellForItem(at: indexPath) as? YHHKRecordsPersonnelSelectCell {
let data = collectionData[indexPath.item]
data.isSelected = false
deselectItemAction?(data)
} }
} }
} }
...@@ -81,5 +81,61 @@ class YHHKImmigrationRecordsViewModel: YHBaseViewModel { ...@@ -81,5 +81,61 @@ class YHHKImmigrationRecordsViewModel: YHBaseViewModel {
callback(nil, err) callback(nil, err)
} }
} }
func getHKImmigrationRecordsFamilyMembers(orderId: Int, callback: @escaping (_ familyMembers: YHHKRecordsFamilyMembers?, _ error: YHErrorModel?) -> ()) {
let params = ["order_id": orderId]
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.HKImmigrationRecords.stayInHKRecordFamilyMembers
let _ = YHNetRequest.getRequest(url: strUrl,params: params) { json, code in
//1. json字符串 转 对象
printLog("model 是 ==> \(json)")
if json.code == 200 {
guard let dic = json.data?.peel as? [String : Any], let resultModel = YHHKRecordsFamilyMembers.deserialize(from: dic) else {
let err = YHErrorModel(errorCode: YHErrorCode.dictParseError.rawValue, errorMsg: YHErrorCode.dictParseError.description())
callback(nil, err)
return
}
callback(resultModel, nil)
} else {
let err = YHErrorModel(errorCode: Int32(json.code), errorMsg: json.msg.isEmpty ? "" : json.msg)
callback(nil, err)
}
} failBlock: { err in
callback(nil, err)
}
}
func addHKImmigrationRecord(_ params: [String : Any], callBackBlock: @escaping (_ success: Bool, _ error:YHErrorModel?) -> ()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.HKImmigrationRecords.addStayInHKRecord
let _ = YHNetRequest.postRequest(url: strUrl, params: params) { json, code in
//1. json字符串 转 对象
printLog("model 是 ==> \(json)")
if json.code == 200 {
callBackBlock(true, nil)
} else {
let err = YHErrorModel(errorCode: Int32(json.code), errorMsg: json.msg.isEmpty ? "" : json.msg)
callBackBlock(false, err)
}
} failBlock: { err in
callBackBlock(false, err)
}
}
func editHKImmigrationRecord(_ params: [String : Any], callBackBlock: @escaping (_ success: Bool, _ error:YHErrorModel?) -> ()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.HKImmigrationRecords.editStayInHKRecord
let _ = YHNetRequest.postRequest(url: strUrl, params: params) { json, code in
//1. json字符串 转 对象
printLog("model 是 ==> \(json)")
if json.code == 200 {
callBackBlock(true, nil)
} else {
let err = YHErrorModel(errorCode: Int32(json.code), errorMsg: json.msg.isEmpty ? "" : json.msg)
callBackBlock(false, err)
}
} failBlock: { err in
callBackBlock(false, err)
}
}
} }
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