@nger/fk-upload 1.0.181 → 1.0.185

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,10 @@ 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
+ Reflect.set(topic, 'topicName', topic.topicName);
108
+ }));
102
109
  const count = await this.db.manager.count(entities_1.FkDownloadTaskEntity, { where });
103
110
  // const downloadSize = await this.db.manager.find();
104
111
  const totalPage = Math.ceil(count / psize);
@@ -147,6 +154,9 @@ let TaskManageController = class TaskManageController {
147
154
  link: `/@nger/fk-upload/task-manage?${this.toUrl({ ...query, status: 3, page: 1 })}`,
148
155
  key: 3
149
156
  }];
157
+ const finishUrl = (filename) => `/@nger/fk-upload/finish-task?ffilename=${filename}&callback=/@nger/fk-uplaod/task-manage?${this.toUrl({
158
+ ...query
159
+ })}`;
150
160
  const logins = await this.db.manager.find(entities_1.FkLoginEntity, { where: {} });
151
161
  const getLogin = (id) => {
152
162
  return logins.find(it => it.fkLoginId = id);
@@ -184,6 +194,8 @@ let TaskManageController = class TaskManageController {
184
194
  react_1.default.createElement("td", null),
185
195
  react_1.default.createElement("td", null),
186
196
  react_1.default.createElement("td", null),
197
+ react_1.default.createElement("td", null, "\u65F6\u95F4"),
198
+ react_1.default.createElement("td", null, "\u8BFE\u7A0B\u6807\u9898"),
187
199
  react_1.default.createElement("td", null, "\u64CD\u4F5C"))),
188
200
  react_1.default.createElement("tbody", null, tasks.map((task, key) => {
189
201
  const login = getLogin(task.loginId);
@@ -193,7 +205,7 @@ let TaskManageController = class TaskManageController {
193
205
  // https://29294142.s21d.faiusrd.com/0/ABUIABA6GAAg3tiOlAYogPvErAY.mp4?f=mAVUREPTVCTkBF%2BzQR2oy8h6lZw4.mp4&
194
206
  // let downloadurl = uploadUrl.replace('s21v.faiusr/58', 's21d.faiusrd/0')
195
207
  // downloadurl += `?f=${task.filename}&`
196
- const url = `/@nger/fk-upload/download-file?url=${task.uploadUrl}&back=/@nger/fk-upload/task-manage?${this.toUrl(query)}`;
208
+ const url = `/@nger/fk-upload/download-file?url=${task.url}&back=/@nger/fk-upload/task-manage?${this.toUrl(query)}`;
197
209
  return react_1.default.createElement("tr", { key: key },
198
210
  react_1.default.createElement("td", null, task.filename),
199
211
  react_1.default.createElement("td", null, getStatusTitle(task.status)),
@@ -205,11 +217,15 @@ let TaskManageController = class TaskManageController {
205
217
  react_1.default.createElement("td", null, login.username),
206
218
  react_1.default.createElement("td", null, login.pass),
207
219
  react_1.default.createElement("td", null, login.w7Username),
220
+ react_1.default.createElement("td", null, `${task.createDate.getMonth() + 1}月${task.createDate.getDay()}日:${task.createDate.getMinutes()}分`),
221
+ react_1.default.createElement("td", null, Reflect.get(task, 'topicName')),
208
222
  react_1.default.createElement("td", null,
209
223
  react_1.default.createElement("input", { type: "hidden", id: task.filename + '-copy', onChange: () => { }, value: task.uploadUrl }),
210
224
  react_1.default.createElement("a", { className: "btn", target: "_blank", href: url }, "\u4E0B\u8F7D"),
211
225
  "\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")));
226
+ 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"),
227
+ "\u00A0",
228
+ react_1.default.createElement("a", { className: "btn", href: finishUrl(task.filename) }, "\u5B8C\u6210")));
213
229
  }))),
214
230
  react_1.default.createElement("nav", null,
215
231
  react_1.default.createElement("ul", { className: "pagination" },
@@ -240,6 +256,10 @@ let TaskManageController = class TaskManageController {
240
256
  return e.message;
241
257
  }
242
258
  }
259
+ async finishTask(filename, callback, ctx) {
260
+ await this.db.manager.update(entities_1.FkDownloadTaskEntity, filename, { status: 3 });
261
+ ctx.redirect(callback);
262
+ }
243
263
  };
244
264
  tslib_1.__decorate([
245
265
  (0, http_1.Get)('task-manage'),
@@ -264,8 +284,17 @@ tslib_1.__decorate([
264
284
  tslib_1.__metadata("design:paramtypes", [Object]),
265
285
  tslib_1.__metadata("design:returntype", void 0)
266
286
  ], TaskManageController.prototype, "staticTaskManage", null);
287
+ tslib_1.__decorate([
288
+ (0, http_1.Get)('finish-task'),
289
+ tslib_1.__param(0, (0, http_1.Query)('filename')),
290
+ tslib_1.__param(1, (0, http_1.Query)('callback')),
291
+ tslib_1.__param(2, (0, core_1.Inject)(http_1.CONTEXT)),
292
+ tslib_1.__metadata("design:type", Function),
293
+ tslib_1.__metadata("design:paramtypes", [String, String, Object]),
294
+ tslib_1.__metadata("design:returntype", Promise)
295
+ ], TaskManageController.prototype, "finishTask", null);
267
296
  TaskManageController = tslib_1.__decorate([
268
297
  (0, core_1.Controller)(`@nger/fk-upload`),
269
- tslib_1.__metadata("design:paramtypes", [typeorm_1.Db, core_1.Config, electron_1.BrowserWindow])
298
+ tslib_1.__metadata("design:paramtypes", [typeorm_1.Db, core_1.Config, electron_1.BrowserWindow, w7_1.W7DataSource])
270
299
  ], TaskManageController);
271
300
  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.181",
3
+ "version": "1.0.185",
4
4
  "description": "nger fk upload",
5
5
  "main": "dist/electon.js",
6
6
  "types": "dist/core.d.ts",