OrderApplyRefundProductCell.swift 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146
  1. //
  2. // OrderApplyRefundProductCell.swift
  3. // RainbowPlanet
  4. //
  5. // Created by Christopher on 2019/5/17.
  6. // Copyright © 2019 RainbowPlanet. All rights reserved.
  7. // 申请退款--商品详情Cell
  8. import UIKit
  9. class OrderApplyRefundProductCell: UITableViewCell {
  10. class func cellWith(tableView:UITableView,indexPath:IndexPath) -> OrderApplyRefundProductCell {
  11. let ID = "OrderApplyRefundProductCell"
  12. tableView.register(OrderApplyRefundProductCell.self, forCellReuseIdentifier: ID)
  13. let cell : OrderApplyRefundProductCell = tableView.dequeueReusableCell(withIdentifier: ID, for: indexPath) as! OrderApplyRefundProductCell
  14. cell.indexPath = indexPath
  15. return cell
  16. }
  17. override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) {
  18. super.init(style: style, reuseIdentifier: reuseIdentifier)
  19. setupViews()
  20. setupLayouts()
  21. }
  22. required init?(coder aDecoder: NSCoder) {
  23. fatalError("init(coder:) has not been implemented")
  24. }
  25. var indexPath: IndexPath? {
  26. didSet {
  27. }
  28. }
  29. //MRAK: - 设置View
  30. private func setupViews() {
  31. self.selectionStyle = .none
  32. addSubview(productImageView)
  33. addSubview(titleLabel)
  34. addSubview(timeLabel)
  35. addSubview(skuLabel)
  36. addSubview(priceLabel)
  37. addSubview(numberLabel)
  38. addSubview(lineLabel)
  39. }
  40. private func setupLayouts() {
  41. productImageView.snp.makeConstraints { (make) in
  42. make.left.equalTo(14)
  43. make.centerY.equalToSuperview()
  44. make.size.equalTo(80)
  45. }
  46. titleLabel.snp.makeConstraints { (make) in
  47. make.left.equalTo(productImageView.snp.right).offset(12)
  48. make.top.equalTo(20)
  49. make.right.equalTo(priceLabel.snp.left).offset(-12)
  50. make.height.equalTo(20)
  51. }
  52. timeLabel.snp.makeConstraints { (make) in
  53. make.top.equalTo(titleLabel.snp.bottom).offset(8)
  54. make.left.equalTo(titleLabel)
  55. make.height.equalTo(17)
  56. }
  57. skuLabel.snp.makeConstraints { (make) in
  58. make.top.equalTo(timeLabel.snp.bottom).offset(8)
  59. make.left.equalTo(titleLabel)
  60. make.height.equalTo(17)
  61. }
  62. priceLabel.snp.makeConstraints { (make) in
  63. make.centerY.equalTo(titleLabel)
  64. make.right.equalTo(-14)
  65. }
  66. numberLabel.snp.makeConstraints { (make) in
  67. make.centerY.equalTo(timeLabel)
  68. make.right.equalTo(-14)
  69. }
  70. lineLabel.snp.makeConstraints { (make) in
  71. make.bottom.equalToSuperview()
  72. make.height.equalTo(1)
  73. make.left.equalTo(14)
  74. make.right.equalTo(-14)
  75. }
  76. }
  77. private lazy var productImageView: UIImageView = {
  78. let productImageView = UIImageView()
  79. productImageView.image = kImage(name: "pic_preload")
  80. return productImageView
  81. }()
  82. private lazy var titleLabel: UILabel = {
  83. let titleLabel = UILabel()
  84. titleLabel.textColor = k333333Color
  85. titleLabel.font = kBoldFont14
  86. return titleLabel
  87. }()
  88. private lazy var timeLabel: UILabel = {
  89. let timeLabel = UILabel()
  90. timeLabel.textColor = k666666Color
  91. timeLabel.font = kRegularFont12
  92. return timeLabel
  93. }()
  94. private lazy var skuLabel: UILabel = {
  95. let skuLabel = UILabel()
  96. skuLabel.textColor = k999999Color
  97. skuLabel.font = kRegularFont12
  98. return skuLabel
  99. }()
  100. private lazy var priceLabel: UILabel = {
  101. let priceLabel = UILabel()
  102. priceLabel.textColor = k333333Color
  103. priceLabel.font = kRegularFont14
  104. return priceLabel
  105. }()
  106. private lazy var numberLabel: UILabel = {
  107. let numberLabel = UILabel()
  108. numberLabel.textColor = k999999Color
  109. numberLabel.font = kRegularFont13
  110. return numberLabel
  111. }()
  112. private lazy var lineLabel: UILabel = {
  113. let lineLabel = UILabel()
  114. lineLabel.backgroundColor = kf5f5f5Color
  115. return lineLabel
  116. }()
  117. var orderModelDetailModel: OrderModelDetailModel? {
  118. didSet {
  119. productImageView.kf.setImage(with: kURLImage(name: orderModelDetailModel?.productImg ?? "pic_preload"), placeholder: kImage(name: "pic_preload"))
  120. titleLabel.text = orderModelDetailModel?.productName
  121. timeLabel.text = "预计配送时间:\(orderModelDetailModel?.receiveTime ?? "")"
  122. skuLabel.text = "规格:\(orderModelDetailModel?.skuName ?? "")"
  123. priceLabel.text = "¥\(orderModelDetailModel?.productPrice ?? 0)"
  124. numberLabel.text = "x\(orderModelDetailModel?.amount ?? 0)"
  125. }
  126. }
  127. }