where($where)->limit($m, $n)->order($order_by)->select()->toArray(); if(!empty($data)) { foreach($data as &$v) { // 时间 if(array_key_exists('add_time', $v)) { $v['add_time'] = date('Y-m-d H:i:s', $v['add_time']); } if(array_key_exists('upd_time', $v)) { $v['upd_time'] = date('Y-m-d H:i:s', $v['upd_time']); } } } return DataReturn('处理成功', 0, $data); } /** * 总数 * @author Devil * @blog http://gong.gg/ * @version 1.0.0 * @date 2021-06-16 * @desc description * @param [array] $where [条件] */ public static function DesignTotal($where = []) { return (int) Db::name('Design')->where($where)->count(); } /** * 保存 * @author Devil * @blog http://gong.gg/ * @version 1.0.0 * @date 2021-06-16 * @desc description * @param [array] $params [输入参数] */ public static function DesignSave($params = []) { // 附件 $data_fields = ['logo']; $attachment = ResourcesService::AttachmentParams($params, $data_fields); // 配置信息 $config = empty($params['config']) ? '' : (is_array($params['config']) ? json_encode($params['config'], JSON_UNESCAPED_UNICODE) : htmlspecialchars_decode($params['config'])) ; // 数据 $data = [ 'name' => empty($params['name']) ? '默认页面'.date('mdHi') : $params['name'], 'logo' => $attachment['data']['logo'], 'config' => $config, 'seo_title' => empty($params['seo_title']) ? '' : $params['seo_title'], 'seo_keywords' => empty($params['seo_keywords']) ? '' : $params['seo_keywords'], 'seo_desc' => empty($params['seo_desc']) ? '' : $params['seo_desc'], 'is_enable' => isset($params['is_enable']) ? intval($params['is_enable']) : 1, 'is_header' => isset($params['is_header']) ? intval($params['is_header']) : 1, 'is_footer' => isset($params['is_footer']) ? intval($params['is_footer']) : 1, ]; if(empty($params['id'])) { $data['add_time'] = time(); $data_id = Db::name('Design')->insertGetId($data); if($data_id <= 0) { return DataReturn('添加失败', -1); } } else { $data_id = intval($params['id']); $data['upd_time'] = time(); if(Db::name('Design')->where(['id'=>$data_id])->update($data) === false) { return DataReturn('更新失败', -1); } } return DataReturn('操作成功', 0, $data_id); } /** * 状态更新 * @author Devil * @blog http://gong.gg/ * @version 1.0.0 * @date 2021-06-23 * @desc description * @param [array] $params [输入参数] */ public static function DesignStatusUpdate($params = []) { // 请求参数 $p = [ [ 'checked_type' => 'empty', 'key_name' => 'id', 'error_msg' => '操作id有误', ], [ 'checked_type' => 'empty', 'key_name' => 'field', 'error_msg' => '字段有误', ], [ 'checked_type' => 'in', 'key_name' => 'state', 'checked_data' => [0,1], 'error_msg' => '状态有误', ], ]; $ret = ParamsChecked($params, $p); if($ret !== true) { return DataReturn($ret, -1); } // 数据更新 if(Db::name('Design')->where(['id'=>intval($params['id'])])->update([$params['field']=>intval($params['state']), 'upd_time'=>time()])) { return DataReturn('操作成功'); } return DataReturn('操作失败', -100); } /** * 删除 * @author Devil * @blog http://gong.gg/ * @version 1.0.0 * @date 2018-12-18 * @desc description * @param [array] $params [输入参数] */ public static function DesignDelete($params = []) { // 请求参数 $p = [ [ 'checked_type' => 'empty', 'key_name' => 'ids', 'error_msg' => '操作id有误', ], ]; $ret = ParamsChecked($params, $p); if($ret !== true) { return DataReturn($ret, -1); } // 是否数组 if(!is_array($params['ids'])) { $params['ids'] = explode(',', $params['ids']); } // 删除操作 if(Db::name('Design')->where(['id'=>$params['ids']])->delete()) { // 删除数据库附件 foreach($params['ids'] as $v) { ResourcesService::AttachmentPathTypeDelete(self::AttachmentPathTypeValue($v)); } return DataReturn('删除成功'); } return DataReturn('删除失败', -100); } /** * 页面访问统计加1 * @author Devil * @blog http://gong.gg/ * @version 1.0.0 * @date 2018-10-15 * @desc description * @param [array] $params [输入参数] */ public static function DesignAccessCountInc($params = []) { if(!empty($params['design_id'])) { return Db::name('Design')->where(['id'=>intval($params['design_id'])])->inc('access_count')->update(); } return false; } /** * 附件标识 * @author Devil * @blog http://gong.gg/ * @version 1.0.0 * @date 2021-06-23 * @desc description * @param [int] $data_id [数据 id] */ public static function AttachmentPathTypeValue($data_id) { return 'design-'.$data_id; } } ?>