rufus-scheduler 수정
This commit is contained in:
@@ -30,6 +30,14 @@ class SchedulesController < ApplicationController
|
||||
end
|
||||
end
|
||||
|
||||
def reset
|
||||
Schedule.delete_all
|
||||
ActiveRecord::Base.connection.execute("DELETE FROM sqlite_sequence WHERE name='schedules'")
|
||||
Rails.application.load_seed
|
||||
|
||||
redirect_to schedules_path, notice: "스케줄이 초기화되었습니다."
|
||||
end
|
||||
|
||||
def schedule_edit
|
||||
@schedule = Schedule.order(:hour, :minute)
|
||||
end
|
||||
|
||||
@@ -5,10 +5,10 @@ module Modbus
|
||||
class PollingService
|
||||
class << self
|
||||
def start
|
||||
return if defined?(@scheduler) && @scheduler.jobs.any?
|
||||
return if @scheduler && @scheduler.jobs.any?
|
||||
|
||||
puts "[#{Time.current}] Modbus polling service 시작됨 (Rufus)"
|
||||
@scheduler = Rufus::Scheduler.new
|
||||
@scheduler ||= Rufus::Scheduler.new
|
||||
|
||||
@scheduler.cron "0 * * * * *" do
|
||||
now = Time.now
|
||||
@@ -22,6 +22,7 @@ module Modbus
|
||||
def stop
|
||||
if defined?(@scheduler)
|
||||
@scheduler.shutdown(:kill)
|
||||
@scheduler = nil
|
||||
puts "[#{Time.current}] Modbus polling service 중지됨"
|
||||
else
|
||||
puts "[#{Time.current}] Scheduler 인스턴스 없음"
|
||||
@@ -29,7 +30,7 @@ module Modbus
|
||||
end
|
||||
|
||||
def running?
|
||||
defined?(@scheduler) && @scheduler.jobs.any?
|
||||
@scheduler && @scheduler.jobs.any?
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
@@ -39,9 +39,15 @@
|
||||
<%= submit_tag "업데이트", class: "btn bg-primary" %>
|
||||
</div>
|
||||
<% end %>
|
||||
<div class="flex p-4">
|
||||
<%= button_to "초기화", reset_schedules_path,
|
||||
method: :post,
|
||||
data: { turbo_confirm: "정말 초기화하시겠습니까? 모든 스케줄 데이터가 삭제됩니다." },
|
||||
class: "btn bg-danger" %>
|
||||
</div>
|
||||
<div class="flex p-4">
|
||||
<%= button_to "추가하기", open_modals_path(type: "add_schedule"),
|
||||
class: "btn btn-default",
|
||||
class: "btn bg-default-slate",
|
||||
data: {
|
||||
turbo_method: :post,
|
||||
turbo_frame: "modals"
|
||||
|
||||
Reference in New Issue
Block a user