@things-factory/operato-hub 4.3.556 → 4.3.559
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-server/graphql/resolvers/email/send-emails.js +20 -5
- package/dist-server/graphql/resolvers/email/send-emails.js.map +1 -1
- package/dist-server/graphql/resolvers/reports/custom-elccl-fn-dispatch-report.js +13 -25
- package/dist-server/graphql/resolvers/reports/custom-elccl-fn-dispatch-report.js.map +1 -1
- package/dist-server/graphql/types/reports/custom-elccl-fn-dispatch-report.js +5 -5
- package/package.json +5 -5
- package/server/graphql/resolvers/email/send-emails.ts +20 -5
- package/server/graphql/resolvers/reports/custom-elccl-fn-dispatch-report.ts +13 -28
- package/server/graphql/types/reports/custom-elccl-fn-dispatch-report.ts +5 -5
|
@@ -36,6 +36,7 @@ const email_base_1 = require("@things-factory/email-base");
|
|
|
36
36
|
const env_1 = require("@things-factory/env");
|
|
37
37
|
const shell_1 = require("@things-factory/shell");
|
|
38
38
|
const entities_1 = require("../../../entities");
|
|
39
|
+
const setting_base_1 = require("@things-factory/setting-base");
|
|
39
40
|
const { PerformanceObserver, performance } = require('node:perf_hooks');
|
|
40
41
|
const EMAIL_SEARCH_INTERVAL = 35;
|
|
41
42
|
exports.sendEmailsResolver = {
|
|
@@ -96,6 +97,9 @@ function flattenObject(obj, delimiter = '|') {
|
|
|
96
97
|
}
|
|
97
98
|
async function processEmailCronJob(email, fromDate, toDate) {
|
|
98
99
|
try {
|
|
100
|
+
let enableDateAtSubjectSettings = await (0, typeorm_1.getRepository)(setting_base_1.Setting).findOne({
|
|
101
|
+
where: { domain: email.domain, category: 'id-rule', name: 'enable-date-at-subject' }
|
|
102
|
+
});
|
|
99
103
|
performance.mark(`processEmailCronJob start:(${email.id})`);
|
|
100
104
|
// processEmailStartTime = performance.now()
|
|
101
105
|
let attachments = [];
|
|
@@ -185,11 +189,22 @@ async function processEmailCronJob(email, fromDate, toDate) {
|
|
|
185
189
|
let perf = performance.measure(`emailId:${email.id}`, `objDataToExcel start:${email.id}`, `objDataToExcel end:${email.id}`);
|
|
186
190
|
env_1.logger.info(`objDataToExcel performance: ${perf.toJSON()}`);
|
|
187
191
|
}
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
192
|
+
if ((enableDateAtSubjectSettings === null || enableDateAtSubjectSettings === void 0 ? void 0 : enableDateAtSubjectSettings.value) == 'true') {
|
|
193
|
+
const newDate = new Date();
|
|
194
|
+
const formattedDate = newDate.toISOString().split('T')[0];
|
|
195
|
+
attachments.push({
|
|
196
|
+
filename: `${bizplace.name} - ${attachment.name} - ${formattedDate}.xlsx`,
|
|
197
|
+
content: excelResponse,
|
|
198
|
+
contentType: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
else {
|
|
202
|
+
attachments.push({
|
|
203
|
+
filename: `${bizplace.name} - ${attachment.name}.xlsx`,
|
|
204
|
+
content: excelResponse,
|
|
205
|
+
contentType: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'
|
|
206
|
+
});
|
|
207
|
+
}
|
|
193
208
|
}
|
|
194
209
|
}
|
|
195
210
|
// modify content and subject
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"send-emails.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/email/send-emails.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wDAAyC;AACzC,8DAA6B;AAC7B,qCAA2C;AAE3C,yDAAyD;AACzD,uDAAmD;AACnD,2DAAyE;AACzE,6CAA4C;AAC5C,iDAA0D;AAE1D,gDAAyC;
|
|
1
|
+
{"version":3,"file":"send-emails.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/email/send-emails.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,32 +1,23 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.customElcclDispatchReport = void 0;
|
|
4
|
-
const biz_base_1 = require("@things-factory/biz-base");
|
|
5
4
|
exports.customElcclDispatchReport = {
|
|
6
5
|
async customElcclDispatchReport(_, params, context) {
|
|
7
6
|
try {
|
|
8
7
|
const { tx } = context.state;
|
|
9
|
-
let bizplaceFilter = params.filters.find(data => data.name === 'bizplace'); // Directly fetch bizplace filter
|
|
10
|
-
// Check for required filters
|
|
11
|
-
if (!bizplaceFilter)
|
|
12
|
-
throw 'Invalid input: Bizplace filter is required';
|
|
13
|
-
const bizplace = await tx.getRepository(biz_base_1.Bizplace).findOne({
|
|
14
|
-
id: bizplaceFilter.value
|
|
15
|
-
});
|
|
16
|
-
if (!bizplace)
|
|
17
|
-
throw 'Invalid input: Bizplace not found';
|
|
18
8
|
// Create temporary table for report (execute in json)
|
|
19
9
|
await tx.query(`
|
|
20
10
|
create temp table temp_inbound_order_report on commit drop as (
|
|
11
|
+
select creation_date, planned_shipped_date, actual_shipped_date, shipment_id, ship_to, ship_to_name, item, description, sum(qty) as qty, qty_um, batch, exp_date, mfg_date from(
|
|
21
12
|
select
|
|
22
13
|
to_char(rg.release_date::timestamp,'dd/mm/yyyy') as "creation_date",
|
|
23
14
|
to_char(do2.delivery_date::date,'dd/mm/yyyy') as "planned_shipped_date",
|
|
24
15
|
to_char((do2.delivery_date_time + interval '8 hours')::date, 'DD/MM/YYYY') as "actual_shipped_date",
|
|
25
16
|
rg.ref_no_2 as "shipment_id",
|
|
26
|
-
|
|
27
|
-
|
|
17
|
+
cp.account_no as "ship_to",
|
|
18
|
+
cp.name as "ship_to_name",
|
|
28
19
|
p.sku as "item",
|
|
29
|
-
p.
|
|
20
|
+
p.name as "description",
|
|
30
21
|
oi.release_qty as "qty",
|
|
31
22
|
'CS' as "qty_um",
|
|
32
23
|
i.batch_id as "batch",
|
|
@@ -36,18 +27,16 @@ exports.customElcclDispatchReport = {
|
|
|
36
27
|
inner join order_inventories oi on rg.id = oi.release_good_id
|
|
37
28
|
inner join inventories i on i.id = oi.inventory_id
|
|
38
29
|
inner join products p on p.id = oi.product_id
|
|
39
|
-
|
|
40
|
-
left join contact_points cp on cp.
|
|
41
|
-
where rg.bizplace_id
|
|
42
|
-
and do2.delivery_date::date = (NOW()::date - interval '1 day')
|
|
30
|
+
inner join delivery_orders do2 on rg.id = do2.release_good_id and do2.id = oi.delivery_order_id
|
|
31
|
+
left join contact_points cp on cp.phone = do2.phone_1 and cp.address = do2.delivery_address_1
|
|
32
|
+
where rg.bizplace_id in('f0848540-9d8f-4835-b744-2407db36a14e','157a9653-9f2b-4568-b245-ab8791db98ce')
|
|
43
33
|
and do2.status in('DELIVERING','DONE')
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
// `) and do2.delivery_date::date = NOW()::Date
|
|
34
|
+
and do2.delivery_date::date = (NOW()::date - interval '1 day')
|
|
35
|
+
order by "creation_date" asc
|
|
36
|
+
)foo
|
|
37
|
+
group by creation_date, planned_shipped_date, actual_shipped_date, shipment_id, ship_to, ship_to_name, item, description, qty_um, batch, exp_date, mfg_date
|
|
38
|
+
)
|
|
39
|
+
`);
|
|
51
40
|
// Fetch paginated results
|
|
52
41
|
const result = await tx.query(`
|
|
53
42
|
select *
|
|
@@ -74,7 +63,6 @@ exports.customElcclDispatchReport = {
|
|
|
74
63
|
// Return items and total count
|
|
75
64
|
return {
|
|
76
65
|
items
|
|
77
|
-
// total: total[0].count
|
|
78
66
|
};
|
|
79
67
|
}
|
|
80
68
|
catch (error) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"custom-elccl-fn-dispatch-report.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/reports/custom-elccl-fn-dispatch-report.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"custom-elccl-fn-dispatch-report.js","sourceRoot":"","sources":["../../../../server/graphql/resolvers/reports/custom-elccl-fn-dispatch-report.ts"],"names":[],"mappings":";;;AAIa,QAAA,yBAAyB,GAAG;IACvC,KAAK,CAAC,yBAAyB,CAAC,CAAM,EAAE,MAAiB,EAAE,OAAY;QACrE,IAAI;YACF,MAAM,EAAE,EAAE,EAAE,GAA0B,OAAO,CAAC,KAAK,CAAA;YACnD,sDAAsD;YACtD,MAAM,EAAE,CAAC,KAAK,CACZ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BD,CACA,CAAA;YAED,0BAA0B;YAC1B,MAAM,MAAM,GAAQ,MAAM,EAAE,CAAC,KAAK,CAChC;;;OAGD,CACA,CAAA;YAED,iCAAiC;YACjC,IAAI,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;gBAC3B,OAAO;oBACL,YAAY,EAAE,GAAG,CAAC,aAAa;oBAC/B,kBAAkB,EAAE,GAAG,CAAC,oBAAoB;oBAC5C,iBAAiB,EAAE,GAAG,CAAC,mBAAmB;oBAC1C,UAAU,EAAE,GAAG,CAAC,WAAW;oBAC3B,MAAM,EAAE,GAAG,CAAC,OAAO;oBACnB,UAAU,EAAE,GAAG,CAAC,YAAY;oBAC5B,UAAU,EAAE,GAAG,CAAC,IAAI;oBACpB,kBAAkB,EAAE,GAAG,CAAC,WAAW;oBACnC,GAAG,EAAE,GAAG,CAAC,GAAG;oBACZ,KAAK,EAAE,GAAG,CAAC,MAAM;oBACjB,KAAK,EAAE,GAAG,CAAC,KAAK;oBAChB,OAAO,EAAE,GAAG,CAAC,QAAQ;oBACrB,OAAO,EAAE,GAAG,CAAC,QAAQ,CAAC,mBAAmB;iBAC1C,CAAA;YACH,CAAC,CAAC,CAAA;YAEF,+BAA+B;YAC/B,OAAO;gBACL,KAAK;aACN,CAAA;SACF;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAA;SACZ;IACH,CAAC;CACF,CAAA"}
|
|
@@ -7,9 +7,9 @@ exports.CustomElcclDispatchReport = void 0;
|
|
|
7
7
|
const graphql_tag_1 = __importDefault(require("graphql-tag"));
|
|
8
8
|
exports.CustomElcclDispatchReport = (0, graphql_tag_1.default) `
|
|
9
9
|
type CustomElcclDispatchReport {
|
|
10
|
-
creationDate:
|
|
11
|
-
plannedShippedDate:
|
|
12
|
-
actualShippedDate:
|
|
10
|
+
creationDate: String
|
|
11
|
+
plannedShippedDate: String
|
|
12
|
+
actualShippedDate: String
|
|
13
13
|
shipmentId: String
|
|
14
14
|
shipTo: String
|
|
15
15
|
shipToName: String
|
|
@@ -18,8 +18,8 @@ exports.CustomElcclDispatchReport = (0, graphql_tag_1.default) `
|
|
|
18
18
|
qty: Int
|
|
19
19
|
qtyUm: String
|
|
20
20
|
batch: String
|
|
21
|
-
expDate:
|
|
22
|
-
mfgDate:
|
|
21
|
+
expDate: String
|
|
22
|
+
mfgDate: String
|
|
23
23
|
}
|
|
24
24
|
`;
|
|
25
25
|
//# sourceMappingURL=custom-elccl-fn-dispatch-report.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@things-factory/operato-hub",
|
|
3
|
-
"version": "4.3.
|
|
3
|
+
"version": "4.3.559",
|
|
4
4
|
"main": "dist-server/index.js",
|
|
5
5
|
"browser": "client/index.js",
|
|
6
6
|
"things-factory": true,
|
|
@@ -92,7 +92,7 @@
|
|
|
92
92
|
"@things-factory/pdf": "^4.3.534",
|
|
93
93
|
"@things-factory/product-ui": "^4.3.535",
|
|
94
94
|
"@things-factory/resource-ui": "^4.3.535",
|
|
95
|
-
"@things-factory/sales-base": "^4.3.
|
|
95
|
+
"@things-factory/sales-base": "^4.3.558",
|
|
96
96
|
"@things-factory/scene-data-transform": "^4.3.534",
|
|
97
97
|
"@things-factory/scene-excel": "^4.3.534",
|
|
98
98
|
"@things-factory/scene-firebase": "^4.3.534",
|
|
@@ -108,8 +108,8 @@
|
|
|
108
108
|
"@things-factory/shell": "^4.3.535",
|
|
109
109
|
"@things-factory/system-ui": "^4.3.535",
|
|
110
110
|
"@things-factory/transport-base": "^4.3.535",
|
|
111
|
-
"@things-factory/warehouse-base": "^4.3.
|
|
112
|
-
"@things-factory/worksheet-base": "^4.3.
|
|
111
|
+
"@things-factory/warehouse-base": "^4.3.558",
|
|
112
|
+
"@things-factory/worksheet-base": "^4.3.559",
|
|
113
113
|
"cron-parser": "^4.7.0",
|
|
114
114
|
"koa2-swagger-ui": "^5.0.2",
|
|
115
115
|
"swagger-jsdoc": "^5.0.0",
|
|
@@ -122,5 +122,5 @@
|
|
|
122
122
|
"resolutions": {
|
|
123
123
|
"core-js": "^3.16.0"
|
|
124
124
|
},
|
|
125
|
-
"gitHead": "
|
|
125
|
+
"gitHead": "f2cc4373da2df708ade6deffca4da95a455ed595"
|
|
126
126
|
}
|
|
@@ -9,6 +9,7 @@ import { logger } from '@things-factory/env'
|
|
|
9
9
|
import { GraphqlLocalClient } from '@things-factory/shell'
|
|
10
10
|
|
|
11
11
|
import { Email } from '../../../entities'
|
|
12
|
+
import { Setting } from '@things-factory/setting-base'
|
|
12
13
|
|
|
13
14
|
const { PerformanceObserver, performance } = require('node:perf_hooks')
|
|
14
15
|
|
|
@@ -74,6 +75,10 @@ function flattenObject(obj, delimiter = '|') {
|
|
|
74
75
|
|
|
75
76
|
async function processEmailCronJob(email, fromDate, toDate) {
|
|
76
77
|
try {
|
|
78
|
+
let enableDateAtSubjectSettings: Setting = await getRepository(Setting).findOne({
|
|
79
|
+
where: { domain: email.domain, category: 'id-rule', name: 'enable-date-at-subject' }
|
|
80
|
+
})
|
|
81
|
+
|
|
77
82
|
performance.mark(`processEmailCronJob start:(${email.id})`)
|
|
78
83
|
// processEmailStartTime = performance.now()
|
|
79
84
|
let attachments: any = []
|
|
@@ -188,11 +193,21 @@ async function processEmailCronJob(email, fromDate, toDate) {
|
|
|
188
193
|
logger.info(`objDataToExcel performance: ${perf.toJSON()}`)
|
|
189
194
|
}
|
|
190
195
|
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
+
if (enableDateAtSubjectSettings?.value == 'true') {
|
|
197
|
+
const newDate = new Date()
|
|
198
|
+
const formattedDate = newDate.toISOString().split('T')[0]
|
|
199
|
+
attachments.push({
|
|
200
|
+
filename: `${bizplace.name} - ${attachment.name} - ${formattedDate}.xlsx`,
|
|
201
|
+
content: excelResponse,
|
|
202
|
+
contentType: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'
|
|
203
|
+
})
|
|
204
|
+
} else {
|
|
205
|
+
attachments.push({
|
|
206
|
+
filename: `${bizplace.name} - ${attachment.name}.xlsx`,
|
|
207
|
+
content: excelResponse,
|
|
208
|
+
contentType: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'
|
|
209
|
+
})
|
|
210
|
+
}
|
|
196
211
|
}
|
|
197
212
|
}
|
|
198
213
|
|
|
@@ -6,30 +6,20 @@ export const customElcclDispatchReport = {
|
|
|
6
6
|
async customElcclDispatchReport(_: any, params: ListParam, context: any) {
|
|
7
7
|
try {
|
|
8
8
|
const { tx }: { tx: EntityManager } = context.state
|
|
9
|
-
let bizplaceFilter = params.filters.find(data => data.name === 'bizplace') // Directly fetch bizplace filter
|
|
10
|
-
|
|
11
|
-
// Check for required filters
|
|
12
|
-
if (!bizplaceFilter) throw 'Invalid input: Bizplace filter is required'
|
|
13
|
-
|
|
14
|
-
const bizplace: Bizplace = await tx.getRepository(Bizplace).findOne({
|
|
15
|
-
id: bizplaceFilter.value
|
|
16
|
-
})
|
|
17
|
-
|
|
18
|
-
if (!bizplace) throw 'Invalid input: Bizplace not found'
|
|
19
|
-
|
|
20
9
|
// Create temporary table for report (execute in json)
|
|
21
10
|
await tx.query(
|
|
22
11
|
`
|
|
23
12
|
create temp table temp_inbound_order_report on commit drop as (
|
|
13
|
+
select creation_date, planned_shipped_date, actual_shipped_date, shipment_id, ship_to, ship_to_name, item, description, sum(qty) as qty, qty_um, batch, exp_date, mfg_date from(
|
|
24
14
|
select
|
|
25
15
|
to_char(rg.release_date::timestamp,'dd/mm/yyyy') as "creation_date",
|
|
26
16
|
to_char(do2.delivery_date::date,'dd/mm/yyyy') as "planned_shipped_date",
|
|
27
17
|
to_char((do2.delivery_date_time + interval '8 hours')::date, 'DD/MM/YYYY') as "actual_shipped_date",
|
|
28
18
|
rg.ref_no_2 as "shipment_id",
|
|
29
|
-
|
|
30
|
-
|
|
19
|
+
cp.account_no as "ship_to",
|
|
20
|
+
cp.name as "ship_to_name",
|
|
31
21
|
p.sku as "item",
|
|
32
|
-
p.
|
|
22
|
+
p.name as "description",
|
|
33
23
|
oi.release_qty as "qty",
|
|
34
24
|
'CS' as "qty_um",
|
|
35
25
|
i.batch_id as "batch",
|
|
@@ -39,21 +29,17 @@ export const customElcclDispatchReport = {
|
|
|
39
29
|
inner join order_inventories oi on rg.id = oi.release_good_id
|
|
40
30
|
inner join inventories i on i.id = oi.inventory_id
|
|
41
31
|
inner join products p on p.id = oi.product_id
|
|
42
|
-
|
|
43
|
-
left join contact_points cp on cp.
|
|
44
|
-
where rg.bizplace_id
|
|
45
|
-
and do2.delivery_date::date = (NOW()::date - interval '1 day')
|
|
32
|
+
inner join delivery_orders do2 on rg.id = do2.release_good_id and do2.id = oi.delivery_order_id
|
|
33
|
+
left join contact_points cp on cp.phone = do2.phone_1 and cp.address = do2.delivery_address_1
|
|
34
|
+
where rg.bizplace_id in('f0848540-9d8f-4835-b744-2407db36a14e','157a9653-9f2b-4568-b245-ab8791db98ce')
|
|
46
35
|
and do2.status in('DELIVERING','DONE')
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
36
|
+
and do2.delivery_date::date = (NOW()::date - interval '1 day')
|
|
37
|
+
order by "creation_date" asc
|
|
38
|
+
)foo
|
|
39
|
+
group by creation_date, planned_shipped_date, actual_shipped_date, shipment_id, ship_to, ship_to_name, item, description, qty_um, batch, exp_date, mfg_date
|
|
40
|
+
)
|
|
41
|
+
`
|
|
51
42
|
)
|
|
52
|
-
|
|
53
|
-
// Count total records
|
|
54
|
-
// const total: any = await tx.query(`
|
|
55
|
-
// select count(*) from temp_inbound_order_report
|
|
56
|
-
// `) and do2.delivery_date::date = NOW()::Date
|
|
57
43
|
|
|
58
44
|
// Fetch paginated results
|
|
59
45
|
const result: any = await tx.query(
|
|
@@ -85,7 +71,6 @@ export const customElcclDispatchReport = {
|
|
|
85
71
|
// Return items and total count
|
|
86
72
|
return {
|
|
87
73
|
items
|
|
88
|
-
// total: total[0].count
|
|
89
74
|
}
|
|
90
75
|
} catch (error) {
|
|
91
76
|
throw error
|
|
@@ -2,9 +2,9 @@ import gql from 'graphql-tag'
|
|
|
2
2
|
|
|
3
3
|
export const CustomElcclDispatchReport = gql`
|
|
4
4
|
type CustomElcclDispatchReport {
|
|
5
|
-
creationDate:
|
|
6
|
-
plannedShippedDate:
|
|
7
|
-
actualShippedDate:
|
|
5
|
+
creationDate: String
|
|
6
|
+
plannedShippedDate: String
|
|
7
|
+
actualShippedDate: String
|
|
8
8
|
shipmentId: String
|
|
9
9
|
shipTo: String
|
|
10
10
|
shipToName: String
|
|
@@ -13,7 +13,7 @@ export const CustomElcclDispatchReport = gql`
|
|
|
13
13
|
qty: Int
|
|
14
14
|
qtyUm: String
|
|
15
15
|
batch: String
|
|
16
|
-
expDate:
|
|
17
|
-
mfgDate:
|
|
16
|
+
expDate: String
|
|
17
|
+
mfgDate: String
|
|
18
18
|
}
|
|
19
19
|
`
|