when($keywords != '', function ($query) use ($keywords) { $query->where('field_name', 'like', '%' . $keywords . '%'); }) ->orderBy('field_addtimes', 'DESC') ->forPage($page, $limit) ->get() ->toArray(); $count = SysField::when($keywords != '', function ($query) use ($keywords) { $query->where('field_name', 'like', '%' . $keywords . '%'); })->count(); return json_success('', compact('list', 'page', 'limit', 'count')); } /** * @Desc 字段详情 * @Author Gorden * @Date 2024/2/22 14:55 * * @param $id * @return \support\Response */ public static function fieldInfo($id) { $field = SysField::where('field_id', $id)->first(); if (!$field) { return json_fail('字段不存在'); } return json_success('', $field->toArray()); } /** * @Desc 新建字段 * @Author Gorden * @Date 2024/2/22 14:31 * * @param $params * @return \support\Response */ public static function addField($params) { try { $data = [ 'field_status' => $params['field_status'], 'field_category' => $params['field_category'], 'field_name' => $params['field_name'], 'field_table' => $params['field_table'], 'field_column_key' => $params['field_column_key'], 'field_column_datatype' => $params['field_column_datatype'], 'field_column_default' => $params['field_column_default'], 'field_form_key' => $params['field_form_key'], 'field_form_type' => $params['field_form_type'], 'field_form_default' => $params['field_form_default'], 'field_refer_json' => !!empty($params['field_refer_json']) ? $params['field_refer_json'] : '{}', 'field_remark' => $params['field_remark'], 'field_extend_json' => !empty($params['field_extend_json']) ? $params['field_extend_json'] : '{}', 'field_addtimes' => time() ]; SysField::insert($data); } catch (\Exception $e) { return json_fail('创建字段失败'); } return json_success('创建字段成功'); } /** * @Desc 修改字段 * @Author Gorden * @Date 2024/2/22 14:40 * * @param $id * @param $params * @return \support\Response */ public static function updateField($id, $params) { try { $data = [ 'field_category' => $params['field_category'], 'field_name' => $params['field_name'], 'field_table' => $params['field_table'], 'field_column_key' => $params['field_column_key'], 'field_column_datatype' => $params['field_column_datatype'], 'field_column_default' => $params['field_column_default'], 'field_form_key' => $params['field_form_key'], 'field_form_type' => $params['field_form_type'], 'field_form_default' => $params['field_form_default'], 'field_refer_json' => !empty($params['field_refer_json']) ? $params['field_refer_json'] : '{}', 'field_remark' => $params['field_remark'], 'field_extend_json' => !empty($params['field_extend_json']) ? $params['field_extend_json'] : '{}' ]; SysField::where('field_id', $id)->update($data); } catch (\Exception $e) { return json_fail('修改字段失败'); } return json_success('修改字段成功'); } /** * @Desc 修改字段状态 * @Author Gorden * @Date 2024/2/22 15:06 * * @param $id * @param $params * @return \support\Response */ public static function updateStatus($id, $params) { try { SysField::where('field_id', $id)->update(['field_status' => $params['field_status']]); } catch (\Exception $e) { return json_fail('字段状态修改失败'); } return json_success('字段状态修改成功'); } /** * @Desc 删除字段 * @Author Gorden * @Date 2024/2/22 15:08 * * @param $id * @return \support\Response */ public static function delField($id) { try { SysField::where('field_id', $id)->delete(); } catch (\Exception $e) { return json_fail('字段删除失败'); } return json_success('字段删除成功'); } }