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

服务中心 第二个主界面

parent e741ca53
......@@ -154,6 +154,7 @@ extension YHServiceCenterMainViewController : UITableViewDelegate,UITableViewDat
tableView.deselectRow(at: indexPath, animated: true)
printLog("点击了 tableView Cell \(indexPath.row)")
let vc = YHServiceCenterSecondViewController()
vc.orderId = serviceCenterMainReqVM.arrContactList[indexPath.row].id
self.navigationController?.pushViewController(vc)
}
}
......@@ -10,13 +10,11 @@ import UIKit
//服务中心
class YHServiceCenterSecondViewController: YHBaseViewController {
// private let serviceCenterMainReqVM : YHServiceCenterMainViewModel = YHServiceCenterMainViewModel()
private var arrData : [YHContactMainItemStatusModel] = []
var orderId : Int?
private let serviceCenterMainReqVM : YHServiceCenterMainViewModel = YHServiceCenterMainViewModel()
private var unfoldFlag : Bool = true //是否展开
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.contentMode = .scaleAspectFill
return imagV
......@@ -50,12 +48,10 @@ class YHServiceCenterSecondViewController: YHBaseViewController {
extension YHServiceCenterSecondViewController {
func loadData() {
// self.serviceCenterMainReqVM.getContactList { success, error in
// if success == true {
//
// }
// self.homeTableView.reloadData()
// }
guard let orderId = orderId else { return}
self.serviceCenterMainReqVM.getContactStatus(params: ["orderId":orderId]) { success, error in
self.homeTableView.reloadData()
}
}
func setupUI() {
......@@ -63,13 +59,7 @@ extension YHServiceCenterSecondViewController {
gk_navBarAlpha = 1.0
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)
topBkg.snp.makeConstraints { make in
......@@ -82,11 +72,9 @@ extension YHServiceCenterSecondViewController {
homeTableView.dataSource = self
view.addSubview(homeTableView)
homeTableView.snp.makeConstraints { make in
make.left.right.equalToSuperview()
make.top.equalTo(k_Height_NavigationtBarAndStatuBar)
make.bottom.equalToSuperview()
make.left.right.bottom.equalToSuperview()
}
}
@objc func clickUnfoldView() {
......@@ -112,24 +100,37 @@ extension YHServiceCenterSecondViewController : UITableViewDelegate,UITableViewD
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if unfoldFlag == true {
return arrData.count
return self.serviceCenterMainReqVM.arrContactStausItmes.count
}
return 0
}
func tableView(_ tableView: UITableView, heightForHeaderInSection section: Int) -> CGFloat {
return 60
return 40
}
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
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.font = kFont(size: 17)
lable.font = UIFont.PFSC_M(ofSize: 17)
lable.textColor = .mainTextColor
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))
view.addGestureRecognizer(tap)
......@@ -153,14 +154,18 @@ extension YHServiceCenterSecondViewController : UITableViewDelegate,UITableViewD
let newCell = tableView.dequeueReusableCell(withClass: YHContractMainItemStatusCell.self)
newCell.selectionStyle = .none
newCell.dataModel = arrData[indexPath.row]
newCell.dataModel = self.serviceCenterMainReqVM.arrContactStausItmes[indexPath.row]
return newCell
}
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
tableView.deselectRow(at: indexPath, animated: true)
printLog("点击了 \(indexPath.section)section --- \(indexPath.row)row")
navigationController?.pushViewController(YHInformationPerfectListVC())
if indexPath.row == 0 {
navigationController?.pushViewController(YHInformationPerfectListVC())
} else if indexPath.row == 1 {
} else {
}
}
}
......@@ -10,7 +10,7 @@ import UIKit
import SmartCodable
struct YHContactItemModel : SmartCodable {
var id : String = ""
var id : Int = -1
var orderSn : String = ""
var username : String = ""
var productName : String = ""
......
......@@ -7,6 +7,7 @@
//
import UIKit
import SmartCodable
class YHContactMainItemStatusModel {
var type : Int = -1 {
......@@ -16,7 +17,7 @@ class YHContactMainItemStatusModel {
itemName = "信息完善"
} else if type == 2 {
iconName = "service_center_sfsq_zlsc_icon"
itemName = "资料上传"
itemName = "证件上传"
} else if type == 3 {
iconName = "service_center_sfsq_wdpf_icon"
itemName = "我的评分"
......@@ -24,7 +25,12 @@ class YHContactMainItemStatusModel {
}
}
var isFinished : Bool = false
var iconName : String = ""
var itemName : String = ""
}
struct YHContactMainItemStatusModel2 : SmartCodable {
var fill_info_step : Int = 0
}
......@@ -55,19 +55,12 @@ class YHContractMainItemStatusCell: UITableViewCell {
private lazy var goUnfinishHoldView : UIView = {
let view = UIView()
view.layer.cornerRadius = 6
view.layer.cornerRadius = kCornerRadius6
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()
lable.font = kFont(size: 14)
lable.font = UIFont.PFSC_M(ofSize: 13)
lable.text = "去完善"
lable.textAlignment = .center
lable.textColor = .white
......@@ -99,7 +92,7 @@ extension YHContractMainItemStatusCell {
func setupUI() {
let holdView = UIView()
holdView.backgroundColor = .white
holdView.layer.cornerRadius = 12
holdView.layer.cornerRadius = kCornerRadius6
holdView.clipsToBounds = true
backgroundColor = .clear
......@@ -107,10 +100,10 @@ extension YHContractMainItemStatusCell {
contentView.addSubview(holdView)
holdView.snp.makeConstraints { make in
make.top.equalToSuperview().offset(16)
make.top.equalToSuperview().offset(kMargin)
make.bottom.equalToSuperview()
make.left.equalTo(16)
make.right.equalTo(-16)
make.left.equalTo(kMargin)
make.right.equalTo(-kMargin)
}
holdView.addSubview(iconImageV)
......@@ -133,17 +126,20 @@ extension YHContractMainItemStatusCell {
holdView.addSubview(goUnfinishHoldView)
goUnfinishHoldView.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.right.equalTo(-16)
make.right.equalTo(-kMargin)
make.height.equalTo(34)
make.width.equalTo(76)
}
goUnfinishHoldView.layoutIfNeeded()
goUnfinishHoldView.addYinHeGradualLayer()
gofinishHoldView.isHidden = true
holdView.addSubview(gofinishHoldView)
gofinishHoldView.snp.makeConstraints { make in
make.centerY.equalToSuperview()
make.right.equalTo(-16)
make.right.equalTo(-kMargin)
make.width.equalTo(82)
}
......@@ -160,8 +156,8 @@ extension YHContractMainItemStatusCell {
let statusLable = UILabel(text: "已完成")
statusLable.textAlignment = .center
statusLable.font = kFont(name: "PingFang SC", size: 14)
statusLable.textColor = .black
statusLable.font = UIFont.PFSC_M(ofSize: 14)
statusLable.textColor = UIColor.mainTextColor
gofinishHoldView.addSubview(statusLable)
statusLable.snp.makeConstraints { make in
make.centerY.equalToSuperview()
......
......@@ -14,6 +14,9 @@ class YHServiceCenterMainViewModel: YHBaseViewModel {
//评分相关的 本地数据
var localScoreData : YHScoreDataModel?
//合同对应的状态
var arrContactStausItmes: [YHContactMainItemStatusModel] = []
}
//请求接口
......@@ -43,6 +46,62 @@ extension YHServiceCenterMainViewModel {
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 {
gradientLayer.startPoint = CGPoint(x: 0.12, y: 0.25)
gradientLayer.endPoint = CGPoint(x: 0.38, y: 0.25)
gradientLayer.frame = bounds
gradientLayer.zPosition = -1
layer.addSublayer(gradientLayer)
}
......
......@@ -20,7 +20,12 @@ class YHAllApiName {
struct Order {
//合同列表
static let contractListApi = "frontend/order/list"
//
//合同填写进度
static let contractStatusApi = "frontend/order/progress"
//获取家庭信息
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" : [
{
"filename" : "down-arrow.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "down-arrow@2x.png",
"filename" : "icon-展开@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "down-arrow@3x.png",
"filename" : "icon-展开@3x.png",
"idiom" : "universal",
"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