/** * */ public function testReadUserInfo() { if (extension_loaded('xdebug')) { $this->assertTrue(true); return; } $gameVersion = 'tw'; $pdo = PdoFactory::makeGlobalPdo($gameVersion); $snsidUidPairs = ['100001349218797' => 474000, '100001109305149' => 237204]; $uidSnsidPairs = array_flip($snsidUidPairs); $userList = PaymentInfoProvider::readUserInfo($pdo, $snsidUidPairs, 1); // dump($userList); foreach ($userList as $uid => $digest) { static::assertInstanceOf(PaymentDigest::class, $digest); static::assertEquals($uid, $digest->uid); $snsid = $uidSnsidPairs[$uid]; static::assertEquals($snsid, $digest->snsid); static::assertTrue(is_int($digest->lastPayTime)); static::assertTrue(is_float($digest->lastPayAmount)); static::assertTrue(is_float($digest->historyPayAmount)); } }
/** * @param array $userList * * @return array */ protected function appendPaymentDigest(array $userList) { $snsidUidPairs = []; foreach ($userList as $uid => $userInfo) { assert((int) $uid === (int) $userInfo['uid']); $snsidUidPairs[$userInfo['snsid']] = $userInfo['uid']; } $paymentDigestList = PaymentInfoProvider::readUserInfo(PdoFactory::makeGlobalPdo($this->gameVersion), $snsidUidPairs); $emptyPaymentDigest = new PaymentDigest(); $dataSet = []; foreach ($userList as $uid => $userInfo) { $paymentDigest = isset($paymentDigestList[$uid]) ? $paymentDigestList[$uid] : $emptyPaymentDigest; $dataSet[$uid] = array_merge($userInfo, $this->injectPaymentDigest($paymentDigest)); } return $dataSet; }