diff --git a/webapp/controller/MallController.class.php b/webapp/controller/MallController.class.php index fca2b7b0..2ac59a9e 100644 --- a/webapp/controller/MallController.class.php +++ b/webapp/controller/MallController.class.php @@ -9,6 +9,8 @@ require_once('models/OrderId.php'); require_once('services/BlockChainService.php'); require_once('services/LogService.php'); +require_once('services/AwardService.php'); +require_once('services/PropertyChgService.php'); use phpcommon\SqlHelper; @@ -18,6 +20,8 @@ use models\OrderId; use services\LogService; use services\BlockChainService; +use services\AwardService; +use services\PropertyChgService; class MallController extends BaseAuthedController { @@ -187,9 +191,40 @@ class MallController extends BaseAuthedController { myself()->_rspErr(1, 'cant cancel'); return; } - Mall::cancel($goodsDto['goods_uuid']); - - myself()->_rspOk(); + $awardService = new AwardService(); + $propertyChgService = new PropertyChgService(); + switch ($goodsDb['item_id']) { + case V_ITEM_GOLD: + { + $items = array( + array( + 'item_id' => $goods['item_id'], + 'item_num' => $goods['item_num'], + ) + ); + Mall::cancel($goodsDto['goods_uuid']); + myself()->_addItems($items, $awardService, $propertyChgService); + { + //埋点 + $event = [ + 'name' => LogService::MARKET_CANCEL_SELL_GOLD, + 'val' => $goods['amount'] + ]; + LogService::productGold($event); + } + } + break; + default: + { + myself()->_rspErr(1, 'cant cancel'); + return; + } + break; + } + myself()->_rspData(array( + 'award' => $awardService->toDto(), + 'property_chg' => $propertyChgService->toDto(), + )); } public function modifyPrice()