@nger/fk-upload 1.0.182 → 1.0.186
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/templates/task-manage.d.ts +4 -1
- package/dist/templates/task-manage.js +39 -8
- package/electron/pnpm-lock.yaml +0 -10
- package/package.json +1 -1
- package/pnpm-lock.yaml +83 -1172
|
@@ -3,11 +3,13 @@ import { Config } from '@nger/core';
|
|
|
3
3
|
import { Db } from '@nger/typeorm';
|
|
4
4
|
import { Context } from 'koa';
|
|
5
5
|
import { BrowserWindow } from 'electron';
|
|
6
|
+
import { W7DataSource } from '@nger/w7';
|
|
6
7
|
export declare class TaskManageController {
|
|
7
8
|
private db;
|
|
8
9
|
private config;
|
|
9
10
|
private win;
|
|
10
|
-
|
|
11
|
+
private w7;
|
|
12
|
+
constructor(db: Db, config: Config, win: BrowserWindow, w7: W7DataSource);
|
|
11
13
|
toUrl(query: any): string;
|
|
12
14
|
createPages(total: number, query: any, page: number): {
|
|
13
15
|
index: number;
|
|
@@ -17,4 +19,5 @@ export declare class TaskManageController {
|
|
|
17
19
|
taskManage(query: any): Promise<JSX.Element>;
|
|
18
20
|
downloadFile(url: string, back: string, ctx: Context): void;
|
|
19
21
|
staticTaskManage(ctx: Context): any;
|
|
22
|
+
finishTask(filename: string, callback: string, ctx: Context): Promise<void>;
|
|
20
23
|
}
|
|
@@ -13,26 +13,29 @@ const path_1 = require("path");
|
|
|
13
13
|
function getStatusTitle(status) {
|
|
14
14
|
switch (status) {
|
|
15
15
|
case 0:
|
|
16
|
-
return '
|
|
16
|
+
return '待下载';
|
|
17
17
|
case 1:
|
|
18
|
-
return '
|
|
18
|
+
return '待上传';
|
|
19
19
|
case 2:
|
|
20
|
-
return '
|
|
20
|
+
return '待生效';
|
|
21
21
|
case 3:
|
|
22
|
-
return '
|
|
22
|
+
return '已完成';
|
|
23
23
|
default:
|
|
24
|
-
return '
|
|
24
|
+
return '未知';
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
const electron_1 = require("electron");
|
|
28
|
+
const w7_1 = require("@nger/w7");
|
|
28
29
|
let TaskManageController = class TaskManageController {
|
|
29
30
|
db;
|
|
30
31
|
config;
|
|
31
32
|
win;
|
|
32
|
-
|
|
33
|
+
w7;
|
|
34
|
+
constructor(db, config, win, w7) {
|
|
33
35
|
this.db = db;
|
|
34
36
|
this.config = config;
|
|
35
37
|
this.win = win;
|
|
38
|
+
this.w7 = w7;
|
|
36
39
|
}
|
|
37
40
|
toUrl(query) {
|
|
38
41
|
return Object.keys(query).map(key => `${key}=${decodeURIComponent(query[key])}`).join('&');
|
|
@@ -99,6 +102,12 @@ let TaskManageController = class TaskManageController {
|
|
|
99
102
|
const take = psize;
|
|
100
103
|
const skip = (page - 1) * psize;
|
|
101
104
|
const tasks = await this.db.manager.find(entities_1.FkDownloadTaskEntity, { where, order: { createDate: "DESC" }, take, skip });
|
|
105
|
+
await Promise.all(tasks.map(async (task) => {
|
|
106
|
+
const topic = await this.w7.manager.findOne(w7_1.W7ChatTopicEntity, { where: { id: task.topicId } });
|
|
107
|
+
if (topic) {
|
|
108
|
+
Reflect.set(topic, 'topicName', topic.topicName);
|
|
109
|
+
}
|
|
110
|
+
}));
|
|
102
111
|
const count = await this.db.manager.count(entities_1.FkDownloadTaskEntity, { where });
|
|
103
112
|
// const downloadSize = await this.db.manager.find();
|
|
104
113
|
const totalPage = Math.ceil(count / psize);
|
|
@@ -147,6 +156,9 @@ let TaskManageController = class TaskManageController {
|
|
|
147
156
|
link: `/@nger/fk-upload/task-manage?${this.toUrl({ ...query, status: 3, page: 1 })}`,
|
|
148
157
|
key: 3
|
|
149
158
|
}];
|
|
159
|
+
const finishUrl = (filename) => `/@nger/fk-upload/finish-task?ffilename=${filename}&callback=/@nger/fk-uplaod/task-manage?${this.toUrl({
|
|
160
|
+
...query
|
|
161
|
+
})}`;
|
|
150
162
|
const logins = await this.db.manager.find(entities_1.FkLoginEntity, { where: {} });
|
|
151
163
|
const getLogin = (id) => {
|
|
152
164
|
return logins.find(it => it.fkLoginId = id);
|
|
@@ -184,6 +196,8 @@ let TaskManageController = class TaskManageController {
|
|
|
184
196
|
react_1.default.createElement("td", null),
|
|
185
197
|
react_1.default.createElement("td", null),
|
|
186
198
|
react_1.default.createElement("td", null),
|
|
199
|
+
react_1.default.createElement("td", null, "\u65F6\u95F4"),
|
|
200
|
+
react_1.default.createElement("td", null, "\u8BFE\u7A0B\u6807\u9898"),
|
|
187
201
|
react_1.default.createElement("td", null, "\u64CD\u4F5C"))),
|
|
188
202
|
react_1.default.createElement("tbody", null, tasks.map((task, key) => {
|
|
189
203
|
const login = getLogin(task.loginId);
|
|
@@ -205,11 +219,15 @@ let TaskManageController = class TaskManageController {
|
|
|
205
219
|
react_1.default.createElement("td", null, login.username),
|
|
206
220
|
react_1.default.createElement("td", null, login.pass),
|
|
207
221
|
react_1.default.createElement("td", null, login.w7Username),
|
|
222
|
+
react_1.default.createElement("td", null, `${task.createDate.getMonth() + 1}月${task.createDate.getDay()}日:${task.createDate.getMinutes()}分`),
|
|
223
|
+
react_1.default.createElement("td", null, Reflect.get(task, 'topicName')),
|
|
208
224
|
react_1.default.createElement("td", null,
|
|
209
225
|
react_1.default.createElement("input", { type: "hidden", id: task.filename + '-copy', onChange: () => { }, value: task.uploadUrl }),
|
|
210
226
|
react_1.default.createElement("a", { className: "btn", target: "_blank", href: url }, "\u4E0B\u8F7D"),
|
|
211
227
|
"\u00A0",
|
|
212
|
-
react_1.default.createElement("a", { className: "btn", target: "_blank", href: `https://wx.jidujiaowang.com/web/index.php?c=site&a=entry&topic_id=${task.topicId}&do=topic_add&m=dg_chat` }, "\u7F16\u8F91")
|
|
228
|
+
react_1.default.createElement("a", { className: "btn", target: "_blank", href: `https://wx.jidujiaowang.com/web/index.php?c=site&a=entry&topic_id=${task.topicId}&do=topic_add&m=dg_chat` }, "\u7F16\u8F91"),
|
|
229
|
+
"\u00A0",
|
|
230
|
+
react_1.default.createElement("a", { className: "btn", href: finishUrl(task.filename) }, "\u5B8C\u6210")));
|
|
213
231
|
}))),
|
|
214
232
|
react_1.default.createElement("nav", null,
|
|
215
233
|
react_1.default.createElement("ul", { className: "pagination" },
|
|
@@ -240,6 +258,10 @@ let TaskManageController = class TaskManageController {
|
|
|
240
258
|
return e.message;
|
|
241
259
|
}
|
|
242
260
|
}
|
|
261
|
+
async finishTask(filename, callback, ctx) {
|
|
262
|
+
await this.db.manager.update(entities_1.FkDownloadTaskEntity, filename, { status: 3 });
|
|
263
|
+
ctx.redirect(callback);
|
|
264
|
+
}
|
|
243
265
|
};
|
|
244
266
|
tslib_1.__decorate([
|
|
245
267
|
(0, http_1.Get)('task-manage'),
|
|
@@ -264,8 +286,17 @@ tslib_1.__decorate([
|
|
|
264
286
|
tslib_1.__metadata("design:paramtypes", [Object]),
|
|
265
287
|
tslib_1.__metadata("design:returntype", void 0)
|
|
266
288
|
], TaskManageController.prototype, "staticTaskManage", null);
|
|
289
|
+
tslib_1.__decorate([
|
|
290
|
+
(0, http_1.Get)('finish-task'),
|
|
291
|
+
tslib_1.__param(0, (0, http_1.Query)('filename')),
|
|
292
|
+
tslib_1.__param(1, (0, http_1.Query)('callback')),
|
|
293
|
+
tslib_1.__param(2, (0, core_1.Inject)(http_1.CONTEXT)),
|
|
294
|
+
tslib_1.__metadata("design:type", Function),
|
|
295
|
+
tslib_1.__metadata("design:paramtypes", [String, String, Object]),
|
|
296
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
297
|
+
], TaskManageController.prototype, "finishTask", null);
|
|
267
298
|
TaskManageController = tslib_1.__decorate([
|
|
268
299
|
(0, core_1.Controller)(`@nger/fk-upload`),
|
|
269
|
-
tslib_1.__metadata("design:paramtypes", [typeorm_1.Db, core_1.Config, electron_1.BrowserWindow])
|
|
300
|
+
tslib_1.__metadata("design:paramtypes", [typeorm_1.Db, core_1.Config, electron_1.BrowserWindow, w7_1.W7DataSource])
|
|
270
301
|
], TaskManageController);
|
|
271
302
|
exports.TaskManageController = TaskManageController;
|
package/electron/pnpm-lock.yaml
CHANGED
|
@@ -18,16 +18,6 @@ specifiers:
|
|
|
18
18
|
reflect-metadata: ^0.1.13
|
|
19
19
|
|
|
20
20
|
dependencies:
|
|
21
|
-
'@nger/core': link:../../core
|
|
22
|
-
'@nger/fk-upload': link:..
|
|
23
|
-
'@nger/http': link:../../http
|
|
24
|
-
'@nger/rabbitmq': link:../../rabbitmq
|
|
25
|
-
'@nger/redis': link:../../redis
|
|
26
|
-
'@nger/schedule': link:../../schedule
|
|
27
|
-
'@nger/typeorm': link:../../typeorm
|
|
28
|
-
'@nger/utils': link:../../utils
|
|
29
|
-
'@nger/w7': link:../../w7
|
|
30
|
-
'@nger/ws': link:../../ws
|
|
31
21
|
dotenv: 16.0.1
|
|
32
22
|
pm2: 5.2.0
|
|
33
23
|
reflect-metadata: 0.1.13
|