12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- //
- // Created by Administrator on 2019/3/15.
- //
- #include "min_system.h"
- #include "ya_setting.h"
- #include "forbid_staff_down_mine.h"
- #include <ev++.h>
- #include "card.h"
- #include "log.h"
- #include "config_file.h"
- min_system::min_system ()
- {
- m_thread.reset(new std::thread(std::bind(&min_system::run,this)));
- m_lastTimer = time(nullptr) ;
- m_interval_time = 30;
- }
- void min_system::initSystem(config_file * config)
- {
- std_info("当前系统: 采集最小系统,和虹膜考勤系统相关! 初始化最小系统");
- if (config)
- {
- m_interval_time = config->get("min_system_interval_time",60);
- }
- }
- //定时重新加载相关数据
- void min_system::on_timer_load()
- {
- if (!CYaSetting::g_minSystem)
- {
- return ;
- }
- forbid_staff_down_mine::instance()->on_load_data();
- }
- void min_system::run()
- {
- ev::timer timer_1s(*this);
- timer_1s.set<min_system,&min_system::on_time>(this);
- timer_1s.start(m_interval_time,m_interval_time);
- ev::dynamic_loop::run(0);
- //log_info("worker_thread exit....");
- }
- void min_system::on_time()
- {
- std_info("min_system::on_time ");
- time_t cur_time = time(nullptr);
- s_min_system.on_timer_load();
- if (cur_time - s_min_system.m_lastTimer > 60 * 60)
- {
- card_list::instance()->init_staffer("");
- }
- s_min_system.m_lastTimer = time(nullptr);
- }
|