feat: update app workflows and permissions
This commit is contained in:
@ -21,6 +21,8 @@ final class CooperationOrderListViewController: BaseViewController, UITableViewD
|
||||
private let footerLabel = UILabel()
|
||||
private let emptyLabel = UILabel()
|
||||
private var isApplyingTab = false
|
||||
private var isSearchBarVisible = false
|
||||
private var searchBarHeightConstraint: Constraint?
|
||||
|
||||
override func setupNavigationBar() {
|
||||
title = "合作订单"
|
||||
@ -39,6 +41,8 @@ final class CooperationOrderListViewController: BaseViewController, UITableViewD
|
||||
|
||||
tableView.backgroundColor = .clear
|
||||
tableView.separatorStyle = .none
|
||||
tableView.contentInset.top = AppSpacing.sm
|
||||
tableView.verticalScrollIndicatorInsets.top = AppSpacing.sm
|
||||
tableView.dataSource = self
|
||||
tableView.delegate = self
|
||||
tableView.register(ReferralLeadCell.self, forCellReuseIdentifier: ReferralLeadCell.reuseIdentifier)
|
||||
@ -75,6 +79,7 @@ final class CooperationOrderListViewController: BaseViewController, UITableViewD
|
||||
searchBar.snp.makeConstraints { make in
|
||||
make.top.equalTo(tabBarView.snp.bottom)
|
||||
make.leading.trailing.equalToSuperview()
|
||||
searchBarHeightConstraint = make.height.equalTo(0).constraint
|
||||
}
|
||||
tableView.snp.makeConstraints { make in
|
||||
make.top.equalTo(searchBar.snp.bottom)
|
||||
@ -139,7 +144,7 @@ final class CooperationOrderListViewController: BaseViewController, UITableViewD
|
||||
tabBarView.setSelectedTab(viewModel.selectedTab)
|
||||
isApplyingTab = false
|
||||
}
|
||||
searchBar.isHidden = viewModel.selectedTab != 1
|
||||
updateSearchBarVisibility(viewModel.selectedTab == 1)
|
||||
searchBar.textField.text = viewModel.searchText
|
||||
|
||||
let isEmpty = viewModel.selectedTab == 0 ? viewModel.leads.isEmpty : viewModel.orders.isEmpty
|
||||
@ -163,6 +168,24 @@ final class CooperationOrderListViewController: BaseViewController, UITableViewD
|
||||
tableView.reloadData()
|
||||
}
|
||||
|
||||
private func updateSearchBarVisibility(_ isVisible: Bool) {
|
||||
guard isSearchBarVisible != isVisible else { return }
|
||||
isSearchBarVisible = isVisible
|
||||
searchBarHeightConstraint?.update(offset: isVisible ? 62 : 0)
|
||||
if isVisible {
|
||||
searchBar.isHidden = false
|
||||
} else {
|
||||
searchBar.textField.resignFirstResponder()
|
||||
}
|
||||
UIView.animate(withDuration: 0.2, delay: 0, options: [.curveEaseInOut]) {
|
||||
self.view.layoutIfNeeded()
|
||||
} completion: { _ in
|
||||
if self.isSearchBarVisible == isVisible {
|
||||
self.searchBar.isHidden = !isVisible
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private func tableFooterView(isEmpty: Bool) -> UIView? {
|
||||
guard !isEmpty else { return nil }
|
||||
if viewModel.isLoadingMore {
|
||||
|
||||
Reference in New Issue
Block a user