@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.
@@ -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
- constructor(db: Db, config: Config, win: BrowserWindow);
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 'downloading';
16
+ return '待下载';
17
17
  case 1:
18
- return 'uploading';
18
+ return '待上传';
19
19
  case 2:
20
- return 'effecting';
20
+ return '待生效';
21
21
  case 3:
22
- return 'finish';
22
+ return '已完成';
23
23
  default:
24
- return 'unknow';
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
- constructor(db, config, win) {
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;
@@ -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
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nger/fk-upload",
3
- "version": "1.0.182",
3
+ "version": "1.0.186",
4
4
  "description": "nger fk upload",
5
5
  "main": "dist/electon.js",
6
6
  "types": "dist/core.d.ts",