namirasoft-field-node 1.4.7 → 1.4.9
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.
- package/dist/controller/NSFController.d.ts +4 -0
- package/dist/controller/NSFController.js +13 -0
- package/dist/controller/NSFController.js.map +1 -0
- package/dist/controller/NSFInputRow.d.ts +6 -0
- package/dist/controller/NSFInputRow.js +3 -0
- package/dist/controller/NSFInputRow.js.map +1 -0
- package/dist/controller/entity_category/Create.d.ts +2 -1
- package/dist/controller/entity_category/Create.js +5 -4
- package/dist/controller/entity_category/Create.js.map +1 -1
- package/dist/controller/entity_field/Create.d.ts +2 -1
- package/dist/controller/entity_field/Create.js +6 -6
- package/dist/controller/entity_field/Create.js.map +1 -1
- package/dist/controller/entity_field/Update.js +5 -6
- package/dist/controller/entity_field/Update.js.map +1 -1
- package/dist/controller/entity_tag/Create.d.ts +2 -1
- package/dist/controller/entity_tag/Create.js +5 -4
- package/dist/controller/entity_tag/Create.js.map +1 -1
- package/dist/controller/entity_tag/Update.js +4 -4
- package/dist/controller/entity_tag/Update.js.map +1 -1
- package/dist/database/FieldDatabaseTables.d.ts +6 -1
- package/dist/database/FieldDatabaseTables.js +40 -0
- package/dist/database/FieldDatabaseTables.js.map +1 -1
- package/dist/database/attributes/EntityFieldAttributes.js +1 -2
- package/dist/database/attributes/EntityFieldAttributes.js.map +1 -1
- package/dist/database/model/EntityFieldModel.d.ts +0 -1
- package/dist/database/model/EntityFieldModel.js.map +1 -1
- package/dist/database/table/EntityCategoryTable.d.ts +3 -3
- package/dist/database/table/EntityCategoryTable.js +1 -0
- package/dist/database/table/EntityCategoryTable.js.map +1 -1
- package/dist/database/table/EntityFieldTable.d.ts +3 -3
- package/dist/database/table/EntityFieldTable.js +3 -4
- package/dist/database/table/EntityFieldTable.js.map +1 -1
- package/dist/database/table/EntityTagTable.d.ts +3 -3
- package/dist/database/table/EntityTagTable.js +1 -0
- package/dist/database/table/EntityTagTable.js.map +1 -1
- package/package.json +6 -6
- package/src/controller/NSFController.ts +13 -0
- package/src/controller/NSFInputRow.ts +8 -0
- package/src/controller/entity_category/Create.ts +5 -4
- package/src/controller/entity_field/Create.ts +6 -6
- package/src/controller/entity_field/Update.ts +5 -6
- package/src/controller/entity_tag/Create.ts +5 -4
- package/src/controller/entity_tag/Update.ts +4 -4
- package/src/database/FieldDatabaseTables.ts +33 -1
- package/src/database/attributes/EntityFieldAttributes.ts +1 -2
- package/src/database/model/EntityFieldModel.ts +0 -1
- package/src/database/table/EntityCategoryTable.ts +4 -3
- package/src/database/table/EntityFieldTable.ts +4 -5
- package/src/database/table/EntityTagTable.ts +4 -3
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.NSFController = void 0;
|
|
4
|
+
class NSFController {
|
|
5
|
+
static handle_getCategoryFieldTag(name, body) {
|
|
6
|
+
let categories = body[`${name}_category`] || [];
|
|
7
|
+
let fields = body[`${name}_field`] || [];
|
|
8
|
+
let tags = body[`${name}_tag`] || [];
|
|
9
|
+
return { categories, fields, tags };
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.NSFController = NSFController;
|
|
13
|
+
//# sourceMappingURL=NSFController.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NSFController.js","sourceRoot":"","sources":["../../src/controller/NSFController.ts"],"names":[],"mappings":";;;AAGA,MAAa,aAAa;IAEtB,MAAM,CAAC,0BAA0B,CAAC,IAAY,EAAE,IAAS;QAErD,IAAI,UAAU,GAA6B,IAAI,CAAC,GAAG,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC;QAC1E,IAAI,MAAM,GAA0B,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC;QAChE,IAAI,IAAI,GAAwB,IAAI,CAAC,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACxC,CAAC;CACJ;AATD,sCASC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"NSFInputRow.js","sourceRoot":"","sources":["../../src/controller/NSFInputRow.ts"],"names":[],"mappings":""}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { HTTPMethod } from "namirasoft-core";
|
|
2
2
|
import { EntityCategoryModel } from "../../database/model/EntityCategoryModel";
|
|
3
3
|
import { BaseEntityFieldController } from "../BaseEntityFieldController";
|
|
4
|
+
import { BaseVariableSchema } from "namirasoft-schema";
|
|
4
5
|
export declare class Create extends BaseEntityFieldController<EntityCategoryModel> {
|
|
5
6
|
getInfo(): {
|
|
6
7
|
name: string;
|
|
@@ -9,7 +10,7 @@ export declare class Create extends BaseEntityFieldController<EntityCategoryMode
|
|
|
9
10
|
path: string;
|
|
10
11
|
summary: string;
|
|
11
12
|
};
|
|
12
|
-
getParametersSchema(): Promise<
|
|
13
|
+
getParametersSchema(): Promise<BaseVariableSchema[]>;
|
|
13
14
|
getQueriesSchema(): Promise<never[]>;
|
|
14
15
|
getBodySchema(): Promise<import("namirasoft-schema").ObjectSchema>;
|
|
15
16
|
getOutputSchema(): Promise<import("namirasoft-schema").ObjectSchema>;
|
|
@@ -13,19 +13,20 @@ exports.Create = void 0;
|
|
|
13
13
|
const namirasoft_core_1 = require("namirasoft-core");
|
|
14
14
|
const BaseEntityFieldController_1 = require("../BaseEntityFieldController");
|
|
15
15
|
const EntityCategoryNames_1 = require("../../enum/EntityCategoryNames");
|
|
16
|
+
const namirasoft_schema_1 = require("namirasoft-schema");
|
|
16
17
|
class Create extends BaseEntityFieldController_1.BaseEntityFieldController {
|
|
17
18
|
getInfo() {
|
|
18
19
|
return {
|
|
19
20
|
name: "Create",
|
|
20
21
|
tag: this.tagPrefix + "Category",
|
|
21
22
|
method: namirasoft_core_1.HTTPMethod.POST,
|
|
22
|
-
path: this.pathPrefix + "/category",
|
|
23
|
-
summary: `Creates a new ${this.namePrefix} category`
|
|
23
|
+
path: this.pathPrefix + "/category/{entity_id}",
|
|
24
|
+
summary: `Creates a new ${this.namePrefix} category for an entity`
|
|
24
25
|
};
|
|
25
26
|
}
|
|
26
27
|
getParametersSchema() {
|
|
27
28
|
return __awaiter(this, void 0, void 0, function* () {
|
|
28
|
-
return [];
|
|
29
|
+
return [new namirasoft_schema_1.BaseVariableSchema("entity_id", new namirasoft_schema_1.StringSchema(true))];
|
|
29
30
|
});
|
|
30
31
|
}
|
|
31
32
|
getQueriesSchema() {
|
|
@@ -56,7 +57,7 @@ class Create extends BaseEntityFieldController_1.BaseEntityFieldController {
|
|
|
56
57
|
}
|
|
57
58
|
handle() {
|
|
58
59
|
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
-
let entity_id = new namirasoft_core_1.ObjectService(this.req.
|
|
60
|
+
let entity_id = new namirasoft_core_1.ObjectService(this.req.params.entity_id).getString();
|
|
60
61
|
let category_id = new namirasoft_core_1.ObjectService(this.req.body.category_id).getString();
|
|
61
62
|
let ans = yield this.tables.entity_category.create(this.props.access, this.props.session, this.props.access.owner_id, entity_id, category_id, null);
|
|
62
63
|
return yield this.tables.entity_category.secure(ans);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Create.js","sourceRoot":"","sources":["../../../src/controller/entity_category/Create.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4D;AAE5D,4EAAyE;AACzE,wEAAqE;AAErE,MAAa,MAAO,SAAQ,qDAA8C;IAEhE,OAAO;QAEf,OAAO;YACN,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,UAAU;YAChC,MAAM,EAAE,4BAAU,CAAC,IAAI;YACvB,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"Create.js","sourceRoot":"","sources":["../../../src/controller/entity_category/Create.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4D;AAE5D,4EAAyE;AACzE,wEAAqE;AACrE,yDAAqE;AAErE,MAAa,MAAO,SAAQ,qDAA8C;IAEhE,OAAO;QAEf,OAAO;YACN,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,UAAU;YAChC,MAAM,EAAE,4BAAU,CAAC,IAAI;YACvB,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,uBAAuB;YAC/C,OAAO,EAAE,iBAAiB,IAAI,CAAC,UAAU,yBAAyB;SAClE,CAAC;IACH,CAAC;IACc,mBAAmB;;YAEjC,OAAO,CAAC,IAAI,sCAAkB,CAAC,WAAW,EAAE,IAAI,gCAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtE,CAAC;KAAA;IACc,gBAAgB;;YAE9B,OAAO,EAAE,CAAC;QACX,CAAC;KAAA;IACc,aAAa;;YAE3B,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,eAAe,CAAC,IAAI,EAAE,yCAAmB,CAAC,mBAAmB,CAAC,CAAC;QACnG,CAAC;KAAA;IACc,eAAe;;YAE7B,OAAO,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QAC1D,CAAC;KAAA;IACc,QAAQ;;YAEtB,OAAO;gBACN,UAAU,EAAE,IAAI;gBAChB,aAAa,EAAE,KAAK;aACpB,CAAC;QACH,CAAC;KAAA;IACQ,KAAK;QAEb,OAAO,IAAI,CAAC;IACb,CAAC;IACc,MAAM;;YAEpB,IAAI,SAAS,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC;YACzE,IAAI,WAAW,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,CAAC;YAE3E,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;YACpJ,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACtD,CAAC;KAAA;CACD;AA/CD,wBA+CC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { HTTPMethod } from "namirasoft-core";
|
|
2
2
|
import { BaseEntityFieldController } from "../BaseEntityFieldController";
|
|
3
3
|
import { EntityFieldModel } from "../../database/model/EntityFieldModel";
|
|
4
|
+
import { BaseVariableSchema } from "namirasoft-schema";
|
|
4
5
|
export declare class Create extends BaseEntityFieldController<EntityFieldModel> {
|
|
5
6
|
getInfo(): {
|
|
6
7
|
name: string;
|
|
@@ -9,7 +10,7 @@ export declare class Create extends BaseEntityFieldController<EntityFieldModel>
|
|
|
9
10
|
path: string;
|
|
10
11
|
summary: string;
|
|
11
12
|
};
|
|
12
|
-
getParametersSchema(): Promise<
|
|
13
|
+
getParametersSchema(): Promise<BaseVariableSchema[]>;
|
|
13
14
|
getQueriesSchema(): Promise<never[]>;
|
|
14
15
|
getBodySchema(): Promise<import("namirasoft-schema").ObjectSchema>;
|
|
15
16
|
getOutputSchema(): Promise<import("namirasoft-schema").ObjectSchema>;
|
|
@@ -13,19 +13,20 @@ exports.Create = void 0;
|
|
|
13
13
|
const namirasoft_core_1 = require("namirasoft-core");
|
|
14
14
|
const BaseEntityFieldController_1 = require("../BaseEntityFieldController");
|
|
15
15
|
const EntityFieldNames_1 = require("../../enum/EntityFieldNames");
|
|
16
|
+
const namirasoft_schema_1 = require("namirasoft-schema");
|
|
16
17
|
class Create extends BaseEntityFieldController_1.BaseEntityFieldController {
|
|
17
18
|
getInfo() {
|
|
18
19
|
return {
|
|
19
20
|
name: "Create",
|
|
20
21
|
tag: this.tagPrefix + "Field",
|
|
21
22
|
method: namirasoft_core_1.HTTPMethod.POST,
|
|
22
|
-
path: this.pathPrefix + "/field",
|
|
23
|
-
summary: `Creates a new ${this.namePrefix} field`
|
|
23
|
+
path: this.pathPrefix + "/field/{entity_id}",
|
|
24
|
+
summary: `Creates a new ${this.namePrefix} field for an entity`
|
|
24
25
|
};
|
|
25
26
|
}
|
|
26
27
|
getParametersSchema() {
|
|
27
28
|
return __awaiter(this, void 0, void 0, function* () {
|
|
28
|
-
return [];
|
|
29
|
+
return [new namirasoft_schema_1.BaseVariableSchema("entity_id", new namirasoft_schema_1.StringSchema(true))];
|
|
29
30
|
});
|
|
30
31
|
}
|
|
31
32
|
getQueriesSchema() {
|
|
@@ -56,11 +57,10 @@ class Create extends BaseEntityFieldController_1.BaseEntityFieldController {
|
|
|
56
57
|
}
|
|
57
58
|
handle() {
|
|
58
59
|
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
-
let entity_id = new namirasoft_core_1.ObjectService(this.req.
|
|
60
|
+
let entity_id = new namirasoft_core_1.ObjectService(this.req.params.entity_id).getString();
|
|
60
61
|
let field_id = new namirasoft_core_1.ObjectService(this.req.body.field_id).getString();
|
|
61
62
|
let value = new namirasoft_core_1.ObjectService(this.req.body.value).getString();
|
|
62
|
-
let
|
|
63
|
-
let ans = yield this.tables.entity_field.create(this.props.access, this.props.session, this.props.access.owner_id, entity_id, field_id, value, description, null);
|
|
63
|
+
let ans = yield this.tables.entity_field.create(this.props.access, this.props.session, this.props.access.owner_id, entity_id, field_id, value, null);
|
|
64
64
|
return yield this.tables.entity_field.secure(ans);
|
|
65
65
|
});
|
|
66
66
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Create.js","sourceRoot":"","sources":["../../../src/controller/entity_field/Create.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4D;AAC5D,4EAAyE;AAEzE,kEAA+D;AAC/D,MAAa,MAAO,SAAQ,qDAA2C;IAE7D,OAAO;QAEf,OAAO;YACN,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,OAAO;YAC7B,MAAM,EAAE,4BAAU,CAAC,IAAI;YACvB,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"Create.js","sourceRoot":"","sources":["../../../src/controller/entity_field/Create.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4D;AAC5D,4EAAyE;AAEzE,kEAA+D;AAC/D,yDAAqE;AACrE,MAAa,MAAO,SAAQ,qDAA2C;IAE7D,OAAO;QAEf,OAAO;YACN,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,OAAO;YAC7B,MAAM,EAAE,4BAAU,CAAC,IAAI;YACvB,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,oBAAoB;YAC5C,OAAO,EAAE,iBAAiB,IAAI,CAAC,UAAU,sBAAsB;SAC/D,CAAC;IACH,CAAC;IACc,mBAAmB;;YAEjC,OAAO,CAAC,IAAI,sCAAkB,CAAC,WAAW,EAAE,IAAI,gCAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtE,CAAC;KAAA;IACc,gBAAgB;;YAE9B,OAAO,EAAE,CAAC;QACX,CAAC;KAAA;IACc,aAAa;;YAE3B,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,EAAE,mCAAgB,CAAC,gBAAgB,CAAC,CAAC;QAC1F,CAAC;KAAA;IACc,eAAe;;YAE7B,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACvD,CAAC;KAAA;IACc,QAAQ;;YAEtB,OAAO;gBACN,UAAU,EAAE,IAAI;gBAChB,aAAa,EAAE,KAAK;aACpB,CAAC;QACH,CAAC;KAAA;IACQ,KAAK;QAEb,OAAO,IAAI,CAAC;IACb,CAAC;IACc,MAAM;;YAEpB,IAAI,SAAS,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC;YACzE,IAAI,QAAQ,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAC;YACrE,IAAI,KAAK,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC;YAE/D,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACrJ,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACnD,CAAC;KAAA;CACD;AAhDD,wBAgDC"}
|
|
@@ -20,13 +20,13 @@ class Update extends BaseEntityFieldController_1.BaseEntityFieldController {
|
|
|
20
20
|
name: "Update",
|
|
21
21
|
tag: this.tagPrefix + "Field",
|
|
22
22
|
method: namirasoft_core_1.HTTPMethod.PUT,
|
|
23
|
-
path: this.pathPrefix + "/field/{id}",
|
|
24
|
-
summary: `Updates a ${this.namePrefix} field by an id`
|
|
23
|
+
path: this.pathPrefix + "/field/{id}/{entity_id}",
|
|
24
|
+
summary: `Updates a ${this.namePrefix} field by an id for an entity`
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
27
|
getParametersSchema() {
|
|
28
28
|
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
-
return [new namirasoft_schema_1.BaseVariableSchema("id", new namirasoft_schema_1.StringSchema(true))];
|
|
29
|
+
return [new namirasoft_schema_1.BaseVariableSchema("id", new namirasoft_schema_1.StringSchema(true)), new namirasoft_schema_1.BaseVariableSchema("entity_id", new namirasoft_schema_1.StringSchema(true))];
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
32
|
getQueriesSchema() {
|
|
@@ -58,11 +58,10 @@ class Update extends BaseEntityFieldController_1.BaseEntityFieldController {
|
|
|
58
58
|
handle() {
|
|
59
59
|
return __awaiter(this, void 0, void 0, function* () {
|
|
60
60
|
let id = new namirasoft_core_1.ObjectService(this.req.params.id).getString();
|
|
61
|
-
let entity_id = new namirasoft_core_1.ObjectService(this.req.
|
|
61
|
+
let entity_id = new namirasoft_core_1.ObjectService(this.req.params.entity_id).getString();
|
|
62
62
|
let field_id = new namirasoft_core_1.ObjectService(this.req.body.field_id).getString();
|
|
63
63
|
let value = new namirasoft_core_1.ObjectService(this.req.body.value).getString();
|
|
64
|
-
let
|
|
65
|
-
let ans = yield this.tables.entity_field.update(this.props.access, this.props.session, this.props.access.owner_id, id, entity_id, field_id, value, description, null);
|
|
64
|
+
let ans = yield this.tables.entity_field.update(this.props.access, this.props.session, this.props.access.owner_id, id, entity_id, field_id, value, null);
|
|
66
65
|
return yield this.tables.entity_field.secure(ans);
|
|
67
66
|
});
|
|
68
67
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Update.js","sourceRoot":"","sources":["../../../src/controller/entity_field/Update.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4D;AAC5D,4EAAyE;AACzE,yDAAqE;AACrE,kEAA+D;AAC/D,MAAa,MAAO,SAAQ,qDAAiC;IAEnD,OAAO;QAEf,OAAO;YACN,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,OAAO;YAC7B,MAAM,EAAE,4BAAU,CAAC,GAAG;YACtB,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"Update.js","sourceRoot":"","sources":["../../../src/controller/entity_field/Update.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4D;AAC5D,4EAAyE;AACzE,yDAAqE;AACrE,kEAA+D;AAC/D,MAAa,MAAO,SAAQ,qDAAiC;IAEnD,OAAO;QAEf,OAAO;YACN,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,OAAO;YAC7B,MAAM,EAAE,4BAAU,CAAC,GAAG;YACtB,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,yBAAyB;YACjD,OAAO,EAAE,aAAa,IAAI,CAAC,UAAU,+BAA+B;SACpE,CAAC;IACH,CAAC;IACc,mBAAmB;;YAEjC,OAAO,CAAC,IAAI,sCAAkB,CAAC,IAAI,EAAE,IAAI,gCAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,sCAAkB,CAAC,WAAW,EAAE,IAAI,gCAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5H,CAAC;KAAA;IACc,gBAAgB;;YAE9B,OAAO,EAAE,CAAC;QACX,CAAC;KAAA;IACc,aAAa;;YAE3B,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,EAAE,mCAAgB,CAAC,gBAAgB,CAAC,CAAC;QAC1F,CAAC;KAAA;IACc,eAAe;;YAE7B,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACvD,CAAC;KAAA;IACc,QAAQ;;YAEtB,OAAO;gBACN,UAAU,EAAE,IAAI;gBAChB,aAAa,EAAE,KAAK;aACpB,CAAC;QACH,CAAC;KAAA;IACQ,KAAK;QAEb,OAAO,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;IAC1D,CAAC;IACc,MAAM;;YAEpB,IAAI,EAAE,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;YAE3D,IAAI,SAAS,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC;YACzE,IAAI,QAAQ,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,SAAS,EAAE,CAAC;YACrE,IAAI,KAAK,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC;YAE/D,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;YACzJ,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACnD,CAAC;KAAA;CACD;AAlDD,wBAkDC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { HTTPMethod } from "namirasoft-core";
|
|
2
2
|
import { BaseEntityFieldController } from "../BaseEntityFieldController";
|
|
3
3
|
import { EntityTagModel } from "../../database/model/EntityTagModel";
|
|
4
|
+
import { BaseVariableSchema } from "namirasoft-schema";
|
|
4
5
|
export declare class Create extends BaseEntityFieldController<EntityTagModel> {
|
|
5
6
|
getInfo(): {
|
|
6
7
|
name: string;
|
|
@@ -9,7 +10,7 @@ export declare class Create extends BaseEntityFieldController<EntityTagModel> {
|
|
|
9
10
|
path: string;
|
|
10
11
|
summary: string;
|
|
11
12
|
};
|
|
12
|
-
getParametersSchema(): Promise<
|
|
13
|
+
getParametersSchema(): Promise<BaseVariableSchema[]>;
|
|
13
14
|
getQueriesSchema(): Promise<never[]>;
|
|
14
15
|
getBodySchema(): Promise<import("namirasoft-schema").ObjectSchema>;
|
|
15
16
|
getOutputSchema(): Promise<import("namirasoft-schema").ObjectSchema>;
|
|
@@ -13,19 +13,20 @@ exports.Create = void 0;
|
|
|
13
13
|
const namirasoft_core_1 = require("namirasoft-core");
|
|
14
14
|
const BaseEntityFieldController_1 = require("../BaseEntityFieldController");
|
|
15
15
|
const EntityTagNames_1 = require("../../enum/EntityTagNames");
|
|
16
|
+
const namirasoft_schema_1 = require("namirasoft-schema");
|
|
16
17
|
class Create extends BaseEntityFieldController_1.BaseEntityFieldController {
|
|
17
18
|
getInfo() {
|
|
18
19
|
return {
|
|
19
20
|
name: "Create",
|
|
20
21
|
tag: this.tagPrefix + "Tag",
|
|
21
22
|
method: namirasoft_core_1.HTTPMethod.POST,
|
|
22
|
-
path: this.pathPrefix + "/tag",
|
|
23
|
-
summary: `Creates a new ${this.namePrefix} tag`
|
|
23
|
+
path: this.pathPrefix + "/tag/{entity_id}",
|
|
24
|
+
summary: `Creates a new ${this.namePrefix} tag for an entity`
|
|
24
25
|
};
|
|
25
26
|
}
|
|
26
27
|
getParametersSchema() {
|
|
27
28
|
return __awaiter(this, void 0, void 0, function* () {
|
|
28
|
-
return [];
|
|
29
|
+
return [new namirasoft_schema_1.BaseVariableSchema("entity_id", new namirasoft_schema_1.StringSchema(true))];
|
|
29
30
|
});
|
|
30
31
|
}
|
|
31
32
|
getQueriesSchema() {
|
|
@@ -56,7 +57,7 @@ class Create extends BaseEntityFieldController_1.BaseEntityFieldController {
|
|
|
56
57
|
}
|
|
57
58
|
handle() {
|
|
58
59
|
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
-
let entity_id = new namirasoft_core_1.ObjectService(this.req.
|
|
60
|
+
let entity_id = new namirasoft_core_1.ObjectService(this.req.params.entity_id).getString();
|
|
60
61
|
let name = new namirasoft_core_1.ObjectService(this.req.body.name).getString();
|
|
61
62
|
let value = new namirasoft_core_1.ObjectService(this.req.body.value).getString();
|
|
62
63
|
let description = new namirasoft_core_1.ObjectService(this.req.body.description).getString();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Create.js","sourceRoot":"","sources":["../../../src/controller/entity_tag/Create.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4D;AAC5D,4EAAyE;AAEzE,8DAA2D;AAC3D,MAAa,MAAO,SAAQ,qDAAyC;IAE3D,OAAO;QAEf,OAAO;YACN,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,KAAK;YAC3B,MAAM,EAAE,4BAAU,CAAC,IAAI;YACvB,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"Create.js","sourceRoot":"","sources":["../../../src/controller/entity_tag/Create.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4D;AAC5D,4EAAyE;AAEzE,8DAA2D;AAC3D,yDAAqE;AACrE,MAAa,MAAO,SAAQ,qDAAyC;IAE3D,OAAO;QAEf,OAAO;YACN,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,KAAK;YAC3B,MAAM,EAAE,4BAAU,CAAC,IAAI;YACvB,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,kBAAkB;YAC1C,OAAO,EAAE,iBAAiB,IAAI,CAAC,UAAU,oBAAoB;SAC7D,CAAC;IACH,CAAC;IACc,mBAAmB;;YAEjC,OAAO,CAAC,IAAI,sCAAkB,CAAC,WAAW,EAAE,IAAI,gCAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACtE,CAAC;KAAA;IACc,gBAAgB;;YAE9B,OAAO,EAAE,CAAC;QACX,CAAC;KAAA;IACc,aAAa;;YAE3B,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,+BAAc,CAAC,cAAc,CAAC,CAAC;QACpF,CAAC;KAAA;IACc,eAAe;;YAE7B,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACrD,CAAC;KAAA;IACc,QAAQ;;YAEtB,OAAO;gBACN,UAAU,EAAE,IAAI;gBAChB,aAAa,EAAE,KAAK;aACpB,CAAC;QACH,CAAC;KAAA;IACQ,KAAK;QAEb,OAAO,IAAI,CAAC;IACb,CAAC;IACc,MAAM;;YAEpB,IAAI,SAAS,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC;YACzE,IAAI,IAAI,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YAC7D,IAAI,KAAK,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC;YAC/D,IAAI,WAAW,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,CAAC;YAE3E,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;YAC5J,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC;KAAA;CACD;AAjDD,wBAiDC"}
|
|
@@ -20,13 +20,13 @@ class Update extends BaseEntityFieldController_1.BaseEntityFieldController {
|
|
|
20
20
|
name: "Update",
|
|
21
21
|
tag: this.tagPrefix + "Tag",
|
|
22
22
|
method: namirasoft_core_1.HTTPMethod.PUT,
|
|
23
|
-
path: this.pathPrefix + "/tag/{id}",
|
|
24
|
-
summary: `Updates a ${this.namePrefix} tag by an id`
|
|
23
|
+
path: this.pathPrefix + "/tag/{id}/{entity_id}",
|
|
24
|
+
summary: `Updates a ${this.namePrefix} tag by an id for an entity`
|
|
25
25
|
};
|
|
26
26
|
}
|
|
27
27
|
getParametersSchema() {
|
|
28
28
|
return __awaiter(this, void 0, void 0, function* () {
|
|
29
|
-
return [new namirasoft_schema_1.BaseVariableSchema("id", new namirasoft_schema_1.StringSchema(true))];
|
|
29
|
+
return [new namirasoft_schema_1.BaseVariableSchema("id", new namirasoft_schema_1.StringSchema(true)), new namirasoft_schema_1.BaseVariableSchema("entity_id", new namirasoft_schema_1.StringSchema(true))];
|
|
30
30
|
});
|
|
31
31
|
}
|
|
32
32
|
getQueriesSchema() {
|
|
@@ -58,7 +58,7 @@ class Update extends BaseEntityFieldController_1.BaseEntityFieldController {
|
|
|
58
58
|
handle() {
|
|
59
59
|
return __awaiter(this, void 0, void 0, function* () {
|
|
60
60
|
let id = new namirasoft_core_1.ObjectService(this.req.params.id).getString();
|
|
61
|
-
let entity_id = new namirasoft_core_1.ObjectService(this.req.
|
|
61
|
+
let entity_id = new namirasoft_core_1.ObjectService(this.req.params.entity_id).getString();
|
|
62
62
|
let name = new namirasoft_core_1.ObjectService(this.req.body.name).getString();
|
|
63
63
|
let value = new namirasoft_core_1.ObjectService(this.req.body.value).getString();
|
|
64
64
|
let description = new namirasoft_core_1.ObjectService(this.req.body.description).getString();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Update.js","sourceRoot":"","sources":["../../../src/controller/entity_tag/Update.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4D;AAC5D,4EAAyE;AACzE,yDAAqE;AACrE,8DAA2D;AAC3D,MAAa,MAAO,SAAQ,qDAAiC;IAEnD,OAAO;QAEf,OAAO;YACN,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,KAAK;YAC3B,MAAM,EAAE,4BAAU,CAAC,GAAG;YACtB,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,
|
|
1
|
+
{"version":3,"file":"Update.js","sourceRoot":"","sources":["../../../src/controller/entity_tag/Update.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,qDAA4D;AAC5D,4EAAyE;AACzE,yDAAqE;AACrE,8DAA2D;AAC3D,MAAa,MAAO,SAAQ,qDAAiC;IAEnD,OAAO;QAEf,OAAO;YACN,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,SAAS,GAAG,KAAK;YAC3B,MAAM,EAAE,4BAAU,CAAC,GAAG;YACtB,IAAI,EAAE,IAAI,CAAC,UAAU,GAAG,uBAAuB;YAC/C,OAAO,EAAE,aAAa,IAAI,CAAC,UAAU,6BAA6B;SAClE,CAAC;IACH,CAAC;IACc,mBAAmB;;YAEjC,OAAO,CAAC,IAAI,sCAAkB,CAAC,IAAI,EAAE,IAAI,gCAAY,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,sCAAkB,CAAC,WAAW,EAAE,IAAI,gCAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC5H,CAAC;KAAA;IACc,gBAAgB;;YAE9B,OAAO,EAAE,CAAC;QACX,CAAC;KAAA;IACc,aAAa;;YAE3B,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,+BAAc,CAAC,cAAc,CAAC,CAAC;QACpF,CAAC;KAAA;IACc,eAAe;;YAE7B,OAAO,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;QACrD,CAAC;KAAA;IACc,QAAQ;;YAEtB,OAAO;gBACN,UAAU,EAAE,IAAI;gBAChB,aAAa,EAAE,KAAK;aACpB,CAAC;QACH,CAAC;KAAA;IACQ,KAAK;QAEb,OAAO,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;IAC1D,CAAC;IACc,MAAM;;YAEpB,IAAI,EAAE,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC;YAE3D,IAAI,SAAS,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,SAAS,EAAE,CAAC;YACzE,IAAI,IAAI,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YAC7D,IAAI,KAAK,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,SAAS,EAAE,CAAC;YAC/D,IAAI,WAAW,GAAG,IAAI,+BAAa,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,CAAC;YAE3E,IAAI,GAAG,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;YAChK,OAAO,MAAM,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjD,CAAC;KAAA;CACD;AAnDD,wBAmDC"}
|
|
@@ -3,12 +3,17 @@ import { EntityCategoryTable } from "./table/EntityCategoryTable";
|
|
|
3
3
|
import { EntityFieldTable } from "./table/EntityFieldTable";
|
|
4
4
|
import { EntityTagTable } from "./table/EntityTagTable";
|
|
5
5
|
import { NSABaseApplication } from "namirasoft-account-node";
|
|
6
|
-
import { ModelCtor } from 'sequelize';
|
|
6
|
+
import { ModelCtor, Transaction } from 'sequelize';
|
|
7
|
+
import { NSFInputRow } from "../controller/NSFInputRow";
|
|
7
8
|
export declare class FieldDatabaseTables<Database extends BaseMySqlDatabase> {
|
|
8
9
|
name: string;
|
|
10
|
+
private database;
|
|
9
11
|
entity_category: EntityCategoryTable<Database>;
|
|
10
12
|
entity_field: EntityFieldTable<Database>;
|
|
11
13
|
entity_tag: EntityTagTable<Database>;
|
|
12
14
|
constructor(app: NSABaseApplication<Database>, database: Database);
|
|
13
15
|
init<M extends BaseSequelizeModel>(model: ModelCtor<M>): void;
|
|
16
|
+
create(user_id: string, entity_id: string, category_field_tag: NSFInputRow, trx: Transaction | null): Promise<void>;
|
|
17
|
+
update(user_id: string, entity_id: string, category_field_tag: NSFInputRow, trx: Transaction | null): Promise<void>;
|
|
18
|
+
delete(user_id: string, entity_id: string, trx: Transaction | null): Promise<void>;
|
|
14
19
|
}
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
exports.FieldDatabaseTables = void 0;
|
|
4
13
|
const EntityCategoryTable_1 = require("./table/EntityCategoryTable");
|
|
@@ -9,6 +18,7 @@ const EntityFieldAttributes_1 = require("./attributes/EntityFieldAttributes");
|
|
|
9
18
|
const EntityCategoryAttributes_1 = require("./attributes/EntityCategoryAttributes");
|
|
10
19
|
class FieldDatabaseTables {
|
|
11
20
|
constructor(app, database) {
|
|
21
|
+
this.database = database;
|
|
12
22
|
this.entity_category = new EntityCategoryTable_1.EntityCategoryTable(app, database);
|
|
13
23
|
this.entity_field = new EntityFieldTable_1.EntityFieldTable(app, database);
|
|
14
24
|
this.entity_tag = new EntityTagTable_1.EntityTagTable(app, database);
|
|
@@ -31,6 +41,36 @@ class FieldDatabaseTables {
|
|
|
31
41
|
foreignKey: { name: "entity_id", allowNull: false },
|
|
32
42
|
});
|
|
33
43
|
}
|
|
44
|
+
create(user_id, entity_id, category_field_tag, trx) {
|
|
45
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
46
|
+
return yield this.database.startTransaction((trx) => __awaiter(this, void 0, void 0, function* () {
|
|
47
|
+
var _a;
|
|
48
|
+
for (let i = 0; i < category_field_tag.categories.length; i++)
|
|
49
|
+
yield this.entity_category.create(null, null, user_id, entity_id, category_field_tag.categories[i].category_id, trx);
|
|
50
|
+
for (let i = 0; i < category_field_tag.fields.length; i++)
|
|
51
|
+
yield this.entity_field.create(null, null, user_id, entity_id, category_field_tag.fields[i].field_id, category_field_tag.fields[i].value, trx);
|
|
52
|
+
for (let i = 0; i < category_field_tag.tags.length; i++)
|
|
53
|
+
yield this.entity_tag.create(null, null, user_id, entity_id, category_field_tag.tags[i].name, category_field_tag.tags[i].value, (_a = category_field_tag.tags[i].description) !== null && _a !== void 0 ? _a : "", trx);
|
|
54
|
+
}), trx);
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
update(user_id, entity_id, category_field_tag, trx) {
|
|
58
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
59
|
+
return yield this.database.startTransaction((trx) => __awaiter(this, void 0, void 0, function* () {
|
|
60
|
+
yield this.delete(user_id, entity_id, trx);
|
|
61
|
+
yield this.create(user_id, entity_id, category_field_tag, trx);
|
|
62
|
+
}), trx);
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
delete(user_id, entity_id, trx) {
|
|
66
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
67
|
+
return yield this.database.startTransaction((trx) => __awaiter(this, void 0, void 0, function* () {
|
|
68
|
+
yield this.entity_category.delete(null, null, user_id, entity_id, trx);
|
|
69
|
+
yield this.entity_field.delete(null, null, user_id, entity_id, trx);
|
|
70
|
+
yield this.entity_tag.delete(null, null, user_id, entity_id, trx);
|
|
71
|
+
}), trx);
|
|
72
|
+
});
|
|
73
|
+
}
|
|
34
74
|
}
|
|
35
75
|
exports.FieldDatabaseTables = FieldDatabaseTables;
|
|
36
76
|
//# sourceMappingURL=FieldDatabaseTables.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FieldDatabaseTables.js","sourceRoot":"","sources":["../../src/database/FieldDatabaseTables.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"FieldDatabaseTables.js","sourceRoot":"","sources":["../../src/database/FieldDatabaseTables.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,7 +7,6 @@ exports.EntityFieldAttributes = {
|
|
|
7
7
|
user_id: { type: sequelize_1.DataTypes.CHAR(20), allowNull: false },
|
|
8
8
|
entity_id: { type: sequelize_1.DataTypes.CHAR(20), allowNull: false },
|
|
9
9
|
field_id: { type: sequelize_1.DataTypes.CHAR(20), allowNull: false },
|
|
10
|
-
value: { type: sequelize_1.DataTypes.TEXT, allowNull:
|
|
11
|
-
description: { type: sequelize_1.DataTypes.TEXT, allowNull: true },
|
|
10
|
+
value: { type: sequelize_1.DataTypes.TEXT, allowNull: true },
|
|
12
11
|
};
|
|
13
12
|
//# sourceMappingURL=EntityFieldAttributes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityFieldAttributes.js","sourceRoot":"","sources":["../../../src/database/attributes/EntityFieldAttributes.ts"],"names":[],"mappings":";;;AAAA,yCAAmE;AAGxD,QAAA,qBAAqB,GAG5B;IACH,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAS,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;IACxF,OAAO,EAAE,EAAE,IAAI,EAAE,qBAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE;IACvD,SAAS,EAAE,EAAE,IAAI,EAAE,qBAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE;IACzD,QAAQ,EAAE,EAAE,IAAI,EAAE,qBAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE;IACxD,KAAK,EAAE,EAAE,IAAI,EAAE,qBAAS,CAAC,IAAI,EAAE,SAAS,EAAE,
|
|
1
|
+
{"version":3,"file":"EntityFieldAttributes.js","sourceRoot":"","sources":["../../../src/database/attributes/EntityFieldAttributes.ts"],"names":[],"mappings":";;;AAAA,yCAAmE;AAGxD,QAAA,qBAAqB,GAG5B;IACH,EAAE,EAAE,EAAE,IAAI,EAAE,qBAAS,CAAC,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE;IACxF,OAAO,EAAE,EAAE,IAAI,EAAE,qBAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE;IACvD,SAAS,EAAE,EAAE,IAAI,EAAE,qBAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE;IACzD,QAAQ,EAAE,EAAE,IAAI,EAAE,qBAAS,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE;IACxD,KAAK,EAAE,EAAE,IAAI,EAAE,qBAAS,CAAC,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE;CAChD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityFieldModel.js","sourceRoot":"","sources":["../../../src/database/model/EntityFieldModel.ts"],"names":[],"mappings":";;;AAAA,iEAA2D;AAE3D,MAAa,gBAAiB,SAAQ,0CAAkB;
|
|
1
|
+
{"version":3,"file":"EntityFieldModel.js","sourceRoot":"","sources":["../../../src/database/model/EntityFieldModel.ts"],"names":[],"mappings":";;;AAAA,iEAA2D;AAE3D,MAAa,gBAAiB,SAAQ,0CAAkB;CAOvD;AAPD,4CAOC"}
|
|
@@ -12,7 +12,7 @@ export declare class EntityCategoryTable<Database extends BaseMySqlDatabase> ext
|
|
|
12
12
|
getSchemaNames(): string[];
|
|
13
13
|
protected setSchemaByName(schema: ObjectSchema): void;
|
|
14
14
|
get(user_id: string, id: string, trx: Transaction | null): Promise<EntityCategoryModel | null>;
|
|
15
|
-
create(access: AccessRow, session: SessionRow, user_id: string, entity_id: string, category_id: string, trx: Transaction | null): Promise<EntityCategoryModel>;
|
|
16
|
-
update(access: AccessRow, session: SessionRow, user_id: string, id: string, category_id: string, trx: Transaction | null): Promise<EntityCategoryModel>;
|
|
17
|
-
delete(access: AccessRow, session: SessionRow, user_id: string, id: string, trx: Transaction | null): Promise<void>;
|
|
15
|
+
create(access: AccessRow | null, session: SessionRow | null, user_id: string, entity_id: string, category_id: string, trx: Transaction | null): Promise<EntityCategoryModel>;
|
|
16
|
+
update(access: AccessRow | null, session: SessionRow | null, user_id: string, id: string, category_id: string, trx: Transaction | null): Promise<EntityCategoryModel>;
|
|
17
|
+
delete(access: AccessRow | null, session: SessionRow | null, user_id: string, id: string, trx: Transaction | null): Promise<void>;
|
|
18
18
|
}
|
|
@@ -25,6 +25,7 @@ class EntityCategoryTable extends namirasoft_node_mysql_1.BaseSequelizeTable {
|
|
|
25
25
|
}
|
|
26
26
|
setSchemaByName(schema) {
|
|
27
27
|
schema.delReadOnly(true);
|
|
28
|
+
schema.delField("entity_id");
|
|
28
29
|
}
|
|
29
30
|
get(user_id, id, trx) {
|
|
30
31
|
return __awaiter(this, void 0, void 0, function* () {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityCategoryTable.js","sourceRoot":"","sources":["../../../src/database/table/EntityCategoryTable.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iEAA8E;AAK9E,wEAAqE;AAIrE,MAAa,mBAAwD,SAAQ,0CAAiD;IAG1H,YAAY,GAAiC,EAAE,QAAkB;QAE7D,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IACQ,YAAY;QAEjB,OAAO,EAAE,CAAC;IACd,CAAC;IACQ,cAAc;QAEnB,OAAO,MAAM,CAAC,IAAI,CAAC,yCAAmB,CAAC,CAAC;IAC5C,CAAC;IACkB,eAAe,CAAC,MAAoB;QAEnD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"EntityCategoryTable.js","sourceRoot":"","sources":["../../../src/database/table/EntityCategoryTable.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iEAA8E;AAK9E,wEAAqE;AAIrE,MAAa,mBAAwD,SAAQ,0CAAiD;IAG1H,YAAY,GAAiC,EAAE,QAAkB;QAE7D,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IACQ,YAAY;QAEjB,OAAO,EAAE,CAAC;IACd,CAAC;IACQ,cAAc;QAEnB,OAAO,MAAM,CAAC,IAAI,CAAC,yCAAmB,CAAC,CAAC;IAC5C,CAAC;IACkB,eAAe,CAAC,MAAoB;QAEnD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC;IACK,GAAG,CAAC,OAAe,EAAE,EAAU,EAAE,GAAuB;;YAE1D,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;KAAA;IACK,MAAM,CAAC,MAAwB,EAAE,OAA0B,EAAE,OAAe,EAAE,SAAiB,EAAE,WAAmB,EAAE,GAAuB;;YAE/I,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAS,EAAE;gBAExD,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC3B,OAAO;oBACP,SAAS;oBACT,WAAW;iBACd,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;YAC7B,CAAC,CAAA,CAAC,CAAC;QACP,CAAC;KAAA;IACK,MAAM,CAAC,MAAwB,EAAE,OAA0B,EAAE,OAAe,EAAE,EAAU,EAAE,WAAmB,EAAE,GAAuB;;YAExI,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAS,EAAE;gBAE9D,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAC5D,CAAC,CAAA,EAAE,CAAO,IAAI,EAAE,EAAE;gBAEd,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;gBAC/B,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;YACjD,CAAC,CAAA,CAAC,CAAC;QACP,CAAC;KAAA;IACK,MAAM,CAAC,MAAwB,EAAE,OAA0B,EAAE,OAAe,EAAE,EAAU,EAAE,GAAuB;;YAEnH,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAS,EAAE;gBAEvD,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC5D,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;gBACzC,OAAO,IAAI,CAAC;YAChB,CAAC,CAAA,CAAC,CAAC;QACP,CAAC;KAAA;CACJ;AAxDD,kDAwDC"}
|
|
@@ -12,7 +12,7 @@ export declare class EntityFieldTable<Database extends BaseMySqlDatabase> extend
|
|
|
12
12
|
getSchemaNames(): string[];
|
|
13
13
|
protected setSchemaByName(schema: ObjectSchema): void;
|
|
14
14
|
get(user_id: string, id: string, trx: Transaction | null): Promise<EntityFieldModel | null>;
|
|
15
|
-
create(access: AccessRow, session: SessionRow, user_id: string, entity_id: string, field_id: string, value: string,
|
|
16
|
-
update(access: AccessRow, session: SessionRow, user_id: string, id: string, entity_id: string, field_id: string, value: string,
|
|
17
|
-
delete(access: AccessRow, session: SessionRow, user_id: string, id: string, trx: Transaction | null): Promise<void>;
|
|
15
|
+
create(access: AccessRow | null, session: SessionRow | null, user_id: string, entity_id: string, field_id: string, value: string, trx: Transaction | null): Promise<EntityFieldModel>;
|
|
16
|
+
update(access: AccessRow | null, session: SessionRow | null, user_id: string, id: string, entity_id: string, field_id: string, value: string, trx: Transaction | null): Promise<EntityFieldModel>;
|
|
17
|
+
delete(access: AccessRow | null, session: SessionRow | null, user_id: string, id: string, trx: Transaction | null): Promise<void>;
|
|
18
18
|
}
|
|
@@ -25,13 +25,14 @@ class EntityFieldTable extends namirasoft_node_mysql_1.BaseSequelizeTable {
|
|
|
25
25
|
}
|
|
26
26
|
setSchemaByName(schema) {
|
|
27
27
|
schema.delReadOnly(true);
|
|
28
|
+
schema.delField("entity_id");
|
|
28
29
|
}
|
|
29
30
|
get(user_id, id, trx) {
|
|
30
31
|
return __awaiter(this, void 0, void 0, function* () {
|
|
31
32
|
return yield this._get({ where: { user_id, id }, }, trx);
|
|
32
33
|
});
|
|
33
34
|
}
|
|
34
|
-
create(access, session, user_id, entity_id, field_id, value,
|
|
35
|
+
create(access, session, user_id, entity_id, field_id, value, trx) {
|
|
35
36
|
return __awaiter(this, void 0, void 0, function* () {
|
|
36
37
|
return this.app.on.create(this, access, session, () => __awaiter(this, void 0, void 0, function* () {
|
|
37
38
|
return yield this.model.create({
|
|
@@ -39,12 +40,11 @@ class EntityFieldTable extends namirasoft_node_mysql_1.BaseSequelizeTable {
|
|
|
39
40
|
entity_id,
|
|
40
41
|
field_id,
|
|
41
42
|
value,
|
|
42
|
-
description,
|
|
43
43
|
}, { transaction: trx });
|
|
44
44
|
}));
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
|
-
update(access, session, user_id, id, entity_id, field_id, value,
|
|
47
|
+
update(access, session, user_id, id, entity_id, field_id, value, trx) {
|
|
48
48
|
return __awaiter(this, void 0, void 0, function* () {
|
|
49
49
|
return yield this.app.on.update(this, access, session, () => __awaiter(this, void 0, void 0, function* () {
|
|
50
50
|
return yield this._get({ where: { user_id, id } }, trx);
|
|
@@ -52,7 +52,6 @@ class EntityFieldTable extends namirasoft_node_mysql_1.BaseSequelizeTable {
|
|
|
52
52
|
item.entity_id = entity_id;
|
|
53
53
|
item.field_id = field_id;
|
|
54
54
|
item.value = value;
|
|
55
|
-
item.description = description;
|
|
56
55
|
return yield item.save({ transaction: trx });
|
|
57
56
|
}));
|
|
58
57
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityFieldTable.js","sourceRoot":"","sources":["../../../src/database/table/EntityFieldTable.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iEAA8E;AAK9E,kEAA+D;AAI/D,MAAa,gBAAqD,SAAQ,0CAA8C;IAGpH,YAAY,GAAiC,EAAE,QAAkB;QAE7D,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IACQ,YAAY;QAEjB,OAAO,EAAE,CAAC;IACd,CAAC;IACQ,cAAc;QAEnB,OAAO,MAAM,CAAC,IAAI,CAAC,mCAAgB,CAAC,CAAC;IACzC,CAAC;IACkB,eAAe,CAAC,MAAoB;QAEnD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"EntityFieldTable.js","sourceRoot":"","sources":["../../../src/database/table/EntityFieldTable.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iEAA8E;AAK9E,kEAA+D;AAI/D,MAAa,gBAAqD,SAAQ,0CAA8C;IAGpH,YAAY,GAAiC,EAAE,QAAkB;QAE7D,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IACQ,YAAY;QAEjB,OAAO,EAAE,CAAC;IACd,CAAC;IACQ,cAAc;QAEnB,OAAO,MAAM,CAAC,IAAI,CAAC,mCAAgB,CAAC,CAAC;IACzC,CAAC;IACkB,eAAe,CAAC,MAAoB;QAEnD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC;IACK,GAAG,CAAC,OAAe,EAAE,EAAU,EAAE,GAAuB;;YAE1D,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;KAAA;IACK,MAAM,CAAC,MAAwB,EAAE,OAA0B,EAAE,OAAe,EAAE,SAAiB,EAAE,QAAgB,EAAE,KAAa,EAAE,GAAuB;;YAE3J,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAS,EAAE;gBAExD,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC3B,OAAO;oBACP,SAAS;oBACT,QAAQ;oBACR,KAAK;iBACR,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;YAC7B,CAAC,CAAA,CAAC,CAAC;QACP,CAAC;KAAA;IACK,MAAM,CAAC,MAAwB,EAAE,OAA0B,EAAE,OAAe,EAAE,EAAU,EAAE,SAAiB,EAAE,QAAgB,EAAE,KAAa,EAAE,GAAuB;;YAEvK,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAS,EAAE;gBAE9D,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAC5D,CAAC,CAAA,EAAE,CAAO,IAAI,EAAE,EAAE;gBAEd,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC3B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;gBACzB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;YACjD,CAAC,CAAA,CAAC,CAAC;QACP,CAAC;KAAA;IACK,MAAM,CAAC,MAAwB,EAAE,OAA0B,EAAE,OAAe,EAAE,EAAU,EAAE,GAAuB;;YAEnH,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAS,EAAE;gBAEvD,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC5D,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;gBACzC,OAAO,IAAI,CAAC;YAChB,CAAC,CAAA,CAAC,CAAC;QACP,CAAC;KAAA;CACJ;AA3DD,4CA2DC"}
|
|
@@ -12,7 +12,7 @@ export declare class EntityTagTable<Database extends BaseMySqlDatabase> extends
|
|
|
12
12
|
getSchemaNames(): string[];
|
|
13
13
|
protected setSchemaByName(schema: ObjectSchema): void;
|
|
14
14
|
get(user_id: string, id: string, trx: Transaction | null): Promise<EntityTagModel | null>;
|
|
15
|
-
create(accses: AccessRow, session: SessionRow, user_id: string, entity_id: string, name: string, value: string, description: string, trx: Transaction | null): Promise<EntityTagModel>;
|
|
16
|
-
update(accses: AccessRow, session: SessionRow, user_id: string, id: string, entity_id: string, name: string, value: string, description: string, trx: Transaction | null): Promise<EntityTagModel>;
|
|
17
|
-
delete(accses: AccessRow, session: SessionRow, user_id: string, id: string, trx: Transaction | null): Promise<void>;
|
|
15
|
+
create(accses: AccessRow | null, session: SessionRow | null, user_id: string, entity_id: string, name: string, value: string, description: string, trx: Transaction | null): Promise<EntityTagModel>;
|
|
16
|
+
update(accses: AccessRow | null, session: SessionRow | null, user_id: string, id: string, entity_id: string, name: string, value: string, description: string, trx: Transaction | null): Promise<EntityTagModel>;
|
|
17
|
+
delete(accses: AccessRow | null, session: SessionRow | null, user_id: string, id: string, trx: Transaction | null): Promise<void>;
|
|
18
18
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityTagTable.js","sourceRoot":"","sources":["../../../src/database/table/EntityTagTable.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iEAA8E;AAK9E,8DAA2D;AAI3D,MAAa,cAAmD,SAAQ,0CAA4C;IAGhH,YAAY,GAAiC,EAAE,QAAkB;QAE7D,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IACQ,YAAY;QAEjB,OAAO,EAAE,CAAC;IACd,CAAC;IACQ,cAAc;QAEnB,OAAO,MAAM,CAAC,IAAI,CAAC,+BAAc,CAAC,CAAC;IACvC,CAAC;IACkB,eAAe,CAAC,MAAoB;QAEnD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"EntityTagTable.js","sourceRoot":"","sources":["../../../src/database/table/EntityTagTable.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,iEAA8E;AAK9E,8DAA2D;AAI3D,MAAa,cAAmD,SAAQ,0CAA4C;IAGhH,YAAY,GAAiC,EAAE,QAAkB;QAE7D,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IACQ,YAAY;QAEjB,OAAO,EAAE,CAAC;IACd,CAAC;IACQ,cAAc;QAEnB,OAAO,MAAM,CAAC,IAAI,CAAC,+BAAc,CAAC,CAAC;IACvC,CAAC;IACkB,eAAe,CAAC,MAAoB;QAEnD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACzB,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;IACjC,CAAC;IACK,GAAG,CAAC,OAAe,EAAE,EAAU,EAAE,GAAuB;;YAE1D,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC7D,CAAC;KAAA;IACK,MAAM,CAAC,MAAwB,EAAE,OAA0B,EAAE,OAAe,EAAE,SAAiB,EAAE,IAAY,EAAE,KAAa,EAAE,WAAmB,EAAE,GAAuB;;YAE5K,OAAO,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAS,EAAE;gBAExD,OAAO,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;oBAC3B,OAAO;oBACP,SAAS;oBACT,IAAI;oBACJ,KAAK;oBACL,WAAW;iBACd,EAAE,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;YAC7B,CAAC,CAAA,CAAC,CAAC;QACP,CAAC;KAAA;IACK,MAAM,CAAC,MAAwB,EAAE,OAA0B,EAAE,OAAe,EAAE,EAAU,EAAE,SAAiB,EAAE,IAAY,EAAE,KAAa,EAAE,WAAmB,EAAE,GAAuB;;YAExL,OAAO,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAS,EAAE;gBAE9D,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAC5D,CAAC,CAAA,EAAE,CAAO,IAAI,EAAE,EAAE;gBAEd,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;gBAC3B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;gBACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;gBACnB,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;gBAC/B,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;YACjD,CAAC,CAAA,CAAC,CAAC;QACP,CAAC;KAAA;IACK,MAAM,CAAC,MAAwB,EAAE,OAA0B,EAAE,OAAe,EAAE,EAAU,EAAE,GAAuB;;YAEnH,MAAM,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,GAAS,EAAE;gBAEvD,IAAI,IAAI,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;gBAC5D,MAAM,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;gBACzC,OAAO,IAAI,CAAC;YAChB,CAAC,CAAA,CAAC,CAAC;QACP,CAAC;KAAA;CACJ;AA7DD,wCA6DC"}
|
package/package.json
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
"framework": "npm",
|
|
9
9
|
"application": "package",
|
|
10
10
|
"private": false,
|
|
11
|
-
"version": "1.4.
|
|
11
|
+
"version": "1.4.9",
|
|
12
12
|
"author": "Amir Abolhasani",
|
|
13
13
|
"license": "MIT",
|
|
14
14
|
"main": "./dist/index.js",
|
|
@@ -17,11 +17,11 @@
|
|
|
17
17
|
"build": ""
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"namirasoft-access": "^1.4.
|
|
21
|
-
"namirasoft-account-node": "^1.4.
|
|
22
|
-
"namirasoft-core": "^1.4.
|
|
23
|
-
"namirasoft-node": "^1.4.
|
|
24
|
-
"namirasoft-node-mysql": "^1.4.
|
|
20
|
+
"namirasoft-access": "^1.4.37",
|
|
21
|
+
"namirasoft-account-node": "^1.4.66",
|
|
22
|
+
"namirasoft-core": "^1.4.39",
|
|
23
|
+
"namirasoft-node": "^1.4.33",
|
|
24
|
+
"namirasoft-node-mysql": "^1.4.13"
|
|
25
25
|
},
|
|
26
26
|
"bin": {
|
|
27
27
|
"ns-field": "./dist/command/cli.js"
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { EntityCategoryInputRow, EntityFieldInputRow, EntityTagInputRow } from "namirasoft-access";
|
|
2
|
+
import { NSFInputRow } from "./NSFInputRow";
|
|
3
|
+
|
|
4
|
+
export class NSFController
|
|
5
|
+
{
|
|
6
|
+
static handle_getCategoryFieldTag(name: string, body: any): NSFInputRow
|
|
7
|
+
{
|
|
8
|
+
let categories: EntityCategoryInputRow[] = body[`${name}_category`] || [];
|
|
9
|
+
let fields: EntityFieldInputRow[] = body[`${name}_field`] || [];
|
|
10
|
+
let tags: EntityTagInputRow[] = body[`${name}_tag`] || [];
|
|
11
|
+
return { categories, fields, tags };
|
|
12
|
+
}
|
|
13
|
+
}
|
|
@@ -2,6 +2,7 @@ import { HTTPMethod, ObjectService } from "namirasoft-core";
|
|
|
2
2
|
import { EntityCategoryModel } from "../../database/model/EntityCategoryModel";
|
|
3
3
|
import { BaseEntityFieldController } from "../BaseEntityFieldController";
|
|
4
4
|
import { EntityCategoryNames } from "../../enum/EntityCategoryNames";
|
|
5
|
+
import { BaseVariableSchema, StringSchema } from "namirasoft-schema";
|
|
5
6
|
|
|
6
7
|
export class Create extends BaseEntityFieldController<EntityCategoryModel>
|
|
7
8
|
{
|
|
@@ -11,13 +12,13 @@ export class Create extends BaseEntityFieldController<EntityCategoryModel>
|
|
|
11
12
|
name: "Create",
|
|
12
13
|
tag: this.tagPrefix + "Category",
|
|
13
14
|
method: HTTPMethod.POST,
|
|
14
|
-
path: this.pathPrefix + "/category",
|
|
15
|
-
summary: `Creates a new ${this.namePrefix} category`
|
|
15
|
+
path: this.pathPrefix + "/category/{entity_id}",
|
|
16
|
+
summary: `Creates a new ${this.namePrefix} category for an entity`
|
|
16
17
|
};
|
|
17
18
|
}
|
|
18
19
|
override async getParametersSchema()
|
|
19
20
|
{
|
|
20
|
-
return [];
|
|
21
|
+
return [new BaseVariableSchema("entity_id", new StringSchema(true))];
|
|
21
22
|
}
|
|
22
23
|
override async getQueriesSchema()
|
|
23
24
|
{
|
|
@@ -44,7 +45,7 @@ export class Create extends BaseEntityFieldController<EntityCategoryModel>
|
|
|
44
45
|
}
|
|
45
46
|
override async handle()
|
|
46
47
|
{
|
|
47
|
-
let entity_id = new ObjectService(this.req.
|
|
48
|
+
let entity_id = new ObjectService(this.req.params.entity_id).getString();
|
|
48
49
|
let category_id = new ObjectService(this.req.body.category_id).getString();
|
|
49
50
|
|
|
50
51
|
let ans = await this.tables.entity_category.create(this.props.access, this.props.session, this.props.access.owner_id, entity_id, category_id, null);
|
|
@@ -2,6 +2,7 @@ import { HTTPMethod, ObjectService } from "namirasoft-core";
|
|
|
2
2
|
import { BaseEntityFieldController } from "../BaseEntityFieldController";
|
|
3
3
|
import { EntityFieldModel } from "../../database/model/EntityFieldModel";
|
|
4
4
|
import { EntityFieldNames } from "../../enum/EntityFieldNames";
|
|
5
|
+
import { BaseVariableSchema, StringSchema } from "namirasoft-schema";
|
|
5
6
|
export class Create extends BaseEntityFieldController<EntityFieldModel>
|
|
6
7
|
{
|
|
7
8
|
override getInfo()
|
|
@@ -10,13 +11,13 @@ export class Create extends BaseEntityFieldController<EntityFieldModel>
|
|
|
10
11
|
name: "Create",
|
|
11
12
|
tag: this.tagPrefix + "Field",
|
|
12
13
|
method: HTTPMethod.POST,
|
|
13
|
-
path: this.pathPrefix + "/field",
|
|
14
|
-
summary: `Creates a new ${this.namePrefix} field`
|
|
14
|
+
path: this.pathPrefix + "/field/{entity_id}",
|
|
15
|
+
summary: `Creates a new ${this.namePrefix} field for an entity`
|
|
15
16
|
};
|
|
16
17
|
}
|
|
17
18
|
override async getParametersSchema()
|
|
18
19
|
{
|
|
19
|
-
return [];
|
|
20
|
+
return [new BaseVariableSchema("entity_id", new StringSchema(true))];
|
|
20
21
|
}
|
|
21
22
|
override async getQueriesSchema()
|
|
22
23
|
{
|
|
@@ -43,12 +44,11 @@ export class Create extends BaseEntityFieldController<EntityFieldModel>
|
|
|
43
44
|
}
|
|
44
45
|
override async handle()
|
|
45
46
|
{
|
|
46
|
-
let entity_id = new ObjectService(this.req.
|
|
47
|
+
let entity_id = new ObjectService(this.req.params.entity_id).getString();
|
|
47
48
|
let field_id = new ObjectService(this.req.body.field_id).getString();
|
|
48
49
|
let value = new ObjectService(this.req.body.value).getString();
|
|
49
|
-
let description = new ObjectService(this.req.body.description).getString();
|
|
50
50
|
|
|
51
|
-
let ans = await this.tables.entity_field.create(this.props.access, this.props.session, this.props.access.owner_id, entity_id, field_id, value,
|
|
51
|
+
let ans = await this.tables.entity_field.create(this.props.access, this.props.session, this.props.access.owner_id, entity_id, field_id, value, null);
|
|
52
52
|
return await this.tables.entity_field.secure(ans);
|
|
53
53
|
}
|
|
54
54
|
}
|
|
@@ -10,13 +10,13 @@ export class Update extends BaseEntityFieldController<string>
|
|
|
10
10
|
name: "Update",
|
|
11
11
|
tag: this.tagPrefix + "Field",
|
|
12
12
|
method: HTTPMethod.PUT,
|
|
13
|
-
path: this.pathPrefix + "/field/{id}",
|
|
14
|
-
summary: `Updates a ${this.namePrefix} field by an id`
|
|
13
|
+
path: this.pathPrefix + "/field/{id}/{entity_id}",
|
|
14
|
+
summary: `Updates a ${this.namePrefix} field by an id for an entity`
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
17
|
override async getParametersSchema()
|
|
18
18
|
{
|
|
19
|
-
return [new BaseVariableSchema("id", new StringSchema(true))];
|
|
19
|
+
return [new BaseVariableSchema("id", new StringSchema(true)), new BaseVariableSchema("entity_id", new StringSchema(true))];
|
|
20
20
|
}
|
|
21
21
|
override async getQueriesSchema()
|
|
22
22
|
{
|
|
@@ -45,12 +45,11 @@ export class Update extends BaseEntityFieldController<string>
|
|
|
45
45
|
{
|
|
46
46
|
let id = new ObjectService(this.req.params.id).getString();
|
|
47
47
|
|
|
48
|
-
let entity_id = new ObjectService(this.req.
|
|
48
|
+
let entity_id = new ObjectService(this.req.params.entity_id).getString();
|
|
49
49
|
let field_id = new ObjectService(this.req.body.field_id).getString();
|
|
50
50
|
let value = new ObjectService(this.req.body.value).getString();
|
|
51
|
-
let description = new ObjectService(this.req.body.description).getString();
|
|
52
51
|
|
|
53
|
-
let ans = await this.tables.entity_field.update(this.props.access, this.props.session, this.props.access.owner_id, id, entity_id, field_id, value,
|
|
52
|
+
let ans = await this.tables.entity_field.update(this.props.access, this.props.session, this.props.access.owner_id, id, entity_id, field_id, value, null);
|
|
54
53
|
return await this.tables.entity_field.secure(ans);
|
|
55
54
|
}
|
|
56
55
|
}
|
|
@@ -2,6 +2,7 @@ import { HTTPMethod, ObjectService } from "namirasoft-core";
|
|
|
2
2
|
import { BaseEntityFieldController } from "../BaseEntityFieldController";
|
|
3
3
|
import { EntityTagModel } from "../../database/model/EntityTagModel";
|
|
4
4
|
import { EntityTagNames } from "../../enum/EntityTagNames";
|
|
5
|
+
import { BaseVariableSchema, StringSchema } from "namirasoft-schema";
|
|
5
6
|
export class Create extends BaseEntityFieldController<EntityTagModel>
|
|
6
7
|
{
|
|
7
8
|
override getInfo()
|
|
@@ -10,13 +11,13 @@ export class Create extends BaseEntityFieldController<EntityTagModel>
|
|
|
10
11
|
name: "Create",
|
|
11
12
|
tag: this.tagPrefix + "Tag",
|
|
12
13
|
method: HTTPMethod.POST,
|
|
13
|
-
path: this.pathPrefix + "/tag",
|
|
14
|
-
summary: `Creates a new ${this.namePrefix} tag`
|
|
14
|
+
path: this.pathPrefix + "/tag/{entity_id}",
|
|
15
|
+
summary: `Creates a new ${this.namePrefix} tag for an entity`
|
|
15
16
|
};
|
|
16
17
|
}
|
|
17
18
|
override async getParametersSchema()
|
|
18
19
|
{
|
|
19
|
-
return [];
|
|
20
|
+
return [new BaseVariableSchema("entity_id", new StringSchema(true))];
|
|
20
21
|
}
|
|
21
22
|
override async getQueriesSchema()
|
|
22
23
|
{
|
|
@@ -43,7 +44,7 @@ export class Create extends BaseEntityFieldController<EntityTagModel>
|
|
|
43
44
|
}
|
|
44
45
|
override async handle()
|
|
45
46
|
{
|
|
46
|
-
let entity_id = new ObjectService(this.req.
|
|
47
|
+
let entity_id = new ObjectService(this.req.params.entity_id).getString();
|
|
47
48
|
let name = new ObjectService(this.req.body.name).getString();
|
|
48
49
|
let value = new ObjectService(this.req.body.value).getString();
|
|
49
50
|
let description = new ObjectService(this.req.body.description).getString();
|
|
@@ -10,13 +10,13 @@ export class Update extends BaseEntityFieldController<string>
|
|
|
10
10
|
name: "Update",
|
|
11
11
|
tag: this.tagPrefix + "Tag",
|
|
12
12
|
method: HTTPMethod.PUT,
|
|
13
|
-
path: this.pathPrefix + "/tag/{id}",
|
|
14
|
-
summary: `Updates a ${this.namePrefix} tag by an id`
|
|
13
|
+
path: this.pathPrefix + "/tag/{id}/{entity_id}",
|
|
14
|
+
summary: `Updates a ${this.namePrefix} tag by an id for an entity`
|
|
15
15
|
};
|
|
16
16
|
}
|
|
17
17
|
override async getParametersSchema()
|
|
18
18
|
{
|
|
19
|
-
return [new BaseVariableSchema("id", new StringSchema(true))];
|
|
19
|
+
return [new BaseVariableSchema("id", new StringSchema(true)), new BaseVariableSchema("entity_id", new StringSchema(true))];
|
|
20
20
|
}
|
|
21
21
|
override async getQueriesSchema()
|
|
22
22
|
{
|
|
@@ -45,7 +45,7 @@ export class Update extends BaseEntityFieldController<string>
|
|
|
45
45
|
{
|
|
46
46
|
let id = new ObjectService(this.req.params.id).getString();
|
|
47
47
|
|
|
48
|
-
let entity_id = new ObjectService(this.req.
|
|
48
|
+
let entity_id = new ObjectService(this.req.params.entity_id).getString();
|
|
49
49
|
let name = new ObjectService(this.req.body.name).getString();
|
|
50
50
|
let value = new ObjectService(this.req.body.value).getString();
|
|
51
51
|
let description = new ObjectService(this.req.body.description).getString();
|
|
@@ -6,16 +6,19 @@ import { NSABaseApplication } from "namirasoft-account-node";
|
|
|
6
6
|
import { EntityTagAttributes } from "./attributes/EntityTagAttributes";
|
|
7
7
|
import { EntityFieldAttributes } from "./attributes/EntityFieldAttributes";
|
|
8
8
|
import { EntityCategoryAttributes } from "./attributes/EntityCategoryAttributes";
|
|
9
|
-
import { ModelCtor } from 'sequelize';
|
|
9
|
+
import { ModelCtor, Transaction } from 'sequelize';
|
|
10
|
+
import { NSFInputRow } from "../controller/NSFInputRow";
|
|
10
11
|
|
|
11
12
|
export class FieldDatabaseTables<Database extends BaseMySqlDatabase>
|
|
12
13
|
{
|
|
13
14
|
name!: string;
|
|
15
|
+
private database: Database;
|
|
14
16
|
entity_category: EntityCategoryTable<Database>;
|
|
15
17
|
entity_field: EntityFieldTable<Database>;
|
|
16
18
|
entity_tag: EntityTagTable<Database>;
|
|
17
19
|
constructor(app: NSABaseApplication<Database>, database: Database)
|
|
18
20
|
{
|
|
21
|
+
this.database = database;
|
|
19
22
|
this.entity_category = new EntityCategoryTable<Database>(app, database);
|
|
20
23
|
this.entity_field = new EntityFieldTable<Database>(app, database);
|
|
21
24
|
this.entity_tag = new EntityTagTable<Database>(app, database);
|
|
@@ -43,4 +46,33 @@ export class FieldDatabaseTables<Database extends BaseMySqlDatabase>
|
|
|
43
46
|
foreignKey: { name: "entity_id", allowNull: false },
|
|
44
47
|
});
|
|
45
48
|
}
|
|
49
|
+
async create(user_id: string, entity_id: string, category_field_tag: NSFInputRow, trx: Transaction | null)
|
|
50
|
+
{
|
|
51
|
+
return await this.database.startTransaction(async trx =>
|
|
52
|
+
{
|
|
53
|
+
for (let i = 0; i < category_field_tag.categories.length; i++)
|
|
54
|
+
await this.entity_category.create(null, null, user_id, entity_id, category_field_tag.categories[i].category_id, trx);
|
|
55
|
+
for (let i = 0; i < category_field_tag.fields.length; i++)
|
|
56
|
+
await this.entity_field.create(null, null, user_id, entity_id, category_field_tag.fields[i].field_id, category_field_tag.fields[i].value, trx);
|
|
57
|
+
for (let i = 0; i < category_field_tag.tags.length; i++)
|
|
58
|
+
await this.entity_tag.create(null, null, user_id, entity_id, category_field_tag.tags[i].name, category_field_tag.tags[i].value, category_field_tag.tags[i].description ?? "", trx);
|
|
59
|
+
}, trx);
|
|
60
|
+
}
|
|
61
|
+
async update(user_id: string, entity_id: string, category_field_tag: NSFInputRow, trx: Transaction | null)
|
|
62
|
+
{
|
|
63
|
+
return await this.database.startTransaction(async trx =>
|
|
64
|
+
{
|
|
65
|
+
await this.delete(user_id, entity_id, trx);
|
|
66
|
+
await this.create(user_id, entity_id, category_field_tag, trx);
|
|
67
|
+
}, trx);
|
|
68
|
+
}
|
|
69
|
+
async delete(user_id: string, entity_id: string, trx: Transaction | null)
|
|
70
|
+
{
|
|
71
|
+
return await this.database.startTransaction(async trx =>
|
|
72
|
+
{
|
|
73
|
+
await this.entity_category.delete(null, null, user_id, entity_id, trx);
|
|
74
|
+
await this.entity_field.delete(null, null, user_id, entity_id, trx);
|
|
75
|
+
await this.entity_tag.delete(null, null, user_id, entity_id, trx);
|
|
76
|
+
}, trx);
|
|
77
|
+
}
|
|
46
78
|
}
|
|
@@ -9,6 +9,5 @@ export let EntityFieldAttributes: ModelAttributes<
|
|
|
9
9
|
user_id: { type: DataTypes.CHAR(20), allowNull: false },
|
|
10
10
|
entity_id: { type: DataTypes.CHAR(20), allowNull: false },
|
|
11
11
|
field_id: { type: DataTypes.CHAR(20), allowNull: false },
|
|
12
|
-
value: { type: DataTypes.TEXT, allowNull:
|
|
13
|
-
description: { type: DataTypes.TEXT, allowNull: true },
|
|
12
|
+
value: { type: DataTypes.TEXT, allowNull: true },
|
|
14
13
|
};
|
|
@@ -26,12 +26,13 @@ export class EntityCategoryTable<Database extends BaseMySqlDatabase> extends Bas
|
|
|
26
26
|
protected override setSchemaByName(schema: ObjectSchema): void
|
|
27
27
|
{
|
|
28
28
|
schema.delReadOnly(true);
|
|
29
|
+
schema.delField("entity_id");
|
|
29
30
|
}
|
|
30
31
|
async get(user_id: string, id: string, trx: Transaction | null): Promise<EntityCategoryModel | null>
|
|
31
32
|
{
|
|
32
33
|
return await this._get({ where: { user_id, id }, }, trx);
|
|
33
34
|
}
|
|
34
|
-
async create(access: AccessRow, session: SessionRow, user_id: string, entity_id: string, category_id: string, trx: Transaction | null): Promise<EntityCategoryModel>
|
|
35
|
+
async create(access: AccessRow | null, session: SessionRow | null, user_id: string, entity_id: string, category_id: string, trx: Transaction | null): Promise<EntityCategoryModel>
|
|
35
36
|
{
|
|
36
37
|
return this.app.on.create(this, access, session, async () =>
|
|
37
38
|
{
|
|
@@ -42,7 +43,7 @@ export class EntityCategoryTable<Database extends BaseMySqlDatabase> extends Bas
|
|
|
42
43
|
}, { transaction: trx });
|
|
43
44
|
});
|
|
44
45
|
}
|
|
45
|
-
async update(access: AccessRow, session: SessionRow, user_id: string, id: string, category_id: string, trx: Transaction | null): Promise<EntityCategoryModel>
|
|
46
|
+
async update(access: AccessRow | null, session: SessionRow | null, user_id: string, id: string, category_id: string, trx: Transaction | null): Promise<EntityCategoryModel>
|
|
46
47
|
{
|
|
47
48
|
return await this.app.on.update(this, access, session, async () =>
|
|
48
49
|
{
|
|
@@ -53,7 +54,7 @@ export class EntityCategoryTable<Database extends BaseMySqlDatabase> extends Bas
|
|
|
53
54
|
return await item.save({ transaction: trx });
|
|
54
55
|
});
|
|
55
56
|
}
|
|
56
|
-
async delete(access: AccessRow, session: SessionRow, user_id: string, id: string, trx: Transaction | null): Promise<void>
|
|
57
|
+
async delete(access: AccessRow | null, session: SessionRow | null, user_id: string, id: string, trx: Transaction | null): Promise<void>
|
|
57
58
|
{
|
|
58
59
|
await this.app.on.delete(this, access, session, async () =>
|
|
59
60
|
{
|
|
@@ -26,12 +26,13 @@ export class EntityFieldTable<Database extends BaseMySqlDatabase> extends BaseSe
|
|
|
26
26
|
protected override setSchemaByName(schema: ObjectSchema): void
|
|
27
27
|
{
|
|
28
28
|
schema.delReadOnly(true);
|
|
29
|
+
schema.delField("entity_id");
|
|
29
30
|
}
|
|
30
31
|
async get(user_id: string, id: string, trx: Transaction | null): Promise<EntityFieldModel | null>
|
|
31
32
|
{
|
|
32
33
|
return await this._get({ where: { user_id, id }, }, trx);
|
|
33
34
|
}
|
|
34
|
-
async create(access: AccessRow, session: SessionRow, user_id: string, entity_id: string, field_id: string, value: string,
|
|
35
|
+
async create(access: AccessRow | null, session: SessionRow | null, user_id: string, entity_id: string, field_id: string, value: string, trx: Transaction | null): Promise<EntityFieldModel>
|
|
35
36
|
{
|
|
36
37
|
return this.app.on.create(this, access, session, async () =>
|
|
37
38
|
{
|
|
@@ -40,11 +41,10 @@ export class EntityFieldTable<Database extends BaseMySqlDatabase> extends BaseSe
|
|
|
40
41
|
entity_id,
|
|
41
42
|
field_id,
|
|
42
43
|
value,
|
|
43
|
-
description,
|
|
44
44
|
}, { transaction: trx });
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
|
-
async update(access: AccessRow, session: SessionRow, user_id: string, id: string, entity_id: string, field_id: string, value: string,
|
|
47
|
+
async update(access: AccessRow | null, session: SessionRow | null, user_id: string, id: string, entity_id: string, field_id: string, value: string, trx: Transaction | null): Promise<EntityFieldModel>
|
|
48
48
|
{
|
|
49
49
|
return await this.app.on.update(this, access, session, async () =>
|
|
50
50
|
{
|
|
@@ -54,11 +54,10 @@ export class EntityFieldTable<Database extends BaseMySqlDatabase> extends BaseSe
|
|
|
54
54
|
item.entity_id = entity_id;
|
|
55
55
|
item.field_id = field_id;
|
|
56
56
|
item.value = value;
|
|
57
|
-
item.description = description;
|
|
58
57
|
return await item.save({ transaction: trx });
|
|
59
58
|
});
|
|
60
59
|
}
|
|
61
|
-
async delete(access: AccessRow, session: SessionRow, user_id: string, id: string, trx: Transaction | null): Promise<void>
|
|
60
|
+
async delete(access: AccessRow | null, session: SessionRow | null, user_id: string, id: string, trx: Transaction | null): Promise<void>
|
|
62
61
|
{
|
|
63
62
|
await this.app.on.delete(this, access, session, async () =>
|
|
64
63
|
{
|
|
@@ -26,12 +26,13 @@ export class EntityTagTable<Database extends BaseMySqlDatabase> extends BaseSequ
|
|
|
26
26
|
protected override setSchemaByName(schema: ObjectSchema): void
|
|
27
27
|
{
|
|
28
28
|
schema.delReadOnly(true);
|
|
29
|
+
schema.delField("entity_id");
|
|
29
30
|
}
|
|
30
31
|
async get(user_id: string, id: string, trx: Transaction | null): Promise<EntityTagModel | null>
|
|
31
32
|
{
|
|
32
33
|
return await this._get({ where: { user_id, id }, }, trx);
|
|
33
34
|
}
|
|
34
|
-
async create(accses: AccessRow, session: SessionRow, user_id: string, entity_id: string, name: string, value: string, description: string, trx: Transaction | null): Promise<EntityTagModel>
|
|
35
|
+
async create(accses: AccessRow | null, session: SessionRow | null, user_id: string, entity_id: string, name: string, value: string, description: string, trx: Transaction | null): Promise<EntityTagModel>
|
|
35
36
|
{
|
|
36
37
|
return this.app.on.create(this, accses, session, async () =>
|
|
37
38
|
{
|
|
@@ -44,7 +45,7 @@ export class EntityTagTable<Database extends BaseMySqlDatabase> extends BaseSequ
|
|
|
44
45
|
}, { transaction: trx });
|
|
45
46
|
});
|
|
46
47
|
}
|
|
47
|
-
async update(accses: AccessRow, session: SessionRow, user_id: string, id: string, entity_id: string, name: string, value: string, description: string, trx: Transaction | null): Promise<EntityTagModel>
|
|
48
|
+
async update(accses: AccessRow | null, session: SessionRow | null, user_id: string, id: string, entity_id: string, name: string, value: string, description: string, trx: Transaction | null): Promise<EntityTagModel>
|
|
48
49
|
{
|
|
49
50
|
return await this.app.on.update(this, accses, session, async () =>
|
|
50
51
|
{
|
|
@@ -58,7 +59,7 @@ export class EntityTagTable<Database extends BaseMySqlDatabase> extends BaseSequ
|
|
|
58
59
|
return await item.save({ transaction: trx });
|
|
59
60
|
});
|
|
60
61
|
}
|
|
61
|
-
async delete(accses: AccessRow, session: SessionRow, user_id: string, id: string, trx: Transaction | null): Promise<void>
|
|
62
|
+
async delete(accses: AccessRow | null, session: SessionRow | null, user_id: string, id: string, trx: Transaction | null): Promise<void>
|
|
62
63
|
{
|
|
63
64
|
await this.app.on.delete(this, accses, session, async () =>
|
|
64
65
|
{
|