// // CreatShopOrderViewController.swift // xingchuangke // // Created by machaochao on 2020/10/13. // Copyright © 2020 Virgil. All rights reserved. // import UIKit class CreatShopOrderViewController: BaseViewController, UIScrollViewDelegate { @IBOutlet weak var viewExpress: UIView! @IBOutlet weak var btnExpress2: UIButton! @IBOutlet weak var btnExpress1: UIButton! @IBOutlet weak var btnExpressBtn3: UIButton! @IBOutlet weak var view1: UIView! @IBOutlet weak var btnAddress: UIButton! @IBOutlet weak var lblPhone: UILabel! @IBOutlet weak var lblAddress: UILabel! @IBOutlet weak var lblName: UILabel! let scrollView = UIScrollView.init() override func viewDidLoad() { super.viewDidLoad() initNavLeftBackButton() self.title = "确认订单" loadAddressList() btnExpress1.setCornerRadius(size: 3) btnExpress2.setCornerRadius(size: 3) btnExpressBtn3.setCornerRadius(size: 3) viewExpress.setCornerRadius(size: 8) btnExpress1.setTitleColor(.white, for: .normal) btnExpress2.setTitleColor(.white, for: .normal) btnExpressBtn3.setTitleColor(.white, for: .normal) self.creatGoodsList() // Do any additional setup after loading the view. } var dicAddress = NSDictionary() var name = "" var phone = "" var address1 = "" var address2 = "" ///0:顺丰1到付 2:自提 var expressType = 0 @IBAction func btnMenuClick(_ sender: AnyObject) { switch (sender as! UIButton).tag { case 1001: // 选择地址 let vc = AddressListViewController() toViewController(viewController: vc) break case 1002: // 提交订单 break case 1005: // break case 1006: //快递寄付 self.expressType = 0 // if(name == "" && expressType == 0) // { // SVProgressHUD.showError(withStatus: "请选择收货地址") // return; // } // if(name == "" && expressType == 2) // { // SVProgressHUD.showError(withStatus: "请选择收货地址") // return; // } btnExpress1.isSelected = true btnExpress2.isSelected = false btnExpressBtn3.isSelected = false btnExpress1.backgroundColor = CommonUntils.getUIColorFromRGB(rgbValue: 0x36a5fe, alpha: 1.0) btnExpress2.backgroundColor = CommonUntils.getUIColorFromRGB(rgbValue: 0xdddddd, alpha: 1.0) btnExpressBtn3.backgroundColor = CommonUntils.getUIColorFromRGB(rgbValue: 0xdddddd, alpha: 1.0) self.view1.isHidden = false self.view1.setSizeHeight(height: 90.0) self.scrollView.mj_y = view1.bottom()+10 self.scrollView.setSizeHeight(height: kScreenHeight-self.view1.bottom()-20-45-navheight) self.getFreight() break case 1007: // 顺丰到付 self.expressType = 2 // if(name == "" && expressType == 0) // { // SVProgressHUD.showError(withStatus: "请选择收货地址") // return; // } // if(name == "" && expressType == 2) // { // SVProgressHUD.showError(withStatus: "请选择收货地址") // return; // } btnExpress1.isSelected = false btnExpress2.isSelected = true btnExpressBtn3.isSelected = false btnExpress1.backgroundColor = CommonUntils.getUIColorFromRGB(rgbValue: 0xdddddd, alpha: 1.0) btnExpress2.backgroundColor = CommonUntils.getUIColorFromRGB(rgbValue: 0x36a5fe, alpha: 1.0) btnExpressBtn3.backgroundColor = CommonUntils.getUIColorFromRGB(rgbValue: 0xdddddd, alpha: 1.0) self.view1.isHidden = false self.view1.setSizeHeight(height: 90.0) self.scrollView.mj_y = view1.bottom()+10 self.scrollView.setSizeHeight(height: kScreenHeight-self.view1.bottom()-20-45-navheight) let strPrice2 = "¥\(String.init(format: "%.2f", self.allPrice))" self.hejiLable.text = strPrice2 self.freight = 0.0 break case 1008: // 上门自提 self.expressType = 1 btnExpress1.isSelected = false btnExpress2.isSelected = true btnExpressBtn3.isSelected = false btnExpress1.backgroundColor = CommonUntils.getUIColorFromRGB(rgbValue: 0xdddddd, alpha: 1.0) btnExpress2.backgroundColor = CommonUntils.getUIColorFromRGB(rgbValue: 0xdddddd, alpha: 1.0) btnExpressBtn3.backgroundColor = CommonUntils.getUIColorFromRGB(rgbValue: 0x36a5fe, alpha: 1.0) self.view1.setSizeHeight(height: 0.0) self.view1.isHidden = true self.scrollView.mj_y = viewExpress.bottom()+10 self.scrollView.setSizeHeight(height: kScreenHeight-self.viewExpress.bottom()-20-45-navheight) let strPrice2 = "¥\(String.init(format: "%.2f", self.allPrice))" self.hejiLable.text = strPrice2 self.freight = 0.0 break default: break } } var goodsArray = NSArray.init() let hejiLable = UILabel.init() var allPrice: Float = 0 var num: Int = 0 var idstr = "" func creatGoodsList() { scrollView.delegate = self //设置代理 let height = kScreenHeight-self.view1.bottom()-10-45-10-navheight scrollView.frame = CGRect(x: 0, y: self.view1.bottom()+10, width: kScreenWidth, height:height)//设置scrollview的大小 scrollView.backgroundColor = self.view.backgroundColor//设置背景颜色 scrollView.isPagingEnabled = true //是否支持分页 scrollView.bounces = false //是否支持回弹效果 scrollView.showsVerticalScrollIndicator = false //垂直滑动线隐藏 scrollView.showsHorizontalScrollIndicator = false //水平滑动线隐藏 //scrollView.contentInset = UIEdgeInsetsMake(10, 10, 10, 10) //设置内边距 scrollView.contentSize = CGSize(width: kScreenWidth, height: CGFloat(goodsArray.count*100)) self.view.addSubview(scrollView) for i in 0.. 4 { params.setValue(lblName.text!.substringFrom(index: 4), forKey: "linkname") } else { params.setValue("", forKey: "linkname") } if lblAddress.text!.length() > 5 { params.setValue(lblAddress.text!.substringFrom(index: 5), forKey: "linkaddress") } else { params.setValue("", forKey: "linkaddress") } if lblPhone.text!.length() > 5 { params.setValue(lblPhone.text!.substringFrom(index: 5), forKey: "linkphone") } else { params.setValue("", forKey: "linkphone") } } else { params.setValue("", forKey: "linkname") params.setValue("", forKey: "linkaddress") params.setValue("", forKey: "linkphone") } print(params) let http = AFHTTPSessionManager() http.post(url, parameters: params, progress: { (_) in }, success: { (operation, json) in print(json as Any) let success = (json as! NSDictionary).object(forKey: "statusCode") as! Int if success == 200 { let orderId = (json as! NSDictionary).object(forKey: "data") as! String let vc = PayShoppingMallViewController() vc.orderId = orderId if self.expressType == 0 { vc.money = "\(String.init(format: "%.2f", Float(self.freight)+self.allPrice))" } else { vc.money = "\(String.init(format: "%.2f", self.allPrice))" } self.toViewController(viewController: vc) } }) { (_, _) in } // submitData(url: url, params: params, tag: 1001) } var freight = 0.0 func getFreight() { print(dicData) if name == ""{ return } let params = NSMutableDictionary() params.setValue(dicAddress["province_name"], forKey: "province") params.setValue(dicAddress["city_name"], forKey: "city") params.setValue(self.weight, forKey: "weight") let http = AFHTTPSessionManager() http.post(RequestURL.getFreight, parameters: params, progress: { (_) in }, success: { (operation, json) in print(json as Any) let success = (json as! NSDictionary).object(forKey: "statusCode") as! Int if success == 200 { let Freight = (json as! NSDictionary).object(forKey: "data") as! Float self.freight = Double(Freight) let strPrice2 = "¥\(String.init(format: "%.2f", self.allPrice+Freight))含运费:\(Freight)元" let str4 = "¥\(String.init(format: "%.2f", self.allPrice+Freight))" self.hejiLable.attributedText = CommonViewUntils.getAttributedStringForFont(str: strPrice2, rangs: [NSRange.init(location: str4.length(), length: strPrice2.length()-str4.length()), NSRange.init(location: str4.length(), length: strPrice2.length() - str4.length())], fonts: [UIFont.systemFont(ofSize: 10), UIFont.systemFont(ofSize: 10)]) } }) { (_, _) in } } var weight: Double = 0.0 func getWeight() { if self.expressType == 0 { } else { return } let url = RequestURL.getGoPayProductList let params = NSMutableDictionary() params.setValue(self.idstr, forKey: "DATA_IDS") params.setValue(CommonValue.getUserId(), forKey: "userId") let http = AFHTTPSessionManager() http.get(url, parameters: params, progress: { (_) in }, success: { (operation, json) in print(json as Any) let success = (json as! NSDictionary).object(forKey: "statusCode") as! Int if success == 200 { let dic = (json as! NSDictionary).object(forKey: "data") as! NSDictionary self.weight = dic["sum"]as!Double self.getFreight() } }) { (_, _) in } } /* // MARK: - Navigation // In a storyboard-based application, you will often want to do a little preparation before navigation override func prepare(for segue: UIStoryboardSegue, sender: Any?) { // Get the new view controller using segue.destination. // Pass the selected object to the new view controller. } */ override func viewWillAppear(_ animated: Bool) { super.viewWillAppear(animated) self.loadAddressList() let strPrice2 = "¥\(String.init(format: "%.2f", self.allPrice))" self.hejiLable.text = strPrice2 self.getWeight() } override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: Bundle?) { super.init(nibName: "CreatShopOrderViewController", bundle: nil) } required init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented") } func loadAddressList() { let params = NSMutableDictionary() params.setValue(CommonValue.getUserId(), forKey: "userId") params.setValue(1, forKey: "currentPage") params.setValue(1, forKey: "showCount") let http = AFHTTPSessionManager() http.get(RequestURL.getUserAddressList, parameters: params, progress: { (_) in }, success: { (operation, json) in print(json as Any) let success = (json as! NSDictionary).object(forKey: "statusCode") as! Int if success == 200 { let dic = (json as! NSDictionary).object(forKey: "data") as! NSDictionary let addressArray = dic["addressList"]as!NSArray if addressArray.count>0 { let defaultAddressDic = addressArray[0] as! NSDictionary self.dicAddress = defaultAddressDic if defaultAddressDic["is_default"]as!String == "1"{ self.btnAddress.setTitle("", for: .normal) self.lblName.text = "收货人:\(defaultAddressDic["link_name"]as!String)" self.name = defaultAddressDic["link_name"]as!String self.lblPhone.text = "联系方式:\(defaultAddressDic["link_phone"]as!String)" self.lblAddress.text = "收货地址:\(defaultAddressDic["province_name"]as!String)\(defaultAddressDic["city_name"]as!String)\(defaultAddressDic["area_name"]as!String)\(defaultAddressDic["address"]as!String)" } else { self.btnAddress.setTitle("请选择地址", for: .normal) self.lblName.text = "" self.lblPhone.text = "" self.lblAddress.text = "" self.name = "" } } else { self.btnAddress.setTitle("请选择地址", for: .normal) self.lblName.text = "" self.lblPhone.text = "" self.lblAddress.text = "" self.name = "" } } }) { (_, _) in } } }