diff --git a/controllers/Cars.php b/controllers/Cars.php index 6e62225..43dbb9d 100644 --- a/controllers/Cars.php +++ b/controllers/Cars.php @@ -107,6 +107,9 @@ class Cars extends CC_Controller $parms['obj_type'] = 1; // 車牌類 $parms['curr_time_str'] = $this->vars['date_time']; // 現在時間, 例2015-09-21 15:36:47 $parms['pic_name'] = $config['file_name']; // 圖片檔名 + + // 免費時間設定 + $parms['free_time'] = $this->get_free_time(); $return_msg = $this->app_model()->lprio($parms); trigger_error(__FUNCTION__ . "|{$parms['lpr']}|return_msg|" . $return_msg); @@ -197,6 +200,9 @@ http://192.168.10.201/cars.html/ipcam/sno/12119/ivsno/0/io/O/type/C/lpr/4750YC/c $parms['curr_time_str'] = $this->vars['date_time']; // 現在時間, 例2015-09-21 15:36:47 $parms['pic_name'] = $config['file_name']; // 圖片檔名 + // 免費時間設定 + $parms['free_time'] = $this->get_free_time(); + $return_msg = $this->app_model()->lprio($parms); // 測試eTag trigger_error(__FUNCTION__ . "|{$parms['lpr']}|return_msg|" . $return_msg); } diff --git a/core/CC_Controller.php b/core/CC_Controller.php index dddd6ee..94a0966 100644 --- a/core/CC_Controller.php +++ b/core/CC_Controller.php @@ -176,4 +176,22 @@ class CC_Controller extends CI_Controller $station_no_arr = explode(SYNC_DELIMITER_ST_NO, $station_setting['station_no']); return $station_no_arr[0]; } + + // 取得免費時間 + public function get_free_time() + { + $station_setting = $this->data_model()->station_setting_query(); + + if(!isset($station_setting['settings'])) + return 0; + + $station_no_arr = explode(SYNC_DELIMITER_ST_NO, $station_setting['station_no']); + $station_no = $station_no_arr[0]; + + if(!isset($station_setting['settings'][$station_no]['free_time'])) + return 0; + + return $station_setting['settings'][$station_no]['free_time']; + } + } diff --git a/models/Cars_model.php b/models/Cars_model.php index 2f4b68d..ca665f9 100644 --- a/models/Cars_model.php +++ b/models/Cars_model.php @@ -363,6 +363,12 @@ class Cars_model extends CI_Model } } + // 15分鐘內, 可直接離場 (刷進刷出需過卡修正) + if(isset($parms['free_time']) && $parms['free_time'] > 0) + $out_before_time_value = date('Y-m-d H:i:s', strtotime(" + {$parms['free_time']} minutes")); + else + $out_before_time_value = date("Y-m-d H:i:s"); + $data = array ( 'station_no' => $parms['sno'], @@ -375,8 +381,7 @@ class Cars_model extends CI_Model 'in_time' => $this->now_str, 'in_lane' => $parms['ivsno'], 'in_pic_name' => empty($parms['pic_name']) ? '' : $parms['pic_name'], - //'out_before_time' => date("Y-m-d H:i:s"), - 'out_before_time' => date('Y-m-d H:i:s', strtotime(" + 15 minutes")), // 15分鐘內, 可直接離場 (刷進刷出需過卡修正) + 'out_before_time' => $out_before_time_value, 'ticket_no' => $this->gen_pass_code() ); $this->db->insert('cario', $data); diff --git a/models/Sync_data_model.php b/models/Sync_data_model.php index 8f27538..d30c92c 100644 --- a/models/Sync_data_model.php +++ b/models/Sync_data_model.php @@ -864,6 +864,7 @@ class Sync_data_model extends CI_Model { $settings[$station_no] = array(); } + $settings[$station_no]['free_time'] = empty($data['free_time']) ? 0 : $data['free_time']; // 20180205 免費入場 (minutes) $settings[$station_no]['station_888'] = empty($data['station_888']) ? 1 : $data['station_888']; $settings[$station_no]['mqtt_ip'] = empty($data['mqtt_ip']) ? MQ_HOST : $data['mqtt_ip']; $settings[$station_no]['mqtt_port'] = empty($data['mqtt_port']) ? MQ_PORT : $data['mqtt_port'];