soukicz/flexibee-fio-fixer

修复Flexibee中的FIO支付标签

dev-master 2018-01-29 22:43 UTC

This package is auto-updated.

Last update: 2024-09-13 03:39:43 UTC


README

当Flexibee连接到FIO时,只会下载描述的前20个字符。此包通过FIO API下载完整描述并将其添加到Flexibee中。

此包仅更新根据ID找到的现有运动的描述,覆盖原始描述并忽略不存在的交易。

安装

composer require soukicz/flexibee-fio-fixer

使用

更新最近24小时的交易
require 'vendor/autoload.php';

$fixer = \Soukicz\FlexibeeFioFixer\FlexibeeFioFixer::factory(
    'flexibee-user', 
    'flexibee-password',
    'demo.flexibee.eu', 
    5434, 
    'demo',
    'fio-token-absdflkgsdjkgjdfkljgdkljg'
);

$fixer->update(new DateTimeImmutable('-24 hours'), new DateTimeImmutable('-24 hours'));
更新最近一年的交易

对于更长的时间段,最好分批更新。

require 'vendor/autoload.php';

$fixer = \Soukicz\FlexibeeFioFixer\FlexibeeFioFixer::factory(
    'flexibee-user', 
    'flexibee-password',
    'demo.flexibee.eu', 
    5434, 
    'demo',
    'fio-token-absdflkgsdjkgjdfkljgdkljg'
);

$date = time();
$endDate = strtotime('-1 year'); 
$timeStep = 60 * 60 * 24 * 30;
while ($date > $endDate) {
    $last = time();
    $fixer->update(DateTime::createFromFormat('U', $date - $timeStep), DateTime::createFromFormat('U', $date));
    echo date('Y-m-d', $date) . "\n";
    while (time() < $last + 30) sleep(1); // FIO dovoluje stažení jednou za 30 sekund 
    $date -= $timeStep;
}