public function NotifyProcess($data, &$msg) { //U::W([__METHOD__, $data, $msg]); $notfiyOutput = array(); if (!array_key_exists("transaction_id", $data)) { $msg = "输入参数不正确"; return false; } if (!$this->Queryorder($data["transaction_id"])) { $msg = "订单查询失败"; return false; } $order = MOrder::findOne($data["out_trade_no"]); $status_old = $order->status; $pay_kind_old = $order->pay_kind; $order->status = MOrder::STATUS_PAID; $order->partner = $data['mch_id']; $order->time_end = $data['time_end']; $order->total_fee = $data['total_fee']; $order->transaction_id = $data['transaction_id']; $order->appid_recv = $data['appid']; $order->openid_recv = $data['openid']; $order->issubscribe_recv = $data['is_subscribe']; $order->pay_kind = MOrder::PAY_KIND_WECHAT; if ($order->save(false)) { $orderTrail = new MOrderTrail(); $orderTrail->oid = $order->oid; $orderTrail->status_old = $status_old; $orderTrail->status_new = $order->status; $orderTrail->pay_kind_old = $pay_kind_old; $orderTrail->pay_kind_new = $order->pay_kind; $orderTrail->save(false); } return true; }
public function actionHandlecallpayout() { $this->layout = false; $oid = $_GET['oid']; $order = MOrder::findOne(['oid' => $oid]); $status_old = $order->status; $pay_kind_old = $order->pay_kind; $order->status = MOrder::STATUS_SUBMITTED; $order->pay_kind = MOrder::PAY_KIND_WECHAT; if ($order->save(false)) { $orderTrail = new MOrderTrail(); $orderTrail->oid = $oid; $orderTrail->status_old = $status_old; $orderTrail->status_new = $order->status; $orderTrail->pay_kind_old = $pay_kind_old; $orderTrail->pay_kind_new = $order->pay_kind; $orderTrail->staff_id = empty($_GET['staff_id']) ? 0 : $_GET['staff_id']; $orderTrail->save(false); } return json_encode(['code' => 0]); }