// +---------------------------------------------------------------------- namespace App\Services\Common; use App\Models\ConfigModel; use App\Models\ActionLogModel; use App\Services\BaseService; /** * 配置管理-服务类 * @author laravel开发员 * @since 2020/11/11 * Class ConfigService * @package App\Services\Common */ class ConfigService extends BaseService { /** * 构造函数 * @author laravel开发员 * @since 2020/11/11 * ConfigService constructor. */ public function __construct() { $this->model = new ConfigModel(); } /** * 获取配置列表 * @return array * @since 2020/11/11 * @author laravel开发员 */ public function getList() { $param = request()->all(); // 查询条件 $map = []; // 配置分组ID $configgroupId = getter($param, "configgroupId", 0); if ($configgroupId) { $map[] = ['config_group_id', '=', $configgroupId]; } // 配置标题 $title = getter($param, "title"); if ($title) { $map[] = ['name', 'title', "%{$title}%"]; } $list = $this->model->getList($map, [['sort', 'asc']]); return message("操作成功", true, $list); } /** * 编辑 * @return array */ public function edit() { $data = request()->all(); $data['value'] = isset($data['value'])? $data['value'] :''; $image = isset($data['value']) && !is_array($data['value'])? trim($data['value']) : ''; if ($image &&strpos($image, "uploads")){ $data['value'] = get_image_path($image); } $type = isset($data['type']) && $data['type']? trim($data['type']) : 'text'; if($type == 'daterange'){ $data['value'] = isset($data['value']) && !is_array($data['value'])? trim($data['value']) : json_encode($data['value'],256); } if($type == 'price'){ $data['value'] = $data['value']? str_replace(['|','-',':'],['|','-',':'], $data['value']) : ''; } $data['options'] = isset($data['options'])? $data['options'] :''; return parent::edit($data); // TODO: Change the autogenerated stub } /** * 删除七天之前标记软删除的数据 */ public function delete() { // 设置日志标题 ActionLogModel::setRecord(session('userId'), ['type' => 1, 'title' => "删除配置信息", 'content' => json_encode(request()->post(), 256), 'module' => 'admin']); ActionLogModel::record(); $this->model->where('mark', 0)->where('update_time', '<=', time() - 7 * 86400)->delete(); return parent::delete(); } }