Commit 29296654 by 杨苏杭

封存

parent 6118513a
...@@ -2,8 +2,35 @@ ...@@ -2,8 +2,35 @@
<project version="4"> <project version="4">
<component name="ChangeListManager"> <component name="ChangeListManager">
<list default="true" id="a4269ceb-5bf6-49dc-9b41-8690287f228c" name="Default" comment=""> <list default="true" id="a4269ceb-5bf6-49dc-9b41-8690287f228c" name="Default" comment="">
<change beforePath="" afterPath="$PROJECT_DIR$/lib/order_check/DelayOrder.php" />
<change beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" /> <change beforePath="$PROJECT_DIR$/.idea/workspace.xml" afterPath="$PROJECT_DIR$/.idea/workspace.xml" />
<change beforePath="$PROJECT_DIR$/application/Events.php" afterPath="$PROJECT_DIR$/application/Events.php" />
<change beforePath="$PROJECT_DIR$/application/controller/accept/AccessController.php" afterPath="$PROJECT_DIR$/application/controller/accept/AccessController.php" />
<change beforePath="$PROJECT_DIR$/application/controller/accept/CertifyController.php" afterPath="$PROJECT_DIR$/application/controller/accept/CertifyController.php" />
<change beforePath="$PROJECT_DIR$/application/controller/business/charger/OverController.php" afterPath="$PROJECT_DIR$/application/controller/business/charger/OverController.php" />
<change beforePath="$PROJECT_DIR$/application/controller/card/charger/OverController.php" afterPath="$PROJECT_DIR$/application/controller/card/charger/OverController.php" />
<change beforePath="$PROJECT_DIR$/application/controller/card/charger/RequestController.php" afterPath="$PROJECT_DIR$/application/controller/card/charger/RequestController.php" /> <change beforePath="$PROJECT_DIR$/application/controller/card/charger/RequestController.php" afterPath="$PROJECT_DIR$/application/controller/card/charger/RequestController.php" />
<change beforePath="$PROJECT_DIR$/application/controller/card/charger/StartController.php" afterPath="$PROJECT_DIR$/application/controller/card/charger/StartController.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/card_order/state/ChargerState.php" afterPath="$PROJECT_DIR$/lib/cdz/card_order/state/ChargerState.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/card_order/state/ExceptionState.php" afterPath="$PROJECT_DIR$/lib/cdz/card_order/state/ExceptionState.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/card_order/state/OfflineNetState.php" afterPath="$PROJECT_DIR$/lib/cdz/card_order/state/OfflineNetState.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/card_order/state/OfflinePowerState.php" afterPath="$PROJECT_DIR$/lib/cdz/card_order/state/OfflinePowerState.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/card_order/state/PowerExceedState.php" afterPath="$PROJECT_DIR$/lib/cdz/card_order/state/PowerExceedState.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/card_order/state/PowerFullState.php" afterPath="$PROJECT_DIR$/lib/cdz/card_order/state/PowerFullState.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/card_order/state/ShedState.php" afterPath="$PROJECT_DIR$/lib/cdz/card_order/state/ShedState.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/card_order/state/ShedTimeoutState.php" afterPath="$PROJECT_DIR$/lib/cdz/card_order/state/ShedTimeoutState.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/card_order/state/State.php" afterPath="$PROJECT_DIR$/lib/cdz/card_order/state/State.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/card_order/state/TimeoutState.php" afterPath="$PROJECT_DIR$/lib/cdz/card_order/state/TimeoutState.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/card_order/state/WaitingState.php" afterPath="$PROJECT_DIR$/lib/cdz/card_order/state/WaitingState.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/order/Order.php" afterPath="$PROJECT_DIR$/lib/cdz/order/Order.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/order/save/OrderSaveRedis.php" afterPath="$PROJECT_DIR$/lib/cdz/order/save/OrderSaveRedis.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/order/state/ChargerState.php" afterPath="$PROJECT_DIR$/lib/cdz/order/state/ChargerState.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/order/state/ShedState.php" afterPath="$PROJECT_DIR$/lib/cdz/order/state/ShedState.php" />
<change beforePath="$PROJECT_DIR$/lib/cdz/order/state/WaitingState.php" afterPath="$PROJECT_DIR$/lib/cdz/order/state/WaitingState.php" />
<change beforePath="$PROJECT_DIR$/lib/remote/api/message/ChargerFullMessage.php" afterPath="$PROJECT_DIR$/lib/remote/api/message/ChargerFullMessage.php" />
<change beforePath="$PROJECT_DIR$/lib/station/gateway/port/Port.php" afterPath="$PROJECT_DIR$/lib/station/gateway/port/Port.php" />
<change beforePath="$PROJECT_DIR$/src/BroadcastToAgent.php" afterPath="$PROJECT_DIR$/src/BroadcastToAgent.php" />
<change beforePath="$PROJECT_DIR$/src/command/StopChargerCommand.php" afterPath="$PROJECT_DIR$/src/command/StopChargerCommand.php" />
</list> </list>
<option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" /> <option name="EXCLUDED_CONVERTED_TO_IGNORED" value="true" />
<option name="TRACKING_ENABLED" value="true" /> <option name="TRACKING_ENABLED" value="true" />
...@@ -20,68 +47,75 @@ ...@@ -20,68 +47,75 @@
</component> </component>
<component name="FileEditorManager"> <component name="FileEditorManager">
<leaf SIDE_TABS_SIZE_LIMIT_KEY="300"> <leaf SIDE_TABS_SIZE_LIMIT_KEY="300">
<file leaf-file-name="OverController.php" pinned="false" current-in-tab="false"> <file leaf-file-name="start_businessworker.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/application/controller/business/charger/OverController.php"> <entry file="file://$PROJECT_DIR$/application/start_businessworker.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="2400"> <state relative-caret-position="0">
<caret line="166" column="27" lean-forward="false" selection-start-line="166" selection-start-column="27" selection-end-line="166" selection-end-column="27" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="CardModel.php" pinned="false" current-in-tab="false"> <file leaf-file-name="Api.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/application/model/CardModel.php"> <entry file="file://$PROJECT_DIR$/application/route/Api.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="96"> <state relative-caret-position="1258">
<caret line="11" column="6" lean-forward="false" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" /> <caret line="75" column="34" lean-forward="false" selection-start-line="75" selection-start-column="34" selection-end-line="75" selection-end-column="34" />
<folding /> <folding>
<element signature="e#37#75#0#PHP" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="BalanceController.php" pinned="false" current-in-tab="false"> <file leaf-file-name="Controller.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/application/controller/card/BalanceController.php"> <entry file="file://$PROJECT_DIR$/application/controller/Controller.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="272"> <state relative-caret-position="0">
<caret line="25" column="0" lean-forward="false" selection-start-line="25" selection-start-column="0" selection-end-line="25" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="RequestController.php" pinned="false" current-in-tab="true"> <file leaf-file-name="Route.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/application/controller/card/charger/RequestController.php"> <entry file="file://$PROJECT_DIR$/src/route/Route.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="541"> <state relative-caret-position="900">
<caret line="76" column="16" lean-forward="false" selection-start-line="76" selection-start-column="16" selection-end-line="76" selection-end-column="16" /> <caret line="139" column="20" lean-forward="false" selection-start-line="139" selection-start-column="20" selection-end-line="139" selection-end-column="20" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="UserModel.php" pinned="false" current-in-tab="false"> <file leaf-file-name="Model.php" pinned="false" current-in-tab="true">
<entry file="file://$PROJECT_DIR$/application/model/UserModel.php"> <entry file="file://$PROJECT_DIR$/application/model/Model.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="96"> <state relative-caret-position="789">
<caret line="11" column="6" lean-forward="false" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" /> <caret line="104" column="20" lean-forward="false" selection-start-line="104" selection-start-column="20" selection-end-line="104" selection-end-column="20" />
<folding /> <folding>
<marker date="1534755589000" expanded="true" signature="594:633" ph="SELECT ${$co... ${$this-&gt;table}" />
<marker date="1534755589000" expanded="true" signature="921:961" ph="SELECT ${$co... ${$this-&gt;table}" />
<marker date="1534755589000" expanded="true" signature="1253:1293" ph="SELECT ${$co... ${$this-&gt;table}" />
<marker date="1534755589000" expanded="true" signature="1443:1476" ph="SELECT * FRO... ${$this-&gt;table}" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="StartController.php" pinned="false" current-in-tab="false"> <file leaf-file-name="Events.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/application/controller/card/charger/StartController.php"> <entry file="file://$PROJECT_DIR$/application/Events.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="720"> <state relative-caret-position="2618">
<caret line="54" column="18" lean-forward="false" selection-start-line="54" selection-start-column="18" selection-end-line="54" selection-end-column="18" /> <caret line="170" column="0" lean-forward="false" selection-start-line="170" selection-start-column="0" selection-end-line="170" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="OverController.php" pinned="false" current-in-tab="false"> <file leaf-file-name="start.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/application/controller/card/charger/OverController.php"> <entry file="file://$PROJECT_DIR$/start.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
...@@ -90,31 +124,33 @@ ...@@ -90,31 +124,33 @@
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="PowerController.php" pinned="false" current-in-tab="false"> <file leaf-file-name="OverController.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/application/controller/card/charger/PowerController.php"> <entry file="file://$PROJECT_DIR$/application/controller/card/charger/OverController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="850">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="63" column="42" lean-forward="false" selection-start-line="63" selection-start-column="42" selection-end-line="63" selection-end-column="42" />
<folding /> <folding>
<element signature="e#139#177#0#PHP" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name=".staging" pinned="false" current-in-tab="false"> <file leaf-file-name="TestController.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/.staging"> <entry file="file://$PROJECT_DIR$/application/controller/TestController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="560"> <state relative-caret-position="187">
<caret line="35" column="0" lean-forward="false" selection-start-line="35" selection-start-column="0" selection-end-line="35" selection-end-column="0" /> <caret line="16" column="8" lean-forward="false" selection-start-line="16" selection-start-column="8" selection-end-line="16" selection-end-column="8" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
</file> </file>
<file leaf-file-name="Record.php" pinned="false" current-in-tab="false"> <file leaf-file-name="ChargerState.php" pinned="false" current-in-tab="false">
<entry file="file://$PROJECT_DIR$/src/log/record/Record.php"> <entry file="file://$PROJECT_DIR$/lib/cdz/card_order/state/ChargerState.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="96"> <state relative-caret-position="2737">
<caret line="11" column="6" lean-forward="false" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" /> <caret line="180" column="39" lean-forward="false" selection-start-line="180" selection-start-column="39" selection-end-line="180" selection-end-column="39" />
<folding /> <folding />
</state> </state>
</provider> </provider>
...@@ -124,9 +160,6 @@ ...@@ -124,9 +160,6 @@
</component> </component>
<component name="FindInProjectRecents"> <component name="FindInProjectRecents">
<findStrings> <findStrings>
<find>gete</find>
<find>date('Y-m-d H:i:s',$this-&gt;nowTimeStamp)</find>
<find>Env::get</find>
<find>private</find> <find>private</find>
<find>spl_</find> <find>spl_</find>
<find>static::add</find> <find>static::add</find>
...@@ -153,6 +186,10 @@ ...@@ -153,6 +186,10 @@
<find>43</find> <find>43</find>
<find>-2</find> <find>-2</find>
<find>agent_id</find> <find>agent_id</find>
<find>$_Session</find>
<find>$_SESSION['agent_id']</find>
<find>=&gt; 10</find>
<find>var_d</find>
</findStrings> </findStrings>
<replaceStrings> <replaceStrings>
<replace>$this-&gt;nowDate</replace> <replace>$this-&gt;nowDate</replace>
...@@ -167,46 +204,19 @@ ...@@ -167,46 +204,19 @@
<component name="IdeDocumentHistory"> <component name="IdeDocumentHistory">
<option name="CHANGED_PATHS"> <option name="CHANGED_PATHS">
<list> <list>
<option value="$PROJECT_DIR$/application/controller/card/charger/StartController.php" />
<option value="$PROJECT_DIR$/application/controller/card/charger/PowerController.php" />
<option value="$PROJECT_DIR$/lib/notice/Notice.php" />
<option value="$PROJECT_DIR$/lib/remote/api/message/FailMessage.php" />
<option value="$PROJECT_DIR$/application/model/BillTmpModel.php" />
<option value="$PROJECT_DIR$/application/controller/setting/SettingController.php" />
<option value="$PROJECT_DIR$/application/controller/HeartController.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/WaitingState.php" />
<option value="$PROJECT_DIR$/Dockerfile" />
<option value="$PROJECT_DIR$/application/start_businessworker.php" />
<option value="$PROJECT_DIR$/lib/Aes.php" />
<option value="$PROJECT_DIR$/application/controller/setting/DeviceMacController.php" />
<option value="$PROJECT_DIR$/composer.json" />
<option value="$PROJECT_DIR$/application/model/GatewayUpdateModel.php" />
<option value="$PROJECT_DIR$/lib/remote/api/message/ChargerFullMessage.php" />
<option value="$PROJECT_DIR$/lib/cdz/order/state/OfflinePowerState.php" />
<option value="$PROJECT_DIR$/lib/rabbitmq/PublishPortShed.php" />
<option value="$PROJECT_DIR$/vendor/workerman/workerman/Protocols/Bintohex.php" /> <option value="$PROJECT_DIR$/vendor/workerman/workerman/Protocols/Bintohex.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/ChargerState.php" />
<option value="$PROJECT_DIR$/lib/station/gateway/port/Port.php" />
<option value="$PROJECT_DIR$/application/controller/business/port/OnlineController.php" /> <option value="$PROJECT_DIR$/application/controller/business/port/OnlineController.php" />
<option value="$PROJECT_DIR$/application/controller/business/port/OfflineController.php" /> <option value="$PROJECT_DIR$/application/controller/business/port/OfflineController.php" />
<option value="$PROJECT_DIR$/application/controller/update/QueryController.php" /> <option value="$PROJECT_DIR$/application/controller/update/QueryController.php" />
<option value="$PROJECT_DIR$/application/model/CardModel.php" /> <option value="$PROJECT_DIR$/application/model/CardModel.php" />
<option value="$PROJECT_DIR$/application/model/UserModel.php" /> <option value="$PROJECT_DIR$/application/model/UserModel.php" />
<option value="$PROJECT_DIR$/application/controller/business/port/StateController.php" /> <option value="$PROJECT_DIR$/application/controller/business/port/StateController.php" />
<option value="$PROJECT_DIR$/lib/cdz/order/Order.php" />
<option value="$PROJECT_DIR$/application/controller/business/charger/StartController.php" /> <option value="$PROJECT_DIR$/application/controller/business/charger/StartController.php" />
<option value="$PROJECT_DIR$/lib/cdz/order/save/OrderSaveRedis.php" />
<option value="$PROJECT_DIR$/application/controller/accept/CertifyController.php" />
<option value="$PROJECT_DIR$/src/BroadcastToAgent.php" />
<option value="$PROJECT_DIR$/application/controller/business/power/ShutdownController.php" /> <option value="$PROJECT_DIR$/application/controller/business/power/ShutdownController.php" />
<option value="$PROJECT_DIR$/application/route/Api.php" /> <option value="$PROJECT_DIR$/application/route/Api.php" />
<option value="$PROJECT_DIR$/lib/cdz/order/state/OfflineNetState.php" /> <option value="$PROJECT_DIR$/lib/cdz/order/state/OfflineNetState.php" />
<option value="$PROJECT_DIR$/lib/cdz/order/state/ChargerState.php" />
<option value="$PROJECT_DIR$/lib/log/Log.php" /> <option value="$PROJECT_DIR$/lib/log/Log.php" />
<option value="$PROJECT_DIR$/application/controller/accept/AccessController.php" />
<option value="$PROJECT_DIR$/lib/StateCode.php" /> <option value="$PROJECT_DIR$/lib/StateCode.php" />
<option value="$PROJECT_DIR$/lib/cdz/order/state/ShedState.php" />
<option value="$PROJECT_DIR$/lib/cdz/order/state/WaitingState.php" />
<option value="$PROJECT_DIR$/.staging" /> <option value="$PROJECT_DIR$/.staging" />
<option value="$PROJECT_DIR$/readme.md" /> <option value="$PROJECT_DIR$/readme.md" />
<option value="$PROJECT_DIR$/application/controller/card/PayRuleController.php" /> <option value="$PROJECT_DIR$/application/controller/card/PayRuleController.php" />
...@@ -214,10 +224,37 @@ ...@@ -214,10 +224,37 @@
<option value="$PROJECT_DIR$/lib/Gateway.php" /> <option value="$PROJECT_DIR$/lib/Gateway.php" />
<option value="$PROJECT_DIR$/.env" /> <option value="$PROJECT_DIR$/.env" />
<option value="$PROJECT_DIR$/application/controller/business/power/PowerController.php" /> <option value="$PROJECT_DIR$/application/controller/business/power/PowerController.php" />
<option value="$PROJECT_DIR$/application/Events.php" />
<option value="$PROJECT_DIR$/application/controller/business/charger/OverController.php" />
<option value="$PROJECT_DIR$/application/controller/card/BalanceController.php" /> <option value="$PROJECT_DIR$/application/controller/card/BalanceController.php" />
<option value="$PROJECT_DIR$/src/BroadcastToAgent.php" />
<option value="$PROJECT_DIR$/lib/cdz/order/save/OrderSaveRedis.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/WaitingState.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/ExceptionState.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/OfflineNetState.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/OfflinePowerState.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/PowerExceedState.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/PowerFullState.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/ShedTimeoutState.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/State.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/TimeoutState.php" />
<option value="$PROJECT_DIR$/lib/cdz/order/state/ShedState.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/ShedState.php" />
<option value="$PROJECT_DIR$/application/controller/card/charger/PowerController.php" />
<option value="$PROJECT_DIR$/lib/station/gateway/port/Port.php" />
<option value="$PROJECT_DIR$/src/command/StopChargerCommand.php" />
<option value="$PROJECT_DIR$/lib/cdz/order/state/WaitingState.php" />
<option value="$PROJECT_DIR$/application/controller/card/charger/StartController.php" />
<option value="$PROJECT_DIR$/application/controller/accept/CertifyController.php" />
<option value="$PROJECT_DIR$/application/controller/card/charger/RequestController.php" /> <option value="$PROJECT_DIR$/application/controller/card/charger/RequestController.php" />
<option value="$PROJECT_DIR$/lib/cdz/card_order/state/ChargerState.php" />
<option value="$PROJECT_DIR$/lib/order_check/DelayOrder.php" />
<option value="$PROJECT_DIR$/application/Events.php" />
<option value="$PROJECT_DIR$/lib/cdz/order/Order.php" />
<option value="$PROJECT_DIR$/application/controller/accept/AccessController.php" />
<option value="$PROJECT_DIR$/lib/remote/api/message/ChargerFullMessage.php" />
<option value="$PROJECT_DIR$/application/controller/business/charger/OverController.php" />
<option value="$PROJECT_DIR$/lib/cdz/order/state/ChargerState.php" />
<option value="$PROJECT_DIR$/lib/rabbitmq/MyRabbitMq.php" />
<option value="$PROJECT_DIR$/application/controller/card/charger/OverController.php" />
</list> </list>
</option> </option>
</component> </component>
...@@ -249,9 +286,10 @@ ...@@ -249,9 +286,10 @@
</include_path> </include_path>
</component> </component>
<component name="ProjectFrameBounds" fullScreen="true"> <component name="ProjectFrameBounds" fullScreen="true">
<option name="x" value="1920" /> <option name="x" value="43" />
<option name="width" value="1920" /> <option name="y" value="23" />
<option name="height" value="1080" /> <option name="width" value="1812" />
<option name="height" value="1057" />
</component> </component>
<component name="ProjectLevelVcsManager" settingsEditedManually="true"> <component name="ProjectLevelVcsManager" settingsEditedManually="true">
<ConfirmationsSetting value="2" id="Add" /> <ConfirmationsSetting value="2" id="Add" />
...@@ -271,62 +309,55 @@ ...@@ -271,62 +309,55 @@
<foldersAlwaysOnTop value="true" /> <foldersAlwaysOnTop value="true" />
</navigator> </navigator>
<panes> <panes>
<pane id="Scope" /> <pane id="Scratches" />
<pane id="ProjectPane"> <pane id="Scope">
<subPane> <subPane subId="Project Files">
<expand> <expand>
<path> <path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" /> <item name="Root" type="cbb8eebc:String" user="Root" />
<item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="cdz_gateway_v2" type="cbb8eebc:String" user="cdz_gateway_v2" />
</path> </path>
<path> <path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" /> <item name="Root" type="cbb8eebc:String" user="Root" />
<item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="cdz_gateway_v2" type="cbb8eebc:String" user="cdz_gateway_v2" />
<item name="application" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="application" type="cbb8eebc:String" user="application" />
</path> </path>
<path> <path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" /> <item name="Root" type="cbb8eebc:String" user="Root" />
<item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="cdz_gateway_v2" type="cbb8eebc:String" user="cdz_gateway_v2" />
<item name="application" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="application" type="cbb8eebc:String" user="application" />
<item name="controller" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="controller" type="cbb8eebc:String" user="controller" />
</path> </path>
<path> <path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" /> <item name="Root" type="cbb8eebc:String" user="Root" />
<item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="cdz_gateway_v2" type="cbb8eebc:String" user="cdz_gateway_v2" />
<item name="application" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="application" type="cbb8eebc:String" user="application" />
<item name="controller" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="controller" type="cbb8eebc:String" user="controller" />
<item name="business" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="card" type="cbb8eebc:String" user="card" />
</path> </path>
<path> <path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" /> <item name="Root" type="cbb8eebc:String" user="Root" />
<item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="cdz_gateway_v2" type="cbb8eebc:String" user="cdz_gateway_v2" />
<item name="application" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="application" type="cbb8eebc:String" user="application" />
<item name="controller" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="controller" type="cbb8eebc:String" user="controller" />
<item name="business" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="card" type="cbb8eebc:String" user="card" />
<item name="charger" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="charger" type="cbb8eebc:String" user="charger" />
</path>
<path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" />
<item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="application" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="controller" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="card" type="2a2b976b:PhpTreeStructureProvider$1" />
</path> </path>
</expand>
<select />
</subPane>
</pane>
<pane id="ProjectPane">
<subPane>
<expand>
<path> <path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" /> <item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" />
<item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="application" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="controller" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="card" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="charger" type="2a2b976b:PhpTreeStructureProvider$1" />
</path> </path>
<path> <path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" /> <item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" />
<item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="application" type="2a2b976b:PhpTreeStructureProvider$1" /> <item name="application" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="controller" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="card" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="port" type="2a2b976b:PhpTreeStructureProvider$1" />
</path> </path>
<path> <path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" /> <item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" />
...@@ -336,39 +367,12 @@ ...@@ -336,39 +367,12 @@
</path> </path>
<path> <path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" /> <item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" />
<item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="lib" type="2a2b976b:PhpTreeStructureProvider$1" />
</path>
<path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" />
<item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="lib" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="cdz" type="2a2b976b:PhpTreeStructureProvider$1" />
</path>
<path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" />
<item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="lib" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="cdz" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="card_order" type="2a2b976b:PhpTreeStructureProvider$1" />
</path>
<path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" />
<item name="cdz_gateway_v2" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="lib" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="cdz" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="card_order" type="2a2b976b:PhpTreeStructureProvider$1" />
<item name="state" type="2a2b976b:PhpTreeStructureProvider$1" />
</path>
<path>
<item name="cdz_gateway_v2" type="b2602c69:ProjectViewProjectNode" />
<item name="External Libraries" type="bcb0276e:PhpExternalLibrariesNodePatcher$PatchedExternalLibrariesNode" /> <item name="External Libraries" type="bcb0276e:PhpExternalLibrariesNodePatcher$PatchedExternalLibrariesNode" />
</path> </path>
</expand> </expand>
<select /> <select />
</subPane> </subPane>
</pane> </pane>
<pane id="Scratches" />
</panes> </panes>
</component> </component>
<component name="PropertiesComponent"> <component name="PropertiesComponent">
...@@ -380,17 +384,17 @@ ...@@ -380,17 +384,17 @@
<property name="run.code.analysis.last.selected.profile" value="pProject Default" /> <property name="run.code.analysis.last.selected.profile" value="pProject Default" />
</component> </component>
<component name="RecentsManager"> <component name="RecentsManager">
<key name="MoveFile.RECENT_KEYS">
<recent name="$PROJECT_DIR$/lib" />
<recent name="$PROJECT_DIR$/application/model" />
<recent name="$PROJECT_DIR$/application" />
</key>
<key name="CopyFile.RECENT_KEYS"> <key name="CopyFile.RECENT_KEYS">
<recent name="$PROJECT_DIR$/lib/cdz/card/state" /> <recent name="$PROJECT_DIR$/lib/cdz/card/state" />
<recent name="$PROJECT_DIR$/lib/remote/api/message" /> <recent name="$PROJECT_DIR$/lib/remote/api/message" />
<recent name="$PROJECT_DIR$/lib/cdz/order/state" /> <recent name="$PROJECT_DIR$/lib/cdz/order/state" />
<recent name="$PROJECT_DIR$/vendor/workerman/workerman/Protocols" /> <recent name="$PROJECT_DIR$/vendor/workerman/workerman/Protocols" />
</key> </key>
<key name="MoveFile.RECENT_KEYS">
<recent name="$PROJECT_DIR$/lib" />
<recent name="$PROJECT_DIR$/application/model" />
<recent name="$PROJECT_DIR$/application" />
</key>
</component> </component>
<component name="RunDashboard"> <component name="RunDashboard">
<option name="ruleStates"> <option name="ruleStates">
...@@ -489,18 +493,45 @@ ...@@ -489,18 +493,45 @@
<workItem from="1546829526654" duration="1960000" /> <workItem from="1546829526654" duration="1960000" />
<workItem from="1546846912642" duration="675000" /> <workItem from="1546846912642" duration="675000" />
<workItem from="1546909384307" duration="2321000" /> <workItem from="1546909384307" duration="2321000" />
<workItem from="1546952375215" duration="84000" /> <workItem from="1546952375215" duration="195000" />
<workItem from="1547108255773" duration="5750000" />
<workItem from="1547258945453" duration="584000" />
<workItem from="1547378555026" duration="2443000" />
<workItem from="1547530117126" duration="567000" />
<workItem from="1547539949576" duration="583000" />
<workItem from="1547549315130" duration="1610000" />
<workItem from="1547691073969" duration="14294000" />
<workItem from="1548073315221" duration="961000" />
<workItem from="1548293626423" duration="15145000" />
<workItem from="1548581106537" duration="589000" />
<workItem from="1548553177464" duration="627000" />
<workItem from="1548553824159" duration="23000" />
<workItem from="1548553919223" duration="2213000" />
<workItem from="1548579577017" duration="1764000" />
<workItem from="1548665312445" duration="8872000" />
<workItem from="1548861189847" duration="127000" />
<workItem from="1548899890945" duration="499000" />
<workItem from="1549937136990" duration="2208000" />
<workItem from="1550216306693" duration="2793000" />
<workItem from="1550457737868" duration="1024000" />
<workItem from="1550628743757" duration="1528000" />
<workItem from="1551072399938" duration="2578000" />
<workItem from="1551753061821" duration="4268000" />
<workItem from="1552900526589" duration="578000" />
<workItem from="1552874568479" duration="595000" />
<workItem from="1554771478225" duration="3659000" />
<workItem from="1555829672548" duration="31000" />
</task> </task>
<servers /> <servers />
</component> </component>
<component name="TimeTrackingManager"> <component name="TimeTrackingManager">
<option name="totallyTimeSpent" value="483460000" /> <option name="totallyTimeSpent" value="559484000" />
</component> </component>
<component name="ToolWindowManager"> <component name="ToolWindowManager">
<frame x="1920" y="0" width="1920" height="1080" extended-state="0" /> <frame x="0" y="0" width="1920" height="1080" extended-state="6" />
<editor active="true" /> <editor active="true" />
<layout> <layout>
<window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.20607029" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" /> <window_info id="Project" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.22151224" sideWeight="0.5" order="0" side_tool="false" content_ui="combo" />
<window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" /> <window_info id="TODO" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="6" side_tool="false" content_ui="tabs" />
<window_info id="Docker" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Docker" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" /> <window_info id="Event Log" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="7" side_tool="true" content_ui="tabs" />
...@@ -508,14 +539,14 @@ ...@@ -508,14 +539,14 @@
<window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" /> <window_info id="Run" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="false" content_ui="tabs" />
<window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32969216" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Version Control" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32969216" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="true" content_ui="tabs" /> <window_info id="Structure" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="1" side_tool="true" content_ui="tabs" />
<window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.16683218" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Terminal" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.16260162" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" /> <window_info id="Debug" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="3" side_tool="false" content_ui="tabs" />
<window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" /> <window_info id="Favorites" active="false" anchor="left" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="2" side_tool="true" content_ui="tabs" />
<window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" /> <window_info id="Cvs" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="4" side_tool="false" content_ui="tabs" />
<window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" /> <window_info id="Message" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.33" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" /> <window_info id="Commander" active="false" anchor="right" auto_hide="false" internal_type="SLIDING" type="SLIDING" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="0" side_tool="false" content_ui="tabs" />
<window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" /> <window_info id="Inspection" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.4" sideWeight="0.5" order="5" side_tool="false" content_ui="tabs" />
<window_info id="File Transfer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.040714994" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" /> <window_info id="File Transfer" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="true" show_stripe_button="true" weight="0.041666668" sideWeight="0.5" order="8" side_tool="false" content_ui="tabs" />
<window_info id="Database Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" /> <window_info id="Database Changes" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="false" weight="0.33" sideWeight="0.5" order="7" side_tool="false" content_ui="tabs" />
<window_info id="Thumbnails" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32969216" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" /> <window_info id="Thumbnails" active="false" anchor="bottom" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.32969216" sideWeight="0.5" order="9" side_tool="false" content_ui="tabs" />
<window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" /> <window_info id="Hierarchy" active="false" anchor="right" auto_hide="false" internal_type="DOCKED" type="DOCKED" visible="false" show_stripe_button="true" weight="0.25" sideWeight="0.5" order="2" side_tool="false" content_ui="combo" />
...@@ -536,345 +567,337 @@ ...@@ -536,345 +567,337 @@
<watches-manager /> <watches-manager />
</component> </component>
<component name="editorHistoryManager"> <component name="editorHistoryManager">
<entry file="file://$PROJECT_DIR$/vendor/workerman/workerman/Lib/Timer.php"> <entry file="file://$PROJECT_DIR$/lib/Crc.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="250"> <state relative-caret-position="80">
<caret line="84" column="27" lean-forward="false" selection-start-line="84" selection-start-column="27" selection-end-line="84" selection-end-column="27" /> <caret line="5" column="6" lean-forward="false" selection-start-line="5" selection-start-column="6" selection-end-line="5" selection-end-column="6" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/Dockerfile"> <entry file="file://$PROJECT_DIR$/application/controller/business/charger/StartController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="45" lean-forward="false" selection-start-line="0" selection-start-column="45" selection-end-line="0" selection-end-column="45" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/remote/api/message/ChargerShedTimeOutMessage.php"> <entry file="file://$PROJECT_DIR$/lib/station/gateway/port/Port.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="297">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="95" column="44" lean-forward="false" selection-start-line="95" selection-start-column="44" selection-end-line="95" selection-end-column="44" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/model/GatewayModel.php"> <entry file="file://$PROJECT_DIR$/lib/station/gateway/Gateway.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="96"> <state relative-caret-position="96">
<caret line="11" column="6" lean-forward="false" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" /> <caret line="11" column="6" lean-forward="false" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/model/GatewayUpdateModel.php"> <entry file="file://$PROJECT_DIR$/vendor/workerman/gateway-worker/src/Lib/Gateway.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="96"> <state relative-caret-position="15040">
<caret line="11" column="6" lean-forward="false" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" /> <caret line="953" column="27" lean-forward="false" selection-start-line="953" selection-start-column="27" selection-end-line="953" selection-end-column="27" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/business/port/StateController.php"> <entry file="file://$PROJECT_DIR$/src/command/StopChargerCommand.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1152"> <state relative-caret-position="304">
<caret line="88" column="33" lean-forward="false" selection-start-line="88" selection-start-column="33" selection-end-line="88" selection-end-column="33" /> <caret line="24" column="61" lean-forward="false" selection-start-line="24" selection-start-column="61" selection-end-line="24" selection-end-column="61" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/remote/api/message/ChargerFullMessage.php"> <entry file="file://$PROJECT_DIR$/lib/cdz/order/state/WaitingState.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="336"> <state relative-caret-position="1968">
<caret line="26" column="20" lean-forward="false" selection-start-line="26" selection-start-column="20" selection-end-line="26" selection-end-column="20" /> <caret line="142" column="48" lean-forward="false" selection-start-line="142" selection-start-column="48" selection-end-line="142" selection-end-column="48" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/cdz/order/Order.php"> <entry file="file://$PROJECT_DIR$/.example">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="5712"> <state relative-caret-position="0">
<caret line="362" column="20" lean-forward="false" selection-start-line="362" selection-start-column="20" selection-end-line="362" selection-end-column="20" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/readme.md"> <entry file="file://$PROJECT_DIR$/.env">
<provider selected="true" editor-type-id="split-provider[text-editor;markdown-preview-editor]"> <provider selected="true" editor-type-id="text-editor">
<state split_layout="SPLIT"> <state relative-caret-position="160">
<first_editor relative-caret-position="16"> <caret line="10" column="0" lean-forward="false" selection-start-line="10" selection-start-column="0" selection-end-line="10" selection-end-column="0" />
<caret line="1" column="26" lean-forward="false" selection-start-line="1" selection-start-column="26" selection-end-line="1" selection-end-column="26" />
</first_editor>
<second_editor />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/model/Model.php"> <entry file="file://$PROJECT_DIR$/lib/cdz/card_order/state/WaitingState.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="496"> <state relative-caret-position="2784">
<caret line="36" column="20" lean-forward="false" selection-start-line="36" selection-start-column="20" selection-end-line="36" selection-end-column="20" /> <caret line="185" column="20" lean-forward="false" selection-start-line="185" selection-start-column="20" selection-end-line="185" selection-end-column="20" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/accept/AccessController.php"> <entry file="file://$PROJECT_DIR$/vendor/workerman/mysql/src/Connection.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1968"> <state relative-caret-position="23504">
<caret line="142" column="43" lean-forward="false" selection-start-line="142" selection-start-column="43" selection-end-line="142" selection-end-column="43" /> <caret line="1471" column="20" lean-forward="false" selection-start-line="1471" selection-start-column="20" selection-end-line="1471" selection-end-column="20" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/start.php"> <entry file="file://$PROJECT_DIR$/application/controller/card/charger/PowerController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="656"> <state relative-caret-position="416">
<caret line="41" column="28" lean-forward="false" selection-start-line="41" selection-start-column="28" selection-end-line="41" selection-end-column="28" /> <caret line="34" column="33" lean-forward="false" selection-start-line="34" selection-start-column="33" selection-end-line="34" selection-end-column="33" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/accept/CertifyController.php"> <entry file="file://$PROJECT_DIR$/lib/Gateway.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="688"> <state relative-caret-position="272">
<caret line="94" column="38" lean-forward="false" selection-start-line="94" selection-start-column="38" selection-end-line="94" selection-end-column="38" /> <caret line="17" column="2" lean-forward="false" selection-start-line="17" selection-start-column="2" selection-end-line="17" selection-end-column="2" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/remote/api/message/ChargerTimeoutMessage.php"> <entry file="file://$PROJECT_DIR$/application/controller/card/port/StateController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="72"> <state relative-caret-position="0">
<caret line="49" column="20" lean-forward="false" selection-start-line="49" selection-start-column="20" selection-end-line="49" selection-end-column="20" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/composer.json"> <entry file="file://$PROJECT_DIR$/application/controller/business/port/StateController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="240"> <state relative-caret-position="381">
<caret line="15" column="3" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="17" selection-end-column="0" /> <caret line="141" column="39" lean-forward="false" selection-start-line="141" selection-start-column="39" selection-end-line="141" selection-end-column="39" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/route/Route.php"> <entry file="file://$PROJECT_DIR$/application/controller/accept/CertifyController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="406">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="72" column="49" lean-forward="false" selection-start-line="72" selection-start-column="49" selection-end-line="72" selection-end-column="49" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/route/Api.php"> <entry file="file://$PROJECT_DIR$/lib/remote/api/message/ChargerTimeoutMessage.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="944"> <state relative-caret-position="1160">
<caret line="60" column="35" lean-forward="false" selection-start-line="60" selection-start-column="35" selection-end-line="60" selection-end-column="35" /> <caret line="78" column="41" lean-forward="true" selection-start-line="78" selection-start-column="41" selection-end-line="78" selection-end-column="41" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/remote/api/message/SendMessage.php"> <entry file="file://$PROJECT_DIR$/lib/remote/api/message/ChargerShedTimeOutMessage.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="464"> <state relative-caret-position="0">
<caret line="35" column="20" lean-forward="false" selection-start-line="35" selection-start-column="20" selection-end-line="35" selection-end-column="20" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/card/PayRuleController.php"> <entry file="file://$PROJECT_DIR$/lib/remote/api/message/ChargerShedMessage.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="576"> <state relative-caret-position="0">
<caret line="46" column="78" lean-forward="false" selection-start-line="46" selection-start-column="78" selection-end-line="46" selection-end-column="78" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/model/BillTmpModel.php"> <entry file="file://$PROJECT_DIR$/lib/remote/api/message/ChargerReloadMessage.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="96"> <state relative-caret-position="0">
<caret line="11" column="6" lean-forward="false" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/remote/api/message/FailMessage.php"> <entry file="file://$PROJECT_DIR$/lib/remote/api/message/FinishByUserMessage.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="912"> <state relative-caret-position="676">
<caret line="61" column="37" lean-forward="false" selection-start-line="61" selection-start-column="37" selection-end-line="61" selection-end-column="37" /> <caret line="61" column="40" lean-forward="true" selection-start-line="61" selection-start-column="40" selection-end-line="61" selection-end-column="40" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/remote/api/message/StartMessage.php"> <entry file="file://$PROJECT_DIR$/lib/cdz/order/save/OrderSaveRedis.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="529"> <state relative-caret-position="343">
<caret line="41" column="0" lean-forward="false" selection-start-line="41" selection-start-column="0" selection-end-line="41" selection-end-column="0" /> <caret line="57" column="20" lean-forward="false" selection-start-line="57" selection-start-column="20" selection-end-line="57" selection-end-column="20" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/business/charger/StartController.php"> <entry file="file://$PROJECT_DIR$/lib/StateCode.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="361"> <state relative-caret-position="480">
<caret line="88" column="42" lean-forward="false" selection-start-line="88" selection-start-column="42" selection-end-line="88" selection-end-column="42" /> <caret line="35" column="0" lean-forward="true" selection-start-line="35" selection-start-column="0" selection-end-line="35" selection-end-column="0" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/Gateway.php"> <entry file="file://$PROJECT_DIR$/lib/cdz/order/state/OfflinePowerState.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="592"> <state relative-caret-position="240">
<caret line="37" column="49" lean-forward="false" selection-start-line="37" selection-start-column="49" selection-end-line="37" selection-end-column="49" /> <caret line="22" column="20" lean-forward="false" selection-start-line="22" selection-start-column="20" selection-end-line="22" selection-end-column="20" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/start_register.php"> <entry file="file://$PROJECT_DIR$/lib/cdz/order/state/OfflineNetState.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="480">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="38" column="26" lean-forward="false" selection-start-line="38" selection-start-column="26" selection-end-line="38" selection-end-column="26" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/start_gateway.php"> <entry file="file://$PROJECT_DIR$/application/controller/accept/AccessController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="4256">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="285" column="0" lean-forward="false" selection-start-line="285" selection-start-column="0" selection-end-line="285" selection-end-column="0" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/start_businessworker.php"> <entry file="file://$PROJECT_DIR$/lib/cdz/order/state/ChargerState.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="3200">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="222" column="0" lean-forward="false" selection-start-line="222" selection-start-column="0" selection-end-line="222" selection-end-column="0" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/response/Response.php"> <entry file="file://$PROJECT_DIR$/lib/cdz/order/state/State.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1472"> <state relative-caret-position="464">
<caret line="95" column="21" lean-forward="false" selection-start-line="95" selection-start-column="21" selection-end-line="95" selection-end-column="21" /> <caret line="34" column="14" lean-forward="false" selection-start-line="34" selection-start-column="14" selection-end-line="34" selection-end-column="14" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/Controller.php"> <entry file="file://$PROJECT_DIR$/lib/remote/api/message/ChargerFullMessage.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="160"> <state relative-caret-position="848">
<caret line="19" column="13" lean-forward="false" selection-start-line="19" selection-start-column="13" selection-end-line="19" selection-end-column="13" /> <caret line="58" column="41" lean-forward="false" selection-start-line="58" selection-start-column="41" selection-end-line="58" selection-end-column="41" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/.env"> <entry file="file://$PROJECT_DIR$/lib/cdz/order/Order.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="304"> <state relative-caret-position="736">
<caret line="19" column="23" lean-forward="false" selection-start-line="19" selection-start-column="23" selection-end-line="19" selection-end-column="23" /> <caret line="51" column="19" lean-forward="false" selection-start-line="51" selection-start-column="19" selection-end-line="51" selection-end-column="19" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/log/Log.php"> <entry file="file://$PROJECT_DIR$/application/controller/card/charger/RequestController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="528"> <state relative-caret-position="1952">
<caret line="39" column="0" lean-forward="false" selection-start-line="39" selection-start-column="0" selection-end-line="39" selection-end-column="0" /> <caret line="136" column="31" lean-forward="false" selection-start-line="136" selection-start-column="31" selection-end-line="136" selection-end-column="31" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/cdz/order/state/ChargerState.php"> <entry file="file://$PROJECT_DIR$/lib/order_check/DelayOrder.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="464"> <state relative-caret-position="688">
<caret line="51" column="31" lean-forward="false" selection-start-line="51" selection-start-column="31" selection-end-line="51" selection-end-column="31" /> <caret line="48" column="59" lean-forward="false" selection-start-line="48" selection-start-column="59" selection-end-line="48" selection-end-column="59" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/business/power/CapacityController.php"> <entry file="file://$PROJECT_DIR$/application/controller/card/charger/StartController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="1056">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="77" column="50" lean-forward="false" selection-start-line="77" selection-start-column="50" selection-end-line="77" selection-end-column="50" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/business/power/PowerController.php"> <entry file="file://$PROJECT_DIR$/composer.json">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="2672"> <state relative-caret-position="0">
<caret line="178" column="107" lean-forward="false" selection-start-line="178" selection-start-column="107" selection-end-line="178" selection-end-column="107" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/Events.php"> <entry file="jar://$APPLICATION_HOME_DIR$/plugins/php/lib/php.jar!/stubs/amqp/amqp.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="832"> <state relative-caret-position="5376">
<caret line="65" column="0" lean-forward="false" selection-start-line="65" selection-start-column="0" selection-end-line="65" selection-end-column="0" /> <caret line="340" column="20" lean-forward="false" selection-start-line="340" selection-start-column="20" selection-end-line="340" selection-end-column="20" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/cdz/card_order/state/ChargerState.php"> <entry file="file://$PROJECT_DIR$/application/controller/business/charger/OverController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="2128"> <state relative-caret-position="1887">
<caret line="152" column="26" lean-forward="false" selection-start-line="152" selection-start-column="26" selection-end-line="152" selection-end-column="26" /> <caret line="127" column="44" lean-forward="false" selection-start-line="127" selection-start-column="44" selection-end-line="127" selection-end-column="44" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/cdz/card_order/state/WaitingState.php"> <entry file="file://$PROJECT_DIR$/lib/cdz/order/state/ShedState.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="2244">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="148" column="20" lean-forward="false" selection-start-line="148" selection-start-column="20" selection-end-line="148" selection-end-column="20" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/model/OrderExceptionModel.php"> <entry file="file://$PROJECT_DIR$/gitignore">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="96"> <state relative-caret-position="51">
<caret line="11" column="6" lean-forward="false" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" /> <caret line="3" column="0" lean-forward="false" selection-start-line="3" selection-start-column="0" selection-end-line="3" selection-end-column="0" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/StateCode.php"> <entry file="file://$PROJECT_DIR$/application/start_register.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="784"> <state relative-caret-position="0">
<caret line="54" column="10" lean-forward="false" selection-start-line="54" selection-start-column="10" selection-end-line="54" selection-end-column="10" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/lib/cdz/order/state/WaitingState.php"> <entry file="file://$PROJECT_DIR$/lib/rabbitmq/MyRabbitMq.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="544"> <state relative-caret-position="1088">
<caret line="52" column="20" lean-forward="false" selection-start-line="52" selection-start-column="20" selection-end-line="52" selection-end-column="20" /> <caret line="69" column="64" lean-forward="false" selection-start-line="69" selection-start-column="64" selection-end-line="69" selection-end-column="64" />
<folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/update/QueryController.php"> <entry file="file://$PROJECT_DIR$/lib/rabbitmq/PublishPortShed.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="1488"> <state relative-caret-position="867">
<caret line="103" column="33" lean-forward="false" selection-start-line="103" selection-start-column="33" selection-end-line="103" selection-end-column="33" /> <caret line="56" column="9" lean-forward="false" selection-start-line="51" selection-start-column="8" selection-end-line="56" selection-end-column="9" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/.staging"> <entry file="file://$PROJECT_DIR$/application/controller/card/charger/OverController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="560"> <state relative-caret-position="850">
<caret line="35" column="0" lean-forward="false" selection-start-line="35" selection-start-column="0" selection-end-line="35" selection-end-column="0" /> <caret line="63" column="42" lean-forward="false" selection-start-line="63" selection-start-column="42" selection-end-line="63" selection-end-column="42" />
<folding /> <folding>
<element signature="e#139#177#0#PHP" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/src/log/record/Record.php"> <entry file="file://$PROJECT_DIR$/application/controller/TestController.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="96"> <state relative-caret-position="187">
<caret line="11" column="6" lean-forward="false" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" /> <caret line="16" column="8" lean-forward="false" selection-start-line="16" selection-start-column="8" selection-end-line="16" selection-end-column="8" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/business/charger/OverController.php"> <entry file="file://$PROJECT_DIR$/lib/cdz/card_order/state/ChargerState.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="2400"> <state relative-caret-position="2737">
<caret line="166" column="27" lean-forward="false" selection-start-line="166" selection-start-column="27" selection-end-line="166" selection-end-column="27" /> <caret line="180" column="39" lean-forward="false" selection-start-line="180" selection-start-column="39" selection-end-line="180" selection-end-column="39" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/model/CardModel.php"> <entry file="file://$PROJECT_DIR$/application/start_businessworker.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="96"> <state relative-caret-position="0">
<caret line="11" column="6" lean-forward="false" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/model/UserModel.php"> <entry file="file://$PROJECT_DIR$/application/Events.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="96"> <state relative-caret-position="2618">
<caret line="11" column="6" lean-forward="false" selection-start-line="11" selection-start-column="6" selection-end-line="11" selection-end-column="6" /> <caret line="170" column="0" lean-forward="false" selection-start-line="170" selection-start-column="0" selection-end-line="170" selection-end-column="0" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/card/charger/PowerController.php"> <entry file="file://$PROJECT_DIR$/start.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
...@@ -882,7 +905,7 @@ ...@@ -882,7 +905,7 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/card/charger/OverController.php"> <entry file="file://$PROJECT_DIR$/application/controller/Controller.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="0"> <state relative-caret-position="0">
<caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" /> <caret line="0" column="0" lean-forward="false" selection-start-line="0" selection-start-column="0" selection-end-line="0" selection-end-column="0" />
...@@ -890,27 +913,34 @@ ...@@ -890,27 +913,34 @@
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/card/charger/StartController.php"> <entry file="file://$PROJECT_DIR$/application/route/Api.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="720"> <state relative-caret-position="1258">
<caret line="54" column="18" lean-forward="false" selection-start-line="54" selection-start-column="18" selection-end-line="54" selection-end-column="18" /> <caret line="75" column="34" lean-forward="false" selection-start-line="75" selection-start-column="34" selection-end-line="75" selection-end-column="34" />
<folding /> <folding>
<element signature="e#37#75#0#PHP" expanded="true" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/card/BalanceController.php"> <entry file="file://$PROJECT_DIR$/src/route/Route.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="272"> <state relative-caret-position="900">
<caret line="25" column="0" lean-forward="false" selection-start-line="25" selection-start-column="0" selection-end-line="25" selection-end-column="0" /> <caret line="139" column="20" lean-forward="false" selection-start-line="139" selection-start-column="20" selection-end-line="139" selection-end-column="20" />
<folding /> <folding />
</state> </state>
</provider> </provider>
</entry> </entry>
<entry file="file://$PROJECT_DIR$/application/controller/card/charger/RequestController.php"> <entry file="file://$PROJECT_DIR$/application/model/Model.php">
<provider selected="true" editor-type-id="text-editor"> <provider selected="true" editor-type-id="text-editor">
<state relative-caret-position="541"> <state relative-caret-position="789">
<caret line="76" column="16" lean-forward="false" selection-start-line="76" selection-start-column="16" selection-end-line="76" selection-end-column="16" /> <caret line="104" column="20" lean-forward="false" selection-start-line="104" selection-start-column="20" selection-end-line="104" selection-end-column="20" />
<folding /> <folding>
<marker date="1534755589000" expanded="true" signature="594:633" ph="SELECT ${$co... ${$this-&gt;table}" />
<marker date="1534755589000" expanded="true" signature="921:961" ph="SELECT ${$co... ${$this-&gt;table}" />
<marker date="1534755589000" expanded="true" signature="1253:1293" ph="SELECT ${$co... ${$this-&gt;table}" />
<marker date="1534755589000" expanded="true" signature="1443:1476" ph="SELECT * FRO... ${$this-&gt;table}" />
</folding>
</state> </state>
</provider> </provider>
</entry> </entry>
......
...@@ -15,6 +15,9 @@ use Lib\station\gateway\Gateway; ...@@ -15,6 +15,9 @@ use Lib\station\gateway\Gateway;
use Lib\station\gateway\port\Port; use Lib\station\gateway\port\Port;
use Workerman\Lib\Timer; use Workerman\Lib\Timer;
use GuzzleHttp\Client; use GuzzleHttp\Client;
use Lib\order_check\DelayOrder;
use Lib\cdz\order\Order;
use Src\command\StopChargerCommand;
class Events class Events
{ {
...@@ -32,9 +35,14 @@ class Events ...@@ -32,9 +35,14 @@ class Events
/** /**
* *
*/ */
public static function onWorkerStart() public static function onWorkerStart(\GatewayWorker\BusinessWorker $businessWorker)
{ {
\Lib\log\Log::bootLog();
if ( $businessWorker->id === 0 ) {
Timer::add(10 * 6 * 10, function () { Timer::add(10 * 6 * 10, function () {
$client = new Client([ $client = new Client([
...@@ -56,7 +64,7 @@ class Events ...@@ -56,7 +64,7 @@ class Events
static::$redis->pconnect(getenv('REDIS_HOST'), getenv('REDIS_PORT'), 0); static::$redis->pconnect(getenv('REDIS_HOST'), getenv('REDIS_PORT'), 0);
if (getenv('REDIS_AUTH') !== false) { if ( getenv('REDIS_AUTH') !== false ) {
static::$redis->auth(getenv('REDIS_AUTH')); static::$redis->auth(getenv('REDIS_AUTH'));
...@@ -64,8 +72,45 @@ class Events ...@@ -64,8 +72,45 @@ class Events
static::$redis->select('4'); static::$redis->select('4');
Timer::add(2, function () {
\Lib\log\Log::bootLog(); $delayOrder = new DelayOrder();
$delayOrderIds = $delayOrder->getDelayOrder();
$order = new Order();
$stopCommand = new StopChargerCommand();
foreach ($delayOrderIds as $delayOrderId) {
$order->setId($delayOrderId);
$order->getOrderCache(static::$redis);
$orderState = $order->getStateCode();
if ( $orderState == -1 ) {
$stopCommand->setOutTradeNo($delayOrderId);
$stopCommand->setFinishType(43);
$stopCommand->setPortLogic($order->getPortLogicId());
$body = $stopCommand->getMessage();
$length = sprintf('%04x', (8 + strlen($body) / 2));
$nonce = sprintf('%02x', dechex(rand(0, 255)));
$exceptCrc = 'ffaa0405' . $length . $nonce . $body;
$crc = substr(sprintf('%08x', Crc::crc($exceptCrc)), 0, 2);
//下发结束充电命令和释放口子
\GatewayWorker\Lib\Gateway::sendToUid($order->getGatewayMac(), $exceptCrc . $crc);
$port = new Port($order->getPortId());
$port->freePort();
}
$delayOrder->deleteDelayOrder($delayOrderId);
}
});
}
} }
...@@ -92,7 +137,7 @@ class Events ...@@ -92,7 +137,7 @@ class Events
$crcConfirm = sprintf('%08x', Crc::crc(substr($message, 0, strlen($message) - 2))); $crcConfirm = sprintf('%08x', Crc::crc(substr($message, 0, strlen($message) - 2)));
if ($crc != mb_strtoupper(substr($crcConfirm, 0, 2))) { if ( $crc != mb_strtoupper(substr($crcConfirm, 0, 2)) ) {
Log::error("message crc wrong ($message)"); Log::error("message crc wrong ($message)");
return; return;
} }
...@@ -101,11 +146,11 @@ class Events ...@@ -101,11 +146,11 @@ class Events
$api = new Api(); $api = new Api();
$api->boot(); $api->boot();
if (isset($api->route[$command])) { if ( isset($api->route[$command]) ) {
$route = $api->route[$command]; $route = $api->route[$command];
if ($route instanceof Route) { if ( $route instanceof Route ) {
$reflection = $route->getController(); $reflection = $route->getController();
...@@ -137,7 +182,7 @@ class Events ...@@ -137,7 +182,7 @@ class Events
$stationName = isset($_SESSION['station_name']) ? $_SESSION['station_name'] : ''; $stationName = isset($_SESSION['station_name']) ? $_SESSION['station_name'] : '';
$gatewayName = isset($_SESSION['gateway_name']) ? $_SESSION['gateway_name'] : ''; $gatewayName = isset($_SESSION['gateway_name']) ? $_SESSION['gateway_name'] : '';
if ($gatewayId === '' || $stationId === '' || $gatewayName === '' || $stationName === '') { if ( $gatewayId === '' || $stationId === '' || $gatewayName === '' || $stationName === '' ) {
Log::error('client close can not find station_id or gateway_id'); Log::error('client close can not find station_id or gateway_id');
return; return;
} }
...@@ -148,7 +193,7 @@ class Events ...@@ -148,7 +193,7 @@ class Events
$exceptionModel = new \Application\model\ExceptionModel(); $exceptionModel = new \Application\model\ExceptionModel();
if (isset($_SESSION['station_id']) && isset($_SESSION['gateway_id'])) { if ( isset($_SESSION['station_id']) && isset($_SESSION['gateway_id']) ) {
$exceptionModel->insertRow([ $exceptionModel->insertRow([
'message' => '网关离线', 'message' => '网关离线',
'gateway_id' => $gatewayId, 'gateway_id' => $gatewayId,
...@@ -164,7 +209,7 @@ class Events ...@@ -164,7 +209,7 @@ class Events
//网关状态设置为离线 //网关状态设置为离线
$gateway->setState($gatewayId, 0); $gateway->setState($gatewayId, 0);
if (isset($_SESSION['port_mac_id']) === false) { if ( isset($_SESSION['port_mac_id']) === false ) {
Log::error('gateway close can not find port_mac_id in session'); Log::error('gateway close can not find port_mac_id in session');
return; return;
...@@ -202,9 +247,9 @@ class Events ...@@ -202,9 +247,9 @@ class Events
//端口当前订单记录离线时间 //端口当前订单记录离线时间
if ($portUsingOrderId != false && $portUsingOrderId != '') { if ( $portUsingOrderId != false && $portUsingOrderId != '' ) {
$order = new \Lib\cdz\order\Order($portUsingOrderId); $order = new \Lib\cdz\order\Order($portUsingOrderId);
if ($order->getOrderCache(static::$redis) != false) { if ( $order->getOrderCache(static::$redis) != false ) {
$order->setOfflineTime(time()); $order->setOfflineTime(time());
$saveOrder = new \Lib\cdz\order\save\OrderSaveRedis($order); $saveOrder = new \Lib\cdz\order\save\OrderSaveRedis($order);
$saveOrder->save(['offlineTime']); $saveOrder->save(['offlineTime']);
......
...@@ -65,8 +65,8 @@ class AccessController extends Controller ...@@ -65,8 +65,8 @@ class AccessController extends Controller
$gatewayModel = new GatewayModel(); $gatewayModel = new GatewayModel();
if (isset($_SESSION['gateway_mac'])) { if ( isset($_SESSION['gateway_mac']) ) {
if ($_SESSION['gateway_mac'] != $mac) { if ( $_SESSION['gateway_mac'] != $mac ) {
Gateway::closeClient($this->clientId); Gateway::closeClient($this->clientId);
} }
...@@ -78,7 +78,7 @@ class AccessController extends Controller ...@@ -78,7 +78,7 @@ class AccessController extends Controller
'type_id' 'type_id'
], 'mac_address = ' . "'$mac'"); ], 'mac_address = ' . "'$mac'");
if ($gatewayModelResult == false) { if ( $gatewayModelResult == false ) {
Gateway::closeClient($this->clientId); Gateway::closeClient($this->clientId);
return; return;
} }
...@@ -103,14 +103,14 @@ class AccessController extends Controller ...@@ -103,14 +103,14 @@ class AccessController extends Controller
'name', 'name',
], 'id = ' . $stationId); ], 'id = ' . $stationId);
if (isset($stationData['park_id']) && isset($stationData['name'])) { if ( isset($stationData['park_id']) && isset($stationData['name']) ) {
$parkId = $stationData['park_id']; $parkId = $stationData['park_id'];
$_SESSION['station_name'] = $stationData['name']; $_SESSION['station_name'] = $stationData['name'];
if (isset($parkId)) { if ( isset($parkId) ) {
$parkModel = new ParkModel(); $parkModel = new ParkModel();
$_SESSION['park_id'] = $parkId; $_SESSION['park_id'] = $parkId;
$agentId = $parkModel->getColumn('agent_id', 'id = ' . $parkId); $agentId = $parkModel->getColumn('agent_id', 'id = ' . $parkId);
if (isset($agentId)) { if ( isset($agentId) ) {
$_SESSION['agent_id'] = $agentId; $_SESSION['agent_id'] = $agentId;
} }
...@@ -185,7 +185,7 @@ class AccessController extends Controller ...@@ -185,7 +185,7 @@ class AccessController extends Controller
$portMacState = []; $portMacState = [];
if (strlen($this->message) < (12 * 2 + 9 * 2 * $count)) { if ( strlen($this->message) < (12 * 2 + 9 * 2 * $count) ) {
return; return;
} }
...@@ -197,7 +197,7 @@ class AccessController extends Controller ...@@ -197,7 +197,7 @@ class AccessController extends Controller
$portMacState[$mac] = hexdec($state); $portMacState[$mac] = hexdec($state);
} }
if (isset($_SESSION['port_mac_id']) == false) { if ( isset($_SESSION['port_mac_id']) == false ) {
return; return;
} }
...@@ -211,7 +211,7 @@ class AccessController extends Controller ...@@ -211,7 +211,7 @@ class AccessController extends Controller
$portsId = []; $portsId = [];
foreach ($portMacState as $mac => $state) { foreach ($portMacState as $mac => $state) {
if (isset($portsMacId[$mac])) { if ( isset($portsMacId[$mac]) ) {
array_push($portsId, $portsMacId[$mac]); array_push($portsId, $portsMacId[$mac]);
} }
} }
...@@ -222,14 +222,14 @@ class AccessController extends Controller ...@@ -222,14 +222,14 @@ class AccessController extends Controller
foreach ($portMacState as $mac => $state) { foreach ($portMacState as $mac => $state) {
$portId = isset($portsMacId[$mac]) ? $portsMacId[$mac] : false; $portId = isset($portsMacId[$mac]) ? $portsMacId[$mac] : false;
if ($portId === false) { if ( $portId === false ) {
continue; continue;
} }
$port->setPortId($portId); $port->setPortId($portId);
if (isset($portsIdStatus[$portId])) { if ( isset($portsIdStatus[$portId]) ) {
if ($portsIdStatus[$portId] === 8) { if ( $portsIdStatus[$portId] === 8 ) {
$state = 8; $state = 8;
} }
...@@ -246,7 +246,7 @@ class AccessController extends Controller ...@@ -246,7 +246,7 @@ class AccessController extends Controller
$deviceModel = new DeviceModel(); $deviceModel = new DeviceModel();
if (isset($_SESSION['port_logic_id'])) { if ( isset($_SESSION['port_logic_id']) ) {
$_SESSION['port_logic_id'] = $_SESSION['port_logic_id'] + $portsLogicId; $_SESSION['port_logic_id'] = $_SESSION['port_logic_id'] + $portsLogicId;
} else { } else {
$_SESSION['port_logic_id'] = $portsLogicId; $_SESSION['port_logic_id'] = $portsLogicId;
...@@ -273,18 +273,18 @@ class AccessController extends Controller ...@@ -273,18 +273,18 @@ class AccessController extends Controller
$port->setPortId($portId); $port->setPortId($portId);
$orderId = $port->getPortUsingOrderId(); $orderId = $port->getPortUsingOrderId();
if ($orderId == false || $orderId == '') { if ( $orderId == false || $orderId == '' ) {
continue; continue;
} }
$order->setId($orderId); $order->setId($orderId);
if ($order->getOrderCache(\Events::getRedis()) == false) { if ( $order->getOrderCache(\Events::getRedis()) == false ) {
continue; continue;
} }
$order->setOnlineTime(time()); $order->setOnlineTime(time());
if ($offlineReason == 0) { if ( $offlineReason == 0 ) {
$orderState = new OfflineNetState($order); $orderState = new OfflineNetState($order);
} else { } else {
$orderState = new OfflinePowerState($order); $orderState = new OfflinePowerState($order);
...@@ -292,7 +292,7 @@ class AccessController extends Controller ...@@ -292,7 +292,7 @@ class AccessController extends Controller
} }
$remainTime = $orderState->getRemainChargerTime(); $remainTime = $orderState->getRemainChargerTime();
if ($remainTime > 0) { if ( $remainTime > 0 ) {
$logicNum = sprintf('%02x', $order->getPortLogicId()); $logicNum = sprintf('%02x', $order->getPortLogicId());
$orderId = sprintf('%012x', $order->getId()); $orderId = sprintf('%012x', $order->getId());
$time = sprintf('%04x', $remainTime); $time = sprintf('%04x', $remainTime);
......
...@@ -62,14 +62,15 @@ class CertifyController extends Controller ...@@ -62,14 +62,15 @@ class CertifyController extends Controller
'type_id' 'type_id'
], 'mac_address = ' . "'$mac'"); ], 'mac_address = ' . "'$mac'");
if ($gatewayModelResult == false) { if ( $gatewayModelResult == false ) {
Gateway::closeClient($this->clientId); Gateway::closeClient($this->clientId);
return; return;
} }
$stationId = $gatewayModelResult['station_id']; $stationId = $gatewayModelResult['station_id'];
$gatewayId = $gatewayModelResult['id']; $gatewayId = $gatewayModelResult['id'];
$gatewayType = $gatewayModelResult['type_id'];
$_SESSION['gateway_type'] = $gatewayType;
$_SESSION['station_id'] = $stationId; $_SESSION['station_id'] = $stationId;
$_SESSION['gateway_id'] = $gatewayId; $_SESSION['gateway_id'] = $gatewayId;
...@@ -81,7 +82,7 @@ class CertifyController extends Controller ...@@ -81,7 +82,7 @@ class CertifyController extends Controller
$sign = substr($sign, 0, 8); $sign = substr($sign, 0, 8);
if (Gateway::isUidOnline($mac) === 1) { if ( Gateway::isUidOnline($mac) === 1 ) {
$clients = Gateway::getclientIdByUid($mac); $clients = Gateway::getclientIdByUid($mac);
foreach ($clients as $client) { foreach ($clients as $client) {
......
...@@ -59,22 +59,22 @@ class OverController extends Controller ...@@ -59,22 +59,22 @@ class OverController extends Controller
$this->logRecord->setOrderId($orderId); $this->logRecord->setOrderId($orderId);
$order = new Order($orderId); $order = new Order($orderId);
if ($order->getOrderCache(\Events::getRedis()) != false) { if ( $order->getOrderCache(\Events::getRedis()) != false ) {
$orderStateCode = $order->getStateCode(); $orderStateCode = $order->getStateCode();
$order->setEndCapacity($capacity); $order->setEndCapacity($capacity);
$order->setEndCode($state); $order->setEndCode($state);
$order->setFinishTime(time());
$portId = isset($_SESSION['port_logic_id'][$logicId]) ? $_SESSION['port_logic_id'][$logicId] : 0; $portId = isset($_SESSION['port_logic_id'][$logicId]) ? $_SESSION['port_logic_id'][$logicId] : 0;
if ($portId !== 0) { if ( $portId !== 0 ) {
$this->logRecord->setPortId($portId); $this->logRecord->setPortId($portId);
} }
if (Gateway::isUidOnline($order->getUserId()) === 1) { if ( Gateway::isUidOnline($order->getUserId()) === 1 ) {
Gateway::sendToUid($order->getUserId(), json_encode(['code' => 10000])); Gateway::sendToUid($order->getUserId(), json_encode(['code' => 10000]));
} }
Log::debug('order state code ' . $orderStateCode);
switch ($orderStateCode) { switch ($orderStateCode) {
case StateCode::WAITING: case StateCode::WAITING:
$orderState = new WaitingState($order); $orderState = new WaitingState($order);
...@@ -89,7 +89,7 @@ class OverController extends Controller ...@@ -89,7 +89,7 @@ class OverController extends Controller
break; break;
} }
if (isset($orderState)) { if ( isset($orderState) ) {
switch ($state) { switch ($state) {
case StateCode::PORT_EXCEPTION://口子打开失败,适配zegbee设备 case StateCode::PORT_EXCEPTION://口子打开失败,适配zegbee设备
$this->logRecord->setDesc('口子打开失败结束'); $this->logRecord->setDesc('口子打开失败结束');
...@@ -134,7 +134,7 @@ class OverController extends Controller ...@@ -134,7 +134,7 @@ class OverController extends Controller
case StateCode::CHANGE_PORT: case StateCode::CHANGE_PORT:
if (isset($_SESSION['port_logic_id'])) { if ( isset($_SESSION['port_logic_id']) ) {
$portId = isset($_SESSION['port_logic_id'][$logicId]) ? $_SESSION['port_logic_id'][$logicId] : 0; $portId = isset($_SESSION['port_logic_id'][$logicId]) ? $_SESSION['port_logic_id'][$logicId] : 0;
$port = new Port($portId); $port = new Port($portId);
......
...@@ -11,9 +11,11 @@ namespace Application\controller\card\charger; ...@@ -11,9 +11,11 @@ namespace Application\controller\card\charger;
use Application\controller\Controller; use Application\controller\Controller;
use Lib\cdz\order\Order; use Lib\cdz\order\Order;
use Lib\cdz_order\state\ChargerState; use Lib\cdz\card_order\state\ChargerState;
use Lib\cdz_order\state\ShedState; use Lib\cdz\card_order\state\ShedState;
use Lib\cdz_order\state\WaitingState; use Lib\cdz\card_order\state\WaitingState;
use Lib\Gateway;
use Lib\log\Log;
use Lib\StateCode; use Lib\StateCode;
use Lib\Tool; use Lib\Tool;
...@@ -42,10 +44,16 @@ class OverController extends Controller ...@@ -42,10 +44,16 @@ class OverController extends Controller
$order = new Order($orderId); $order = new Order($orderId);
$order->setEndCapacity($capacity); $order->setEndCapacity($capacity);
Log::debug($capacity);
Log::debug($state);
Log::debug($order->getEndCapacity());
$order->setEndCode($state); $order->setEndCode($state);
$this->logRecord->setOrderId($orderId); $this->logRecord->setOrderId($orderId);
if ($order->getOrderCache(\Events::getRedis()) !== false) { if ( $order->getOrderCache(\Events::getRedis()) !== false ) {
$orderStateCode = $order->getStateCode(); $orderStateCode = $order->getStateCode();
$order->setEndCapacity($capacity);
$this->logRecord->setPortId($order->getPortId()); $this->logRecord->setPortId($order->getPortId());
...@@ -60,13 +68,20 @@ class OverController extends Controller ...@@ -60,13 +68,20 @@ class OverController extends Controller
$orderState = new WaitingState($order); $orderState = new WaitingState($order);
break; break;
default: default:
break; break;
} }
if (isset($orderState)) { if ( isset($orderState) ) {
switch ($state) { switch ($state) {
case StateCode::FINISH_USER:
$orderState->toUserFinish();
break;
case StateCode::FINISH_TIME_END: case StateCode::FINISH_TIME_END:
$orderState->toTimeoutState(); $orderState->toTimeoutState();
break; break;
...@@ -76,15 +91,24 @@ class OverController extends Controller ...@@ -76,15 +91,24 @@ class OverController extends Controller
case StateCode::FINISH_EXCEED: case StateCode::FINISH_EXCEED:
$orderState->toPowerExceedState(); $orderState->toPowerExceedState();
break; break;
default: case StateCode::FINISH_REFUND:
$orderState->toRefundFinish();
break; break;
}
case StateCode::FINISH_FULL: //充满自停
$this->logRecord->setDesc('充满自停结束->' . $state);
$orderState->toPowerFullState();
default:
break;
} }
} }
}
Gateway::sendToUid($order->getUserId(), json_encode(['command' => '11']));
$this->response->send('45', Tool::padding($orderId, 6)); $this->response->send('55', Tool::padding($orderId, 6));
} }
......
...@@ -16,6 +16,8 @@ use Application\model\UserModel; ...@@ -16,6 +16,8 @@ use Application\model\UserModel;
use Lib\cdz\order\Order; use Lib\cdz\order\Order;
use Lib\cdz\order\save\OrderSaveRedis; use Lib\cdz\order\save\OrderSaveRedis;
use Lib\log\Log; use Lib\log\Log;
use Lib\order_check\DelayOrder;
use Lib\station\gateway\port\Port;
use Lib\Tool; use Lib\Tool;
class RequestController extends Controller class RequestController extends Controller
...@@ -42,21 +44,20 @@ class RequestController extends Controller ...@@ -42,21 +44,20 @@ class RequestController extends Controller
$time = hexdec($this->request->get('time')); $time = hexdec($this->request->get('time'));
$price = hexdec($this->request->get('price')); $price = hexdec($this->request->get('price'));
if ((isset($_SESSION['gateway_id']) && isset($_SESSION['station_id']) && isset($_SESSION['station_name'])) === false) { if ( (isset($_SESSION['gateway_id']) && isset($_SESSION['station_id']) && isset($_SESSION['station_name'])) === false ) {
Log::debug('miss gateway)id'); Log::debug('miss gateway)id');
return; return;
} }
if (isset($_SESSION['port_logic_id'])) { if ( isset($_SESSION['port_logic_id']) ) {
Log::debug('port_logic_id', $_SESSION['port_logic_id']);
if (isset($_SESSION['port_logic_id'][$logicId])) { if ( isset($_SESSION['port_logic_id'][$logicId]) ) {
$portId = $_SESSION['port_logic_id'][$logicId]; $portId = $_SESSION['port_logic_id'][$logicId];
} }
} }
if (isset($portId) === false) { if ( isset($portId) === false ) {
return; return;
} }
...@@ -64,14 +65,12 @@ class RequestController extends Controller ...@@ -64,14 +65,12 @@ class RequestController extends Controller
$userId = $cardModel->getColumn('user_id', 'mac = ' . "'$cardId'"); $userId = $cardModel->getColumn('user_id', 'mac = ' . "'$cardId'");
Log::debug($userId); if ( isset($userId) ) {
if (isset($userId)) {
$userModel = new UserModel(); $userModel = new UserModel();
$balance = $userModel->getColumn('wallet_balance', 'id = ' . $userId); $balance = $userModel->getColumn('wallet_balance', 'id = ' . $userId);
} }
$balance = isset($balance) ? $balance : 0; $balance = isset($balance) ? $balance : 0;
if ((int)$balance < (int)$price) { if ( (int)$balance < (int)$price ) {
$orderId = 0; $orderId = 0;
} else { } else {
...@@ -85,37 +84,58 @@ class RequestController extends Controller ...@@ -85,37 +84,58 @@ class RequestController extends Controller
$orderModel->insertRow([ $orderModel->insertRow([
'gateway_id' => $gatewayId, 'gateway_id' => $gatewayId,
'station_id' => $stationId, 'station_id' => $stationId,
'order_amount' => $price,
'port_id' => $portId, 'port_id' => $portId,
'wx_user_id' => $userId,
'out_trade_no' => $outTradeNo, 'out_trade_no' => $outTradeNo,
'pay_amount' => $price, 'pay_amount' => $price,
'charger_time' => $time, 'charger_time' => $time,
'created_at' => $date, 'created_at' => $date,
'logic_num' => $logicId, 'logic_num' => $logicId,
'pay_type' => 3, 'pay_type' => 2,
'station_name' => $stationName, 'station_name' => $stationName,
]); ]);
$orderId = $orderModel->getColumn('id', 'out_trade_no = ' . $outTradeNo); $orderId = $orderModel->getColumn('id', 'out_trade_no = ' . "'$outTradeNo'");
} }
$this->response->send('33', $type . Tool::padding($logicId, 1) . Tool::padding($time, 2) . Tool::padding($price, 2) . Tool::padding($orderId, 6) . Tool::padding($balance, 4)); $this->response->send('33', $type . Tool::padding($logicId, 1) . Tool::padding($time, 2) . Tool::padding($price, 2) . Tool::padding($orderId, 6) . Tool::padding($balance, 4));
if ($orderId != 0) { if ( $orderId != 0 ) {
//todo 订单缓存存储 //todo 订单缓存存储
$port = new Port();
$port->setPortId($portId);
$port->setPortUsingOrderId($userId, $orderId);
$port->setState(-1);
$port->updatePortState();
$order = new Order($orderId); $order = new Order($orderId);
$order->setStationId($stationId);
$order->setOutTradeNo($outTradeNo);
$order->setGatewayMac($_SESSION['gateway_mac']);
$order->setPortName($_SESSION['port_id_name'][$portId]);
$order->setPortId($portId);
$order->setGatewayId($gatewayId); $order->setGatewayId($gatewayId);
$order->setCardId($cardId); $order->setCardId($cardId);
$order->setStationId($stationId); $order->setStationId($stationId);
$order->setStationName($stationName); $order->setStationName($stationName);
$order->setCreatedTime(time()); $order->setCreatedTime(time());
$order->setPayAmount($price); $order->setPayAmount($price);
$order->setUserId($userId);
$order->setPurchaseTime($time); $order->setPurchaseTime($time);
$order->setPortLogicId($logicId); $order->setPortLogicId($logicId);
$order->setStateCode(-1); $order->setStateCode(-1);
$order->setGatewayType($_SESSION['gateway_type']);
$saveOrder = new OrderSaveRedis($order); $saveOrder = new OrderSaveRedis($order);
$saveOrder->saveAll(); $saveOrder->saveAll();
$delayOrder = new DelayOrder();
$delayOrder->setOrder($order);
$delayOrder->setDelay();
} }
......
...@@ -10,8 +10,10 @@ namespace Application\controller\card\charger; ...@@ -10,8 +10,10 @@ namespace Application\controller\card\charger;
use Application\controller\Controller; use Application\controller\Controller;
use Application\model\UserModel;
use Lib\cdz\order\Order; use Lib\cdz\order\Order;
use Lib\cdz_order\state\WaitingState; use Lib\cdz\card_order\state\WaitingState;
use Lib\log\Log;
use Lib\StateCode; use Lib\StateCode;
use Lib\Tool; use Lib\Tool;
...@@ -41,7 +43,15 @@ class StartController extends Controller ...@@ -41,7 +43,15 @@ class StartController extends Controller
$capacity = hexdec($this->request->get('capacity')); $capacity = hexdec($this->request->get('capacity'));
$order = new Order($orderId); $order = new Order($orderId);
if ($order->getOrderCache(\Events::getRedis()) != false) { if ( $order->getOrderCache(\Events::getRedis()) != false ) {
$price = $order->getPayAmount();
$userId = $order->getUserId();
$userModel = new UserModel();
Log::debug('order_cache', $order->getOrderCache(\Events::getRedis()));
$orderStateCode = $order->getStateCode(); $orderStateCode = $order->getStateCode();
$order->setStartCapacity($capacity); $order->setStartCapacity($capacity);
...@@ -60,6 +70,13 @@ class StartController extends Controller ...@@ -60,6 +70,13 @@ class StartController extends Controller
switch ($state) { switch ($state) {
case StateCode::PORT_CHARGER: case StateCode::PORT_CHARGER:
Log::debug($price);
$db = \Events::getDb();
$db->query("UPDATE `wx_users` SET `wallet_balance` = `wallet_balance` - $price WHERE id = $userId");
Log::debug('decrease wallet');
$orderState->toChargerState(); $orderState->toChargerState();
break; break;
case StateCode::PORT_SHED: case StateCode::PORT_SHED:
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* Time: 上午11:21 * Time: 上午11:21
*/ */
namespace Lib\cdz_order\state; namespace Lib\cdz\card_order\state;
use Application\model\OrderExceptionModel; use Application\model\OrderExceptionModel;
...@@ -40,6 +40,8 @@ class ChargerState extends State ...@@ -40,6 +40,8 @@ class ChargerState extends State
public function toUserFinish() public function toUserFinish()
{ {
$orderModel = new OrderModel(); $orderModel = new OrderModel();
$orderModel->update([ $orderModel->update([
'is_stop' => $this->order->getEndCode(), 'is_stop' => $this->order->getEndCode(),
'end_capacity' => $this->order->getEndCapacity(), 'end_capacity' => $this->order->getEndCapacity(),
...@@ -48,6 +50,7 @@ class ChargerState extends State ...@@ -48,6 +50,7 @@ class ChargerState extends State
'state' => 1, 'state' => 1,
], 'id = ' . $this->order->getId()); ], 'id = ' . $this->order->getId());
$port = new Port(); $port = new Port();
$port->setState(StateCode::PORT_ONLINE); $port->setState(StateCode::PORT_ONLINE);
$port->setPortId($this->order->getPortId()); $port->setPortId($this->order->getPortId());
...@@ -72,7 +75,7 @@ class ChargerState extends State ...@@ -72,7 +75,7 @@ class ChargerState extends State
$finishByUserMessage->setOrderAmount($this->order->getPayAmount()); $finishByUserMessage->setOrderAmount($this->order->getPayAmount());
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($finishByUserMessage) == false) { if ( $sendMessage->request($finishByUserMessage) == false ) {
Log::error('send finish by user message fail'); Log::error('send finish by user message fail');
} }
...@@ -145,7 +148,7 @@ class ChargerState extends State ...@@ -145,7 +148,7 @@ class ChargerState extends State
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($powerExceedMessage) === false) { if ( $sendMessage->request($powerExceedMessage) === false ) {
Log::error('send power exceed message fail'); Log::error('send power exceed message fail');
//todo tcp异常上报 //todo tcp异常上报
} }
...@@ -197,7 +200,7 @@ class ChargerState extends State ...@@ -197,7 +200,7 @@ class ChargerState extends State
$chargerFullMessage->setPurchaseTime($this->order->getPurchaseTime()); $chargerFullMessage->setPurchaseTime($this->order->getPurchaseTime());
$chargerFullMessage->setRemark($chargerFullMessage->getRemark() . '\n' . sprintf('%012x', $this->order->getId())); $chargerFullMessage->setRemark($chargerFullMessage->getRemark() . '\n' . sprintf('%012x', $this->order->getId()));
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($chargerFullMessage) === false) { if ( $sendMessage->request($chargerFullMessage) === false ) {
Log::error('send charger full message fail'); Log::error('send charger full message fail');
} }
$port = new Port(); $port = new Port();
...@@ -268,7 +271,7 @@ class ChargerState extends State ...@@ -268,7 +271,7 @@ class ChargerState extends State
$chargerShedMessage->setDate($this->nowDate); $chargerShedMessage->setDate($this->nowDate);
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($chargerShedMessage) == false) { if ( $sendMessage->request($chargerShedMessage) == false ) {
Log::error('send port shed message fail'); Log::error('send port shed message fail');
} }
...@@ -338,13 +341,14 @@ class ChargerState extends State ...@@ -338,13 +341,14 @@ class ChargerState extends State
$chargerTimeoutMessage->setOrderAmount($this->order->getPayAmount()); $chargerTimeoutMessage->setOrderAmount($this->order->getPayAmount());
$chargerTimeoutMessage->setEndTime($this->nowDate); $chargerTimeoutMessage->setEndTime($this->nowDate);
$chargerTimeoutMessage->setUserId($this->order->getUserId()); $chargerTimeoutMessage->setUserId($this->order->getUserId());
$chargerTime = $this->nowTimeStamp - $this->order->getStartTime(); $chargerTime = $this->nowDate - $this->order->getStartTime();
$chargerTime /= 60; $chargerTime /= 60;
$chargerTime = ceil($chargerTime);
$chargerTimeoutMessage->setChargerTime((int)$chargerTime); $chargerTimeoutMessage->setChargerTime((int)$chargerTime);
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($chargerTimeoutMessage) == false) { if ( $sendMessage->request($chargerTimeoutMessage) == false ) {
Log::error('send charger timeout message fail'); Log::error('send charger timeout message fail');
} }
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* Time: 上午11:22 * Time: 上午11:22
*/ */
namespace Lib\cdz_order\state; namespace Lib\cdz\card_order\state;
use Lib\cdz\order\Order; use Lib\cdz\order\Order;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* Time: 下午6:45 * Time: 下午6:45
*/ */
namespace Lib\cdz_order\state; namespace Lib\cdz\card_order\state;
use Lib\cdz\order\NoticePortShed; use Lib\cdz\order\NoticePortShed;
...@@ -28,7 +28,7 @@ class OfflineNetState extends State ...@@ -28,7 +28,7 @@ class OfflineNetState extends State
$startTime = $this->order->getStartTime(); $startTime = $this->order->getStartTime();
if ($startTime === '' || $this->order->getOfflineTime() == '0') { if ( $startTime === '' || $this->order->getOfflineTime() == '0' ) {
$this->remainChargerTime = (int)($this->order->getPurchaseTime()); $this->remainChargerTime = (int)($this->order->getPurchaseTime());
} else { } else {
$purchaseTime = $this->order->getPurchaseTime(); $purchaseTime = $this->order->getPurchaseTime();
...@@ -57,7 +57,7 @@ class OfflineNetState extends State ...@@ -57,7 +57,7 @@ class OfflineNetState extends State
public function toChargerState() public function toChargerState()
{ {
if ($this->order->getIsRefund() === 1) { if ( $this->order->getIsRefund() === 1 ) {
//已经退款 下发结束充电命令 //已经退款 下发结束充电命令
$this->order->stop($this->order, $_SESSION['client_id'], 43); $this->order->stop($this->order, $_SESSION['client_id'], 43);
return; return;
...@@ -87,7 +87,7 @@ class OfflineNetState extends State ...@@ -87,7 +87,7 @@ class OfflineNetState extends State
*/ */
public function toShedState() public function toShedState()
{ {
if ($this->remainChargerTime > 0) { if ( $this->remainChargerTime > 0 ) {
$this->publishPortShed($this->order); $this->publishPortShed($this->order);
} }
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* Time: 下午6:45 * Time: 下午6:45
*/ */
namespace Lib\cdz_order\state; namespace Lib\cdz\card_order\state;
use Lib\cdz\order\Order; use Lib\cdz\order\Order;
...@@ -21,7 +21,7 @@ class OfflinePowerState extends State ...@@ -21,7 +21,7 @@ class OfflinePowerState extends State
public function __construct(Order $order) public function __construct(Order $order)
{ {
parent::__construct($order); parent::__construct($order);
if ($this->order->getIsRefund() === 1) { if ( $this->order->getIsRefund() === 1 ) {
//已经退款 下发结束充电命令 //已经退款 下发结束充电命令
//$this->order->stop($this->order,$_SESSION['client_id'],43); //$this->order->stop($this->order,$_SESSION['client_id'],43);
$this->remainChargerTime = 0; $this->remainChargerTime = 0;
...@@ -31,7 +31,7 @@ class OfflinePowerState extends State ...@@ -31,7 +31,7 @@ class OfflinePowerState extends State
$offlineTime = $this->order->getOfflineTime(); $offlineTime = $this->order->getOfflineTime();
$startTime = $this->order->getStartTime(); $startTime = $this->order->getStartTime();
if ($startTime === '' || $this->order->getOfflineTime() == '0') { if ( $startTime === '' || $this->order->getOfflineTime() == '0' ) {
$this->remainChargerTime = (int)($this->order->getPurchaseTime()); $this->remainChargerTime = (int)($this->order->getPurchaseTime());
} else { } else {
...@@ -56,7 +56,7 @@ class OfflinePowerState extends State ...@@ -56,7 +56,7 @@ class OfflinePowerState extends State
public function toChargerState() public function toChargerState()
{ {
if ($this->order->getIsRefund() === 1) { if ( $this->order->getIsRefund() === 1 ) {
//已经退款 下发结束充电命令 //已经退款 下发结束充电命令
//$this->order->stop($this->order,$_SESSION['client_id'],43); //$this->order->stop($this->order,$_SESSION['client_id'],43);
$this->remainChargerTime = 0; $this->remainChargerTime = 0;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* Time: 上午11:22 * Time: 上午11:22
*/ */
namespace Lib\cdz_order\state; namespace Lib\cdz\card_order\state;
use Lib\cdz\order\Order; use Lib\cdz\order\Order;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* Time: 上午11:22 * Time: 上午11:22
*/ */
namespace Lib\cdz_order\state; namespace Lib\cdz\card_order\state;
use Lib\cdz\order\Order; use Lib\cdz\order\Order;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* Time: 上午11:21 * Time: 上午11:21
*/ */
namespace Lib\cdz_order\state; namespace Lib\cdz\card_order\state;
use Application\model\OrderExceptionModel; use Application\model\OrderExceptionModel;
...@@ -64,7 +64,7 @@ class ShedState extends State ...@@ -64,7 +64,7 @@ class ShedState extends State
$finishByUserMessage->setOrderAmount($this->order->getPayAmount()); $finishByUserMessage->setOrderAmount($this->order->getPayAmount());
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($finishByUserMessage) == false) { if ( $sendMessage->request($finishByUserMessage) == false ) {
Log::error('send finish by user message fail'); Log::error('send finish by user message fail');
} }
...@@ -115,7 +115,7 @@ class ShedState extends State ...@@ -115,7 +115,7 @@ class ShedState extends State
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($chargerReloadMessage) === false) { if ( $sendMessage->request($chargerReloadMessage) === false ) {
Log::error('send order reload message fail'); Log::error('send order reload message fail');
} }
...@@ -198,7 +198,7 @@ class ShedState extends State ...@@ -198,7 +198,7 @@ class ShedState extends State
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($shedTimeoutMessage) === false) { if ( $sendMessage->request($shedTimeoutMessage) === false ) {
Log::error('send shed timeout message fail'); Log::error('send shed timeout message fail');
} }
...@@ -257,7 +257,7 @@ class ShedState extends State ...@@ -257,7 +257,7 @@ class ShedState extends State
$chargerTimeoutMessage->setStationName($this->order->getStationName()); $chargerTimeoutMessage->setStationName($this->order->getStationName());
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($chargerTimeoutMessage) === false) { if ( $sendMessage->request($chargerTimeoutMessage) === false ) {
Log::error('shed state order send charger timeout message fail'); Log::error('shed state order send charger timeout message fail');
} }
...@@ -270,5 +270,10 @@ class ShedState extends State ...@@ -270,5 +270,10 @@ class ShedState extends State
// TODO: Implement stopFail() method. // TODO: Implement stopFail() method.
} }
public function toRefundFinish()
{
}
} }
\ No newline at end of file
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* Time: 上午11:23 * Time: 上午11:23
*/ */
namespace Lib\cdz_order\state; namespace Lib\cdz\card_order\state;
use Lib\cdz\order\Order; use Lib\cdz\order\Order;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* Time: 上午11:21 * Time: 上午11:21
*/ */
namespace Lib\cdz_order\state; namespace Lib\cdz\card_order\state;
use Lib\cdz\order\Order; use Lib\cdz\order\Order;
...@@ -82,5 +82,4 @@ abstract class State ...@@ -82,5 +82,4 @@ abstract class State
} }
} }
\ No newline at end of file
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* Time: 上午11:23 * Time: 上午11:23
*/ */
namespace Lib\cdz_order\state; namespace Lib\cdz\card_order\state;
use Lib\cdz\order\Order; use Lib\cdz\order\Order;
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
* Time: 上午11:21 * Time: 上午11:21
*/ */
namespace Lib\cdz_order\state; namespace Lib\cdz\card_order\state;
use Application\model\OrderExceptionModel; use Application\model\OrderExceptionModel;
...@@ -14,13 +14,8 @@ use Application\model\OrderModel; ...@@ -14,13 +14,8 @@ use Application\model\OrderModel;
use Lib\cdz\order\Order; use Lib\cdz\order\Order;
use Lib\cdz\order\save\OrderSaveRedis; use Lib\cdz\order\save\OrderSaveRedis;
use Lib\log\Log; use Lib\log\Log;
use Lib\remote\api\message\FailMessage;
use Lib\remote\api\message\SendMessage;
use Lib\remote\api\message\StartMessage;
use Lib\StateCode; use Lib\StateCode;
use Lib\station\gateway\port\Port; use Lib\station\gateway\port\Port;
use Src\command\SendCommand;
use Src\command\StopChargerCommand;
class WaitingState extends State class WaitingState extends State
{ {
......
...@@ -20,6 +20,9 @@ class Order ...@@ -20,6 +20,9 @@ class Order
private $isChangeState = false; private $isChangeState = false;
private $gatewayType = 0;
/** /**
* @var int * @var int
*/ */
...@@ -68,7 +71,7 @@ class Order ...@@ -68,7 +71,7 @@ class Order
* 订单状态 * 订单状态
* @var int * @var int
*/ */
private $stateCode; private $stateCode = -2;
/** /**
* @var int * @var int
...@@ -184,12 +187,12 @@ class Order ...@@ -184,12 +187,12 @@ class Order
{ {
if (isset($this->orderCache) == false || (is_array($this->orderCache) && count($this->orderCache) === 0)) { if ( isset($this->orderCache) == false || (is_array($this->orderCache) && count($this->orderCache) === 0) ) {
$keyName = $this->getCacheKeyName(); $keyName = $this->getCacheKeyName();
if ($redis->exists($keyName) == false) { if ( $redis->exists($keyName) == false ) {
return false; return false;
...@@ -197,7 +200,7 @@ class Order ...@@ -197,7 +200,7 @@ class Order
$this->orderCache = $redis->hGetAll($keyName); $this->orderCache = $redis->hGetAll($keyName);
if (count($this->orderCache) < 5) { if ( count($this->orderCache) < 5 ) {
return false; return false;
} }
...@@ -231,7 +234,7 @@ class Order ...@@ -231,7 +234,7 @@ class Order
{ {
$keyName = $this->getCacheKeyName(); $keyName = $this->getCacheKeyName();
if ($redis->exists($keyName) == false) { if ( $redis->exists($keyName) == false ) {
return false; return false;
...@@ -668,5 +671,21 @@ class Order ...@@ -668,5 +671,21 @@ class Order
$this->isChangeState = $isChangeState; $this->isChangeState = $isChangeState;
} }
/**
* @return int
*/
public function getGatewayType(): int
{
return $this->gatewayType;
}
/**
* @param int $gatewayType
*/
public function setGatewayType(int $gatewayType): void
{
$this->gatewayType = $gatewayType;
}
} }
\ No newline at end of file
...@@ -40,7 +40,7 @@ class OrderSaveRedis ...@@ -40,7 +40,7 @@ class OrderSaveRedis
$update = []; $update = [];
foreach ($keys as $key) { foreach ($keys as $key) {
if ($this->order->$key !== "") { if ( $this->order->$key !== "" ) {
$update[$key] = $this->order->$key; $update[$key] = $this->order->$key;
} }
} }
...@@ -64,9 +64,13 @@ class OrderSaveRedis ...@@ -64,9 +64,13 @@ class OrderSaveRedis
$reflection = new \ReflectionClass($this->order); $reflection = new \ReflectionClass($this->order);
$properties = $reflection->getDefaultProperties(); $properties = $reflection->getDefaultProperties();
$properties = array_keys($properties);
foreach ($properties as $property) { foreach ($properties as $property) {
if (isset($this->order->$property) && $this->order->$property != '') { if ( $this->order->$property !== '' ) {
Log::debug('value' . $this->order->$property);
$update[$property] = $this->order->$property; $update[$property] = $this->order->$property;
} }
} }
...@@ -77,6 +81,8 @@ class OrderSaveRedis ...@@ -77,6 +81,8 @@ class OrderSaveRedis
} }
Log::debug('save all', $update);
$this->redis->hMset($this->order->getCacheKeyName(), $update); $this->redis->hMset($this->order->getCacheKeyName(), $update);
$this->redis->expire($this->order->getCacheKeyName(), 60 * 60 * 24); $this->redis->expire($this->order->getCacheKeyName(), 60 * 60 * 24);
......
...@@ -76,7 +76,7 @@ class ChargerState extends State ...@@ -76,7 +76,7 @@ class ChargerState extends State
$finishByUserMessage->setOrderAmount($this->order->getPayAmount()); $finishByUserMessage->setOrderAmount($this->order->getPayAmount());
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($finishByUserMessage) == false) { if ( $sendMessage->request($finishByUserMessage) == false ) {
Log::error('send finish by user message fail'); Log::error('send finish by user message fail');
} }
...@@ -162,7 +162,7 @@ class ChargerState extends State ...@@ -162,7 +162,7 @@ class ChargerState extends State
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($powerExceedMessage) === false) { if ( $sendMessage->request($powerExceedMessage) === false ) {
Log::error('send power exceed message fail'); Log::error('send power exceed message fail');
//todo tcp异常上报 //todo tcp异常上报
} }
...@@ -214,11 +214,16 @@ class ChargerState extends State ...@@ -214,11 +214,16 @@ class ChargerState extends State
$chargerFullMessage = new ChargerFullMessage(); $chargerFullMessage = new ChargerFullMessage();
$chargerFullMessage->setEndTime($this->nowDate); $chargerFullMessage->setEndTime($this->nowDate);
$chargerFullMessage->setStartTime(date('Y-m-d H:i:s', $this->order->getStartTime())); $chargerFullMessage->setStartTime(date('Y-m-d H:i:s', $this->order->getStartTime()));
$chargerFullMessage->setChargerTime(abs(ceil(($this->order->getStartTime() - $this->order->getFinishTime()) / 60)));
$chargerFullMessage->setPurchaseTime($this->order->getPurchaseTime()); $chargerFullMessage->setPurchaseTime($this->order->getPurchaseTime());
$chargerFullMessage->setUserId($this->order->getUserId()); $chargerFullMessage->setUserId($this->order->getUserId());
$chargerFullMessage->setEndTime($this->nowDate);
$chargerFullMessage->setAddress($this->order->getStationName() . '--' . $this->order->getPortName());
$chargerFullMessage->setAmount($this->order->getPayAmount());
$chargerFullMessage->setRemark($chargerFullMessage->getRemark() . '(' . $this->order->getOutTradeNo() . ')'); $chargerFullMessage->setRemark($chargerFullMessage->getRemark() . '(' . $this->order->getOutTradeNo() . ')');
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($chargerFullMessage) === false) { if ( $sendMessage->request($chargerFullMessage) === false ) {
Log::error('send charger full message fail'); Log::error('send charger full message fail');
} }
$port = new Port(); $port = new Port();
...@@ -300,7 +305,7 @@ class ChargerState extends State ...@@ -300,7 +305,7 @@ class ChargerState extends State
$chargerShedMessage->setDate($this->nowDate); $chargerShedMessage->setDate($this->nowDate);
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($chargerShedMessage) == false) { if ( $sendMessage->request($chargerShedMessage) == false ) {
Log::error('send port shed message fail'); Log::error('send port shed message fail');
} }
...@@ -318,6 +323,7 @@ class ChargerState extends State ...@@ -318,6 +323,7 @@ class ChargerState extends State
'check_times' => 1, 'check_times' => 1,
'gateway_id' => $this->order->getGatewayId(), 'gateway_id' => $this->order->getGatewayId(),
'station_id' => $_SESSION['station_id'], 'station_id' => $_SESSION['station_id'],
'gateway_type' => $_SESSION['gateway_type'],
]); ]);
} catch (\Exception $exception) { } catch (\Exception $exception) {
...@@ -376,7 +382,7 @@ class ChargerState extends State ...@@ -376,7 +382,7 @@ class ChargerState extends State
$chargerTimeoutMessage->setChargerTime(ceil($chargerTime)); $chargerTimeoutMessage->setChargerTime(ceil($chargerTime));
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($chargerTimeoutMessage) == false) { if ( $sendMessage->request($chargerTimeoutMessage) == false ) {
Log::error('send charger timeout message fail'); Log::error('send charger timeout message fail');
} }
......
...@@ -65,7 +65,7 @@ class ShedState extends State ...@@ -65,7 +65,7 @@ class ShedState extends State
$finishByUserMessage->setOrderAmount($this->order->getPayAmount()); $finishByUserMessage->setOrderAmount($this->order->getPayAmount());
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($finishByUserMessage) == false) { if ( $sendMessage->request($finishByUserMessage) == false ) {
Log::error('send finish by user message fail'); Log::error('send finish by user message fail');
} }
...@@ -116,7 +116,7 @@ class ShedState extends State ...@@ -116,7 +116,7 @@ class ShedState extends State
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($chargerReloadMessage) === false) { if ( $sendMessage->request($chargerReloadMessage) === false ) {
Log::error('send order reload message fail'); Log::error('send order reload message fail');
} }
...@@ -186,7 +186,6 @@ class ShedState extends State ...@@ -186,7 +186,6 @@ class ShedState extends State
], 'id = ' . $this->order->getId()); ], 'id = ' . $this->order->getId());
$port = new Port($this->order->getPortId()); $port = new Port($this->order->getPortId());
$port->setState(StateCode::PORT_ONLINE); $port->setState(StateCode::PORT_ONLINE);
$port->setStationId($this->order->getStationId()); $port->setStationId($this->order->getStationId());
...@@ -201,7 +200,7 @@ class ShedState extends State ...@@ -201,7 +200,7 @@ class ShedState extends State
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($shedTimeoutMessage) === false) { if ( $sendMessage->request($shedTimeoutMessage) === false ) {
Log::error('send shed timeout message fail'); Log::error('send shed timeout message fail');
} }
...@@ -260,7 +259,7 @@ class ShedState extends State ...@@ -260,7 +259,7 @@ class ShedState extends State
$chargerTimeoutMessage->setStationName($this->order->getStationName()); $chargerTimeoutMessage->setStationName($this->order->getStationName());
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($chargerTimeoutMessage) === false) { if ( $sendMessage->request($chargerTimeoutMessage) === false ) {
Log::error('shed state order send charger timeout message fail'); Log::error('shed state order send charger timeout message fail');
} }
...@@ -268,6 +267,11 @@ class ShedState extends State ...@@ -268,6 +267,11 @@ class ShedState extends State
} }
public function toRefundFinish()
{
}
public function stopFail() public function stopFail()
{ {
// TODO: Implement stopFail() method. // TODO: Implement stopFail() method.
......
...@@ -11,6 +11,7 @@ namespace Lib\cdz\order\state; ...@@ -11,6 +11,7 @@ namespace Lib\cdz\order\state;
use Application\model\OrderExceptionModel; use Application\model\OrderExceptionModel;
use Application\model\OrderModel; use Application\model\OrderModel;
use Application\model\UserModel;
use Lib\cdz\order\Order; use Lib\cdz\order\Order;
use Lib\cdz\order\save\OrderSaveRedis; use Lib\cdz\order\save\OrderSaveRedis;
use Lib\Gateway; use Lib\Gateway;
...@@ -88,7 +89,7 @@ class WaitingState extends State ...@@ -88,7 +89,7 @@ class WaitingState extends State
//订单已经退款则直接结束 //订单已经退款则直接结束
if ($this->order->getIsRefund() == 1) { if ( $this->order->getIsRefund() == 1 ) {
// 下发结束充电命令 // 下发结束充电命令
$orderId = $this->order->getId(); $orderId = $this->order->getId();
$portLogic = $this->order->getPortLogicId(); $portLogic = $this->order->getPortLogicId();
...@@ -108,7 +109,7 @@ class WaitingState extends State ...@@ -108,7 +109,7 @@ class WaitingState extends State
$this->order->setStateCode(12); $this->order->setStateCode(12);
\Events::pipe(); \Events::pipe();
$orderSaveRedis = new OrderSaveRedis($this->order); $orderSaveRedis = new OrderSaveRedis($this->order);
if ($this->order->isChangeState() === false) { if ( $this->order->isChangeState() === false ) {
$orderSaveRedis->save(['stateCode', 'startTime', 'startCapacity']); $orderSaveRedis->save(['stateCode', 'startTime', 'startCapacity']);
} else { } else {
$orderSaveRedis->save(['stateCode', 'startTime']); $orderSaveRedis->save(['stateCode', 'startTime']);
...@@ -132,18 +133,29 @@ class WaitingState extends State ...@@ -132,18 +133,29 @@ class WaitingState extends State
$startMessage->setOrderId($this->order->getOutTradeNo()); $startMessage->setOrderId($this->order->getOutTradeNo());
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($startMessage) === false) { if ( $sendMessage->request($startMessage) === false ) {
Log::error('推送开始充电失败'); Log::error('推送开始充电失败');
} }
if ( $this->order->getCardId() != '' ) {
$userId = $this->order->getUserId();
$price = $this->order->getPayAmount();
$db = \Events::getDb();
$db->query("UPDATE `wx_users` SET `wallet_balance` = `wallet_balance` - $price WHERE id = $userId");
}
$update = [ $update = [
'is_charger' => StateCode::PORT_CHARGER, 'is_charger' => StateCode::PORT_CHARGER,
'start_time' => date('Y-m-d H:i:s', $this->order->getStartTime()), 'start_time' => date('Y-m-d H:i:s', $this->order->getStartTime()),
]; ];
//更新订单状态 //更新订单状态
$startCapacity = $this->order->getStartCapacity(); $startCapacity = $this->order->getStartCapacity();
if ($startCapacity !== -2 && $startCapacity >= 0) { if ( $startCapacity !== -2 && $startCapacity >= 0 ) {
$update['start_capacity'] = (int)$this->order->getStartCapacity(); $update['start_capacity'] = (int)$this->order->getStartCapacity();
} }
$orderModel = new OrderModel(); $orderModel = new OrderModel();
...@@ -196,7 +208,7 @@ class WaitingState extends State ...@@ -196,7 +208,7 @@ class WaitingState extends State
$failMessage->setOrderId($this->order->getOutTradeNo()); $failMessage->setOrderId($this->order->getOutTradeNo());
$failMessage->setUserId($this->order->getUserId()); $failMessage->setUserId($this->order->getUserId());
$sendMessage = new SendMessage(); $sendMessage = new SendMessage();
if ($sendMessage->request($failMessage) === false) { if ( $sendMessage->request($failMessage) === false ) {
Log::error('充电失败,推送消息失败', $this->order->getOrderCache(\Events::getRedis())); Log::error('充电失败,推送消息失败', $this->order->getOrderCache(\Events::getRedis()));
} }
...@@ -236,7 +248,7 @@ class WaitingState extends State ...@@ -236,7 +248,7 @@ class WaitingState extends State
Log::debug('waiting to shed ->start_capacity' . $this->order->getStartCapacity()); Log::debug('waiting to shed ->start_capacity' . $this->order->getStartCapacity());
if ($this->order->getStartCapacity() >= 0) { if ( $this->order->getStartCapacity() >= 0 ) {
$orderModel->update([ $orderModel->update([
'start_capacity' => (int)$this->order->getStartCapacity(), 'start_capacity' => (int)$this->order->getStartCapacity(),
], 'id = ' . $this->order->getId()); ], 'id = ' . $this->order->getId());
......
<?php
/**
* Created by PhpStorm.
* User: banice
* Date: 2019/1/26
* Time: 下午4:13
*/
namespace Lib\order_check;
use Lib\cdz\order\Order;
class DelayOrder
{
const DELAY_KEY = 'cdz:delay:check_charger_start:zset';
/**
* @var Order
*/
private $order;
private $redis;
public function __construct()
{
$this->redis = \Events::getRedis();
}
public function deleteDelayOrder(int $orderId)
{
$this->redis->zDelete(self::DELAY_KEY, $orderId);
}
public function getDelayOrder()
{
return $this->redis->zRangeByScore(self::DELAY_KEY, 0, time());
}
public function setDelay()
{
$this->redis->zAdd(self::DELAY_KEY, time() + 3 * 60, $this->order->getId());
}
/**
* @return Order
*/
public function getOrder(): Order
{
return $this->order;
}
/**
* @param Order $order
*/
public function setOrder(Order $order): void
{
$this->order = $order;
}
}
\ No newline at end of file
...@@ -21,6 +21,12 @@ class ChargerFullMessage extends Message ...@@ -21,6 +21,12 @@ class ChargerFullMessage extends Message
private $purchaseTime; private $purchaseTime;
private $address = '';
private $amount = 0;
private $chargerTime = 0;
private $remark = '温馨提示:您的爱车已停止充电,如有疑问您可以在公众号后台留言或直接拨打客服热线进行咨询。 private $remark = '温馨提示:您的爱车已停止充电,如有疑问您可以在公众号后台留言或直接拨打客服热线进行咨询。
感谢您的使用'; 感谢您的使用';
...@@ -41,16 +47,20 @@ class ChargerFullMessage extends Message ...@@ -41,16 +47,20 @@ class ChargerFullMessage extends Message
], ],
'keyword1' => [ 'keyword1' => [
'value' => $this->startTime, 'value' => $this->endTime,
'color' => '#333', 'color' => '#333',
], ],
'keyword2' => [ 'keyword2' => [
'value' => $this->purchaseTime, 'value' => $this->address,
'color' => '#333', 'color' => '#333',
], ],
'keyword3' => [ 'keyword3' => [
'value' => $this->endTime, 'value' => $this->chargerTime,
'color' => '#333',
],
'keyword4' => [
'value' => $this->amount,
'color' => '#333', 'color' => '#333',
], ],
'remark' => [ 'remark' => [
...@@ -150,5 +160,53 @@ class ChargerFullMessage extends Message ...@@ -150,5 +160,53 @@ class ChargerFullMessage extends Message
$this->remark = $remark; $this->remark = $remark;
} }
/**
* @return string
*/
public function getAddress(): string
{
return $this->address;
}
/**
* @param string $address
*/
public function setAddress(string $address): void
{
$this->address = $address;
}
/**
* @return int
*/
public function getAmount(): int
{
return $this->amount;
}
/**
* @param int $amount
*/
public function setAmount(int $amount): void
{
$this->amount = $amount;
}
/**
* @return int
*/
public function getChargerTime(): int
{
return $this->chargerTime;
}
/**
* @param int $chargerTime
*/
public function setChargerTime(int $chargerTime): void
{
$this->chargerTime = $chargerTime;
}
} }
\ No newline at end of file
...@@ -75,11 +75,11 @@ class Port ...@@ -75,11 +75,11 @@ class Port
public function isPortBan() public function isPortBan()
{ {
if (isset($_SESSION['port_id_status'])) { if ( isset($_SESSION['port_id_status']) ) {
$portIdStatus = $_SESSION['port_id_status']; $portIdStatus = $_SESSION['port_id_status'];
if (isset($portIdStatus[$this->portId])) { if ( isset($portIdStatus[$this->portId]) ) {
if ($portIdStatus[$this->portId] === 8) { if ( $portIdStatus[$this->portId] === 8 ) {
return true; return true;
} }
} }
...@@ -99,8 +99,8 @@ class Port ...@@ -99,8 +99,8 @@ class Port
$redis->zAdd(self::PORT_STATE, $this->state, $this->portId); $redis->zAdd(self::PORT_STATE, $this->state, $this->portId);
if ($this->stationId === 0 || $this->gatewayId === 0) { if ( $this->stationId === 0 || $this->gatewayId === 0 ) {
if (isset($_SESSION['gateway_id']) && isset($_SESSION['station_id'])) { if ( isset($_SESSION['gateway_id']) && isset($_SESSION['station_id']) ) {
$this->stationId = $_SESSION['station_id']; $this->stationId = $_SESSION['station_id'];
$this->gatewayId = $_SESSION['gateway_id']; $this->gatewayId = $_SESSION['gateway_id'];
} else { } else {
...@@ -118,12 +118,23 @@ class Port ...@@ -118,12 +118,23 @@ class Port
'updated_at' => date('Y-m-d H:i:s') 'updated_at' => date('Y-m-d H:i:s')
], 'id = ' . $this->portId); ], 'id = ' . $this->portId);
if ($orderId !== 0) { if ( $orderId !== 0 ) {
$redis->zAdd('cdz:order:state:zset', $this->state, $orderId); $redis->zAdd('cdz:order:state:zset', $this->state, $orderId);
} }
} }
public function setPortUsingOrderId($userId, $orderId)
{
$redis = \Events::getRedis();
$redis->hSet(self::USING_ORDER_ID, $this->portId, $orderId);
$redis->zAdd(self::USING_USER_ID, $userId, $this->portId);
}
/** /**
* @return string * @return string
*/ */
...@@ -149,7 +160,7 @@ class Port ...@@ -149,7 +160,7 @@ class Port
$this->updatePortState($orderId); $this->updatePortState($orderId);
if ($orderId != 0) { if ( $orderId != 0 ) {
$redis->zRem('cdz:order:state:zset', $orderId); $redis->zRem('cdz:order:state:zset', $orderId);
$redis->del('cdz:order:state:' . $orderId); $redis->del('cdz:order:state:' . $orderId);
} }
......
...@@ -19,7 +19,7 @@ class BroadcastToAgent ...@@ -19,7 +19,7 @@ class BroadcastToAgent
public function __construct() public function __construct()
{ {
if (isset($_SESSION['agent_id'])) { if ( isset($_SESSION['agent_id']) ) {
$this->agentId = $_SESSION['agent_id']; $this->agentId = $_SESSION['agent_id'];
} }
...@@ -27,6 +27,7 @@ class BroadcastToAgent ...@@ -27,6 +27,7 @@ class BroadcastToAgent
public function broadcast(array $data) public function broadcast(array $data)
{ {
Log::debug('agent_id' . $this->agentId); Log::debug('agent_id' . $this->agentId);
$redis = \Events::getRedis(); $redis = \Events::getRedis();
$superAgentIds = $redis->hGetAll('cdz:super_agent_id:hash'); $superAgentIds = $redis->hGetAll('cdz:super_agent_id:hash');
...@@ -34,11 +35,12 @@ class BroadcastToAgent ...@@ -34,11 +35,12 @@ class BroadcastToAgent
Gateway::sendToUid($id, json_encode($data)); Gateway::sendToUid($id, json_encode($data));
} }
if ($this->agentId !== '') { if ( $this->agentId !== '' ) {
Gateway::sendToUid($this->agentId, json_encode($data)); Gateway::sendToUid($this->agentId, json_encode($data));
return true; return true;
} else { }
else {
Log::error('agent_id can not find'); Log::error('agent_id can not find');
return false; return false;
} }
......
...@@ -22,12 +22,11 @@ class StopChargerCommand implements Command ...@@ -22,12 +22,11 @@ class StopChargerCommand implements Command
public function getMessage(): string public function getMessage(): string
{ {
$this->type = sprintf('%02x', $this->type);
$this->portLogic = sprintf('%02x', $this->portLogic); $this->portLogic = sprintf('%02x', $this->portLogic);
$this->outTradeNo = sprintf('%12x', $this->outTradeNo); $this->outTradeNo = sprintf('%012x', $this->outTradeNo);
$this->finishType = sprintf('%02x', $this->finishType); $this->finishType = sprintf('%02x', $this->finishType);
return $this->type . $this->portLogic . $this->outTradeNo . $this->finishType; return $this->portLogic . $this->outTradeNo . $this->finishType;
} }
...@@ -96,5 +95,4 @@ class StopChargerCommand implements Command ...@@ -96,5 +95,4 @@ class StopChargerCommand implements Command
} }
} }
\ No newline at end of file
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