<?php
class report_last_mo_personal extends c_report
{
 var $title='Последний МО сотрудника' ;
 var $view_by_space_filter=1 ;
 var $allow_org_ids=1 ;
 var $usl_select_org='' ;

 function setting($options=array())
 {    ?><div id="panel_filter">
             <form id="sky-form" class="sky-form"><input type="hidden" name="filter_dir" value="<?echo _CUR_REPORT_DIR?>">
                  <fieldset>
                      <div class="row" id="person_info">
                           <section class="col col-4">
                               <label class="label">UID сотрудника</label>
                               <label class="input">
                                    <input type="text" name="filter[uid]" placeholder="" value="<?echo $this->filter['uid']?>">
                               </label>
                           </section>
                        </div>
                  </fieldset>
                  <?$this->panel_button_apply();?>
              </form>
       </div><br>
     <?
  }

  function create_usl_select_obj($_params,&$options)
  {  //damp_array($this->filter) ;
     $usl=array() ;
     $usl[]='dopusk in (1,2)' ;         // допуск разрешен или запрещен
     $usl[]='dopusk_time_end>'.time() ; // срок действия допуска или запрета доступка еще дейтсвие
     if ($this->filter['client_id'])        $usl[]='member_client_id='.$this->filter['client_id'] ;
     if ($this->filter['uid'])              $usl[]='member_uid="'.$this->filter['uid'].'"' ;
     else                                   $usl[]='member_uid=-1' ; // невозможное условие
     $usl_res=implode(' and ',$usl) ;
     return($usl_res) ;
  }

 function panel_info_filter()
 { $_str=array() ; $info=array() ; $title='' ;
   if ($this->filter['uid'])                             $info['UID сотрудника']='"'.$this->filter['uid'].'"' ;
   if (_sizeof($info)) foreach($info as $title=>$value) $_str[]=$title.': <strong>'.$value.'</strong>' ;
   if (_sizeof($_str)) $title='<p class=center>'.implode(' ',$_str).'</p>' ;
   return $title ;
 }

  function get_cnt_items($usl,$options=array())
  { $cnt=execSQL_value('select count(pkey)
                        from  '.ESMO()->view_mo_session.'
                        where '.$usl,$options) ;
    return($cnt) ;
  }

  function get_items($usl,$options=array())
  { $options['no_indx']=1 ;
    $limit=($options['limit'])? ' '.$options['limit']:'' ;
    $order=($this->filter['order'])? ' order by '.$this->filter['order']:' order by pkey desc' ;
 	$list_rec=execSQL('select *
                       from  '.ESMO()->view_mo_session.'
                       where '.$usl.$order.$limit,$options) ;
    if (_sizeof($list_rec)) foreach($list_rec as $id=>$rec) ESMO()->prepare_public_info_to_mo($list_rec[$id],$options) ;
    return($list_rec) ;
  }


// шаблон - вывод ссылками без разделитея
  function print_template_HTML($list_recs,$options=array())
  { $id=($options['id'])? 'id='.$options['id']:'' ;
    //print_2x_arr($list_recs) ;
    /*
    ?><table class="list_personal_table_img basic fz_small full auto"<?echo $id?>>
        <colgroup><col id="c1"><col id="c2"><col id="c3"><col id="c4"></colgroup>
        <tr><th>Пропуск</th><th>Фото</th><th>ФИО</th><th>Дата рождения</th><th>Возраст</th><th>Организация</th><th>Подразделение</th><th>Должность</th></tr><? ;
        if (_sizeof($list_recs)) foreach($list_recs as $rec)
        { ?><tr class=item>
                <td class="id"><?echo $rec['propusk']?><?if ($rec['demo_access']){?><div class="demo_access" title="Сотрудник может проходить неограниченное число МО"></div><?}?></td>
                <td class="img"><a  href="<?echo $rec['__href']?>" class="new_window" target="_blank" title="win_second"><img src="<?echo img_clone($rec,'small')?>"></a></td>
                <td class="left"><a href="<?echo $rec['__href']?>" class="new_window" target="_blank" title="win_second"><?echo $rec['obj_name']?></a>
                    <br><?echo '<span class="nowrap small">'.$rec['uid'].'</span>'?>
                    <?if (!$rec['enabled'])echo '<br><br><span class="red bold">УВОЛЕН</span> ('.date('d.m.Y H:i',$rec['fired_data']).')'?>

                </td>
                <td class="dr"><?echo $rec['dr']?></td>
                <td class="age"><?echo $rec['age']?></td>
                <td class="left"><?echo $rec['_org_name']?></td>
                <td class="left"><?echo $rec['_otdel_name']?></td>
                <td class="left"><?echo _IL('IL_works')->recs[$rec['working']]['obj_name']?></td>
            </tr><?
        }
      ?></table><?
      //damp_array($rec) ;
    */
  }

    function print_template_XML($list_recs,$options=array())
    { //damp_array($list_recs) ;
      //print_r($list_recs) ; trace() ;
      if (_sizeof($list_recs)) foreach($list_recs as $rec)
      {   $item=add_element($this->xml_doc,$this->xml,'item','',array('id'=>$rec['pkey'])) ;
          add_element($this->xml_doc,$item,'fio',$rec['member_name']) ;
          add_element($this->xml_doc,$item,'dr',$rec['member_dr']) ;
          add_element($this->xml_doc,$item,'terminal_name',$rec['terminal_name']) ;
          add_element($this->xml_doc,$item,'time_MO',$rec['_data']) ;
          add_element($this->xml_doc,$item,'time_dopusk_end',$rec['_data_dopusk_end']) ;
          add_element($this->xml_doc,$item,'mo_id',$rec['pkey']) ;
          add_element($this->xml_doc,$item,'question',$rec['_question']) ;
          add_element($this->xml_doc,$item,'alko',$rec['_alko']) ;
          add_element($this->xml_doc,$item,'systolic',$rec['_systolic']) ;
          add_element($this->xml_doc,$item,'diastolic',$rec['_diastolic']) ;
          add_element($this->xml_doc,$item,'pulse',$rec['_pulse']) ;
          add_element($this->xml_doc,$item,'temperature',$rec['temperature']) ;
          add_element($this->xml_doc,$item,'doctor_comment',$rec['doctor_comment']) ;
          add_element($this->xml_doc,$item,'mo_result_id',$rec['status']) ;
          add_element($this->xml_doc,$item,'mo_result_text',$rec['_status_name']) ;
          add_element($this->xml_doc,$item,'mo_dopusk_id',$rec['dopusk']) ;
          add_element($this->xml_doc,$item,'mo_dopusk_text',$rec['_dopusk_name_full']) ;
      }
    }

    function print_template_JSON($list_recs,$options=array())
       { $result=array() ;
         if (_sizeof($list_recs)) foreach($list_recs as $rec)
           $result[]=array('fio'=>$rec['member_name'],
                           'dr'=>$rec['member_dr'],
                           'terminal_name'=>$rec['terminal_name'],
                           'time_MO'=>$rec['_data'],
                           'time_dopusk_end'=>$rec['_data_dopusk_end'],
                           'mo_id'=>$rec['pkey'],
                           'question'=>$rec['_question'],
                           'alko'=>$rec['_alko'],
                           'systolic'=>$rec['_systolic'],
                           'diastolic'=>$rec['_diastolic'],
                           'pulse'=>$rec['_pulse'],
                           'temperature'=>$rec['temperature'],
                           'doctor_comment'=>$rec['doctor_comment'],
                           'mo_result_id'=>$rec['status'],
                           'mo_result_text'=>$rec['_status_name'],
                           'mo_dopusk_id'=>$rec['dopusk'],
                           'mo_dopusk_text'=>$rec['_dopusk_name_full']
                          ) ;
           $text_json_out=json_encode($result) ;
           // возвращает ответ устройству
           echo $text_json_out ;

       }

    function manual_tags_in()
    {
        ?><table class="basic fz_normal left">
                    <tr><td>uid</td><td>Уникальный идентификатор сотрудника</td></tr>
        </table><?
    }

    function manual_tags_out()
    {
        ?><table class="basic fz_normal left">
                    <tr><td>time_now</td><td>текущее время сервера</td></tr>
                    <tr><td>time_from</td><td>время, от которого происходил поиск МО</td></tr>
                    <tr><td>fio</td><td>ФИО сотрудника</td></tr>
                    <tr><td>dr</td><td>дата рождения сотрудника</td></tr>
                    <tr><td>terminal_name</td><td>терминал, на котором сотрудник проходил МО</td></tr>
                    <tr><td>time_MO</td><td>дата прохождения МО</td></tr>
                    <tr><td>time_dopusk_end</td><td>срок действия допуска</td></tr>
                    <tr><td>mo_id</td><td>id сессии МО</td></tr>
                    <tr><td>question</td><td>жалобы на состояние здоровья</td></tr>
                    <tr><td>alko</td><td>алкоголь</td></tr>
                    <tr><td>systolic</td><td>систолическое давление</td></tr>
                    <tr><td>diastolic</td><td>диалистическое давление</td></tr>
                    <tr><td>pulse</td><td>пульс</td></tr>
                    <tr><td>temperature</td><td>температура</td></tr>
                    <tr><td>doctor_comment</td><td>комментарий врача</td></tr>
                    <tr><td>mo_result_id</td><td>id результата МО на терминале (1: осмотр окончен, успешно, 2: осмотр окончен, ошибка, 3: осмотр не проводился)</td></tr>
                    <tr><td>mo_result_text</td><td>текстовое описание результата МО</td></tr>
                    <tr><td>mo_dopusk_id</td><td>id допуска(1: допуск получен, 2: допуск запрещен)</td></tr>
                    <tr><td>mo_dopusk_text</td><td>текстовое описание допуска</td></tr>
          </table>
        <?
    }






}

?>
