getDI()->get('auth'); $authUser = $auth->getAuthInfo(); $order = new OrderModel(); $order->subject = '测试 - 支付测试0.01元'; $order->amount = 0.01; $order->owner_id = $authUser['id']; $order->item_type = OrderModel::ITEM_TEST; $order->create(); return $order; } /** * 创建微信订单 * * @return OrderModel */ public function createWxpayOrder() { /** * @var AdminAuth $auth */ $auth = $this->getDI()->get('auth'); $authUser = $auth->getAuthInfo(); $config = $this->getConfig(); $order = new OrderModel(); /** * 微信沙箱环境金额不能自定义,只能是固定测试用例值(SB的不行) */ if ($config->get('env') == ENV_DEV) { $order->subject = '测试 - 支付测试3.01元'; $order->amount = 3.01; } else { $order->subject = '测试 - 支付测试0.01元'; $order->amount = 0.01; } $order->owner_id = $authUser['id']; $order->item_type = OrderModel::ITEM_TEST; $order->create(); return $order; } /** * 创建交易 * * @param OrderModel $order * @return TradeModel $trade */ public function createTrade(OrderModel $order) { $trade = new TradeModel(); $trade->owner_id = $order->owner_id; $trade->order_id = $order->id; $trade->subject = $order->subject; $trade->amount = $order->amount; $trade->channel = $this->channel; $trade->create(); return $trade; } /** * 交易状态 * * @param string $tradeNo * @return string */ abstract public function status($tradeNo); /** * 扫码下单 * * @param TradeModel $trade * @return string|bool */ abstract public function scan(TradeModel $trade); }