Commit 604019a2 authored by David黄金龙's avatar David黄金龙

Merge commit 'cb6b23db' into davidhuang

* commit 'cb6b23db':
  //  证件上传
  // 我的证件
  UI走查修改
  // 我的证书
parents d2eafc74 cb6b23db
......@@ -18,7 +18,7 @@ class YHCertificateResourceUploadVC: YHBaseViewController {
var status: YHCertificateUploadStatus = .all
var items:[YHSupplementInfo] = []
var viewModel: YHCertificateViewModel = YHCertificateViewModel()
var categoryInfo: YHCategoryData = YHCategoryData()
var categoryInfo: YHCategoryData!
lazy var tableView: UITableView = {
......@@ -97,8 +97,10 @@ extension YHCertificateResourceUploadVC: UITableViewDelegate, UITableViewDataSou
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let item = items[indexPath.section]
let cell = tableView.dequeueReusableCell(withIdentifier: YHCertificateInfoCell.cellReuseIdentifier, for: indexPath) as! YHCertificateInfoCell
if 0 <= indexPath.section && indexPath.section < items.count {
let item = items[indexPath.section]
cell.updateModel(item)
cell.templateBlock = {
[weak self] in
......@@ -112,6 +114,7 @@ extension YHCertificateResourceUploadVC: UITableViewDelegate, UITableViewDataSou
}
view.show()
}
}
return cell
}
......@@ -122,6 +125,12 @@ extension YHCertificateResourceUploadVC: UITableViewDelegate, UITableViewDataSou
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let vc = YHUploadContentVC()
vc.orderId = orderId
vc.categoryInfo = categoryInfo
if 0 <= indexPath.section && indexPath.section < items.count {
let item = items[indexPath.section]
vc.uploadInfo = item
}
self.navigationController?.pushViewController(vc)
}
......
......@@ -68,8 +68,23 @@ class YHSupplementInfo: SmartCodable {
var applicantName: String = ""
var nameExtra: YHNameExtra = YHNameExtra()
var templateInfo: YHTemplateInfo = YHTemplateInfo()
var auditContent: String = ""
var uploadRequirement: String = ""
var contentUrl: [YHContentUrl] = []
func getStatusName() -> String {
if checkStatus == YHCertificateUploadStatus.review.rawValue {
return "审核中".local
} else if checkStatus == YHCertificateUploadStatus.preUpload.rawValue {
return "待上传".local
} else if checkStatus == YHCertificateUploadStatus.finish.rawValue {
return "已通过".local
} else if checkStatus == YHCertificateUploadStatus.rejected.rawValue {
return "已驳回".local
}
return ""
}
enum CodingKeys: String, CodingKey {
case id = "id"
case name = "name"
......@@ -81,6 +96,8 @@ class YHSupplementInfo: SmartCodable {
case applicantName = "applicant_name"
case nameExtra = "name_extra"
case templateInfo = "template_info"
case auditContent = "audit_content"
case uploadRequirement = "upload_requirement"
case contentUrl = "content_url"
}
......@@ -165,6 +182,13 @@ class YHTemplateInfo: SmartCodable {
var description: String = ""
var materialPath: [YHMaterialPath] = []
func isNeedShowTemplate() -> Bool {
if self.description.isEmpty && self.materialPath.isEmpty {
return false
}
return true
}
required init() {
}
......
......@@ -12,12 +12,15 @@ class YHCertificateNameCell: UITableViewCell {
static let cellReuseIdentifier = "YHCertificateNameCell"
var editBlock:((YHContentUrl)->())?
var whiteView: UIView!
var iconImgV: UIImageView!
var nameLabel: UILabel!
var timeLabel: UILabel!
var editBtn: UIButton!
var contentItem: YHContentUrl!
required init?(coder: NSCoder) {
super.init(coder: coder)
......@@ -29,10 +32,49 @@ class YHCertificateNameCell: UITableViewCell {
}
func updateModel(_ model: YHContentUrl) {
contentItem = model
nameLabel.text = model.name
timeLabel.text = "上传于\(model.updatedAt)"
var suffix = ""
var iconImgName = ""
if !model.url.pathExtension.isEmpty {
suffix = model.url.pathExtension
} else {
suffix = model.suffix
}
if suffix == "jpeg" {
iconImgName = "my_cer_type_jpg"
} else if suffix == "jpg" {
iconImgName = "my_cer_type_jpg"
} else if suffix == "png" {
iconImgName = "my_cer_type_png"
} else if suffix == "pdf" {
iconImgName = "my_cer_type_pdf"
} else if suffix == "doc" || suffix == "docx" {
iconImgName = "my_cer_type_word"
} else if suffix == "ppt" || suffix == "pptx" {
iconImgName = "my_cer_type_ppt"
}
iconImgV.image = UIImage(named: iconImgName)
}
@objc func didEditBtnClicked() {
if let editBlock = editBlock {
editBlock(contentItem)
}
}
func setupUI() {
self.selectionStyle = .none
......@@ -60,6 +102,8 @@ class YHCertificateNameCell: UITableViewCell {
editBtn = UIButton()
editBtn.setImage(UIImage(named:"my_cer_btn_edit"), for:.normal)
editBtn.YH_clickEdgeInsets = UIEdgeInsets(top: 20, left: 20, bottom: 20, right: 20)
editBtn.addTarget(self, action: #selector(didEditBtnClicked), for: .touchUpInside)
whiteView.addSubview(editBtn)
whiteView.snp.makeConstraints { make in
......
......@@ -12,13 +12,48 @@ class YHCertificateTemplateCell: UITableViewCell {
static let cellReuseIdentifier = "YHCertificateTemplateCell"
var templateClick:(()->())?
var templateInfo: YHTemplateInfo? {
didSet {
guard let templateInfo = templateInfo else {
contentView.isHidden = true
return
}
if templateInfo.description.isEmpty && templateInfo.materialPath.isEmpty {
contentView.isHidden = true
return
}
contentView.isHidden = false
if !templateInfo.name.isEmpty {
templateTitleLabel.text = "\(templateInfo.name)示例模版"
} else {
templateTitleLabel.text = ""
}
if !templateInfo.description.isEmpty {
tipsLabel.text = "注意事项: \(templateInfo.description)"
} else {
tipsLabel.text = ""
}
let noTemplate = templateInfo.materialPath.isEmpty
templateView.isHidden = noTemplate
templateView.snp.updateConstraints { make in
make.height.equalTo(noTemplate ? 0.0 : 62.0)
make.bottom.equalToSuperview().offset(noTemplate ? 0.0 : -34.0)
}
self.setNeedsLayout()
self.layoutIfNeeded()
}
}
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
}()
......@@ -27,17 +62,24 @@ class YHCertificateTemplateCell: UITableViewCell {
label.textColor = UIColor.mainTextColor
label.textAlignment = .left
label.font = UIFont.PFSC_M(ofSize:17)
label.text = "身份证示例模版"
label.text = "示例模版"
label.numberOfLines = 0
return label
}()
lazy var templateView: YHCertificateSampleTemplateView = {
let view = YHCertificateSampleTemplateView(frame:CGRectZero)
// let tap = UITapGestureRecognizer(target:self, action:#selector(action(_:)))
// view.addGestureRecognizer(tap)
let tap = UITapGestureRecognizer(target:self, action:#selector(didTemplateTap))
view.addGestureRecognizer(tap)
return view
}()
@objc func didTemplateTap() {
if let templateClick = templateClick {
templateClick()
}
}
required init?(coder: NSCoder) {
super.init(coder: coder)
}
......@@ -49,6 +91,8 @@ class YHCertificateTemplateCell: UITableViewCell {
func createUI() {
self.selectionStyle = .none
contentView.addSubview(templateTitleLabel)
contentView.addSubview(tipsLabel)
contentView.addSubview(templateView)
......@@ -57,7 +101,6 @@ class YHCertificateTemplateCell: UITableViewCell {
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)
......
......@@ -53,20 +53,20 @@ class YHCertificateTemplateView: UIView {
titleLabel.snp.makeConstraints { make in
make.top.equalToSuperview().offset(16)
make.left.right.equalToSuperview()
make.height.equalTo(24)
make.left.equalToSuperview().offset(64)
make.right.equalToSuperview().offset(-64)
make.bottom.equalToSuperview().offset(-12)
}
closeBtn.snp.makeConstraints { make in
make.centerY.equalTo(titleLabel)
make.top.equalToSuperview().offset(16)
make.right.equalToSuperview().offset(-20)
make.width.height.equalTo(24)
}
closeBtn.YH_clickEdgeInsets = UIEdgeInsets(top: 10, left: 10, bottom: 10, right: 10)
closeBtn.YH_clickEdgeInsets = UIEdgeInsets(top: 15, left: 15, bottom: 15, right: 15)
line.snp.makeConstraints { make in
make.left.equalToSuperview().offset(20)
make.right.equalToSuperview().offset(-20)
make.height.equalTo(1)
make.top.equalTo(titleLabel.snp.bottom).offset(12)
make.bottom.equalToSuperview()
}
return view
......@@ -91,6 +91,7 @@ class YHCertificateTemplateView: UIView {
label.textColor = UIColor.mainTextColor
label.textAlignment = .center
label.font = UIFont.PFSC_B(ofSize:17)
label.numberOfLines = 0
label.text = "示例模版"
return label
}()
......@@ -151,9 +152,9 @@ class YHCertificateTemplateView: UIView {
if !model.description.isEmpty {
tipsLabel.text = "注意事项:\(model.description)"
}
templateView.isHidden = model.materialPath.isEmpty
let topMargin = model.description.isEmpty ? 0 : 20
templateView.snp.updateConstraints { make in
make.top.equalTo(tipsLabel.snp.bottom).offset(topMargin)
}
......
......@@ -182,7 +182,11 @@ class YHCertificateUploadSheetView: UIView {
static let sheetView = YHCertificateUploadSheetView(frame:UIScreen.main.bounds)
var action:((YHCertificateUploadType)->())?
// var action:((YHCertificateUploadType)->())?
// 上传文件
var uploadFilesBlock:((URL)->())?
// 上传图片
var uploadImageBlock:((UIImage)->())?
lazy var blackMaskView: UIView = {
let view = UIView()
......@@ -359,8 +363,7 @@ class YHCertificateUploadSheetView: UIView {
extension YHCertificateUploadSheetView {
func show(_ action:((YHCertificateUploadType)->())?) {
self.action = action
func show() {
UIApplication.shared.yhKeyWindow()?.addSubview(self)
}
......@@ -372,7 +375,7 @@ extension YHCertificateUploadSheetView {
if let targetView = sender.view {
let tag = targetView.tag
if let type = YHCertificateUploadType(rawValue:tag), let action = action {
if let type = YHCertificateUploadType(rawValue:tag) {
if type == .photo {
selectPhoto()
......@@ -382,6 +385,9 @@ extension YHCertificateUploadSheetView {
} else if type == .phoneFile {
selectFile()
} else if type == .cancel {
dismiss()
}
}
}
......@@ -445,10 +451,9 @@ extension YHCertificateUploadSheetView: (UIImagePickerControllerDelegate & UINav
func imagePickerController(_ picker: UIImagePickerController, didFinishPickingMediaWithInfo info: [UIImagePickerController.InfoKey : Any]) {
if let image = info[UIImagePickerController.InfoKey.originalImage] as? UIImage {
// if let block = backImage {
// block(image)
uploadImageBlock?(image)
self.dismiss()
// }
} else {
printLog("pick image wrong")
}
......@@ -482,14 +487,11 @@ extension YHCertificateUploadSheetView: UIDocumentPickerDelegate {
let fileCoordinator = NSFileCoordinator()
var error: NSError?
fileCoordinator.coordinate(readingItemAt: url, options:[.forUploading], error: &error) {
newFileUrl in
fileUrl in
if let fileData = try? Data(contentsOf: newFileUrl) {
// 将文件数据上传到服务器
uploadFile(fileData)
uploadFilesBlock?(fileUrl)
dismiss()
}
}
url.stopAccessingSecurityScopedResource()
if let error = error {
......@@ -503,10 +505,4 @@ extension YHCertificateUploadSheetView: UIDocumentPickerDelegate {
func documentPickerWasCancelled(_ controller: UIDocumentPickerViewController) {
}
func uploadFile(_ data: Data) {
let format = String(format: "%.2fM", Double(data.count)/(1024.0 * 1024.0))
print("\(format)")
}
}
......@@ -7,10 +7,10 @@
//
/*
【Usage】
let view = YHFileRenameInputView.inputView(defalutText:"adfasfsf", editBlock: {
let view = YHFileRenameInputView.inputView(defalutText:"adfasfsf")
view.editBlock = {
text in
print("\(text)")
})
}
*/
import UIKit
......@@ -18,7 +18,7 @@ import UIKit
class YHFileRenameInputView: UIView {
static let height = 217.0
var editBlock:((String?)->())?
var editBlock:((String?)->Void)?
lazy var blackMaskView: UIView = {
let view = UIView(frame:UIScreen.main.bounds)
view.backgroundColor = UIColor(hex: 0x0F1214, alpha: 0.5)
......@@ -30,6 +30,8 @@ class YHFileRenameInputView: UIView {
lazy var whiteContentView: UIView = {
let view = UIView()
view.backgroundColor = .white
let tap = UITapGestureRecognizer(target: self, action: #selector(didWhiteContentViewTap))
view.addGestureRecognizer(tap)
return view
}()
......@@ -66,7 +68,7 @@ class YHFileRenameInputView: UIView {
lazy var textField:UITextField = {
let textField = UITextField()
textField.backgroundColor = .clear
textField.placeholder = "请输入文件名称"
textField.attributedPlaceholder = NSAttributedString(string: "请输入文件名称", attributes: [NSAttributedString.Key.foregroundColor : UIColor.placeHolderColor])
textField.font = UIFont.PFSC_M(ofSize: 16)
textField.tintColor = UIColor.brandMainColor
textField.textColor = UIColor.mainTextColor
......@@ -104,10 +106,9 @@ class YHFileRenameInputView: UIView {
fatalError("init(coder:) has not been implemented")
}
static func inputView(defalutText:String?, editBlock:((String?)->())?)-> YHFileRenameInputView {
static func inputView(defalutText:String?)-> YHFileRenameInputView {
let view = YHFileRenameInputView(frame:CGRect(x: 0, y: 0, width:KScreenWidth, height:Self.height))
view.textField.text = defalutText
view.editBlock = editBlock
return view
}
......@@ -181,15 +182,24 @@ extension YHFileRenameInputView {
UIApplication.shared.yhKeyWindow()?.endEditing(true)
}
@objc func didWhiteContentViewTap() {
self.textField.becomeFirstResponder()
}
@objc func didClickCancelBtn() {
dismiss()
}
@objc func didClickConfirmBtn() {
dismiss()
if isEmptyString(textField.text) {
YHHUD.flash(message: "重命名不可为空")
return
}
if let editBlock = editBlock {
editBlock(textField.text)
}
dismiss()
}
}
......
......@@ -136,8 +136,8 @@ class YHCertificateViewModel: YHBaseViewModel {
}
}
func uploadCertificates(params:[String : Any], isSilient:Bool = false, callBack:@escaping ((Bool)->())) {
// 上传/重命名/删除 证件
func updateCertificates(params:[String : Any], isSilient:Bool = false, callBack:@escaping ((Bool)->())) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Certificate.certificateUploadApi
......@@ -145,7 +145,7 @@ class YHCertificateViewModel: YHBaseViewModel {
YHHUD.show(.progress(message: "数据加载中..."))
}
let _ = YHNetRequest.getRequest(url: strUrl, params:params) { json, code in
let _ = YHNetRequest.postRequest(url: strUrl, params:params) { json, code in
if !isSilient {
YHHUD.hide()
......
......@@ -166,17 +166,77 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
case .id9:
mainModel.certificates.cn_identity_card.issue_at = item.message ?? ""
case .id10:
let format = DateFormatter()
format.dateFormat = "yyyy-MM-dd"
if let selectDate = format.date(from:item.message ?? "") {
let selectTimeInterval = selectDate.timeIntervalSince1970
let currentTimeInterval = Date().timeIntervalSince1970
if selectTimeInterval > currentTimeInterval {
YHHUD.flash(message: "签发日期须早于当前日期")
} else {
guard let endDate = format.date(from: mainModel.certificates.cn_identity_card.issue_date_end_at) else {
mainModel.certificates.cn_identity_card.issue_date_start_at = item.message ?? ""
return
}
let endTimeInterval = endDate.timeIntervalSince1970
if selectTimeInterval > endTimeInterval {
YHHUD.flash(message: "签发日期须早于早于届满日期")
} else {
mainModel.certificates.cn_identity_card.issue_date_start_at = item.message ?? ""
}
}
}
case .id11:
let format = DateFormatter()
format.dateFormat = "yyyy-MM-dd"
if let selectDate = format.date(from:item.message ?? ""), let startDate = format.date(from:mainModel.certificates.cn_identity_card.issue_date_start_at) {
let selectTimeInterval = selectDate.timeIntervalSince1970
let startTimeInterval = startDate.timeIntervalSince1970
if selectTimeInterval < startTimeInterval {
YHHUD.flash(message: "届满日期须晚于签发日期")
} else {
mainModel.certificates.cn_identity_card.issue_date_end_at = item.message ?? ""
}
} else {
mainModel.certificates.cn_identity_card.issue_date_end_at = item.message ?? ""
}
case .id12:
mainModel.certificates.hk_macao_pass.number = item.message ?? ""
case .id13:
mainModel.certificates.hk_macao_pass.issue_at = item.message ?? ""
case .id14:
let format = DateFormatter()
format.dateFormat = "yyyy-MM-dd"
if let selectDate = format.date(from:item.message ?? "") {
let selectTimeInterval = selectDate.timeIntervalSince1970
let currentTimeInterval = Date().timeIntervalSince1970
if selectTimeInterval > currentTimeInterval {
YHHUD.flash(message: "签发日期须早于当前日期")
} else {
guard let endDate = format.date(from: mainModel.certificates.hk_macao_pass.issue_date_end_at) else {
mainModel.certificates.hk_macao_pass.issue_date_start_at = item.message ?? ""
return
}
let endTimeInterval = endDate.timeIntervalSince1970
if selectTimeInterval > endTimeInterval {
YHHUD.flash(message: "签发日期须早于早于届满日期")
} else {
mainModel.certificates.hk_macao_pass.issue_date_start_at = item.message ?? ""
}
}
}
case .id15:
let format = DateFormatter()
format.dateFormat = "yyyy-MM-dd"
if let selectDate = format.date(from:item.message ?? ""), let startDate = format.date(from:mainModel.certificates.hk_macao_pass.issue_date_start_at) {
let selectTimeInterval = selectDate.timeIntervalSince1970
let startTimeInterval = startDate.timeIntervalSince1970
if selectTimeInterval < startTimeInterval {
YHHUD.flash(message: "届满日期须晚于签发日期")
} else {
mainModel.certificates.hk_macao_pass.issue_date_end_at = item.message ?? ""
}
}
case .id16:
mainModel.certificates.passport.passport_type = item.value?.first?.int ?? 0
case .id17:
......@@ -184,9 +244,38 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
case .id18:
mainModel.certificates.passport.issue_at = item.message ?? ""
case .id19:
let format = DateFormatter()
format.dateFormat = "yyyy-MM-dd"
if let selectDate = format.date(from:item.message ?? "") {
let selectTimeInterval = selectDate.timeIntervalSince1970
let currentTimeInterval = Date().timeIntervalSince1970
if selectTimeInterval > currentTimeInterval {
YHHUD.flash(message: "签发日期须早于当前日期")
} else {
guard let endDate = format.date(from: mainModel.certificates.passport.issue_date_end_at) else {
mainModel.certificates.passport.issue_date_start_at = item.message ?? ""
return
}
let endTimeInterval = endDate.timeIntervalSince1970
if selectTimeInterval > endTimeInterval {
YHHUD.flash(message: "签发日期须早于早于届满日期")
} else {
mainModel.certificates.passport.issue_date_start_at = item.message ?? ""
}
}
}
case .id20:
let format = DateFormatter()
format.dateFormat = "yyyy-MM-dd"
if let selectDate = format.date(from:item.message ?? ""), let startDate = format.date(from:mainModel.certificates.passport.issue_date_start_at) {
let selectTimeInterval = selectDate.timeIntervalSince1970
let startTimeInterval = startDate.timeIntervalSince1970
if selectTimeInterval < startTimeInterval {
YHHUD.flash(message: "届满日期须晚于签发日期")
} else {
mainModel.certificates.passport.issue_date_end_at = item.message ?? ""
}
}
case .id21:
mainModel.username = item.message ?? ""
case .id22:
......@@ -194,7 +283,17 @@ class YHMainApplicantInformationViewModel: YHBaseViewModel {
case .id23:
mainModel.surname = item.message ?? ""
case .id24:
let format = DateFormatter()
format.dateFormat = "yyyy-MM-dd"
if let selectDate = format.date(from:item.message ?? "") {
let selectTimeInterval = selectDate.timeIntervalSince1970
let currentTimeInterval = Date().timeIntervalSince1970
if selectTimeInterval > currentTimeInterval {
YHHUD.flash(message: "入学日期须早于当前日期")
} else {
mainModel.birthday = item.message ?? ""
}
}
case .id25:
mainModel.birth_place_aboard = item.value?.first?.int ?? 0
case .id26:
......
......@@ -182,9 +182,9 @@ extension YHWorkExperienceListViewController: UITableViewDelegate, UITableViewDa
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
let number = dataSource?.count ?? 0
if number == 0 {
return CGFloat(16 + 216)
return CGFloat(23 + 216)
} else {
return CGFloat(16 + 154 + 76 * number)
return CGFloat(23 + 154 + 76 * number)
}
}
}
......
......@@ -89,7 +89,7 @@ class YHWorkExperienceViewController: YHBaseViewController {
}
tableView = {
let tableView = UITableView(frame:.zero, style:.plain)
let tableView = UITableView(frame: .zero, style: .grouped)
if #available(iOS 11.0, *) {
tableView.contentInsetAdjustmentBehavior = .never
}
......@@ -528,4 +528,21 @@ extension YHWorkExperienceViewController: UITableViewDelegate, UITableViewDataSo
return CGFloat(h + 52 + 14)
}
}
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let view = UIView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: 7))
return view
}
func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 7
}
func tableView(_ tableView: UITableView, viewForFooterInSection section: Int) -> UIView? {
return UIView()
}
func tableView(_ tableView: UITableView, heightForFooterInSection section: Int) -> CGFloat {
return 0.01
}
}
......@@ -291,22 +291,29 @@ class YHWorkIntroductionViewController: YHBaseViewController {
view.endEditing(true)
YHDatePickView.show(type: .yyyymmdd, title: "请选择开始时间") { date in
if date > self.dataSource.project_end_time ?? "" && self.dataSource.project_end_time?.count ?? 0 > 0 {
self.startTextField.text = ""
self.dataSource.project_start_time = ""
YHHUD.flash(message: "开始时间不能晚于结束时间")
} else {
let format = DateFormatter()
format.dateFormat = "yyyy-MM-dd"
if let selectDate = format.date(from:date) {
let selectTimeInterval = selectDate.timeIntervalSince1970
let currentTimeInterval = Date().timeIntervalSince1970
if selectTimeInterval > currentTimeInterval {
YHHUD.flash(message: "开始时间不能晚于当前时间")
} else {
self.startTextField.text = date
self.dataSource.project_start_time = date
}
}
}
}
}
@objc func endClick() {
view.endEditing(true)
YHDatePickView.show(type: .yyyymmdd, title: "请选择结束时间") { date in
if date < self.dataSource.project_start_time ?? "" {
self.endTextField.text = ""
self.dataSource.project_end_time = ""
YHHUD.flash(message: "结束时间不能早于开始时间")
} else {
self.endTextField.text = date
......
......@@ -62,7 +62,7 @@ class YHWorkExperienceListTableViewCell: UITableViewCell {
centerView.snp.makeConstraints { make in
make.left.equalTo(16)
make.right.equalTo(-16)
make.top.equalTo(7)
make.top.equalTo(14)
make.bottom.equalTo(-7)
}
......
......@@ -61,7 +61,7 @@ class YHWorkHighlightsTableViewCell: UITableViewCell {
contentView.addSubview(centerView)
centerView.snp.makeConstraints { make in
make.left.right.bottom.equalToSuperview()
make.top.equalTo(14)
make.top.equalTo(7)
}
titleLabel = {
......
......@@ -57,7 +57,7 @@ class YHWorkResponsibilitiesTableViewCell: UITableViewCell {
contentView.addSubview(centerView)
centerView.snp.makeConstraints { make in
make.left.right.bottom.equalToSuperview()
make.top.equalTo(14)
make.top.equalTo(7)
}
titleLabel = {
......
......@@ -88,19 +88,36 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
case .id8: // 职位
mainModel.position = item.message ?? ""
case .id9: // 入职年月
if item.message ?? "" > mainModel.departure_time && mainModel.departure_time.count != 0 {
mainModel.entry_time = ""
if item.message != "" {
YHHUD.flash(message: "入职日期不能晚于离职日期")
let format = DateFormatter()
format.dateFormat = "yyyy-MM"
if let selectDate = format.date(from:item.message ?? "") {
let selectTimeInterval = selectDate.timeIntervalSince1970
let currentTimeInterval = Date().timeIntervalSince1970
if selectTimeInterval > currentTimeInterval {
YHHUD.flash(message: "入职日期不能晚于当前日期")
} else {
guard let endDate = format.date(from: mainModel.departure_time) else {
mainModel.entry_time = item.message ?? ""
return
}
let endTimeInterval = endDate.timeIntervalSince1970
if selectTimeInterval > endTimeInterval {
YHHUD.flash(message: "入职日期不能晚于离职日期")
} else {
mainModel.entry_time = item.message ?? ""
}
}
}
case .id10: // 离职年月
if item.message ?? "" < mainModel.entry_time {
mainModel.departure_time = ""
if item.message != "" {
let format = DateFormatter()
format.dateFormat = "yyyy-MM"
if let selectDate = format.date(from:item.message ?? ""), let startDate = format.date(from:mainModel.entry_time) {
let selectTimeInterval = selectDate.timeIntervalSince1970
let startTimeInterval = startDate.timeIntervalSince1970
if selectTimeInterval < startTimeInterval {
YHHUD.flash(message: "离职日期不能早于入职日期")
} else {
mainModel.departure_time = item.message ?? ""
}
} else {
mainModel.departure_time = item.message ?? ""
......@@ -126,10 +143,41 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
case .id20: // 高管证明文件
mainModel.executives_certificate = item.message ?? ""
case .id21: // 高管在职开始时间
let format = DateFormatter()
format.dateFormat = "yyyy-MM"
if let selectDate = format.date(from:item.message ?? "") {
let selectTimeInterval = selectDate.timeIntervalSince1970
let currentTimeInterval = Date().timeIntervalSince1970
if selectTimeInterval > currentTimeInterval {
YHHUD.flash(message: "高管在职开始时间须早于当前日期")
} else {
guard let endDate = format.date(from: mainModel.top_manager_end_at) else {
mainModel.top_manager_start_at = item.message ?? ""
return
}
let endTimeInterval = endDate.timeIntervalSince1970
if selectTimeInterval > endTimeInterval {
YHHUD.flash(message: "高管在职开始时间须早于离职日期")
} else {
mainModel.top_manager_start_at = item.message ?? ""
}
}
}
case .id22: // 高管在职结束时间
let format = DateFormatter()
format.dateFormat = "yyyy-MM"
if let selectDate = format.date(from:item.message ?? ""), let startDate = format.date(from:mainModel.top_manager_start_at) {
let selectTimeInterval = selectDate.timeIntervalSince1970
let startTimeInterval = startDate.timeIntervalSince1970
if selectTimeInterval < startTimeInterval {
YHHUD.flash(message: "高管在职结束时间须晚于开始日期")
} else {
mainModel.top_manager_end_at = item.message ?? ""
}
} else {
mainModel.top_manager_end_at = item.message ?? ""
}
}
}
func updateModel(_ item: YHCompanyModelListModel) {
......
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