sifangpay/app/Http/Controllers/Admin/SmsController.php

115 lines
3.0 KiB
PHP

<?php
namespace App\Http\Controllers\Admin;
use App\Models\Sms;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
class SmsController extends BaseDefaultController
{
public function setPagesInfo()
{
$this->pages = [
'name' => '短信'
];
}
public function indexData(){
return ['type'=>config('adconfig.sms_type')];
}
public function shareData($show='')
{
return $this->indexData();
}
public function checkRule( $id='')
{
if (!$id) {
return [
'name' => 'required',
'tpl_id' => 'required|unique:sms,tpl_id',
'ename' => 'required|unique:sms,ename',
'content' =>'required',
'type' =>'required',
];
}
return [
'name' => 'required',
'tpl_id' =>'required|unique:sms,tpl_id,' . $id,
'ename' =>'required|unique:sms,ename,' . $id,
'content' =>'required',
'type' =>'required',
];
}
public function setErrorMsg(){
$messages = [
];
return $messages;
}
public function setModel()
{
return new Sms();
}
public function saveAfter($request, $model, $id = '')
{
//写入文件
$sms=Sms::pluck('tpl_id','ename')->toArray();
$file=to_linux_path(config_path()).'/smscode.php';
$content="<?php\n return ".var_export($sms,true)."\n?>";
file_put_contents($file,$content);
}
public function apiJson(Request $request)
{
$offset = $request->input('page', 1);
$pagesize = $request->input('limit', 1);
$offset = ($offset - 1) * $pagesize;
$type = $request->input('type', '1');
$order_id = $request->input('sort', 'id');
$order_type = $request->input('order', 'desc');
$debug = $request->input('debug', 0);
$model = $this->setModel();
$role=$request->input('role','');
$search_arr=[
'type'=>[
'type'=>'=',
'value'=>$type
]
];
$model=$this->searchKey($model,$search_arr,2);
$total = $model->count();
$result = $model->skip($offset)->orderBy($order_id, $order_type)->orderBy('id', 'desc')->take($pagesize)->get();;
$narr = array();
foreach ($result as $k => $v) {
$v['edit_url']=action($this->route['controller_name'] . '@edit', ['id' => $v->id]);
$v['edit_post_url']=action($this->route['controller_name'] . '@update', ['id' => $v->id]);
$v['type']=config('adconfig.sms_type')[$v['type']];
$narr[] = $v;
}
$json = [
"status"=>1,
'code'=>$total>0?0:1,
'msg'=>$total>0?'请求数据成功':'暂无数据',
'count' => $total,
'data' => $narr
];
if ($debug) {
return $this->jsonDebug($json);
}
return response()->json($json);
}
}