/** * Генерация счет-фактуры. * * @return type */ public function generateFactura($invoice_id, $num, $date = null) { require_once ABS_PATH . '/bill/models/BillInvoicesModel.php'; require_once ABS_PATH . '/classes/sbr.php'; require_once ABS_PATH . '/classes/sbr_meta.php'; $model = BillInvoicesModel::model(); $data = $model->getInvoice($invoice_id); if (!$data) { throw new DocGenBillException(DocGenBillException::BILL_FACTURA_ERROR_MSG); } $this->setFilePath($data['login']); $this->setFileSrcId($data['uid']); $this->setField('sf_num', $num); $this->setField('sf_date', !empty($date) ? $date : date('j.m.Y')); $this->setField('name_user', $data['fields']); $this->setField('address', $data['fields']['address']); $this->setField('inn', $data['fields']['inn']); $this->setField('kpp', $data['fields']['kpp']); $this->setField('price_sf_summa', $data['price']); $this->setField('nonds_sf_summa', $data['price']); $this->setField('pricends_sf_summa', $data['price']); $this->setField('num_invoice', $invoice_id); $original_name = $this->docs[self::BILL_FACTURA_TYPE]['name']; $this->docs[self::BILL_FACTURA_TYPE]['name'] = sprintf($original_name, $this->data['$sf_num']); $file = $this->generateExcel(self::BILL_FACTURA_TYPE); if (!$file) { throw new DocGenBillException(DocGenBillException::BILL_FACTURA_ERROR_MSG); } $is_done = $model->update($invoice_id, array('file_factura_id' => $file->id)); if (!$is_done) { throw new DocGenBillException(DocGenBillException::BILL_FACTURA_ERROR_MSG); } return $file; }
/** * Удаление файла счета пользователя * * @param type $invoice_id * @return \xajaxResponse */ function removeBillInvoice($invoice_id) { $objResponse =& new xajaxResponse(); $uid = get_uid(false); if ($uid <= 0) { return $objResponse; } require_once ABS_PATH . '/bill/models/BillInvoicesModel.php'; $billInvoicesModel = new BillInvoicesModel(); $file_id = $billInvoicesModel->getInvoiceFileId($invoice_id, $uid); if ($file_id) { $file = new CFile(); $file->Delete($file_id); $objResponse->script("\n \$('bill_invoice_remove').addClass('b-layout_hide').empty();\n \$('bill_invoice_create').removeClass('b-layout_hide');\n "); } return $objResponse; }
$barNotify->delNotifies(array('page' => 'bill')); if ($page > 1 && $page > $history['pagesCount']) { header_location_exit('/404.php'); } $events = account::searchBillEvent($startTime ? $startTime : '2000-01-01', time()); $js_file = array('billing.js'); $is_jury = sbr_meta::isFtJuri($uid); $is_emp = is_emp(); $isAllowAddFunds = !$is_emp && !$is_jury; if ($isAllowAddFunds) { require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/quick_payment/quickPaymentPopupAccount.php'; quickPaymentPopupAccount::getInstance()->init(array('acc_sum' => $bill->getAccSum())); } //Пользователь юрик с заполненными реквизитами? $isAllowBillInvoice = $is_jury; if ($isAllowBillInvoice) { $isValidBillInvoice = sbr_meta::isValidUserReqvs($uid, $is_emp); if ($isValidBillInvoice) { //Попап пополнения счета по безналу путем генерации счета require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/quick_payment/quickPaymentPopupBillInvoice.php'; require_once $_SERVER['DOCUMENT_ROOT'] . '/bill/models/BillInvoicesModel.php'; quickPaymentPopupBillInvoice::getInstance()->init(); $billInvoicesModel = new BillInvoicesModel(); $billInvoice = $billInvoicesModel->getLastActiveInvoice($uid); } $showReserveNotice = $is_emp; } $content = "content.php"; $header = "../../header.new.php"; $footer = "../../footer.new.html"; include "../../template3.php";