@nger/fk-upload 1.0.201 → 1.0.204
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/{templates → controllers}/code.d.ts +0 -0
- package/dist/{templates → controllers}/code.js +2 -1
- package/dist/controllers/relogin.d.ts +8 -0
- package/dist/controllers/relogin.js +42 -0
- package/dist/{templates → controllers}/verify.d.ts +0 -0
- package/dist/{templates → controllers}/verify.js +0 -0
- package/dist/entities/check-task.d.ts +13 -0
- package/dist/entities/check-task.js +221 -0
- package/dist/entities/download-task.d.ts +23 -0
- package/dist/entities/download-task.js +445 -0
- package/dist/entities/effect-task.d.ts +12 -0
- package/dist/entities/effect-task.js +207 -0
- package/dist/entities/fk-account.d.ts +16 -0
- package/dist/entities/fk-account.js +295 -0
- package/dist/entities/fk-jiqun.d.ts +5 -0
- package/dist/entities/fk-jiqun.js +56 -0
- package/dist/entities/upload-task.d.ts +15 -0
- package/dist/entities/upload-task.js +333 -0
- package/dist/entities/w7-account.d.ts +11 -0
- package/dist/entities/w7-account.js +126 -0
- package/dist/entities/w7.d.ts +10 -0
- package/dist/entities/w7.js +107 -0
- package/dist/entities/w7_chat_topic.d.ts +9 -0
- package/dist/entities/w7_chat_topic.js +58 -0
- package/dist/entities/w7_uni_account.d.ts +4 -0
- package/dist/entities/w7_uni_account.js +23 -0
- package/dist/fk-upload.module.d.ts +5 -0
- package/dist/fk-upload.module.js +76 -43
- package/dist/main.d.ts +1 -0
- package/dist/main.js +18 -29
- package/dist/services/check.service.d.ts +6 -0
- package/dist/services/check.service.js +32 -0
- package/dist/services/client.service.d.ts +6 -0
- package/dist/services/client.service.js +29 -0
- package/dist/services/download.service.d.ts +15 -0
- package/dist/services/download.service.js +139 -0
- package/dist/services/effect.service.d.ts +7 -0
- package/dist/services/effect.service.js +34 -0
- package/dist/services/fk.service.d.ts +24 -0
- package/dist/services/fk.service.js +323 -0
- package/dist/services/login.service.d.ts +17 -0
- package/dist/services/login.service.js +95 -0
- package/dist/services/upload.service.d.ts +13 -0
- package/dist/services/upload.service.js +100 -0
- package/dist/tasks/actions.d.ts +28 -0
- package/dist/tasks/actions.js +12 -0
- package/dist/{templates/tasks/schedule-task.d.ts → tasks/check-task.d.ts} +3 -5
- package/dist/tasks/check-task.js +205 -0
- package/dist/tasks/download-continue-task.d.ts +9 -0
- package/dist/tasks/download-continue-task.js +127 -0
- package/dist/{templates/tasks → tasks}/download-task.d.ts +0 -1
- package/dist/tasks/download-task.js +128 -0
- package/dist/{templates/tasks → tasks}/effect-task.d.ts +1 -1
- package/dist/tasks/effect-task.js +111 -0
- package/dist/{templates/tasks → tasks}/providers.d.ts +0 -0
- package/dist/{templates/tasks → tasks}/providers.js +11 -5
- package/dist/tasks/upload-continue-task.d.ts +8 -0
- package/dist/tasks/upload-continue-task.js +114 -0
- package/dist/{templates/tasks → tasks}/upload-task.d.ts +0 -0
- package/dist/tasks/upload-task.js +114 -0
- package/package.json +18 -14
- package/pnpm-lock.yaml +36 -1435
- package/dist/electon.d.ts +0 -3
- package/dist/electon.js +0 -80
- package/dist/entities/fk-download-task.entity.d.ts +0 -18
- package/dist/entities/fk-download-task.entity.js +0 -142
- package/dist/entities/fk-login-cookie.entity.d.ts +0 -7
- package/dist/entities/fk-login-cookie.entity.js +0 -46
- package/dist/entities/fk-login.entity.d.ts +0 -12
- package/dist/entities/fk-login.entity.js +0 -80
- package/dist/entities/index.d.ts +0 -3
- package/dist/entities/index.js +0 -6
- package/dist/login.controller.d.ts +0 -14
- package/dist/login.controller.js +0 -197
- package/dist/mq-runner.d.ts +0 -5
- package/dist/mq-runner.js +0 -19
- package/dist/static/task-manage.d.ts +0 -6
- package/dist/static/task-manage.js +0 -34
- package/dist/templates/add-fk-login.d.ts +0 -12
- package/dist/templates/add-fk-login.js +0 -93
- package/dist/templates/add-task.d.ts +0 -13
- package/dist/templates/add-task.js +0 -78
- package/dist/templates/check-upload.d.ts +0 -38
- package/dist/templates/check-upload.js +0 -195
- package/dist/templates/component.d.ts +0 -10
- package/dist/templates/component.js +0 -39
- package/dist/templates/error.d.ts +0 -4
- package/dist/templates/error.js +0 -27
- package/dist/templates/help.d.ts +0 -7
- package/dist/templates/help.js +0 -52
- package/dist/templates/player.d.ts +0 -4
- package/dist/templates/player.js +0 -23
- package/dist/templates/setting.d.ts +0 -13
- package/dist/templates/setting.js +0 -65
- package/dist/templates/task-manage.d.ts +0 -21
- package/dist/templates/task-manage.js +0 -314
- package/dist/templates/tasks/actions.d.ts +0 -44
- package/dist/templates/tasks/actions.js +0 -9
- package/dist/templates/tasks/check-task.d.ts +0 -8
- package/dist/templates/tasks/check-task.js +0 -89
- package/dist/templates/tasks/download-task.js +0 -130
- package/dist/templates/tasks/effect-task.js +0 -76
- package/dist/templates/tasks/fk.service.d.ts +0 -28
- package/dist/templates/tasks/fk.service.js +0 -254
- package/dist/templates/tasks/schedule-task.js +0 -94
- package/dist/templates/tasks/task.service.d.ts +0 -11
- package/dist/templates/tasks/task.service.js +0 -114
- package/dist/templates/tasks/upload-task.js +0 -97
- package/dist/templates/tasks/yasuo-task.d.ts +0 -0
- package/dist/templates/tasks/yasuo-task.js +0 -0
- package/dist/templates/upload-task.d.ts +0 -9
- package/dist/templates/upload-task.js +0 -141
- package/dist/templates/upload.d.ts +0 -16
- package/dist/templates/upload.js +0 -232
- package/dist/urlSafeBase64Decode.d.ts +0 -3
- package/dist/urlSafeBase64Decode.js +0 -32
- package/electron/.env +0 -32
- package/electron/package.json +0 -31
- package/electron/pnpm-lock.yaml +0 -2878
- package/fk-upload-pc/.vscode/extensions.json +0 -3
- package/fk-upload-pc/README.md +0 -16
- package/fk-upload-pc/index.html +0 -13
- package/fk-upload-pc/package.json +0 -19
- package/fk-upload-pc/pnpm-lock.yaml +0 -489
- package/fk-upload-pc/public/favicon.ico +0 -0
- package/fk-upload-pc/tsconfig.json +0 -18
- package/fk-upload-pc/tsconfig.node.json +0 -8
- 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,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;
|
package/dist/templates/error.js
DELETED
@@ -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;
|
package/dist/templates/help.d.ts
DELETED
package/dist/templates/help.js
DELETED
@@ -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;
|
package/dist/templates/player.js
DELETED
@@ -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
|
-
}
|