fdb2 1.0.2 → 1.0.4

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 (94) hide show
  1. package/bin/fdb2.js +11 -3
  2. package/dist/public/.vite/manifest.json +82 -0
  3. package/dist/public/bootstrap-icons.woff +0 -0
  4. package/dist/public/bootstrap-icons.woff2 +0 -0
  5. package/dist/public/bootstrap.css +14152 -0
  6. package/dist/public/bootstrap.js +5038 -0
  7. package/dist/public/explorer.css +2137 -0
  8. package/dist/public/explorer.js +49846 -0
  9. package/dist/public/index.css +1071 -0
  10. package/dist/public/index.js +12811 -0
  11. package/dist/public/layout.css +318 -0
  12. package/dist/public/layout.js +25 -0
  13. package/dist/public/vue.css +1 -0
  14. package/dist/public/vue.js +9111 -0
  15. package/dist/server/index.d.ts +2 -0
  16. package/dist/server/index.d.ts.map +1 -0
  17. package/dist/server/index.js +598 -0
  18. package/dist/server/index.js.map +1 -0
  19. package/dist/server/index.ts +677 -0
  20. package/dist/server/model/connection.entity.d.ts +55 -0
  21. package/dist/server/model/connection.entity.d.ts.map +1 -0
  22. package/dist/server/model/connection.entity.js +59 -0
  23. package/dist/server/model/connection.entity.js.map +1 -0
  24. package/dist/server/model/connection.entity.ts +66 -0
  25. package/dist/server/model/database.entity.d.ts +203 -0
  26. package/dist/server/model/database.entity.d.ts.map +1 -0
  27. package/dist/server/model/database.entity.js +211 -0
  28. package/dist/server/model/database.entity.js.map +1 -0
  29. package/dist/server/model/database.entity.ts +246 -0
  30. package/dist/server/service/connection.service.d.ts +79 -0
  31. package/dist/server/service/connection.service.d.ts.map +1 -0
  32. package/dist/server/service/connection.service.js +351 -0
  33. package/dist/server/service/connection.service.js.map +1 -0
  34. package/dist/server/service/connection.service.ts +341 -0
  35. package/dist/server/service/database/base.service.d.ts +152 -0
  36. package/dist/server/service/database/base.service.d.ts.map +1 -0
  37. package/dist/server/service/database/base.service.js +236 -0
  38. package/dist/server/service/database/base.service.js.map +1 -0
  39. package/dist/server/service/database/base.service.ts +363 -0
  40. package/dist/server/service/database/cockroachdb.service.d.ts +95 -0
  41. package/dist/server/service/database/cockroachdb.service.d.ts.map +1 -0
  42. package/dist/server/service/database/cockroachdb.service.js +634 -0
  43. package/dist/server/service/database/cockroachdb.service.js.map +1 -0
  44. package/dist/server/service/database/cockroachdb.service.ts +659 -0
  45. package/dist/server/service/database/database.service.d.ts +487 -0
  46. package/dist/server/service/database/database.service.d.ts.map +1 -0
  47. package/dist/server/service/database/database.service.js +580 -0
  48. package/dist/server/service/database/database.service.js.map +1 -0
  49. package/dist/server/service/database/database.service.ts +630 -0
  50. package/dist/server/service/database/index.d.ts +8 -0
  51. package/dist/server/service/database/index.d.ts.map +1 -0
  52. package/dist/server/service/database/index.js +18 -0
  53. package/dist/server/service/database/index.js.map +1 -0
  54. package/dist/server/service/database/index.ts +7 -0
  55. package/dist/server/service/database/mongodb.service.d.ts +99 -0
  56. package/dist/server/service/database/mongodb.service.d.ts.map +1 -0
  57. package/dist/server/service/database/mongodb.service.js +459 -0
  58. package/dist/server/service/database/mongodb.service.js.map +1 -0
  59. package/dist/server/service/database/mongodb.service.ts +454 -0
  60. package/dist/server/service/database/mssql.service.d.ts +98 -0
  61. package/dist/server/service/database/mssql.service.d.ts.map +1 -0
  62. package/dist/server/service/database/mssql.service.js +694 -0
  63. package/dist/server/service/database/mssql.service.js.map +1 -0
  64. package/dist/server/service/database/mssql.service.ts +723 -0
  65. package/dist/server/service/database/mysql.service.d.ts +94 -0
  66. package/dist/server/service/database/mysql.service.d.ts.map +1 -0
  67. package/dist/server/service/database/mysql.service.js +735 -0
  68. package/dist/server/service/database/mysql.service.js.map +1 -0
  69. package/dist/server/service/database/mysql.service.ts +761 -0
  70. package/dist/server/service/database/oracle.service.d.ts +106 -0
  71. package/dist/server/service/database/oracle.service.d.ts.map +1 -0
  72. package/dist/server/service/database/oracle.service.js +787 -0
  73. package/dist/server/service/database/oracle.service.js.map +1 -0
  74. package/dist/server/service/database/oracle.service.ts +832 -0
  75. package/dist/server/service/database/postgres.service.d.ts +102 -0
  76. package/dist/server/service/database/postgres.service.d.ts.map +1 -0
  77. package/dist/server/service/database/postgres.service.js +696 -0
  78. package/dist/server/service/database/postgres.service.js.map +1 -0
  79. package/dist/server/service/database/postgres.service.ts +741 -0
  80. package/dist/server/service/database/sap.service.d.ts +95 -0
  81. package/dist/server/service/database/sap.service.d.ts.map +1 -0
  82. package/dist/server/service/database/sap.service.js +695 -0
  83. package/dist/server/service/database/sap.service.js.map +1 -0
  84. package/dist/server/service/database/sap.service.ts +713 -0
  85. package/dist/server/service/database/sqlite.service.d.ts +92 -0
  86. package/dist/server/service/database/sqlite.service.d.ts.map +1 -0
  87. package/dist/server/service/database/sqlite.service.js +532 -0
  88. package/dist/server/service/database/sqlite.service.js.map +1 -0
  89. package/dist/server/service/database/sqlite.service.ts +559 -0
  90. package/dist/server/service/session.service.ts +158 -0
  91. package/dist/view/index.html +45 -0
  92. package/package.json +2 -1
  93. package/scripts/preinstall.js +38 -0
  94. package/server.pid +0 -1
@@ -0,0 +1,158 @@
1
+ import { Provide, Scope, ScopeEnum, Config, Inject } from '@midwayjs/core';
2
+ import { ISessionService, TencentService } from '@cicctencent/midwayjs-base';
3
+ import { Session, GetLoginSessionReq, GetLoginSessionRes, LogoutReq, LogoutRes, LoginByWxReq, LoginByWxRsp, LoginByAccountReq, LoginByAccountRsp } from '@fefeding/common/dist/models/account/session';
4
+
5
+ @Provide('session:service')
6
+ @Scope(ScopeEnum.Request, { allowDowngrade: true })
7
+ export class SessionService extends ISessionService {
8
+ @Config('loginOption')
9
+ loginOption: any;
10
+
11
+ @Inject()
12
+ tencentService: TencentService;
13
+
14
+ /**
15
+ * 根据ID获取session
16
+ * 并判断session是否在有效期
17
+ * @param id token唯一
18
+ */
19
+ async getLoginSession(id: string): Promise<Session> {
20
+ const req = new GetLoginSessionReq();
21
+ req.id = id;
22
+ const res = await this.requestBaseApi<GetLoginSessionRes>(req);
23
+ return res?.data || null;
24
+ }
25
+ /**
26
+ * 下线
27
+ * @param id 需要下线的id或者session
28
+ */
29
+ async logout(id: string): Promise<any> {
30
+ const req = new LogoutReq();
31
+ req.id = id;
32
+ const res = await this.requestBaseApi<LogoutRes>(req);
33
+ this.ctx.currentSession = null;
34
+ return res;
35
+ }
36
+
37
+ /**
38
+ * 登录接口
39
+ * @param loginParams 登录参数
40
+ * @returns
41
+ */
42
+ async loginByWx(loginParams: LoginByWxReq) {
43
+ const req = new LoginByWxReq();
44
+ req.fromJSON(loginParams);
45
+ const res = await this.requestBaseApi<LoginByWxRsp>(req);
46
+ return res;
47
+ }
48
+
49
+ /**
50
+ * 帐号登陆
51
+ * @param loginParams
52
+ * @returns
53
+ */
54
+ async loginByAccount(loginParams: LoginByAccountReq) {
55
+ loginParams.appId = '0';//this.baseServiceOption.appId?.toString() || '0';
56
+
57
+ const req = new LoginByAccountReq();
58
+ req.fromJSON(loginParams);
59
+ const res = await this.requestBaseApi<LoginByAccountRsp>(req);
60
+ return res;
61
+ }
62
+
63
+ /**
64
+ * 用临时码登陆
65
+ * @param code 登陆临时码
66
+ * @returns
67
+ */
68
+ async loginByCode(code: string) {
69
+ const res = await this.requestBaseApi('/api/session/loginByAuthCode', {
70
+ data: {
71
+ code
72
+ }
73
+ });
74
+ return res?.data || null;
75
+ }
76
+
77
+ /**
78
+ * 生成临时登陆码
79
+ * @param id 登陆token
80
+ * @returns
81
+ */
82
+ async createAuthCode(id: string) {
83
+ const res = await this.requestBaseApi('/api/session/createAuthCode', {
84
+ data: {
85
+ id
86
+ }
87
+ });
88
+ return res;
89
+ }
90
+
91
+ // 生成登陆用公众号二维码
92
+ // 先生成一个验证码,当用户扫码后,事件回调获取验证码后再生成session
93
+ async createWxLoginQrcode() {
94
+
95
+ const res = await this.requestBaseApi('/api/session/createWxLoginQrcode', {
96
+ data: {
97
+ appId: this.loginOption.wxAppId
98
+ }
99
+ });
100
+ //console.log(res);
101
+ return res;
102
+ }
103
+
104
+ // 验证码登陆
105
+ async loginByVerifyCode(code: string, appId?: number,prefix?: string) {
106
+ if(!code) throw Error('code不可为空');
107
+ appId = appId || this.loginOption.wxAppId;
108
+
109
+ const res = await this.requestBaseApi('/api/session/loginByVerifyCode', {
110
+ data: {
111
+ appId,
112
+ code,
113
+ prefix
114
+ }
115
+ });
116
+ return res;
117
+ }
118
+
119
+ // 更新用户信息
120
+ async updateUser(user: any) {
121
+ const userId = this.ctx.currentSession?.userId || 0;
122
+ if(!userId) return;
123
+ //console.log(loginParams, req);
124
+ const res = await this.requestBaseApi('/api/account/updateUser', {
125
+ data: {
126
+ user: {
127
+ ...user,
128
+ id: userId,
129
+ }
130
+ },
131
+ params: {
132
+ token: this.ctx.currentSession?.id
133
+ }
134
+ });
135
+ console.log('updateUser', res);
136
+ return res;
137
+ }
138
+
139
+ // 上传头像图片
140
+ async uploadAvatar(file: any) {
141
+
142
+ const userId = this.ctx.currentSession?.userId || 0;
143
+ if(!userId) return;
144
+
145
+ let filename = file['filename'] as string || '1.png';
146
+
147
+ const key = `avator/${userId}/${filename}`;
148
+
149
+ const res = await this.tencentService.uploadCosFile(key, file.data);
150
+ console.log(res);
151
+ const user = {
152
+ id: userId,
153
+ avatar: res.url || key,
154
+ }
155
+
156
+ return await this.updateUser(user);
157
+ }
158
+ }
@@ -0,0 +1,45 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <base href="" />
6
+ <script type="text/template" id="__INITIAL_STATE__">
7
+ {{ data | dump | safe }}
8
+ </script>
9
+ <script type="text/template" id="__DEFAULTINITIAL_STATE__">
10
+ {"config":{"prefix":"","apiUrl":""},"sso":{"baseUrl":"","appId":2}}
11
+ </script>
12
+ <script>
13
+ function __get_templateJson(id) {
14
+ try {
15
+ var tag = document.getElementById(id);
16
+ var obj = JSON.parse(tag.innerHTML);
17
+ return obj;
18
+ }
19
+ catch (e) {
20
+ return null;
21
+ }
22
+ }
23
+ var __INITIAL_STATE__ = __get_templateJson('__INITIAL_STATE__');
24
+ if(!__INITIAL_STATE__) __INITIAL_STATE__ = __get_templateJson('__DEFAULTINITIAL_STATE__');
25
+ </script>
26
+ <link rel="icon" href="/public/favicon.png" />
27
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
28
+ <title>fdb2-数据库管理</title>
29
+ <meta name="description" content="{{description}}">
30
+ <script>
31
+ window.addEventListener('vite:preloadError', function (event) {
32
+ console.error(event);
33
+ });
34
+ </script>
35
+ <script type="module" crossorigin src="/public/index.js"></script>
36
+ <link rel="modulepreload" crossorigin href="/public/vue.js">
37
+ <link rel="modulepreload" crossorigin href="/public/bootstrap.js">
38
+ <link rel="stylesheet" crossorigin href="/public/vue.css">
39
+ <link rel="stylesheet" crossorigin href="/public/bootstrap.css">
40
+ <link rel="stylesheet" crossorigin href="/public/index.css">
41
+ </head>
42
+ <body>
43
+ <div id="app" class="min-vh-100"></div>
44
+ </body>
45
+ </html>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fdb2",
3
- "version": "1.0.2",
3
+ "version": "1.0.4",
4
4
  "private": false,
5
5
  "type": "commonjs",
6
6
  "main": "view/index.html",
@@ -16,6 +16,7 @@
16
16
  "icon": "public/favicon.ico"
17
17
  },
18
18
  "scripts": {
19
+ "preinstall": "node scripts/preinstall.js",
19
20
  "start": "pm2 start server.js --name fdb2-server --disable-logs --",
20
21
  "restart": "pm2 restart fdb2-server --disable-logs --",
21
22
  "stop": "pm2 stop fdb2-server --",
@@ -0,0 +1,38 @@
1
+ const { execSync } = require('child_process');
2
+ const path = require('path');
3
+ const fs = require('fs');
4
+
5
+ console.log('Checking for running fdb2 instances...');
6
+
7
+ try {
8
+ const projectRoot = path.resolve(__dirname, '..');
9
+ const pidFilePath = path.join(projectRoot, 'server.pid');
10
+
11
+ if (fs.existsSync(pidFilePath)) {
12
+ try {
13
+ const pid = parseInt(fs.readFileSync(pidFilePath, 'utf8'));
14
+ process.kill(pid, 0);
15
+ console.log('Found running fdb2 instance with PID:', pid);
16
+ console.log('Stopping fdb2...');
17
+
18
+ try {
19
+ execSync('node bin/fdb2.js stop', {
20
+ cwd: projectRoot,
21
+ stdio: 'inherit'
22
+ });
23
+ console.log('fdb2 stopped successfully');
24
+ } catch (stopError) {
25
+ console.warn('Failed to stop fdb2:', stopError.message);
26
+ }
27
+ } catch (error) {
28
+ if (error.code === 'ESRCH') {
29
+ console.log('Cleaning up stale PID file...');
30
+ fs.unlinkSync(pidFilePath);
31
+ }
32
+ }
33
+ } else {
34
+ console.log('No running fdb2 instance found');
35
+ }
36
+ } catch (error) {
37
+ console.warn('Pre-install check failed:', error.message);
38
+ }
package/server.pid DELETED
@@ -1 +0,0 @@
1
- 7684