<?php
include_once("c_pl.php");
class c_page_cab_pl_med_orgs extends c_page_cab_pl
{
    public $h1 = 'Медицинская организация';

    function block_main()
    {
        $this->page_title();

        ?><button class="button left v1" cmd="check_services_org_info">Проверить XML выгрузку мед.организации</button><?
        ?><button class="button left v1" cmd="check_services_org_director">Проверить XML выгрузку директора мед.организации</button><?
        ?><button class="button left v1" cmd="check_services_set_org_pl_uid">Проверка назначения UID 1С</button><?

        ?><div class="clear"></div><br><?
        if (!$_POST['cmd'])
        { $this->panel_med_orgs() ;
          ?><br><br><?
          $this->panel_med_directors() ;
        }
        else if (method_exists($this, $_POST['cmd'])) $this->{$_POST['cmd']}() ;
    }


    function panel_med_orgs()
    {
        include_once(_DIR_EXT.'/pl/report_pl_med_orgs.php') ;
        $report_obj=new report_pl_med_orgs() ;
        $report_obj->view() ;
    }

    function panel_med_directors()
    {
        include_once(_DIR_EXT.'/pl/report_med_directors.php') ;
        $report_obj=new report_med_directors() ;
        $report_obj->view() ;
    }

   function check_services_org_info()
       {    ?><h2>Проверка запроса получения данных по медицинской организации ЭСМО</h2><?
            $url=_PATH_TO_SITE.'/services/pl/get_med_orgs/' ;
            //echo 'Выполняем запрос: <strong>'.$url.'</strong><br>' ;
            $result=IO()->doPut_v3($url,[],['debug'=>1,'return_logfname'=>1,'api_key'=>'b73fc83d08eceffd872643c533685515']) ;
            //$result=IO()->doPut_v3($url,[],['debug'=>1,'return_logfname'=>1]) ;


            if ($result['log_fname'])
            { $log_content=file_get_contents(_DIR_TO_ROOT.$result['log_fname']) ;
              echo $log_content ;
            }

            echo 'Получен статус ответа: <strong>'.$result['status'].'</strong><br>' ;
            //damp_array($result);
            if ($result['status']==200)
            {
                $data = json_decode(json_encode((array) simplexml_load_string($result['content'])), true);
                if (isset($data['item'][0])) $data=$data['item'][0] ; // если были передано несколько организаций - берем первую
                else $data=$data['item'] ;
                if (sizeof($data))
                { //damp_array($data);
                    echo 'Получены XML данные:<br>' ;

                    ?><pre data-enlighter-language="less"><? echo ENGINE()->htmlentities_open_tag($result['content']) ?></pre><?

                    ?><h2>Проверка запроса назначения UID 1C медицинской организации ЭСМО</h2><?
                    FORM()->form_open();
                    FORM()->row_open() ;
                    FORM()->section_input(['title'=>'UID 1C','name'=>'uid_1c','value'=>ENGINE()->generate_UID(),'col_count'=>2]) ;
                    FORM()->row_close() ;
                    ?><button class="button left v2" cmd="pl/check_services_set_org_pl_uid" uid="<?echo $data['@attributes']['uid']?>">Проверка назначения UID 1С</button><?
                    FORM()->form_close() ;
                    ?><br><div id="panel_check_services_org_info_step2"></div><?
                }


                //damp_array($xml);

            }
            else damp_array($result,1,-1);
            //$this->add_element('show_modal_window','HTML','check_services_org_info');
       }

   function check_services_org_director()
       {    ?><h2>Проверка запроса получения данных по директору медицинской организации ЭСМО</h2><?
            $url=_PATH_TO_SITE.'/services/pl/get_med_director/' ;
            //echo 'Выполняем запрос: <strong>'.$url.'</strong><br>' ;
            $result=IO()->doPut_v3($url,[],['debug'=>1,'return_logfname'=>1,'api_key'=>'b73fc83d08eceffd872643c533685515']) ;


            if ($result['log_fname'])
            { $log_content=file_get_contents(_DIR_TO_ROOT.$result['log_fname']) ;
              echo $log_content ;
            }

            echo 'Получен статус ответа: <strong>'.$result['status'].'</strong><br>' ;
            //damp_array($result);
            if ($result['status']==200)
            {
                $data = json_decode(json_encode((array) simplexml_load_string($result['content'])), true);
                if (isset($data['item'][0])) $data=$data['item'][0] ; // если были передано несколько организаций - берем первую
                else $data=$data['item'] ;
                echo 'Получены XML данные:<br>' ;
                ?><pre data-enlighter-language="less"><? echo ENGINE()->htmlentities_open_tag($result['content']) ?></pre><?
            }
            else damp_array($result,1,-1);
       }

   function check_services_set_org_pl_uid()
   	{   $url=_PATH_TO_SITE.'/services/pl/set_med_orgs_uid/' ;

        $rec_med_org=execSQL_van('select * from catalog_med_orgs order by pkey limit 1') ;
   		if (!$rec_med_org['uid_1c']) $rec_med_org['uid_1c']=ENGINE()->generate_UID() ;
           $data='<?xml version="1.0" encoding="utf-8"?>
           <set_med_orgs_uid date="'.date('Y-m-d H:i').'">
               <item uid="'.$rec_med_org['uid'].'">
               <uid_1c>'.$rec_med_org['uid_1c'].'</uid_1c>
             </item>
           </set_med_orgs_uid>';

   		$result=IO()->doPut_v3($url,['post'=>$data],['debug'=>1,'return_logfname'=>1,'api_key'=>'b73fc83d08eceffd872643c533685515']) ;
           //damp_array($result);
           if ($result['log_fname'])
           { $log_content=file_get_contents(_DIR_TO_ROOT.$result['log_fname']) ;
             echo $log_content ;
           }


   		$data = json_decode(json_encode((array) simplexml_load_string($result['content'])), true);
   		//damp_array($data);
   		//damp_array($result);
           if (sizeof($data))
            { //damp_array($data);
                echo 'Получены XML данные:<br>' ;
                ?><pre data-enlighter-language="less"><? echo ENGINE()->htmlentities_open_tag($result['content']) ?></pre><?
            }
   }






}


?>
