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

Commit 54c5081e by 李景熙

任务大厅三标签搜索

parent c5745d82
...@@ -85,22 +85,48 @@ def find_task(start, num, keyword, creatorName, taskType): ...@@ -85,22 +85,48 @@ def find_task(start, num, keyword, creatorName, taskType):
else: else:
find = Task.select(Task.task_id, Task.task_name, Task.publish_id, Task.publish_time, Task.task_state).where( find = Task.select(Task.task_id, Task.task_name, Task.publish_id, Task.publish_time, Task.task_state).where(
Task.task_state <= 1).order_by(Task.task_id.desc()) Task.task_state <= 1).order_by(Task.task_id.desc())
# typeList记录哪种类型被要求,typeList[type]=1表示被要求
typeList = [0] * 3
for typeItem in taskType:
if typeItem == "文本":
typeList[0] = 1
elif typeItem == "图片":
typeList[1] = 1
else:
typeList[2] = 1
findLen = len(find)
# flagList记录find中哪个task下存在typeList[type]=1的分片
flagList = [0] * findLen
if taskType: if taskType:
print(taskType) i = 0
while i < findLen:
taskId = find[i].task_id
sliceList = Slice.find_slicelist_by_taskId(taskId)
for sliceItem in sliceList:
sliceType = int(sliceItem.type)
if typeList[sliceType] == 1:
flagList[i] = 1
break
i += 1
else:
flagList = [1] * findLen
# 根据taskType数组内容挑选task结果,task Type是一个数组['文本', '图片', '图层'],最多只有这三个元素 # 根据taskType数组内容挑选task结果,task Type是一个数组['文本', '图片', '图层'],最多只有这三个元素
index = 0 index = 0
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) if flagList[index] == 1:
list.append( user = User.get_username(find[index + start].publish_id)
{ 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)
......
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