@things-factory/integration-base 7.0.7 → 7.0.13

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 (65) hide show
  1. package/assets/images/mssql-procedure-example1.png +0 -0
  2. package/dist-server/controllers/index.d.ts +1 -0
  3. package/dist-server/controllers/index.js +1 -0
  4. package/dist-server/controllers/index.js.map +1 -1
  5. package/dist-server/controllers/publish-data.d.ts +6 -0
  6. package/dist-server/controllers/publish-data.js +22 -0
  7. package/dist-server/controllers/publish-data.js.map +1 -0
  8. package/dist-server/engine/connector/mssql-connector.d.ts +10 -0
  9. package/dist-server/engine/connector/mssql-connector.js +42 -11
  10. package/dist-server/engine/connector/mssql-connector.js.map +1 -1
  11. package/dist-server/engine/task/index.d.ts +2 -0
  12. package/dist-server/engine/task/index.js +2 -0
  13. package/dist-server/engine/task/index.js.map +1 -1
  14. package/dist-server/engine/task/mssql-procedure.d.ts +1 -0
  15. package/dist-server/engine/task/mssql-procedure.js +94 -0
  16. package/dist-server/engine/task/mssql-procedure.js.map +1 -0
  17. package/dist-server/engine/task/oracle-procedure.js +4 -1
  18. package/dist-server/engine/task/oracle-procedure.js.map +1 -1
  19. package/dist-server/engine/task/state-group-read.d.ts +1 -0
  20. package/dist-server/engine/task/state-group-read.js +62 -0
  21. package/dist-server/engine/task/state-group-read.js.map +1 -0
  22. package/dist-server/service/index.d.ts +1 -1
  23. package/dist-server/service/scenario-instance/scenario-instance-type.js +6 -9
  24. package/dist-server/service/scenario-instance/scenario-instance-type.js.map +1 -1
  25. package/dist-server/service/state-register/data-resolver.d.ts +6 -0
  26. package/dist-server/service/state-register/data-resolver.js +61 -0
  27. package/dist-server/service/state-register/data-resolver.js.map +1 -0
  28. package/dist-server/service/state-register/index.d.ts +2 -1
  29. package/dist-server/service/state-register/index.js +2 -1
  30. package/dist-server/service/state-register/index.js.map +1 -1
  31. package/dist-server/service/state-register/state-register-query.js +1 -1
  32. package/dist-server/service/state-register/state-register-query.js.map +1 -1
  33. package/dist-server/service/state-register/state-register-type.d.ts +6 -0
  34. package/dist-server/service/state-register/state-register-type.js +40 -16
  35. package/dist-server/service/state-register/state-register-type.js.map +1 -1
  36. package/dist-server/service/state-register/state-register.d.ts +3 -0
  37. package/dist-server/service/state-register/state-register.js +36 -13
  38. package/dist-server/service/state-register/state-register.js.map +1 -1
  39. package/dist-server/tsconfig.tsbuildinfo +1 -1
  40. package/helps/integration/task/mqtt-subscribe.ms.md +127 -11
  41. package/helps/integration/task/mssql-procedure.ja.md +105 -0
  42. package/helps/integration/task/mssql-procedure.ko.md +89 -0
  43. package/helps/integration/task/mssql-procedure.md +89 -0
  44. package/helps/integration/task/mssql-procedure.ms.md +89 -0
  45. package/helps/integration/task/mssql-procedure.zh.md +103 -0
  46. package/helps/integration/task/oracle-procedure.ko.md +0 -2
  47. package/helps/integration/task/state-group-read.ja.md +8 -0
  48. package/helps/integration/task/state-group-read.ko.md +8 -0
  49. package/helps/integration/task/state-group-read.md +10 -0
  50. package/helps/integration/task/state-group-read.ms.md +8 -0
  51. package/helps/integration/task/state-group-read.zh.md +8 -0
  52. package/package.json +8 -8
  53. package/server/controllers/index.ts +1 -0
  54. package/server/controllers/publish-data.ts +29 -0
  55. package/server/engine/connector/mssql-connector.ts +43 -12
  56. package/server/engine/task/index.ts +2 -0
  57. package/server/engine/task/mssql-procedure.ts +128 -0
  58. package/server/engine/task/oracle-procedure.ts +4 -1
  59. package/server/engine/task/state-group-read.ts +69 -0
  60. package/server/service/scenario-instance/scenario-instance-type.ts +6 -9
  61. package/server/service/state-register/data-resolver.ts +56 -0
  62. package/server/service/state-register/index.ts +2 -1
  63. package/server/service/state-register/state-register-query.ts +1 -1
  64. package/server/service/state-register/state-register-type.ts +36 -20
  65. package/server/service/state-register/state-register.ts +39 -17
@@ -1,16 +1,14 @@
1
1
  import {
2
2
  CreateDateColumn,
3
3
  UpdateDateColumn,
4
- DeleteDateColumn,
5
4
  Entity,
6
5
  Index,
7
6
  Column,
8
7
  RelationId,
9
8
  ManyToOne,
10
- PrimaryGeneratedColumn,
11
- VersionColumn
9
+ PrimaryGeneratedColumn
12
10
  } from 'typeorm'
13
- import { ObjectType, Field, Int, ID, registerEnumType } from 'type-graphql'
11
+ import { ObjectType, Field, Int, ID } from 'type-graphql'
14
12
 
15
13
  import { Domain, ScalarObject } from '@things-factory/shell'
16
14
  import { User } from '@things-factory/auth-base'
@@ -19,6 +17,14 @@ import { User } from '@things-factory/auth-base'
19
17
  @Index('ix_state_register_0', (stateRegister: StateRegister) => [stateRegister.domain, stateRegister.name], {
20
18
  unique: true
21
19
  })
20
+ @Index(
21
+ 'ix_state_register_1',
22
+ (stateRegister: StateRegister) => [stateRegister.domain, stateRegister.group, stateRegister.name],
23
+ {
24
+ unique: true,
25
+ where: '"group" IS NOT NULL'
26
+ }
27
+ )
22
28
  @ObjectType({ description: 'Entity for StateRegister' })
23
29
  export class StateRegister {
24
30
  @PrimaryGeneratedColumn('uuid')
@@ -26,66 +32,82 @@ export class StateRegister {
26
32
  readonly id: string
27
33
 
28
34
  @ManyToOne(type => Domain)
29
- @Field(type => Domain)
35
+ @Field(type => Domain, { description: 'Associated domain for the state register' })
30
36
  domain?: Domain
31
37
 
32
38
  @RelationId((stateRegister: StateRegister) => stateRegister.domain)
39
+ @Field({ description: 'ID of the associated domain' })
33
40
  domainId?: string
34
41
 
35
42
  @Column()
36
- @Field({ nullable: true })
43
+ @Field({ nullable: true, description: 'Name of the state register' })
37
44
  name?: string
38
45
 
39
46
  @Column({ nullable: true })
40
- @Field({ nullable: true })
47
+ @Field({ nullable: true, description: 'Description of the state register' })
41
48
  description?: string
42
49
 
43
50
  @Column({ nullable: true })
44
- @Field({ nullable: true })
51
+ @Field({ nullable: true, description: 'Group name for the state register' })
52
+ group?: string
53
+
54
+ @Column({ nullable: true })
55
+ @Field({ nullable: true, description: 'Type of the state' })
45
56
  type?: string
46
57
 
58
+ @Column({ nullable: true })
59
+ @Field({ nullable: true, description: 'Number of decimal places if the state is a number type' })
60
+ place?: string
61
+
62
+ @Column({ nullable: true })
63
+ @Field({ nullable: true, description: 'Unit of the state value' })
64
+ unit?: string
65
+
47
66
  @Column('simple-json', { nullable: true, default: null })
48
- @Field(type => ScalarObject, { nullable: true })
67
+ @Field(type => ScalarObject, { nullable: true, description: 'Current state value' })
49
68
  state?: any
50
69
 
51
70
  @Column({ nullable: true, default: null })
52
- @Field(type => Int, { nullable: true })
71
+ @Field(type => Int, { nullable: true, description: 'Time to live for the state value in seconds' })
53
72
  ttl?: number
54
73
 
55
74
  @Column({ nullable: true })
56
- @Field({ nullable: true })
75
+ @Field({ nullable: true, description: 'Reference to an external entity or data, used as a flexible foreign key' })
57
76
  refBy?: string
58
77
 
59
78
  @Column({ nullable: true })
60
- @Field({ nullable: true })
79
+ @Field({ nullable: true, description: 'Time when the state was recorded' })
61
80
  wroteAt?: Date
62
81
 
63
82
  @CreateDateColumn()
64
- @Field({ nullable: true })
83
+ @Field({ nullable: true, description: 'Creation time of the state register' })
65
84
  createdAt?: Date
66
85
 
67
86
  @UpdateDateColumn()
68
- @Field({ nullable: true })
87
+ @Field({ nullable: true, description: 'Last update time of the state register' })
69
88
  updatedAt?: Date
70
89
 
71
90
  @ManyToOne(type => User, { nullable: true })
72
- @Field(type => User, { nullable: true })
91
+ @Field(type => User, { nullable: true, description: 'User who wrote the state' })
73
92
  writer?: User
74
93
 
75
94
  @RelationId((stateRegister: StateRegister) => stateRegister.writer)
95
+ @Field({ nullable: true, description: 'ID of the user who wrote the state' })
76
96
  writerId?: string
77
97
 
78
98
  @ManyToOne(type => User, { nullable: true })
79
- @Field(type => User, { nullable: true })
99
+ @Field(type => User, { nullable: true, description: 'User who created the state register' })
80
100
  creator?: User
81
101
 
82
102
  @RelationId((stateRegister: StateRegister) => stateRegister.creator)
103
+ @Field({ nullable: true, description: 'ID of the user who created the state register' })
83
104
  creatorId?: string
84
105
 
85
106
  @ManyToOne(type => User, { nullable: true })
86
- @Field(type => User, { nullable: true })
107
+ @Field(type => User, { nullable: true, description: 'User who last updated the state register' })
87
108
  updater?: User
88
109
 
89
110
  @RelationId((stateRegister: StateRegister) => stateRegister.updater)
111
+ @Field({ nullable: true, description: 'ID of the user who last updated the state register' })
90
112
  updaterId?: string
91
113
  }