123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162 |
- <?php
- namespace app\admin\service\sys_manage;
- use app\model\SysField;
- class FieldService
- {
- /**
- * @Desc 字段列表
- * @Author Gorden
- * @Date 2024/2/22 14:49
- *
- * @param $page
- * @param $limit
- * @param $keywords
- * @return \support\Response
- */
- public static function fieldList($page, $limit, $keywords)
- {
- $list = SysField::select('*')
- ->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('字段删除成功');
- }
- }
|