Commit 24f42e23 authored by David黄金龙's avatar David黄金龙

服务中心 第二个主界面

parent e741ca53
...@@ -154,6 +154,7 @@ extension YHServiceCenterMainViewController : UITableViewDelegate,UITableViewDat ...@@ -154,6 +154,7 @@ extension YHServiceCenterMainViewController : UITableViewDelegate,UITableViewDat
tableView.deselectRow(at: indexPath, animated: true) tableView.deselectRow(at: indexPath, animated: true)
printLog("点击了 tableView Cell \(indexPath.row)") printLog("点击了 tableView Cell \(indexPath.row)")
let vc = YHServiceCenterSecondViewController() let vc = YHServiceCenterSecondViewController()
vc.orderId = serviceCenterMainReqVM.arrContactList[indexPath.row].id
self.navigationController?.pushViewController(vc) self.navigationController?.pushViewController(vc)
} }
} }
...@@ -10,13 +10,11 @@ import UIKit ...@@ -10,13 +10,11 @@ import UIKit
//服务中心 //服务中心
class YHServiceCenterSecondViewController: YHBaseViewController { class YHServiceCenterSecondViewController: YHBaseViewController {
var orderId : Int?
// private let serviceCenterMainReqVM : YHServiceCenterMainViewModel = YHServiceCenterMainViewModel() private let serviceCenterMainReqVM : YHServiceCenterMainViewModel = YHServiceCenterMainViewModel()
private var arrData : [YHContactMainItemStatusModel] = []
private var unfoldFlag : Bool = true //是否展开 private var unfoldFlag : Bool = true //是否展开
private lazy var downArrowImagev : UIImageView = { private lazy var downArrowImagev : UIImageView = {
let imagV = UIImageView(frame: CGRect(x: KScreenWidth - 16 - 32, y: 17, width: 24, height: 24)) let imagV = UIImageView(frame: CGRect(x: KScreenWidth - 16 - 32, y: 17, width: 16, height: 16))
imagV.image = UIImage(named: "service_center_down_arrow") imagV.image = UIImage(named: "service_center_down_arrow")
imagV.contentMode = .scaleAspectFill imagV.contentMode = .scaleAspectFill
return imagV return imagV
...@@ -50,12 +48,10 @@ class YHServiceCenterSecondViewController: YHBaseViewController { ...@@ -50,12 +48,10 @@ class YHServiceCenterSecondViewController: YHBaseViewController {
extension YHServiceCenterSecondViewController { extension YHServiceCenterSecondViewController {
func loadData() { func loadData() {
// self.serviceCenterMainReqVM.getContactList { success, error in guard let orderId = orderId else { return}
// if success == true { self.serviceCenterMainReqVM.getContactStatus(params: ["orderId":orderId]) { success, error in
// self.homeTableView.reloadData()
// } }
// self.homeTableView.reloadData()
// }
} }
func setupUI() { func setupUI() {
...@@ -63,13 +59,7 @@ extension YHServiceCenterSecondViewController { ...@@ -63,13 +59,7 @@ extension YHServiceCenterSecondViewController {
gk_navBarAlpha = 1.0 gk_navBarAlpha = 1.0
gk_navLineHidden = false gk_navLineHidden = false
let arr = [1,2,3]
for item in arr {
let model = YHContactMainItemStatusModel()
model.type = item
model.isFinished = false
arrData.append(model)
}
view.addSubview(topBkg) view.addSubview(topBkg)
topBkg.snp.makeConstraints { make in topBkg.snp.makeConstraints { make in
...@@ -82,11 +72,9 @@ extension YHServiceCenterSecondViewController { ...@@ -82,11 +72,9 @@ extension YHServiceCenterSecondViewController {
homeTableView.dataSource = self homeTableView.dataSource = self
view.addSubview(homeTableView) view.addSubview(homeTableView)
homeTableView.snp.makeConstraints { make in homeTableView.snp.makeConstraints { make in
make.left.right.equalToSuperview()
make.top.equalTo(k_Height_NavigationtBarAndStatuBar) make.top.equalTo(k_Height_NavigationtBarAndStatuBar)
make.bottom.equalToSuperview() make.left.right.bottom.equalToSuperview()
} }
} }
@objc func clickUnfoldView() { @objc func clickUnfoldView() {
...@@ -112,24 +100,37 @@ extension YHServiceCenterSecondViewController : UITableViewDelegate,UITableViewD ...@@ -112,24 +100,37 @@ extension YHServiceCenterSecondViewController : UITableViewDelegate,UITableViewD
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int { func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if unfoldFlag == true { if unfoldFlag == true {
return arrData.count return self.serviceCenterMainReqVM.arrContactStausItmes.count
} }
return 0 return 0
} }
func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat { func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 60 return 40
} }
func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? { func tableView(_ tableView: UITableView, viewForHeaderInSection section: Int) -> UIView? {
let view = UIView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: 60)) let view = UIView(frame: CGRect(x: 0, y: 0, width: KScreenWidth, height: 40))
view.backgroundColor = .clear view.backgroundColor = .clear
let lable = UILabel(frame: CGRect(x: 16, y: 0, width: 200, height: 60)) let lable = UILabel(frame: CGRect(x: 16, y: 0, width: 200, height: 40))
lable.text = "身份申请" lable.text = "身份申请"
lable.font = kFont(size: 17) lable.font = UIFont.PFSC_M(ofSize: 17)
lable.textColor = .mainTextColor
view.addSubview(lable) view.addSubview(lable)
view.addSubview(self.downArrowImagev)
lable.snp.makeConstraints { make in
make.top.bottom.equalToSuperview()
make.left.equalTo(kMargin)
}
view.addSubview(downArrowImagev)
downArrowImagev.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.right.equalTo(-kMargin)
make.width.height.equalTo(16)
}
let tap = UITapGestureRecognizer(target: self, action: #selector(clickUnfoldView)) let tap = UITapGestureRecognizer(target: self, action: #selector(clickUnfoldView))
view.addGestureRecognizer(tap) view.addGestureRecognizer(tap)
...@@ -153,14 +154,18 @@ extension YHServiceCenterSecondViewController : UITableViewDelegate,UITableViewD ...@@ -153,14 +154,18 @@ extension YHServiceCenterSecondViewController : UITableViewDelegate,UITableViewD
let newCell = tableView.dequeueReusableCell(withClass: YHContractMainItemStatusCell.self) let newCell = tableView.dequeueReusableCell(withClass: YHContractMainItemStatusCell.self)
newCell.selectionStyle = .none newCell.selectionStyle = .none
newCell.dataModel = arrData[indexPath.row] newCell.dataModel = self.serviceCenterMainReqVM.arrContactStausItmes[indexPath.row]
return newCell return newCell
} }
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
tableView.deselectRow(at: indexPath, animated: true) tableView.deselectRow(at: indexPath, animated: true)
printLog("点击了 \(indexPath.section)section --- \(indexPath.row)row") if indexPath.row == 0 {
navigationController?.pushViewController(YHInformationPerfectListVC())
navigationController?.pushViewController(YHInformationPerfectListVC()) } else if indexPath.row == 1 {
} else {
}
} }
} }
...@@ -10,7 +10,7 @@ import UIKit ...@@ -10,7 +10,7 @@ import UIKit
import SmartCodable import SmartCodable
struct YHContactItemModel : SmartCodable { struct YHContactItemModel : SmartCodable {
var id : String = "" var id : Int = -1
var orderSn : String = "" var orderSn : String = ""
var username : String = "" var username : String = ""
var productName : String = "" var productName : String = ""
......
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
// //
import UIKit import UIKit
import SmartCodable
class YHContactMainItemStatusModel { class YHContactMainItemStatusModel {
var type : Int = -1 { var type : Int = -1 {
...@@ -16,7 +17,7 @@ class YHContactMainItemStatusModel { ...@@ -16,7 +17,7 @@ class YHContactMainItemStatusModel {
itemName = "信息完善" itemName = "信息完善"
} else if type == 2 { } else if type == 2 {
iconName = "service_center_sfsq_zlsc_icon" iconName = "service_center_sfsq_zlsc_icon"
itemName = "资料上传" itemName = "证件上传"
} else if type == 3 { } else if type == 3 {
iconName = "service_center_sfsq_wdpf_icon" iconName = "service_center_sfsq_wdpf_icon"
itemName = "我的评分" itemName = "我的评分"
...@@ -24,7 +25,12 @@ class YHContactMainItemStatusModel { ...@@ -24,7 +25,12 @@ class YHContactMainItemStatusModel {
} }
} }
var isFinished : Bool = false var isFinished : Bool = false
var iconName : String = "" var iconName : String = ""
var itemName : String = "" var itemName : String = ""
} }
struct YHContactMainItemStatusModel2 : SmartCodable {
var fill_info_step : Int = 0
}
...@@ -55,19 +55,12 @@ class YHContractMainItemStatusCell: UITableViewCell { ...@@ -55,19 +55,12 @@ class YHContractMainItemStatusCell: UITableViewCell {
private lazy var goUnfinishHoldView : UIView = { private lazy var goUnfinishHoldView : UIView = {
let view = UIView() let view = UIView()
view.layer.cornerRadius = 6 view.layer.cornerRadius = kCornerRadius6
view.clipsToBounds = true view.clipsToBounds = true
let gradientLayer = CAGradientLayer()
gradientLayer.frame = bounds
gradientLayer.colors = UIColor.arrBrandGradaterColors
gradientLayer.locations = [0,1].map { NSNumber(value: $0) }
gradientLayer.startPoint = CGPoint(x: 0.12, y: 0.25)
gradientLayer.endPoint = CGPoint(x: 0.38, y: 0.25)
view.layer.addSublayer(gradientLayer)
let lable = UILabel() let lable = UILabel()
lable.font = kFont(size: 14) lable.font = UIFont.PFSC_M(ofSize: 13)
lable.text = "去完善" lable.text = "去完善"
lable.textAlignment = .center lable.textAlignment = .center
lable.textColor = .white lable.textColor = .white
...@@ -99,7 +92,7 @@ extension YHContractMainItemStatusCell { ...@@ -99,7 +92,7 @@ extension YHContractMainItemStatusCell {
func setupUI() { func setupUI() {
let holdView = UIView() let holdView = UIView()
holdView.backgroundColor = .white holdView.backgroundColor = .white
holdView.layer.cornerRadius = 12 holdView.layer.cornerRadius = kCornerRadius6
holdView.clipsToBounds = true holdView.clipsToBounds = true
backgroundColor = .clear backgroundColor = .clear
...@@ -107,10 +100,10 @@ extension YHContractMainItemStatusCell { ...@@ -107,10 +100,10 @@ extension YHContractMainItemStatusCell {
contentView.addSubview(holdView) contentView.addSubview(holdView)
holdView.snp.makeConstraints { make in holdView.snp.makeConstraints { make in
make.top.equalToSuperview().offset(16) make.top.equalToSuperview().offset(kMargin)
make.bottom.equalToSuperview() make.bottom.equalToSuperview()
make.left.equalTo(16) make.left.equalTo(kMargin)
make.right.equalTo(-16) make.right.equalTo(-kMargin)
} }
holdView.addSubview(iconImageV) holdView.addSubview(iconImageV)
...@@ -133,17 +126,20 @@ extension YHContractMainItemStatusCell { ...@@ -133,17 +126,20 @@ extension YHContractMainItemStatusCell {
holdView.addSubview(goUnfinishHoldView) holdView.addSubview(goUnfinishHoldView)
goUnfinishHoldView.snp.makeConstraints { make in goUnfinishHoldView.snp.makeConstraints { make in
make.centerY.equalToSuperview() make.centerY.equalToSuperview()
make.right.equalTo(-16) make.right.equalTo(-kMargin)
make.height.equalTo(34) make.height.equalTo(34)
make.width.equalTo(76) make.width.equalTo(76)
} }
goUnfinishHoldView.layoutIfNeeded()
goUnfinishHoldView.addYinHeGradualLayer()
gofinishHoldView.isHidden = true gofinishHoldView.isHidden = true
holdView.addSubview(gofinishHoldView) holdView.addSubview(gofinishHoldView)
gofinishHoldView.snp.makeConstraints { make in gofinishHoldView.snp.makeConstraints { make in
make.centerY.equalToSuperview() make.centerY.equalToSuperview()
make.right.equalTo(-16) make.right.equalTo(-kMargin)
make.width.equalTo(82) make.width.equalTo(82)
} }
...@@ -160,8 +156,8 @@ extension YHContractMainItemStatusCell { ...@@ -160,8 +156,8 @@ extension YHContractMainItemStatusCell {
let statusLable = UILabel(text: "已完成") let statusLable = UILabel(text: "已完成")
statusLable.textAlignment = .center statusLable.textAlignment = .center
statusLable.font = kFont(name: "PingFang SC", size: 14) statusLable.font = UIFont.PFSC_M(ofSize: 14)
statusLable.textColor = .black statusLable.textColor = UIColor.mainTextColor
gofinishHoldView.addSubview(statusLable) gofinishHoldView.addSubview(statusLable)
statusLable.snp.makeConstraints { make in statusLable.snp.makeConstraints { make in
make.centerY.equalToSuperview() make.centerY.equalToSuperview()
......
...@@ -14,6 +14,9 @@ class YHServiceCenterMainViewModel: YHBaseViewModel { ...@@ -14,6 +14,9 @@ class YHServiceCenterMainViewModel: YHBaseViewModel {
//评分相关的 本地数据 //评分相关的 本地数据
var localScoreData : YHScoreDataModel? var localScoreData : YHScoreDataModel?
//合同对应的状态
var arrContactStausItmes: [YHContactMainItemStatusModel] = []
} }
//请求接口 //请求接口
...@@ -43,6 +46,62 @@ extension YHServiceCenterMainViewModel { ...@@ -43,6 +46,62 @@ extension YHServiceCenterMainViewModel {
callBackBlock(false,err) callBackBlock(false,err)
} }
} }
//请求合同的状态
func getContactStatus( params:[String : Any],callBackBlock:@escaping (_ success: Bool,_ error:YHErrorModel?)->()) {
let strUrl = YHBaseUrlManager.shared.curURL() + YHAllApiName.Order.contractStatusApi
let _ = YHNetRequest.getRequest(url: strUrl,params: params) { [weak self] json, code in
//1. json字符串 转 对象
guard let self = self else { return }
guard let model = NetBaseModel.deserialize(dict: json) else {
let error : YHErrorModel = YHErrorModel(errorCode:YHErrorCode.dictParseError.rawValue,errorMsg: YHErrorCode.dictParseError.description())
callBackBlock(false,error)
return
}
printLog("model 是 ==> \(model)")
let dic = model.data?.peel
guard let resultModel = YHContactMainItemStatusModel2.deserialize(dict: dic as? [AnyHashable : Any]) else {
self.arrContactStausItmes = []
callBackBlock(false,nil)
return
}
if resultModel.fill_info_step > 6 {
let model = YHContactMainItemStatusModel()
model.type = 1
model.isFinished = true
arrContactStausItmes.append(model)
let model2 = YHContactMainItemStatusModel()
model2.type = 2
model2.isFinished = false
arrContactStausItmes.append(model2)
let model3 = YHContactMainItemStatusModel()
model3.type = 3
model3.isFinished = false
arrContactStausItmes.append(model3)
} else {
let model = YHContactMainItemStatusModel()
model.type = 1
model.isFinished = false
arrContactStausItmes.append(model)
let model2 = YHContactMainItemStatusModel()
model2.type = 2
model2.isFinished = false
arrContactStausItmes.append(model2)
}
callBackBlock(true,nil)
} failBlock: { err in
self.arrContactStausItmes = []
callBackBlock(false,err)
}
}
} }
//其他方法 //其他方法
......
...@@ -19,6 +19,7 @@ extension UIView { ...@@ -19,6 +19,7 @@ extension UIView {
gradientLayer.startPoint = CGPoint(x: 0.12, y: 0.25) gradientLayer.startPoint = CGPoint(x: 0.12, y: 0.25)
gradientLayer.endPoint = CGPoint(x: 0.38, y: 0.25) gradientLayer.endPoint = CGPoint(x: 0.38, y: 0.25)
gradientLayer.frame = bounds gradientLayer.frame = bounds
gradientLayer.zPosition = -1
layer.addSublayer(gradientLayer) layer.addSublayer(gradientLayer)
} }
......
...@@ -20,7 +20,12 @@ class YHAllApiName { ...@@ -20,7 +20,12 @@ class YHAllApiName {
struct Order { struct Order {
//合同列表 //合同列表
static let contractListApi = "frontend/order/list" static let contractListApi = "frontend/order/list"
//
//合同填写进度
static let contractStatusApi = "frontend/order/progress"
//获取家庭信息
static let familyInfoApi = "frontend/order/information/family" static let familyInfoApi = "frontend/order/information/family"
} }
} }
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "箭头@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "箭头@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}
{ {
"images" : [ "images" : [
{ {
"filename" : "down-arrow.png",
"idiom" : "universal", "idiom" : "universal",
"scale" : "1x" "scale" : "1x"
}, },
{ {
"filename" : "down-arrow@2x.png", "filename" : "icon-展开@2x.png",
"idiom" : "universal", "idiom" : "universal",
"scale" : "2x" "scale" : "2x"
}, },
{ {
"filename" : "down-arrow@3x.png", "filename" : "icon-展开@3x.png",
"idiom" : "universal", "idiom" : "universal",
"scale" : "3x" "scale" : "3x"
} }
......
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