Compare commits

...

2 Commits

Author SHA1 Message Date
chuan ee549734e7 up 7 months ago
chuan 1b7495f5f1 up 7 months ago
  1. 12
      app/admin/controller/Notice.php
  2. 2
      app/admin/service/AdminService.php
  3. 6
      app/home/controller/Notice.php
  4. 2
      app/home/route/app.php
  5. 2
      app/home/service/LoginService.php
  6. 28
      app/home/service/NoticeService.php
  7. 7
      app/model/PusherLogModel.php

12
app/admin/controller/Notice.php

@ -3,6 +3,7 @@
namespace app\admin\controller; namespace app\admin\controller;
use app\admin\service\NoticeService; use app\admin\service\NoticeService;
use app\model\PusherLogModel;
class Notice extends AdminBaseController class Notice extends AdminBaseController
{ {
@ -48,15 +49,26 @@ class Notice extends AdminBaseController
// 将用户ID构建为数组 // 将用户ID构建为数组
$explodeUser = explode(',', $param['users']); $explodeUser = explode(',', $param['users']);
$buildUserArr = []; $buildUserArr = [];
$insertData = [];
foreach ($explodeUser as $uid) { foreach ($explodeUser as $uid) {
if (is_numeric($uid)) { if (is_numeric($uid)) {
$buildUserArr[] = strval($uid); $buildUserArr[] = strval($uid);
} else { } else {
$buildUserArr[] = $uid; $buildUserArr[] = $uid;
} }
$insertData[] = [
'user_id' => $uid,
'title' => $param['title'],
'content' => $param['body'],
];
} }
// 发送通知 // 发送通知
$res = (new \app\utility\Pusher())->publishToUsers($buildUserArr, $param['title'], $param['body']); $res = (new \app\utility\Pusher())->publishToUsers($buildUserArr, $param['title'], $param['body']);
// 保存每个用户推送的消息内容
if (!empty($insertData)) {
PusherLogModel::insertAll($insertData);
}
return json([ return json([
'code' => 0, 'code' => 0,
'message' => 'ok', 'message' => 'ok',

2
app/admin/service/AdminService.php

@ -69,7 +69,7 @@ class AdminService extends AdminBaseService
$isRegChat = UserChatLinkModel::where(['user_id'=>$resAdmin->id, 'user_type'=>UserChatLinkModel::USER_CHAT_LINK_USER_TYPE_ADMIN])->find(); $isRegChat = UserChatLinkModel::where(['user_id'=>$resAdmin->id, 'user_type'=>UserChatLinkModel::USER_CHAT_LINK_USER_TYPE_ADMIN])->find();
if (empty($isRegChat)) { if (empty($isRegChat)) {
$chatData = [ $chatData = [
'Username' => $resAdmin->id."_".$resAdmin->user_name, //用account.id + account.user_name 拼接作为聊天账号注册的Username 'Username' => $resAdmin->user_name, //用account.id + account.user_name 拼接作为聊天账号注册的Username
'Password' => '123456', 'Password' => '123456',
'Nickname' => $resAdmin->user_name, 'Nickname' => $resAdmin->user_name,
'Avatar' => env('USER.DEFAULT_HEAD_IMG_PATH'), 'Avatar' => env('USER.DEFAULT_HEAD_IMG_PATH'),

6
app/home/controller/Notice.php

@ -11,4 +11,10 @@ class Notice extends HomeBaseController
$returnData = (new NoticeService())->generateToken($this->request->param()); $returnData = (new NoticeService())->generateToken($this->request->param());
return json($returnData); return json($returnData);
} }
public function pusherLog()
{
$returnData = (new NoticeService())->pusherLog($this->request->param(), $this->request->userId);
return json($returnData);
}
} }

2
app/home/route/app.php

@ -184,6 +184,8 @@ Route::group('/',function (){
})->middleware(\app\home\middleware\RepeatOperateMiddleware::class); })->middleware(\app\home\middleware\RepeatOperateMiddleware::class);
Route::post('notice/pusher_log', 'Notice/pusherLog');
// 新增实名认证 // 新增实名认证
Route::post('user_verify/detail', 'UserVerify/detail'); Route::post('user_verify/detail', 'UserVerify/detail');

2
app/home/service/LoginService.php

@ -538,7 +538,7 @@ class LoginService extends BaseHomeService
'ch_code' => $chCode, 'ch_code' => $chCode,
'create_time' => date('Y-m-d H:i:s'), 'create_time' => date('Y-m-d H:i:s'),
'update_time' => date('Y-m-d H:i:s'), 'update_time' => date('Y-m-d H:i:s'),
'lever_status' => 3, // 直接通过
]); ]);
$userId = $regUser->user_id; $userId = $regUser->user_id;

28
app/home/service/NoticeService.php

@ -1,6 +1,7 @@
<?php <?php
namespace app\home\service; namespace app\home\service;
use app\model\PusherLogModel;
use app\model\UserModel; use app\model\UserModel;
class NoticeService extends BaseHomeService class NoticeService extends BaseHomeService
@ -27,4 +28,31 @@ class NoticeService extends BaseHomeService
return $this->toData('500', lang('system_busy'), [$exception->getMessage(), $exception->getTrace()]); return $this->toData('500', lang('system_busy'), [$exception->getMessage(), $exception->getTrace()]);
} }
} }
public function pusherLog($param, $userId): array
{
try {
if (empty($param['page']) || !is_numeric($param['page'])) {
return $this->toData('400', lang('parameter_error'));
}
if (empty($param['limit']) || !is_numeric($param['limit'])) {
return $this->toData('400', lang('parameter_error'));
}
// 获取pusher推送记录
$list = PusherLogModel::where(['user_id'=>$userId])->order('id', 'desc')->paginate([
'list_rows' => $param['limit'],
'page' => $param['page'],
]);
return $this->toData('0', 'successful', [
'list' => $list->items(),
'total' => $list->total(),
'page' => $list->currentPage(),
'last_page' => $list->lastPage(),
'user_id' => $userId,
]);
} catch (\Exception $exception) {
return $this->toData('500', lang('system_busy'), [$exception->getMessage(), $exception->getTrace()]);
}
}
} }

7
app/model/PusherLogModel.php

@ -0,0 +1,7 @@
<?php
namespace app\model;
class PusherLogModel extends BaseModel
{
protected $name = 'pusher_log';
}
Loading…
Cancel
Save