This commit is contained in:
aozhiwei 2022-01-29 13:00:41 +08:00
parent 1fae4dee36
commit 085274b5fe
3 changed files with 12 additions and 12 deletions

View File

@ -30,7 +30,7 @@ CREATE TABLE `t_box_order` (
`idx` bigint NOT NULL AUTO_INCREMENT COMMENT '自增id',
`order_id` varchar(60) NOT NULL DEFAULT '' COMMENT '订单id',
`game_id` int(11) NOT NULL DEFAULT '0' COMMENT 'game id',
`batch_id` int(11) NOT NULL DEFAULT '0' COMMENT '批次号',
`batch_idx` int(11) NOT NULL DEFAULT '0' COMMENT '批次号idx',
`type` varchar(60) NOT NULL DEFAULT '' COMMENT 'type',
`item_id` int(11) NOT NULL DEFAULT '0' COMMENT '道具id',
`state` int(11) NOT NULL DEFAULT '0' COMMENT 'state 0:待支付 1支付成功',
@ -58,7 +58,7 @@ CREATE TABLE `t_box_order` (
PRIMARY KEY (`idx`),
UNIQUE KEY `order_id` (`order_id`),
UNIQUE KEY `signature` (`signature`),
KEY `batch_id` (`batch_id`),
KEY `batch_idx` (`batch_idx`),
KEY `state` (`state`),
KEY `done` (`done`)
) ENGINE=InnoDB AUTO_INCREMENT=10001 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

View File

@ -34,8 +34,8 @@ class MarketController extends BaseController {
}
$countdown = max(0, $currBatchMeta['_start_time_utc'] - myself()->_getNowTime());
$soldNum = min(BoxOrder::getSoldNum($currBatchMeta['batch_id']), $currBatchMeta['number_of_props']);
$buyed = $this->isTestMode() ? 0 : BoxOrder::isBuyed($account, $currBatchMeta['batch_id']);
$soldNum = min(BoxOrder::getSoldNum($currBatchMeta['id']), $currBatchMeta['number_of_props']);
$buyed = $this->isTestMode() ? 0 : BoxOrder::isBuyed($account, $currBatchMeta['id']);
$presaleInfo = array(
'batch_id' => $currBatchMeta['batch_id'],
'countdown' => $countdown,
@ -87,7 +87,7 @@ class MarketController extends BaseController {
if ($batchMetas) {
foreach ($batchMetas as $meta) {
$heroMeta = mt\Hero::get($meta['item_id']);
$boxId = phpcommon\genBoxId($currBatchMeta['batch_id'], $meta['id'], $meta['item_id']);
$boxId = phpcommon\genBoxId($currBatchMeta['id'], $meta['id'], $meta['item_id']);
$currencyMeta = mt\Currency::get($meta['currency_id']);
if (!$currencyMeta) {
myself()->_rspErr(500, 'server internal error');
@ -194,7 +194,7 @@ class MarketController extends BaseController {
myself()->_getMarketMysql(),
't_box_order',
array(
'batch_id' => $currBatchMeta['batch_id'],
'batch_idx' => $currBatchMeta['id'],
'order_id' => $orderId,
'type' => $type,
'item_id' => $itemId,

View File

@ -7,25 +7,25 @@ use phpcommon\SqlHelper;
class BoxOrder extends BaseModel {
public function getSoldNum($batchId)
public function getSoldNum($batchIdx)
{
$row = myself()->_getMarketMysql()->execQueryOne
('SELECT COUNT(*) AS sold_num FROM t_box_order WHERE batch_id=:batch_id AND ' .
('SELECT COUNT(*) AS sold_num FROM t_box_order WHERE batch_idx=:batch_idx AND ' .
' (state = 1 OR done <> 1);',
array(
':batch_id' => $batchId
':batch_idx' => $batchIdx
));
return $row && $row['sold_num'] ? $row['sold_num'] : 0;
}
public function isBuyed($buyerAddress, $batchId)
public function isBuyed($buyerAddress, $batchIdx)
{
$row = myself()->_getMarketMysql()->execQueryOne
('SELECT COUNT(*) AS buy_count FROM t_box_order WHERE batch_id=:batch_id AND ' .
('SELECT COUNT(*) AS buy_count FROM t_box_order WHERE batch_idx=:batch_idx AND ' .
' buyer_address=:buyer_address AND (state = 1 OR done <> 1);',
array(
':buyer_address' => $buyerAddress,
':batch_id' => $batchId
':batch_idx' => $batchIdx
));
return $row && $row['buy_count'] ? $row['buy_count'] > 0 : false;
}