@things-factory/worklist-client 8.0.38 → 9.0.0-9.0.0-beta.59.0
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-client/tsconfig.tsbuildinfo +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +7 -7
- package/client/bootstrap.ts +0 -1
- package/client/index.ts +0 -0
- package/client/pages/work-center/work-center-importer.ts +0 -87
- package/client/pages/work-center/work-center-list-page.ts +0 -323
- package/client/pages/work-center/work-center-page.ts +0 -95
- package/client/route.ts +0 -7
- package/client/tsconfig.json +0 -13
- package/server/controllers/activity-registry.ts +0 -17
- package/server/controllers/graphql-client.ts +0 -67
- package/server/controllers/index.ts +0 -4
- package/server/controllers/webhooks/decorators.ts +0 -18
- package/server/controllers/webhooks/index.ts +0 -30
- package/server/controllers/work-center/connect-work-center.ts +0 -15
- package/server/controllers/work-center/get-work-center.ts +0 -9
- package/server/controllers/work-center/index.ts +0 -2
- package/server/controllers/worklist-api/assign-activity-thread.ts +0 -3
- package/server/controllers/worklist-api/draft-activity-instance.ts +0 -3
- package/server/controllers/worklist-api/get-activity-list.ts +0 -3
- package/server/controllers/worklist-api/get-activity.ts +0 -3
- package/server/controllers/worklist-api/get-todo-list.ts +0 -4
- package/server/controllers/worklist-api/index.ts +0 -8
- package/server/controllers/worklist-api/register-activity.ts +0 -3
- package/server/controllers/worklist-api/unregister-activity.ts +0 -3
- package/server/controllers/worklist-api/update-activity.ts +0 -3
- package/server/index.ts +0 -3
- package/server/routes.ts +0 -46
- package/server/service/activity/activity-model-type.ts +0 -106
- package/server/service/activity/activity-mutation.ts +0 -85
- package/server/service/activity/activity-query.ts +0 -64
- package/server/service/activity/activity-type.ts +0 -134
- package/server/service/activity/activity.ts +0 -133
- package/server/service/activity/index.ts +0 -6
- package/server/service/index.ts +0 -36
- package/server/service/work-center/event-subscriber.ts +0 -17
- package/server/service/work-center/index.ts +0 -9
- package/server/service/work-center/work-center-history.ts +0 -120
- package/server/service/work-center/work-center-mutation.ts +0 -198
- package/server/service/work-center/work-center-query.ts +0 -65
- package/server/service/work-center/work-center-type.ts +0 -61
- package/server/service/work-center/work-center.ts +0 -75
- package/server/tsconfig.json +0 -10
package/server/service/index.ts
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
/* EXPORT ENTITY TYPES */
|
|
2
|
-
export * from './activity/activity'
|
|
3
|
-
export * from './work-center/work-center'
|
|
4
|
-
|
|
5
|
-
/* IMPORT ENTITIES AND RESOLVERS */
|
|
6
|
-
import {
|
|
7
|
-
entities as ActivityEntities,
|
|
8
|
-
resolvers as ActivityResolvers,
|
|
9
|
-
subscribers as ActivitySubscribers
|
|
10
|
-
} from './activity'
|
|
11
|
-
|
|
12
|
-
import {
|
|
13
|
-
entities as WorkCenterEntities,
|
|
14
|
-
resolvers as WorkCenterResolvers,
|
|
15
|
-
subscribers as WorkCenterSubscribers
|
|
16
|
-
} from './work-center'
|
|
17
|
-
|
|
18
|
-
export const entities = [
|
|
19
|
-
/* ENTITIES */
|
|
20
|
-
...ActivityEntities,
|
|
21
|
-
...WorkCenterEntities
|
|
22
|
-
]
|
|
23
|
-
|
|
24
|
-
export const subscribers = [
|
|
25
|
-
/* SUBSCRIBERS */
|
|
26
|
-
...ActivitySubscribers,
|
|
27
|
-
...WorkCenterSubscribers
|
|
28
|
-
]
|
|
29
|
-
|
|
30
|
-
export const schema = {
|
|
31
|
-
resolverClasses: [
|
|
32
|
-
/* RESOLVER CLASSES */
|
|
33
|
-
...ActivityResolvers,
|
|
34
|
-
...WorkCenterResolvers
|
|
35
|
-
]
|
|
36
|
-
}
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { EventSubscriber } from 'typeorm'
|
|
2
|
-
|
|
3
|
-
import { HistoryEntitySubscriber } from '@operato/typeorm-history'
|
|
4
|
-
|
|
5
|
-
import { WorkCenter } from './work-center'
|
|
6
|
-
import { WorkCenterHistory } from './work-center-history'
|
|
7
|
-
|
|
8
|
-
@EventSubscriber()
|
|
9
|
-
export class WorkCenterHistoryEntitySubscriber extends HistoryEntitySubscriber<WorkCenter, WorkCenterHistory> {
|
|
10
|
-
public get entity() {
|
|
11
|
-
return WorkCenter
|
|
12
|
-
}
|
|
13
|
-
|
|
14
|
-
public get historyEntity() {
|
|
15
|
-
return WorkCenterHistory
|
|
16
|
-
}
|
|
17
|
-
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { WorkCenter } from './work-center'
|
|
2
|
-
import { WorkCenterHistory } from './work-center-history'
|
|
3
|
-
import { WorkCenterQuery } from './work-center-query'
|
|
4
|
-
import { WorkCenterMutation } from './work-center-mutation'
|
|
5
|
-
import { WorkCenterHistoryEntitySubscriber } from './event-subscriber'
|
|
6
|
-
|
|
7
|
-
export const entities = [WorkCenter, WorkCenterHistory]
|
|
8
|
-
export const resolvers = [WorkCenterQuery, WorkCenterMutation]
|
|
9
|
-
export const subscribers = [WorkCenterHistoryEntitySubscriber]
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
import { Field, ID, ObjectType } from 'type-graphql'
|
|
2
|
-
import { Column, Entity, Index, ManyToOne, PrimaryGeneratedColumn, RelationId } from 'typeorm'
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
HistoryActionColumn,
|
|
6
|
-
HistoryActionType,
|
|
7
|
-
HistoryEntityInterface,
|
|
8
|
-
HistoryOriginalIdColumn
|
|
9
|
-
} from '@operato/typeorm-history'
|
|
10
|
-
import { Role, User } from '@things-factory/auth-base'
|
|
11
|
-
import { config } from '@things-factory/env'
|
|
12
|
-
import { Domain } from '@things-factory/shell'
|
|
13
|
-
|
|
14
|
-
import { WorkCenter, WorkCenterStatus } from './work-center'
|
|
15
|
-
|
|
16
|
-
const ORMCONFIG = config.get('ormconfig', {})
|
|
17
|
-
const DATABASE_TYPE = ORMCONFIG.type
|
|
18
|
-
|
|
19
|
-
@Entity()
|
|
20
|
-
@Index(
|
|
21
|
-
'ix_work-center_history_0',
|
|
22
|
-
(workCenterHistory: WorkCenterHistory) => [workCenterHistory.originalId, workCenterHistory.version],
|
|
23
|
-
{ unique: true }
|
|
24
|
-
)
|
|
25
|
-
@Index(
|
|
26
|
-
'ix_work-center_history_1',
|
|
27
|
-
(workCenterHistory: WorkCenterHistory) => [
|
|
28
|
-
workCenterHistory.domain,
|
|
29
|
-
workCenterHistory.originalId,
|
|
30
|
-
workCenterHistory.version
|
|
31
|
-
],
|
|
32
|
-
{ unique: true }
|
|
33
|
-
)
|
|
34
|
-
@ObjectType({ description: 'History Entity of WorkCenter' })
|
|
35
|
-
export class WorkCenterHistory implements HistoryEntityInterface<WorkCenter> {
|
|
36
|
-
@PrimaryGeneratedColumn('uuid')
|
|
37
|
-
@Field(type => ID)
|
|
38
|
-
readonly id: string
|
|
39
|
-
|
|
40
|
-
@Column({ nullable: true, default: 1 })
|
|
41
|
-
@Field({ nullable: true })
|
|
42
|
-
version?: number = 1
|
|
43
|
-
|
|
44
|
-
@ManyToOne(type => Domain)
|
|
45
|
-
@Field(type => Domain)
|
|
46
|
-
domain?: Domain
|
|
47
|
-
|
|
48
|
-
@RelationId((workCenter: WorkCenter) => workCenter.domain)
|
|
49
|
-
domainId?: string
|
|
50
|
-
|
|
51
|
-
@Column()
|
|
52
|
-
@Field()
|
|
53
|
-
name: string
|
|
54
|
-
|
|
55
|
-
@Column({ nullable: true })
|
|
56
|
-
@Field({ nullable: true })
|
|
57
|
-
description?: string
|
|
58
|
-
|
|
59
|
-
@Column({ nullable: true })
|
|
60
|
-
@Field({ nullable: true })
|
|
61
|
-
active?: boolean
|
|
62
|
-
|
|
63
|
-
@Column({ nullable: true })
|
|
64
|
-
@Field({ nullable: true })
|
|
65
|
-
state?: WorkCenterStatus
|
|
66
|
-
|
|
67
|
-
@Column({ nullable: true })
|
|
68
|
-
@Field({ nullable: true })
|
|
69
|
-
params?: string
|
|
70
|
-
|
|
71
|
-
@Column({ nullable: true })
|
|
72
|
-
@Field({ nullable: true })
|
|
73
|
-
createdAt?: Date
|
|
74
|
-
|
|
75
|
-
@Column({ nullable: true })
|
|
76
|
-
@Field({ nullable: true })
|
|
77
|
-
updatedAt?: Date
|
|
78
|
-
|
|
79
|
-
@Column({ nullable: true })
|
|
80
|
-
@Field({ nullable: true })
|
|
81
|
-
deletedAt?: Date
|
|
82
|
-
|
|
83
|
-
@ManyToOne(type => User, { nullable: true })
|
|
84
|
-
@Field(type => User, { nullable: true })
|
|
85
|
-
creator?: User
|
|
86
|
-
|
|
87
|
-
@RelationId((workCenter: WorkCenter) => workCenter.creator)
|
|
88
|
-
creatorId?: string
|
|
89
|
-
|
|
90
|
-
@ManyToOne(type => User, { nullable: true })
|
|
91
|
-
@Field(type => User, { nullable: true })
|
|
92
|
-
updater?: User
|
|
93
|
-
|
|
94
|
-
@RelationId((workCenter: WorkCenter) => workCenter.updater)
|
|
95
|
-
updaterId?: string
|
|
96
|
-
|
|
97
|
-
@Field(type => String, { nullable: true })
|
|
98
|
-
thumbnail?: string
|
|
99
|
-
|
|
100
|
-
@HistoryOriginalIdColumn()
|
|
101
|
-
public originalId!: string
|
|
102
|
-
|
|
103
|
-
@HistoryActionColumn({
|
|
104
|
-
nullable: false,
|
|
105
|
-
type:
|
|
106
|
-
DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb'
|
|
107
|
-
? 'enum'
|
|
108
|
-
: DATABASE_TYPE == 'oracle'
|
|
109
|
-
? 'varchar2'
|
|
110
|
-
: DATABASE_TYPE == 'mssql'
|
|
111
|
-
? 'nvarchar'
|
|
112
|
-
: 'varchar',
|
|
113
|
-
enum:
|
|
114
|
-
DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb'
|
|
115
|
-
? HistoryActionType
|
|
116
|
-
: undefined,
|
|
117
|
-
length: DATABASE_TYPE == 'postgres' || DATABASE_TYPE == 'mysql' || DATABASE_TYPE == 'mariadb' ? undefined : 10
|
|
118
|
-
})
|
|
119
|
-
public action!: HistoryActionType
|
|
120
|
-
}
|
|
@@ -1,198 +0,0 @@
|
|
|
1
|
-
import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'
|
|
2
|
-
import { In } from 'typeorm'
|
|
3
|
-
|
|
4
|
-
import { createAttachment, deleteAttachmentsByRef } from '@things-factory/attachment-base'
|
|
5
|
-
|
|
6
|
-
import { WorkCenter } from './work-center'
|
|
7
|
-
import { NewWorkCenter, WorkCenterPatch } from './work-center-type'
|
|
8
|
-
|
|
9
|
-
@Resolver(WorkCenter)
|
|
10
|
-
export class WorkCenterMutation {
|
|
11
|
-
@Directive('@transaction')
|
|
12
|
-
@Mutation(returns => WorkCenter, { description: 'To create new WorkCenter' })
|
|
13
|
-
async createWorkCenter(@Arg('workCenter') workCenter: NewWorkCenter, @Ctx() context: ResolverContext): Promise<WorkCenter> {
|
|
14
|
-
const { domain, user, tx } = context.state
|
|
15
|
-
|
|
16
|
-
const result = await tx.getRepository(WorkCenter).save({
|
|
17
|
-
...workCenter,
|
|
18
|
-
domain,
|
|
19
|
-
creator: user,
|
|
20
|
-
updater: user
|
|
21
|
-
})
|
|
22
|
-
|
|
23
|
-
if (workCenter.thumbnail) {
|
|
24
|
-
await createAttachment(
|
|
25
|
-
null,
|
|
26
|
-
{
|
|
27
|
-
attachment: {
|
|
28
|
-
file: workCenter.thumbnail,
|
|
29
|
-
refType: WorkCenter.name,
|
|
30
|
-
refBy: result.id
|
|
31
|
-
}
|
|
32
|
-
},
|
|
33
|
-
context
|
|
34
|
-
)
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
return result
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
@Directive('@transaction')
|
|
41
|
-
@Mutation(returns => WorkCenter, { description: 'To modify WorkCenter information' })
|
|
42
|
-
async updateWorkCenter(
|
|
43
|
-
@Arg('id') id: string,
|
|
44
|
-
@Arg('patch') patch: WorkCenterPatch,
|
|
45
|
-
@Ctx() context: ResolverContext
|
|
46
|
-
): Promise<WorkCenter> {
|
|
47
|
-
const { domain, user, tx } = context.state
|
|
48
|
-
|
|
49
|
-
const repository = tx.getRepository(WorkCenter)
|
|
50
|
-
const workCenter = await repository.findOne({
|
|
51
|
-
where: { domain: { id: domain.id }, id }
|
|
52
|
-
})
|
|
53
|
-
|
|
54
|
-
const result = await repository.save({
|
|
55
|
-
...workCenter,
|
|
56
|
-
...patch,
|
|
57
|
-
updater: user
|
|
58
|
-
})
|
|
59
|
-
|
|
60
|
-
if (patch.thumbnail) {
|
|
61
|
-
await deleteAttachmentsByRef(null, { refBys: [result.id] }, context)
|
|
62
|
-
await createAttachment(
|
|
63
|
-
null,
|
|
64
|
-
{
|
|
65
|
-
attachment: {
|
|
66
|
-
file: patch.thumbnail,
|
|
67
|
-
refType: WorkCenter.name,
|
|
68
|
-
refBy: result.id
|
|
69
|
-
}
|
|
70
|
-
},
|
|
71
|
-
context
|
|
72
|
-
)
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
return result
|
|
76
|
-
}
|
|
77
|
-
|
|
78
|
-
@Directive('@transaction')
|
|
79
|
-
@Mutation(returns => [WorkCenter], { description: "To modify multiple WorkCenters' information" })
|
|
80
|
-
async updateMultipleWorkCenter(
|
|
81
|
-
@Arg('patches', type => [WorkCenterPatch]) patches: WorkCenterPatch[],
|
|
82
|
-
@Ctx() context: ResolverContext
|
|
83
|
-
): Promise<WorkCenter[]> {
|
|
84
|
-
const { domain, user, tx } = context.state
|
|
85
|
-
|
|
86
|
-
let results = []
|
|
87
|
-
const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')
|
|
88
|
-
const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')
|
|
89
|
-
const workCenterRepo = tx.getRepository(WorkCenter)
|
|
90
|
-
|
|
91
|
-
if (_createRecords.length > 0) {
|
|
92
|
-
for (let i = 0; i < _createRecords.length; i++) {
|
|
93
|
-
const newRecord = _createRecords[i]
|
|
94
|
-
|
|
95
|
-
const result = await workCenterRepo.save({
|
|
96
|
-
...newRecord,
|
|
97
|
-
domain,
|
|
98
|
-
creator: user,
|
|
99
|
-
updater: user
|
|
100
|
-
})
|
|
101
|
-
|
|
102
|
-
if (newRecord.thumbnail) {
|
|
103
|
-
await createAttachment(
|
|
104
|
-
null,
|
|
105
|
-
{
|
|
106
|
-
attachment: {
|
|
107
|
-
file: newRecord.thumbnail,
|
|
108
|
-
refType: WorkCenter.name,
|
|
109
|
-
refBy: result.id
|
|
110
|
-
}
|
|
111
|
-
},
|
|
112
|
-
context
|
|
113
|
-
)
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
results.push({ ...result, cuFlag: '+' })
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
if (_updateRecords.length > 0) {
|
|
121
|
-
for (let i = 0; i < _updateRecords.length; i++) {
|
|
122
|
-
const updateRecord = _updateRecords[i]
|
|
123
|
-
const workCenter = await workCenterRepo.findOneBy({ id: updateRecord.id })
|
|
124
|
-
|
|
125
|
-
const result = await workCenterRepo.save({
|
|
126
|
-
...workCenter,
|
|
127
|
-
...updateRecord,
|
|
128
|
-
updater: user
|
|
129
|
-
})
|
|
130
|
-
|
|
131
|
-
if (updateRecord.thumbnail) {
|
|
132
|
-
await deleteAttachmentsByRef(null, { refBys: [result.id] }, context)
|
|
133
|
-
await createAttachment(
|
|
134
|
-
null,
|
|
135
|
-
{
|
|
136
|
-
attachment: {
|
|
137
|
-
file: updateRecord.thumbnail,
|
|
138
|
-
refType: WorkCenter.name,
|
|
139
|
-
refBy: result.id
|
|
140
|
-
}
|
|
141
|
-
},
|
|
142
|
-
context
|
|
143
|
-
)
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
results.push({ ...result, cuFlag: 'M' })
|
|
147
|
-
}
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
return results
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
@Directive('@transaction')
|
|
154
|
-
@Mutation(returns => Boolean, { description: 'To delete WorkCenter' })
|
|
155
|
-
async deleteWorkCenter(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<boolean> {
|
|
156
|
-
const { domain, tx } = context.state
|
|
157
|
-
|
|
158
|
-
await tx.getRepository(WorkCenter).delete({ domain: { id: domain.id }, id })
|
|
159
|
-
await deleteAttachmentsByRef(null, { refBys: [id] }, context)
|
|
160
|
-
|
|
161
|
-
return true
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
@Directive('@transaction')
|
|
165
|
-
@Mutation(returns => Boolean, { description: 'To delete multiple WorkCenters' })
|
|
166
|
-
async deleteWorkCenters(
|
|
167
|
-
@Arg('ids', type => [String]) ids: string[],
|
|
168
|
-
@Ctx() context: ResolverContext
|
|
169
|
-
): Promise<boolean> {
|
|
170
|
-
const { domain, tx } = context.state
|
|
171
|
-
|
|
172
|
-
await tx.getRepository(WorkCenter).delete({
|
|
173
|
-
domain: { id: domain.id },
|
|
174
|
-
id: In(ids)
|
|
175
|
-
})
|
|
176
|
-
|
|
177
|
-
await deleteAttachmentsByRef(null, { refBys: ids }, context)
|
|
178
|
-
|
|
179
|
-
return true
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
@Directive('@transaction')
|
|
183
|
-
@Mutation(returns => Boolean, { description: 'To import multiple WorkCenters' })
|
|
184
|
-
async importWorkCenters(
|
|
185
|
-
@Arg('workCenters', type => [WorkCenterPatch]) workCenters: WorkCenterPatch[],
|
|
186
|
-
@Ctx() context: ResolverContext
|
|
187
|
-
): Promise<boolean> {
|
|
188
|
-
const { domain, tx } = context.state
|
|
189
|
-
|
|
190
|
-
await Promise.all(
|
|
191
|
-
workCenters.map(async (workCenter: WorkCenterPatch) => {
|
|
192
|
-
const createdWorkCenter: WorkCenter = await tx.getRepository(WorkCenter).save({ domain, ...workCenter })
|
|
193
|
-
})
|
|
194
|
-
)
|
|
195
|
-
|
|
196
|
-
return true
|
|
197
|
-
}
|
|
198
|
-
}
|
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { Resolver, Query, FieldResolver, Root, Args, Arg, Ctx, Directive } from 'type-graphql'
|
|
2
|
-
import { Attachment } from '@things-factory/attachment-base'
|
|
3
|
-
import { Domain, getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'
|
|
4
|
-
import { User } from '@things-factory/auth-base'
|
|
5
|
-
import { WorkCenter } from './work-center'
|
|
6
|
-
import { WorkCenterList } from './work-center-type'
|
|
7
|
-
|
|
8
|
-
@Resolver(WorkCenter)
|
|
9
|
-
export class WorkCenterQuery {
|
|
10
|
-
@Query(returns => WorkCenter!, { nullable: true, description: 'To fetch a WorkCenter' })
|
|
11
|
-
async workCenter(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<WorkCenter> {
|
|
12
|
-
const { domain } = context.state
|
|
13
|
-
|
|
14
|
-
return await getRepository(WorkCenter).findOne({
|
|
15
|
-
where: { domain: { id: domain.id }, id }
|
|
16
|
-
})
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
@Query(returns => WorkCenterList, { description: 'To fetch multiple WorkCenters' })
|
|
20
|
-
async workCenters(
|
|
21
|
-
@Args(type => ListParam) params: ListParam,
|
|
22
|
-
@Ctx() context: ResolverContext
|
|
23
|
-
): Promise<WorkCenterList> {
|
|
24
|
-
const { domain } = context.state
|
|
25
|
-
|
|
26
|
-
const queryBuilder = getQueryBuilderFromListParams({
|
|
27
|
-
domain,
|
|
28
|
-
params,
|
|
29
|
-
repository: await getRepository(WorkCenter),
|
|
30
|
-
searchables: ['name', 'description']
|
|
31
|
-
})
|
|
32
|
-
|
|
33
|
-
const [items, total] = await queryBuilder.getManyAndCount()
|
|
34
|
-
|
|
35
|
-
return { items, total }
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
@FieldResolver(type => String)
|
|
39
|
-
async thumbnail(@Root() workCenter: WorkCenter): Promise<string | undefined> {
|
|
40
|
-
const attachment: Attachment = await getRepository(Attachment).findOne({
|
|
41
|
-
where: {
|
|
42
|
-
domain: { id: workCenter.domainId },
|
|
43
|
-
refType: WorkCenter.name,
|
|
44
|
-
refBy: workCenter.id
|
|
45
|
-
}
|
|
46
|
-
})
|
|
47
|
-
|
|
48
|
-
return attachment?.fullpath
|
|
49
|
-
}
|
|
50
|
-
|
|
51
|
-
@FieldResolver(type => Domain)
|
|
52
|
-
async domain(@Root() workCenter: WorkCenter): Promise<Domain> {
|
|
53
|
-
return await getRepository(Domain).findOneBy({ id: workCenter.domainId })
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
@FieldResolver(type => User)
|
|
57
|
-
async updater(@Root() workCenter: WorkCenter): Promise<User> {
|
|
58
|
-
return await getRepository(User).findOneBy({ id: workCenter.updaterId })
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
@FieldResolver(type => User)
|
|
62
|
-
async creator(@Root() workCenter: WorkCenter): Promise<User> {
|
|
63
|
-
return await getRepository(User).findOneBy({ id: workCenter.creatorId })
|
|
64
|
-
}
|
|
65
|
-
}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import type { FileUpload } from 'graphql-upload/GraphQLUpload.js'
|
|
2
|
-
import GraphQLUpload from 'graphql-upload/GraphQLUpload.js'
|
|
3
|
-
import { ObjectType, Field, InputType, Int, ID, registerEnumType } from 'type-graphql'
|
|
4
|
-
|
|
5
|
-
import { ObjectRef, ScalarObject } from '@things-factory/shell'
|
|
6
|
-
|
|
7
|
-
import { WorkCenter, WorkCenterStatus } from './work-center'
|
|
8
|
-
|
|
9
|
-
@InputType()
|
|
10
|
-
export class NewWorkCenter {
|
|
11
|
-
@Field()
|
|
12
|
-
name: string
|
|
13
|
-
|
|
14
|
-
@Field({ nullable: true })
|
|
15
|
-
description?: string
|
|
16
|
-
|
|
17
|
-
@Field(type => WorkCenterStatus, { nullable: true })
|
|
18
|
-
state?: WorkCenterStatus
|
|
19
|
-
|
|
20
|
-
@Field({ nullable: true })
|
|
21
|
-
active?: boolean
|
|
22
|
-
|
|
23
|
-
@Field({ nullable: true })
|
|
24
|
-
params?: string
|
|
25
|
-
|
|
26
|
-
@Field(type => GraphQLUpload, { nullable: true })
|
|
27
|
-
thumbnail?: FileUpload
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
@InputType()
|
|
31
|
-
export class WorkCenterPatch {
|
|
32
|
-
@Field(type => ID, { nullable: true })
|
|
33
|
-
id?: string
|
|
34
|
-
|
|
35
|
-
@Field({ nullable: true })
|
|
36
|
-
name?: string
|
|
37
|
-
|
|
38
|
-
@Field({ nullable: true })
|
|
39
|
-
description?: string
|
|
40
|
-
|
|
41
|
-
@Field(type => WorkCenterStatus, { nullable: true })
|
|
42
|
-
state?: WorkCenterStatus
|
|
43
|
-
|
|
44
|
-
@Field({ nullable: true })
|
|
45
|
-
active?: boolean
|
|
46
|
-
|
|
47
|
-
@Field(type => GraphQLUpload, { nullable: true })
|
|
48
|
-
thumbnail?: FileUpload
|
|
49
|
-
|
|
50
|
-
@Field({ nullable: true })
|
|
51
|
-
cuFlag?: string
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
@ObjectType()
|
|
55
|
-
export class WorkCenterList {
|
|
56
|
-
@Field(type => [WorkCenter])
|
|
57
|
-
items: WorkCenter[]
|
|
58
|
-
|
|
59
|
-
@Field(type => Int)
|
|
60
|
-
total: number
|
|
61
|
-
}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
CreateDateColumn,
|
|
3
|
-
UpdateDateColumn,
|
|
4
|
-
Entity,
|
|
5
|
-
Index,
|
|
6
|
-
Column,
|
|
7
|
-
RelationId,
|
|
8
|
-
ManyToOne,
|
|
9
|
-
PrimaryGeneratedColumn,
|
|
10
|
-
VersionColumn
|
|
11
|
-
} from 'typeorm'
|
|
12
|
-
import { ObjectType, Field, Int, ID, registerEnumType } from 'type-graphql'
|
|
13
|
-
|
|
14
|
-
import { Domain } from '@things-factory/shell'
|
|
15
|
-
import { User } from '@things-factory/auth-base'
|
|
16
|
-
|
|
17
|
-
export enum WorkCenterStatus {
|
|
18
|
-
STATUS_A = 'STATUS_A',
|
|
19
|
-
STATUS_B = 'STATUS_B'
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
registerEnumType(WorkCenterStatus, {
|
|
23
|
-
name: 'WorkCenterStatus',
|
|
24
|
-
description: 'state enumeration of a workCenter'
|
|
25
|
-
})
|
|
26
|
-
|
|
27
|
-
@Entity()
|
|
28
|
-
@Index('ix_work_center_0', (workCenter: WorkCenter) => [workCenter.domain], { unique: true })
|
|
29
|
-
@ObjectType({ description: 'Entity for WorkCenter' })
|
|
30
|
-
export class WorkCenter {
|
|
31
|
-
@PrimaryGeneratedColumn('uuid')
|
|
32
|
-
@Field(type => ID)
|
|
33
|
-
readonly id: string
|
|
34
|
-
|
|
35
|
-
@VersionColumn()
|
|
36
|
-
@Field({ nullable: true })
|
|
37
|
-
version?: number = 1
|
|
38
|
-
|
|
39
|
-
@ManyToOne(type => Domain)
|
|
40
|
-
@Field(type => Domain)
|
|
41
|
-
domain?: Domain
|
|
42
|
-
|
|
43
|
-
@RelationId((workCenter: WorkCenter) => workCenter.domain)
|
|
44
|
-
domainId?: string
|
|
45
|
-
|
|
46
|
-
@Column()
|
|
47
|
-
@Field({ nullable: true })
|
|
48
|
-
workCenterId?: string
|
|
49
|
-
|
|
50
|
-
@Column()
|
|
51
|
-
@Field({ nullable: true })
|
|
52
|
-
name?: string
|
|
53
|
-
|
|
54
|
-
@CreateDateColumn()
|
|
55
|
-
@Field({ nullable: true })
|
|
56
|
-
createdAt?: Date
|
|
57
|
-
|
|
58
|
-
@UpdateDateColumn()
|
|
59
|
-
@Field({ nullable: true })
|
|
60
|
-
updatedAt?: Date
|
|
61
|
-
|
|
62
|
-
@ManyToOne(type => User, { nullable: true })
|
|
63
|
-
@Field(type => User, { nullable: true })
|
|
64
|
-
creator?: User
|
|
65
|
-
|
|
66
|
-
@RelationId((workCenter: WorkCenter) => workCenter.creator)
|
|
67
|
-
creatorId?: string
|
|
68
|
-
|
|
69
|
-
@ManyToOne(type => User, { nullable: true })
|
|
70
|
-
@Field(type => User, { nullable: true })
|
|
71
|
-
updater?: User
|
|
72
|
-
|
|
73
|
-
@RelationId((workCenter: WorkCenter) => workCenter.updater)
|
|
74
|
-
updaterId?: string
|
|
75
|
-
}
|