array(), 'rows' => array() ); SqlHelper::rawQueryPage( myself()->_getMySql(''), 'SELECT * FROM t_mall WHERE status=:status', array( ':status' => Mall::PENDING_STATE ), array( 'page' => $page, 'perPage' => 10, 'filter' => array( 'data' => $queryData, 'fields' => array( ) ), //'orderBy' => $orderBy, 'handle' => function ($row) { array_push($out['rows'], array( 'goods_uuid' => $row['goods_uuid'], 'seller' => $row['seller'], 'item_id' => $row['item_id'], 'item_num' => $row['item_num'], 'currency' => $row['currency'], 'price' => $row['price'], )); } ), $out['pagination'] ); myself()->_rspData($out); } public function cancel() { $idx = getReqVal('idx', ''); $address = $this->_getAddress(); if (!$address) { $this->_rspErr(1, 'address not found'); return; } $goods = $this->getGoodsByIdx($idx); if (!$goods) { $this->_rspErr(1, 'goods not found, idx:' . $idx); return; } if ($goods['owner_address'] != $address) { $this->_rspErr(1, 'not your goods, idx:' . $idx); return; } $conn = $this->_getSelfMysql(); $r = SqlHelper::update( $conn, 't_market_store', array( 'idx' => $idx, ), array( 'status' => 1, 'modifytime' => $this->_getNowTime(), ) ); if ($r) { $items = array( array( 'item_id' => $goods['item_id'], 'item_num' => $goods['amount'], ) ); $awardService = new services\AwardService(); $propertyChgService = new services\PropertyChgService(); $this->_addItems($items, $awardService, $propertyChgService); { //埋点 $event = [ 'name' => LogService::MARKET_CANCEL_SELL_GOLD, 'val' => $goods['amount'] ]; LogService::productGold($event); } $this->_rspData( array( 'idx' => $idx, 'property_chg' => $propertyChgService->toDto(), ) ); } else { $this->_rspErr(1, 'cancel failed'); } } public function modifyPrice() { $idx = getReqVal('idx', ''); $s_price = getReqVal('s_price', ''); if (empty($s_price)) { $this->_rspErr(1, 's_price not found'); return; } if (!is_numeric($s_price)) { $this->_rspErr(1, 's_price must be number'); return; } $address = $this->_getAddress(); if (!$address) { $this->_rspErr(1, 'address not found'); return; } $goods = $this->getGoodsByIdx($idx); if (!$goods) { $this->_rspErr(1, 'goods not found, idx:' . $idx); return; } if ($goods['owner_address'] != $address) { $this->_rspErr(1, 'not your goods, idx:' . $idx); return; } $conn = $this->_getSelfMysql(); $r = SqlHelper::update( $conn, 't_market_store', array( 'idx' => $idx, ), array( 's_price' => $s_price, 'modifytime' => $this->_getNowTime(), ) ); if (!$r) { $this->_rspErr(1, 'update price failed'); return; } $this->_rspOk(); } }