Browse Source

当面付支付通知

master
weigang 6 years ago
parent
commit
a52e052c83
  1. 23
      app/Controller/NotifyController.php
  2. 1
      app/Service/OrderService.php

23
app/Controller/NotifyController.php

@ -207,6 +207,7 @@ class NotifyController extends BaseController
public function wxminiOffline()
{
var_dump('Inside');
$config = config('wxpay');
$app = Factory::payment($config);
$app['guzzle_handler'] = CoroutineHandler::class;
@ -223,6 +224,7 @@ class NotifyController extends BaseController
// 通知回调,进行业务处理
$response = $app->handlePaidNotify(function ($message, $fail) use ($app) {
var_dump('$message', $message);
Db::beginTransaction();
try {
// 支付失败或者通知失败
@ -266,12 +268,23 @@ class NotifyController extends BaseController
$orderMain->pay_time = date('Y-m-d H:i:s', $currentTime);
$orderMain->save();
var_dump('$orderMain', $orderMain->toArray());
$upOrder = Order::query()
->where(['order_main_id' => $orderMain->id])
->update([
'state' => OrderMain::ORDER_STATE_UNTAKE,
'dm_state' => OrderMain::ORDER_STATE_UNTAKE,
'pay_time' => date('Y-m-d H:i:s', $currentTime)
]);
var_dump('$upOrder', $upOrder);
// 查询子订单,当面付目前实际上只有一个子订单
$orders = Order::query()->select(['id', 'money', 'user_id', 'store_id', 'pay_time'])
->where(['order_main_id' => $orderMain->id])
->get()
->toArray();
var_dump('$orders', $orders);
// 商户钱包、流水资金、奖励、发布模板消息处理
foreach ($orders as $key => $orderItem) {
@ -295,7 +308,7 @@ class NotifyController extends BaseController
'note' => '当面付订单收入',
'category' => 2,
];
StoreAccount::query()->insert(array($recordBase, $record));
StoreAccount::query()->insert(array_merge($recordBase, $record));
// 平台新用户奖励给商户
$isStageNewUser = $this->userService->isStageNewUser($orderItem['user_id']);
@ -331,20 +344,24 @@ class NotifyController extends BaseController
$store->save();
// 流水
StoreAccount::query()->insert(array($recordBase, $record));
StoreAccount::query()->insert(array_merge($recordBase, $record));
// 发布公众号消息
$openid = Users::query()->where(['id' => $store['user_id']])->value('openid');
$res = $this->miniprogramService->sendTemMsgForAward($record['money'], $record['note'], $openid, $recordBase['time']);
var_dump('$res-award', $res);
}
}
// 喇叭通知,兼容旧音响,MQTT+IOT
$res = $this->mqttSpeakerService->speakToStore($orderMain->id);
var_dump('$res-mqttSpeakerService', $res);
$res = $this->deviceService->pubMsgToStoreByOrderMainId($orderMain->id);
var_dump('$res-deviceService', $res);
// 公众号模板消息
$res = $this->miniprogramService->sendTemMsgForOfflineOrder($orderMain->id);
var_dump('$res-miniprogramService', $res);
Db::commit();
return true;

1
app/Service/OrderService.php

@ -418,6 +418,7 @@ class OrderService implements OrderServiceInterface
'store_id' => $data['store_id'],
'order_main_id' => $orderMainId,
'state' => OrderMain::ORDER_STATE_UNPAY,
'dm_state' => OrderMain::ORDER_STATE_UNPAY,
'tel' => $orderMain->tel,
'name' => $orderMain->name,
'address' => $orderMain->address,

Loading…
Cancel
Save