withSearch(['group'], [ 'group'=> $this->request->get('group/s','') ]); $data = CurdService::getList($this->request, $model)->toArray(); // $data = list_build_tree($list); return $this->writeSuccess('success', $data); } public function data(string $name) { $config = SysConfig::where('name', $name)->findOrEmpty(); return $this->writeSuccess('success', $config->toArray()); } public function existence() { $id = $this->request->get('id/d',0); $field = $this->request->get('field/s', ''); $value = $this->request->get('value/s', ''); try { $model = SysConfig::field('id'); if($id > 0) { $model = $model->where('id', '<>', $id); } $model->where([$field => $value])->findOrFail(); } catch (ModelNotFoundException|DataNotFoundException) { return $this->writeError("配置不存在"); } return $this->writeSuccess('配置已存在'); } public function add() { $data = $this->request->post([ 'pid' => 0, 'title' => '', 'value' => '', 'tips' => '', 'type' => '', 'option' => '', 'name' => '', 'comments' => '', 'group'=> '' ]); $data['item_bind'] = $this->request->post('itemBind','{}'); $data['item_style'] = $this->request->post('itemStyle',''); $data['item_class'] = $this->request->post('itemClass',''); $user = new SysConfig(); $user->save($data); return $this->writeSuccess('添加成功'); } public function update() { $data = $this->request->put([ 'id' => 0, 'pid' => 0, 'title' => '', 'value' => '', 'type' => '', 'tips' => '', 'option' => '', 'name' => '', 'comments' => '', 'group'=> '', ]); $data['item_bind'] = $this->request->post('itemBind'); $data['item_style'] = $this->request->post('itemStyle'); $data['item_class'] = $this->request->post('itemClass'); $user = SysConfig::findOrFail($data['id']); $user->save($data); return $this->writeSuccess('修改成功'); } public function updateStatus() { $id = $this->request->put('id'); $status = $this->request->put('status'); $user = SysConfig::findOrFail($id); $user->save(['status'=>$status]); return $this->writeSuccess('修改成功'); } public function batchDelete() { $data = $this->request->delete(); SysConfig::destroy($data); return $this->writeSuccess('删除成功'); } public function sync() { $lists = SysConfig::where(['status'=>1])->order(['name'=>'asc']) ->select(); $version = md5($lists->toJson()); Cache::set('sysConfigInfo', $lists->column('value','name')); Cache::set('sysConfigVersion', $version);// 最后的配置版本号 return $this->writeSuccess('同步成功'); } public function info() { $info = Cache::get('sysConfigInfo'); $version = Cache::get('sysConfigVersion'); return $this->writeSuccess('success', ['info'=>$info, 'version'=>$version]); } }