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
f55a7eb9
Commit
f55a7eb9
authored
Jun 06, 2023
by
张晓彤
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
二次调度异常处理
parent
8794c315
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
32 additions
and
28 deletions
+32
-28
dispatcher.py
core/dispatcher.py
+2
-1
group.py
core/group.py
+5
-2
dispatchInfo.py
data/dispatchInfo.py
+25
-25
No files found.
core/dispatcher.py
View file @
f55a7eb9
...
...
@@ -49,7 +49,8 @@ class Dispatcher:
self
.
truck
.
truck_para_period_update
(
self
.
dump
,
self
.
excavator
)
self
.
truck
.
state_period_update
()
if
self
.
redispatch_active
:
self
.
topo
=
graph_construct
()
self
.
topo
=
Topo
()
self
.
topo
.
generate_topo_graph
()
else
:
self
.
topo
=
None
...
...
core/group.py
View file @
f55a7eb9
...
...
@@ -1002,7 +1002,7 @@ class ReDispatcher:
current_excavator_id
=
truck_info
.
get_combined_excavator
()
current_load_area_id
=
truck_info
.
get_combined_load_area
()
self
.
logger
.
info
(
current_load_area_id
)
self
.
logger
.
info
(
f
'current_load_area_id {current_load_area_id}'
)
self
.
logger
.
info
(
f
'truck_id {truck_id}'
)
self
.
logger
.
info
(
f
'current_excavator_id {current_excavator_id}'
)
...
...
@@ -1028,7 +1028,10 @@ class ReDispatcher:
best_excavator_id
=
self
.
get_best_excavator
(
current_excavator_id
,
truck_id
,
load_area_dict
)
next_excavator_id
=
best_excavator_id
if
next_excavator_id
==
current_excavator_id
:
self
.
logger
.
info
(
f
'best_excavator_id: {best_excavator_id}'
)
self
.
logger
.
info
(
f
'current_excavator_id {current_excavator_id}'
)
if
next_excavator_id
!=
current_excavator_id
:
truck_dispatch
[
truck_id
]
=
[
next_excavator_id
,
current_unload_area_id
]
self
.
logger
.
info
(
f
'二次调度结果 {truck_id}'
)
...
...
data/dispatchInfo.py
View file @
f55a7eb9
...
...
@@ -194,13 +194,13 @@ class DispatchInfo:
for
item
in
session_mysql
.
query
(
DispatchSetting
)
.
filter_by
(
isdeleted
=
0
)
.
all
():
# add group_excavators
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
#
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
():
...
...
@@ -212,27 +212,27 @@ class DispatchInfo:
# 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
#
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
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
())
#
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
logger
.
info
(
"存在的分组"
)
logger
.
info
(
cls
.
group_excavator_dict
.
keys
())
except
Exception
as
es
:
logger
.
error
(
"挖机/卸载区/矿卡与group_id映射更新异常"
)
logger
.
error
(
es
)
...
...
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