Commit 17c75f24 authored by 刘俊宏's avatar 刘俊宏

寄派方式ing

parent 3d3ef664
......@@ -10,6 +10,8 @@ import UIKit
import WebKit
class XiaYunDanViewController: BaseViewController,UITableViewDelegate,UITableViewDataSource,JiTuoWuXinXiViewDelegate,JiPaiFangShiViewControllerDelegate,ZengZhiServicesViewControllerDelegate,AdressSelectCellDelegate,DZGLViewControllerDelegate,XinZengDiZhiViewControllerDelegate{
@IBOutlet weak var topCarBtnSelectView: UIView!
......@@ -100,14 +102,14 @@ class XiaYunDanViewController: BaseViewController,UITableViewDelegate,UITableVie
var send = 0
var receive = 0
func JiPaiFangShiViewControllerDelegateFinish(send: Int, receive: Int, time: Double) {
func JiPaiFangShiViewControllerDelegateFinish(send: Int, receive: Int, pickup_time: String, day: Int) {
self.send = send
self.receive = receive
listView.reloadData()
}
var itemName = ""
var tiJi:Float?
var weight:Float?
......
......@@ -8,17 +8,22 @@
import UIKit
protocol JiPaiFangShiViewControllerDelegate {
func JiPaiFangShiViewControllerDelegateFinish(send:Int,receive:Int,time:Double)
//day期望上门 0今天 1明天 2后天
func JiPaiFangShiViewControllerDelegateFinish(send:Int,receive:Int,pickup_time:String,day:Int)
}
class JiPaiFangShiViewController: BaseViewController ,SendTimeSelectViewDeleagte{
var delegate:JiPaiFangShiViewControllerDelegate?
var sendTimeView:SendTimeSelectView?
@IBAction func selectTimeAction(_ sender: UIButton) {
if sendTimeView == nil {
if sendTimeView == nil && timeData != nil {
let view = SendTimeSelectView(frame:self.view.bounds)
view.delegate = self
self.view.addSubview(view)
sendTimeView = view
view.leftSelectIdx = self.leftSelectIdx
view.dataModel = timeData
view.rightSelectIdx = self.rightSelectIdx
}
}
@IBAction func submitAction(_ sender: Any) {
......@@ -30,7 +35,7 @@ class JiPaiFangShiViewController: BaseViewController ,SendTimeSelectViewDeleagte
if PLeftBtn.isSelected == false {
receive = 1
}
delegate?.JiPaiFangShiViewControllerDelegateFinish(send: send, receive: receive, time: 2)
delegate?.JiPaiFangShiViewControllerDelegateFinish(send: send, receive: receive, pickup_time: "8-10" , day: 0)
self.navigationController?.popViewController(animated: true)
}
@IBOutlet weak var topView: UIView!
......@@ -42,6 +47,11 @@ class JiPaiFangShiViewController: BaseViewController ,SendTimeSelectViewDeleagte
@IBOutlet weak var JRightBtn: UIButton!
@IBOutlet weak var JLeftBtn: UIButton!
@IBOutlet weak var timeViewHeight: NSLayoutConstraint!
var pickup_time : String?
var day : Int?
var timeData:appointmentTimeDataModel? = nil
override func viewDidLoad() {
super.viewDidLoad()
......@@ -65,7 +75,39 @@ class JiPaiFangShiViewController: BaseViewController ,SendTimeSelectViewDeleagte
make.right.equalTo(-15)
make.height.equalTo(55)
}
// Do any additional setup after loading the view.
let UserToken = UserDefaults.standard.value(forKey: "user_token")
appointmentTime(["user_token":UserToken as Any], success: { (data) in
let dataModel = data as! appointmentTimeModel
self.timeData = dataModel.data
//需要修改-放上个vc
if dataModel.data?.today == nil {
let keys = dataModel.data?.tomorrow?.keys
let keysArr = keys?.sorted(by: { (str1, str2) -> Bool in
let num1 = str1 as NSString
let num2 = str2 as NSString
return num1.integerValue < num2.integerValue ? true : false
})
let rightIndexKey = keysArr![0]
let rightText = dataModel.data?.tomorrow![rightIndexKey as! String]
self.timeLbl.text = "明天" + rightText!
}else{
let keys = dataModel.data?.today?.keys
let keysArr = keys?.sorted(by: { (str1, str2) -> Bool in
let num1 = str1 as NSString
let num2 = str2 as NSString
return num1.integerValue < num2.integerValue ? true : false
})
let rightIndexKey = keysArr![0]
let rightText = dataModel.data?.tomorrow![rightIndexKey as! String]
self.timeLbl.text = "今天" + rightText!
}
}) { (error) in
}
}
func setYuanJiao(sender:UIView){
let maskPath = UIBezierPath(roundedRect: sender.bounds,
......@@ -75,13 +117,29 @@ class JiPaiFangShiViewController: BaseViewController ,SendTimeSelectViewDeleagte
masklayer.path = maskPath.cgPath
sender.layer.mask = masklayer
}
func SendTimeSelectViewSubmit(date: String) {
timeLbl.text = date
var leftSelectIdx : Int? = 0
var rightSelectIdx : Int? = 0
func SendTimeSelectViewSubmit(day: String, time: String, leftSelectIdx: Int, rightSelectIdx: Int) {
timeLbl.text = day + time
sendTimeView?.removeFromSuperview()
sendTimeView = nil
self.rightSelectIdx = rightSelectIdx
self.leftSelectIdx = leftSelectIdx
pickup_time = time
switch day {
case "今天":
self.day = 0
case "明天":
self.day = 1
case "后天":
self.day = 2
default:
break
}
}
func SendTimeSelectViewClose() {
sendTimeView?.removeFromSuperview()
sendTimeView = nil
......
......@@ -38,7 +38,7 @@
<constraint firstAttribute="width" constant="5" id="mKv-OP-Izj"/>
</constraints>
</imageView>
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="今天 14:30~16:30" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="DPN-ah-dAM">
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="DPN-ah-dAM">
<rect key="frame" x="159" y="13" width="200" height="15"/>
<constraints>
<constraint firstAttribute="width" constant="200" id="5kN-KW-gI7"/>
......
......@@ -9,17 +9,79 @@
import UIKit
protocol SendTimeSelectViewDeleagte {
func SendTimeSelectViewClose()
func SendTimeSelectViewSubmit(date:String)
func SendTimeSelectViewSubmit(day:String,time:String,leftSelectIdx:Int,rightSelectIdx:Int)
}
class SendTimeSelectView: UIView,UITableViewDelegate,UITableViewDataSource {
var dataModel:appointmentTimeDataModel? = nil {
didSet{
if dataModel?.today == nil {
leftListArr = ["明天","后天"]
let keys = dataModel?.tomorrow?.keys
let keysArr = keys?.sorted(by: { (str1, str2) -> Bool in
let num1 = str1 as NSString
let num2 = str2 as NSString
return num1.integerValue < num2.integerValue ? true : false
})
rightListArr = keysArr
leftStr = "明天"
}else{
leftListArr = ["今天","明天","后天"]
let keys = dataModel?.today?.keys
let keysArr = keys?.sorted(by: { (str1, str2) -> Bool in
let num1 = str1 as NSString
let num2 = str2 as NSString
return num1.integerValue < num2.integerValue ? true : false
})
rightListArr = keysArr
leftStr = "今天"
}
tableView(leftListView, didSelectRowAt: IndexPath(row: leftSelectIdx!, section: 0))
leftListView.reloadData()
rightListView.reloadData()
}
}
var delegate:SendTimeSelectViewDeleagte?
let leftListArr = ["今天","明天","后天"]
let rightListArr = ["1","2","3"]
var leftListArr = ["今天","明天","后天"]
var rightListArr:Array<Any>? = []
var leftStr = "今天"
var contentView:UIView!
var leftSelectIdx:Int?
var rightSelectIdx:Int?
var rightSelectIdx:Int? {
didSet{
rightListView.reloadData()
if rightSelectIdx != nil {
rightListView.scrollToRow(at: IndexPath.init(row: rightSelectIdx!, section: 0), at: .none, animated: false)
}
}
}
@IBAction func submitAction(_ sender: Any) {
delegate?.SendTimeSelectViewSubmit(date:"\(leftListArr[leftSelectIdx!]) \(rightListArr[rightSelectIdx!])")
if rightSelectIdx == nil {
HUD.flash(.label("请选择上门时间"), delay: 1.2)
return
}
var rightText = ""
switch leftStr {
case "今天":
let rightIndexKey = rightListArr![rightSelectIdx!]
rightText = dataModel?.today![rightIndexKey as! String] as! String
case "明天":
let rightIndexKey = rightListArr![rightSelectIdx!]
rightText = dataModel?.tomorrow![rightIndexKey as! String] as! String
case "后天":
let rightIndexKey = rightListArr![rightSelectIdx!]
rightText = dataModel?.taftert![rightIndexKey as! String] as! String
default:
break
}
delegate?.SendTimeSelectViewSubmit(day:"\(leftListArr[leftSelectIdx!]) ",time:rightText,leftSelectIdx:leftSelectIdx!,rightSelectIdx: rightSelectIdx! )
}
@IBOutlet weak var rightListView: UITableView!
@IBOutlet weak var leftListView: UITableView!
......@@ -43,8 +105,7 @@ class SendTimeSelectView: UIView,UITableViewDelegate,UITableViewDataSource {
leftListView.register(UINib(nibName: "OnlyLabelCell", bundle: nil), forCellReuseIdentifier: "OnlyLabel")
rightListView.register(UINib(nibName: "OnlyLabelCell", bundle: nil), forCellReuseIdentifier: "OnlyLabel")
tableView(leftListView, didSelectRowAt: IndexPath(row: 0, section: 0))
leftListView.reloadData()
}
//初始化时将xib中的view添加进来
override init(frame: CGRect) {
......@@ -57,32 +118,13 @@ class SendTimeSelectView: UIView,UITableViewDelegate,UITableViewDataSource {
self.setUI()
}
// /初始化时将xib中的view添加进来
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
contentView = loadViewFromNib()
addSubview(contentView)
contentView.snp.makeConstraints { (make) in
make.left.top.right.bottom.equalToSuperview()
}
self.setUI()
}
//加载xib
func loadViewFromNib() -> UIView {
let className = type(of: self)
let bundle = Bundle(for: className)
let name = NSStringFromClass(className).components(separatedBy: ".").last
let nib = UINib(nibName: name!, bundle: bundle)
let view = nib.instantiate(withOwner: self, options: nil).first as! UIView
self.setUI()
return view
}
//MARK: - CELL DELEGATE
func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
if tableView == leftListView {
return leftListArr.count
}
return 3
return rightListArr!.count
}
func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
......@@ -104,8 +146,26 @@ class SendTimeSelectView: UIView,UITableViewDelegate,UITableViewDataSource {
cell.titleLbl.font = UIFont.boldSystemFont(ofSize: 13)
cell.backgroundColor = UIColor.white
}
}else{
cell.titleLbl.text = rightListArr[indexPath.row]
}else{
switch leftStr {
case "今天":
let rightIndexKey = rightListArr![indexPath.row]
let rightText = dataModel?.today![rightIndexKey as! String]
cell.titleLbl.text = rightText
case "明天":
let rightIndexKey = rightListArr![indexPath.row]
let rightText = dataModel?.tomorrow![rightIndexKey as! String]
cell.titleLbl.text = rightText
case "后天":
let rightIndexKey = rightListArr![indexPath.row]
let rightText = dataModel?.taftert![rightIndexKey as! String]
cell.titleLbl.text = rightText
default:
break
}
cell.titleLbl.textColor = UIColor(named: "灰色字体颜色")
cell.titleLbl.font = UIFont.systemFont(ofSize: 13)
if rightSelectIdx == indexPath.row{
......@@ -120,8 +180,40 @@ class SendTimeSelectView: UIView,UITableViewDelegate,UITableViewDataSource {
if tableView == leftListView {
leftSelectIdx = indexPath.row
rightSelectIdx = nil
leftStr = leftListArr[indexPath.row]
switch leftStr {
case "今天":
let keys = dataModel?.today?.keys
let keysArr = keys?.sorted(by: { (str1, str2) -> Bool in
let num1 = str1 as NSString
let num2 = str2 as NSString
return num1.integerValue < num2.integerValue ? true : false
})
rightListArr = keysArr
case "明天":
let keys = dataModel?.tomorrow?.keys
let keysArr = keys?.sorted(by: { (str1, str2) -> Bool in
let num1 = str1 as NSString
let num2 = str2 as NSString
return num1.integerValue < num2.integerValue ? true : false
})
rightListArr = keysArr
case "后天":
let keys = dataModel?.taftert?.keys
let keysArr = keys?.sorted(by: { (str1, str2) -> Bool in
let num1 = str1 as NSString
let num2 = str2 as NSString
return num1.integerValue < num2.integerValue ? true : false
})
rightListArr = keysArr
default:
break
}
rightListView.reloadData()
leftListView.reloadData()
}
if tableView == rightListView {
......@@ -130,4 +222,24 @@ class SendTimeSelectView: UIView,UITableViewDelegate,UITableViewDataSource {
}
}
// /初始化时将xib中的view添加进来
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
contentView = loadViewFromNib()
addSubview(contentView)
contentView.snp.makeConstraints { (make) in
make.left.top.right.bottom.equalToSuperview()
}
self.setUI()
}
//加载xib
func loadViewFromNib() -> UIView {
let className = type(of: self)
let bundle = Bundle(for: className)
let name = NSStringFromClass(className).components(separatedBy: ".").last
let nib = UINib(nibName: name!, bundle: bundle)
let view = nib.instantiate(withOwner: self, options: nil).first as! UIView
self.setUI()
return view
}
}
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="15702" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="16097" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
<device id="retina6_5" orientation="portrait" appearance="light"/>
<dependencies>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15704"/>
<deployment identifier="iOS"/>
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="16087"/>
<capability name="Named colors" minToolsVersion="9.0"/>
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<objects>
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="SendTimeSelectView" customModule="GeliBusinessPlatform" customModuleProvider="target">
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="SendTimeSelectView" customModule="TestClass" customModuleProvider="target">
<connections>
<outlet property="bottomView" destination="NDY-nX-rrQ" id="VHN-ZG-jd7"/>
<outlet property="leftListView" destination="QvL-x6-Nh2" id="evH-ki-Zy4"/>
......
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