123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- <?php
- namespace catchAdmin\permissions\controller;
- use catcher\base\CatchRequest as Request;
- use catcher\CatchResponse;
- use catcher\base\CatchController;
- use catchAdmin\permissions\model\SysConfig as Model;
- class SysConfig extends CatchController
- {
- protected $model;
-
- public function __construct(Model $model)
- {
- $this->model = $model;
- }
-
-
- public function index(Request $request) : \think\Response
- {
- return CatchResponse::paginate($this->model->getList());
- }
-
-
- public function save(Request $request): \think\response
- {
- return CatchResponse::success($this->model->storeBy($request->post()));
- }
-
-
- public function read($id) : \think\Response
- {
- return CatchResponse::success($this->model->findBy($id));
- }
-
-
- public function update(Request $request, $id) : \think\Response
- {
- return CatchResponse::success($this->model->updateBy($id, $request->post()));
- }
-
-
- public function delete($id) : \think\Response
- {
- return CatchResponse::success($this->model->deleteBy($id));
- }
-
- public function saveAll(Request $request) : \think\Response
- {
- $post = $request->post();
-
- $this->model->startTrans();
- foreach ($post as $type => $type_data) {
- if ($type == 'creator_id') {
- continue;
- }
-
- foreach($type_data as $field => $fieldValue){
- $save_data = [
- 'type' => $type,
- 'field' => $field,
- 'fieldValue' => $fieldValue,
- ];
- $where = [
- 'type' => $type,
- 'field' => $field,
-
- ];
-
- $id = $this->model->where($where)->value('id');
- if ($id) {
-
- $res = $this->model->updateBy($id, $save_data);
- }else{
-
-
- $save_data['creator_id'] = $post['creator_id'];
- $res = $this->model->createBy($save_data);
- }
- if (!$res) {
- $this->model->rollback();
- return CatchResponse::fail('保存失败');
- }
- }
- }
- $this->model->commit();
- return CatchResponse::success([],'保存成功');
- }
-
- public function getListGroupByType() : \think\Response
- {
- return CatchResponse::success($this->model->getListGroupByType());
- }
-
- public function getConfigValueBy(Request $request): \think\Response
- {
- return CatchResponse::success($this->model->getConfigValueBy($request->post('field'),$request->post('type')));
- }
- }
|