@things-factory/operato-hub 4.3.236 → 4.3.238
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/config.development.js +106 -78
- package/dist-server/graphql/resolvers/synchronization/powrup-pack-order.js +121 -0
- package/dist-server/graphql/resolvers/synchronization/powrup-pack-order.js.map +1 -0
- package/dist-server/routers/internal/apis/create-bizplace.js +7 -6
- package/dist-server/routers/internal/apis/create-bizplace.js.map +1 -1
- package/dist-server/routers/internal/apis/create-company.js +5 -6
- package/dist-server/routers/internal/apis/create-company.js.map +1 -1
- package/dist-server/routers/internal/apis/create-partner.js +9 -9
- package/dist-server/routers/internal/apis/create-partner.js.map +1 -1
- package/dist-server/routers/internal/apis/create-user.js +2 -2
- package/dist-server/routers/internal/apis/create-user.js.map +1 -1
- package/dist-server/routers/internal/apis/invite-user.js +7 -7
- package/dist-server/routers/internal/apis/invite-user.js.map +1 -1
- package/dist-server/routers/internal/apis/terminate-partner.js +7 -7
- package/dist-server/routers/internal/apis/terminate-partner.js.map +1 -1
- package/dist-server/routers/internal/apis/terminate-user.js +7 -7
- package/dist-server/routers/internal/apis/terminate-user.js.map +1 -1
- package/dist-server/routers/internal/apis/update-bizplace.js +2 -2
- package/dist-server/routers/internal/apis/update-bizplace.js.map +1 -1
- package/dist-server/routers/internal/apis/update-company.js +4 -8
- package/dist-server/routers/internal/apis/update-company.js.map +1 -1
- package/dist-server/routers/internal/apis/update-user.js +1 -1
- package/dist-server/routers/internal/apis/update-user.js.map +1 -1
- package/dist-server/routers/internal/powrup-router.js +17 -17
- package/dist-server/routers/internal/powrup-router.js.map +1 -1
- package/dist-server/routers/internal/utils/params.js +34 -59
- package/dist-server/routers/internal/utils/params.js.map +1 -1
- package/package.json +51 -50
- package/server/graphql/resolvers/synchronization/powrup-pack-order.ts +156 -0
- package/server/routers/internal/apis/create-bizplace.ts +7 -6
- package/server/routers/internal/apis/create-company.ts +5 -6
- package/server/routers/internal/apis/create-partner.ts +9 -9
- package/server/routers/internal/apis/create-user.ts +2 -2
- package/server/routers/internal/apis/invite-user.ts +7 -7
- package/server/routers/internal/apis/terminate-partner.ts +7 -7
- package/server/routers/internal/apis/terminate-user.ts +7 -7
- package/server/routers/internal/apis/update-bizplace.ts +2 -2
- package/server/routers/internal/apis/update-company.ts +4 -9
- package/server/routers/internal/apis/update-user.ts +1 -1
- package/server/routers/internal/powrup-router.ts +17 -17
- package/server/routers/internal/utils/params.ts +34 -59
- package/translations/ja.json +69 -0
package/config.development.js
CHANGED
|
@@ -1,14 +1,29 @@
|
|
|
1
1
|
module.exports = {
|
|
2
2
|
domainType: 'company',
|
|
3
3
|
domainExtType: 'company',
|
|
4
|
+
useVirtualHostBasedDomain: false,
|
|
5
|
+
fallbackRoute: '/',
|
|
4
6
|
subdomainOffset: 2,
|
|
7
|
+
port: 3000,
|
|
8
|
+
inspect: '9260',
|
|
9
|
+
// ormconfig: {
|
|
10
|
+
// name: 'default',
|
|
11
|
+
// type: 'postgres',
|
|
12
|
+
// database: 'dev',
|
|
13
|
+
// username: 'postgres',
|
|
14
|
+
// password: 'abcd1234',
|
|
15
|
+
// host: 'operatov3.cluster-cijhm4n1hbst.ap-southeast-1.rds.amazonaws.com',
|
|
16
|
+
// port: 55432,
|
|
17
|
+
// synchronize: false,
|
|
18
|
+
// logging: true
|
|
19
|
+
// },
|
|
5
20
|
// ormconfig: {
|
|
6
21
|
// name: 'default',
|
|
7
22
|
// type: 'postgres',
|
|
8
|
-
// database: '
|
|
23
|
+
// database: 'v3-hub1',
|
|
9
24
|
// username: 'postgres',
|
|
10
25
|
// password: 'hatio',
|
|
11
|
-
// host: '
|
|
26
|
+
// host: 'localhost',
|
|
12
27
|
// port: 15432,
|
|
13
28
|
// synchronize: true,
|
|
14
29
|
// logging: true
|
|
@@ -16,96 +31,116 @@ module.exports = {
|
|
|
16
31
|
ormconfig: {
|
|
17
32
|
name: 'default',
|
|
18
33
|
type: 'postgres',
|
|
19
|
-
database: '
|
|
34
|
+
database: 'dev2',
|
|
20
35
|
username: 'postgres',
|
|
21
|
-
password: '
|
|
22
|
-
host: '
|
|
23
|
-
port:
|
|
24
|
-
synchronize:
|
|
25
|
-
logging:
|
|
36
|
+
password: 'hatio',
|
|
37
|
+
host: '192.168.0.161',
|
|
38
|
+
port: 15432,
|
|
39
|
+
synchronize: true,
|
|
40
|
+
logging: true
|
|
26
41
|
},
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
42
|
+
// ormconfig: {
|
|
43
|
+
// name: 'default',
|
|
44
|
+
// type: 'postgres',
|
|
45
|
+
// database: 'dev',
|
|
46
|
+
// username: 'postgres',
|
|
47
|
+
// password: 'hatio',
|
|
48
|
+
// host: 'localhost',
|
|
49
|
+
// port: 15432,
|
|
50
|
+
// synchronize: true,
|
|
51
|
+
// logging: true
|
|
52
|
+
// },
|
|
53
|
+
password: {
|
|
54
|
+
lowerCase: true,
|
|
55
|
+
upperCase: false,
|
|
56
|
+
digit: false,
|
|
57
|
+
specialCharacter: false,
|
|
58
|
+
allowRepeat: true,
|
|
59
|
+
useTightPattern: false,
|
|
60
|
+
useLoosePattern: true,
|
|
61
|
+
tightCharacterLength: 4,
|
|
62
|
+
looseCharacterLength: 4,
|
|
63
|
+
history: 2
|
|
49
64
|
},
|
|
50
|
-
|
|
65
|
+
sftpFileStorage: {
|
|
66
|
+
type: 's3',
|
|
67
|
+
accessKeyId: 'AKIAUQEOPWEJKL43OMZA',
|
|
68
|
+
secretAccessKey: 'OG2qS0Usg4wyjPWbfv1ahPZzP80/w8z4i8MYHl+e',
|
|
69
|
+
bucketName: 'operato-sftp'
|
|
70
|
+
},
|
|
71
|
+
// storage: {
|
|
72
|
+
// type: 's3',
|
|
73
|
+
// accessKeyId: 'AKIAUQEOPWEJCDH6AR5H',
|
|
74
|
+
// secretAccessKey: 'AuDAgmODf9EJNB24OveRhTSLV/OJy6IFFoRxe8k2',
|
|
75
|
+
// bucketName: 'opa-one',
|
|
76
|
+
// region: 'ap-southeast-1'
|
|
77
|
+
// },
|
|
78
|
+
uploads: 'uploads',
|
|
79
|
+
attachmentsPath: 'attachments',
|
|
51
80
|
SECRET: '0xD58F835B69D207A76CC5F84a70a1D0d4C79dfC95',
|
|
52
|
-
|
|
81
|
+
logger: {
|
|
82
|
+
file: {
|
|
83
|
+
filename: 'logs/application-%DATE%.log',
|
|
84
|
+
datePattern: 'YYYY-MM-DD-HH',
|
|
85
|
+
zippedArchive: true,
|
|
86
|
+
maxSize: '200m',
|
|
87
|
+
maxFiles: '1m',
|
|
88
|
+
level: 'info'
|
|
89
|
+
}
|
|
90
|
+
},
|
|
53
91
|
email: {
|
|
54
92
|
host: 'smtp.office365.com',
|
|
55
93
|
port: 587,
|
|
56
94
|
secure: false, // true for 465, false for other ports
|
|
57
95
|
auth: {
|
|
58
|
-
user: '
|
|
96
|
+
user: 'noreply@hatiolab.com', // generated ethereal user
|
|
59
97
|
pass: 'h@ti0LAB1008' // generated ethereal password
|
|
60
98
|
},
|
|
61
99
|
secureConnection: false,
|
|
62
100
|
tls: {
|
|
63
101
|
ciphers: 'SSLv3'
|
|
64
|
-
}
|
|
65
|
-
|
|
102
|
+
}
|
|
103
|
+
},
|
|
104
|
+
sender: 'noreply@hatiolab.com',
|
|
105
|
+
notification: {
|
|
106
|
+
// fcm: {
|
|
107
|
+
// serviceAccount: {
|
|
108
|
+
// project_id: 'operato',
|
|
109
|
+
// private_key:
|
|
110
|
+
// '-----BEGIN PRIVATE KEY-----\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDYNOfyNjPMSeG9\nzU1qs0cpVK5cVfadcUaw5g+hkQZMOMlAA7uqW2eX4vkayj7MzbYUayH+sei8044Q\nJIyl6f26dNX1VT3UgTmSmCS0v48EBEZHCgusrUGFjduLRN6OS6uvrXW1xKA18k9q\nai1C2EHCXF2AE4PTvf239RC1UIOnVePcMtT7rMTdHRO4s8OKVuSDbzIt8k1cV3Zt\nES0YsJlkELqBisYpV//2/ZSILTt39J9JzrVef03X9kkoo9p+YnNyy6tWsfQPfgJO\nybiRGBNxiyJ/E2pxRo/WqU0go9OzYJlGaSUrUx09heNiRD1b0MAOmyPDJz/6AaTk\nkU/A+kLzAgMBAAECggEADQ5s2gtR53VSujk1V/Xe8e0Di99DwaWUj5w6YhcK7/wX\nPdQRN4Fw6RLeLjL7xeG/rCNSwzm6hKSrQJL5zLnWW7XbMdyQRk6jdmnVAEv3zACi\nFH9+eFK3e+Q214XfgWz/v4p/FZdRLCYni5VBNHcwyWxLLS/V1ynzB3KM1sDiTRmI\npcT7+uTtwrKgJq64sXtFE2pYrFxDdCiyqzkhv/2ed4YIowAjpKBbbcCDKeVxVkoz\nC1P4PAzs9EeUuKSWYrWaUjN17lqtRlYeT1ylR1PIJuWqd4cKfgoEgz+lHwRPDCEX\nAYbk3nofiJIPBhSfCHrXS755wK48mY8vMwFdfCPJeQKBgQDsz4tjYTHdat5A25n5\nekwMxZwFQ5OvMV4eulwZUDMypTAYSz1iB6sDlgwKDm5omZIfuneqCEIvrqxV/kx3\n5wV/DANHO3hYxdp/NV7rM23xmqlaKZhHQbDono1Fm/LP6DEmJiD7N2eFKsXYcPpR\nSAIdCv0X3zkDQ4zRi51yJlCXzQKBgQDpufJBxCoXngiQJ2j14lWVAeOOdQ6zh5Ip\nBcDwF0X67cNSN3Wl40bS4yLFdolhEAyj5m0WPuYYXpjzhHhZ0W3V3ItdBkrmwIvy\nWOWu26qN0ZbwxVS2qVpHuj6iHWJKHuDZZUkFtJg3BeeBSOUHSA8TvjnA0xd83xeb\n8ZJasWoFvwKBgQDFs/gQ/gIdcq0exLfluh5nw0qgcmyHpNWJHdjqITS9IX/nqFkU\n0IYLtmdStf2jQiLmbkydHcvz9wZVvLqml67VBHhwLcwpgPULoskd34/4V0Dvzy4c\nv1Esw8H5zVqIDLeLu+VpFjZMzQrjyl6RIWbyTExEc84rVWfpQYAu3qIGOQKBgAFr\nXatEk7TdAtRNSPflTfu/rTAaSeKROjQBkvBiU8x4US1YpOBDBxUUyAtG8wKh5FHC\nfnsaGq+fM3KXJVv2R6J62mXQOfg4xyDLpWlwcBK4aSBBMoiBcsjouqSlZQlqMpdf\nZBgixqHe6U8BsFJg/6ZxC0y+e3AIss4Bo4/lb+1lAoGAFOexvaBh21K6W3inmRW4\nLlkVYJaBJ20OwokXg5aXjBiHxqmk7VLAuFbkpb5LOKH2xPILRQ0OEkn51yVymS3T\n9lLpHOFTQXt5tF2/F7NW7kaQJNlLr/h5jPi3O9XHeFmuaN2z150ZB6zzgjeGKzr8\ni+1fgTsRfDtNw8xkSH9qL1Y=\n-----END PRIVATE KEY-----\n',
|
|
111
|
+
// client_email: 'firebase-adminsdk-xmm2e@operato.iam.gserviceaccount.com'
|
|
112
|
+
// },
|
|
113
|
+
// appConfig: {
|
|
114
|
+
// apiKey: 'AIzaSyDdTM2BTLHSt2LNS0G5QB8G0i4KBXFiG7U',
|
|
115
|
+
// projectId: 'operato',
|
|
116
|
+
// messagingSenderId: 79537064975,
|
|
117
|
+
// appId: '1:79537064975:web:32f53119e9c8c6ee2a277a'
|
|
118
|
+
// },
|
|
119
|
+
// serverKey:
|
|
120
|
+
// 'AAAAEoTHTA8:APA91bGwt-4HT82Dfwf_VwbQaKT0_qHd0Y3tuW41udjWz5Lz0Ko0mEMD6WbHHSILvQpa6yuoGGKCMsrU7VW2qWRrUm3CYpyG9oSwshNm1tIhljAnOuUfwHCoawbVLwf9qlWpHt4dwCoc'
|
|
121
|
+
// },
|
|
122
|
+
// vapidKey: {
|
|
123
|
+
// subject: 'mailto:heartyoh@hatiolab.com',
|
|
124
|
+
// publicKey: 'BAkVkITsCXBIsYL1yeaBmx5_dn57we-ZXMjirPPHzC2dan82cdEnAio_53PQ-1_w3ykWCBPrrFAWQ_d9N4cFF0o',
|
|
125
|
+
// privateKey: '4pmlt3Wk019u7nqU3Q_oGZE6LbUDjjf8DpmAcn9-iss'
|
|
126
|
+
// }
|
|
66
127
|
},
|
|
67
|
-
awsSesEmail: 'support@hatio.asia',
|
|
68
|
-
// awsSesEmail: {
|
|
69
|
-
// email: 'support@hatio.asia',
|
|
70
|
-
// accessKeyId: 'AKIAUQEOPWEJKL43OMZA',
|
|
71
|
-
// secretAccessKey: 'OG2qS0Usg4wyjPWbfv1ahPZzP80/w8z4i8MYHl+e'
|
|
72
|
-
// },
|
|
73
|
-
attachmentsPath: 'attachment',
|
|
74
128
|
fulfillmentIntegrationOperato: {
|
|
75
|
-
host: 'operato.com:3000',
|
|
129
|
+
host: 'operato-h.com:3000',
|
|
76
130
|
protocol: 'http',
|
|
77
131
|
platform: 'operato',
|
|
78
132
|
application: 'Operato MMS',
|
|
79
133
|
appKey: 'a9bf751e622bf146662b240d58971051',
|
|
80
134
|
appSecret: '1c385935dc131c4b902b9bbf6a4798af',
|
|
81
|
-
|
|
82
|
-
callback: 'http://operato.com:9000/callback-operato'
|
|
83
|
-
},
|
|
84
|
-
fulfillmentIntegrationOperatoSftp: {
|
|
85
|
-
host: 'operato.com:3000',
|
|
86
|
-
protocol: 'http',
|
|
87
|
-
platform: 'operato',
|
|
88
|
-
application: 'Operato SFTP',
|
|
89
|
-
appKey: 'd3ebaf18121947931b5902d78adc9a98',
|
|
90
|
-
appSecret: '41e5591dd6597a75ae5d54603494525b',
|
|
91
|
-
type: 'SFTP',
|
|
92
|
-
callback: 'http://operato.com:9000/callback-operato'
|
|
135
|
+
callback: 'http://operato-retail.com:5000/callback-operato'
|
|
93
136
|
},
|
|
94
137
|
marketplaceIntegrationShopee: {
|
|
95
138
|
platform: 'shopee',
|
|
96
139
|
isUAT: false,
|
|
97
140
|
application: 'Operato MMS',
|
|
98
141
|
partnerId: 846025,
|
|
99
|
-
partnerKey: 'd34cfd85a603f196a0d74ebe08043280c1a27788bb36bdffd61e7e0bb1c90b64'
|
|
100
|
-
v2: true
|
|
142
|
+
partnerKey: 'd34cfd85a603f196a0d74ebe08043280c1a27788bb36bdffd61e7e0bb1c90b64'
|
|
101
143
|
},
|
|
102
|
-
// marketplaceIntegrationShopee: {
|
|
103
|
-
// platform: 'shopee',
|
|
104
|
-
// isUAT: false,
|
|
105
|
-
// application: 'Staging MMS',
|
|
106
|
-
// partnerId: 845525,
|
|
107
|
-
// partnerKey: '4a3f4214fd0f0bda970b342a99b6f8705fc7bacad2743cffa7ed67b79840665e'
|
|
108
|
-
// },
|
|
109
144
|
marketplaceIntegrationLazada: {
|
|
110
145
|
platform: 'lazada',
|
|
111
146
|
application: 'operato-mms',
|
|
@@ -113,19 +148,12 @@ module.exports = {
|
|
|
113
148
|
appSecret: 'HB3RTNEXHlVSlBr9SmWF8AjbSUT7a825',
|
|
114
149
|
callback: 'https://maybank.operato-m.com/lazada-callback'
|
|
115
150
|
},
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
apiKey: 'Et0KqtLvA6e92bDvOywy9eCCud4hpAal8akpqI90'
|
|
124
|
-
},
|
|
125
|
-
sftpFileStorage: {
|
|
126
|
-
type: 's3',
|
|
127
|
-
accessKeyId: 'AKIAUQEOPWEJKL43OMZA',
|
|
128
|
-
secretAccessKey: 'OG2qS0Usg4wyjPWbfv1ahPZzP80/w8z4i8MYHl+e',
|
|
129
|
-
bucketName: 'operato-sftp'
|
|
151
|
+
accountingIntegrationXero: {
|
|
152
|
+
platform: 'xero',
|
|
153
|
+
application: 'Operato WMS',
|
|
154
|
+
apiKey: '6B12D1AAC05347DC92159C2AEC812859',
|
|
155
|
+
apiSecret: 'T139_ItMjObC82mmy7iwnNflhd2iV0kUvDBj0P_201EmA7Sj',
|
|
156
|
+
callback: 'http://operato-h.com:3000/callback-xero',
|
|
157
|
+
hostname: 'http://operato-h.com:3000/'
|
|
130
158
|
}
|
|
131
159
|
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.powrupPackOrderResolver = void 0;
|
|
4
|
+
const typeorm_1 = require("typeorm");
|
|
5
|
+
const env_1 = require("@things-factory/env");
|
|
6
|
+
const integration_base_1 = require("@things-factory/integration-base");
|
|
7
|
+
const integration_powrup_1 = require("@things-factory/integration-powrup");
|
|
8
|
+
const sales_base_1 = require("@things-factory/sales-base");
|
|
9
|
+
const worksheet_base_1 = require("@things-factory/worksheet-base");
|
|
10
|
+
exports.powrupPackOrderResolver = {
|
|
11
|
+
async powrupPackOrder(_, {}, context) {
|
|
12
|
+
try {
|
|
13
|
+
await (0, typeorm_1.getConnection)().transaction(async (tx) => {
|
|
14
|
+
try {
|
|
15
|
+
const powrup = await tx.getRepository(integration_powrup_1.Powrup).findOne({ where: { platform: 'powrup' } });
|
|
16
|
+
let releaseGoodQb = await tx
|
|
17
|
+
.getRepository(sales_base_1.ReleaseGood)
|
|
18
|
+
.createQueryBuilder('rg')
|
|
19
|
+
.innerJoinAndSelect('rg.domain', 'domain')
|
|
20
|
+
.innerJoinAndSelect('rg.bizplace', 'bizplace')
|
|
21
|
+
.innerJoinAndSelect('rg.creator', 'creator')
|
|
22
|
+
.innerJoinAndSelect('rg.orderProducts', 'op')
|
|
23
|
+
.innerJoinAndSelect('op.product', 'prd')
|
|
24
|
+
.innerJoinAndSelect('op.productDetail', 'pd')
|
|
25
|
+
.where(`rg.source = :source`, { source: 'POWRUP' })
|
|
26
|
+
.andWhere(`rg.type = :rgType`, { rgType: 'b2c' })
|
|
27
|
+
.andWhere(`rg.status NOT IN(:...status) `, {
|
|
28
|
+
status: [sales_base_1.ORDER_STATUS.CANCELLED, sales_base_1.ORDER_STATUS.PENDING_CANCEL, sales_base_1.ORDER_STATUS.DONE]
|
|
29
|
+
})
|
|
30
|
+
.andWhere(qb => {
|
|
31
|
+
const subQuery = qb
|
|
32
|
+
.subQuery()
|
|
33
|
+
.from(worksheet_base_1.Worksheet, 'ws')
|
|
34
|
+
.innerJoin('ws.worksheetDetails', 'wsd')
|
|
35
|
+
.innerJoin('wsd.targetInventory', 'oi')
|
|
36
|
+
.where('rg.id = oi.release_good_id')
|
|
37
|
+
.andWhere('ws.type IN (:...wsType)', { wsType: ['PICKING', 'BATCH_PICKING'] })
|
|
38
|
+
.getQuery();
|
|
39
|
+
return 'EXISTS ' + subQuery;
|
|
40
|
+
})
|
|
41
|
+
.andWhere(qb => {
|
|
42
|
+
const subQuery = qb.subQuery().from(sales_base_1.OrderPackage, 'opk').where('rg.id = opk.release_good_id').getQuery();
|
|
43
|
+
return 'NOT EXISTS ' + subQuery;
|
|
44
|
+
});
|
|
45
|
+
let releaseGoodsWithoutPackageId = await releaseGoodQb.getMany();
|
|
46
|
+
if ((releaseGoodsWithoutPackageId === null || releaseGoodsWithoutPackageId === void 0 ? void 0 : releaseGoodsWithoutPackageId.length) > 0) {
|
|
47
|
+
await Promise.all(releaseGoodsWithoutPackageId.map(async (releaseGood) => {
|
|
48
|
+
const orderProducts = releaseGood.orderProducts;
|
|
49
|
+
if ((releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.lastMarketPackCall) &&
|
|
50
|
+
worksheet_base_1.DateTimeDifference.timeDifferenceInSeconds(releaseGood.lastMarketPackCall, new Date()) <= 5) {
|
|
51
|
+
return false;
|
|
52
|
+
}
|
|
53
|
+
await (0, typeorm_1.getRepository)(sales_base_1.ReleaseGood).update({ id: releaseGood.id }, {
|
|
54
|
+
lastMarketPackCall: new Date()
|
|
55
|
+
});
|
|
56
|
+
await (0, typeorm_1.getConnection)().transaction(async (tx2) => {
|
|
57
|
+
try {
|
|
58
|
+
const orderPack = await integration_powrup_1.PowrupAPI.packOrder(powrup, {
|
|
59
|
+
context: { state: { domain: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.domain, user: null } },
|
|
60
|
+
refOrderId: releaseGood.refOrderId
|
|
61
|
+
});
|
|
62
|
+
(0, integration_base_1.createPayloadLog)(releaseGood.bizplace.id, `/order-pack`, { name: releaseGood.name, refNo: releaseGood.refNo, refOrderId: releaseGood.refOrderId }, JSON.stringify(orderPack), { state: { domain: releaseGood === null || releaseGood === void 0 ? void 0 : releaseGood.domain, user: null } }, integration_base_1.PayloadType.EGESTION, 'scheduler');
|
|
63
|
+
if (orderPack === null || orderPack === void 0 ? void 0 : orderPack.packages) {
|
|
64
|
+
const packages = orderPack.packages;
|
|
65
|
+
await tx2.getRepository(sales_base_1.ReleaseGood).update({ id: releaseGood.id }, {
|
|
66
|
+
packageId: packages[0].packageId,
|
|
67
|
+
lastMarketPackCall: new Date(),
|
|
68
|
+
updatedAt: new Date()
|
|
69
|
+
});
|
|
70
|
+
for (let idx = 0; idx < packages.length; idx++) {
|
|
71
|
+
let pkg = packages[idx];
|
|
72
|
+
const items = pkg.items;
|
|
73
|
+
const orderPackage = {
|
|
74
|
+
name: sales_base_1.OrderNoGenerator.orderPackage(),
|
|
75
|
+
packageId: pkg.packageId,
|
|
76
|
+
status: sales_base_1.ORDER_STATUS.PROCESSING,
|
|
77
|
+
releaseGood,
|
|
78
|
+
domain: releaseGood.domain,
|
|
79
|
+
bizplace: releaseGood.bizplace,
|
|
80
|
+
creator: releaseGood.creator,
|
|
81
|
+
updater: releaseGood.updater
|
|
82
|
+
};
|
|
83
|
+
let savedOrderPackage = await tx2.getRepository(sales_base_1.OrderPackage).save(orderPackage);
|
|
84
|
+
const orderPackageItems = items.map(itm => {
|
|
85
|
+
const { refCode, qty } = itm;
|
|
86
|
+
const matchedOrderProduct = orderProducts.find(op => op.productDetail.refCode == refCode);
|
|
87
|
+
return {
|
|
88
|
+
name: sales_base_1.OrderNoGenerator.orderPackageItem(),
|
|
89
|
+
orderProduct: matchedOrderProduct,
|
|
90
|
+
status: sales_base_1.ORDER_STATUS.PROCESSING,
|
|
91
|
+
releaseQty: qty,
|
|
92
|
+
orderPackage: savedOrderPackage,
|
|
93
|
+
domain: releaseGood.domain,
|
|
94
|
+
bizplace: releaseGood.bizplace,
|
|
95
|
+
creator: releaseGood.creator,
|
|
96
|
+
updater: releaseGood.updater
|
|
97
|
+
};
|
|
98
|
+
});
|
|
99
|
+
await tx2.getRepository(sales_base_1.OrderPackageItem).save(orderPackageItems);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
catch (e) {
|
|
104
|
+
env_1.logger.error(`powrupPackOrder[PackOrder]: ${e}`);
|
|
105
|
+
await tx2.getRepository(sales_base_1.ReleaseGood).update({ id: releaseGood.id }, { packOrderFail: true });
|
|
106
|
+
}
|
|
107
|
+
});
|
|
108
|
+
}));
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
catch (e) {
|
|
112
|
+
env_1.logger.error(`powrupPackOrder[ROSearch]: ${e}`);
|
|
113
|
+
}
|
|
114
|
+
});
|
|
115
|
+
}
|
|
116
|
+
catch (e) {
|
|
117
|
+
env_1.logger.error(`powrupPackOrder[MainError]: ${e}`);
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
};
|
|
121
|
+
//# sourceMappingURL=powrup-pack-order.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"powrup-pack-order.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/synchronization/powrup-pack-order.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,20 +9,21 @@ const generate_bizplace_domain_roles_1 = require("../../../controllers/bizplace-
|
|
|
9
9
|
const error_util_1 = require("../utils/error-util");
|
|
10
10
|
async function createBizplace(request, context, tx) {
|
|
11
11
|
const { data: bizplace } = request;
|
|
12
|
-
const company = await tx.getRepository(biz_base_1.Company).findOne({ where: {
|
|
12
|
+
const company = await tx.getRepository(biz_base_1.Company).findOne({ where: { id: bizplace.companyId } });
|
|
13
13
|
if (!company) {
|
|
14
|
-
throw new error_util_1.ApiError('E04', `${bizplace.
|
|
14
|
+
throw new error_util_1.ApiError('E04', `${bizplace.companyId} not found`);
|
|
15
15
|
}
|
|
16
16
|
const oldBizplace = await tx.getRepository(biz_base_1.Bizplace).findOne({
|
|
17
17
|
where: {
|
|
18
|
-
|
|
18
|
+
id: bizplace.id
|
|
19
19
|
}
|
|
20
20
|
});
|
|
21
21
|
if (oldBizplace) {
|
|
22
|
-
throw new error_util_1.ApiError('E04', `${bizplace.
|
|
22
|
+
throw new error_util_1.ApiError('E04', `${bizplace.id} is duplicated`);
|
|
23
23
|
}
|
|
24
|
-
let foundUser = await tx.getRepository(auth_base_1.User).findOne({ where: {
|
|
24
|
+
let foundUser = await tx.getRepository(auth_base_1.User).findOne({ where: { id: bizplace.userId } });
|
|
25
25
|
let createdBizplace = await tx.getRepository(biz_base_1.Bizplace).save({
|
|
26
|
+
id: bizplace.id,
|
|
26
27
|
name: bizplace.name,
|
|
27
28
|
description: (bizplace === null || bizplace === void 0 ? void 0 : bizplace.description) || null,
|
|
28
29
|
address: (bizplace === null || bizplace === void 0 ? void 0 : bizplace.address) || '',
|
|
@@ -43,7 +44,7 @@ async function createBizplace(request, context, tx) {
|
|
|
43
44
|
await (0, bizplace_initializer_1.initSettings)(tx, domain);
|
|
44
45
|
await (0, bizplace_initializer_1.initGroups)(tx, domain);
|
|
45
46
|
const userRepo = tx.getRepository(auth_base_1.User);
|
|
46
|
-
const user = await userRepo.findOne({ where: {
|
|
47
|
+
const user = await userRepo.findOne({ where: { id: bizplace.userId }, relations: ['domains', 'roles'] });
|
|
47
48
|
const roleRepo = tx.getRepository(auth_base_1.Role);
|
|
48
49
|
const role = await roleRepo.findOne({ where: { domain } });
|
|
49
50
|
const privilegeRepo = tx.getRepository(auth_base_1.Privilege);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-bizplace.js","sourceRoot":"","sources":["../../../../server/routers/internal/apis/create-bizplace.ts"],"names":[],"mappings":";;;AAEA,yDAAiE;AACjE,uDAA4D;AAC5D,iDAA8C;AAE9C,oFAMkD;AAClD,6HAAsH;AACtH,oDAA8C;AAEvC,KAAK,UAAU,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;IACvD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAA;IAClC,MAAM,OAAO,GAAY,MAAM,EAAE,CAAC,aAAa,CAAC,kBAAO,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"create-bizplace.js","sourceRoot":"","sources":["../../../../server/routers/internal/apis/create-bizplace.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,19 +8,17 @@ const utils_1 = require("@things-factory/utils");
|
|
|
8
8
|
const company_initializer_1 = require("../../../controllers/company-initializer");
|
|
9
9
|
const error_util_1 = require("../utils/error-util");
|
|
10
10
|
async function createCompany(request, context, tx) {
|
|
11
|
-
const { name, description, brn, address, postalCode, countryCode, type, status,
|
|
12
|
-
let foundUser = await tx
|
|
13
|
-
.getRepository(auth_base_1.User)
|
|
14
|
-
.findOne({ where: { email: userEmail }, relations: ['domains', 'roles'] });
|
|
11
|
+
const { id, name, description, brn, address, postalCode, countryCode, type, status, userId, refCompanyId } = request.data;
|
|
12
|
+
let foundUser = await tx.getRepository(auth_base_1.User).findOne({ where: { id: userId }, relations: ['domains', 'roles'] });
|
|
15
13
|
const subdomain = (0, utils_1.slugger)(name);
|
|
16
14
|
//check for existing company
|
|
17
15
|
const oldCompany = await tx.getRepository(biz_base_1.Company).findOne({
|
|
18
16
|
where: {
|
|
19
|
-
|
|
17
|
+
id
|
|
20
18
|
}
|
|
21
19
|
});
|
|
22
20
|
if (oldCompany) {
|
|
23
|
-
throw new error_util_1.ApiError('E04', `${
|
|
21
|
+
throw new error_util_1.ApiError('E04', `${id} is duplicated`);
|
|
24
22
|
}
|
|
25
23
|
const oldDomain = await tx.getRepository(shell_1.Domain).findOne({
|
|
26
24
|
where: {
|
|
@@ -40,6 +38,7 @@ async function createCompany(request, context, tx) {
|
|
|
40
38
|
updater: foundUser
|
|
41
39
|
});
|
|
42
40
|
const company = await tx.getRepository(biz_base_1.Company).save({
|
|
41
|
+
id,
|
|
43
42
|
name,
|
|
44
43
|
description,
|
|
45
44
|
brn,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-company.js","sourceRoot":"","sources":["../../../../server/routers/internal/apis/create-company.ts"],"names":[],"mappings":";;;AAAA,yDAAsD;AACtD,uDAA4D;AAC5D,iDAA8C;AAC9C,iDAA+C;AAE/C,kFAAgF;AAChF,oDAA8C;AAEvC,KAAK,UAAU,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;IACtD,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"create-company.js","sourceRoot":"","sources":["../../../../server/routers/internal/apis/create-company.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,26 +5,26 @@ const auth_base_1 = require("@things-factory/auth-base");
|
|
|
5
5
|
const biz_base_1 = require("@things-factory/biz-base");
|
|
6
6
|
const error_util_1 = require("../utils/error-util");
|
|
7
7
|
async function createPartner(request, context, tx) {
|
|
8
|
-
const {
|
|
8
|
+
const { bizplaceId, partnerBizplaceId, userId } = request.data;
|
|
9
9
|
const bizplace = await tx
|
|
10
10
|
.getRepository(biz_base_1.Bizplace)
|
|
11
|
-
.findOne({ where: {
|
|
11
|
+
.findOne({ where: { id: bizplaceId }, relations: ['domain'] });
|
|
12
12
|
if (!bizplace) {
|
|
13
|
-
throw new error_util_1.ApiError('E04', `${
|
|
13
|
+
throw new error_util_1.ApiError('E04', `${bizplaceId} does not exist`);
|
|
14
14
|
}
|
|
15
15
|
const partnerBizplace = await tx
|
|
16
16
|
.getRepository(biz_base_1.Bizplace)
|
|
17
|
-
.findOne({ where: {
|
|
17
|
+
.findOne({ where: { id: partnerBizplaceId }, relations: ['domain'] });
|
|
18
18
|
if (!partnerBizplace) {
|
|
19
|
-
throw new error_util_1.ApiError('E04', `${
|
|
19
|
+
throw new error_util_1.ApiError('E04', `${partnerBizplaceId} does not exist`);
|
|
20
20
|
}
|
|
21
21
|
const isExistingCustomer = Boolean(await tx.getRepository(auth_base_1.Partner).count({
|
|
22
22
|
where: { domain: bizplace.domain, partnerDomain: partnerBizplace.domain }
|
|
23
23
|
}));
|
|
24
24
|
if (isExistingCustomer) {
|
|
25
|
-
throw new error_util_1.ApiError('E04', `${
|
|
25
|
+
throw new error_util_1.ApiError('E04', `${partnerBizplaceId} already registered as partner`);
|
|
26
26
|
}
|
|
27
|
-
let user = await tx.getRepository(auth_base_1.User).findOne({ where: {
|
|
27
|
+
let user = await tx.getRepository(auth_base_1.User).findOne({ where: { id: userId } });
|
|
28
28
|
await tx.getRepository(auth_base_1.Partner).save({
|
|
29
29
|
domain: bizplace.domain,
|
|
30
30
|
partnerDomain: partnerBizplace.domain,
|
|
@@ -32,8 +32,8 @@ async function createPartner(request, context, tx) {
|
|
|
32
32
|
approver: user || null
|
|
33
33
|
});
|
|
34
34
|
let data = {
|
|
35
|
-
|
|
36
|
-
|
|
35
|
+
bizplaceId,
|
|
36
|
+
partnerBizplaceId
|
|
37
37
|
};
|
|
38
38
|
return data;
|
|
39
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-partner.js","sourceRoot":"","sources":["../../../../server/routers/internal/apis/create-partner.ts"],"names":[],"mappings":";;;AAAA,yDAAyD;AACzD,uDAAmD;AAEnD,oDAA8C;AAEvC,KAAK,UAAU,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;IACtD,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"create-partner.js","sourceRoot":"","sources":["../../../../server/routers/internal/apis/create-partner.ts"],"names":[],"mappings":";;;AAAA,yDAAyD;AACzD,uDAAmD;AAEnD,oDAA8C;AAEvC,KAAK,UAAU,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;IACtD,MAAM,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAA;IAE9D,MAAM,QAAQ,GAAa,MAAM,EAAE;SAChC,aAAa,CAAC,mBAAQ,CAAC;SACvB,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IAEhE,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,qBAAQ,CAAC,KAAK,EAAE,GAAG,UAAU,iBAAiB,CAAC,CAAA;KAC1D;IAED,MAAM,eAAe,GAAa,MAAM,EAAE;SACvC,aAAa,CAAC,mBAAQ,CAAC;SACvB,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,iBAAiB,EAAE,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IAEvE,IAAI,CAAC,eAAe,EAAE;QACpB,MAAM,IAAI,qBAAQ,CAAC,KAAK,EAAE,GAAG,iBAAiB,iBAAiB,CAAC,CAAA;KACjE;IAED,MAAM,kBAAkB,GAAY,OAAO,CACzC,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAO,CAAC,CAAC,KAAK,CAAC;QACpC,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,aAAa,EAAE,eAAe,CAAC,MAAM,EAAE;KAC1E,CAAC,CACH,CAAA;IAED,IAAI,kBAAkB,EAAE;QACtB,MAAM,IAAI,qBAAQ,CAAC,KAAK,EAAE,GAAG,iBAAiB,gCAAgC,CAAC,CAAA;KAChF;IAED,IAAI,IAAI,GAAS,MAAM,EAAE,CAAC,aAAa,CAAC,gBAAI,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAA;IAEhF,MAAM,EAAE,CAAC,aAAa,CAAC,mBAAO,CAAC,CAAC,IAAI,CAAC;QACnC,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,aAAa,EAAE,eAAe,CAAC,MAAM;QACrC,SAAS,EAAE,IAAI,IAAI,IAAI;QACvB,QAAQ,EAAE,IAAI,IAAI,IAAI;KACvB,CAAC,CAAA;IAEF,IAAI,IAAI,GAAG;QACT,UAAU;QACV,iBAAiB;KAClB,CAAA;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AA5CD,sCA4CC"}
|
|
@@ -5,9 +5,9 @@ const auth_base_1 = require("@things-factory/auth-base");
|
|
|
5
5
|
const error_util_1 = require("../utils/error-util");
|
|
6
6
|
async function createUser(request, context, tx) {
|
|
7
7
|
let user = (request === null || request === void 0 ? void 0 : request.data) || {};
|
|
8
|
-
const { email } = user;
|
|
8
|
+
const { id, email } = user;
|
|
9
9
|
user.email = email.trim();
|
|
10
|
-
const oldUser = await tx.getRepository(auth_base_1.User).findOne(
|
|
10
|
+
const oldUser = await tx.getRepository(auth_base_1.User).findOne(id);
|
|
11
11
|
if (oldUser) {
|
|
12
12
|
throw new error_util_1.ApiError('E04', context.t('error.x already exists in y', { x: context.t('field.user'), y: 'operato' }));
|
|
13
13
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-user.js","sourceRoot":"","sources":["../../../../server/routers/internal/apis/create-user.ts"],"names":[],"mappings":";;;AAAA,yDAAyD;AAEzD,oDAA8C;AAEvC,KAAK,UAAU,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;IACnD,IAAI,IAAI,GAAY,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,KAAI,EAAE,CAAA;IACvC,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"create-user.js","sourceRoot":"","sources":["../../../../server/routers/internal/apis/create-user.ts"],"names":[],"mappings":";;;AAAA,yDAAyD;AAEzD,oDAA8C;AAEvC,KAAK,UAAU,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;IACnD,IAAI,IAAI,GAAY,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,IAAI,KAAI,EAAE,CAAA;IACvC,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;IAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;IAEzB,MAAM,OAAO,GAAS,MAAM,EAAE,CAAC,aAAa,CAAC,gBAAI,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IAC9D,IAAI,OAAO,EAAE;QACX,MAAM,IAAI,qBAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC,6BAA6B,EAAE,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,CAAA;KAClH;IAED,MAAM,IAAI,GAAG,gBAAI,CAAC,YAAY,EAAE,CAAA;IAEhC,IAAI,WAAW,GAAS,MAAM,EAAE,CAAC,aAAa,CAAC,gBAAI,CAAC,CAAC,IAAI,iCACpD,IAAI,KACP,SAAS,EAAE,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,SAAS,EAC1B,QAAQ,EAAE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,KAAI,MAAM,EAClC,MAAM,EAAE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,MAAM,KAAI,UAAU,EAClC,IAAI,EAAE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,KAAI,IAAI,EACxB,iBAAiB,EAAE,IAAI,IAAI,EAAE,EAC7B,QAAQ,EAAE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,MAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,CAAA,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,gBAAI,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,IACzF,CAAA;IAEF,IAAI,IAAI,GAAG;QACT,EAAE,EAAE,WAAW,CAAC,EAAE;QAClB,KAAK,EAAE,WAAW,CAAC,KAAK;KACzB,CAAA;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AA5BD,gCA4BC"}
|
|
@@ -5,16 +5,16 @@ const auth_base_1 = require("@things-factory/auth-base");
|
|
|
5
5
|
const biz_base_1 = require("@things-factory/biz-base");
|
|
6
6
|
const error_util_1 = require("../utils/error-util");
|
|
7
7
|
async function inviteUser(request, context, tx) {
|
|
8
|
-
const {
|
|
9
|
-
const user = await tx.getRepository(auth_base_1.User).findOne({ where: {
|
|
8
|
+
const { userId, bizplaceId } = request.data;
|
|
9
|
+
const user = await tx.getRepository(auth_base_1.User).findOne({ where: { id: userId }, relations: ['domains'] });
|
|
10
10
|
if (!user) {
|
|
11
|
-
throw new error_util_1.ApiError('E04', `${
|
|
11
|
+
throw new error_util_1.ApiError('E04', `${userId} does not exist`);
|
|
12
12
|
}
|
|
13
13
|
const bizplace = await tx
|
|
14
14
|
.getRepository(biz_base_1.Bizplace)
|
|
15
|
-
.findOne({ where: {
|
|
15
|
+
.findOne({ where: { id: bizplaceId }, relations: ['domain'] });
|
|
16
16
|
if (!bizplace) {
|
|
17
|
-
throw new error_util_1.ApiError('E04', `${
|
|
17
|
+
throw new error_util_1.ApiError('E04', `${bizplaceId} does not exist`);
|
|
18
18
|
}
|
|
19
19
|
const existingDomains = user.domains;
|
|
20
20
|
if (existingDomains.find((d) => d.id === bizplace.domain.id)) {
|
|
@@ -23,8 +23,8 @@ async function inviteUser(request, context, tx) {
|
|
|
23
23
|
user.domains = [...existingDomains, bizplace.domain];
|
|
24
24
|
await tx.getRepository(auth_base_1.User).save(user);
|
|
25
25
|
let data = {
|
|
26
|
-
|
|
27
|
-
|
|
26
|
+
bizplaceId,
|
|
27
|
+
userId
|
|
28
28
|
};
|
|
29
29
|
return data;
|
|
30
30
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"invite-user.js","sourceRoot":"","sources":["../../../../server/routers/internal/apis/invite-user.ts"],"names":[],"mappings":";;;AAAA,yDAAgD;AAChD,uDAAmD;AAGnD,oDAA8C;AAEvC,KAAK,UAAU,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;IACnD,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"invite-user.js","sourceRoot":"","sources":["../../../../server/routers/internal/apis/invite-user.ts"],"names":[],"mappings":";;;AAAA,yDAAgD;AAChD,uDAAmD;AAGnD,oDAA8C;AAEvC,KAAK,UAAU,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;IACnD,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,IAAI,CAAA;IAE3C,MAAM,IAAI,GAAS,MAAM,EAAE,CAAC,aAAa,CAAC,gBAAI,CAAC,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;IAE1G,IAAI,CAAC,IAAI,EAAE;QACT,MAAM,IAAI,qBAAQ,CAAC,KAAK,EAAE,GAAG,MAAM,iBAAiB,CAAC,CAAA;KACtD;IAED,MAAM,QAAQ,GAAa,MAAM,EAAE;SAChC,aAAa,CAAC,mBAAQ,CAAC;SACvB,OAAO,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;IAEhE,IAAI,CAAC,QAAQ,EAAE;QACb,MAAM,IAAI,qBAAQ,CAAC,KAAK,EAAE,GAAG,UAAU,iBAAiB,CAAC,CAAA;KAC1D;IAED,MAAM,eAAe,GAAa,IAAI,CAAC,OAAO,CAAA;IAC9C,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;QACpE,MAAM,IAAI,qBAAQ,CAAC,KAAK,EAAE,0BAA0B,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAA;KACrE;IAED,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;IACpD,MAAM,EAAE,CAAC,aAAa,CAAC,gBAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEvC,IAAI,IAAI,GAAG;QACT,UAAU;QACV,MAAM;KACP,CAAA;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AA/BD,gCA+BC"}
|