145 lines
3.6 KiB
PHP
145 lines
3.6 KiB
PHP
<?php
|
|
|
|
|
|
namespace app\admin\controller\content;
|
|
|
|
|
|
use app\admin\logic\content\HelpCategoryLogic;
|
|
use app\admin\logic\content\HelpLogic;
|
|
use app\admin\validate\content\HelpValidate;
|
|
use app\common\basics\AdminBase;
|
|
use app\common\server\JsonServer;
|
|
use app\common\model\Demand As thisModel;
|
|
use think\facade\Validate;
|
|
|
|
class Demand extends AdminBase
|
|
{
|
|
/**
|
|
* @NOTES: 列表
|
|
* @author: 张无忌
|
|
*/
|
|
public function lists()
|
|
{
|
|
if ($this->request->isAjax()) {
|
|
try {
|
|
$page = input('page/d', 1);
|
|
$limit = input('limit/d', 10);
|
|
|
|
$keyword = input('keyword/s');
|
|
|
|
$page = $page ?: 1;
|
|
$limit = $limit ?: 10;
|
|
$where = [];
|
|
|
|
$order = [
|
|
'id' => 'desc'
|
|
];
|
|
|
|
if (!empty($keyword)) {
|
|
$where[] = ['name', 'like', '%'.trim($keyword).'%'];
|
|
}
|
|
|
|
$count = thisModel::where($where)->count();
|
|
|
|
$list = thisModel::withCount(['reports'])->field(['id', 'name', 'create_time'])
|
|
->where($where)
|
|
->order($order)
|
|
->page($page,$limit)
|
|
->select()
|
|
->toArray();
|
|
|
|
$data = [
|
|
'lists' => $list,
|
|
'page_no' => $page,
|
|
'page_size' => $limit,
|
|
'count' => $count,
|
|
];
|
|
return JsonServer::success('获取成功', $data);
|
|
} catch (\Exception $e) {
|
|
return JsonServer::error('获取失败');
|
|
}
|
|
}
|
|
|
|
return view();
|
|
}
|
|
|
|
/**
|
|
* @NOTES: 添加
|
|
* @author: 张无忌
|
|
*/
|
|
public function add()
|
|
{
|
|
if ($this->request->isAjax()) {
|
|
$input = input('post.');
|
|
|
|
$rule = [
|
|
'name|需求名称' => 'require|min:2',
|
|
'content|介绍' => 'require',
|
|
];
|
|
|
|
$validate = Validate::rule($rule);
|
|
if (!$validate->check($input)) {
|
|
return JsonServer::error($validate->getError());
|
|
}
|
|
|
|
thisModel::create([
|
|
'name' => $input['name'],
|
|
'content' => $input['content'],
|
|
'create_time' => time(),
|
|
]);
|
|
|
|
return JsonServer::success('添加成功');
|
|
}
|
|
|
|
|
|
return view();
|
|
}
|
|
|
|
/**
|
|
* @NOTES: 编辑
|
|
* @author: 张无忌
|
|
*/
|
|
public function edit()
|
|
{
|
|
$id = input('id');
|
|
$item = thisModel::where('id', $id)->find();
|
|
if ($this->request->isAjax()) {
|
|
$input = input('post.');
|
|
|
|
$rule = [
|
|
'name|需求名称' => 'require|min:2',
|
|
'content|介绍' => 'require',
|
|
];
|
|
|
|
$validate = Validate::rule($rule);
|
|
if (!$validate->check($input)) {
|
|
return JsonServer::error($validate->getError());
|
|
}
|
|
|
|
$item->save([
|
|
'name' => $input['name'],
|
|
'content' => $input['content'],
|
|
]);
|
|
|
|
return JsonServer::success('编辑成功');
|
|
}
|
|
|
|
return view('', [
|
|
'detail' => $item,
|
|
]);
|
|
}
|
|
|
|
/**
|
|
* @NOTES: 删除
|
|
* @author: 张无忌
|
|
*/
|
|
public function del()
|
|
{
|
|
if ($this->request->isAjax()) {
|
|
thisModel::where('id', input('id/d'))->delete();
|
|
return JsonServer::success('删除成功');
|
|
}
|
|
|
|
return JsonServer::error('异常');
|
|
}
|
|
} |