12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- <?php
- use PHPUnit\Framework\TestCase;
- define('APP_ID', 'test');
- define('BASE_ROOT_PATH', str_replace('/test', '', dirname(__FILE__)));
- require_once(BASE_ROOT_PATH . '/global.php');
- require_once(BASE_CORE_PATH . '/lrlz.php');
- require_once(BASE_ROOT_PATH . '/fooder.php');
- class TestCardInfo extends TestCase
- {
- public static function setUpBeforeClass(): void
- {
- Base::run_util();
- }
- //docker-compose run phpcli php /var/www/html/phpunit-9.2.5.phar --filter "/(TestCardInfo::testImport)( .*)?$/" --test-suffix TestCardInfo.php /var/www/html/test
- public function testImport()
- {
- $mod_cardinfo = Model('card_info');
- $importer = function ($info) use($mod_cardinfo)
- {
- $card_no = trim($info['card_no']);
- if(strlen($card_no) != 11) {
- return;
- }
- $mod_cardinfo->import_old($info);
- };
- $import_hour = function ($end) use ($importer)
- {
- $start = $end - 3600;
- $cond = ['order_time&order_time' => ['_multi' => true, ['egt', $start], ['lt', $end]],
- 'inner_status' => 0];
- $i = 0;
- while (true)
- {
- $start = $i * 3000;
- $items = Model()->table('refill_order')
- ->field('card_no,order_time,card_type,regin_no,is_transfer,cardno_state')
- ->where($cond)
- ->order('order_time desc')->limit("{$start},3000")->select();
- $i++;
- if(empty($items)) break;
- foreach ($items as $item) {
- $importer($item);
- }
- }
- };
- $import_date = function ($end) use ($import_hour)
- {
- $start = $end - 86400;
- for ($hour = $end; $hour >= $start; $hour -= 3600) {
- $import_hour($hour);
- }
- };
- $import_days = function ($start_date, $end_date) use ($import_date)
- {
- for ($date = $end_date; $date > $start_date; $date -= 86400) {
- $import_date($date);
- }
- };
- $start_date = strtotime('2021-09-16');
- $end_date = strtotime('2021-09-29');
- $import_days($start_date,$end_date);
- }
- }
|