@etsoo/smarterp-core 1.1.15 → 1.1.16

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.
@@ -24,6 +24,7 @@ import { OrgUpdateApiReadDto } from "./dto/org/OrgUpdateApiReadDto";
24
24
  import { OrgQueryApiRQ } from "./rq/org/OrgQueryApiRQ";
25
25
  import { OrgQueryApiData } from "./dto/org/OrgQueryApiData";
26
26
  import { CoreApiService } from "./dto/org/CoreApiService";
27
+ import { UploadFilesResult } from "./dto/org/UploadFilesResult";
27
28
  /**
28
29
  * Organization API
29
30
  * 机构接口
@@ -208,6 +209,15 @@ export declare class OrgApi extends EntityApi {
208
209
  * @returns Result
209
210
  */
210
211
  updateApiRead(id: number, payload?: IApiPayload<OrgUpdateApiReadDto>): Promise<OrgUpdateApiReadDto | undefined>;
212
+ /**
213
+ * Upload files
214
+ * @param id Target id
215
+ * @param folder Target folder
216
+ * @param files Files
217
+ * @param action Action data
218
+ * @param payload Payload
219
+ */
220
+ uploadFiles(id: number, folder: string, files: FileList, action: AppActionData, payload?: IApiPayload<UploadFilesResult>): Promise<UploadFilesResult | undefined>;
211
221
  /**
212
222
  * Upload profle attachments
213
223
  * @param id Profile id
package/lib/cjs/OrgApi.js CHANGED
@@ -248,6 +248,23 @@ class OrgApi extends appscript_1.EntityApi {
248
248
  updateApiRead(id, payload) {
249
249
  return this.api.get(`${this.flag}/UpdateApiRead/${id}`, undefined, payload);
250
250
  }
251
+ /**
252
+ * Upload files
253
+ * @param id Target id
254
+ * @param folder Target folder
255
+ * @param files Files
256
+ * @param action Action data
257
+ * @param payload Payload
258
+ */
259
+ uploadFiles(id, folder, files, action, payload) {
260
+ const formData = new FormData();
261
+ formData.append("folder", folder);
262
+ formData.append("sign", JSON.stringify(action));
263
+ for (let i = 0; i < files.length; i++) {
264
+ formData.append("files", files[i]);
265
+ }
266
+ return this.api.post(`${this.flag}/UploadFiles/${id}`, formData, payload);
267
+ }
251
268
  /**
252
269
  * Upload profle attachments
253
270
  * @param id Profile id
@@ -0,0 +1,14 @@
1
+ import { IActionResult } from "@etsoo/shared";
2
+ /**
3
+ * Upload files result
4
+ */
5
+ export type UploadFilesResult = IActionResult<{
6
+ /**
7
+ * Relative paths
8
+ */
9
+ paths: string[];
10
+ /**
11
+ * URLs
12
+ */
13
+ urls: string[];
14
+ }>;
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
@@ -24,6 +24,7 @@ import { OrgUpdateApiReadDto } from "./dto/org/OrgUpdateApiReadDto";
24
24
  import { OrgQueryApiRQ } from "./rq/org/OrgQueryApiRQ";
25
25
  import { OrgQueryApiData } from "./dto/org/OrgQueryApiData";
26
26
  import { CoreApiService } from "./dto/org/CoreApiService";
27
+ import { UploadFilesResult } from "./dto/org/UploadFilesResult";
27
28
  /**
28
29
  * Organization API
29
30
  * 机构接口
@@ -208,6 +209,15 @@ export declare class OrgApi extends EntityApi {
208
209
  * @returns Result
209
210
  */
210
211
  updateApiRead(id: number, payload?: IApiPayload<OrgUpdateApiReadDto>): Promise<OrgUpdateApiReadDto | undefined>;
212
+ /**
213
+ * Upload files
214
+ * @param id Target id
215
+ * @param folder Target folder
216
+ * @param files Files
217
+ * @param action Action data
218
+ * @param payload Payload
219
+ */
220
+ uploadFiles(id: number, folder: string, files: FileList, action: AppActionData, payload?: IApiPayload<UploadFilesResult>): Promise<UploadFilesResult | undefined>;
211
221
  /**
212
222
  * Upload profle attachments
213
223
  * @param id Profile id
package/lib/mjs/OrgApi.js CHANGED
@@ -245,6 +245,23 @@ export class OrgApi extends EntityApi {
245
245
  updateApiRead(id, payload) {
246
246
  return this.api.get(`${this.flag}/UpdateApiRead/${id}`, undefined, payload);
247
247
  }
248
+ /**
249
+ * Upload files
250
+ * @param id Target id
251
+ * @param folder Target folder
252
+ * @param files Files
253
+ * @param action Action data
254
+ * @param payload Payload
255
+ */
256
+ uploadFiles(id, folder, files, action, payload) {
257
+ const formData = new FormData();
258
+ formData.append("folder", folder);
259
+ formData.append("sign", JSON.stringify(action));
260
+ for (let i = 0; i < files.length; i++) {
261
+ formData.append("files", files[i]);
262
+ }
263
+ return this.api.post(`${this.flag}/UploadFiles/${id}`, formData, payload);
264
+ }
248
265
  /**
249
266
  * Upload profle attachments
250
267
  * @param id Profile id
@@ -0,0 +1,14 @@
1
+ import { IActionResult } from "@etsoo/shared";
2
+ /**
3
+ * Upload files result
4
+ */
5
+ export type UploadFilesResult = IActionResult<{
6
+ /**
7
+ * Relative paths
8
+ */
9
+ paths: string[];
10
+ /**
11
+ * URLs
12
+ */
13
+ urls: string[];
14
+ }>;
@@ -0,0 +1 @@
1
+ export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@etsoo/smarterp-core",
3
- "version": "1.1.15",
3
+ "version": "1.1.16",
4
4
  "description": "TypeScript APIs for SmartERP Core",
5
5
  "main": "lib/cjs/index.js",
6
6
  "module": "lib/mjs/index.js",
@@ -45,12 +45,12 @@
45
45
  "@babel/plugin-transform-runtime": "^7.28.5",
46
46
  "@babel/preset-env": "^7.28.6",
47
47
  "@babel/runtime-corejs3": "^7.28.6",
48
- "@types/react": "^19.2.9",
48
+ "@types/react": "^19.2.10",
49
49
  "@types/react-dom": "^19.2.3",
50
50
  "@vitejs/plugin-react": "^5.1.2",
51
51
  "jsdom": "^27.4.0",
52
52
  "typescript": "^5.9.3",
53
- "vitest": "^4.0.17"
53
+ "vitest": "^4.0.18"
54
54
  },
55
55
  "overrides": {
56
56
  "react": "$react",
@@ -58,14 +58,14 @@
58
58
  },
59
59
  "dependencies": {
60
60
  "@etsoo/appscript": "^1.6.53",
61
- "@etsoo/materialui": "^1.6.7",
62
- "@etsoo/react": "^1.8.71",
61
+ "@etsoo/materialui": "^1.6.10",
62
+ "@etsoo/react": "^1.8.72",
63
63
  "@etsoo/shared": "^1.2.80",
64
64
  "@etsoo/toolpad": "^1.0.44",
65
65
  "@mui/material": "^7.3.7",
66
66
  "ajv": "^8.17.1",
67
67
  "ajv-formats": "^3.0.1",
68
- "react": "^19.2.3",
69
- "react-dom": "^19.2.3"
68
+ "react": "^19.2.4",
69
+ "react-dom": "^19.2.4"
70
70
  }
71
71
  }
package/src/OrgApi.ts CHANGED
@@ -34,6 +34,7 @@ import { OrgUpdateApiReadDto } from "./dto/org/OrgUpdateApiReadDto";
34
34
  import { OrgQueryApiRQ } from "./rq/org/OrgQueryApiRQ";
35
35
  import { OrgQueryApiData } from "./dto/org/OrgQueryApiData";
36
36
  import { CoreApiService } from "./dto/org/CoreApiService";
37
+ import { UploadFilesResult } from "./dto/org/UploadFilesResult";
37
38
 
38
39
  /**
39
40
  * Organization API
@@ -323,6 +324,32 @@ export class OrgApi extends EntityApi {
323
324
  return this.api.get(`${this.flag}/UpdateApiRead/${id}`, undefined, payload);
324
325
  }
325
326
 
327
+ /**
328
+ * Upload files
329
+ * @param id Target id
330
+ * @param folder Target folder
331
+ * @param files Files
332
+ * @param action Action data
333
+ * @param payload Payload
334
+ */
335
+ uploadFiles(
336
+ id: number,
337
+ folder: string,
338
+ files: FileList,
339
+ action: AppActionData,
340
+ payload?: IApiPayload<UploadFilesResult>
341
+ ) {
342
+ const formData = new FormData();
343
+ formData.append("folder", folder);
344
+ formData.append("sign", JSON.stringify(action));
345
+
346
+ for (let i = 0; i < files.length; i++) {
347
+ formData.append("files", files[i]);
348
+ }
349
+
350
+ return this.api.post(`${this.flag}/UploadFiles/${id}`, formData, payload);
351
+ }
352
+
326
353
  /**
327
354
  * Upload profle attachments
328
355
  * @param id Profile id
@@ -0,0 +1,16 @@
1
+ import { IActionResult } from "@etsoo/shared";
2
+
3
+ /**
4
+ * Upload files result
5
+ */
6
+ export type UploadFilesResult = IActionResult<{
7
+ /**
8
+ * Relative paths
9
+ */
10
+ paths: string[];
11
+
12
+ /**
13
+ * URLs
14
+ */
15
+ urls: string[];
16
+ }>;