tapi/app/controller/admin/system/DictionaryController.php
2025-08-22 10:11:22 +08:00

135 lines
3.9 KiB
PHP

<?php
namespace app\controller\admin\system;
use app\BaseController;
use app\entity\SysDictionary;
use app\entity\SysDictionaryData;
use app\service\CurdService;
use think\db\exception\DbException;
use think\response\Json;
class DictionaryController extends BaseController
{
public function lists(): Json
{
$lists = CurdService::getList($this->request, new SysDictionary(), ['sort_number' => 'desc']);
return $this->writeSuccess('success', $lists);
}
public function update()
{
$data = $this->request->put([
'dictId' => 0,
'dictCode' => null,
'dictName' => null,
'sortNumber' => 100,
'comments' => ''
]);
SysDictionary::findOrFail($data['dictId'])->save([
'dict_code' => $data['dictCode'],
'dict_name' => $data['dictName'],
'sort_number' => $data['sortNumber'],
'comments' => $data['comments']
]);
return $this->writeSuccess('修改成功');
}
public function remove(SysDictionary $model)
{
$model->delete();
return $this->writeSuccess('删除成功');
}
public function add()
{
$data = $this->request->post([
'dictCode' => null,
'dictName' => null,
'sortNumber' => 100,
'comments' => ''
]);
$sysDictionary = new SysDictionary();
$sysDictionary->save([
'dict_code' => $data['dictCode'],
'dict_name' => $data['dictName'],
'sort_number' => $data['sortNumber'],
'comments' => $data['comments']
]);
return $this->writeSuccess('添加成功');
}
public function dataAdd()
{
$data = $this->request->post([
'dictId' => null,
'dictDataCode' => null,
'dictDataName' => null,
'sortNumber' => 100,
'comments' => ''
]);
$sysDictionary = new SysDictionaryData();
$sysDictionary->save([
'dict_id' => $data['dictId'],
'dict_data_code' => $data['dictDataCode'],
'dict_data_name' => $data['dictDataName'],
'sort_number' => $data['sortNumber'],
'comments' => $data['comments']
]);
return $this->writeSuccess('添加成功');
}
public function dataUpdate()
{
$data = $this->request->put([
'dictDataId' => 0,
'dictId' => null,
'dictDataCode' => null,
'dictDataName' => null,
'sortNumber' => 100,
'comments' => ''
]);
SysDictionaryData::findOrFail($data['dictDataId'])->save([
'dict_id' => $data['dictId'],
'dict_data_code' => $data['dictDataCode'],
'dict_data_name' => $data['dictDataName'],
'sort_number' => $data['sortNumber'],
'comments' => $data['comments']
]);
return $this->writeSuccess('修改成功');
}
public function dataBatchRemove()
{
$data = $this->request->delete();
SysDictionaryData::destroy($data);
return $this->writeSuccess('删除成功');
}
public function dataLists(): Json
{
$dictCode = $this->request->param('dictCode/s', '');
$data = SysDictionary::dictCodeData($dictCode);
return $this->writeSuccess('success', $data);
}
/**
* 查询字典集列表
* @return Json
* @throws DbException
*/
public function dataPage(): Json
{
$paginate = CurdService::getPaginate($this->request, SysDictionaryData::withSearch(['dictId', 'dictDataName', 'dictDataCode'], [
'dictId' => $this->request->get('dictId/d', 0),
'dictDataName' => $this->request->get('dictDataName/s', ''),
'dictDataCode' => $this->request->get('dictDataCode/s', ''),
]));
return $this->writeSuccess('success', $paginate);
}
}