作者 liyuhang

gx

... ... @@ -2,10 +2,16 @@
namespace App\Http\Controllers\Bside;
use App\Enums\Common\Code;
use App\Http\Logic\Bside\MailLogic;
use App\Models\Mail as MailModel;
use App\Models\MailUser as MailUserModel;
use Illuminate\Http\Request;
class MailController extends BaseController
{
const STATUS_ZERO = O; //状态为未读状态
const STATUS_ONE = 1; //状态为已读状态
/**
* @name :当前用户站内信列表
* @return void
... ... @@ -14,5 +20,35 @@ class MailController extends BaseController
*/
public function lists(){
$mailModel = new MailModel();
//获取当前用户下的所有站内信
$this->map['user_id'] = ['like','%'.$this->uid.'%'];
$this->map['status'] = $this::STATUS_ZERO;
$lists = $mailModel->lists($this->map,$this->page,$this->row);
foreach ($lists as $k => $v){
//获取用户已读还是未读
$info = MailUserModel::read(['mail_id'=>$v['id'],'user_id'=>$this->uid]);
if($info !== false){
$v['read_status'] = $this::STATUS_ONE;//
}
$lists[$k] = $v;
}
$this->response('success',Code::SUCCESS,$lists);
}
/**
* @name :获取站内信详情
* @return void
* @author :liyuhang
* @method
*/
public function info(Request $request,MailLogic $mailLogic){
$request->validate([
'id'=>['required']
],[
'id.required' => 'ID不能为空'
]);
$info = $mailLogic->mail_info();
$this->response('success',Code::SUCCESS,$info);
}
}
... ...
... ... @@ -26,6 +26,7 @@ class CategoryController extends BaseController
}
$sort = ['id' => 'desc'];
$data = $logic->getList($map, $sort, ['id', 'pid', 'title', 'image', 'keywords', 'describe', 'status','created_at'],0);
return $this->success(Arr::listToTree($data));
}
... ... @@ -53,7 +54,7 @@ class CategoryController extends BaseController
'ids.required' => 'ID不能为空'
]);
$data = $logic->delete($this->param['ids']);
$data = $logic->deletes($this->param['ids']);
return $this->success($data);
}
}
... ...
<?php
namespace App\Http\Logic\Bside;
use App\Enums\Common\Code;
use App\Models\Mail as MailModel;
use App\Models\MailUser as MailUserModel;
class MailLogic extends BaseLogic
{
public function __construct()
{
parent::__construct();
$this->model = new MailModel();
$this->param = $this->requestAll;
}
/**
* @name :详情
* @author :liyuhang
*/
public function mail_info(){
$info = $this->model->read($this->param);
if($info === false){
$this->fail('当前数据不存在',Code::USER_ERROR);
}
//生成一条阅读记录
$mailUserModel = new MailUserModel();
$data = [
'user_id'=>$info['id'],
'mail_id'=>$this->user['id'],
];
$rs = $mailUserModel->add($data);
if($rs === false){
$this->fail('error',Code::USER_ERROR);
}
$this->success($info);
}
}
... ...
... ... @@ -35,7 +35,7 @@ class CategoryLogic extends BaseLogic
return parent::save($param);
}
public function delete($ids){
public function deletes($ids){
$ids= array_filter(Arr::splitFilterToArray($ids), 'intval');
foreach ($ids as $id){
$info = $this->getCacheInfo($id);
... ...
... ... @@ -55,6 +55,11 @@ class UserLogic extends BaseLogic
if($info !== false){
$this->fail('当前编辑的手机号码已存在',Code::USER_PARAMS_ERROE);
}
//上传头像
if(isset($this->param['image'])){
$data = $this->upload();
$this->param['image'] = $data['path'];
}
$this->param['operator_id'] = $this->user['id'];
$rs = $this->model->edits($this->param);
if($rs === false){
... ...
<?php
namespace App\Models;
class MailUser extends Base
{
protected $table = 'gl_mail_user';
//自动维护create_at创建时间 updated_at修改时间
public $timestamps = true;
}
... ...