@things-factory/print-base 6.1.81 → 6.1.88

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 (28) hide show
  1. package/dist-server/index.js +4 -0
  2. package/dist-server/index.js.map +1 -1
  3. package/dist-server/service/index.js +22 -0
  4. package/dist-server/service/index.js.map +1 -0
  5. package/dist-server/service/printer-device/index.js +9 -0
  6. package/dist-server/service/printer-device/index.js.map +1 -0
  7. package/dist-server/service/printer-device/printer-device-mutation.js +112 -0
  8. package/dist-server/service/printer-device/printer-device-mutation.js.map +1 -0
  9. package/dist-server/service/printer-device/printer-device-query.js +80 -0
  10. package/dist-server/service/printer-device/printer-device-query.js.map +1 -0
  11. package/dist-server/service/printer-device/printer-device-type.js +161 -0
  12. package/dist-server/service/printer-device/printer-device-type.js.map +1 -0
  13. package/dist-server/service/printer-device/printer-device.js +139 -0
  14. package/dist-server/service/printer-device/printer-device.js.map +1 -0
  15. package/dist-server/tsconfig.tsbuildinfo +1 -1
  16. package/package.json +4 -4
  17. package/server/index.ts +1 -0
  18. package/server/service/index.ts +21 -0
  19. package/server/service/printer-device/index.ts +7 -0
  20. package/server/service/printer-device/printer-device-mutation.ts +121 -0
  21. package/server/service/printer-device/printer-device-query.ts +53 -0
  22. package/server/service/printer-device/printer-device-type.ts +116 -0
  23. package/server/service/printer-device/printer-device.ts +118 -0
  24. package/translations/en.json +12 -0
  25. package/translations/ja.json +12 -0
  26. package/translations/ko.json +12 -0
  27. package/translations/ms.json +12 -0
  28. package/translations/zh.json +12 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@things-factory/print-base",
3
- "version": "6.1.81",
3
+ "version": "6.1.88",
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/print-proxy-service": "^6.1.81",
28
- "@things-factory/shell": "^6.1.81"
27
+ "@things-factory/print-proxy-service": "^6.1.84",
28
+ "@things-factory/shell": "^6.1.84"
29
29
  },
30
- "gitHead": "cf39cd5eb29e1abd83a71a66fbe797409b560282"
30
+ "gitHead": "c532b48aaef9dc9fca4182e38333de8fcb87e4e0"
31
31
  }
package/server/index.ts CHANGED
@@ -0,0 +1 @@
1
+ export * from './service'
@@ -0,0 +1,21 @@
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
+ ]
@@ -0,0 +1,7 @@
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]
@@ -0,0 +1,121 @@
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
+ }
@@ -0,0 +1,53 @@
1
+
2
+ import { Resolver, Query, FieldResolver, Root, Args, Arg, Ctx, Directive } from 'type-graphql'
3
+ import { ListParam, convertListParams, getRepository, getQueryBuilderFromListParams } from '@things-factory/shell'
4
+ import { PrinterDevice } from './printer-device'
5
+ import { PrinterDeviceList } from './printer-device-type'
6
+
7
+ import { User } from '@things-factory/auth-base'
8
+ import { Domain } from '@things-factory/shell'
9
+
10
+
11
+ @Resolver(PrinterDevice)
12
+ export class PrinterDeviceQuery {
13
+ @Query(returns => PrinterDevice, { description: 'To fetch a PrinterDevice' })
14
+ async printerDevice(@Arg('id') id: string, @Ctx() context: any): Promise<PrinterDevice> {
15
+ const { domain } = context.state
16
+ return await getRepository(PrinterDevice).findOne({
17
+ where: { domain: { id: domain.id }, id }
18
+ })
19
+ }
20
+
21
+ @Query(returns => PrinterDeviceList, { description: 'To fetch multiple PrinterDevices' })
22
+ async printerDevices(@Args() params: ListParam, @Ctx() context: any): Promise<PrinterDeviceList> {
23
+ const { domain } = context.state
24
+
25
+ const queryBuilder = getQueryBuilderFromListParams({
26
+ domain,
27
+ params,
28
+ repository: await getRepository(PrinterDevice),
29
+ searchables: ['name', 'description', 'printerIp', 'printerDriver']
30
+ })
31
+
32
+ const [items, total] = await queryBuilder.getManyAndCount()
33
+
34
+ return { items, total }
35
+ }
36
+
37
+
38
+
39
+ @FieldResolver(type => Domain)
40
+ async domain(@Root() printerDevice: PrinterDevice): Promise<Domain> {
41
+ return await getRepository(Domain).findOneBy({id:printerDevice.domainId})
42
+ }
43
+
44
+ @FieldResolver(type => User)
45
+ async creator(@Root() printerDevice: PrinterDevice): Promise<User> {
46
+ return await getRepository(User).findOneBy({id:printerDevice.creatorId})
47
+ }
48
+
49
+ @FieldResolver(type => User)
50
+ async updater(@Root() printerDevice: PrinterDevice): Promise<User> {
51
+ return await getRepository(User).findOneBy({id:printerDevice.updaterId})
52
+ }
53
+ }
@@ -0,0 +1,116 @@
1
+
2
+ import { ObjectType, Field, InputType, Int, ID, Float, registerEnumType } from 'type-graphql'
3
+ import { ObjectRef } from '@things-factory/shell'
4
+ import { PrinterDevice } from './printer-device'
5
+
6
+ @InputType()
7
+ export class NewPrinterDevice {
8
+
9
+ @Field({ nullable: false })
10
+ name: string
11
+
12
+ @Field({ nullable: false })
13
+ description: string
14
+
15
+ @Field({ nullable: true })
16
+ type?: string
17
+
18
+ @Field({ nullable: true })
19
+ jobType?: string
20
+
21
+ @Field({ nullable: true })
22
+ jobClass?: string
23
+
24
+ @Field({ nullable: true })
25
+ jobCategory?: string
26
+
27
+ @Field({ nullable: true })
28
+ printerIp?: string
29
+
30
+ @Field({ nullable: true })
31
+ printerDriver?: string
32
+
33
+ @Field(type =>Int, { nullable: true })
34
+ printerPort?: number
35
+
36
+ @Field({ nullable: true })
37
+ serviceUrl?: string
38
+
39
+ @Field(type =>Int, { nullable: true })
40
+ dpi?: number
41
+
42
+ @Field({ nullable: true })
43
+ status?: string
44
+
45
+ @Field({ nullable: true })
46
+ defaultFlag?: boolean
47
+
48
+ @Field({ nullable: true })
49
+ activeFlag?: boolean
50
+
51
+ @Field({ nullable: true })
52
+ note?: string
53
+ }
54
+
55
+ @InputType()
56
+ export class PrinterDevicePatch {
57
+ @Field(type => ID, { nullable: true })
58
+ id?: string
59
+
60
+ @Field({ nullable: true })
61
+ name?: string
62
+
63
+ @Field({ nullable: true })
64
+ description?: string
65
+
66
+ @Field({ nullable: true })
67
+ type?: string
68
+
69
+ @Field({ nullable: true })
70
+ jobType?: string
71
+
72
+ @Field({ nullable: true })
73
+ jobClass?: string
74
+
75
+ @Field({ nullable: true })
76
+ jobCategory?: string
77
+
78
+ @Field({ nullable: true })
79
+ printerIp?: string
80
+
81
+ @Field({ nullable: true })
82
+ printerDriver?: string
83
+
84
+ @Field(type =>Int, { nullable: true })
85
+ printerPort?: number
86
+
87
+ @Field({ nullable: true })
88
+ serviceUrl?: string
89
+
90
+ @Field(type => Int, { nullable: true })
91
+ dpi?: number
92
+
93
+ @Field({ nullable: true })
94
+ status?: string
95
+
96
+ @Field({ nullable: true })
97
+ defaultFlag?: boolean
98
+
99
+ @Field({ nullable: true })
100
+ activeFlag?: boolean
101
+
102
+ @Field({ nullable: true })
103
+ note?: string
104
+
105
+ @Field()
106
+ cuFlag: string
107
+ }
108
+
109
+ @ObjectType()
110
+ export class PrinterDeviceList {
111
+ @Field(type => [PrinterDevice])
112
+ items: PrinterDevice[]
113
+
114
+ @Field(type => Int)
115
+ total: number
116
+ }
@@ -0,0 +1,118 @@
1
+
2
+ import {
3
+ CreateDateColumn,
4
+ UpdateDateColumn,
5
+ Entity,
6
+ Index,
7
+ Column,
8
+ RelationId,
9
+ ManyToOne,
10
+ PrimaryGeneratedColumn
11
+ } from 'typeorm'
12
+ import { ObjectType, Field, Int, ID } from 'type-graphql'
13
+
14
+ import { User } from '@things-factory/auth-base'
15
+ import { Domain } from '@things-factory/shell'
16
+
17
+ @Entity('printer_devices')
18
+ @Index('ix_printer_device_0', (printerDevice: PrinterDevice) => [printerDevice.domain,printerDevice.name], { unique: true })
19
+ @Index('ix_printer_device_1', (printerDevice: PrinterDevice) => [printerDevice.domain,printerDevice.type])
20
+ @Index('ix_printer_device_2', (printerDevice: PrinterDevice) => [printerDevice.domain,printerDevice.jobType])
21
+ @Index('ix_printer_device_3', (printerDevice: PrinterDevice) => [printerDevice.domain,printerDevice.status])
22
+ @Index('ix_printer_device_4', (printerDevice: PrinterDevice) => [printerDevice.domain,printerDevice.activeFlag])
23
+ @Index('ix_printer_device_5', (printerDevice: PrinterDevice) => [printerDevice.domain,printerDevice.printerIp,printerDevice.printerDriver])
24
+ @ObjectType({ description: 'Entity for PrinterDevice' })
25
+ export class PrinterDevice {
26
+ @PrimaryGeneratedColumn('uuid')
27
+ @Field(type => ID)
28
+ readonly id: string
29
+
30
+ @Column({ name:'name', nullable:false })
31
+ @Field( { nullable:false })
32
+ name: string
33
+
34
+ @Column({ name:'description', nullable:false })
35
+ @Field( { nullable:false })
36
+ description: string
37
+
38
+ @Column({ name:'type', nullable:false })
39
+ @Field( { nullable:false })
40
+ type?: string
41
+
42
+ @Column({ name:'job_type', nullable:true })
43
+ @Field({ nullable:true })
44
+ jobType?: string
45
+
46
+ @Column({ name:'job_class', nullable:true })
47
+ @Field({ nullable:true })
48
+ jobClass?: string
49
+
50
+ @Column({ name:'job_category', nullable:true })
51
+ @Field( { nullable:true })
52
+ jobCategory?: string
53
+
54
+ @Column({ name:'printer_ip', nullable:true })
55
+ @Field( { nullable:true })
56
+ printerIp?: string
57
+
58
+ @Column({ name:'printer_driver', nullable:true })
59
+ @Field({ nullable:true })
60
+ printerDriver?: string
61
+
62
+ @Column({ name:'printer_port', type:'integer', nullable:true })
63
+ @Field(type =>Int, { nullable:true })
64
+ printerPort?: number
65
+
66
+ @Column({ name:'service_url', nullable:true })
67
+ @Field({ nullable:true })
68
+ serviceUrl?: string
69
+
70
+ @Column({ name:'dpi', type:'integer', nullable:true })
71
+ @Field(type =>Int, { nullable:true })
72
+ dpi?: number
73
+
74
+ @Column({ name:'status', nullable:true })
75
+ @Field({ nullable:true })
76
+ status?: string
77
+
78
+ @Column({ name:'default_flag', type:'boolean', nullable:true, default: false })
79
+ @Field({ nullable:true })
80
+ defaultFlag?: boolean
81
+
82
+ @Column({ name:'active_flag', type:'boolean', nullable:true, default: false })
83
+ @Field({ nullable:true })
84
+ activeFlag?: boolean
85
+
86
+ @Column({ name:'note', nullable:true })
87
+ @Field({ nullable:true })
88
+ note?: string
89
+
90
+ @ManyToOne(type => Domain, {createForeignKeyConstraints: false, nullable: false})
91
+ @Field({ nullable: false })
92
+ domain: Domain
93
+
94
+ @RelationId((printerDevice: PrinterDevice) => printerDevice.domain)
95
+ domainId: string
96
+
97
+ @ManyToOne(type => User, {createForeignKeyConstraints: false, nullable: true})
98
+ @Field({ nullable: true })
99
+ creator?: User
100
+
101
+ @RelationId((printerDevice: PrinterDevice) => printerDevice.creator)
102
+ creatorId?: string
103
+
104
+ @ManyToOne(type => User, {createForeignKeyConstraints: false, nullable: true})
105
+ @Field({ nullable: true })
106
+ updater?: User
107
+
108
+ @RelationId((printerDevice: PrinterDevice) => printerDevice.updater)
109
+ updaterId?: string
110
+
111
+ @CreateDateColumn()
112
+ @Field({ nullable: true })
113
+ createdAt?: Date
114
+
115
+ @UpdateDateColumn()
116
+ @Field({ nullable: true })
117
+ updatedAt?: Date
118
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "menu.printer-device": "Printer",
3
+ "label.printer_ip": "Printer IP",
4
+ "label.printer_driver": "Printer Driver",
5
+ "label.printer_port": "Printer Port",
6
+ "label.service_url": "Service URL",
7
+ "label.dpi": "DPI",
8
+ "label.job_type": "Job Type",
9
+ "label.job_class": "Job Class",
10
+ "label.job_category": "Job Category",
11
+ "text.printed": "printed."
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "menu.printer-device": "Printer",
3
+ "label.printer_ip": "Printer IP",
4
+ "label.printer_driver": "Printer Driver",
5
+ "label.printer_port": "Printer Port",
6
+ "label.service_url": "Service URL",
7
+ "label.dpi": "DPI",
8
+ "label.job_type": "Job Type",
9
+ "label.job_class": "Job Class",
10
+ "label.job_category": "Job Category",
11
+ "text.printed": "印刷が完了しました."
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "menu.printer-device": "프린터 관리",
3
+ "text.printed": "출력되었습니다.",
4
+ "label.printer_ip": "프린터 IP",
5
+ "label.printer_driver": "프린터 드라이버",
6
+ "label.printer_port": "프린터 포트",
7
+ "label.service_url": "서비스 URL",
8
+ "label.dpi": "DPI",
9
+ "label.job_type": "업무 유형",
10
+ "label.job_class": "업무 구분",
11
+ "label.job_category": "업무 카테고리"
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "menu.printer-device": "Printer",
3
+ "label.printer_ip": "Printer IP",
4
+ "label.printer_driver": "Printer Driver",
5
+ "label.printer_port": "Printer Port",
6
+ "label.service_url": "Service URL",
7
+ "label.dpi": "DPI",
8
+ "label.job_type": "Job Type",
9
+ "label.job_class": "Job Class",
10
+ "label.job_category": "Job Category",
11
+ "text.printed": "printed."
12
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "menu.printer-device": "Printer",
3
+ "label.printer_ip": "Printer IP",
4
+ "label.printer_driver": "Printer Driver",
5
+ "label.printer_port": "Printer Port",
6
+ "label.service_url": "Service URL",
7
+ "label.dpi": "DPI",
8
+ "label.job_type": "Job Type",
9
+ "label.job_class": "Job Class",
10
+ "label.job_category": "Job Category",
11
+ "text.printed": "printed."
12
+ }