<?php ini_set('display_errors', 1); error_reporting(E_ALL ^ E_NOTICE); ini_set('max_execution_time', 0); ini_set('memory_limit', '512M'); if (!isset($_SERVER['DOCUMENT_ROOT']) || !strlen($_SERVER['DOCUMENT_ROOT'])) { $_SERVER['DOCUMENT_ROOT'] = rtrim(realpath(pathinfo(__FILE__, PATHINFO_DIRNAME) . '/../../'), '/'); } require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/stdf.php"; require_once $_SERVER['DOCUMENT_ROOT'] . "/classes/DocGen/DocGenReserves.php"; try { $doc = new DocGenReserves(array('id' => 777, 'employer' => array('login' => 'employer33'))); $doc->setField('text5_info', '1111111 2222222 33333333'); $doc->generateActServiceEmp(); } catch (Exception $e) { print_r(iconv('CP1251', 'UTF-8', $e->getMessage())); } /* $data = array( 'price' => array( 'format' => 'price', 'option' => '', 'value' => 1000 ) ); */ /* try {
/** * Аналог generateInvoice * использующий DocGenReserves класс для генерации дока. * * @param type $user_info * * @return bool */ public function generateInvoice2($user_info, $generate_now = false) { $user_info['form_type'] = sbr::FT_JURI; $file = new CFile(); $reserve_id = @$this->data['reserve_id']; $data = $this->getCheckByReserveId($reserve_id); if (isset($data['payed_date']) && !empty($data['payed_date'])) { return false; } if (isset($data['check_file_id']) && $data['check_file_id'] > 0) { $file->Delete($data['check_file_id']); } if (!$data) { $data = array(); } $this->data = array_merge($data, $this->data, $user_info); $login = @$_SESSION['login']; if (@$_SESSION['uid'] != $this->data['user_id']) { $emp = new employer(); $ret = $emp->GetName($this->data['user_id'], $error); if (!$ret) { return false; } $login = $ret['login']; } try { $doc = new DocGenReserves(array('id' => $this->options['src_id'], 'employer' => array('login' => $login))); $doc->setField('date_offer', $this->data['date_offer']); unset($this->data['date_offer']); if (!isset($this->data['date'])) { $this->data['date'] = date('Y-m-d H:i:s'); } $doc->setField('datetext_1', $this->data['date']); $doc->setField('num_bs', $this->options['src_id']); $doc->setField('fio_emp', $this->data); if (empty($user_info['phone'])) { $user_info['phone'] = $user_info['mob_phone']; } $doc->setField('phone', $user_info['phone']); $doc->setField('price_price', $this->data['price']); $doc->setField('nonds_commision', $this->data['tax_price']); $doc->setField('nondstotal_price', $this->data); $doc->setField('pricends_commision', $this->data['tax_price']); $doc->setField('price_reserve_price', $this->data['reserve_price']); $doc->setField('pricelong_reserve_price', $this->data['reserve_price']); $doc->setField('price_commision', $this->data['tax_price']); if ($generate_now) { $doc->disableQueue(); } $file = $doc->generateBankInvoice(); } catch (Exception $e) { return false; } $this->data['check_file_id'] = $file->id; if (!$this->addCheck()) { return false; } if ($generate_now) { Events::trigger('generateInvoice2'); } return $file; }