@@ -11,20 +11,6 @@ const prisma = new PrismaClient();
1111
1212export const createAlerts = async ( ) : Promise < void > => {
1313 try {
14- const dateA = momentTimezone . utc ( ) ;
15-
16- await prisma . fence_tracker_triggers . deleteMany (
17- {
18- where : {
19- updated_at : {
20- lt : dateA . hours ( ) < 15
21- ? dateA . clone ( ) . hours ( 3 ) . minutes ( 0 ) . seconds ( 0 ) . milliseconds ( 0 ) . toDate ( )
22- : dateA . clone ( ) . hours ( 15 ) . minutes ( 0 ) . seconds ( 0 ) . milliseconds ( 0 ) . toDate ( )
23- }
24- }
25- }
26- ) ;
27-
2814 const queryGatewayHttpClientInstance = new HttpClientUtil . HttpClient ( ) ;
2915
3016 queryGatewayHttpClientInstance . setAuthenticationStrategy (
@@ -52,9 +38,9 @@ export const createAlerts = async (): Promise<void> => {
5238 return ;
5339 }
5440
55- const dateB = momentTimezone . tz ( 'America/Sao_Paulo' ) ;
56- const startDate = dateB . hours ( ) < 12 ? dateB . clone ( ) . hours ( 0 ) . minutes ( 0 ) . seconds ( 0 ) : dateB . clone ( ) . hours ( 12 ) . minutes ( 0 ) . seconds ( 0 ) ;
57- const endDate = dateB . hours ( ) < 12 ? dateB . clone ( ) . hours ( 11 ) . minutes ( 59 ) . seconds ( 59 ) : dateB . clone ( ) . hours ( 23 ) . minutes ( 59 ) . seconds ( 59 ) ;
41+ const date = momentTimezone . tz ( 'America/Sao_Paulo' ) ;
42+ const startDate = date . hours ( ) < 12 ? date . clone ( ) . hours ( 0 ) . minutes ( 0 ) . seconds ( 0 ) : date . clone ( ) . hours ( 12 ) . minutes ( 0 ) . seconds ( 0 ) ;
43+ const endDate = date . hours ( ) < 12 ? date . clone ( ) . hours ( 11 ) . minutes ( 59 ) . seconds ( 59 ) : date . clone ( ) . hours ( 23 ) . minutes ( 59 ) . seconds ( 59 ) ;
5844 const whatsAppHttpClientInstance = new HttpClientUtil . HttpClient ( ) ;
5945 const startDateFormattation = startDate . clone ( ) . format ( 'DD/MM/YYYY HH:mm:ss' ) ;
6046 const endDateFormattation = endDate . clone ( ) . format ( 'DD/MM/YYYY HH:mm:ss' ) ;
@@ -66,30 +52,21 @@ export const createAlerts = async (): Promise<void> => {
6652 const alertMapZoneName = alertMap . zone_name ;
6753 const alertMapQuantity = alertMap . quantity ;
6854
69- const fenceTrackerTrigger = await prisma . fence_tracker_triggers . findUnique (
55+ const fenceTrackerRegister = await prisma . fence_tracker_registers . findUnique (
7056 {
7157 where : {
72- account_code_zone_name : {
58+ account_code_period_started_at_period_ended_at : {
7359 account_code : alertMapAccountCode ,
74- zone_name : alertMapZoneName
75- }
60+ period_started_at : startDate . toDate ( ) ,
61+ period_ended_at : endDate . toDate ( )
62+ }
7663 }
7764 }
7865 ) ;
7966
8067 const alertMapQuantityMultiple = Math . floor ( alertMapQuantity / EVENTS_COUNT_THRESHOLD ) * EVENTS_COUNT_THRESHOLD ;
8168
82- if ( ! fenceTrackerTrigger && alertMapQuantity >= EVENTS_COUNT_THRESHOLD ) {
83- await prisma . fence_tracker_triggers . create (
84- {
85- data : {
86- account_code : alertMapAccountCode ,
87- zone_name : alertMapZoneName ,
88- quantity : alertMapQuantityMultiple
89- }
90- }
91- ) ;
92-
69+ if ( ! fenceTrackerRegister && alertMapQuantity >= EVENTS_COUNT_THRESHOLD ) {
9370 await prisma . fence_tracker_registers . create (
9471 {
9572 data : {
@@ -115,30 +92,11 @@ export const createAlerts = async (): Promise<void> => {
11592 params : { instance_id : process . env . CHAT_PRO_INSTANCE_ID }
11693 }
11794 ) ;
118- } else if ( fenceTrackerTrigger && alertMapQuantityMultiple > fenceTrackerTrigger . quantity ) {
119- await prisma . fence_tracker_triggers . update (
120- {
121- where : {
122- account_code_zone_name : {
123- account_code : alertMapAccountCode ,
124- zone_name : alertMapZoneName
125- }
126- } ,
127- data : { quantity : alertMapQuantityMultiple }
128- }
129- ) ;
130-
131- await prisma . fence_tracker_registers . create (
95+ } else if ( fenceTrackerRegister && alertMapQuantityMultiple > fenceTrackerRegister . quantity ) {
96+ await prisma . fence_tracker_registers . update (
13297 {
133- data : {
134- account_code : alertMapAccountCode ,
135- condominium : alertMap . condominium ,
136- cabinet : alertMap . cabinet ,
137- zone_name : alertMapZoneName ,
138- quantity : alertMapQuantityMultiple ,
139- period_started_at : startDate . toDate ( ) ,
140- period_ended_at : endDate . toDate ( )
141- }
98+ where : { id : fenceTrackerRegister . id } ,
99+ data : { quantity : alertMapQuantityMultiple }
142100 }
143101 ) ;
144102
0 commit comments