Files
crm.clientright.ru/modules/Workflow2/tasks/WfTaskAdjustglobaltax.php
Fedor ac7467f0b4 Major CRM updates: AI Assistant, Court Status API, S3 integration improvements, and extensive file storage system
- 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.
2025-10-16 11:17:21 +03:00

79 lines
2.5 KiB
PHP

<?php
require_once(realpath(dirname(__FILE__).'/../autoload_wf.php'));
class WfTaskAdjustglobaltax extends \Workflow\Task
{
/**
* @var \Workflow\Preset\SimpleConfig
*/
private $_SC = null;
public function init()
{
$this->_SC = $this->addPreset("SimpleConfig", "details", array(
'templatename' => 'mainconfig',
));
if($this->isConfiguration()) {
$this->_SC->setColumnCount(2);
$taxes = getAllTaxes('available');
$this->_SC->addHeadline('Inventory Taxes');
foreach($taxes as $tax) {
$this->_SC->addField('enable_'.$tax['taxname'], 'active tax? '.$tax['taxlabel'].'', 'checkbox');
$this->_SC->addField($tax['taxname'], $tax['taxlabel'].' (%)', 'template', array('default' => $tax['percentage']));
}
/*
$this->_SC->addHeadline('Shipping / Fee Taxes');
$taxes = getAllTaxes('available', 'sh');
foreach($taxes as $tax) {
$this->_SC->addField('enable_'.$tax['taxname'].'_sh', 'active tax? '.$tax['taxlabel'].'', 'checkbox');
$this->_SC->addField($tax['taxname'].'_sh', $tax['taxlabel'].' (%)', 'template', array('default' => $tax['percentage']));
}
*/
}
}
public function handleTask(&$context) {
/* Insert here source code to execute the task */
$taxes = getAllTaxes('available');
$setTaxes = array();
foreach($taxes as $tax) {
$enabled = $this->_SC->get('enable_'.$tax['taxname']);
if(!empty($enabled)) {
$setTaxes[$tax['taxname'] . '_group_percentage'] = floatval($this->_SC->get($tax['taxname']));
}
}
$context->setGroupTaxes($setTaxes);
/*
$taxes = getAllTaxes('available', 'sh');
$setTaxes = array();
foreach($taxes as $tax) {
$enabled = $this->_SC->get('enable_'.$tax['taxname'].'_sh');
if(!empty($enabled)) {
$setTaxes[$tax['taxname'] . '_sh_percent'] = floatval($this->_SC->get($tax['taxname'].'_sh'));
}
}
$context->setShipTaxes($setTaxes);
*/
return "yes";
}
public function beforeGetTaskform($viewer) {
/* Insert here source code to create custom configurations pages */
}
public function beforeSave(&$values) {
/* Insert here source code to modify the values the user submit on configuration */
}
}