You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

105 lines
2.8 KiB
PHP

<?php
namespace App\Http\Controllers\API\Admin;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\DB;
class QuestionItemController extends Controller
{
public function item(Request $request)
{
$items = DB::table('items')
->select(['item_id', 'name', 'pinyin', 'sex'])
->get();
return \Yz::Return(true, '操作完成', [
'list' => $items
]);
}
public function create(Request $request)
{
$name = $request->post('name');
$desc = $request->post('desc');
$jichu = $request->post('jichu');
$tuijian = $request->post('tuijian');
$gaoduan = $request->post('gaoduan');
if (!$name) {
return \Yz::echoError('请填写项目名称');
}
if (mb_strlen($name) > 20) {
return \Yz::echoError('项目名称过长');
}
if (mb_strlen($desc) > 200) {
return \Yz::echoError('项目说明过长');
}
DB::table('question_items')->insert([
'name' => $name,
'desc' => $desc ?? '',
'jichu' => $jichu ?? '[]',
'tuijian' => $tuijian ?? '[]',
'gaoduan' => $gaoduan ?? '[]',
'created_at' => date('Y-m-d H:i:s'),
'updated_at' => date('Y-m-d H:i:s'),
]);
return \Yz::Return(true, '操作完成');
}
public function update(Request $request)
{
$id = $request->post('id');
$name = $request->post('name');
$desc = $request->post('desc');
$jichu = $request->post('jichu');
$tuijian = $request->post('tuijian');
$gaoduan = $request->post('gaoduan');
if (!$name) {
return \Yz::echoError('请填写项目名称');
}
if (mb_strlen($name) > 20) {
return \Yz::echoError('项目名称过长');
}
if (mb_strlen($desc) > 200) {
return \Yz::echoError('项目说明过长');
}
DB::table('question_items')->where('id', $id)->update([
'name' => $name,
'desc' => $desc ?? '',
'jichu' => $jichu ?? '[]',
'tuijian' => $tuijian ?? '[]',
'gaoduan' => $gaoduan ?? '[]',
'updated_at' => date('Y-m-d H:i:s'),
]);
return \Yz::Return(true, '操作完成');
}
public function delete(Request $request)
{
$id = $request->post('id');
DB::table('question_items')->where('id', $id)->delete();
return \Yz::Return(true, '操作完成');
}
public function list(Request $request)
{
$search = $request->post('search');
$db = DB::table('question_items');
if (!!$search) {
$db->where('name', $search);
}
$list = $db->orderBy('id', 'desc')->paginate(20);
return \Yz::Return(true, '操作完成', [
'list' => $list
]);
}
public function select(Request $request)
{
$list = DB::table('question_items')->select(['id', 'name'])->get();
return \Yz::Return(true, '操作完成', [
'list' => $list
]);
}
}