文档服务地址:http://47.92.0.57:3000/ 周报索引地址:http://47.92.0.57:3000/s/NruNXRYmV

Commit a437ef77 by convivae

Merge remote-tracking branch 'origin/develop' into develop

parents e05eb933 94c12c06
...@@ -445,6 +445,13 @@ ...@@ -445,6 +445,13 @@
}, },
mounted(){ mounted(){
setTimeout(()=>{ setTimeout(()=>{
if(this.$store.state.userInfo.userId == "undefined"){
this.$message({
type:"warning",
message:"您未登录,请前往登录界面进行操作"
})
this.$router.push({path: '/'});
}
this.ins = this.$route.params.ins; this.ins = this.$route.params.ins;
// console.log("1111212"); // console.log("1111212");
// console.log(this.$store.state.userInfo.userId) // console.log(this.$store.state.userInfo.userId)
......
...@@ -5,6 +5,10 @@ from dao import Slice, Task, User ...@@ -5,6 +5,10 @@ from dao import Slice, Task, User
class Result: class Result:
code: int
message: []
data: {}
def __init__(self, code, message, data): def __init__(self, code, message, data):
self.code = code self.code = code
self.message = message self.message = message
...@@ -40,10 +44,11 @@ def create_relation(slice_id, user_id, data_id): ...@@ -40,10 +44,11 @@ def create_relation(slice_id, user_id, data_id):
# 设置标注关系的打分数值 # 设置标注关系的打分数值
def set_grade(user_id, data_id, score): def set_grade(user_id, slice_id, score):
try: try:
relation = Relation.get(Relation.user_id == user_id, Relation.data_id == data_id) relation = Relation.get(Relation.user_id == user_id, Relation.slice_id == slice_id)
relation.score = score relation.score = score
relation.flag2 = True
relation.save() relation.save()
except: except:
return Result(0, "grade failed", {}) return Result(0, "grade failed", {})
...@@ -120,6 +125,7 @@ def get_completed_num(sliceId): ...@@ -120,6 +125,7 @@ def get_completed_num(sliceId):
else: else:
return num return num
# 获取某用户,某分片的标注进度 # 获取某用户,某分片的标注进度
def get_flag_count(userId, sliceId): def get_flag_count(userId, sliceId):
try: try:
...@@ -193,8 +199,7 @@ def get_relation_id(uid, did): ...@@ -193,8 +199,7 @@ def get_relation_id(uid, did):
if __name__ == '__main__': if __name__ == '__main__':
# Relation.drop_table() Relation.drop_table()
# Relation.create_table() Relation.create_table()
print(get_executors(4).data)
# print(get_state(1, 5)) # print(get_state(1, 5))
# create_relation(3, 1, 2) # create_relation(3, 1, 2)
...@@ -151,15 +151,16 @@ def find_task_completed(executor, start, num): ...@@ -151,15 +151,16 @@ def find_task_completed(executor, start, num):
list = [] list = []
while index+start < len(find) and index < num: while index+start < len(find) and index < num:
user = User.get_username(find[index + start].publish_id) user = User.get_username(find[index + start].publish_id)
list.append( if judge_completed(find[index + start].task_id, executor) == 1:
{ list.append(
'id': find[index+start].task_id, {
'creator': user, 'id': find[index+start].task_id,
'creator_id': find[index + start].publish_id, 'creator': user,
'name': find[index+start].task_name, 'creator_id': find[index + start].publish_id,
'date': find[index+start].publish_time.strftime("%Y-%m-%d %H:%M:%S") 'name': find[index+start].task_name,
} 'date': find[index+start].publish_time.strftime("%Y-%m-%d %H:%M:%S")
) }
)
index += 1 index += 1
except: except:
return Result(0, "find failed", {}, 0) return Result(0, "find failed", {}, 0)
...@@ -167,6 +168,12 @@ def find_task_completed(executor, start, num): ...@@ -167,6 +168,12 @@ def find_task_completed(executor, start, num):
return Result(1, "find success", list, math.ceil(len(find)/num)) return Result(1, "find success", list, math.ceil(len(find)/num))
#判断任务是否已完成(查找任务下的所有分片,对每个分片都判断已完成文件的数量,然后与分片下文件总数对比,如果相等,则视为分片完成,
# 如果所有分片都完成则任务视为完成,返回1,否则返回0)
def judge_completed(taskid, user_id):
# 寻找标注者选择的任务(从Relation表中找到用户id标注的分片,再利用分片表获取任务列表) # 寻找标注者选择的任务(从Relation表中找到用户id标注的分片,再利用分片表获取任务列表)
def find_task_my_task(executor, start, num): def find_task_my_task(executor, start, num):
try: try:
...@@ -243,8 +250,9 @@ def set_state(task_id, state): ...@@ -243,8 +250,9 @@ def set_state(task_id, state):
except: except:
return False return False
else: else:
t.task_state = state if int(t.task_state) < int(state):
t.save() t.task_state = state
t.save()
return True return True
......
1.审核任务的进度变化
2.各任务界面导出功能的添加与统一
3.将前端请求地址更改,保证前后端可同时在服务器运行
4.登录界面修改
5.登录拦截(不能通过地址访问网页,必须先登录)
...@@ -17,7 +17,7 @@ def get_tasks(): ...@@ -17,7 +17,7 @@ def get_tasks():
state = request.args.get('state') state = request.args.get('state')
# get函数用于可选参数,在未接收到参数时返回空值 # get函数用于可选参数,在未接收到参数时返回空值
if keyword: if keyword:
ret = Task.find_task_by_name(keyword, pagesize * (currentpage - 1), pagesize) ret = Task.find_task_by_name(keyword, pagesize*(currentpage-1), pagesize)
elif creator: elif creator:
if state: if state:
ret = Task.find_task_check(creator, pagesize * (currentpage - 1), pagesize) ret = Task.find_task_check(creator, pagesize * (currentpage - 1), pagesize)
...@@ -29,7 +29,7 @@ def get_tasks(): ...@@ -29,7 +29,7 @@ def get_tasks():
else: else:
ret = Task.find_task_my_task(executor, pagesize * (currentpage - 1), pagesize) ret = Task.find_task_my_task(executor, pagesize * (currentpage - 1), pagesize)
else: else:
ret = Task.find_task(pagesize * (currentpage - 1), pagesize) ret = Task.find_task(pagesize*(currentpage-1), pagesize)
res = { res = {
'code': ret.code, 'code': ret.code,
'message': ret.message, 'message': ret.message,
...@@ -44,8 +44,8 @@ def get_tasks(): ...@@ -44,8 +44,8 @@ def get_tasks():
@task.route("/createTask", methods=["Post"]) @task.route("/createTask", methods=["Post"])
def create_task(): def create_task():
data = request.get_json(silent=True) data = request.get_json(silent=True)
print(data)
id = int(data['taskId']) id = int(data['taskId'])
userid=int(data['userId'])
if id >= 0: if id >= 0:
find_slice = Slice.find_slice_by_task(id) find_slice = Slice.find_slice_by_task(id)
if find_slice.code == 1: if find_slice.code == 1:
...@@ -56,10 +56,8 @@ def create_task(): ...@@ -56,10 +56,8 @@ def create_task():
Task.delete_task(id) Task.delete_task(id)
ret = Task.create_task(data['userId'], data['taskName']) ret = Task.create_task(data['userId'], data['taskName'])
tid = ret.data tid = ret.data
score=len(data['task']['domains'])+len(data['task']['pictureDomains'])+len(data['task']['layerDomains'])
if ret.code==1:
User.add_post_score(userid,score)
i = 0 i = 0
print(data)
while i < len(data['task']['domains']): while i < len(data['task']['domains']):
s = Slice.create_text_slice(tid, data['task']['domains'][i]['templateId']) s = Slice.create_text_slice(tid, data['task']['domains'][i]['templateId'])
j = 0 j = 0
...@@ -96,6 +94,7 @@ def create_task(): ...@@ -96,6 +94,7 @@ def create_task():
} }
return json.dumps(res) return json.dumps(res)
@task.route("/deleteTask", methods=["GET"]) @task.route("/deleteTask", methods=["GET"])
def delete_task(): def delete_task():
taskId = request.args['taskId'] taskId = request.args['taskId']
...@@ -214,10 +213,10 @@ def grade(): ...@@ -214,10 +213,10 @@ def grade():
else: else:
User.add_image_score(userId, score) User.add_image_score(userId, score)
ret = Relation.set_grade(userId, data_id, score) ret = Relation.set_grade(userId, slice_id, score)
res = { res = {
'code': ret.code, 'code': ret.code,
'message': ret.message, 'message': ret.message,
'data': ret.data 'data': ret.data
} }
return json.dumps(res) return json.dumps(res)
\ 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