Files
crm.clientright.ru/modules/SalesOrder/SalesOrderPDFController.php

160 lines
6.3 KiB
PHP
Raw Normal View History

<?php
/*+**********************************************************************************
* The contents of this file are subject to the vtiger CRM Public License Version 1.0
* ("License"); You may not use this file except in compliance with the License
* The Original Code is: vtiger CRM Open Source
* The Initial Developer of the Original Code is vtiger.
* Portions created by vtiger are Copyright (C) vtiger.
* All Rights Reserved.
************************************************************************************/
include_once 'include/InventoryPDFController.php';
include_once dirname(__FILE__). '/SalesOrderPDFHeaderViewer.php';
class Vtiger_SalesOrderPDFController extends Vtiger_InventoryPDFController{
function buildHeaderModelTitle() {
$singularModuleNameKey = 'SINGLE_'.$this->moduleName;
$translatedSingularModuleLabel = getTranslatedString($singularModuleNameKey, $this->moduleName);
if($translatedSingularModuleLabel == $singularModuleNameKey) {
$translatedSingularModuleLabel = getTranslatedString($this->moduleName, $this->moduleName);
}
return sprintf("%s: %s", $translatedSingularModuleLabel, $this->focusColumnValue('salesorder_no'));
}
function getHeaderViewer() {
$headerViewer = new SalesOrderPDFHeaderViewer();
$headerViewer->setModel($this->buildHeaderModel());
return $headerViewer;
}
function buildHeaderModelColumnLeft() {
$modelColumnLeft = parent::buildHeaderModelColumnLeft();
return $modelColumnLeft;
}
function buildHeaderModelColumnCenter() {
$subject = $this->focusColumnValue('subject');
$customerName = $this->resolveReferenceLabel($this->focusColumnValue('account_id'), 'Accounts');
$contactName = $this->resolveReferenceLabel($this->focusColumnValue('contact_id'), 'Contacts');
$purchaseOrder = $this->focusColumnValue('vtiger_purchaseorder');
$quoteName = $this->resolveReferenceLabel($this->focusColumnValue('quote_id'), 'Quotes');
$subjectLabel = getTranslatedString('Subject', $this->moduleName);
$quoteNameLabel = getTranslatedString('Quote Name', $this->moduleName);
$customerNameLabel = getTranslatedString('Customer Name', $this->moduleName);
$contactNameLabel = getTranslatedString('Contact Name', $this->moduleName);
$purchaseOrderLabel = getTranslatedString('Purchase Order', $this->moduleName);
$modelColumn1 = array(
$subjectLabel => $subject,
$customerNameLabel => $customerName,
$contactNameLabel => $contactName,
$purchaseOrderLabel => $purchaseOrder,
$quoteNameLabel => $quoteName
);
return $modelColumn1;
}
function buildHeaderModelColumnRight() {
$issueDateLabel = getTranslatedString('Issued Date', $this->moduleName);
$validDateLabel = getTranslatedString('Due Date', $this->moduleName);
$billingAddressLabel = getTranslatedString('Billing Address', $this->moduleName);
$shippingAddressLabel = getTranslatedString('Shipping Address', $this->moduleName);
$modelColumn2 = array(
'dates' => array(
$issueDateLabel => $this->formatDate(date("Y-m-d")),
$validDateLabel => $this->formatDate($this->focusColumnValue('duedate')),
),
$billingAddressLabel => $this->buildHeaderBillingAddress(),
$shippingAddressLabel => $this->buildHeaderShippingAddress()
);
return $modelColumn2;
}
function getWatermarkContent() {
return $this->focusColumnValue('sostatus');
}
}
//SalesPlatform.ru begin SPPDFController - create by user template
include_once 'includes/SalesPlatform/PDF/ProductListPDFController.php';
require_once 'modules/Quotes/Quotes.php';
require_once 'modules/Potentials/Potentials.php';
require_once 'modules/Accounts/Accounts.php';
class SalesPlatform_SalesOrderPDFController extends SalesPlatform_PDF_ProductListDocumentPDFController{
function buildDocumentModel() {
global $app_strings;
try {
$model = parent::buildDocumentModel();
$this->generateEntityModel($this->focus, 'SalesOrder', 'salesorder_', $model);
//SalesPaltform.ru begin
$entity = CRMEntity::getInstance('Potentials');
//$entity = new Potentials();
//SalesPaltform.ru end
if ($this->focusColumnValue('potential_id')) {
$entity->retrieve_entity_info($this->focusColumnValue('potential_id'), 'Potentials');
}
$this->generateEntityModel($entity, 'Potentials', 'potential_', $model);
//SalesPaltform.ru begin
$entity = CRMEntity::getInstance('Quotes');
//$entity = new Quotes();
//SalesPaltform.ru end
if ($this->focusColumnValue('quote_id')) {
$entity->retrieve_entity_info($this->focusColumnValue('quote_id'), 'Quotes');
}
$this->generateEntityModel($entity, 'Quotes', 'quote_', $model);
//SalesPaltform.ru begin
$entity = CRMEntity::getInstance('Contacts');
//$entity = new Contacts();
//SalesPlatform.ru end
if ($this->focusColumnValue('contact_id')) {
$entity->retrieve_entity_info($this->focusColumnValue('contact_id'), 'Contacts');
}
$this->generateEntityModel($entity, 'Contacts', 'contact_', $model);
//SalesPaltform.ru begin
$entity = CRMEntity::getInstance('Accounts');
//$entity = new Accounts();
//SalesPlatform.ru end
if ($this->focusColumnValue('account_id')) {
$entity->retrieve_entity_info($this->focusColumnValue('account_id'), 'Accounts');
}
$this->generateEntityModel($entity, 'Accounts', 'account_', $model);
$this->generateUi10Models($model);
$this->generateRelatedListModels($model);
$model->set('salesorder_no', $this->focusColumnValue('salesorder_no'));
return $model;
} catch (Exception $e) {
echo '<meta charset="utf-8" />';
if($e->getMessage() == $app_strings['LBL_RECORD_DELETE']) {
echo $app_strings['LBL_RECORD_INCORRECT'];
echo '<br><br>';
} else {
echo $e->getMessage();
echo '<br><br>';
}
return null;
}
}
function getWatermarkContent() {
return '';
}
}
//SalesPlatform.ru end
?>