1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
| import {IPage, ISearchParam, ISearchTask} from "/src-com";
| import {commitSearchTask, executeSearch} from "./executeSearch";
|
| export async function executeSearchTask(task: ISearchTask) {
| const param = {
| ...{
| rwid: task.id,
| keyword: task.word?.replace(/^\s*"|"\s*$/g, '')
| },
| ...task.params,
| } as ISearchParam;
| let page: IPage<any>, result, error = undefined;
| try {
| page = await executeSearch(param);
| } catch (e) {
| page || (page = {...param, dataList: []})
| error = page.error = e.message;
| }
| try {
| result = await commitSearchTask(page)
| } catch (e) {
| const arr = [`${error}\n${e.message}`];
| if (page.error) {
| arr.push(page.error);
| }
| error = arr.join('\n');
| page.error = error;
| }
| return {
| result,
| error,
| task,
| page: {
| dataList: [],
| ...param,
| ...page,
| },
| };
| }
|
|