Commit ce705927 authored by pete谢兆麟's avatar pete谢兆麟

工作经验部分接口调试

parent 0e6ece70
This diff is collapsed.
......@@ -60,10 +60,6 @@ class YHImageResultViewController: YHBaseViewController {
if controller.isKind(of: YHWorkExperienceViewController.self) {
targetVC = controller
}
if controller.isKind(of: YHWorkIntroductionViewController.self) {
targetVC = controller
}
}
if let targetVC = targetVC {
self.navigationController?.popToViewController(targetVC, animated: true)
......
......@@ -113,12 +113,17 @@ class YHWorkExperienceListViewController: YHBaseViewController {
return
}
}
viewModel?.requestWorkTimeRemarkWorkExperience("\(orderId)", callBackBlock: {[weak self] success, error in
guard let self = self else { return }
})
viewModel?.requestSaveAllWorkExperience("\(orderId)", callBackBlock: {[weak self] success, error in
guard let self = self else { return }
if success ?? false {
self.navigationController?.popViewController(animated: true)
}
})
}
func showDeleteAlert(_ model: YHWorkItemListModel) {
......@@ -188,6 +193,15 @@ extension YHWorkExperienceListViewController: UITableViewDelegate, UITableViewDa
return cell
} else if indexPath.row == 2 {
let cell = tableView.dequeueReusableCell(withClass: YHWorkExperienceListReasonTableViewCell.self)
cell.model = viewModel?.mainModel
cell.clickBlock = { [weak self] value, index in
guard let self = self else { return }
if index == 0 {
self.viewModel?.mainModel.work_time_empty_remark = value
} else {
self.viewModel?.mainModel.work_time_overlap_remark = value
}
}
cell.backgroundColor = .clear
cell.contentView.backgroundColor = .clear
return cell
......
......@@ -25,6 +25,7 @@ class YHWorkExperienceViewController: YHBaseViewController {
var isShowMessageSelect: Bool = true
var isKeyboardShow: Bool = false
var selectEditItem = YHWorkExperienceFileModel()
var fileMessageArray: [String] = ["签字盖章的推荐信", "盖章的工作证明+签字的推荐信", "其他证明(退工单或合同+社保等证明)", "以上均不能提供"]
var renameInputView: YHFileRenameInputView = {
let view = YHFileRenameInputView.inputView(defalutText: "请输入名称")
return view
......@@ -103,13 +104,13 @@ class YHWorkExperienceViewController: YHBaseViewController {
viewModel.requestWorkExample { success, error in
}
viewModel.requestWorkDetail(workExperienceID ?? "") {[weak self] success, error in
viewModel.requestWorkDetail("\(orderID)", workExperienceID ?? "") {[weak self] success, error in
guard let self = self else { return }
self.stepView.currentIndex = self.viewModel.mainModel.step
self.stepView.maxIndex = self.viewModel.mainModel.step
self.updateDataSource()
self.stepView.dataSource = ["基本信息", "工作职责", "工作亮点", "简历/工作总结"]
self.viewModel.requestWorkInfoProject("\(self.viewModel.mainModel.id )") {[weak self] success, error in
self.viewModel.requestWorkInfoProject("\(self.viewModel.mainModel.word_id)") {[weak self] success, error in
guard let self = self else { return }
self.introductionDataSource = success
self.fileDataSource = self.viewModel.mainModel.file
......@@ -162,6 +163,9 @@ class YHWorkExperienceViewController: YHBaseViewController {
self.getTextWithType(type: 3)]
}
func getSelectCompany() -> Int {
return fileMessageArray.firstIndex(where: {$0 == viewModel.mainModel.work_certificate}) ?? 5
}
func setView() {
stepView = {
......@@ -673,21 +677,20 @@ extension YHWorkExperienceViewController: UITableViewDelegate, UITableViewDataSo
} else {
if indexPath.row == 0 {
let cell = tableView.dequeueReusableCell(withClass: YHWorkExperienceTableViewCell.self)
cell.country = self.viewModel.mainModel.location.country
cell.selectDataSource = getTipsWithType()
cell.selectItem = getSelectCompany()
cell.dataSource = baseDataSource?[indexPath.row]
cell.workExperienceBlock = {[weak self] model in
guard let self = self else { return }
self.viewModel.updateModel(model)
let id = model.id
if id != .id1 && id != .id3 && id != .id4 && id != .id7 && id != .id8 && id != .id12 && id != .id14 && id != .id16 && id != .id17 && id != .id18 {
if id != .id1 {
self.updateDataSource()
}
}
cell.companyBlock = {[weak self] company in
cell.selectBlock = {[weak self] index in
guard let self = self else { return }
self.viewModel.updateModel(company)
self.updateDataSource()
self.viewModel.mainModel.work_certificate = fileMessageArray[index.first ?? 0]
}
return cell
} else {
......
......@@ -10,9 +10,12 @@ import Foundation
import SmartCodable
class YHWorkExperienceDetailModel: SmartCodable {
var id: Int = 0
var word_id: Int = 0
var order_id: Int = 0
var company_name: String = ""
var professional_level: Int = 0
var work_certificate: String = ""
var is_famous_enterprise: Int = 0
var duty: String = ""
var entry_time: String = ""
......@@ -20,7 +23,6 @@ class YHWorkExperienceDetailModel: SmartCodable {
var industry: String = ""
var location: YHAddressModel = YHAddressModel()
var location_aboard: Int = 0
var professional_level: Int = 0
var professional_other: String = ""
var position: String = ""
var remark: String = ""
......@@ -32,7 +34,6 @@ class YHWorkExperienceDetailModel: SmartCodable {
var operator_name: String = ""
var operator_english_name: String = ""
var operator_id: Int = 0
var work_certificate: String = ""
var executives_certificate: String = ""
var is_executives: Int = 0
var wduty: String = ""
......
......@@ -19,6 +19,7 @@ enum YHWorkExperienceSelectType: Int {
case structure = 7
case level = 8
case prove = 9
case company = 10
}
enum YHWorkExperienceID: Int {
......
//
// YHWorkExperiencePositionModel.swift
// galaxy
//
// Created by EDY on 2024/11/18.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
import SmartCodable
class YHWorkExperiencePositionModel: SmartCodable {
var position_id: Int = 0
var order_id: Int = 0
var work_id: Int = 0
var position_name: String = ""
var wduty: String = ""
var entry_time: String = ""
var departure_time: String = ""
var experience_scope: String = ""
var experience_sub_scope: String = ""
var is_international_work_experience: Int = 0
var provide_certificate_type: Int = 0
var work_country: String?
var work_city: String?
required init() {
}
}
......@@ -11,6 +11,8 @@ import SmartCodable
class YHWorkModel: SmartCodable {
var count: Int?
var work_time_overlap_remark: String = "" //重叠期
var work_time_empty_remark: String = "" //空窗期
var list: [YHWorkItemListModel]?
required init() {
}
......
......@@ -247,6 +247,8 @@ class YHWorkExperienceItemView: UIView {
}
case .prove:
break
case .company:
break
}
}
nextStepImageView.isHidden = false
......@@ -500,6 +502,10 @@ class YHWorkExperienceItemView: UIView {
block(self.dataSource ?? YHWorkExperienceModel())
}
}
case .company:
YHWorkExperienceCompanySelectView.show { array in
}
}
}
}
......
......@@ -10,6 +10,8 @@ import UIKit
import AttributedString
class YHWorkExperienceListReasonTableViewCell: UITableViewCell {
typealias ExperienceListBlock = (_ value: String, _ index: Int) -> ()
var clickBlock: ExperienceListBlock?
var centerView: UIView!
var titleLabel: UILabel!
var lineView: UIView!
......@@ -24,6 +26,20 @@ class YHWorkExperienceListReasonTableViewCell: UITableViewCell {
var promptsTwoLabel: UILabel!
var messageTwoNumberLabel: UILabel!
var model: YHWorkModel? {
didSet {
messageTextField.text = model?.work_time_empty_remark
if messageTextField.text.count != 0 {
promptsLabel.isHidden = true
messageNumberLabel.text = "\(messageTextField.text.count)/1000"
}
messageTwoTextField.text = model?.work_time_overlap_remark
if messageTwoTextField.text.count != 0 {
promptsTwoLabel.isHidden = true
messageTwoNumberLabel.text = "\(messageTwoTextField.text.count)/1000"
}
}
}
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
......@@ -248,24 +264,32 @@ class YHWorkExperienceListReasonTableViewCell: UITableViewCell {
extension YHWorkExperienceListReasonTableViewCell: UITextViewDelegate {
func textViewDidChange(_ textView: UITextView) {
let number = textView.text.count
let number = textView.text.count
var numberIndex = 0
if textView.text.count != 0 {
if textView == messageTextField {
promptsLabel.isHidden = true
messageNumberLabel.text = "\(number)/1000"
numberIndex = 0
} else {
promptsTwoLabel.isHidden = true
messageTwoNumberLabel.text = "\(number)/1000"
numberIndex = 1
}
} else {
if textView == messageTextField {
promptsLabel.isHidden = false
messageNumberLabel.text = "\(number)/1000"
numberIndex = 0
} else {
promptsTwoLabel.isHidden = false
messageTwoNumberLabel.text = "\(number)/1000"
numberIndex = 1
}
}
if let block = clickBlock {
block(textView.text, numberIndex)
}
}
func textView(_ textView: UITextView, shouldChangeTextIn range: NSRange, replacementText text: String) -> Bool {
......
......@@ -69,7 +69,7 @@ class YHWorkExperiencePositionTableViewCell: UITableViewCell {
titleLabel = {
let label = UILabel()
label.font = UIFont.PFSC_M(ofSize: 17)
label.text = "主申请人工作经历"
label.text = "职位信息"
label.textColor = UIColor.mainTextColor
return label
}()
......@@ -84,7 +84,7 @@ class YHWorkExperiencePositionTableViewCell: UITableViewCell {
subTitleLabel = {
let label = UILabel()
label.font = UIFont.PFSC_R(ofSize: 12)
label.text = "(从最近一份全职工作开始,直至毕业后的第一份工作)"
label.text = "(从该公司第一个职位开始, 直至最后一个职位)"
label.textColor = UIColor.labelTextColor2
return label
}()
......
......@@ -90,6 +90,13 @@ class YHWorkExperienceSelectView: UIView {
view.layer.borderColor = UIColor.brandMainColor.cgColor
view.addTarget(self, action: #selector(agreeClick(sender:)), for: .touchUpInside)
view.tag = 20000 + i
if selectItem.contains(i) {
view.layer.borderWidth = 1
view.backgroundColor = UIColor(hex: 0xebf0f9)
} else {
view.layer.borderWidth = 0
view.backgroundColor = UIColor.contentBkgColor
}
return view
}()
mainItemView.addSubview(bgviewButton)
......@@ -145,21 +152,25 @@ class YHWorkExperienceSelectView: UIView {
}
@objc func agreeClick(sender: UIButton) {
selectItem.removeAll()
selectItem.append(sender.tag - 20000)
sender.isSelected = !sender.isSelected
if sender.isSelected {
sender.layer.borderWidth = 1
sender.backgroundColor = UIColor(hex: 0xebf0f9)
selectItem.append(sender.tag - 20000)
let view = mainItemView.viewWithTag(sender.tag - 20000 + 10000) as! UIImageView
view.image = UIImage(named: "login_privacy_agree")
} else {
sender.layer.borderWidth = 0
sender.backgroundColor = UIColor.contentBkgColor
selectItem.removeAll(where: {$0 == sender.tag - 20000})
let view = mainItemView.viewWithTag(sender.tag - 20000 + 10000) as! UIImageView
view.image = UIImage(named: "login_privacy_disagree_glay")
for i in 0..<(dataSource?.count ?? 0) {
if i == sender.tag - 20000 {
let view = mainItemView.viewWithTag(i + 20000)
view?.layer.borderWidth = 1
view?.backgroundColor = UIColor(hex: 0xebf0f9)
let subview = mainItemView.viewWithTag(i + 10000) as! UIImageView
subview.image = UIImage(named: "login_privacy_agree")
} else {
let view = mainItemView.viewWithTag(i + 20000)
view?.layer.borderWidth = 0
view?.backgroundColor = UIColor.contentBkgColor
let subview = mainItemView.viewWithTag(i + 10000) as! UIImageView
subview.image = UIImage(named: "login_privacy_disagree_glay")
}
}
if let block = selectBlock {
block(selectItem)
}
......
......@@ -12,12 +12,14 @@ import AttributedString
class YHWorkExperienceTableViewCell: UITableViewCell {
typealias WorkExperienceBlock = (_ model: YHWorkExperienceModel) -> ()
typealias CompanyBlock = (_ model: YHCompanyModelListModel) -> ()
typealias SelectBlock = (_ selectIndex: [Int]) -> ()
var companyBlock: CompanyBlock?
var workExperienceBlock: WorkExperienceBlock?
var selectBlock: SelectBlock?
var centerView: UIView!
var titleLabel: UILabel!
var mainItemView: UIView!
var country: String = ""
var selectItem: Int = 5
var dataSource: YHSectionWorkExperienceModel?{
didSet {
updateAllViews()
......@@ -107,27 +109,17 @@ class YHWorkExperienceTableViewCell: UITableViewCell {
let isShow = data?.isShowPrompts ?? false
let message = data?.message ?? ""
var h = 51
if data?.id == .id13 {
h = 71
}
if isShow && message.count == 0 {
h = h + 20
}
let itemView = YHWorkExperienceItemView()
itemView.dataSource = data
itemView.country = country
itemView.block = {[weak self] model in
guard let self = self else { return }
if let block = self.workExperienceBlock {
block(model)
}
}
itemView.companyBlock = {[weak self] company in
guard let self = self else { return }
if let block = self.companyBlock {
block(company)
}
}
mainItemView.addSubview(itemView)
itemView.snp.makeConstraints { make in
make.left.equalTo(18)
......@@ -138,14 +130,15 @@ class YHWorkExperienceTableViewCell: UITableViewCell {
y = y + h
if i == 1 {
let view = YHWorkExperienceSelectView(frame: CGRect(x: 0, y: y, width: Int(KScreenWidth) - 32, height: 386))
view.selectItem = [selectItem]
view.dataSource = selectDataSource
view.selectBlock = { [weak self] index in
guard let self = self else { return }
if let block = self.selectBlock {
block(index)
}
}
mainItemView.addSubview(view)
// itemView.snp.makeConstraints { make in
// make.left.equalTo(18)
// make.top.equalTo(y)
// make.height.equalTo(386)
// make.right.equalTo(-18)
// }
y = y + 386
}
}
......
......@@ -20,8 +20,8 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
func getBaseDataSource(_ isShowPrompt: Bool) -> [YHSectionWorkExperienceModel] {
let item = YHWorkExperienceModel(id: .id1, isNeed: true, title: "用人单位", isUserKeyBoard: true, prompts: "请输入", message: mainModel.company_name, isShowPrompts: isShowPrompt, alertMessage:"请输入")
let item1 = YHWorkExperienceModel(id: .id2, isNeed: true, title: "公司基本情况", isUserKeyBoard: false, prompts: "请选择", message: mainModel.industry, type: .nature, isShowPrompts: isShowPrompt, alertMessage:"请选择")
let item2 = YHWorkExperienceModel(id: .id19, isNeed: true, title: "职位水平类别", isUserKeyBoard: false, prompts: "请选择", message: "\(mainModel.professional_level)", type: .level, isShowPrompts: isShowPrompt, alertMessage:"请选择")
let item1 = YHWorkExperienceModel(id: .id2, isNeed: true, title: "公司基本情况", isUserKeyBoard: false, prompts: "请选择", message: mainModel.industry, type: .company, isShowPrompts: isShowPrompt, alertMessage:"请选择")
let item2 = YHWorkExperienceModel(id: .id3, isNeed: true, title: "职位水平类别", isUserKeyBoard: false, prompts: "请选择", message: "\(mainModel.professional_level)", type: .level, isShowPrompts: isShowPrompt, alertMessage:"请选择")
var section = YHSectionWorkExperienceModel()
section = YHSectionWorkExperienceModel(title: "企业信息", models: [item, item1, item2])
return [section]
......@@ -30,122 +30,17 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
func updateModel(_ item: YHWorkExperienceModel) {
guard let type = item.id else { return }
switch type {
case .id1: // 用人单位
mainModel.company_name = item.message ?? ""
case .id2: // 用人单位性质
mainModel.industry = item.message ?? ""
case .id3: // 用人单位介绍
mainModel.company_introduce = item.message ?? ""
case .id4: // 用人单位官网
mainModel.company_website = item.message ?? ""
case .id5: // 工作地区国家
mainModel.location.country = item.message ?? ""
case .id6: // 工作城市 国内
mainModel.location.area = item.value ?? []
case .id7: // 工作城市国外
mainModel.location.foreign = item.message ?? ""
case .id8: // 职位
mainModel.position = item.message ?? ""
case .id9: // 入职年月
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: // 离职年月
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 ?? ""
}
case .id11: // 工作证明文件
mainModel.work_certificate = item.message ?? ""
case .id12: // 职责性质
mainModel.duty = item.message ?? ""
case .id13: // 是否国际工作经验
mainModel.international_work_experience = Int(item.value?.first ?? "0") ?? 0
case .id14: // 企业人数规模
mainModel.company_member_total = Int(item.message ?? "0") ?? 0
case .id15: // 行政架构层级
mainModel.administrative_level = Int(item.value?.first ?? "0") ?? 0
case .id16: // 下属管理人数
mainModel.company_manage_total = Int(item.message ?? "0") ?? 0
case .id17: // 公司营业额/港元
mainModel.turnover = Int(item.message ?? "0") ?? 0
case .id18: // 公司性质/范畴/所属行业
mainModel.business_nature = item.message ?? ""
case .id19: // 职位水平类型
case .id3: // 职位水平类型
mainModel.professional_level = Int(item.value?.first ?? "0") ?? 0
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 ?? ""
}
default : break
}
}
func updateModel(_ item: YHCompanyModelListModel) {
mainModel.company_name = item.company_name ?? ""
mainModel.company_introduce = item.company_introduce ?? ""
mainModel.company_website = item.company_link ?? ""
}
func updateWduty(_ value: String) {
mainModel.wduty = value
}
......@@ -180,10 +75,10 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
}
}
func requestWorkDetail(_ workId: String, callBackBlock:@escaping (_ success: Bool?, _ error:YHErrorModel?)->()) {
func requestWorkDetail(_ orderId: String, _ workId: String, callBackBlock:@escaping (_ success: Bool?, _ error:YHErrorModel?)->()) {
// let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.WorkExperience.detail + "?id=\(workId)"
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.WorkExperience.detail
let param: [String: Any] = ["id": workId]
let param: [String: Any] = ["work_id": workId, "order_id": orderId]
let _ = YHNetRequest.getRequest(url: strUrl,params: param) { [weak self] json, code in
//1. json字符串 转 对象
......@@ -242,7 +137,7 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
"executives_certificate": mainModel.executives_certificate,
"file": file,
"highlights": mainModel.highlights,
"id": mainModel.id,
// "id": mainModel.id,
"order_id": orderID,
"industry": mainModel.industry,
"international_work_experience": mainModel.international_work_experience,
......@@ -282,7 +177,7 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
callBackBlock(false,nil)
return
}
self.mainModel.id = result.id
// self.mainModel.id = result.id
callBackBlock(true, nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg)
......
//
// YHWorkIntroductionViewModel.swift
// galaxy
//
// Created by EDY on 2024/2/21.
// Copyright © 2024 https://www.galaxy-immi.com. All rights reserved.
//
import UIKit
import Alamofire
class YHWorkIntroductionViewModel: YHBaseViewModel {
var introducetionExampleModels: [YHWorkExampleModel]?
override init() {
super.init()
}
func requestIntroducetionExample(callBackBlock:@escaping (_ success: Bool?, _ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.WorkExperience.projectExample
let _ = YHNetRequest.getRequest(url: strUrl) { [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 result = [YHWorkExampleModel].deserialize(from: dic) else {
callBackBlock(false,nil)
return
}
self.introducetionExampleModels = result as? [YHWorkExampleModel]
callBackBlock(true, nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg)
callBackBlock(false, error)
}
} failBlock: { err in
callBackBlock(false,err)
}
}
// 0保存 1下一步
func saveWorkProjectDetail(_ workModel: YHWorkExperienceDetailModel, projectModel: YHWorkExperienceProjectModel, callBackBlock:@escaping (_ success: Bool, _ error:YHErrorModel?)->()) {
let params: [String : Any] = ["id": projectModel.id ?? 0,
"order_id": workModel.order_id,
"work_id": workModel.id,
"project_name": projectModel.project_name ?? "",
"project_start_time": projectModel.project_start_time ?? "",
"project_end_time": projectModel.project_end_time ?? "",
"project_highlights": projectModel.project_highlights ?? 0,
"create_from_appid": projectModel.create_from_appid ?? 2,
"update_from_appid": projectModel.create_from_appid ?? 2
]
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.WorkExperience.saveProject
let _ = YHNetRequest.postRequest(url: strUrl, params: params) { [weak self] json, code in
guard let self = self else { return }
if json.code == 200 {
callBackBlock(true, nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg)
callBackBlock(false, error)
}
} failBlock: { err in
callBackBlock(false, err)
}
}
func requestFileMessage(_ url: String, callBackBlock:@escaping (_ success: Bool, _ model: YHFileContent?,_ error:YHErrorModel?)->()) {
// let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.WorkExperience.ocrFileContent + "?file_url=\(url)"
let strUrl = YHBaseUrlManager.shared.curOssURL() + YHAllApiName.OCR.normal
let param: [String: Any] = ["url": url]
let _ = YHNetRequest.postRequest(url: strUrl,params:param) { [weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
if json.code == 200 {
guard let dic = json.data?.peel as? [String : Any], let result = YHFileContent.deserialize(from: dic) else {
callBackBlock(false, nil, nil)
return
}
callBackBlock(true, result, nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg)
callBackBlock(false, nil,error)
}
} failBlock: { err in
callBackBlock(false, nil, err)
}
}
}
......@@ -9,8 +9,8 @@
import UIKit
class YHWorkItemListViewModel: YHBaseViewModel {
var mainModel: [YHWorkItemListModel]?
var mainModel: YHWorkModel = YHWorkModel()
var listModel: [YHWorkItemListModel]?
override init() {
super.init()
......@@ -29,8 +29,9 @@ class YHWorkItemListViewModel: YHBaseViewModel {
callBackBlock([],nil)
return
}
self.mainModel = result.list
callBackBlock(self.mainModel, nil)
self.mainModel = result
self.listModel = result.list
callBackBlock(self.listModel, nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg)
callBackBlock([], error)
......@@ -73,4 +74,23 @@ class YHWorkItemListViewModel: YHBaseViewModel {
callBackBlock(false, err)
}
}
func requestWorkTimeRemarkWorkExperience(_ orderId: String, callBackBlock:@escaping (_ success: Bool?, _ error:YHErrorModel?)->()) {
let params: [String : Any] = ["order_id": orderId,
"work_time_overlap_remark": self.mainModel.work_time_overlap_remark,
"work_time_empty_remark": self.mainModel.work_time_empty_remark]
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.WorkExperience.saveWorkTimeRemark
let _ = YHNetRequest.postRequest(url: strUrl, params: params) { [weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
if json.code == 200 {
callBackBlock(true, nil)
} else {
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code), errorMsg: json.msg)
callBackBlock(false, error)
}
} failBlock: { err in
callBackBlock(false, err)
}
}
}
......@@ -225,12 +225,13 @@ class YHAllApiName {
struct WorkExperience {
//工作经验列表
static let list = "infoflow/work/list"
static let list = "infoflow/work/v1/list"
//工作经验详情
static let detail = "infoflow/work/detail"
static let detail = "infoflow/work/v1/workDetail"
//工作经验保存
static let save = "infoflow/work/save"
static let saveAll = "infoflow/work/save-all"
static let saveWorkTimeRemark = "infoflow/work/v1/saveWorkTimeRemark"
//公司列表
static let company = "infoflow/company/search"
//工作经历删除
......
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