杨锴
2025-06-04 ac84f81ca2311300b431c1bfb9f71253b59073f2
DolphinEnglishLearnStudent/Moudle/Me/TCell/GoodsItemTCell.swift
@@ -9,99 +9,99 @@
import RxSwift
class GoodsItemTCell: UITableViewCell {
            @IBOutlet weak var label_state: UILabel!
            @IBOutlet weak var label_goodsName: UILabel!
            @IBOutlet weak var label_types: UILabel!
            @IBOutlet weak var label_goodsNum: UILabel!
            @IBOutlet weak var label_receiptInfo: UILabel!
            @IBOutlet weak var label_sendInfo: UILabel!
            @IBOutlet weak var btn_state: UIButton!
            @IBOutlet weak var label_coin: UILabel!
            @IBOutlet weak var img_cover: UIImageView!
            @IBOutlet weak var view_container: UIView!
            private var exchangeRecordModel:ExchangeRecordModel?
            private var disposeBag = DisposeBag()
    @IBOutlet weak var label_state: UILabel!
    @IBOutlet weak var label_goodsName: UILabel!
    @IBOutlet weak var label_types: UILabel!
    @IBOutlet weak var label_goodsNum: UILabel!
    @IBOutlet weak var label_receiptInfo: UILabel!
    @IBOutlet weak var label_sendInfo: UILabel!
    @IBOutlet weak var btn_state: UIButton!
    @IBOutlet weak var label_coin: UILabel!
    @IBOutlet weak var img_cover: UIImageView!
    @IBOutlet weak var view_container: UIView!
            override func awakeFromNib() {
    private var exchangeRecordModel:ExchangeRecordModel?
    private var disposeBag = DisposeBag()
    override func awakeFromNib() {
        super.awakeFromNib()
                        selectionStyle = .none
                        backgroundColor = .clear
                        view_container.jq_addShadows(shadowColor: UIColor(hexStr: "#D9D9D9").withAlphaComponent(0.28), corner: 8, radius: 3, offset: CGSize(width: 0, height: 2), opacity: 1)
        selectionStyle = .none
        backgroundColor = .clear
        view_container.jq_addShadows(shadowColor: UIColor(hexStr: "#D9D9D9").withAlphaComponent(0.28), corner: 8, radius: 3, offset: CGSize(width: 0, height: 2), opacity: 1)
    }
            func setModel(_ model:ExchangeRecordModel){
                        exchangeRecordModel = model
                        label_goodsNum.text = "商品数量:\(model.count)"
                        label_coin.text = "\(model.integral)积分"
                        label_goodsName.text = model.goodsName
                        label_types.text = model.goodsType.joined(separator: "|")
                        img_cover.sd_setImage(with: URL(string: model.coverImg))
                        var items_consignee = Array<String>()
                        items_consignee.append(model.consigneeName)
                        items_consignee.append(model.consigneePhone)
                        items_consignee.append(model.consigneeAddress)
                        label_receiptInfo.text = "收货信息:" + items_consignee.joined(separator: "|")
    func setModel(_ model:ExchangeRecordModel){
        exchangeRecordModel = model
        label_goodsNum.text = "商品数量:\(model.count)"
        label_coin.text = "\(model.integral)积分"
        label_goodsName.text = model.goodsName
        label_types.text = model.goodsType.joined(separator: "|")
        img_cover.sd_setImage(with: URL(string: model.coverImg))
        var items_consignee = Array<String>()
        items_consignee.append(model.consigneeName)
        items_consignee.append(model.consigneePhone)
        items_consignee.append(model.consigneeAddress)
        label_receiptInfo.text = "收货信息:" + items_consignee.joined(separator: "|")
                        var items_express = Array<String>()
                        items_express.append(model.express)
                        items_express.append(model.expressNumber)
        var items_express = Array<String>()
        items_express.append(model.express)
        items_express.append(model.expressNumber)
                        label_sendInfo.isHidden = items_express.filter({!$0.isEmpty}).count == 0
                        label_sendInfo.text = "发货信息:" + items_express.joined(separator: "|")
        label_sendInfo.isHidden = items_express.filter({!$0.isEmpty}).count == 0
        label_sendInfo.text = "发货信息:" + items_express.joined(separator: "|")
                        //订单状态1待发货2已发货3已完成
                        switch model.state{
                                    case 1:
                                                label_state.text = "待发货"
                                                btn_state.setTitle("修改地址", for: .normal)
                                                btn_state.isHidden = false
                                    case 2:
                                                label_state.text = "平台已发货,请耐心等待"
                                                btn_state.setTitle("已收货", for: .normal)
                                                btn_state.isHidden = false
                                    case 3:
                                                label_state.text = "已完成"
                                                btn_state.isHidden = true
                                    default:
                                                btn_state.isHidden = true
                        }
            }
        //订单状态1待发货2已发货3已完成
        switch model.state{
        case 1:
            label_state.text = "待发货"
            btn_state.setTitle("修改地址", for: .normal)
            btn_state.isHidden = false
        case 2:
            label_state.text = "平台已发货,请耐心等待"
            btn_state.setTitle("已收货", for: .normal)
            btn_state.isHidden = false
        case 3:
            label_state.text = "已完成"
            btn_state.isHidden = true
        default:
            btn_state.isHidden = true
        }
    }
            @IBAction func handleAction(_ sender: UIButton) {
    @IBAction func handleAction(_ sender: UIButton) {
                        switch exchangeRecordModel!.state{
                                    case 1:
                                                let vc = AddressManageVC(type: .choose)
                                                vc.title = "修改地址"
                                                vc.chooseAddress { m in
                                                            CommonAlertView.show(content: "确认修改当前收货地址吗?") {[weak self] () in
                                                                        guard let weakSelf = self else { return }
                                                                        if weakSelf.exchangeRecordModel?.consigneeAddress == m.address && weakSelf.exchangeRecordModel?.consigneeName == m.recipient && weakSelf.exchangeRecordModel?.consigneePhone == m.recipientPhone{
                                                                                    alertError(msg: "修改地址信息与原地址信息相同");return
                                                                        }
                                                                        Services.updateOrderAddress(orderId: weakSelf.exchangeRecordModel!.orderId, recipientId: m.id).subscribe(onNext: {data in
                                                                                    alertSuccess(msg: "修改成功")
                                                                                    DispatchQueue.main.asyncAfter(delay: 1.8) {
                                                                                                NotificationCenter.default.post(name: Refresh_MarketExchange_Noti, object: nil)
                                                                                    }
                                                                        }).disposed(by: weakSelf.disposeBag)
                                                            }
                                                }
                                                JQ_currentViewController().jq_push(vc: vc)
                                    case 2:
                                                CommonAlertView.show(isSinple: false, content: "确认已收到货吗?") {[weak self] () in
                                                            guard let weakSelf = self else { return }
                                                            Services.confirmStudy(id: weakSelf.exchangeRecordModel!.orderId).subscribe(onNext: {data in
                                                                        DispatchQueue.main.asyncAfter(delay: 1.8) {
                                                                                    NotificationCenter.default.post(name: Refresh_MarketExchange_Noti, object: nil)
                                                                        }
                                                            }).disposed(by: weakSelf.disposeBag)
                                                }
                                    default:break
                        }
            }
        switch exchangeRecordModel!.state{
        case 1:
            let vc = AddressManageVC(type: .choose)
            vc.title = "修改地址"
            vc.chooseAddress { m in
                CommonAlertView.show(content: "确认修改当前收货地址吗?") {[weak self] () in
                    guard let weakSelf = self else { return }
                    if weakSelf.exchangeRecordModel?.consigneeAddress == m.address && weakSelf.exchangeRecordModel?.consigneeName == m.recipient && weakSelf.exchangeRecordModel?.consigneePhone == m.recipientPhone{
                        alertError(msg: "修改地址信息与原地址信息相同");return
                    }
                    Services.updateOrderAddress(orderId: weakSelf.exchangeRecordModel!.orderId, recipientId: m.id).subscribe(onNext: {data in
                        alertSuccess(msg: "修改成功")
                        DispatchQueue.main.asyncAfter(delay: 1.8) {
                            NotificationCenter.default.post(name: Refresh_MarketExchange_Noti, object: nil)
                        }
                    }).disposed(by: weakSelf.disposeBag)
                }
            }
            JQ_currentViewController().jq_push(vc: vc)
        case 2:
            CommonAlertView.show(isSinple: false, content: "确认已收到货吗?") {[weak self] () in
                guard let weakSelf = self else { return }
                Services.confirmStudy(id: weakSelf.exchangeRecordModel!.orderId).subscribe(onNext: {data in
                    DispatchQueue.main.asyncAfter(delay: 1.8) {
                        NotificationCenter.default.post(name: Refresh_MarketExchange_Noti, object: nil)
                    }
                }).disposed(by: weakSelf.disposeBag)
            }
        default:break
        }
    }
}