Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
I
integrated-scheduling-v3
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
张晓彤
integrated-scheduling-v3
Commits
8794c315
Commit
8794c315
authored
Jun 02, 2023
by
张晓彤
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
解决空/重载过程中长时间无法获取派车计划问题
parent
edc1105f
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
32 additions
and
23 deletions
+32
-23
dispatcher.py
core/dispatcher.py
+3
-1
group.py
core/group.py
+0
-0
dispatchInfo.py
data/dispatchInfo.py
+26
-19
realtime_dispatch.py
realtime_dispatch.py
+1
-1
start.sh
start.sh
+2
-2
No files found.
core/dispatcher.py
View file @
8794c315
...
...
@@ -14,6 +14,7 @@ from equipment import TruckInfo, ExcavatorInfo, DumpInfo
from
core.schedule
import
PreSchedule
from
graph.graph_load
import
graph_construct
from
core.group
import
GroupDispatcher
from
graph.topo_graph
import
*
class
Dispatcher
:
...
...
@@ -31,7 +32,8 @@ class Dispatcher:
self
.
logger
=
get_logger
(
"zxt.dispatcher"
)
self
.
redispatch_active
=
active
if
self
.
redispatch_active
:
self
.
topo
=
graph_construct
()
self
.
topo
=
Topo
()
self
.
topo
.
generate_topo_graph
()
else
:
self
.
topo
=
None
self
.
submission
=
DispatchSubmission
(
dump
,
excavator
,
truck
,
self
.
topo
)
...
...
core/group.py
View file @
8794c315
This diff is collapsed.
Click to expand it.
data/dispatchInfo.py
View file @
8794c315
...
...
@@ -193,12 +193,14 @@ class DispatchInfo:
try
:
for
item
in
session_mysql
.
query
(
DispatchSetting
)
.
filter_by
(
isdeleted
=
0
)
.
all
():
# add group_excavators
if
item
.
group_id
not
in
cls
.
group_excavator_dict
.
keys
():
cls
.
group_excavator_dict
[
item
.
group_id
]
=
[
item
.
exactor_id
]
else
:
if
item
.
exactor_id
not
in
cls
.
group_excavator_dict
[
item
.
group_id
]:
cls
.
group_excavator_dict
[
item
.
group_id
]
.
append
(
item
.
exactor_id
)
cls
.
excavator_group_dict
[
item
.
exactor_id
]
=
item
.
group_id
excavator_state
=
session_mysql
.
query
(
Equipment
)
.
filter_by
(
id
=
item
.
exactor_id
)
.
first
()
if
excavator_state
is
not
None
and
excavator_state
.
disabled
==
1
:
if
item
.
group_id
not
in
cls
.
group_excavator_dict
.
keys
():
cls
.
group_excavator_dict
[
item
.
group_id
]
=
[
item
.
exactor_id
]
else
:
if
item
.
exactor_id
not
in
cls
.
group_excavator_dict
[
item
.
group_id
]:
cls
.
group_excavator_dict
[
item
.
group_id
]
.
append
(
item
.
exactor_id
)
cls
.
excavator_group_dict
[
item
.
exactor_id
]
=
item
.
group_id
# add group_unload_areas
if
item
.
group_id
not
in
cls
.
group_unload_area_dict
.
keys
():
...
...
@@ -208,21 +210,26 @@ class DispatchInfo:
cls
.
group_unload_area_dict
[
item
.
group_id
]
.
append
(
item
.
unload_area_id
)
cls
.
unload_area_group_dict
[
item
.
unload_area_id
]
=
item
.
group_id
# add group_dumps
if
item
.
group_id
not
in
cls
.
group_dump_dict
.
keys
():
cls
.
group_dump_dict
[
item
.
group_id
]
=
[
item
.
dump_id
]
else
:
if
item
.
dump_id
not
in
cls
.
group_dump_dict
[
item
.
group_id
]:
cls
.
group_dump_dict
[
item
.
group_id
]
.
append
(
item
.
dump_id
)
cls
.
dump_group_dict
[
item
.
dump_id
]
=
item
.
group_id
# add dump
dump_state
=
session_mysql
.
query
(
Equipment
)
.
filter_by
(
id
=
item
.
dump_id
)
.
first
()
if
dump_state
is
not
None
and
dump_state
.
disabled
==
1
:
# add group_dumps
if
item
.
group_id
not
in
cls
.
group_dump_dict
.
keys
():
cls
.
group_dump_dict
[
item
.
group_id
]
=
[
item
.
dump_id
]
else
:
if
item
.
dump_id
not
in
cls
.
group_dump_dict
[
item
.
group_id
]:
cls
.
group_dump_dict
[
item
.
group_id
]
.
append
(
item
.
dump_id
)
cls
.
dump_group_dict
[
item
.
dump_id
]
=
item
.
group_id
# add truck
if
item
.
group_id
not
in
cls
.
group_truck_dict
.
keys
():
cls
.
group_truck_dict
[
item
.
group_id
]
=
[
item
.
truck_id
]
else
:
if
item
.
truck_id
not
in
cls
.
group_truck_dict
[
item
.
group_id
]:
cls
.
group_truck_dict
[
item
.
group_id
]
.
append
(
item
.
truck_id
)
cls
.
truck_group_dict
[
item
.
truck_id
]
=
item
.
group_id
truck_state
=
session_mysql
.
query
(
Equipment
)
.
filter_by
(
id
=
item
.
truck_id
)
.
first
()
if
truck_state
is
not
None
and
truck_state
.
disabled
==
1
:
if
item
.
group_id
not
in
cls
.
group_truck_dict
.
keys
():
cls
.
group_truck_dict
[
item
.
group_id
]
=
[
item
.
truck_id
]
else
:
if
item
.
truck_id
not
in
cls
.
group_truck_dict
[
item
.
group_id
]:
cls
.
group_truck_dict
[
item
.
group_id
]
.
append
(
item
.
truck_id
)
cls
.
truck_group_dict
[
item
.
truck_id
]
=
item
.
group_id
print
(
"存在的分组"
)
print
(
cls
.
group_excavator_dict
.
keys
())
...
...
realtime_dispatch.py
View file @
8794c315
...
...
@@ -166,4 +166,4 @@ if __name__ == "__main__":
logger
.
info
(
" "
)
logger
.
info
(
"调度系统启动"
)
main
(
3
0
,
dispatcher
)
main
(
2
0
,
dispatcher
)
start.sh
View file @
8794c315
#!/bin/bash
ps
-ef
|grep realtime_dispatch.py|grep
-v
grep
|awk
{
'print $2'
}
kill
-9
ps
ps
-ef
|grep realtime_dispatch.py|grep
-v
grep
|awk
{
'print $2'
}
|xargs
kill
-9
python3 topo_update_server.py
nohup
python3 realtime_dispatch.py
--active
>
/dev/null 2>&1 &
nohup
flask run
--host
=
0.0.0.0
>
/dev/null 2>&1 &
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment