筛选功能约束问题
@@ -427,8 +427,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "1071"
|
||||
endingLineNumber = "1071"
|
||||
startingLineNumber = "1093"
|
||||
endingLineNumber = "1093"
|
||||
landmarkName = "collectionView(_:cellForItemAt:)"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -1221,8 +1221,8 @@
|
||||
filePath = "OrderScheduling/ReviewFailed/ViewController/ReviewFailedController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "320"
|
||||
endingLineNumber = "320"
|
||||
startingLineNumber = "357"
|
||||
endingLineNumber = "357"
|
||||
landmarkName = "reloadData()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -1285,8 +1285,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "268"
|
||||
endingLineNumber = "268"
|
||||
startingLineNumber = "283"
|
||||
endingLineNumber = "283"
|
||||
landmarkName = "entry(model:remarkId:)"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -2045,8 +2045,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "1082"
|
||||
endingLineNumber = "1082"
|
||||
startingLineNumber = "1104"
|
||||
endingLineNumber = "1104"
|
||||
landmarkName = "collectionView(_:didSelectItemAt:)"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -2093,8 +2093,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "343"
|
||||
endingLineNumber = "343"
|
||||
startingLineNumber = "358"
|
||||
endingLineNumber = "358"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -2109,8 +2109,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "332"
|
||||
endingLineNumber = "332"
|
||||
startingLineNumber = "347"
|
||||
endingLineNumber = "347"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -2125,8 +2125,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "334"
|
||||
endingLineNumber = "334"
|
||||
startingLineNumber = "349"
|
||||
endingLineNumber = "349"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -2284,8 +2284,8 @@
|
||||
filePath = "OrderScheduling/ReviewFailed/ViewController/ReviewFailedController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "144"
|
||||
endingLineNumber = "144"
|
||||
startingLineNumber = "168"
|
||||
endingLineNumber = "168"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -2300,8 +2300,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "79"
|
||||
endingLineNumber = "79"
|
||||
startingLineNumber = "97"
|
||||
endingLineNumber = "97"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -2316,8 +2316,8 @@
|
||||
filePath = "OrderScheduling/History/ViewController/HistoryController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "74"
|
||||
endingLineNumber = "74"
|
||||
startingLineNumber = "92"
|
||||
endingLineNumber = "92"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -2380,8 +2380,8 @@
|
||||
filePath = "OrderScheduling/ReviewFailed/ViewController/ReviewFailedController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "319"
|
||||
endingLineNumber = "319"
|
||||
startingLineNumber = "356"
|
||||
endingLineNumber = "356"
|
||||
landmarkName = "reloadData()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -2396,10 +2396,10 @@
|
||||
filePath = "OrderScheduling/ReviewFailed/ViewController/ReviewFailedController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "318"
|
||||
endingLineNumber = "318"
|
||||
landmarkName = "ReviewFailedController"
|
||||
landmarkType = "3">
|
||||
startingLineNumber = "355"
|
||||
endingLineNumber = "355"
|
||||
landmarkName = "reloadData()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
@@ -2412,8 +2412,8 @@
|
||||
filePath = "OrderScheduling/ReviewFailed/ViewController/ReviewFailedController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "254"
|
||||
endingLineNumber = "254"
|
||||
startingLineNumber = "278"
|
||||
endingLineNumber = "278"
|
||||
landmarkName = "viewDidLoad()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -2428,8 +2428,8 @@
|
||||
filePath = "OrderScheduling/ReviewFailed/ViewController/ReviewFailedController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "248"
|
||||
endingLineNumber = "248"
|
||||
startingLineNumber = "272"
|
||||
endingLineNumber = "272"
|
||||
landmarkName = "viewDidLoad()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -3003,8 +3003,8 @@
|
||||
filePath = "OrderScheduling/ReviewFailed/ViewController/ReviewFailedController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "232"
|
||||
endingLineNumber = "232"
|
||||
startingLineNumber = "256"
|
||||
endingLineNumber = "256"
|
||||
landmarkName = "init(nibName:bundle:)"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -3419,8 +3419,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "1018"
|
||||
endingLineNumber = "1018"
|
||||
startingLineNumber = "1040"
|
||||
endingLineNumber = "1040"
|
||||
landmarkName = "tableView(_:cellForRowAt:)"
|
||||
landmarkType = "7">
|
||||
<Locations>
|
||||
@@ -3467,8 +3467,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "1023"
|
||||
endingLineNumber = "1023"
|
||||
startingLineNumber = "1045"
|
||||
endingLineNumber = "1045"
|
||||
landmarkName = "tableView(_:cellForRowAt:)"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -3819,8 +3819,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "225"
|
||||
endingLineNumber = "225"
|
||||
startingLineNumber = "240"
|
||||
endingLineNumber = "240"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -3835,8 +3835,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "232"
|
||||
endingLineNumber = "232"
|
||||
startingLineNumber = "247"
|
||||
endingLineNumber = "247"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -3851,8 +3851,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "91"
|
||||
endingLineNumber = "91"
|
||||
startingLineNumber = "109"
|
||||
endingLineNumber = "109"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -3867,8 +3867,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "90"
|
||||
endingLineNumber = "90"
|
||||
startingLineNumber = "108"
|
||||
endingLineNumber = "108"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -3883,8 +3883,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "390"
|
||||
endingLineNumber = "390"
|
||||
startingLineNumber = "402"
|
||||
endingLineNumber = "402"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -3899,8 +3899,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "400"
|
||||
endingLineNumber = "400"
|
||||
startingLineNumber = "412"
|
||||
endingLineNumber = "412"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -3915,8 +3915,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "311"
|
||||
endingLineNumber = "311"
|
||||
startingLineNumber = "326"
|
||||
endingLineNumber = "326"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -3931,8 +3931,8 @@
|
||||
filePath = "OrderScheduling/History/ViewController/HistoryController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "123"
|
||||
endingLineNumber = "123"
|
||||
startingLineNumber = "141"
|
||||
endingLineNumber = "141"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -4423,8 +4423,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "2051"
|
||||
endingLineNumber = "2051"
|
||||
startingLineNumber = "2109"
|
||||
endingLineNumber = "2109"
|
||||
landmarkName = "init(style:reuseIdentifier:)"
|
||||
landmarkType = "7">
|
||||
<Locations>
|
||||
@@ -4471,8 +4471,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "2058"
|
||||
endingLineNumber = "2058"
|
||||
startingLineNumber = "2116"
|
||||
endingLineNumber = "2116"
|
||||
landmarkName = "init(style:reuseIdentifier:)"
|
||||
landmarkType = "7">
|
||||
<Locations>
|
||||
@@ -4519,8 +4519,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "697"
|
||||
endingLineNumber = "697"
|
||||
startingLineNumber = "719"
|
||||
endingLineNumber = "719"
|
||||
landmarkName = "tableView(_:cellForRowAt:)"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
@@ -4599,8 +4599,8 @@
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "1010"
|
||||
endingLineNumber = "1010"
|
||||
startingLineNumber = "1032"
|
||||
endingLineNumber = "1032"
|
||||
landmarkName = "tableView(_:cellForRowAt:)"
|
||||
landmarkType = "7">
|
||||
<Locations>
|
||||
@@ -5670,8 +5670,8 @@
|
||||
filePath = "OrderScheduling/Common/View/ConditionalSearchTool.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "15"
|
||||
endingLineNumber = "15"
|
||||
startingLineNumber = "17"
|
||||
endingLineNumber = "17"
|
||||
landmarkName = "ConditionalSearchTool"
|
||||
landmarkType = "3">
|
||||
<Locations>
|
||||
@@ -5748,124 +5748,12 @@
|
||||
filePath = "OrderScheduling/Common/View/ConditionalSearchTool.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "32"
|
||||
endingLineNumber = "32"
|
||||
startingLineNumber = "49"
|
||||
endingLineNumber = "49"
|
||||
landmarkName = "init()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "BEB59567-5E42-4686-B576-1DDBF87DB80D"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "OrderScheduling/Common/View/ConditionalSearchTool.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "38"
|
||||
endingLineNumber = "38"
|
||||
landmarkName = "init()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "7DE5C61B-A03C-442F-BCB9-81BF4AEEA4CB"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "362"
|
||||
endingLineNumber = "362"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "2AA0A341-CD49-4548-90F7-6E0AC6503302"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "OrderScheduling/Common/View/ConditionalSearchView.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "340"
|
||||
endingLineNumber = "340"
|
||||
landmarkName = "updateLayout(bottom:)"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "EFED7A5B-E70B-4B9D-A029-39BC04F78AFF"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "OrderScheduling/Common/View/ConditionalSearchTool.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "37"
|
||||
endingLineNumber = "37"
|
||||
landmarkName = "init()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "1C35974D-0370-4B7E-AC98-C52286B0F664"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "OrderScheduling/Common/View/ConditionalSearchView.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "341"
|
||||
endingLineNumber = "341"
|
||||
landmarkName = "updateLayout(bottom:)"
|
||||
landmarkType = "7">
|
||||
<Locations>
|
||||
<Location
|
||||
uuid = "1C35974D-0370-4B7E-AC98-C52286B0F664 - b91ec168141fd471"
|
||||
shouldBeEnabled = "Yes"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
symbolName = "OrderScheduling.ConditionalSearchView.updateLayout(bottom: Swift.Optional<CoreGraphics.CGFloat>) -> ()"
|
||||
moduleName = "OrderScheduling"
|
||||
usesParentBreakpointCondition = "Yes"
|
||||
urlString = "file:///Users/zd/Desktop/%E4%B8%AD%E9%81%93%E6%95%91%E6%8F%B4/OrderScheduling/OrderScheduling/Common/View/ConditionalSearchView.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "341"
|
||||
endingLineNumber = "341"
|
||||
offsetFromSymbolStart = "772">
|
||||
</Location>
|
||||
<Location
|
||||
uuid = "1C35974D-0370-4B7E-AC98-C52286B0F664 - 196bc1da8fca170a"
|
||||
shouldBeEnabled = "Yes"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
symbolName = "closure #1 (SnapKit.ConstraintMaker) -> () in OrderScheduling.ConditionalSearchView.updateLayout(bottom: Swift.Optional<CoreGraphics.CGFloat>) -> ()"
|
||||
moduleName = "OrderScheduling"
|
||||
usesParentBreakpointCondition = "Yes"
|
||||
urlString = "file:///Users/zd/Desktop/%E4%B8%AD%E9%81%93%E6%95%91%E6%8F%B4/OrderScheduling/OrderScheduling/Common/View/ConditionalSearchView.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "342"
|
||||
endingLineNumber = "342"
|
||||
offsetFromSymbolStart = "540">
|
||||
</Location>
|
||||
</Locations>
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
@@ -5882,5 +5770,149 @@
|
||||
landmarkType = "24">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "B521071E-796C-4837-ABC3-C2DA7726E05B"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "78"
|
||||
endingLineNumber = "78"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "A13BDBEE-D623-47FC-A3ED-04B53AFE6700"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "378"
|
||||
endingLineNumber = "378"
|
||||
landmarkName = "addActions()"
|
||||
landmarkType = "7">
|
||||
<Locations>
|
||||
<Location
|
||||
uuid = "A13BDBEE-D623-47FC-A3ED-04B53AFE6700 - 1e03ced19486a8ad"
|
||||
shouldBeEnabled = "Yes"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
symbolName = "closure #5 (Swift.Optional<Any>) -> () in OrderScheduling.RescuePendingDispatchController.addActions() -> ()"
|
||||
moduleName = "OrderScheduling"
|
||||
usesParentBreakpointCondition = "Yes"
|
||||
urlString = "file:///Users/zd/Desktop/%E4%B8%AD%E9%81%93%E6%95%91%E6%8F%B4/OrderScheduling/OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "378"
|
||||
endingLineNumber = "378"
|
||||
offsetFromSymbolStart = "636">
|
||||
</Location>
|
||||
<Location
|
||||
uuid = "A13BDBEE-D623-47FC-A3ED-04B53AFE6700 - 805d6a296eb12019"
|
||||
shouldBeEnabled = "Yes"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
symbolName = "closure #1 (SnapKit.ConstraintMaker) -> () in closure #5 (Swift.Optional<Any>) -> () in OrderScheduling.RescuePendingDispatchController.addActions() -> ()"
|
||||
moduleName = "OrderScheduling"
|
||||
usesParentBreakpointCondition = "Yes"
|
||||
urlString = "file:///Users/zd/Desktop/%E4%B8%AD%E9%81%93%E6%95%91%E6%8F%B4/OrderScheduling/OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "379"
|
||||
endingLineNumber = "379"
|
||||
offsetFromSymbolStart = "424">
|
||||
</Location>
|
||||
</Locations>
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "B36632A4-D280-484A-BF20-B47984576B2C"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "1148"
|
||||
endingLineNumber = "1148"
|
||||
landmarkName = "addSubviews()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "21D51AFB-3BE0-4EBC-805E-1FAEEB3D9DC6"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "1191"
|
||||
endingLineNumber = "1191"
|
||||
landmarkName = "addSubviews()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "D5BF9B1B-9982-4D70-A71A-1853537F6413"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "1244"
|
||||
endingLineNumber = "1244"
|
||||
landmarkName = "viewDidLoad()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "5799B663-8A3B-4300-B73E-A1F2549C6F4A"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "1293"
|
||||
endingLineNumber = "1293"
|
||||
landmarkName = "viewDidLoad()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
<BreakpointProxy
|
||||
BreakpointExtensionID = "Xcode.Breakpoint.FileBreakpoint">
|
||||
<BreakpointContent
|
||||
uuid = "B8A780E0-33C7-43B7-92CD-B67D5CA7B1BD"
|
||||
shouldBeEnabled = "No"
|
||||
ignoreCount = "0"
|
||||
continueAfterRunningActions = "No"
|
||||
filePath = "OrderScheduling/Rescue/ViewController/RescueController.swift"
|
||||
startingColumnNumber = "9223372036854775807"
|
||||
endingColumnNumber = "9223372036854775807"
|
||||
startingLineNumber = "1341"
|
||||
endingLineNumber = "1341"
|
||||
landmarkName = "viewDidLoad()"
|
||||
landmarkType = "7">
|
||||
</BreakpointContent>
|
||||
</BreakpointProxy>
|
||||
</Breakpoints>
|
||||
</Bucket>
|
||||
|
||||
|
Before Width: | Height: | Size: 478 B After Width: | Height: | Size: 181 B |
|
Before Width: | Height: | Size: 900 B After Width: | Height: | Size: 288 B |
|
Before Width: | Height: | Size: 1.4 KiB After Width: | Height: | Size: 468 B |
|
Before Width: | Height: | Size: 316 B |
|
Before Width: | Height: | Size: 377 B |
|
Before Width: | Height: | Size: 462 B |
@@ -1,17 +1,17 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "conditional_search_exit.png",
|
||||
"filename" : "conditional_search_reset.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "conditional_search_exit@2x.png",
|
||||
"filename" : "conditional_search_reset@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "conditional_search_exit@3x.png",
|
||||
"filename" : "conditional_search_reset@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
|
After Width: | Height: | Size: 226 B |
|
After Width: | Height: | Size: 401 B |
|
After Width: | Height: | Size: 588 B |
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"images" : [
|
||||
{
|
||||
"filename" : "conditional_search_unselected.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "1x"
|
||||
},
|
||||
{
|
||||
"filename" : "conditional_search_unselected@2x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "2x"
|
||||
},
|
||||
{
|
||||
"filename" : "conditional_search_unselected@3x.png",
|
||||
"idiom" : "universal",
|
||||
"scale" : "3x"
|
||||
}
|
||||
],
|
||||
"info" : {
|
||||
"author" : "xcode",
|
||||
"version" : 1
|
||||
}
|
||||
}
|
||||
|
After Width: | Height: | Size: 147 B |
|
After Width: | Height: | Size: 255 B |
|
After Width: | Height: | Size: 383 B |
@@ -9,51 +9,55 @@ import Foundation
|
||||
import RxSwift
|
||||
import RxRelay
|
||||
import RxCocoa
|
||||
import SnapKit
|
||||
import DDControlsKit_Private
|
||||
|
||||
class ConditionalSearchTool : NSObject {
|
||||
|
||||
private lazy var searchView = ConditionalSearchView.init()
|
||||
private let disposeBag = DisposeBag()
|
||||
public let showSearchViewSub = ReplayRelay<CGFloat?>.create(bufferSize: 1)
|
||||
public lazy var searchView = ConditionalSearchView.init()
|
||||
public lazy var coverView = DDView()
|
||||
|
||||
private let disposeBag = DisposeBag()
|
||||
|
||||
/// 任务信息
|
||||
public var orderCodeItem : String?
|
||||
public var carOwnerItem : String?
|
||||
public var licenseItem : String?
|
||||
|
||||
/// 合同信息
|
||||
public var contractNameItem : String?
|
||||
public var contractSelectedItem : Int?
|
||||
public var contractSelectedItemString : String?
|
||||
public var serviceSelectedItem : Int?
|
||||
public var serviceSelectedItemString : String?
|
||||
|
||||
/// 事发时间
|
||||
public var fromSelectedItem : String?
|
||||
public var toSelectedItem : String?
|
||||
|
||||
/// 服务内容
|
||||
public var serviceSelectedItem : Int?
|
||||
public var serviceSelectedItemString : String?
|
||||
public var serviceNameItem : String?
|
||||
|
||||
public var searchParameters : OrderListParameters?
|
||||
|
||||
public var resetSub = ReplayRelay<Any?>.create(bufferSize: 1)
|
||||
public var searchSub = ReplayRelay<Any?>.create(bufferSize: 1)
|
||||
|
||||
public var isFilterSub = ReplayRelay<Bool>.create(bufferSize: 1)
|
||||
|
||||
override init() {
|
||||
super.init()
|
||||
|
||||
showSearchViewSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] bottom in
|
||||
if let searchView = self?.searchView {
|
||||
searchView.updateLayout(bottom: bottom)
|
||||
ENTRY.showSearchEntry(view: searchView,name: conitionalSearchEntry)
|
||||
}
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
searchView.exitButton.rx.tap
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {
|
||||
ENTRY.dismiss(name: conitionalSearchEntry)
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
coverView.backgroundColor = .hex("848484").alpha(0.3)
|
||||
coverView.isHidden = true
|
||||
|
||||
searchView.contractTypeButton.rx.tap
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
CP.showItems(items: [OrderListParameters.ContractTypeEnum.baoxian.rawValue,OrderListParameters.ContractTypeEnum.chechan.rawValue,OrderListParameters.ContractTypeEnum.fours.rawValue,OrderListParameters.ContractTypeEnum.wuliu.rawValue,OrderListParameters.ContractTypeEnum.sanke.rawValue,OrderListParameters.ContractTypeEnum.xuni.rawValue,OrderListParameters.ContractTypeEnum.yiliao.rawValue,OrderListParameters.ContractTypeEnum.zixun.rawValue,OrderListParameters.ContractTypeEnum.huicheng.rawValue],selectedItem: self?.contractSelectedItemString) {[weak self] result in
|
||||
self?.contractSelectedItem = OrderListParameters.ContractTypeValue(contractType: OrderListParameters.ContractTypeEnum(rawValue: result?.value ?? OrderListParameters.ContractTypeEnum.none.rawValue) ?? OrderListParameters.ContractTypeEnum.none).value
|
||||
|
||||
self?.contractSelectedItemString = result?.value
|
||||
self?.contractSelectedItem = OrderListParameters.ContractTypeValue(contractType: OrderListParameters.ContractTypeEnum(rawValue: result?.value ?? OrderListParameters.ContractTypeEnum.none.rawValue) ?? OrderListParameters.ContractTypeEnum.none).value
|
||||
|
||||
DispatchQueue.main.async {[weak self] in
|
||||
self?.searchView.setButtonValue(button: self?.searchView.contractTypeButton, value: result?.value)
|
||||
}
|
||||
@@ -101,20 +105,51 @@ class ConditionalSearchTool : NSObject {
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
searchView.orderCodeTextFiled.rx.text
|
||||
.subscribe(onNext: {[weak self] text in
|
||||
self?.orderCodeItem = text?.isEmpty == false ? text : nil
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
searchView.carOwnerTextField.rx.text
|
||||
.subscribe(onNext: {[weak self] text in
|
||||
self?.carOwnerItem = text?.isEmpty == false ? text : nil
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
searchView.licenseTextField.rx.text
|
||||
.subscribe(onNext: {[weak self] text in
|
||||
self?.licenseItem = text?.isEmpty == false ? text : nil
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
searchView.serviceTextField.rx.text
|
||||
.subscribe(onNext: {[weak self] text in
|
||||
self?.serviceNameItem = text?.isEmpty == false ? text : nil
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
searchView.resetButton.rx.tap
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.searchView.resetAction()
|
||||
|
||||
self?.orderCodeItem = nil
|
||||
self?.carOwnerItem = nil
|
||||
self?.licenseItem = nil
|
||||
|
||||
self?.contractSelectedItem = nil
|
||||
self?.contractSelectedItemString = nil
|
||||
self?.serviceSelectedItem = nil
|
||||
self?.serviceSelectedItemString = nil
|
||||
|
||||
self?.fromSelectedItem = nil
|
||||
self?.toSelectedItem = nil
|
||||
|
||||
self?.resetSub.accept(nil)
|
||||
self?.serviceSelectedItem = nil
|
||||
self?.serviceSelectedItemString = nil
|
||||
self?.serviceNameItem = nil
|
||||
|
||||
// self?.resetSub.accept(nil)
|
||||
// self?.isFilterSub.accept(self?.isFiltered() ?? false)
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
@@ -122,13 +157,20 @@ class ConditionalSearchTool : NSObject {
|
||||
searchView.searchButton.rx.tap
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
ENTRY.dismiss(name: conitionalSearchEntry)
|
||||
self?.searchSub.accept(nil)
|
||||
self?.isFilterSub.accept(self?.isFiltered() ?? false)
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
}
|
||||
|
||||
func getParameters(pageNum: Int,queryType: OrderTypeEnum) -> OrderListParameters {
|
||||
return OrderListParameters(pageNum: pageNum, queryType: queryType, searchCode: searchView.orderCodeTextFiled.text?.isEmpty == false ? searchView.orderCodeTextFiled.text : nil, userPhone: searchView.carOwnerTextField.text?.isEmpty == false ? searchView.carOwnerTextField.text : nil, soleCode: searchView.licenseTextField.text?.isEmpty == false ? searchView.licenseTextField.text : nil, contractName: searchView.contractTextFiled.text?.isEmpty == false ? searchView.contractTextFiled.text : nil, contractType:contractSelectedItem,createTimeStart: fromSelectedItem,createTimeEnd: toSelectedItem,isAppoint: serviceSelectedItem,serviceName: searchView.serviceTextField.text?.isEmpty == false ? searchView.serviceTextField.text : nil)
|
||||
return OrderListParameters(pageNum: pageNum, queryType: queryType, searchCode: orderCodeItem, userPhone: carOwnerItem, soleCode: licenseItem, contractName: contractNameItem, contractType:contractSelectedItem,createTimeStart: fromSelectedItem,createTimeEnd: toSelectedItem,isAppoint: serviceSelectedItem,serviceName: serviceNameItem)
|
||||
}
|
||||
|
||||
func isFiltered() -> Bool {
|
||||
if orderCodeItem?.isEmpty == false || carOwnerItem?.isEmpty == false || licenseItem?.isEmpty == false || serviceSelectedItem != nil || fromSelectedItem?.isEmpty == false || toSelectedItem?.isEmpty == false || serviceSelectedItem != nil || serviceNameItem?.isEmpty == false {
|
||||
return true
|
||||
}
|
||||
return false
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,7 +12,6 @@ import DDColorKit_Private
|
||||
|
||||
class ConditionalSearchView : DDView {
|
||||
public var titleLabel : DDLabel
|
||||
public var exitButton : DDButton
|
||||
public var scrollView : DDScrollView
|
||||
public var scrollContentView : DDView
|
||||
public var bottomView : DDView
|
||||
@@ -42,9 +41,11 @@ class ConditionalSearchView : DDView {
|
||||
public let noneFont = UIFont.mediumFont(14)
|
||||
public let valueFont = UIFont.mediumFont(14)
|
||||
|
||||
let layerView = UIView()
|
||||
let borderLayer1 = CAGradientLayer()
|
||||
|
||||
public override init(frame: CGRect) {
|
||||
titleLabel = DDLabel.dd_init(withText: "订单筛选", font: .mediumFont(17), textColor: .hex("000000").alpha(0.8))
|
||||
exitButton = DDButton.dd_initCustom()
|
||||
bottomView = DDView.init()
|
||||
scrollView = DDScrollView.init()
|
||||
scrollContentView = DDView.init()
|
||||
@@ -70,12 +71,16 @@ class ConditionalSearchView : DDView {
|
||||
super.init(frame: frame)
|
||||
|
||||
backgroundColor = .white
|
||||
exitButton.setImage(UIImage(named: "conditional_search_exit"), for: .normal)
|
||||
resetButton.setTitle("重置", for: .normal)
|
||||
resetButton.dd_setBackgroundColor(controlBackgroundColor)
|
||||
resetButton.titleLabel?.font = .mediumFont(15)
|
||||
resetButton.setImage(UIImage(named: "conditional_search_reset"), for: .normal)
|
||||
resetButton.setTitleColor(.hex("000000"), for: .normal)
|
||||
resetButton.dd_customize(with: .ImageLeftPaddingTitleRightWithWholeCenter, padding: 5)
|
||||
searchButton.setTitle("搜索", for: .normal)
|
||||
searchButton.titleLabel?.font = .mediumFont(15)
|
||||
searchButton.dd_setBackgroundColor(.hex("2A5094"))
|
||||
layer.maskedCorners = [.layerMinXMinYCorner,.layerMaxXMinYCorner]
|
||||
searchButton.layer.cornerRadius = auto(20)
|
||||
layer.maskedCorners = [.layerMinXMaxYCorner,.layerMaxXMaxYCorner]
|
||||
layer.masksToBounds = true
|
||||
layer.cornerRadius = auto(16)
|
||||
|
||||
@@ -85,44 +90,46 @@ class ConditionalSearchView : DDView {
|
||||
make.height.equalTo(auto(80))
|
||||
}
|
||||
|
||||
let contentView = DDView.init()
|
||||
contentView.layer.cornerRadius = auto(20)
|
||||
contentView.layer.masksToBounds = true
|
||||
bottomView.addSubview(contentView)
|
||||
contentView.snp.makeConstraints { make in
|
||||
make.centerX.centerY.equalToSuperview()
|
||||
make.left.right.equalToSuperview().inset(auto(10))
|
||||
make.height.equalTo(auto(40))
|
||||
}
|
||||
bottomView.addSubview(resetButton)
|
||||
bottomView.addSubview(searchButton)
|
||||
|
||||
contentView.addSubview(resetButton)
|
||||
resetButton.snp.makeConstraints { make in
|
||||
make.left.top.bottom.equalToSuperview()
|
||||
make.width.equalToSuperview().multipliedBy(0.5)
|
||||
make.centerY.equalToSuperview()
|
||||
make.height.equalTo(auto(40))
|
||||
make.width.equalTo(auto(60))
|
||||
make.right.equalTo(searchButton.snp.left).offset(-auto(60))
|
||||
}
|
||||
|
||||
contentView.addSubview(searchButton)
|
||||
searchButton.snp.makeConstraints { make in
|
||||
make.right.top.bottom.equalToSuperview()
|
||||
make.width.equalToSuperview().multipliedBy(0.5)
|
||||
make.centerY.equalToSuperview()
|
||||
make.right.equalToSuperview().offset(-auto(10))
|
||||
make.width.equalTo(auto(200))
|
||||
make.height.equalTo(auto(40))
|
||||
}
|
||||
|
||||
addSubview(titleLabel)
|
||||
titleLabel.snp.makeConstraints { make in
|
||||
make.top.equalToSuperview().offset(auto(20))
|
||||
make.top.equalToSuperview().offset(auto(10))
|
||||
make.centerX.equalToSuperview()
|
||||
}
|
||||
|
||||
addSubview(exitButton)
|
||||
exitButton.snp.makeConstraints { make in
|
||||
make.centerY.equalTo(titleLabel)
|
||||
make.right.equalTo(-auto(20))
|
||||
borderLayer1.colors = [UIColor.hex("D9D9D9").alpha(0.6).cgColor, UIColor.hex("B2B2B2").alpha(0.8).cgColor, UIColor.hex("D9D9D9").alpha(0.6).cgColor]
|
||||
borderLayer1.locations = [0, 0.5, 1]
|
||||
borderLayer1.startPoint = CGPoint(x: 0, y: 0.5)
|
||||
borderLayer1.endPoint = CGPoint(x: 1, y: 0.5)
|
||||
layerView.layer.addSublayer(borderLayer1)
|
||||
addSubview(layerView)
|
||||
layerView.snp.makeConstraints { make in
|
||||
make.top.equalTo(titleLabel.snp.bottom).offset(auto(10))
|
||||
make.width.equalTo(auto(324))
|
||||
make.height.equalTo(0.5)
|
||||
make.centerX.equalToSuperview()
|
||||
}
|
||||
|
||||
addSubview(scrollView)
|
||||
scrollView.snp.makeConstraints { make in
|
||||
make.top.equalTo(layerView.snp.bottom).offset(auto(10)).priority(.high)
|
||||
make.left.right.equalToSuperview()
|
||||
make.top.equalTo(titleLabel.snp.bottom).offset(auto(20))
|
||||
make.bottom.equalTo(bottomView.snp.top)
|
||||
}
|
||||
|
||||
@@ -146,9 +153,9 @@ class ConditionalSearchView : DDView {
|
||||
orderCodeTextFiled.font = valueFont
|
||||
scrollContentView.addSubview(orderCodeTextFiled)
|
||||
orderCodeTextFiled.snp.makeConstraints { make in
|
||||
make.left.equalTo(orderInfoTitleLabel)
|
||||
make.left.equalTo(orderInfoTitleLabel).priority(.high)
|
||||
make.top.equalTo(orderInfoTitleLabel.snp.bottom).offset(auto(10))
|
||||
make.width.equalToSuperview().multipliedBy(0.5).offset(-auto(15))
|
||||
make.right.equalTo(snp.centerX).offset(-auto(5))
|
||||
make.height.equalTo(auto(30))
|
||||
}
|
||||
|
||||
@@ -160,9 +167,9 @@ class ConditionalSearchView : DDView {
|
||||
licenseTextField.font = valueFont
|
||||
scrollContentView.addSubview(licenseTextField)
|
||||
licenseTextField.snp.makeConstraints { make in
|
||||
make.right.equalTo(-auto(10))
|
||||
make.right.equalTo(-auto(10)).priority(.high)
|
||||
make.top.equalTo(orderCodeTextFiled)
|
||||
make.width.equalToSuperview().multipliedBy(0.5).offset(-auto(15))
|
||||
make.left.equalTo(snp.centerX).offset(auto(5))
|
||||
make.height.equalTo(orderCodeTextFiled)
|
||||
}
|
||||
|
||||
@@ -235,9 +242,9 @@ class ConditionalSearchView : DDView {
|
||||
scrollContentView.addSubview(fromDateButton)
|
||||
fromDateButton.snp.makeConstraints { make in
|
||||
make.top.equalTo(dateTitleLabel.snp.bottom).offset(auto(10))
|
||||
make.left.equalTo(auto(10))
|
||||
make.left.equalTo(auto(10)).priority(.high)
|
||||
make.height.equalTo(orderCodeTextFiled)
|
||||
make.width.equalToSuperview().multipliedBy(0.5).offset(-auto(20))
|
||||
make.right.equalTo(snp.centerX).offset(-auto(10))
|
||||
}
|
||||
|
||||
let middleLine = DDView()
|
||||
@@ -258,10 +265,10 @@ class ConditionalSearchView : DDView {
|
||||
toDateButton.titleLabel?.font = valueFont
|
||||
scrollContentView.addSubview(toDateButton)
|
||||
toDateButton.snp.makeConstraints { make in
|
||||
make.right.equalTo(licenseTextField.snp.right)
|
||||
make.right.equalTo(licenseTextField.snp.right).priority(.high)
|
||||
make.top.equalTo(fromDateButton)
|
||||
make.height.width.equalTo(fromDateButton)
|
||||
make.width.equalToSuperview().multipliedBy(0.5).offset(-auto(20))
|
||||
make.left.equalTo(snp.centerX).offset(auto(10))
|
||||
}
|
||||
|
||||
scrollContentView.addSubview(serviceTitleLabel)
|
||||
@@ -278,7 +285,7 @@ class ConditionalSearchView : DDView {
|
||||
serviceTextField.font = valueFont
|
||||
scrollContentView.addSubview(serviceTextField)
|
||||
serviceTextField.snp.makeConstraints { make in
|
||||
make.top.equalTo(serviceTitleLabel.snp.bottom).offset(auto(10))
|
||||
make.top.equalTo(serviceTitleLabel.snp.bottom).offset(auto(10)).priority(.high)
|
||||
make.left.equalTo(orderCodeTextFiled)
|
||||
make.height.equalTo(orderCodeTextFiled)
|
||||
make.width.equalTo(orderCodeTextFiled)
|
||||
@@ -331,16 +338,13 @@ class ConditionalSearchView : DDView {
|
||||
serviceTextField.text = nil
|
||||
}
|
||||
|
||||
override func layoutSubviews() {
|
||||
super.layoutSubviews()
|
||||
borderLayer1.frame = layerView.bounds
|
||||
}
|
||||
|
||||
func setButtonValue(button: DDButton?, value: String?) {
|
||||
button?.setTitle(value, for: .normal)
|
||||
button?.setTitleColor(valueColor, for: .normal)
|
||||
}
|
||||
|
||||
func updateLayout(bottom: CGFloat?) {
|
||||
if let bottom {
|
||||
bottomView.snp.updateConstraints { make in
|
||||
make.bottom.equalToSuperview().offset(-bottom)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -449,50 +449,51 @@ open class Entry {
|
||||
attributes.statusBar = .light
|
||||
SwiftEntryKit.display(entry: view, using: attributes)
|
||||
}
|
||||
|
||||
func showSearchEntry(view: UIView, name: String? = nil) {
|
||||
var attributes = EKAttributes()
|
||||
attributes = .bottomFloat
|
||||
attributes.name = name
|
||||
attributes.precedence = .override(priority: .min, dropEnqueuedEntries: false)
|
||||
attributes.displayMode = .inferred
|
||||
attributes.displayDuration = .infinity
|
||||
attributes.screenBackground = .color(color: .black.with(alpha: 0.3))
|
||||
attributes.entryBackground = .color(color: .clear)
|
||||
attributes.screenInteraction = .absorbTouches
|
||||
attributes.entryInteraction = .absorbTouches
|
||||
attributes.scroll = .disabled
|
||||
attributes.entranceAnimation = .init(
|
||||
translate: .init(
|
||||
duration: 0.25,
|
||||
spring: .init(damping: 1, initialVelocity: 0)
|
||||
)
|
||||
)
|
||||
attributes.exitAnimation = .init(
|
||||
translate: .init(duration: 0.25)
|
||||
)
|
||||
attributes.popBehavior = .animated(
|
||||
animation: .init(
|
||||
translate: .init(duration: 0.25)
|
||||
)
|
||||
)
|
||||
attributes.shadow = .active(
|
||||
with: .init(
|
||||
color: .black,
|
||||
opacity: 0.3,
|
||||
radius: 6
|
||||
)
|
||||
)
|
||||
attributes.positionConstraints.size = .init(
|
||||
width: .fill,
|
||||
height: .constant(value: auto(500))
|
||||
)
|
||||
attributes.positionConstraints.verticalOffset = 0
|
||||
attributes.positionConstraints.safeArea = .overridden
|
||||
attributes.positionConstraints.rotation.isEnabled = false
|
||||
attributes.statusBar = .light
|
||||
SwiftEntryKit.display(entry: view, using: attributes)
|
||||
}
|
||||
//
|
||||
// func showSearchEntry(view: UIView, name: String? = nil) {
|
||||
// var attributes = EKAttributes()
|
||||
// attributes = .topToast
|
||||
// attributes.name = name
|
||||
// attributes.precedence = .override(priority: .min, dropEnqueuedEntries: false)
|
||||
// attributes.displayMode = .inferred
|
||||
// attributes.displayDuration = .infinity
|
||||
// attributes.screenBackground = .color(color: .black.with(alpha: 0.3))
|
||||
// attributes.entryBackground = .color(color: .clear)
|
||||
// attributes.screenInteraction = .absorbTouches
|
||||
// attributes.entryInteraction = .absorbTouches
|
||||
// attributes.scroll = .disabled
|
||||
// attributes.entranceAnimation = .init(
|
||||
// translate: .init(
|
||||
// duration: 0.25,
|
||||
// spring: .init(damping: 1, initialVelocity: 0)
|
||||
// )
|
||||
// )
|
||||
// attributes.exitAnimation = .init(
|
||||
// translate: .init(duration: 0.25)
|
||||
// )
|
||||
// attributes.popBehavior = .animated(
|
||||
// animation: .init(
|
||||
// translate: .init(duration: 0.25)
|
||||
// )
|
||||
// )
|
||||
// attributes.shadow = .active(
|
||||
// with: .init(
|
||||
// color: .black,
|
||||
// opacity: 0.3,
|
||||
// radius: 6
|
||||
// )
|
||||
// )
|
||||
// attributes.positionConstraints.size = .init(
|
||||
// width: .fill,
|
||||
// height: .constant(value: auto(500))
|
||||
// )
|
||||
// attributes.positionConstraints.verticalOffset = 0
|
||||
// attributes.positionConstraints.safeArea = .empty(fillSafeArea: false)
|
||||
// attributes.positionConstraints.verticalOffset = 44 + auto(44)
|
||||
// attributes.positionConstraints.rotation.isEnabled = false
|
||||
// attributes.statusBar = .light
|
||||
// SwiftEntryKit.display(entry: view, using: attributes, presentInsideKeyWindow: true)
|
||||
// }
|
||||
|
||||
public func isCurrentlyDisplaying(entryNamed name: String? = nil) -> Bool {
|
||||
return SwiftEntryKit.isCurrentlyDisplaying(entryNamed: name)
|
||||
|
||||
@@ -67,6 +67,24 @@ extension HistoryController {
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
filterButton.rx.tap
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
if let containerView = self?.categoryView.listContainer as? JXCategoryListContainerView,let selectedIndex = self?.categoryView.selectedIndex {
|
||||
let key = NSNumber(value: selectedIndex)
|
||||
let vc = containerView.validListDict[key] as? HistoryItemController
|
||||
vc?.conditionalSearchTool.searchView.snp.updateConstraints({ make in
|
||||
make.height.equalTo(auto(450))
|
||||
})
|
||||
|
||||
UIView.animate(withDuration: 0.25) {
|
||||
vc?.view.layoutIfNeeded()
|
||||
}
|
||||
|
||||
vc?.conditionalSearchTool.coverView.isHidden = false
|
||||
}
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
// 点击tabBar 需要刷下下列
|
||||
preRefreshRelay
|
||||
.observe(on: MainScheduler.instance)
|
||||
@@ -132,22 +150,19 @@ extension HistoryItemController {
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
searchButton.rx.tap
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.conditionalSearchTool.showSearchViewSub.accept(UIApplication.shared.dd_keyWindow.safeAreaInsets.bottom)
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
conditionalSearchTool.resetSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.historyItemView.tableView.mj_header?.beginRefreshing()
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
conditionalSearchTool.searchSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.conditionalSearchTool.searchView.snp.updateConstraints({ make in
|
||||
make.height.equalTo(0)
|
||||
})
|
||||
|
||||
UIView.animate(withDuration: 0.25) {
|
||||
self?.conditionalSearchTool.searchView.superview?.layoutIfNeeded()
|
||||
}
|
||||
|
||||
self?.conditionalSearchTool.coverView.isHidden = true
|
||||
|
||||
self?.historyItemView.tableView.mj_header?.beginRefreshing()
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
@@ -304,18 +319,34 @@ extension HistoryController : JXCategoryViewDelegate,JXCategoryListContainerView
|
||||
}
|
||||
|
||||
public func listContainerView(_ listContainerView: JXCategoryListContainerView!, initListFor index: Int) -> JXCategoryListContentViewDelegate! {
|
||||
var vc : HistoryItemController
|
||||
if index == 0 {
|
||||
return HistoryItemController(type: .UNCLOSED_ORDER)
|
||||
vc = HistoryItemController(type: .UNCLOSED_ORDER)
|
||||
}else if index == 1 {
|
||||
vc = HistoryItemController(type: .WITHIN_30_DAYS)
|
||||
}else {
|
||||
vc = HistoryItemController(type: .WITHIN_3_MONTHS)
|
||||
}
|
||||
if index == 1 {
|
||||
return HistoryItemController(type: .WITHIN_30_DAYS)
|
||||
vc.conditionalSearchTool.isFilterSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] isFilter in
|
||||
if isFilter == true {
|
||||
self?.filterButton.setTitleColor(.hex("3678FF"), for: .normal)
|
||||
self?.filterButton.setImage(UIImage(named: "conditional_search"), for: .normal)
|
||||
}else{
|
||||
self?.filterButton.setTitleColor(.hex("737373").alpha(0.55), for: .normal)
|
||||
self?.filterButton.setImage(UIImage(named: "conditional_search_unselected")?.withTintColor(.hex("737373")), for: .normal)
|
||||
}
|
||||
return HistoryItemController(type: .WITHIN_3_MONTHS)
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
return vc
|
||||
}
|
||||
}
|
||||
|
||||
open class HistoryController : ZDViewController {
|
||||
private let categoryView = JXCategoryTitleView()
|
||||
private let filterButton = DDButton.dd_initCustom()
|
||||
private lazy var categoryContainerView = JXCategoryListContainerView(type: .scrollView, delegate: self)
|
||||
private let reloadToDoMessageCountRelay = ReplayRelay<Any?>.create(bufferSize: 1)
|
||||
private let disposeBag = DisposeBag()
|
||||
@@ -340,7 +371,7 @@ open class HistoryController : ZDViewController {
|
||||
categoryView.titles = ["未关闭工单","30天内工单","3个月内工单"]
|
||||
categoryView.titleColor = .hex("737373").alpha(0.55)
|
||||
categoryView.titleSelectedColor = .hex("3678FF")
|
||||
categoryView.backgroundColor = .hex("F4F5F7")
|
||||
categoryView.backgroundColor = .hex("FAFAFA")
|
||||
categoryView.delegate = self
|
||||
view.addSubview(categoryView)
|
||||
|
||||
@@ -351,6 +382,30 @@ open class HistoryController : ZDViewController {
|
||||
indicator.verticalMargin = 7
|
||||
categoryView.indicators = [indicator]
|
||||
|
||||
/// 筛选
|
||||
let seperateLine = DDView()
|
||||
seperateLine.backgroundColor = .hex("737373").alpha(0.3)
|
||||
filterButton.addSubview(seperateLine)
|
||||
seperateLine.snp.makeConstraints { make in
|
||||
make.centerY.equalTo(filterButton)
|
||||
make.width.equalTo(1)
|
||||
make.height.equalTo(filterButton).multipliedBy(0.5)
|
||||
make.left.equalTo(filterButton.snp.left)
|
||||
}
|
||||
filterButton.dd_setBackgroundColor(.hex("FAFAFA"))
|
||||
filterButton.setTitle("筛选", for: .normal)
|
||||
filterButton.setTitleColor(.hex("737373").alpha(0.55), for: .normal)
|
||||
filterButton.titleLabel?.font = .regularFont(auto(12))
|
||||
filterButton.setImage(UIImage(named: "conditional_search_unselected")?.withTintColor(.hex("737373")), for: .normal)
|
||||
filterButton.dd_customize(with: .ImageRightPaddingTitleLeftWithWholeCenter, padding: 5)
|
||||
view.addSubview(filterButton)
|
||||
filterButton.snp.makeConstraints { make in
|
||||
make.left.equalTo(categoryView.snp.right)
|
||||
make.right.equalToSuperview()
|
||||
make.top.equalTo(categoryView)
|
||||
make.bottom.equalTo(categoryView)
|
||||
}
|
||||
|
||||
// 内容
|
||||
view.addSubview(categoryContainerView!)
|
||||
categoryView.listContainer = categoryContainerView
|
||||
@@ -376,7 +431,8 @@ open class HistoryController : ZDViewController {
|
||||
super.viewSafeAreaInsetsDidChange()
|
||||
|
||||
categoryView.snp.remakeConstraints { make in
|
||||
make.left.right.equalToSuperview()
|
||||
make.left.equalToSuperview()
|
||||
make.right.equalToSuperview().offset(-auto(60))
|
||||
make.top.equalTo(view.safeAreaInsets.top)
|
||||
make.height.equalTo(auto(44))
|
||||
}
|
||||
@@ -407,7 +463,6 @@ class HistoryItemController : ZDViewController {
|
||||
private var type : OrderTypeEnum
|
||||
private var emptyView = EmptyView()
|
||||
|
||||
private var searchButton = DDButton.dd_initCustom()
|
||||
public lazy var conditionalSearchTool = ConditionalSearchTool()
|
||||
|
||||
public init(type:OrderTypeEnum) {
|
||||
@@ -444,16 +499,24 @@ class HistoryItemController : ZDViewController {
|
||||
historyItemView.tableView.delegate = self
|
||||
historyItemView.tableView.dataSource = self
|
||||
|
||||
searchButton.backgroundColor = .hex("2A5094")
|
||||
searchButton.setImage(UIImage(named: "conditional_search"), for: .normal)
|
||||
view.addSubview(searchButton)
|
||||
searchButton.layer.cornerRadius = auto(20)
|
||||
searchButton.snp.remakeConstraints { make in
|
||||
make.bottom.equalTo(historyItemView.snp.bottom).offset(-auto(30))
|
||||
make.right.equalTo(historyItemView.snp.right).offset(-auto(20))
|
||||
make.width.height.equalTo(auto(40))
|
||||
historyItemView.addSubview(conditionalSearchTool.coverView)
|
||||
conditionalSearchTool.coverView.snp.remakeConstraints({ make in
|
||||
make.edges.equalToSuperview()
|
||||
})
|
||||
|
||||
historyItemView.addSubview(conditionalSearchTool.searchView)
|
||||
conditionalSearchTool.searchView.snp.remakeConstraints({ make in
|
||||
make.left.top.right.equalToSuperview()
|
||||
make.height.equalTo(0)
|
||||
})
|
||||
}
|
||||
|
||||
open override func viewWillAppear(_ animated: Bool) {
|
||||
super.viewWillAppear(animated)
|
||||
|
||||
conditionalSearchTool.isFilterSub.accept(conditionalSearchTool.isFiltered())
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
class HistoryItemCell : DDTableViewCell {
|
||||
|
||||
@@ -72,6 +72,24 @@ extension RescueController {
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
filterButton.rx.tap
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
if let containerView = self?.categoryView.listContainer as? JXCategoryListContainerView,let selectedIndex = self?.categoryView.selectedIndex {
|
||||
let key = NSNumber(value: selectedIndex)
|
||||
let vc = containerView.validListDict[key] as? RescueParentController
|
||||
vc?.conditionalSearchTool.searchView.snp.updateConstraints({ make in
|
||||
make.height.equalTo(auto(450))
|
||||
})
|
||||
|
||||
UIView.animate(withDuration: 0.25) {
|
||||
vc?.view.layoutIfNeeded()
|
||||
}
|
||||
|
||||
vc?.conditionalSearchTool.coverView.isHidden = false
|
||||
}
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
// 点击tabBar 需要刷下下列
|
||||
preRefreshRelay
|
||||
.observe(on: MainScheduler.instance)
|
||||
@@ -199,22 +217,19 @@ extension RescuePendingOrderController {
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
searchButton.rx.tap
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.conditionalSearchTool.showSearchViewSub.accept(UIApplication.shared.dd_keyWindow.safeAreaInsets.bottom)
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
conditionalSearchTool.resetSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.pendingOrderView.tableView.mj_header?.beginRefreshing()
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
conditionalSearchTool.searchSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.conditionalSearchTool.searchView.snp.updateConstraints({ make in
|
||||
make.height.equalTo(0)
|
||||
})
|
||||
|
||||
UIView.animate(withDuration: 0.25) {
|
||||
self?.conditionalSearchTool.searchView.superview?.layoutIfNeeded()
|
||||
}
|
||||
|
||||
self?.conditionalSearchTool.coverView.isHidden = true
|
||||
|
||||
self?.pendingOrderView.tableView.mj_header?.beginRefreshing()
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
@@ -357,22 +372,19 @@ extension RescuePendingDispatchController {
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
searchButton.rx.tap
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.conditionalSearchTool.showSearchViewSub.accept(UIApplication.shared.dd_keyWindow.safeAreaInsets.bottom)
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
conditionalSearchTool.resetSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.pendingDispatchView.tableView.mj_header?.beginRefreshing()
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
conditionalSearchTool.searchSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.conditionalSearchTool.searchView.snp.updateConstraints({ make in
|
||||
make.height.equalTo(0)
|
||||
})
|
||||
|
||||
UIView.animate(withDuration: 0.25) {
|
||||
self?.conditionalSearchTool.searchView.superview?.layoutIfNeeded()
|
||||
}
|
||||
|
||||
self?.conditionalSearchTool.coverView.isHidden = true
|
||||
|
||||
self?.pendingDispatchView.tableView.mj_header?.beginRefreshing()
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
@@ -446,22 +458,19 @@ extension RescueIsIngController {
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
searchButton.rx.tap
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.conditionalSearchTool.showSearchViewSub.accept(UIApplication.shared.dd_keyWindow.safeAreaInsets.bottom)
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
conditionalSearchTool.resetSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.pendingIsIngView.tableView.mj_header?.beginRefreshing()
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
conditionalSearchTool.searchSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.conditionalSearchTool.searchView.snp.updateConstraints({ make in
|
||||
make.height.equalTo(0)
|
||||
})
|
||||
|
||||
UIView.animate(withDuration: 0.25) {
|
||||
self?.conditionalSearchTool.searchView.superview?.layoutIfNeeded()
|
||||
}
|
||||
|
||||
self?.conditionalSearchTool.coverView.isHidden = true
|
||||
|
||||
self?.pendingIsIngView.tableView.mj_header?.beginRefreshing()
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
@@ -501,18 +510,31 @@ extension RescueController : JXCategoryViewDelegate,JXCategoryListContainerViewD
|
||||
}
|
||||
|
||||
func listContainerView(_ listContainerView: JXCategoryListContainerView!, initListFor index: Int) -> JXCategoryListContentViewDelegate! {
|
||||
var vc : RescueParentController
|
||||
if index == 0 {
|
||||
let vc = RescuePendingOrderController.init()
|
||||
pendingTableView = vc.pendingOrderView.tableView
|
||||
return vc
|
||||
vc = RescuePendingOrderController.init()
|
||||
pendingTableView = (vc as? RescuePendingOrderController)?.pendingOrderView.tableView
|
||||
}else if index == 1 {
|
||||
vc = RescuePendingDispatchController.init()
|
||||
dispatchTableView = (vc as? RescuePendingDispatchController)?.pendingDispatchView.tableView
|
||||
}else{
|
||||
vc = RescueIsIngController.init()
|
||||
isRescueTableView = (vc as? RescueIsIngController)?.pendingIsIngView.tableView
|
||||
}
|
||||
if index == 1 {
|
||||
let vc = RescuePendingDispatchController.init()
|
||||
dispatchTableView = vc.pendingDispatchView.tableView
|
||||
return vc
|
||||
|
||||
vc.conditionalSearchTool.isFilterSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] isFilter in
|
||||
if isFilter == true {
|
||||
self?.filterButton.setTitleColor(.hex("3678FF"), for: .normal)
|
||||
self?.filterButton.setImage(UIImage(named: "conditional_search"), for: .normal)
|
||||
}else{
|
||||
self?.filterButton.setTitleColor(.hex("737373").alpha(0.55), for: .normal)
|
||||
self?.filterButton.setImage(UIImage(named: "conditional_search_unselected")?.withTintColor(.hex("737373")), for: .normal)
|
||||
}
|
||||
let vc = RescueIsIngController.init()
|
||||
isRescueTableView = vc.pendingIsIngView.tableView
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
return vc
|
||||
}
|
||||
}
|
||||
@@ -1086,6 +1108,7 @@ extension RescuePendingDispatchController : UICollectionViewDelegate, UICollecti
|
||||
// MARK: 救援中
|
||||
class RescueController : ZDViewController {
|
||||
public let categoryView = JXCategoryTitleView()
|
||||
private let filterButton = DDButton.dd_initCustom()
|
||||
private lazy var categoryContainerView = JXCategoryListContainerView(type: .scrollView, delegate: self)
|
||||
private let messageTapGes = UITapGestureRecognizer()
|
||||
private let messageView = MessageView()
|
||||
@@ -1132,6 +1155,30 @@ class RescueController : ZDViewController {
|
||||
categoryView.listContainer = categoryContainerView
|
||||
}
|
||||
|
||||
/// 筛选
|
||||
let seperateLine = DDView()
|
||||
seperateLine.backgroundColor = .hex("737373").alpha(0.3)
|
||||
filterButton.addSubview(seperateLine)
|
||||
seperateLine.snp.makeConstraints { make in
|
||||
make.centerY.equalTo(filterButton)
|
||||
make.width.equalTo(1)
|
||||
make.height.equalTo(filterButton).multipliedBy(0.5)
|
||||
make.left.equalTo(filterButton.snp.left)
|
||||
}
|
||||
filterButton.dd_setBackgroundColor(.hex("FAFAFA"))
|
||||
filterButton.setTitle("筛选", for: .normal)
|
||||
filterButton.setTitleColor(.hex("737373").alpha(0.55), for: .normal)
|
||||
filterButton.titleLabel?.font = .regularFont(auto(12))
|
||||
filterButton.setImage(UIImage(named: "conditional_search_unselected")?.withTintColor(.hex("737373")), for: .normal)
|
||||
filterButton.dd_customize(with: .ImageRightPaddingTitleLeftWithWholeCenter, padding: 5)
|
||||
view.addSubview(filterButton)
|
||||
filterButton.snp.makeConstraints { make in
|
||||
make.left.equalTo(categoryView.snp.right)
|
||||
make.right.equalToSuperview()
|
||||
make.top.equalTo(categoryView)
|
||||
make.bottom.equalTo(categoryView)
|
||||
}
|
||||
|
||||
messageView.titleLabel.text = "消息"
|
||||
messageView.addGestureRecognizer(messageTapGes)
|
||||
navigationItem.leftBarButtonItem = UIBarButtonItem(customView: messageView)
|
||||
@@ -1152,7 +1199,8 @@ class RescueController : ZDViewController {
|
||||
override func viewSafeAreaInsetsDidChange() {
|
||||
super.viewSafeAreaInsetsDidChange()
|
||||
categoryView.snp.remakeConstraints { make in
|
||||
make.left.right.equalToSuperview()
|
||||
make.left.equalToSuperview()
|
||||
make.right.equalToSuperview().offset(-auto(60))
|
||||
make.top.equalTo(view.safeAreaInsets.top)
|
||||
make.height.equalTo(auto(44))
|
||||
}
|
||||
@@ -1175,7 +1223,7 @@ class RescueController : ZDViewController {
|
||||
}
|
||||
|
||||
// MARK: 待派单
|
||||
class RescuePendingOrderController : ZDViewController {
|
||||
class RescuePendingOrderController : RescueParentController {
|
||||
private let disposeBag = DisposeBag()
|
||||
public let pendingOrderView = RescuePendingOrderView()
|
||||
public let refuseOrderConfirmView = RefuseOrderConfirmView()
|
||||
@@ -1188,9 +1236,6 @@ class RescuePendingOrderController : ZDViewController {
|
||||
private var acceptOrderRelay = ReplayRelay<OrderListDataModel>.create(bufferSize: 1)
|
||||
private var emptyView = EmptyView()
|
||||
|
||||
private var searchButton = DDButton.dd_initCustom()
|
||||
private lazy var conditionalSearchTool = ConditionalSearchTool()
|
||||
|
||||
override func viewDidLoad() {
|
||||
super.viewDidLoad()
|
||||
dd_navigationBarBackgroundColor = .hex("354683")
|
||||
@@ -1217,20 +1262,21 @@ class RescuePendingOrderController : ZDViewController {
|
||||
pendingOrderView.tableView.delegate = self
|
||||
pendingOrderView.tableView.dataSource = self
|
||||
|
||||
searchButton.backgroundColor = .hex("2A5094")
|
||||
searchButton.setImage(UIImage(named: "conditional_search"), for: .normal)
|
||||
view.addSubview(searchButton)
|
||||
searchButton.layer.cornerRadius = auto(20)
|
||||
searchButton.snp.remakeConstraints { make in
|
||||
make.bottom.equalTo(pendingOrderView.snp.bottom).offset(-auto(30))
|
||||
make.right.equalTo(pendingOrderView.snp.right).offset(-auto(20))
|
||||
make.width.height.equalTo(auto(40))
|
||||
}
|
||||
pendingOrderView.addSubview(conditionalSearchTool.coverView)
|
||||
conditionalSearchTool.coverView.snp.remakeConstraints({ make in
|
||||
make.edges.equalToSuperview()
|
||||
})
|
||||
|
||||
pendingOrderView.addSubview(conditionalSearchTool.searchView)
|
||||
conditionalSearchTool.searchView.snp.remakeConstraints({ make in
|
||||
make.left.top.right.equalToSuperview()
|
||||
make.height.equalTo(0)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: 待派车
|
||||
class RescuePendingDispatchController : ZDViewController {
|
||||
class RescuePendingDispatchController : RescueParentController {
|
||||
private let disposeBag = DisposeBag()
|
||||
public let pendingDispatchView = RescuePendingDispatchView()
|
||||
private var resultArr : [OrderListDataModel] = []
|
||||
@@ -1238,9 +1284,6 @@ class RescuePendingDispatchController : ZDViewController {
|
||||
private var pageNum : Int = 1
|
||||
private var emptyView = EmptyView()
|
||||
|
||||
private var searchButton = DDButton.dd_initCustom()
|
||||
private lazy var conditionalSearchTool = ConditionalSearchTool()
|
||||
|
||||
override func viewDidLoad() {
|
||||
super.viewDidLoad()
|
||||
dd_navigationBarBackgroundColor = .hex("354683")
|
||||
@@ -1267,20 +1310,21 @@ class RescuePendingDispatchController : ZDViewController {
|
||||
pendingDispatchView.tableView.delegate = self
|
||||
pendingDispatchView.tableView.dataSource = self
|
||||
|
||||
searchButton.backgroundColor = .hex("2A5094")
|
||||
searchButton.setImage(UIImage(named: "conditional_search"), for: .normal)
|
||||
view.addSubview(searchButton)
|
||||
searchButton.layer.cornerRadius = auto(20)
|
||||
searchButton.snp.remakeConstraints { make in
|
||||
make.bottom.equalTo(pendingDispatchView.snp.bottom).offset(-auto(30))
|
||||
make.right.equalTo(pendingDispatchView.snp.right).offset(-auto(20))
|
||||
make.width.height.equalTo(auto(40))
|
||||
}
|
||||
pendingDispatchView.addSubview(conditionalSearchTool.coverView)
|
||||
conditionalSearchTool.coverView.snp.remakeConstraints({ make in
|
||||
make.edges.equalToSuperview()
|
||||
})
|
||||
|
||||
pendingDispatchView.addSubview(conditionalSearchTool.searchView)
|
||||
conditionalSearchTool.searchView.snp.remakeConstraints({ make in
|
||||
make.left.top.right.equalToSuperview()
|
||||
make.height.equalTo(0)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: 救援中
|
||||
class RescueIsIngController : ZDViewController {
|
||||
class RescueIsIngController : RescueParentController {
|
||||
private let disposeBag = DisposeBag()
|
||||
public let pendingIsIngView = RescueIsIngView()
|
||||
private var resultArr : [OrderListDataModel] = []
|
||||
@@ -1288,9 +1332,6 @@ class RescueIsIngController : ZDViewController {
|
||||
private var pageNum : Int = 1
|
||||
private var emptyView = EmptyView()
|
||||
|
||||
private var searchButton = DDButton.dd_initCustom()
|
||||
private lazy var conditionalSearchTool = ConditionalSearchTool()
|
||||
|
||||
override func viewDidLoad() {
|
||||
super.viewDidLoad()
|
||||
dd_navigationBarBackgroundColor = .hex("354683")
|
||||
@@ -1317,16 +1358,33 @@ class RescueIsIngController : ZDViewController {
|
||||
pendingIsIngView.tableView.delegate = self
|
||||
pendingIsIngView.tableView.dataSource = self
|
||||
|
||||
searchButton.backgroundColor = .hex("2A5094")
|
||||
searchButton.setImage(UIImage(named: "conditional_search"), for: .normal)
|
||||
view.addSubview(searchButton)
|
||||
searchButton.layer.cornerRadius = auto(20)
|
||||
searchButton.snp.remakeConstraints { make in
|
||||
make.bottom.equalTo(pendingIsIngView.snp.bottom).offset(-auto(30))
|
||||
make.right.equalTo(pendingIsIngView.snp.right).offset(-auto(20))
|
||||
make.width.height.equalTo(auto(40))
|
||||
pendingIsIngView.addSubview(conditionalSearchTool.coverView)
|
||||
conditionalSearchTool.coverView.snp.remakeConstraints({ make in
|
||||
make.edges.equalToSuperview()
|
||||
})
|
||||
|
||||
pendingIsIngView.addSubview(conditionalSearchTool.searchView)
|
||||
conditionalSearchTool.searchView.snp.remakeConstraints({ make in
|
||||
make.left.top.right.equalToSuperview()
|
||||
make.height.equalTo(0)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
// MARK: SUPER
|
||||
class RescueParentController : ZDViewController, JXCategoryListContentViewDelegate {
|
||||
public lazy var conditionalSearchTool = ConditionalSearchTool()
|
||||
|
||||
func listView() -> UIView! {
|
||||
return view
|
||||
}
|
||||
|
||||
override func viewWillAppear(_ animated: Bool) {
|
||||
super.viewWillAppear(animated)
|
||||
|
||||
conditionalSearchTool.isFilterSub.accept(conditionalSearchTool.isFiltered())
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: Cell
|
||||
@@ -2129,21 +2187,21 @@ class RescueIsIngView : DDView {
|
||||
}
|
||||
}
|
||||
|
||||
// MARK: JXCategoryListContentViewDelegate
|
||||
extension RescuePendingOrderController : JXCategoryListContentViewDelegate {
|
||||
func listView() -> UIView! {
|
||||
return view
|
||||
}
|
||||
}
|
||||
|
||||
extension RescuePendingDispatchController : JXCategoryListContentViewDelegate {
|
||||
func listView() -> UIView! {
|
||||
return view
|
||||
}
|
||||
}
|
||||
|
||||
extension RescueIsIngController : JXCategoryListContentViewDelegate {
|
||||
func listView() -> UIView! {
|
||||
return view
|
||||
}
|
||||
}
|
||||
//// MARK: JXCategoryListContentViewDelegate
|
||||
//extension RescuePendingOrderController : JXCategoryListContentViewDelegate {
|
||||
// func listView() -> UIView! {
|
||||
// return view
|
||||
// }
|
||||
//}
|
||||
//
|
||||
//extension RescuePendingDispatchController : JXCategoryListContentViewDelegate {
|
||||
// func listView() -> UIView! {
|
||||
// return view
|
||||
// }
|
||||
//}
|
||||
//
|
||||
//extension RescueIsIngController : JXCategoryListContentViewDelegate {
|
||||
// func listView() -> UIView! {
|
||||
// return view
|
||||
// }
|
||||
//}
|
||||
|
||||
@@ -35,23 +35,23 @@ extension ReviewFailedController {
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
MCOUNT.pendingCountRelay
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] count in
|
||||
if count > 0 {
|
||||
self?.pendingView.countLabel.isHidden = false
|
||||
self?.pendingView.countLabel.text = String(count)
|
||||
self?.pendingView.countLabel.snp.updateConstraints({ make in
|
||||
make.width.equalTo(20)
|
||||
})
|
||||
}else{
|
||||
self?.pendingView.countLabel.isHidden = true
|
||||
self?.pendingView.countLabel.snp.updateConstraints({ make in
|
||||
make.width.equalTo(0)
|
||||
})
|
||||
}
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
// MCOUNT.pendingCountRelay
|
||||
// .observe(on: MainScheduler.instance)
|
||||
// .subscribe(onNext: {[weak self] count in
|
||||
// if count > 0 {
|
||||
// self?.pendingView.countLabel.isHidden = false
|
||||
// self?.pendingView.countLabel.text = String(count)
|
||||
// self?.pendingView.countLabel.snp.updateConstraints({ make in
|
||||
// make.width.equalTo(20)
|
||||
// })
|
||||
// }else{
|
||||
// self?.pendingView.countLabel.isHidden = true
|
||||
// self?.pendingView.countLabel.snp.updateConstraints({ make in
|
||||
// make.width.equalTo(0)
|
||||
// })
|
||||
// }
|
||||
// })
|
||||
// .disposed(by: disposeBag)
|
||||
|
||||
reviewFailedView.tableView.mj_header = MJRefreshNormalHeader(refreshingBlock: {[weak self] in
|
||||
self?.pageNum = 1
|
||||
@@ -111,29 +111,53 @@ extension ReviewFailedController {
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
pendingTapGes.rx.event
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: { _ in
|
||||
WEBTOOL.open(name: .todoList,appending: nil)
|
||||
// pendingTapGes.rx.event
|
||||
// .observe(on: MainScheduler.instance)
|
||||
// .subscribe(onNext: { _ in
|
||||
// WEBTOOL.open(name: .todoList,appending: nil)
|
||||
// })
|
||||
// .disposed(by: disposeBag)
|
||||
|
||||
filterButton.rx.tap
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.conditionalSearchTool.searchView.snp.updateConstraints({ make in
|
||||
make.height.equalTo(auto(450))
|
||||
})
|
||||
|
||||
UIView.animate(withDuration: 0.25) {
|
||||
self?.view.layoutIfNeeded()
|
||||
}
|
||||
|
||||
self?.conditionalSearchTool.coverView.isHidden = false
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
searchButton.rx.tap
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.conditionalSearchTool.showSearchViewSub.accept(UIApplication.shared.dd_keyWindow.safeAreaInsets.bottom)
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
conditionalSearchTool.resetSub
|
||||
conditionalSearchTool.isFilterSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.reviewFailedView.tableView.mj_header?.beginRefreshing()
|
||||
.subscribe(onNext: {[weak self] isFilter in
|
||||
if isFilter == true {
|
||||
self?.filterButton.setTitleColor(.hex("3678FF"), for: .normal)
|
||||
self?.filterButton.setImage(UIImage(named: "conditional_search"), for: .normal)
|
||||
}else{
|
||||
self?.filterButton.setTitleColor(.hex("FFFFFF").alpha(0.7), for: .normal)
|
||||
self?.filterButton.setImage(UIImage(named: "conditional_search_unselected")?.withTintColor(.hex("FFFFFF")), for: .normal)
|
||||
}
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
|
||||
conditionalSearchTool.searchSub
|
||||
.observe(on: MainScheduler.instance)
|
||||
.subscribe(onNext: {[weak self] _ in
|
||||
self?.conditionalSearchTool.searchView.snp.updateConstraints({ make in
|
||||
make.height.equalTo(0)
|
||||
})
|
||||
|
||||
UIView.animate(withDuration: 0.25) {
|
||||
self?.conditionalSearchTool.searchView.superview?.layoutIfNeeded()
|
||||
}
|
||||
|
||||
self?.conditionalSearchTool.coverView.isHidden = true
|
||||
|
||||
self?.reviewFailedView.tableView.mj_header?.beginRefreshing()
|
||||
})
|
||||
.disposed(by: disposeBag)
|
||||
@@ -215,11 +239,11 @@ open class ReviewFailedController : ZDViewController {
|
||||
private var resultArr : [OrderListDataModel] = []
|
||||
private let messageTapGes = UITapGestureRecognizer()
|
||||
private let messageView = MessageView()
|
||||
private let pendingTapGes = UITapGestureRecognizer()
|
||||
private let pendingView = MessageView()
|
||||
// private let pendingTapGes = UITapGestureRecognizer()
|
||||
// private let pendingView = MessageView()
|
||||
private var emptyView = EmptyView()
|
||||
|
||||
private var searchButton = DDButton.dd_initCustom()
|
||||
private let filterButton = DDButton.dd_initCustom()
|
||||
private lazy var conditionalSearchTool = ConditionalSearchTool()
|
||||
|
||||
public override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: Bundle?) {
|
||||
@@ -277,18 +301,32 @@ open class ReviewFailedController : ZDViewController {
|
||||
make.width.greaterThanOrEqualTo(40)
|
||||
}
|
||||
|
||||
pendingView.titleLabel.text = "待办"
|
||||
pendingView.addGestureRecognizer(pendingTapGes)
|
||||
navigationItem.rightBarButtonItem = UIBarButtonItem(customView: pendingView)
|
||||
pendingView.snp.makeConstraints { make in
|
||||
make.height.equalTo(40)
|
||||
make.width.greaterThanOrEqualTo(40)
|
||||
}
|
||||
// pendingView.titleLabel.text = "待办"
|
||||
// pendingView.addGestureRecognizer(pendingTapGes)
|
||||
// navigationItem.rightBarButtonItem = UIBarButtonItem(customView: pendingView)
|
||||
// pendingView.snp.makeConstraints { make in
|
||||
// make.height.equalTo(40)
|
||||
// make.width.greaterThanOrEqualTo(40)
|
||||
// }
|
||||
|
||||
searchButton.backgroundColor = .hex("2A5094")
|
||||
searchButton.setImage(UIImage(named: "conditional_search"), for: .normal)
|
||||
view.addSubview(searchButton)
|
||||
filterButton.setTitle("筛选", for: .normal)
|
||||
filterButton.setTitleColor(.hex("FFFFFF").alpha(0.7), for: .normal)
|
||||
filterButton.titleLabel?.font = .mediumFont(auto(14))
|
||||
filterButton.setImage(UIImage(named: "conditional_search_unselected")?.withTintColor(.hex("FFFFFF")), for: .normal)
|
||||
filterButton.dd_customize(with: .ImageRightPaddingTitleLeftWithWholeCenter, padding: 5)
|
||||
navigationItem.rightBarButtonItem = UIBarButtonItem(customView: filterButton)
|
||||
|
||||
reviewFailedView.addSubview(conditionalSearchTool.coverView)
|
||||
reviewFailedView.addSubview(conditionalSearchTool.searchView)
|
||||
|
||||
conditionalSearchTool.coverView.snp.remakeConstraints({ make in
|
||||
make.edges.equalToSuperview()
|
||||
})
|
||||
|
||||
conditionalSearchTool.searchView.snp.remakeConstraints({ make in
|
||||
make.left.top.right.equalToSuperview()
|
||||
make.height.equalTo(0)
|
||||
})
|
||||
}
|
||||
|
||||
open override func viewSafeAreaInsetsDidChange() {
|
||||
@@ -300,14 +338,13 @@ open class ReviewFailedController : ZDViewController {
|
||||
make.left.right.equalToSuperview()
|
||||
make.bottom.equalTo(-view.safeAreaInsets.bottom)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
searchButton.layer.cornerRadius = auto(20)
|
||||
searchButton.snp.remakeConstraints { make in
|
||||
make.bottom.equalToSuperview().offset(-auto(30) - view.safeAreaInsets.bottom)
|
||||
make.right.equalToSuperview().offset(-auto(20))
|
||||
make.width.height.equalTo(auto(40))
|
||||
}
|
||||
}
|
||||
open override func viewWillAppear(_ animated: Bool) {
|
||||
super.viewWillAppear(animated)
|
||||
|
||||
conditionalSearchTool.isFilterSub.accept(conditionalSearchTool.isFiltered())
|
||||
}
|
||||
|
||||
open override var preferredStatusBarStyle: UIStatusBarStyle {
|
||||
|
||||
@@ -5,17 +5,17 @@
|
||||
|
||||
|
||||
|
||||
<testcase classname="fastlane.lanes" name="0: default_platform" time="0.000166">
|
||||
<testcase classname="fastlane.lanes" name="0: default_platform" time="0.00022">
|
||||
|
||||
</testcase>
|
||||
|
||||
|
||||
<testcase classname="fastlane.lanes" name="1: gym" time="66.698529">
|
||||
<testcase classname="fastlane.lanes" name="1: gym" time="75.087357">
|
||||
|
||||
</testcase>
|
||||
|
||||
|
||||
<testcase classname="fastlane.lanes" name="2: pgyer" time="12.617885">
|
||||
<testcase classname="fastlane.lanes" name="2: pgyer" time="14.619423">
|
||||
|
||||
</testcase>
|
||||
|
||||
|
||||