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

联调工作经验列表 保存全部 保存 删除 详情

parent 7c923ba8
......@@ -16,7 +16,7 @@ class YHWorkExperienceListViewController: YHBaseViewController {
var viewModel: YHWorkItemListViewModel?
var isMore: Bool = false
var orderId: Int = 0
var showPrompt: Bool = false
override func viewDidLoad() {
super.viewDidLoad()
viewModel = YHWorkItemListViewModel()
......@@ -26,6 +26,11 @@ class YHWorkExperienceListViewController: YHBaseViewController {
// Do any additional setup after loading the view.
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
getData()
}
func getData() {
viewModel?.requestWorkList("\(orderId)", callBackBlock: {[weak self] success, error in
guard let self = self else { return }
......@@ -91,8 +96,21 @@ class YHWorkExperienceListViewController: YHBaseViewController {
}
@objc func submit() {
let vc = YHWorkExperienceViewController()
self.navigationController?.pushViewController(vc, animated: true)
guard let dataSource = dataSource else { return }
for item in dataSource {
if item.vacant_num ?? 0 > 0 {
showPrompt = true
tableView.reloadData()
YHHUD.flash(message: "您的工作经验未全部填写完成,请先填写完成再提交")
return
}
}
viewModel?.requestSaveAllWorkExperience("\(orderId)", callBackBlock: {[weak self] success, error in
guard let self = self else { return }
if success ?? false {
self.navigationController?.popViewController(animated: true)
}
})
}
}
......@@ -103,6 +121,7 @@ extension YHWorkExperienceListViewController: UITableViewDelegate, UITableViewDa
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withClass: YHWorkExperienceListTableViewCell.self)
cell.showPrompt = showPrompt
cell.dataSource = dataSource
if isMore {
cell.more()
......
......@@ -26,7 +26,7 @@ class YHWorkExperienceDetailModel: YHBaseModel {
var old_id: Int = 0
var created_at: String = ""
var updated_at: String = ""
var is_show: Int = 0
var is_show: Int = 1 //1.保存会显示到列表上
var deleted_at: String = ""
var operator_name: String = ""
var operator_english_name: String = ""
......
......@@ -23,6 +23,7 @@ class YHWorkExperienceListTableViewCell: UITableViewCell {
var moreButton: UIButton!
var mainItemView: UIView!
var bottomView: YHWorkItemAddView!
var showPrompt: Bool = false
var dataSource: [YHWorkItemListModel]?{
didSet {
updateAllViews()
......@@ -84,7 +85,7 @@ class YHWorkExperienceListTableViewCell: UITableViewCell {
let label = UILabel()
label.font = UIFont.PFSC_R(ofSize: 12)
label.text = "(从最近一份全职工作开始,直至毕业后的第一份工作)"
label.textColor = UIColor.contentBkgColor
label.textColor = UIColor.subTextColor
return label
}()
centerView.addSubview(subTitleLabel)
......@@ -209,6 +210,7 @@ class YHWorkExperienceListTableViewCell: UITableViewCell {
}
itemView.tag = 4000 + i
itemView.dataSource = dataSource[i]
itemView.showPrompt = showPrompt
mainItemView.addSubview(itemView)
itemView.snp.makeConstraints { make in
make.left.equalTo(18)
......
......@@ -19,7 +19,16 @@ class YHWorkItemView: UIView {
var nextStepImageView: UIImageView!
var deleteButton: UIButton!
var centerButton: UIButton!
var showPrompt: Bool = false {
didSet {
if showPrompt {
explainLabel.textColor = .red
} else {
explainLabel.textColor = UIColor.subTextColor
}
}
}
var dataSource: YHWorkItemListModel? {
didSet {
updateAllViews()
......@@ -55,7 +64,7 @@ class YHWorkItemView: UIView {
let label = UILabel()
label.font = UIFont.PFSC_M(ofSize: 12)
label.textAlignment = .left
label.textColor = UIColor.contentBkgColor
label.textColor = UIColor.subTextColor
return label
}()
addSubview(subTitleLabel)
......@@ -69,7 +78,7 @@ class YHWorkItemView: UIView {
let label = UILabel()
label.font = UIFont.PFSC_M(ofSize: 14)
label.textAlignment = .right
label.textColor = UIColor.contentBkgColor
label.textColor = UIColor.subTextColor
return label
}()
addSubview(explainLabel)
......@@ -133,6 +142,9 @@ class YHWorkItemView: UIView {
} else {
explainLabel.text = (dataSource.entry_time ?? "") + "-" + (dataSource.entry_time ?? "")
}
if dataSource.company_name?.count == 0 {
titleLabel.text = "工作经验\(tag - 4000 + 1)"
}
}
......
......@@ -193,7 +193,7 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
"file": mainModel.file,
"highlights": mainModel.highlights,
"id": mainModel.id,
"orderId": orderID,
"order_id": orderID,
"industry": mainModel.industry,
"international_work_experience": mainModel.international_work_experience,
"is_executives": mainModel.is_executives,
......@@ -233,7 +233,7 @@ class YHWorkExperienceViewModel: YHBaseViewModel {
callBackBlock(false,nil)
return
}
self.mainModel = result
self.mainModel.id = result.id
callBackBlock(true, nil)
} failBlock: { err in
callBackBlock(false, err)
......
......@@ -44,4 +44,16 @@ class YHWorkItemListViewModel: YHBaseViewModel {
callBackBlock(false, err)
}
}
func requestSaveAllWorkExperience(_ orderId: String, callBackBlock:@escaping (_ success: Bool?, _ error:YHErrorModel?)->()) {
let params: [String : Any] = ["order_id": orderId]
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.WorkExperience.saveAll
let _ = YHNetRequest.postRequest(url: strUrl, params: params) { [weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
callBackBlock(true, nil)
} failBlock: { err in
callBackBlock(false, err)
}
}
}
......@@ -246,13 +246,15 @@ class YHNetRequest: NSObject {
extension YHNetRequest {
class func getRequest(url:String, params:[String:Any] = [:], successBlock: SuccessResultType!, failBlock: FailureHandlerType!) -> Request? {
printLog("\n发起请求的URL是===> url = \(url)")
printLog("\n发起请求的参数是===> url = \(params)")
return YHNetRequest().url(url).requestType(.get).params(params).success(successBlock).failed(failBlock).startRequest()
}
class func postRequest(url:String, params:[String:Any] = [:], successBlock: SuccessResultType!, failBlock: FailureHandlerType!) -> Request? {
printLog("\n发起请求的URL是===> url = \(url)")
printLog("\n发起请求的参数是===> url = \(params)")
return YHNetRequest().url(url).requestType(.post).params(params).success(successBlock).failed(failBlock).startRequest()
}
......
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