@nger/fk-upload 1.0.201 → 1.0.204

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.
Files changed (128) hide show
  1. package/dist/{templates → controllers}/code.d.ts +0 -0
  2. package/dist/{templates → controllers}/code.js +2 -1
  3. package/dist/controllers/relogin.d.ts +8 -0
  4. package/dist/controllers/relogin.js +42 -0
  5. package/dist/{templates → controllers}/verify.d.ts +0 -0
  6. package/dist/{templates → controllers}/verify.js +0 -0
  7. package/dist/entities/check-task.d.ts +13 -0
  8. package/dist/entities/check-task.js +221 -0
  9. package/dist/entities/download-task.d.ts +23 -0
  10. package/dist/entities/download-task.js +445 -0
  11. package/dist/entities/effect-task.d.ts +12 -0
  12. package/dist/entities/effect-task.js +207 -0
  13. package/dist/entities/fk-account.d.ts +16 -0
  14. package/dist/entities/fk-account.js +295 -0
  15. package/dist/entities/fk-jiqun.d.ts +5 -0
  16. package/dist/entities/fk-jiqun.js +56 -0
  17. package/dist/entities/upload-task.d.ts +15 -0
  18. package/dist/entities/upload-task.js +333 -0
  19. package/dist/entities/w7-account.d.ts +11 -0
  20. package/dist/entities/w7-account.js +126 -0
  21. package/dist/entities/w7.d.ts +10 -0
  22. package/dist/entities/w7.js +107 -0
  23. package/dist/entities/w7_chat_topic.d.ts +9 -0
  24. package/dist/entities/w7_chat_topic.js +58 -0
  25. package/dist/entities/w7_uni_account.d.ts +4 -0
  26. package/dist/entities/w7_uni_account.js +23 -0
  27. package/dist/fk-upload.module.d.ts +5 -0
  28. package/dist/fk-upload.module.js +76 -43
  29. package/dist/main.d.ts +1 -0
  30. package/dist/main.js +18 -29
  31. package/dist/services/check.service.d.ts +6 -0
  32. package/dist/services/check.service.js +32 -0
  33. package/dist/services/client.service.d.ts +6 -0
  34. package/dist/services/client.service.js +29 -0
  35. package/dist/services/download.service.d.ts +15 -0
  36. package/dist/services/download.service.js +139 -0
  37. package/dist/services/effect.service.d.ts +7 -0
  38. package/dist/services/effect.service.js +34 -0
  39. package/dist/services/fk.service.d.ts +24 -0
  40. package/dist/services/fk.service.js +323 -0
  41. package/dist/services/login.service.d.ts +17 -0
  42. package/dist/services/login.service.js +95 -0
  43. package/dist/services/upload.service.d.ts +13 -0
  44. package/dist/services/upload.service.js +100 -0
  45. package/dist/tasks/actions.d.ts +28 -0
  46. package/dist/tasks/actions.js +12 -0
  47. package/dist/{templates/tasks/schedule-task.d.ts → tasks/check-task.d.ts} +3 -5
  48. package/dist/tasks/check-task.js +205 -0
  49. package/dist/tasks/download-continue-task.d.ts +9 -0
  50. package/dist/tasks/download-continue-task.js +127 -0
  51. package/dist/{templates/tasks → tasks}/download-task.d.ts +0 -1
  52. package/dist/tasks/download-task.js +128 -0
  53. package/dist/{templates/tasks → tasks}/effect-task.d.ts +1 -1
  54. package/dist/tasks/effect-task.js +111 -0
  55. package/dist/{templates/tasks → tasks}/providers.d.ts +0 -0
  56. package/dist/{templates/tasks → tasks}/providers.js +11 -5
  57. package/dist/tasks/upload-continue-task.d.ts +8 -0
  58. package/dist/tasks/upload-continue-task.js +114 -0
  59. package/dist/{templates/tasks → tasks}/upload-task.d.ts +0 -0
  60. package/dist/tasks/upload-task.js +114 -0
  61. package/package.json +18 -14
  62. package/pnpm-lock.yaml +36 -1435
  63. package/dist/electon.d.ts +0 -3
  64. package/dist/electon.js +0 -80
  65. package/dist/entities/fk-download-task.entity.d.ts +0 -18
  66. package/dist/entities/fk-download-task.entity.js +0 -142
  67. package/dist/entities/fk-login-cookie.entity.d.ts +0 -7
  68. package/dist/entities/fk-login-cookie.entity.js +0 -46
  69. package/dist/entities/fk-login.entity.d.ts +0 -12
  70. package/dist/entities/fk-login.entity.js +0 -80
  71. package/dist/entities/index.d.ts +0 -3
  72. package/dist/entities/index.js +0 -6
  73. package/dist/login.controller.d.ts +0 -14
  74. package/dist/login.controller.js +0 -197
  75. package/dist/mq-runner.d.ts +0 -5
  76. package/dist/mq-runner.js +0 -19
  77. package/dist/static/task-manage.d.ts +0 -6
  78. package/dist/static/task-manage.js +0 -34
  79. package/dist/templates/add-fk-login.d.ts +0 -12
  80. package/dist/templates/add-fk-login.js +0 -93
  81. package/dist/templates/add-task.d.ts +0 -13
  82. package/dist/templates/add-task.js +0 -78
  83. package/dist/templates/check-upload.d.ts +0 -38
  84. package/dist/templates/check-upload.js +0 -195
  85. package/dist/templates/component.d.ts +0 -10
  86. package/dist/templates/component.js +0 -39
  87. package/dist/templates/error.d.ts +0 -4
  88. package/dist/templates/error.js +0 -27
  89. package/dist/templates/help.d.ts +0 -7
  90. package/dist/templates/help.js +0 -52
  91. package/dist/templates/player.d.ts +0 -4
  92. package/dist/templates/player.js +0 -23
  93. package/dist/templates/setting.d.ts +0 -13
  94. package/dist/templates/setting.js +0 -65
  95. package/dist/templates/task-manage.d.ts +0 -21
  96. package/dist/templates/task-manage.js +0 -314
  97. package/dist/templates/tasks/actions.d.ts +0 -44
  98. package/dist/templates/tasks/actions.js +0 -9
  99. package/dist/templates/tasks/check-task.d.ts +0 -8
  100. package/dist/templates/tasks/check-task.js +0 -89
  101. package/dist/templates/tasks/download-task.js +0 -130
  102. package/dist/templates/tasks/effect-task.js +0 -76
  103. package/dist/templates/tasks/fk.service.d.ts +0 -28
  104. package/dist/templates/tasks/fk.service.js +0 -254
  105. package/dist/templates/tasks/schedule-task.js +0 -94
  106. package/dist/templates/tasks/task.service.d.ts +0 -11
  107. package/dist/templates/tasks/task.service.js +0 -114
  108. package/dist/templates/tasks/upload-task.js +0 -97
  109. package/dist/templates/tasks/yasuo-task.d.ts +0 -0
  110. package/dist/templates/tasks/yasuo-task.js +0 -0
  111. package/dist/templates/upload-task.d.ts +0 -9
  112. package/dist/templates/upload-task.js +0 -141
  113. package/dist/templates/upload.d.ts +0 -16
  114. package/dist/templates/upload.js +0 -232
  115. package/dist/urlSafeBase64Decode.d.ts +0 -3
  116. package/dist/urlSafeBase64Decode.js +0 -32
  117. package/electron/.env +0 -32
  118. package/electron/package.json +0 -31
  119. package/electron/pnpm-lock.yaml +0 -2878
  120. package/fk-upload-pc/.vscode/extensions.json +0 -3
  121. package/fk-upload-pc/README.md +0 -16
  122. package/fk-upload-pc/index.html +0 -13
  123. package/fk-upload-pc/package.json +0 -19
  124. package/fk-upload-pc/pnpm-lock.yaml +0 -489
  125. package/fk-upload-pc/public/favicon.ico +0 -0
  126. package/fk-upload-pc/tsconfig.json +0 -18
  127. package/fk-upload-pc/tsconfig.node.json +0 -8
  128. package/fk-upload-pc/vite.config.ts +0 -7
@@ -1,34 +0,0 @@
1
- const url = new URL(window.location.href);
2
- const WS_PORT = Reflect.get(window, 'WS_PORT');
3
- const socket = new WebSocket(`ws://${url.hostname}:${WS_PORT}`);
4
- const CREATE_TASK = `@nger/fk-upload/create-task`;
5
- const CREATE_TASK_DOWNLOADING = `@nger/fk-upload/downloading`;
6
- const CREATE_TASK_UPLOADING = `@nger/fk-upload/uploading`;
7
- socket.onopen = () => {
8
- socket.onmessage = (msg) => {
9
- const data = msg.data;
10
- const payload = JSON.parse(data);
11
- if (payload.action === CREATE_TASK_DOWNLOADING) {
12
- const id = payload.data.filename + '-size';
13
- const item = document.getElementById(id);
14
- const total = document.getElementById(`${payload.data.filename}-total`);
15
- if (item)
16
- item.innerHTML = `${payload.data.size}`;
17
- if (total) {
18
- total.innerHTML = `${payload.data.total}`;
19
- }
20
- }
21
- else if (payload.action === CREATE_TASK_UPLOADING) {
22
- const id = payload.data.filename + '-upload-size';
23
- const item = document.getElementById(id);
24
- const uploadUrlHtml = document.getElementById(`${payload.data.filename}-upload-url`);
25
- if (item)
26
- item.innerHTML = `${payload.data.uploadSize}`;
27
- if (uploadUrlHtml && payload.data.uploadUrl)
28
- uploadUrlHtml.innerHTML = `${payload.data.uploadUrl}`;
29
- }
30
- else {
31
- console.log(payload);
32
- }
33
- };
34
- };
@@ -1,12 +0,0 @@
1
- /// <reference types="react" />
2
- import { Db } from '@nger/typeorm';
3
- import { Context } from 'koa';
4
- import { CryptoService } from '@nger/utils';
5
- export declare class AddFkLoginController {
6
- private db;
7
- private crypto;
8
- constructor(db: Db, crypto: CryptoService);
9
- postAddFkLogin(fkLoginId: string, post: any, ctx: Context): Promise<void>;
10
- delFkLogin(loginId: String, ctx: Context): Promise<void>;
11
- addFkLogin(fkLoginId: string): Promise<JSX.Element>;
12
- }
@@ -1,93 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AddFkLoginController = void 0;
4
- const tslib_1 = require("tslib");
5
- const core_1 = require("@nger/core");
6
- const http_1 = require("@nger/http");
7
- const typeorm_1 = require("@nger/typeorm");
8
- const react_1 = tslib_1.__importDefault(require("react"));
9
- const entities_1 = require("../entities");
10
- const component_1 = require("./component");
11
- const utils_1 = require("@nger/utils");
12
- let AddFkLoginController = class AddFkLoginController {
13
- db;
14
- crypto;
15
- constructor(db, crypto) {
16
- this.db = db;
17
- this.crypto = crypto;
18
- }
19
- async postAddFkLogin(fkLoginId, post, ctx) {
20
- let fkLogin = new entities_1.FkLoginEntity();
21
- fkLogin.username = post.username;
22
- fkLogin.pass = post.pass;
23
- fkLogin.w7Username = post.w7Username;
24
- fkLogin.password = this.crypto.md5(post.pass);
25
- if (fkLoginId) {
26
- // edit
27
- await this.db.manager.update(entities_1.FkLoginEntity, Number(fkLoginId), fkLogin);
28
- }
29
- else {
30
- await this.db.manager.save(entities_1.FkLoginEntity, fkLogin);
31
- }
32
- ctx.redirect('/@nger/fk-upload/help');
33
- return;
34
- }
35
- async delFkLogin(loginId, ctx) {
36
- if (loginId) {
37
- await this.db.manager.delete(entities_1.FkLoginEntity, Number(loginId));
38
- }
39
- ctx.redirect('/@nger/fk-upload/help');
40
- return;
41
- }
42
- async addFkLogin(fkLoginId) {
43
- let fkLogin = new entities_1.FkLoginEntity();
44
- if (fkLoginId && Number(fkLoginId) > 0) {
45
- const item = await this.db.manager.findOne(entities_1.FkLoginEntity, { where: { fkLoginId: Number(fkLoginId) } });
46
- if (item)
47
- fkLogin = item;
48
- }
49
- return react_1.default.createElement(component_1.Nav, { active: 1 },
50
- react_1.default.createElement("form", { action: '', method: 'post', encType: 'application/x-www-form-urlencoded' },
51
- react_1.default.createElement("div", { className: "mb-3" },
52
- react_1.default.createElement("label", { htmlFor: "username" }, "\u7528\u6237\u540D"),
53
- react_1.default.createElement("input", { id: "username", name: "username", onChange: e => { }, className: "form-control", type: "text", value: fkLogin.username })),
54
- react_1.default.createElement("div", { className: "mb-3" },
55
- react_1.default.createElement("label", { htmlFor: "password" }, "\u5BC6\u7801"),
56
- react_1.default.createElement("input", { id: "password", name: "pass", onChange: e => { }, className: "form-control", type: "text", value: fkLogin.pass })),
57
- react_1.default.createElement("div", { className: "mb-3" },
58
- react_1.default.createElement("label", { htmlFor: "w7Username" }, "\u5FAE\u64CE\u7528\u6237"),
59
- react_1.default.createElement("input", { id: "w7Username", name: "w7Username", onChange: e => { }, className: "form-control", type: "text", value: fkLogin.w7Username })),
60
- react_1.default.createElement("div", { className: "for-group" },
61
- react_1.default.createElement("button", { type: "submit", className: 'btn btn-primary' }, "\u6DFB\u52A0"),
62
- react_1.default.createElement("button", { type: "reset", className: 'btn' }, "\u91CD\u7F6E"))));
63
- }
64
- };
65
- tslib_1.__decorate([
66
- (0, http_1.Post)('add-fk-login'),
67
- tslib_1.__param(0, (0, http_1.Query)('loginId')),
68
- tslib_1.__param(1, (0, http_1.Body)()),
69
- tslib_1.__param(2, (0, core_1.Inject)(http_1.CONTEXT)),
70
- tslib_1.__metadata("design:type", Function),
71
- tslib_1.__metadata("design:paramtypes", [String, Object, Object]),
72
- tslib_1.__metadata("design:returntype", Promise)
73
- ], AddFkLoginController.prototype, "postAddFkLogin", null);
74
- tslib_1.__decorate([
75
- (0, http_1.Get)('del-fk-login'),
76
- tslib_1.__param(0, (0, http_1.Query)('loginId')),
77
- tslib_1.__param(1, (0, core_1.Inject)(http_1.CONTEXT)),
78
- tslib_1.__metadata("design:type", Function),
79
- tslib_1.__metadata("design:paramtypes", [String, Object]),
80
- tslib_1.__metadata("design:returntype", Promise)
81
- ], AddFkLoginController.prototype, "delFkLogin", null);
82
- tslib_1.__decorate([
83
- (0, http_1.Get)(`add-fk-login`),
84
- tslib_1.__param(0, (0, http_1.Query)(`loginId`)),
85
- tslib_1.__metadata("design:type", Function),
86
- tslib_1.__metadata("design:paramtypes", [String]),
87
- tslib_1.__metadata("design:returntype", Promise)
88
- ], AddFkLoginController.prototype, "addFkLogin", null);
89
- AddFkLoginController = tslib_1.__decorate([
90
- (0, core_1.Controller)('@nger/fk-upload'),
91
- tslib_1.__metadata("design:paramtypes", [typeorm_1.Db, utils_1.CryptoService])
92
- ], AddFkLoginController);
93
- exports.AddFkLoginController = AddFkLoginController;
@@ -1,13 +0,0 @@
1
- /// <reference types="react" />
2
- import { Db } from '@nger/typeorm';
3
- import { Context } from 'koa';
4
- import { TaskService } from './tasks/task.service';
5
- import { TaskManager } from '@nger/rabbitmq';
6
- export declare class AddTaskController {
7
- private db;
8
- private task;
9
- private taskService;
10
- constructor(db: Db, task: TaskManager, taskService: TaskService);
11
- postAddTask(post: any, ctx: Context): Promise<void>;
12
- addTask(query: any): JSX.Element;
13
- }
@@ -1,78 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.AddTaskController = void 0;
4
- const tslib_1 = require("tslib");
5
- const core_1 = require("@nger/core");
6
- const http_1 = require("@nger/http");
7
- const component_1 = require("./component");
8
- const react_1 = tslib_1.__importDefault(require("react"));
9
- const typeorm_1 = require("@nger/typeorm");
10
- const entities_1 = require("../entities");
11
- const task_service_1 = require("./tasks/task.service");
12
- const rabbitmq_1 = require("@nger/rabbitmq");
13
- let AddTaskController = class AddTaskController {
14
- db;
15
- task;
16
- taskService;
17
- constructor(db, task, taskService) {
18
- this.db = db;
19
- this.task = task;
20
- this.taskService = taskService;
21
- }
22
- async postAddTask(post, ctx) {
23
- const { url, we7Username } = post;
24
- const loginEntity = await this.db.manager.findOne(entities_1.FkLoginEntity, { where: { w7Username: we7Username } });
25
- if (loginEntity) {
26
- const topicId = Number(post.topicId);
27
- const task = await this.taskService.createDownLoadTask(url, loginEntity.fkLoginId, topicId);
28
- const download = task.data;
29
- const fkdownloadTask = new entities_1.FkDownloadTaskEntity();
30
- fkdownloadTask.filename = download.filename;
31
- fkdownloadTask.loginId = download.loginId;
32
- fkdownloadTask.path = download.path;
33
- fkdownloadTask.url = download.url;
34
- fkdownloadTask.topicId = download.topicId;
35
- await this.db.manager.save(entities_1.FkDownloadTaskEntity, fkdownloadTask);
36
- await this.task.send(task);
37
- }
38
- ctx.redirect('/@nger/fk-upload/task-manage');
39
- return;
40
- }
41
- addTask(query) {
42
- const data = query || {};
43
- return react_1.default.createElement(component_1.Nav, { active: 3 },
44
- react_1.default.createElement("form", { action: "/@nger/fk-upload/add-task", method: "post" },
45
- react_1.default.createElement("div", { className: "mb-3" },
46
- react_1.default.createElement("label", { htmlFor: "url" }, "\u8FDE\u63A5"),
47
- react_1.default.createElement("input", { type: "text", onChange: e => { }, name: "url", value: data.value, className: 'form-control', id: "url" })),
48
- react_1.default.createElement("div", { className: "mb-3" },
49
- react_1.default.createElement("label", { htmlFor: "w7Username" }, "\u5FAE\u64CE\u8D26\u6237"),
50
- react_1.default.createElement("input", { type: "text", onChange: e => { }, name: "we7Username", value: data.username, className: 'form-control', id: "w7Username" })),
51
- react_1.default.createElement("div", { className: "mb-3" },
52
- react_1.default.createElement("label", { htmlFor: "w7Username" }, "topicId"),
53
- react_1.default.createElement("input", { type: "text", onChange: e => { }, name: "topicId", value: data.id, className: 'form-control', id: "topicId" })),
54
- react_1.default.createElement("div", { className: "mb-3" },
55
- react_1.default.createElement("button", { type: "submit", className: "btn btn-primary" }, "\u63D0\u4EA4"),
56
- react_1.default.createElement("button", { type: "reset", className: "btn" }, "\u91CD\u7F6E"))));
57
- }
58
- };
59
- tslib_1.__decorate([
60
- (0, http_1.Post)('add-task'),
61
- tslib_1.__param(0, (0, http_1.Body)()),
62
- tslib_1.__param(1, (0, core_1.Inject)(http_1.CONTEXT)),
63
- tslib_1.__metadata("design:type", Function),
64
- tslib_1.__metadata("design:paramtypes", [Object, Object]),
65
- tslib_1.__metadata("design:returntype", Promise)
66
- ], AddTaskController.prototype, "postAddTask", null);
67
- tslib_1.__decorate([
68
- (0, http_1.Get)('add-task'),
69
- tslib_1.__param(0, (0, http_1.Query)()),
70
- tslib_1.__metadata("design:type", Function),
71
- tslib_1.__metadata("design:paramtypes", [Object]),
72
- tslib_1.__metadata("design:returntype", void 0)
73
- ], AddTaskController.prototype, "addTask", null);
74
- AddTaskController = tslib_1.__decorate([
75
- (0, core_1.Controller)('@nger/fk-upload'),
76
- tslib_1.__metadata("design:paramtypes", [typeorm_1.Db, rabbitmq_1.TaskManager, task_service_1.TaskService])
77
- ], AddTaskController);
78
- exports.AddTaskController = AddTaskController;
@@ -1,38 +0,0 @@
1
- import { FkDownloadTaskEntity } from './../entities/fk-download-task.entity';
2
- import { TaskEntity, TaskManager } from '@nger/rabbitmq';
3
- import { Db } from '@nger/typeorm';
4
- import { Injector } from '@nger/core';
5
- export declare class CheckUploadController {
6
- private db;
7
- private manager;
8
- private injector;
9
- constructor(db: Db, manager: TaskManager, injector: Injector);
10
- reupload(): Promise<string>;
11
- recheck(): Promise<{
12
- msg: string;
13
- list: TaskEntity<object>[];
14
- }>;
15
- redownload(): Promise<{
16
- msg: string;
17
- list: TaskEntity<object>[];
18
- }>;
19
- checkSpace(): Promise<{
20
- msg: string;
21
- removes: string[];
22
- }>;
23
- checkWaitEffectTask(): Promise<{
24
- list: FkDownloadTaskEntity[];
25
- }>;
26
- checkWaitDownloadTask(): Promise<{
27
- list: FkDownloadTaskEntity[];
28
- }>;
29
- checkWaitUploadTask(): Promise<{
30
- list: string[];
31
- }>;
32
- checkFinish(): Promise<{
33
- list: string[];
34
- }>;
35
- reEffect(): Promise<{
36
- list: string[];
37
- }>;
38
- }
@@ -1,195 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CheckUploadController = void 0;
4
- const tslib_1 = require("tslib");
5
- const fk_service_1 = require("./tasks/fk.service");
6
- const fs_1 = require("fs");
7
- const fk_download_task_entity_1 = require("./../entities/fk-download-task.entity");
8
- const rabbitmq_1 = require("@nger/rabbitmq");
9
- const typeorm_1 = require("@nger/typeorm");
10
- const core_1 = require("@nger/core");
11
- const http_1 = require("@nger/http");
12
- const typeorm_2 = require("typeorm");
13
- const fs_extra_1 = require("fs-extra");
14
- const task_service_1 = require("./tasks/task.service");
15
- const actions_1 = require("./tasks/actions");
16
- let CheckUploadController = class CheckUploadController {
17
- db;
18
- manager;
19
- injector;
20
- constructor(db, manager, injector) {
21
- this.db = db;
22
- this.manager = manager;
23
- this.injector = injector;
24
- }
25
- async reupload() {
26
- const task = this.db.manager.getRepository(rabbitmq_1.TaskEntity);
27
- const list = await task.find({ where: { topic: '@nger/fk-upload/upload-task', status: 0 } });
28
- await Promise.all(list.map(item => this.manager.send(item)));
29
- return 'reupload success';
30
- }
31
- async recheck() {
32
- const task = this.db.manager.getRepository(rabbitmq_1.TaskEntity);
33
- const list = await task.find({ where: { topic: '@nger/fk-upload/effect-task', status: 0 } });
34
- await Promise.all(list.map(item => this.manager.send(item)));
35
- return { msg: 'recheck success', list };
36
- }
37
- async redownload() {
38
- const task = this.db.manager.getRepository(rabbitmq_1.TaskEntity);
39
- const list = await task.find({ where: { topic: '@nger/fk-upload/download-task', status: 0 } });
40
- await Promise.all(list.map(item => this.manager.send(item)));
41
- return { msg: 'redownload success', list };
42
- }
43
- async checkSpace() {
44
- const download = this.db.manager.getRepository(fk_download_task_entity_1.FkDownloadTaskEntity);
45
- // remove to large
46
- const largs = await download.find({ where: { totalSize: (0, typeorm_2.MoreThan)(1024 * 1024 * 1024) } });
47
- // remove finish
48
- const list = await download.find({ where: { status: (0, typeorm_2.Not)(1) } });
49
- // remove not use
50
- const root = this.injector.get(core_1.APP_ROOT);
51
- // const uploads = readdirSync(join(root, 'attachments/fk-upload'));
52
- const removes = [];
53
- Promise.all([...list, ...largs].map(async (item) => {
54
- if ((0, fs_1.existsSync)(item.path)) {
55
- try {
56
- await (0, fs_extra_1.unlink)(item.path);
57
- await (0, fs_extra_1.unlink)(item.path);
58
- removes.push(item.path);
59
- }
60
- catch (e) { }
61
- }
62
- }));
63
- return { msg: 'succes', removes };
64
- }
65
- async checkWaitEffectTask() {
66
- const download = this.db.manager.getRepository(fk_download_task_entity_1.FkDownloadTaskEntity);
67
- const list = await download.find({ where: { status: 2 } });
68
- const task = this.injector.get(task_service_1.TaskService);
69
- await Promise.all(list.map(async (item) => {
70
- const download = await task.createEffectTask(item.filename, item.uploadUrl, item.topicId, item.path);
71
- return this.manager.send(download);
72
- }));
73
- return { list };
74
- }
75
- async checkWaitDownloadTask() {
76
- const download = this.db.manager.getRepository(fk_download_task_entity_1.FkDownloadTaskEntity);
77
- const list = await download.find({ where: { status: 0 } });
78
- const task = this.injector.get(task_service_1.TaskService);
79
- await Promise.all(list.map(async (item) => {
80
- const download = await task.createDownLoadTask(item.url, item.loginId, item.topicId);
81
- return this.manager.send(download);
82
- }));
83
- return { list };
84
- }
85
- async checkWaitUploadTask() {
86
- const download = this.db.manager.getRepository(fk_download_task_entity_1.FkDownloadTaskEntity);
87
- const errors = await download.find({ where: { uploadUrl: (0, typeorm_2.Like)('https://site%') } });
88
- if (errors && errors.length > 0) {
89
- await download.update(errors.map(err => err.filename), { status: 1 });
90
- }
91
- const list = await download.find({ where: { status: 1, totalSize: (0, typeorm_2.LessThan)(1024 * 1024 * 1024) } });
92
- const task = this.injector.get(task_service_1.TaskService);
93
- const fk = this.injector.get(fk_service_1.FkService);
94
- await Promise.all(list.map(async (item) => {
95
- const cloudSize = await fk.getSize(item.url);
96
- const localSize = fk.getLocalSize(item.path);
97
- console.log({ cloudSize, localSize });
98
- const upload = await task.createUploadTask({
99
- filename: item.filename,
100
- path: item.path,
101
- url: item.url,
102
- topicId: item.topicId,
103
- loginId: item.loginId
104
- }, item.totalSize, item.fileMd5, this.injector);
105
- return this.manager.send(upload);
106
- }));
107
- return {
108
- list: list.map(item => item.filename)
109
- };
110
- }
111
- async checkFinish() {
112
- const finishs = await this.db.manager.find(fk_download_task_entity_1.FkDownloadTaskEntity, {});
113
- await Promise.all(finishs.map(finish => {
114
- const item = new rabbitmq_1.TaskEntity();
115
- item.topic = actions_1.CHECK_ACTION;
116
- item.data = { filename: finish.filename };
117
- return this.manager.send(item);
118
- }));
119
- return { list: finishs.map(it => it.filename) };
120
- }
121
- async reEffect() {
122
- const finishs = await this.db.manager.find(fk_download_task_entity_1.FkDownloadTaskEntity, { where: { status: 3 } });
123
- await Promise.all(finishs.map(finish => {
124
- const item = new rabbitmq_1.TaskEntity();
125
- item.topic = actions_1.EFFECT_ACTION;
126
- item.data = {
127
- filename: finish.filename,
128
- uploadUrl: finish.uploadUrl,
129
- topicId: finish.topicId,
130
- path: finish.path,
131
- };
132
- return this.manager.send(item);
133
- }));
134
- return { list: finishs.map(it => it.filename) };
135
- }
136
- };
137
- tslib_1.__decorate([
138
- (0, http_1.Get)('reupload'),
139
- tslib_1.__metadata("design:type", Function),
140
- tslib_1.__metadata("design:paramtypes", []),
141
- tslib_1.__metadata("design:returntype", Promise)
142
- ], CheckUploadController.prototype, "reupload", null);
143
- tslib_1.__decorate([
144
- (0, http_1.Get)('recheck'),
145
- tslib_1.__metadata("design:type", Function),
146
- tslib_1.__metadata("design:paramtypes", []),
147
- tslib_1.__metadata("design:returntype", Promise)
148
- ], CheckUploadController.prototype, "recheck", null);
149
- tslib_1.__decorate([
150
- (0, http_1.Get)('redownload'),
151
- tslib_1.__metadata("design:type", Function),
152
- tslib_1.__metadata("design:paramtypes", []),
153
- tslib_1.__metadata("design:returntype", Promise)
154
- ], CheckUploadController.prototype, "redownload", null);
155
- tslib_1.__decorate([
156
- (0, http_1.Get)('checkspace'),
157
- tslib_1.__metadata("design:type", Function),
158
- tslib_1.__metadata("design:paramtypes", []),
159
- tslib_1.__metadata("design:returntype", Promise)
160
- ], CheckUploadController.prototype, "checkSpace", null);
161
- tslib_1.__decorate([
162
- (0, http_1.Get)('checkWaitEffectTask'),
163
- tslib_1.__metadata("design:type", Function),
164
- tslib_1.__metadata("design:paramtypes", []),
165
- tslib_1.__metadata("design:returntype", Promise)
166
- ], CheckUploadController.prototype, "checkWaitEffectTask", null);
167
- tslib_1.__decorate([
168
- (0, http_1.Get)('checkWaitDownloadTask'),
169
- tslib_1.__metadata("design:type", Function),
170
- tslib_1.__metadata("design:paramtypes", []),
171
- tslib_1.__metadata("design:returntype", Promise)
172
- ], CheckUploadController.prototype, "checkWaitDownloadTask", null);
173
- tslib_1.__decorate([
174
- (0, http_1.Get)('checkWaitUploadTask'),
175
- tslib_1.__metadata("design:type", Function),
176
- tslib_1.__metadata("design:paramtypes", []),
177
- tslib_1.__metadata("design:returntype", Promise)
178
- ], CheckUploadController.prototype, "checkWaitUploadTask", null);
179
- tslib_1.__decorate([
180
- (0, http_1.Get)('checkFinish'),
181
- tslib_1.__metadata("design:type", Function),
182
- tslib_1.__metadata("design:paramtypes", []),
183
- tslib_1.__metadata("design:returntype", Promise)
184
- ], CheckUploadController.prototype, "checkFinish", null);
185
- tslib_1.__decorate([
186
- (0, http_1.Get)('reEffect'),
187
- tslib_1.__metadata("design:type", Function),
188
- tslib_1.__metadata("design:paramtypes", []),
189
- tslib_1.__metadata("design:returntype", Promise)
190
- ], CheckUploadController.prototype, "reEffect", null);
191
- CheckUploadController = tslib_1.__decorate([
192
- (0, core_1.Controller)(`@nger/fk-upload`),
193
- tslib_1.__metadata("design:paramtypes", [typeorm_1.Db, rabbitmq_1.TaskManager, core_1.Injector])
194
- ], CheckUploadController);
195
- exports.CheckUploadController = CheckUploadController;
@@ -1,10 +0,0 @@
1
- /// <reference types="react" />
2
- export interface Nav {
3
- title: string;
4
- link: string;
5
- }
6
- export interface NavProps {
7
- active: number;
8
- children: any | any[];
9
- }
10
- export declare function Nav(props: NavProps): JSX.Element;
@@ -1,39 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Nav = void 0;
4
- const tslib_1 = require("tslib");
5
- const react_1 = tslib_1.__importDefault(require("react"));
6
- function Nav(props) {
7
- const navs = [{
8
- link: '/@nger/fk-upload/help',
9
- title: '账户'
10
- }, {
11
- link: '/@nger/fk-upload/add-fk-login',
12
- title: '添加账户'
13
- }, {
14
- link: '/@nger/fk-upload/task-manage',
15
- title: '任务'
16
- }, {
17
- link: '/@nger/fk-upload/add-task',
18
- title: '添加任务'
19
- }, {
20
- link: '/@nger/fk-upload/setting',
21
- title: '设置'
22
- }];
23
- return react_1.default.createElement("div", null,
24
- react_1.default.createElement("link", { href: "/bootstrap/css/bootstrap.min.css", rel: "stylesheet" }),
25
- react_1.default.createElement("nav", { style: { padding: "0 10px" }, className: "navbar navbar-expand-lg navbar-dark bg-primary" },
26
- react_1.default.createElement("div", { className: "collapse navbar-collapse show" },
27
- react_1.default.createElement("ul", { className: "navbar-nav mr-auto", style: { display: "flex", flexDirection: 'row' } },
28
- react_1.default.createElement("a", { className: "navbar-brand", href: "/@nger/fk-upload/help" }, "FkUpload"),
29
- navs.map((nav, key) => {
30
- let cls = `nav-link`;
31
- if (props.active === key) {
32
- cls += ` active`;
33
- }
34
- return react_1.default.createElement("li", { key: key, style: { margin: "0 10px" }, className: "nav-item" },
35
- react_1.default.createElement("a", { className: cls, href: nav.link }, nav.title));
36
- })))),
37
- react_1.default.createElement("div", { className: "container-fluid", style: { padding: "10px 20px" } }, props.children));
38
- }
39
- exports.Nav = Nav;
@@ -1,4 +0,0 @@
1
- /// <reference types="react" />
2
- export declare class ErrorController {
3
- error(msg: string): JSX.Element;
4
- }
@@ -1,27 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ErrorController = void 0;
4
- const tslib_1 = require("tslib");
5
- const core_1 = require("@nger/core");
6
- const http_1 = require("@nger/http");
7
- const component_1 = require("./component");
8
- const react_1 = tslib_1.__importDefault(require("react"));
9
- let ErrorController = class ErrorController {
10
- error(msg) {
11
- return react_1.default.createElement(component_1.Nav, { active: -1 },
12
- react_1.default.createElement("div", { className: "card" },
13
- react_1.default.createElement("div", { className: "card-body" },
14
- react_1.default.createElement("div", { className: "alert alert-danger", role: "alert" }, msg))));
15
- }
16
- };
17
- tslib_1.__decorate([
18
- (0, http_1.Get)('error'),
19
- tslib_1.__param(0, (0, http_1.Query)('msg')),
20
- tslib_1.__metadata("design:type", Function),
21
- tslib_1.__metadata("design:paramtypes", [String]),
22
- tslib_1.__metadata("design:returntype", void 0)
23
- ], ErrorController.prototype, "error", null);
24
- ErrorController = tslib_1.__decorate([
25
- (0, core_1.Controller)('@nger/fk-upload')
26
- ], ErrorController);
27
- exports.ErrorController = ErrorController;
@@ -1,7 +0,0 @@
1
- /// <reference types="react" />
2
- import { Db } from '@nger/typeorm';
3
- export declare class HelpController {
4
- private db;
5
- constructor(db: Db);
6
- help(): Promise<JSX.Element>;
7
- }
@@ -1,52 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HelpController = void 0;
4
- const tslib_1 = require("tslib");
5
- const core_1 = require("@nger/core");
6
- const http_1 = require("@nger/http");
7
- const typeorm_1 = require("@nger/typeorm");
8
- const react_1 = tslib_1.__importDefault(require("react"));
9
- const fk_login_entity_1 = require("../entities/fk-login.entity");
10
- const component_1 = require("./component");
11
- let HelpController = class HelpController {
12
- db;
13
- constructor(db) {
14
- this.db = db;
15
- }
16
- async help() {
17
- const list = await this.db.manager.find(fk_login_entity_1.FkLoginEntity, { where: {} });
18
- return react_1.default.createElement(component_1.Nav, { active: 0 },
19
- react_1.default.createElement("table", { className: 'table' },
20
- react_1.default.createElement("thead", null,
21
- react_1.default.createElement("tr", null,
22
- react_1.default.createElement("td", null, "\u7528\u6237\u540D"),
23
- react_1.default.createElement("td", null, "\u5FAE\u64CE\u7528\u6237"),
24
- react_1.default.createElement("td", null),
25
- react_1.default.createElement("td", null))),
26
- react_1.default.createElement("tbody", null, list.map((li, key) => {
27
- const url = `/@nger/fk-upload/login?loginId=${li.fkLoginId}`;
28
- const edit = `/@nger/fk-upload/add-fk-login?loginId=${li.fkLoginId}`;
29
- const del = `/@nger/fk-upload/del-fk-login?loginId=${li.fkLoginId}`;
30
- return react_1.default.createElement("tr", { key: key },
31
- react_1.default.createElement("td", null, li.username),
32
- react_1.default.createElement("td", null, li.w7Username),
33
- react_1.default.createElement("td", null, li.status ? 'binded' : 'unbind'),
34
- react_1.default.createElement("td", null,
35
- react_1.default.createElement("div", { className: "btn-group" },
36
- react_1.default.createElement("a", { className: "btn btn-primary", href: url }, li.status ? '重新绑定' : '绑定'),
37
- react_1.default.createElement("a", { className: "btn btn-link", href: edit }, "\u7F16\u8F91"),
38
- react_1.default.createElement("a", { className: "btn btn-danger", href: del }, "\u5220\u9664"))));
39
- }))));
40
- }
41
- };
42
- tslib_1.__decorate([
43
- (0, http_1.Get)('help'),
44
- tslib_1.__metadata("design:type", Function),
45
- tslib_1.__metadata("design:paramtypes", []),
46
- tslib_1.__metadata("design:returntype", Promise)
47
- ], HelpController.prototype, "help", null);
48
- HelpController = tslib_1.__decorate([
49
- (0, core_1.Controller)('@nger/fk-upload'),
50
- tslib_1.__metadata("design:paramtypes", [typeorm_1.Db])
51
- ], HelpController);
52
- exports.HelpController = HelpController;
@@ -1,4 +0,0 @@
1
- /// <reference types="react" />
2
- export declare class Player {
3
- player(): JSX.Element;
4
- }
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Player = void 0;
4
- const tslib_1 = require("tslib");
5
- const core_1 = require("@nger/core");
6
- const http_1 = require("@nger/http");
7
- const react_1 = tslib_1.__importDefault(require("react"));
8
- let Player = class Player {
9
- player() {
10
- return react_1.default.createElement("div", null,
11
- react_1.default.createElement("video", { controls: true, autoPlay: true, src: "https://17854642.s21v.faiusr.com/58/ABUIABA6GAAg0___kwYozPPaiAI.mp4" }));
12
- }
13
- };
14
- tslib_1.__decorate([
15
- (0, http_1.Get)(`player`),
16
- tslib_1.__metadata("design:type", Function),
17
- tslib_1.__metadata("design:paramtypes", []),
18
- tslib_1.__metadata("design:returntype", void 0)
19
- ], Player.prototype, "player", null);
20
- Player = tslib_1.__decorate([
21
- (0, core_1.Controller)(`@nger/fk-upload`)
22
- ], Player);
23
- exports.Player = Player;
@@ -1,13 +0,0 @@
1
- /// <reference types="react" />
2
- import { TaskService } from './tasks/task.service';
3
- import { Context } from 'koa';
4
- import { TaskManager } from '@nger/rabbitmq';
5
- import { Db } from '@nger/typeorm';
6
- export declare class SettingController {
7
- private task;
8
- private manager;
9
- private db;
10
- constructor(task: TaskService, manager: TaskManager, db: Db);
11
- saveSetting(body: any, taskId: number, ctx: Context): Promise<void>;
12
- setting(): Promise<JSX.Element>;
13
- }