bfg-common 1.4.299 → 1.4.300
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.
|
@@ -146,25 +146,40 @@ const generateOnceCronExpression = (date: Date): any => {
|
|
|
146
146
|
// Генерируем cron-выражение
|
|
147
147
|
return `${minutes} ${hours} ${day} ${month} ${dayOfWeek} once`
|
|
148
148
|
}
|
|
149
|
-
const generateHourlyCronExpression = (
|
|
149
|
+
const generateHourlyCronExpression = (
|
|
150
|
+
data: UI_I_ScheduleNewTasksForm
|
|
151
|
+
): string => {
|
|
150
152
|
if (!date) return
|
|
151
153
|
|
|
154
|
+
const startOnTimestamp = Math.floor(
|
|
155
|
+
new Date(data.frg_start_on_time).getTime() / 1000
|
|
156
|
+
)
|
|
157
|
+
const endTimestamp = Math.floor(new Date(data.frg_end_time).getTime() / 1000)
|
|
158
|
+
|
|
152
159
|
// const minutes = date.getMinutes()
|
|
153
160
|
// const hours = date.getHours()
|
|
154
161
|
|
|
155
162
|
// Генерируем cron-выражение
|
|
156
163
|
// return `${minutes} ${hours}/${delay} * * *`
|
|
157
|
-
return
|
|
164
|
+
return endTimestamp
|
|
165
|
+
? `0 */${data.frg_interval} * * * start=${startOnTimestamp},end=${endTimestamp}`
|
|
166
|
+
: `0 */${data.frg_interval} * * * start=${startOnTimestamp}`
|
|
158
167
|
}
|
|
159
|
-
const generateDaylyCronExpression = (
|
|
168
|
+
const generateDaylyCronExpression = (
|
|
169
|
+
data: UI_I_ScheduleNewTasksForm
|
|
170
|
+
): string => {
|
|
160
171
|
if (!date) return
|
|
161
172
|
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
173
|
+
const startOnTimestamp = Math.floor(
|
|
174
|
+
new Date(data.frg_start_on_time).getTime() / 1000
|
|
175
|
+
)
|
|
176
|
+
const endTimestamp = Math.floor(new Date(data.frg_end_time).getTime() / 1000)
|
|
165
177
|
|
|
166
178
|
// Генерируем cron-выражение
|
|
167
|
-
return
|
|
179
|
+
return endTimestamp
|
|
180
|
+
? `0 0 */${data.frg_interval} * * start=${startOnTimestamp},end=${endTimestamp}`
|
|
181
|
+
: `0 0 */${data.frg_interval} * * start=${startOnTimestamp}`
|
|
182
|
+
|
|
168
183
|
// return `${minutes} ${hours} ${day}/${delay} * *`
|
|
169
184
|
}
|
|
170
185
|
const generateWeeklyCronExpression = (
|
|
@@ -172,25 +187,39 @@ const generateWeeklyCronExpression = (
|
|
|
172
187
|
): string => {
|
|
173
188
|
const { frg_on_week_days } = data
|
|
174
189
|
|
|
175
|
-
|
|
176
|
-
|
|
190
|
+
const startOnTimestamp = Math.floor(
|
|
191
|
+
new Date(data.frg_start_on_time).getTime() / 1000
|
|
192
|
+
)
|
|
193
|
+
const endTimestamp = Math.floor(new Date(data.frg_end_time).getTime() / 1000)
|
|
194
|
+
|
|
195
|
+
return endTimestamp
|
|
196
|
+
? `* * * * ${frg_on_week_days.join(',')}/${
|
|
197
|
+
data.frg_interval
|
|
198
|
+
} start=${startOnTimestamp},end=${endTimestamp}`
|
|
199
|
+
: `* * * * ${frg_on_week_days.join(',')}/${
|
|
200
|
+
data.frg_interval
|
|
201
|
+
} start=${startOnTimestamp}`
|
|
177
202
|
}
|
|
203
|
+
|
|
178
204
|
const generateMonthlyCronExpression = (
|
|
179
205
|
data: UI_I_ScheduleNewTasksForm
|
|
180
206
|
): string => {
|
|
181
207
|
const { frg_interval, frg_monthly_day, frq_week_day, frq_ordinal_number } =
|
|
182
208
|
data
|
|
183
209
|
|
|
184
|
-
const
|
|
185
|
-
|
|
210
|
+
const startOnTimestamp = Math.floor(
|
|
211
|
+
new Date(data.frg_start_on_time).getTime() / 1000
|
|
212
|
+
)
|
|
213
|
+
const endTimestamp = Math.floor(new Date(data.frg_end_time).getTime() / 1000)
|
|
186
214
|
|
|
187
|
-
console.log(startOn, end)
|
|
188
215
|
const month = data.frg_monthly_mode === 'week' ? '*' : frg_monthly_day
|
|
189
216
|
const cronWeekly = `${frq_week_day}#${frq_ordinal_number}`
|
|
190
217
|
const dayOfWeek = data.frg_monthly_mode === 'week' ? cronWeekly : '*'
|
|
191
218
|
|
|
192
219
|
// Генерируем cron-выражение
|
|
193
|
-
return
|
|
220
|
+
return endTimestamp
|
|
221
|
+
? `* * ${month} */${frg_interval} ${dayOfWeek} start=${startOnTimestamp},end=${endTimestamp}`
|
|
222
|
+
: `* * ${month} */${frg_interval} ${dayOfWeek} start=${startOnTimestamp}`
|
|
194
223
|
}
|
|
195
224
|
|
|
196
225
|
const generateCronExpression = (
|
|
@@ -212,18 +241,10 @@ const generateCronExpression = (
|
|
|
212
241
|
cronExpression = `0 0 0 0 0 after_procurator_startup${suffixDelay}` // Выполняется после запуска procurator_startup с задержой N минут
|
|
213
242
|
break
|
|
214
243
|
case 'hour':
|
|
215
|
-
|
|
216
|
-
cronExpression = generateHourlyCronExpression(
|
|
217
|
-
hourlyDelay,
|
|
218
|
-
new Date(interval.frg_start_on_time)
|
|
219
|
-
)
|
|
244
|
+
cronExpression = generateHourlyCronExpression(interval)
|
|
220
245
|
break
|
|
221
246
|
case 'day':
|
|
222
|
-
|
|
223
|
-
cronExpression = generateDaylyCronExpression(
|
|
224
|
-
dayDelay,
|
|
225
|
-
new Date(interval.frg_start_on_time)
|
|
226
|
-
)
|
|
247
|
+
cronExpression = generateDaylyCronExpression(interval)
|
|
227
248
|
break
|
|
228
249
|
case 'week':
|
|
229
250
|
cronExpression = generateWeeklyCronExpression(interval)
|