Commit 341a0b73 authored by pete谢兆麟's avatar pete谢兆麟

工作经验bug修复

parent cffdc855
......@@ -15,6 +15,8 @@ class YHMySignatureDetailViewController: YHBaseViewController {
var tableView: UITableView!
var dataSource: [YHWorkItemListModel]?
var viewModel: YHMySignatureDetailViewModel?
var timer = Timer()
var id: Int = 0
override func viewDidLoad() {
super.viewDidLoad()
......@@ -25,6 +27,25 @@ class YHMySignatureDetailViewController: YHBaseViewController {
// Do any additional setup after loading the view.
}
func startTimer() {
let queue = DispatchQueue.global()
timer = Timer.scheduledTimer(withTimeInterval: 2.0, repeats: true) { _ in
queue.async {
self.checkSignatureState()
}
}
}
func checkSignatureState() {
viewModel?.requestSignCallBack("\(id)", callBackBlock: {[weak self] success, error in
guard let self = self else { return }
if success ?? false {
timer.invalidate()
//刷新文件状态
}
})
}
override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
getData()
......@@ -118,5 +139,28 @@ extension YHMySignatureDetailViewController: UITableViewDelegate, UITableViewDat
return CGFloat(82)
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
viewModel?.requestSignaturePageURL("\(id)", callBackBlock: {[weak self] success, error in
guard let self = self else { return }
if error?.errorCode == 1008611 {
//实名逻辑
self.viewModel?.requestSignaturePersonalURL(callBackBlock: {[weak self] success, error in
guard let self = self else { return }
let vc = YHNewWebViewController()
vc.url = self.viewModel?.personalUrl ?? ""
self.navigationController?.pushViewController(vc)
})
} else {
if success ?? false {
self.startTimer()
let vc = YHNewWebViewController()
vc.url = self.viewModel?.pageUrl ?? ""
self.navigationController?.pushViewController(vc)
} else {
YHHUD.flash(message: error?.errorMsg ?? "")
}
}
})
}
}
......@@ -20,3 +20,7 @@ class YHMySignatureDetailModel: YHBaseModel {
var is_show_button: Bool = false
var status: Int = 0
}
class YHMySignatureURLModel: YHBaseModel {
var url: String = ""
}
......@@ -10,6 +10,8 @@ import UIKit
class YHMySignatureDetailViewModel: YHBaseViewModel {
var mainModel: YHMySignatureDetailModel?
var pageUrl: String?
var personalUrl: String?
override init() {
super.init()
......@@ -38,4 +40,69 @@ class YHMySignatureDetailViewModel: YHBaseViewModel {
callBackBlock(false, err)
}
}
func requestSignaturePageURL(_ id: String, callBackBlock:@escaping (_ success: Bool?, _ error: YHErrorModel?)->()) {
// let params: [String : Any] = ["order_id": orderId]
let params: [String : Any] = ["id": id]
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Signature.pageUrl
let _ = YHNetRequest.getRequest(url: strUrl, params: params) { [weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
if json.code == 200 {
// let dic = json.data
// guard let result = YHMySignatureURLModel.deserialize(from: dic as? Dictionary) else {
// callBackBlock(false,nil)
// return
// }
self.pageUrl = json.data as? String
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 requestSignaturePersonalURL(callBackBlock:@escaping (_ success: Bool?, _ error: YHErrorModel?)->()) {
// let params: [String : Any] = ["order_id": orderId]
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Signature.personalUrl
let _ = YHNetRequest.postRequest(url: strUrl) { [weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
if json.code == 200 {
let dic = json.data
guard let result = YHMySignatureURLModel.deserialize(from: dic as? Dictionary) else {
callBackBlock(false,nil)
return
}
self.personalUrl = result.url
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 requestSignCallBack(_ id: String, callBackBlock:@escaping (_ success: Bool?, _ error: YHErrorModel?)->()) {
// let params: [String : Any] = ["order_id": orderId]
let params: [String : Any] = ["id": id]
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Signature.callBack
let _ = YHNetRequest.getRequest(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)
}
}
}
......@@ -17,8 +17,8 @@ class YHMySignatureListViewModel: YHBaseViewModel {
}
func requestSignatureList(_ orderId: String, callBackBlock:@escaping (_ success: Bool?, _ error: YHErrorModel?)->()) {
// let params: [String : Any] = ["order_id": orderId]
let params: [String : Any] = ["order_id": 134154]
let params: [String : Any] = ["order_id": orderId]
// let params: [String : Any] = ["order_id": 134154]
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Signature.list
let _ = YHNetRequest.getRequest(url: strUrl, params: params) { [weak self] json, code in
//1. json字符串 转 对象
......
......@@ -132,6 +132,7 @@ class YHCompanySelectViewController: YHBaseViewController {
if let backLocationStringController = backLocationStringController {
var model = YHCompanyModelListModel()
model.company_name = searchView.text
backLocationStringController(model)
self.navigationController?.popViewController()
}
}
......
......@@ -22,7 +22,6 @@ class YHWorkExperienceListViewController: YHBaseViewController {
viewModel = YHWorkItemListViewModel()
gk_navTitle = "工作经验信息填写"
setView()
getData()
// Do any additional setup after loading the view.
}
......
......@@ -23,9 +23,9 @@ class YHCompanyModel: YHBaseModel {
}
class YHCompanyModelListModel: YHBaseModel {
var company_id: Int?
var company_name: String?
var company_num: Int?
var company_link: String?
var company_introduce: String?
var company_id: Int? = 0
var company_name: String? = ""
var company_num: Int? = 0
var company_link: String? = ""
var company_introduce: String? = ""
}
......@@ -33,6 +33,17 @@ class YHNewWebViewController: YHBaseViewController, WKUIDelegate, WKNavigationDe
// 添加wkwebview
self.view.addSubview(webView)
// 加载网页的进度条
progBar = UIProgressView(frame: CGRect(x: 0, y: 0, width: self.view.frame.width, height: 30))
progBar.progress = 0.0
progBar.tintColor = UIColor.brandMainColor
webView.addSubview(progBar)
// 监听网页加载的进度
webView.addObserver(self, forKeyPath: "estimatedProgress", options: .new, context: nil)
}
override func viewDidDisappear(_ animated: Bool) {
webView.removeObserver(self, forKeyPath: "estimatedProgress")
}
// MARK: - WKNavigationDelegate
......@@ -86,4 +97,23 @@ class YHNewWebViewController: YHBaseViewController, WKUIDelegate, WKNavigationDe
webView.goForward()
}
}
override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {
if keyPath == "estimatedProgress" {
self.progBar.alpha = 1.0
progBar.setProgress(Float(webView.estimatedProgress), animated: true)
//进度条的值最大为1.0
if(self.webView.estimatedProgress >= 1.0) {
UIView.animate(withDuration: 0.3, delay: 0.1, options: .curveEaseInOut, animations: { () -> Void in
self.progBar.alpha = 0.0
}, completion: { (finished:Bool) -> Void in
self.progBar.progress = 0
})
}
}
}
override class func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {
}
}
......@@ -182,5 +182,11 @@ class YHAllApiName {
static let list = "infoflow/my-sign/list"
// 签字详情
static let detail = "infoflow/my-sign/detail"
// 获取签署url
static let pageUrl = "infoflow/sign/page-url"
// 获取实名认证Url
static let personalUrl = "infoflow/sign/personal-auth"
// 获取签署状态
static let callBack = "infoflow/sign/check-is-complete"
}
}
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