添加推送日志表
parent
cf052f0047
commit
12da37b1b4
|
|
@ -4,7 +4,6 @@ namespace App\Admin\Controllers;
|
||||||
|
|
||||||
use App\Admin\Repositories\Message;
|
use App\Admin\Repositories\Message;
|
||||||
use App\Models\Message as MessageModel;
|
use App\Models\Message as MessageModel;
|
||||||
use App\Services\Push\MallUnipushService;
|
|
||||||
use Dcat\Admin\Admin;
|
use Dcat\Admin\Admin;
|
||||||
use Dcat\Admin\Form;
|
use Dcat\Admin\Form;
|
||||||
use Dcat\Admin\Grid;
|
use Dcat\Admin\Grid;
|
||||||
|
|
@ -104,9 +103,11 @@ class MessageController extends AdminController
|
||||||
}
|
}
|
||||||
$form->saved(function (Form $form, $result) {
|
$form->saved(function (Form $form, $result) {
|
||||||
// 判断是否是新增操作
|
// 判断是否是新增操作
|
||||||
if ($form->isCreating() && $form->is_push) {
|
if ($form->isCreating()) {
|
||||||
$pushService = new MallUnipushService();
|
$message = MessageModel::findOrFail($result);
|
||||||
$pushService->pushAllMessage(MessageModel::findOrFail($result));
|
if ($message->needPush()) {
|
||||||
|
$message->pushMessage();
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,7 @@
|
||||||
namespace App\Models;
|
namespace App\Models;
|
||||||
|
|
||||||
use App\Casts\JsonArray;
|
use App\Casts\JsonArray;
|
||||||
|
use App\Helpers\Order as OrderHelper;
|
||||||
use Dcat\Admin\Traits\HasDateTimeFormatter;
|
use Dcat\Admin\Traits\HasDateTimeFormatter;
|
||||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||||
use Illuminate\Database\Eloquent\Model;
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
@ -45,7 +46,7 @@ class Message extends Model
|
||||||
|
|
||||||
public static function createOrderMessage(Order $order)
|
public static function createOrderMessage(Order $order)
|
||||||
{
|
{
|
||||||
self::create([
|
$message = self::create([
|
||||||
'type' => 1,
|
'type' => 1,
|
||||||
'title' => '订单编号:'.$order->sn,
|
'title' => '订单编号:'.$order->sn,
|
||||||
'user_id' => $order->user_id,
|
'user_id' => $order->user_id,
|
||||||
|
|
@ -57,6 +58,27 @@ class Message extends Model
|
||||||
],
|
],
|
||||||
'jump_type'=> self::JUMP_MIINE,
|
'jump_type'=> self::JUMP_MIINE,
|
||||||
'jump_link'=> '/pages/order_details/index?id='.$order->id,
|
'jump_link'=> '/pages/order_details/index?id='.$order->id,
|
||||||
|
'is_push' => 1,
|
||||||
|
]);
|
||||||
|
|
||||||
|
if ($message && $message->needPush()) {
|
||||||
|
$message->pushMessage();
|
||||||
|
}
|
||||||
|
|
||||||
|
return $message;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function needPush()
|
||||||
|
{
|
||||||
|
return $this->is_push;
|
||||||
|
}
|
||||||
|
|
||||||
|
public function pushMessage()
|
||||||
|
{
|
||||||
|
//填入推送内容
|
||||||
|
PushMessageTask::create([
|
||||||
|
'sn' => OrderHelper::serialNumber(),
|
||||||
|
'message_id' => $this->id,
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,26 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
namespace App\Models;
|
||||||
|
|
||||||
|
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||||
|
use Illuminate\Database\Eloquent\Model;
|
||||||
|
|
||||||
|
class PushMessageTask extends Model
|
||||||
|
{
|
||||||
|
use HasFactory;
|
||||||
|
|
||||||
|
|
||||||
|
protected $casts = [
|
||||||
|
'is_pushed'=>'bool',
|
||||||
|
];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @var array
|
||||||
|
*/
|
||||||
|
protected $fillable = [
|
||||||
|
'sn',
|
||||||
|
'message_id',
|
||||||
|
'is_pushed',
|
||||||
|
'status',
|
||||||
|
];
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,35 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
use Illuminate\Database\Migrations\Migration;
|
||||||
|
use Illuminate\Database\Schema\Blueprint;
|
||||||
|
use Illuminate\Support\Facades\Schema;
|
||||||
|
|
||||||
|
class CreatePushMessageTasksTable extends Migration
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* Run the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function up()
|
||||||
|
{
|
||||||
|
Schema::create('push_message_tasks', function (Blueprint $table) {
|
||||||
|
$table->id();
|
||||||
|
$table->string('sn')->comment('消息流水号');
|
||||||
|
$table->unsignedBigInteger('message_id')->comment('消息ID');
|
||||||
|
$table->unsignedTinyInteger('is_pushed')->default(0)->comment('是否已经推送');
|
||||||
|
$table->unsignedBigInteger('status')->default(0)->comment('0待处理,1成功,2失败');
|
||||||
|
$table->timestamps();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Reverse the migrations.
|
||||||
|
*
|
||||||
|
* @return void
|
||||||
|
*/
|
||||||
|
public function down()
|
||||||
|
{
|
||||||
|
Schema::dropIfExists('push_message_tasks');
|
||||||
|
}
|
||||||
|
}
|
||||||
Loading…
Reference in New Issue