- Added comprehensive AI Assistant system (aiassist/ directory): * Vector search and embedding capabilities * Typebot proxy integration * Elastic search functionality * Message classification and chat history * MCP proxy for external integrations - Implemented Court Status API (GetCourtStatus.php): * Real-time court document status checking * Integration with external court systems * Comprehensive error handling and logging - Enhanced S3 integration: * Improved file backup system with metadata * Batch processing capabilities * Enhanced error logging and recovery * Copy operations with URL fixing - Added Telegram contact creation API - Improved error logging across all modules - Enhanced callback system for AI responses - Extensive backup file storage with timestamps - Updated documentation and README files - File storage improvements: * Thousands of backup files with proper metadata * Fix operations for broken file references * Project-specific backup and recovery systems * Comprehensive file integrity checking Total: 26,461+ files added/modified including AWS SDK, vendor dependencies, and extensive backup system.
125 lines
3.2 KiB
PHP
125 lines
3.2 KiB
PHP
<?php
|
|
/*+**********************************************************************************
|
|
* The contents of this file are subject to the vtiger CRM Public License Version 1.1
|
|
* ("License"); You may not use this file except in compliance with the License
|
|
* The Original Code is: SalesPlatform Ltd
|
|
* The Initial Developer of the Original Code is SalesPlatform Ltd.
|
|
* All Rights Reserved.
|
|
* If you have any questions or comments, please email: devel@salesplatform.ru
|
|
************************************************************************************/
|
|
|
|
/**
|
|
* Description of CmlCatalog
|
|
* @author alexd
|
|
*/
|
|
class CmlCatalog {
|
|
private $name;
|
|
private $oneEsIdentifier;
|
|
private $currency;
|
|
private $products;
|
|
private $services;
|
|
|
|
public function __construct($name, $oneEsIdentifier) {
|
|
$this->name = $name;
|
|
$this->oneEsIdentifier = $oneEsIdentifier;
|
|
$this->currency = NULL;
|
|
$this->products = array();
|
|
$this->services = array();
|
|
}
|
|
|
|
/**
|
|
* Add CmlProduct to catalog.
|
|
* @param CmlProduct $product
|
|
*/
|
|
public function addProduct($product) {
|
|
array_push($this->products, $product);
|
|
}
|
|
|
|
/**
|
|
* Retur all catalog products as array.
|
|
* @return array<CmlProduct>
|
|
*/
|
|
public function getProducts() {
|
|
return $this->products;
|
|
}
|
|
|
|
/**
|
|
* Return all catalog services as array.
|
|
* @return array
|
|
*/
|
|
public function getServices() {
|
|
return $this->services;
|
|
}
|
|
|
|
/**
|
|
* Set CmlCatalog services
|
|
* @param array<CmlService> $services
|
|
*/
|
|
public function setServices($services) {
|
|
$this->services = $services;
|
|
}
|
|
|
|
/**
|
|
* Set CmlCatalog products.
|
|
* @param array<CmlProducts> $products
|
|
*/
|
|
public function setProducts($products) {
|
|
$this->products = $products;
|
|
}
|
|
|
|
/**
|
|
* Add CmlServise to catalog.
|
|
* @param CmlService $service
|
|
*/
|
|
public function addService($service) {
|
|
array_push($this->services, $service);
|
|
}
|
|
|
|
/**
|
|
* Retrun currency code.
|
|
* @return String
|
|
*/
|
|
public function getCurrency() {
|
|
return $this->currency;
|
|
}
|
|
|
|
/**
|
|
* Set currency of catalog.
|
|
* @param String $currency
|
|
*/
|
|
public function setCurrency($currency) {
|
|
$this->currency = $currency;
|
|
}
|
|
|
|
/**
|
|
* Reutrn catalog name.
|
|
* @return String
|
|
*/
|
|
public function getName() {
|
|
return $this->name;
|
|
}
|
|
|
|
/**
|
|
* Set default inventories currency
|
|
* @param type $currencyCode
|
|
*/
|
|
public function setInventoriesCurrencyCode($currencyCode) {
|
|
foreach($this->products as $product) {
|
|
$product->setCurrency($currencyCode);
|
|
}
|
|
|
|
foreach($this->services as $service) {
|
|
$service->setCurrency($currencyCode);
|
|
}
|
|
}
|
|
|
|
public function toRestDescription() {
|
|
$restDescription['bookname'] = $this->name;
|
|
$restDescription['active'] = 1; //active catalog
|
|
$restDescription['one_s_id'] = $this->oneEsIdentifier;
|
|
$restDescription['currency_id'] = $this->currency;
|
|
|
|
return $restDescription;
|
|
}
|
|
}
|