@things-factory/print-base 8.0.0-beta.1 → 8.0.0-beta.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/print-base",
3
- "version": "8.0.0-beta.1",
3
+ "version": "8.0.0-beta.4",
4
4
  "main": "dist-server/index.js",
5
5
  "browser": "client/index.js",
6
6
  "things-factory": true,
@@ -24,8 +24,8 @@
24
24
  "prepublish": "npm run build"
25
25
  },
26
26
  "dependencies": {
27
- "@things-factory/auth-base": "^8.0.0-beta.1",
28
- "@things-factory/shell": "^8.0.0-beta.1"
27
+ "@things-factory/auth-base": "^8.0.0-beta.4",
28
+ "@things-factory/shell": "^8.0.0-beta.4"
29
29
  },
30
- "gitHead": "36c494e587640c1490318ef7b95adab02606e0c2"
30
+ "gitHead": "d83d12ed4ba07177dff1dac26e37be347d156b43"
31
31
  }
package/server/index.ts DELETED
@@ -1 +0,0 @@
1
- export * from './service'
@@ -1,21 +0,0 @@
1
- /* EXPORT ENTITY TYPES */
2
- export * from './printer-device/printer-device'
3
-
4
- /* IMPORT ENTITIES AND RESOLVERS */
5
- import { entities as PrinterDeviceEntities, resolvers as PrinterDeviceResolvers } from './printer-device'
6
-
7
- export const entities = [
8
- /* ENTITIES */
9
- ...PrinterDeviceEntities
10
- ]
11
-
12
- export const schema = {
13
- resolverClasses: [
14
- /* RESOLVER CLASSES */
15
- ...PrinterDeviceResolvers
16
- ]
17
- }
18
-
19
- export const subscribers = [
20
- /* SUBSCRIBERS */
21
- ]
@@ -1,7 +0,0 @@
1
-
2
- import { PrinterDevice } from './printer-device'
3
- import { PrinterDeviceQuery } from './printer-device-query'
4
- import { PrinterDeviceMutation } from './printer-device-mutation'
5
-
6
- export const entities = [PrinterDevice]
7
- export const resolvers = [PrinterDeviceQuery, PrinterDeviceMutation]
@@ -1,121 +0,0 @@
1
-
2
- import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'
3
- import { In } from 'typeorm'
4
- import { PrinterDevice } from './printer-device'
5
- import { NewPrinterDevice, PrinterDevicePatch } from './printer-device-type'
6
- import { Domain, getRepository } from '@things-factory/shell'
7
- import { User } from '@things-factory/auth-base'
8
-
9
- @Resolver(PrinterDevice)
10
- export class PrinterDeviceMutation {
11
- @Directive('@transaction')
12
- @Mutation(returns => PrinterDevice, { description: 'To create new PrinterDevice' })
13
- async createPrinterDevice(@Arg('printerDevice') printerDevice: NewPrinterDevice, @Ctx() context: any): Promise<PrinterDevice> {
14
- const { domain, user, tx } = context.state
15
-
16
- return await tx.getRepository(PrinterDevice).save({
17
- ...printerDevice,
18
- domain,
19
- creator: user,
20
- updater: user
21
- })
22
- }
23
-
24
- @Directive('@transaction')
25
- @Mutation(returns => PrinterDevice, { description: 'To modify PrinterDevice information' })
26
- async updatePrinterDevice(
27
- @Arg('id') id: string,
28
- @Arg('patch') patch: PrinterDevicePatch,
29
- @Ctx() context: any
30
- ): Promise<PrinterDevice> {
31
- const { domain, user, tx } = context.state
32
-
33
- const repository = tx.getRepository(PrinterDevice)
34
- const printerDevice = await repository.findOne(
35
- {
36
- where: { domain: { id: domain.id }, id },
37
- relations: ['domain','updater','creator']
38
- }
39
- )
40
-
41
- return await repository.save({
42
- ...printerDevice,
43
- ...patch,
44
- updater: user
45
- })
46
- }
47
-
48
- @Directive('@transaction')
49
- @Mutation(returns => [PrinterDevice], { description: "To modify multiple PrinterDevices' information" })
50
- async updateMultiplePrinterDevice(
51
- @Arg('patches', type => [PrinterDevicePatch]) patches: PrinterDevicePatch[],
52
- @Ctx() context: any
53
- ): Promise<PrinterDevice[]> {
54
- const { domain, user, tx } = context.state
55
-
56
- let results = []
57
- const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')
58
- const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')
59
- const printerDeviceRepo = tx.getRepository(PrinterDevice)
60
-
61
- if (_createRecords.length > 0) {
62
- for (let i = 0; i < _createRecords.length; i++) {
63
- const newRecord = _createRecords[i]
64
-
65
- const result = await printerDeviceRepo.save({
66
- ...newRecord,
67
- domain,
68
- creator: user,
69
- updater: user
70
- })
71
-
72
- results.push({ ...result, cuFlag: '+' })
73
- }
74
- }
75
-
76
- if (_updateRecords.length > 0) {
77
- for (let i = 0; i < _updateRecords.length; i++) {
78
- const updRecord = _updateRecords[i]
79
- const printerDevice = await printerDeviceRepo.findOne({
80
- where: { domain: { id: domain.id }, id:updRecord.id },
81
- relations: ['domain','updater','creator']
82
- })
83
-
84
- const result = await printerDeviceRepo.save({
85
- ...printerDevice,
86
- ...updRecord,
87
- updater: user
88
- })
89
-
90
- results.push({ ...result, cuFlag: 'M' })
91
- }
92
- }
93
-
94
- return results
95
- }
96
-
97
- @Directive('@transaction')
98
- @Mutation(returns => Boolean, { description: 'To delete PrinterDevice' })
99
- async deletePrinterDevice(@Arg('id') id: string, @Ctx() context: any): Promise<boolean> {
100
- const { domain, tx, user } = context.state
101
- await tx.getRepository(PrinterDevice).remove({ domain, id, updater:user })
102
- return true
103
- }
104
-
105
- @Directive('@transaction')
106
- @Mutation(returns => Boolean, { description: 'To delete multiple printerDevices' })
107
- async deletePrinterDevices(
108
- @Arg('ids', type => [String]) ids: string[],
109
- @Ctx() context: any
110
- ): Promise<boolean> {
111
- const { domain, tx, user } = context.state
112
-
113
- let delEntitis = ids.map(id=>{
114
- return {domain,id,updater:user}
115
- })
116
-
117
- await tx.getRepository(PrinterDevice).remove(delEntitis)
118
-
119
- return true
120
- }
121
- }
@@ -1,49 +0,0 @@
1
- import { Resolver, Query, FieldResolver, Root, Args, Arg, Ctx, Directive } from 'type-graphql'
2
- import { ListParam, convertListParams, getRepository, getQueryBuilderFromListParams } from '@things-factory/shell'
3
- import { PrinterDevice } from './printer-device'
4
- import { PrinterDeviceList } from './printer-device-type'
5
-
6
- import { User } from '@things-factory/auth-base'
7
- import { Domain } from '@things-factory/shell'
8
-
9
- @Resolver(PrinterDevice)
10
- export class PrinterDeviceQuery {
11
- @Query(returns => PrinterDevice, { description: 'To fetch a PrinterDevice' })
12
- async printerDevice(@Arg('id') id: string, @Ctx() context: any): Promise<PrinterDevice> {
13
- const { domain } = context.state
14
- return await getRepository(PrinterDevice).findOne({
15
- where: { domain: { id: domain.id }, id }
16
- })
17
- }
18
-
19
- @Query(returns => PrinterDeviceList, { description: 'To fetch multiple PrinterDevices' })
20
- async printerDevices(@Args(type => ListParam) params: ListParam, @Ctx() context: any): Promise<PrinterDeviceList> {
21
- const { domain } = context.state
22
-
23
- const queryBuilder = getQueryBuilderFromListParams({
24
- domain,
25
- params,
26
- repository: await getRepository(PrinterDevice),
27
- searchables: ['name', 'description', 'printerIp', 'printerDriver']
28
- })
29
-
30
- const [items, total] = await queryBuilder.getManyAndCount()
31
-
32
- return { items, total }
33
- }
34
-
35
- @FieldResolver(type => Domain)
36
- async domain(@Root() printerDevice: PrinterDevice): Promise<Domain> {
37
- return await getRepository(Domain).findOneBy({ id: printerDevice.domainId })
38
- }
39
-
40
- @FieldResolver(type => User)
41
- async creator(@Root() printerDevice: PrinterDevice): Promise<User> {
42
- return await getRepository(User).findOneBy({ id: printerDevice.creatorId })
43
- }
44
-
45
- @FieldResolver(type => User)
46
- async updater(@Root() printerDevice: PrinterDevice): Promise<User> {
47
- return await getRepository(User).findOneBy({ id: printerDevice.updaterId })
48
- }
49
- }
@@ -1,114 +0,0 @@
1
- import { ObjectType, Field, InputType, Int, ID, Float, registerEnumType } from 'type-graphql'
2
- import { ObjectRef } from '@things-factory/shell'
3
- import { PrinterDevice } from './printer-device'
4
-
5
- @InputType()
6
- export class NewPrinterDevice {
7
- @Field({ nullable: false })
8
- name: string
9
-
10
- @Field({ nullable: false })
11
- description: string
12
-
13
- @Field({ nullable: true })
14
- type?: string
15
-
16
- @Field({ nullable: true })
17
- jobType?: string
18
-
19
- @Field({ nullable: true })
20
- jobClass?: string
21
-
22
- @Field({ nullable: true })
23
- jobCategory?: string
24
-
25
- @Field({ nullable: true })
26
- printerIp?: string
27
-
28
- @Field({ nullable: true })
29
- printerDriver?: string
30
-
31
- @Field(type => Int, { nullable: true })
32
- printerPort?: number
33
-
34
- @Field({ nullable: true })
35
- serviceUrl?: string
36
-
37
- @Field(type => Int, { nullable: true })
38
- dpi?: number
39
-
40
- @Field({ nullable: true })
41
- status?: string
42
-
43
- @Field({ nullable: true })
44
- defaultFlag?: boolean
45
-
46
- @Field({ nullable: true })
47
- activeFlag?: boolean
48
-
49
- @Field({ nullable: true })
50
- note?: string
51
- }
52
-
53
- @InputType()
54
- export class PrinterDevicePatch {
55
- @Field(type => ID, { nullable: true })
56
- id?: string
57
-
58
- @Field({ nullable: true })
59
- name?: string
60
-
61
- @Field({ nullable: true })
62
- description?: string
63
-
64
- @Field({ nullable: true })
65
- type?: string
66
-
67
- @Field({ nullable: true })
68
- jobType?: string
69
-
70
- @Field({ nullable: true })
71
- jobClass?: string
72
-
73
- @Field({ nullable: true })
74
- jobCategory?: string
75
-
76
- @Field({ nullable: true })
77
- printerIp?: string
78
-
79
- @Field({ nullable: true })
80
- printerDriver?: string
81
-
82
- @Field(type => Int, { nullable: true })
83
- printerPort?: number
84
-
85
- @Field({ nullable: true })
86
- serviceUrl?: string
87
-
88
- @Field(type => Int, { nullable: true })
89
- dpi?: number
90
-
91
- @Field({ nullable: true })
92
- status?: string
93
-
94
- @Field({ nullable: true })
95
- defaultFlag?: boolean
96
-
97
- @Field({ nullable: true })
98
- activeFlag?: boolean
99
-
100
- @Field({ nullable: true })
101
- note?: string
102
-
103
- @Field()
104
- cuFlag: string
105
- }
106
-
107
- @ObjectType()
108
- export class PrinterDeviceList {
109
- @Field(type => [PrinterDevice])
110
- items: PrinterDevice[]
111
-
112
- @Field(type => Int)
113
- total: number
114
- }
@@ -1,123 +0,0 @@
1
- import {
2
- CreateDateColumn,
3
- UpdateDateColumn,
4
- Entity,
5
- Index,
6
- Column,
7
- RelationId,
8
- ManyToOne,
9
- PrimaryGeneratedColumn
10
- } from 'typeorm'
11
- import { ObjectType, Field, Int, ID } from 'type-graphql'
12
-
13
- import { User } from '@things-factory/auth-base'
14
- import { Domain } from '@things-factory/shell'
15
-
16
- @Entity('printer_devices')
17
- @Index('ix_printer_device_0', (printerDevice: PrinterDevice) => [printerDevice.domain, printerDevice.name], {
18
- unique: true
19
- })
20
- @Index('ix_printer_device_1', (printerDevice: PrinterDevice) => [printerDevice.domain, printerDevice.type])
21
- @Index('ix_printer_device_2', (printerDevice: PrinterDevice) => [printerDevice.domain, printerDevice.jobType])
22
- @Index('ix_printer_device_3', (printerDevice: PrinterDevice) => [printerDevice.domain, printerDevice.status])
23
- @Index('ix_printer_device_4', (printerDevice: PrinterDevice) => [printerDevice.domain, printerDevice.activeFlag])
24
- @Index('ix_printer_device_5', (printerDevice: PrinterDevice) => [
25
- printerDevice.domain,
26
- printerDevice.printerIp,
27
- printerDevice.printerDriver
28
- ])
29
- @ObjectType({ description: 'Entity for PrinterDevice' })
30
- export class PrinterDevice {
31
- @PrimaryGeneratedColumn('uuid')
32
- @Field(type => ID)
33
- readonly id: string
34
-
35
- @Column({ name: 'name', nullable: false })
36
- @Field({ nullable: false })
37
- name: string
38
-
39
- @Column({ name: 'description', nullable: false })
40
- @Field({ nullable: false })
41
- description: string
42
-
43
- @Column({ name: 'type', nullable: false })
44
- @Field({ nullable: false })
45
- type?: string
46
-
47
- @Column({ name: 'job_type', nullable: true })
48
- @Field({ nullable: true })
49
- jobType?: string
50
-
51
- @Column({ name: 'job_class', nullable: true })
52
- @Field({ nullable: true })
53
- jobClass?: string
54
-
55
- @Column({ name: 'job_category', nullable: true })
56
- @Field({ nullable: true })
57
- jobCategory?: string
58
-
59
- @Column({ name: 'printer_ip', nullable: true })
60
- @Field({ nullable: true })
61
- printerIp?: string
62
-
63
- @Column({ name: 'printer_driver', nullable: true })
64
- @Field({ nullable: true })
65
- printerDriver?: string
66
-
67
- @Column({ name: 'printer_port', type: 'integer', nullable: true })
68
- @Field(type => Int, { nullable: true })
69
- printerPort?: number
70
-
71
- @Column({ name: 'service_url', nullable: true })
72
- @Field({ nullable: true })
73
- serviceUrl?: string
74
-
75
- @Column({ name: 'dpi', type: 'integer', nullable: true })
76
- @Field(type => Int, { nullable: true })
77
- dpi?: number
78
-
79
- @Column({ name: 'status', nullable: true })
80
- @Field({ nullable: true })
81
- status?: string
82
-
83
- @Column({ name: 'default_flag', nullable: true, default: false })
84
- @Field({ nullable: true })
85
- defaultFlag?: boolean
86
-
87
- @Column({ name: 'active_flag', nullable: true, default: false })
88
- @Field({ nullable: true })
89
- activeFlag?: boolean
90
-
91
- @Column({ name: 'note', nullable: true })
92
- @Field({ nullable: true })
93
- note?: string
94
-
95
- @ManyToOne(type => Domain, { createForeignKeyConstraints: false, nullable: false })
96
- @Field({ nullable: false })
97
- domain: Domain
98
-
99
- @RelationId((printerDevice: PrinterDevice) => printerDevice.domain)
100
- domainId: string
101
-
102
- @ManyToOne(type => User, { createForeignKeyConstraints: false, nullable: true })
103
- @Field(type => User, { nullable: true })
104
- creator?: User
105
-
106
- @RelationId((printerDevice: PrinterDevice) => printerDevice.creator)
107
- creatorId?: string
108
-
109
- @ManyToOne(type => User, { createForeignKeyConstraints: false, nullable: true })
110
- @Field(type => User, { nullable: true })
111
- updater?: User
112
-
113
- @RelationId((printerDevice: PrinterDevice) => printerDevice.updater)
114
- updaterId?: string
115
-
116
- @CreateDateColumn()
117
- @Field({ nullable: true })
118
- createdAt?: Date
119
-
120
- @UpdateDateColumn()
121
- @Field({ nullable: true })
122
- updatedAt?: Date
123
- }