Commit 45e87ffa authored by pete谢兆麟's avatar pete谢兆麟

协作订单数据展示 后端数据有问题

parent e864de3f
...@@ -9,17 +9,32 @@ ...@@ -9,17 +9,32 @@
import UIKit import UIKit
class YHOrderDetailViewController: YHBaseViewController { class YHOrderDetailViewController: YHBaseViewController {
var backDate: ((YHContactItemModel) -> Void)?
var model: YHContactItemModel = YHContactItemModel() var model: YHContactItemModel = YHContactItemModel()
var tableView: UITableView! var tableView: UITableView!
var viewModel: YHServiceOrderSearchViewModel = YHServiceOrderSearchViewModel() var viewModel: YHServiceOrderSearchViewModel = YHServiceOrderSearchViewModel()
var dataSource: [YHContactItemModel] = []
override func viewDidLoad() { override func viewDidLoad() {
super.viewDidLoad() super.viewDidLoad()
setView() setView()
getWhiteList() getWhiteList()
getData()
// Do any additional setup after loading the view. // Do any additional setup after loading the view.
} }
func getData() {
viewModel.getAssistList {[weak self] success, error in
guard let self = self else { return }
if success {
dataSource.append(model)
for item in self.viewModel.arrContactList {
dataSource.append(item)
}
self.tableView.reloadData()
}
}
}
func getWhiteList() { func getWhiteList() {
viewModel.getWhitelist {[weak self] success, error in viewModel.getWhitelist {[weak self] success, error in
guard let self = self else { return } guard let self = self else { return }
...@@ -83,14 +98,20 @@ class YHOrderDetailViewController: YHBaseViewController { ...@@ -83,14 +98,20 @@ class YHOrderDetailViewController: YHBaseViewController {
extension YHOrderDetailViewController: UITableViewDelegate, UITableViewDataSource { extension YHOrderDetailViewController: UITableViewDelegate, UITableViewDataSource {
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
return 1 return dataSource.count
} }
func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell { func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withClass: YHOrderDetailTableViewCell.self) let cell = tableView.dequeueReusableCell(withClass: YHOrderDetailTableViewCell.self)
cell.dataSource = model cell.dataSource = dataSource[indexPath.row]
if indexPath.row > 0 {
cell.otherTypeView.isHidden = false
}
cell.cellBlock = {[weak self] model in cell.cellBlock = {[weak self] model in
guard let self = self else { return } guard let self = self else { return }
if self.backDate != nil {
self.backDate?(model)
}
self.navigationController?.popViewController() self.navigationController?.popViewController()
} }
return cell return cell
...@@ -133,7 +154,8 @@ class YHOrderDetailTableViewCell: UITableViewCell { ...@@ -133,7 +154,8 @@ class YHOrderDetailTableViewCell: UITableViewCell {
var nameLabel: UILabel! var nameLabel: UILabel!
var nameValueLabel: UILabel! var nameValueLabel: UILabel!
var showDetailButton: UIButton! var showDetailButton: UIButton!
var otherTypeView: UIImageView!
var dataSource: YHContactItemModel? { var dataSource: YHContactItemModel? {
didSet { didSet {
updateAllViews() updateAllViews()
...@@ -176,7 +198,7 @@ class YHOrderDetailTableViewCell: UITableViewCell { ...@@ -176,7 +198,7 @@ class YHOrderDetailTableViewCell: UITableViewCell {
make.top.equalTo(8) make.top.equalTo(8)
make.left.equalTo(16) make.left.equalTo(16)
make.right.equalTo(-16) make.right.equalTo(-16)
make.bottom.equalTo(8) make.bottom.equalTo(-8)
} }
titleLabel = { titleLabel = {
...@@ -193,6 +215,20 @@ class YHOrderDetailTableViewCell: UITableViewCell { ...@@ -193,6 +215,20 @@ class YHOrderDetailTableViewCell: UITableViewCell {
make.height.equalTo(24) make.height.equalTo(24)
} }
otherTypeView = {
let view = UIImageView()
view.image = UIImage(named: "service_other_order")
view.isHidden = true
return view
}()
centerView.addSubview(otherTypeView)
otherTypeView.snp.makeConstraints { make in
make.centerY.equalTo(titleLabel.snp.centerY)
make.left.equalTo(titleLabel.snp.right).offset(8)
make.height.equalTo(18)
make.width.equalTo(48)
}
lineView = { lineView = {
let view = UIView() let view = UIView()
view.backgroundColor = UIColor.separatorColor view.backgroundColor = UIColor.separatorColor
......
...@@ -21,6 +21,7 @@ class YHServiceCenterMainViewController: YHBaseViewController { ...@@ -21,6 +21,7 @@ class YHServiceCenterMainViewController: YHBaseViewController {
var orderId: Int = 0 var orderId: Int = 0
var mobile: String = "" var mobile: String = ""
var model: YHContactItemModel = YHContactItemModel() var model: YHContactItemModel = YHContactItemModel()
var oldModel: YHContactItemModel = YHContactItemModel()
var doneCount: Int = 0 var doneCount: Int = 0
private lazy var topBkg : UIView = { private lazy var topBkg : UIView = {
let imagV = UIImageView() let imagV = UIImageView()
...@@ -116,7 +117,7 @@ class YHServiceCenterMainViewController: YHBaseViewController { ...@@ -116,7 +117,7 @@ class YHServiceCenterMainViewController: YHBaseViewController {
extension YHServiceCenterMainViewController { extension YHServiceCenterMainViewController {
func loadData() { func loadData() {
if model.id != -1 && self.navigationController?.viewControllers.count != 1 { if model.id != -1 {
noDataView.isHidden = true noDataView.isHidden = true
nameBgImageView.isHidden = false nameBgImageView.isHidden = false
segmentedView.isHidden = false segmentedView.isHidden = false
...@@ -251,7 +252,11 @@ extension YHServiceCenterMainViewController { ...@@ -251,7 +252,11 @@ extension YHServiceCenterMainViewController {
@objc func pushOrderView() { @objc func pushOrderView() {
let vc = YHOrderDetailViewController() let vc = YHOrderDetailViewController()
vc.model = model vc.model = oldModel
vc.backDate = { [weak self] model in
guard let self = self else { return }
self.model = model
}
self.navigationController?.pushViewController(vc) self.navigationController?.pushViewController(vc)
} }
} }
...@@ -310,6 +315,7 @@ extension YHServiceCenterMainViewController { ...@@ -310,6 +315,7 @@ extension YHServiceCenterMainViewController {
orderId = model.id orderId = model.id
mobile = model.mobile mobile = model.mobile
self.model = model self.model = model
self.oldModel = model
UserDefaults.standard.set(orderId, forKey: "orderIdForPreview") UserDefaults.standard.set(orderId, forKey: "orderIdForPreview")
UserDefaults.standard.synchronize() UserDefaults.standard.synchronize()
for i in 0..<arrItemTitles.count { for i in 0..<arrItemTitles.count {
...@@ -330,34 +336,27 @@ extension YHServiceCenterMainViewController { ...@@ -330,34 +336,27 @@ extension YHServiceCenterMainViewController {
} }
func getStep() { func getStep() {
serviceCenterMainReqVM.getPersonInfoFillStep(params: ["orderId":orderId]) {[weak self] success, error in serviceCenterMainReqVM.getStageInformation(params: ["orderId":orderId]) {[weak self] success, error in
guard let self = self else { return } guard let self = self else { return }
var name = "" var name = ""
if let applicant = self.serviceCenterMainReqVM.informationFillStepModel { let applicant = serviceCenterMainReqVM.personInfoModel
if applicant.applicantName.isEmpty { if applicant.user_name.isEmpty {
name = "尊敬的客户" name = "尊敬的客户"
} else {
name = applicant.user_name
if applicant.sex == 1 {
name = "尊敬的" + name + "先生"
} else if applicant.sex == 2 {
name = "尊敬的" + name + "女士"
} else { } else {
name = applicant.applicantName
if applicant.sex == 1 {
name = "尊敬的" + name + "先生"
} else if applicant.sex == 2 {
name = "尊敬的" + name + "女士"
} else {
}
} }
} }
if doneCount == 6 {
let a: ASAttributedString = .init("您好,\(name),您的资料已全部准备完成,已进入", .font(UIFont.PFSC_R(ofSize: 13)),.foreground(UIColor.mainTextColor)) let a: ASAttributedString = .init("您好,\(name),您现处于", .font(UIFont.PFSC_R(ofSize: 13)),.foreground(UIColor.mainTextColor))
let aa: ASAttributedString = .init(NSAttributedString(string: "全套资料审核"), .font(UIFont.PFSC_M(ofSize: 13)),.foreground(UIColor.brandMainColor)) let aa: ASAttributedString = .init(NSAttributedString(string: applicant.stage_name), .font(UIFont.PFSC_M(ofSize: 13)),.foreground(UIColor.brandMainColor))
let aaa: ASAttributedString = .init("阶段,审核没问题会安排递交入境处哦~", .font(UIFont.PFSC_R(ofSize: 13)),.foreground(UIColor.mainTextColor)) let aaa: ASAttributedString = .init("阶段,让我们一起共同完成您的身份申请之旅吧~", .font(UIFont.PFSC_R(ofSize: 13)),.foreground(UIColor.mainTextColor))
self.nameLabel.attributed.text = a + aa + aaa self.nameLabel.attributed.text = a + aa + aaa
} else {
let a: ASAttributedString = .init("您好,\(name),您现处于", .font(UIFont.PFSC_R(ofSize: 13)),.foreground(UIColor.mainTextColor))
let aa: ASAttributedString = .init(NSAttributedString(string: "信息提交"), .font(UIFont.PFSC_M(ofSize: 13)),.foreground(UIColor.brandMainColor))
let aaa: ASAttributedString = .init("阶段,让我们一起共同完成您的身份申请之旅吧~", .font(UIFont.PFSC_R(ofSize: 13)),.foreground(UIColor.mainTextColor))
self.nameLabel.attributed.text = a + aa + aaa
}
} }
} }
......
...@@ -28,7 +28,7 @@ class YHServiceCenterMainViewModel: YHBaseViewModel { ...@@ -28,7 +28,7 @@ class YHServiceCenterMainViewModel: YHBaseViewModel {
//服务中心进度模型 //服务中心进度模型
var arrDataForSeviceCenterProgress : [YHServiceCenterProgressModel] = [] var arrDataForSeviceCenterProgress : [YHServiceCenterProgressModel] = []
var personInfoModel: YHPersonInfoModel = YHPersonInfoModel()
} }
//请求接口 //请求接口
...@@ -363,6 +363,30 @@ extension YHServiceCenterMainViewModel { ...@@ -363,6 +363,30 @@ extension YHServiceCenterMainViewModel {
callBackBlock(false,err) callBackBlock(false,err)
} }
} }
func getStageInformation( params:[String : Any],callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Order.stage
let _ = YHNetRequest.getRequest(url: strUrl, params: params) { [weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
let dic = json.data
guard let resultModel = YHPersonInfoModel.deserialize(dict: dic as? [AnyHashable : Any]) else {
callBackBlock(false,nil)
return
}
if json.code == 200 {
self.personInfoModel = resultModel
callBackBlock(true,nil)
} else {
let err : YHErrorModel = YHErrorModel(errorCode:Int32(json.code),errorMsg: json.msg)
callBackBlock(false,err)
}
} failBlock: { err in
callBackBlock(false,err)
}
}
} }
//其他方法 //其他方法
...@@ -394,3 +418,10 @@ extension YHServiceCenterMainViewModel { ...@@ -394,3 +418,10 @@ extension YHServiceCenterMainViewModel {
struct YHContactItemHoldModel : SmartCodable { struct YHContactItemHoldModel : SmartCodable {
var orders : [YHContactItemModel] = [] var orders : [YHContactItemModel] = []
} }
struct YHPersonInfoModel: SmartCodable {
var order_id : Int = 0
var user_name : String = ""
var stage_name : String = ""
var sex : Int = 0
}
...@@ -65,4 +65,34 @@ class YHServiceOrderSearchViewModel: YHBaseViewModel { ...@@ -65,4 +65,34 @@ class YHServiceOrderSearchViewModel: YHBaseViewModel {
callBackBlock(false,err) callBackBlock(false,err)
} }
} }
func getAssistList(callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Order.assist
let _ = YHNetRequest.getRequest(url: strUrl) { [weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
if json.code == 200 {
let dic = json.data as! [String: Any]
let data = dic["orders"] as? [Any]
guard let resultModel = [YHContactItemModel].deserialize(array: data) else {
self.arrContactList = []
callBackBlock(false,nil)
return
}
let lastArray = resultModel.compactMap { $0 }
self.arrContactList = lastArray
callBackBlock(true,nil)
} else {
self.arrContactList = []
let error : YHErrorModel = YHErrorModel(errorCode:Int32(json.code),errorMsg: json.msg.count > 0 ? json.msg : "数据错误")
callBackBlock(false,error)
}
} failBlock: { err in
self.arrContactList = []
callBackBlock(false,err)
}
}
} }
...@@ -114,6 +114,10 @@ class YHAllApiName { ...@@ -114,6 +114,10 @@ class YHAllApiName {
//搜索白名单 //搜索白名单
static let bywhitelist = "infoflow/permissiondict/bywhitelist" static let bywhitelist = "infoflow/permissiondict/bywhitelist"
static let byorderid = "infoflow/order/byorderid" static let byorderid = "infoflow/order/byorderid"
//协作订单
static let assist = "infoflow/order/assist-list"
//服务首页信息
static let stage = "super-app/stage/information"
} }
struct Family { struct Family {
......
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "service_other_order@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "service_other_order@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
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