Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
DA-Platform
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
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
文档服务地址:
http://47.92.0.57:3000/
周报索引地址:
http://47.92.0.57:3000/s/NruNXRYmV
Open sidebar
Berlin
DA-Platform
Commits
b0e172a0
Commit
b0e172a0
authored
Aug 27, 2020
by
李景熙
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
任务状态的更改
parent
d14ad0aa
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
52 additions
and
18 deletions
+52
-18
Relation.py
DAPlatform/dao/Relation.py
+12
-4
Task.py
DAPlatform/dao/Task.py
+38
-12
slice.py
DAPlatform/views/slice.py
+1
-2
task.py
DAPlatform/views/task.py
+1
-0
No files found.
DAPlatform/dao/Relation.py
View file @
b0e172a0
...
...
@@ -93,8 +93,6 @@ def set_result_id(userid, dataid, resultid):
relation
=
Relation
.
get
(
Relation
.
user_id
==
userid
,
Relation
.
data_id
==
dataid
)
relation
.
result_id
=
resultid
relation
.
complete_time
=
datetime
.
datetime
.
now
()
task_id
=
Slice
.
find_task_by_slice
(
relation
.
slice_id
)
Task
.
set_state
(
task_id
,
2
)
relation
.
save
()
except
:
return
False
...
...
@@ -107,8 +105,6 @@ def set_result_pic(relation_id):
try
:
relation
=
Relation
.
get
(
Relation
.
relation_id
==
relation_id
)
relation
.
complete_time
=
datetime
.
datetime
.
now
()
task_id
=
Slice
.
find_task_by_slice
(
relation
.
slice_id
)
Task
.
set_state
(
task_id
,
2
)
relation
.
save
()
except
:
return
False
...
...
@@ -264,6 +260,18 @@ def finish_slicelist(user_id, slicelist):
return
Result
(
1
,
"submit success"
,
{})
def
check_slice_completed
(
slice_id
):
try
:
find
=
Relation
.
get
(
Relation
.
slice_id
==
slice_id
)
except
:
return
False
else
:
if
find
.
flag
==
1
:
return
True
else
:
return
False
if
__name__
==
'__main__'
:
# Relation.drop_table()
# Relation.create_table()
...
...
DAPlatform/dao/Task.py
View file @
b0e172a0
...
...
@@ -23,7 +23,7 @@ class Task(Model):
task_name
=
CharField
(
null
=
False
,
max_length
=
20
)
task_state
=
CharField
(
null
=
False
,
default
=
0
)
# 发布状态:0代表刚发布,1代表被选
中,2代表已完成标注,3代表审核结束,任务流程结束
# 发布状态:0代表刚发布,1代表被选
择,2代表被全部选择,即不可继续选择(退出任务大厅),3代表全部提交(待审核),4代表审核结束(退出待审核),5代表任务被终止
class
Meta
:
database
=
mysql
...
...
@@ -43,8 +43,8 @@ def create_task(publish_id, task_name):
# 参数:任务关键词、任务数组的范围
def
find_task_by_name
(
task_name
,
start
,
num
):
try
:
find
=
Task
.
select
(
Task
.
task_id
,
Task
.
task_name
,
Task
.
publish_id
,
Task
.
publish_time
)
.
where
(
Task
.
task_name
.
contains
(
task_name
))
.
order_by
(
Task
.
task_id
.
desc
())
find
=
Task
.
select
(
Task
.
task_id
,
Task
.
task_name
,
Task
.
publish_id
,
Task
.
publish_time
,
Task
.
task_state
)
.
where
(
Task
.
task_name
.
contains
(
task_name
)
,
Task
.
task_state
==
0
and
1
)
.
order_by
(
Task
.
task_id
.
desc
())
index
=
0
list
=
[]
while
index
+
start
<
len
(
find
)
and
index
<
num
:
...
...
@@ -66,9 +66,11 @@ def find_task_by_name(task_name, start, num):
# 查找所有任务(用于任务大厅界面)
# 什么任务会出现在任务大厅中?未被选择完全的任务、未被发布者终止的任务
def
find_task
(
start
,
num
):
try
:
find
=
Task
.
select
(
Task
.
task_id
,
Task
.
task_name
,
Task
.
publish_id
,
Task
.
publish_time
)
.
order_by
(
Task
.
task_id
.
desc
())
find
=
Task
.
select
(
Task
.
task_id
,
Task
.
task_name
,
Task
.
publish_id
,
Task
.
publish_time
,
Task
.
task_state
)
.
where
(
Task
.
task_state
==
0
and
1
)
.
order_by
(
Task
.
task_id
.
desc
())
index
=
0
list
=
[]
while
index
+
start
<
len
(
find
)
and
index
<
num
:
...
...
@@ -93,15 +95,21 @@ def find_task(start, num):
def
find_task_by_creator
(
creator
,
start
,
num
):
try
:
find
=
Task
.
select
(
Task
.
task_id
,
Task
.
task_name
,
Task
.
publish_id
,
Task
.
publish_time
,
Task
.
task_state
)
.
where
(
Task
.
publish_id
==
creator
,
Task
.
task_state
==
0
and
1
)
.
order_by
(
Task
.
task_id
.
desc
())
Task
.
publish_id
==
creator
,
Task
.
task_state
!=
5
)
.
order_by
(
Task
.
task_id
.
desc
())
index
=
0
list
=
[]
while
index
+
start
<
len
(
find
)
and
index
<
num
:
user
=
User
.
get_username
(
find
[
index
+
start
]
.
publish_id
)
if
find
[
index
+
start
]
.
task_state
==
'0'
:
state
=
"已发布"
else
:
elif
find
[
index
+
start
]
.
task_state
==
'1'
:
state
=
"被选中"
elif
find
[
index
+
start
]
.
task_state
==
'2'
:
state
=
"被选中"
elif
find
[
index
+
start
]
.
task_state
==
'3'
:
state
=
"待审核"
else
:
state
=
"已结束"
list
.
append
(
{
'id'
:
find
[
index
+
start
]
.
task_id
,
...
...
@@ -123,7 +131,7 @@ def find_task_by_creator(creator, start, num):
def
find_task_check
(
creator
,
start
,
num
):
try
:
find
=
Task
.
select
(
Task
.
task_id
,
Task
.
task_name
,
Task
.
publish_id
,
Task
.
publish_time
)
.
where
(
Task
.
publish_id
==
creator
,
Task
.
task_state
==
2
)
.
order_by
(
Task
.
task_id
.
desc
())
Task
.
publish_id
==
creator
,
Task
.
task_state
==
3
)
.
order_by
(
Task
.
task_id
.
desc
())
index
=
0
list
=
[]
while
index
+
start
<
len
(
find
)
and
index
<
num
:
...
...
@@ -149,8 +157,8 @@ def find_task_completed(executor, start, num):
try
:
slice_list
=
Relation
.
find_slice_by_completed
(
executor
)
task_list
=
Slice
.
find_task_by_slicelist
(
slice_list
)
find
=
Task
.
select
(
Task
.
task_id
,
Task
.
task_name
,
Task
.
publish_id
,
Task
.
publish_time
)
.
where
(
Task
.
task_id
<<
task_list
)
.
order_by
(
Task
.
task_id
.
desc
())
find
=
Task
.
select
(
Task
.
task_id
,
Task
.
task_name
,
Task
.
publish_id
,
Task
.
publish_time
,
Task
.
task_state
)
.
where
(
Task
.
task_id
<<
task_list
,
Task
.
task_state
!=
5
)
.
order_by
(
Task
.
task_id
.
desc
())
index
=
0
list
=
[]
while
index
+
start
<
len
(
find
)
and
index
<
num
:
...
...
@@ -189,8 +197,8 @@ def find_task_my_task(executor, start, num):
try
:
slice_list
=
Relation
.
find_slice_by_executor
(
executor
)
task_list
=
Slice
.
find_task_by_slicelist
(
slice_list
)
find
=
Task
.
select
(
Task
.
task_id
,
Task
.
task_name
,
Task
.
publish_id
,
Task
.
publish_time
)
.
where
(
Task
.
task_id
<<
task_list
)
.
order_by
(
Task
.
task_id
.
desc
())
find
=
Task
.
select
(
Task
.
task_id
,
Task
.
task_name
,
Task
.
publish_id
,
Task
.
publish_time
,
Task
.
task_state
)
.
where
(
Task
.
task_id
<<
task_list
,
Task
.
task_state
==
1
and
2
)
.
order_by
(
Task
.
task_id
.
desc
())
index
=
0
list
=
[]
while
index
+
start
<
len
(
find
)
and
index
<
num
:
...
...
@@ -257,10 +265,28 @@ def find_task_name(task_id):
def
set_state
(
task_id
,
state
):
try
:
t
=
Task
.
get
(
Task
.
task_id
==
task_id
)
if
state
==
'selected'
:
# 判断是否任务内所有分片均被选择,若被全选,则state是2,否则是1
slice_list
=
Slice
.
find_slicelist_by_taskId
(
t
.
task_id
)
flag
=
True
for
i
in
slice_list
:
if
not
Relation
.
find_slice
(
i
.
slice_id
):
flag
=
False
if
flag
:
t
.
task_state
=
2
else
:
t
.
task_state
=
1
elif
state
==
'commit'
:
slice_list
=
Slice
.
find_slicelist_by_taskId
(
t
.
task_id
)
flag
=
True
for
i
in
slice_list
:
if
not
Relation
.
check_slice_completed
(
i
.
slice_id
):
flag
=
False
if
flag
:
t
.
task_state
=
3
except
:
return
False
else
:
t
.
task_state
=
state
t
.
save
()
return
True
...
...
DAPlatform/views/slice.py
View file @
b0e172a0
...
...
@@ -34,7 +34,6 @@ def select_pieces():
userId
=
int
(
data
[
'userId'
])
selected
=
list
(
data
[
'selected'
])
task_id
=
Slice
.
find_task_by_slice
(
selected
[
0
])
Task
.
set_state
(
task_id
,
1
)
for
sliceItem
in
selected
:
ret
=
Data
.
find_data_by_slice
(
sliceItem
)
if
ret
.
code
==
0
:
...
...
@@ -56,7 +55,7 @@ def select_pieces():
'data'
:
ret
.
data
}
return
json
.
dumps
(
res
)
Task
.
set_state
(
task_id
,
'selected'
)
res
=
{
'code'
:
1
,
'message'
:
"ok"
,
...
...
DAPlatform/views/task.py
View file @
b0e172a0
...
...
@@ -267,6 +267,7 @@ def finish_task():
for
sliceItem
in
slicelist
:
list
.
append
(
sliceItem
.
slice_id
)
ret
=
Relation
.
finish_slicelist
(
userId
,
list
)
Task
.
set_state
(
taskId
,
'commit'
)
res
=
{
'code'
:
ret
.
code
,
'message'
:
ret
.
message
,
...
...
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