getData(); } foreach($data['data']['lists'] as $key=>$value){ $data['data']['lists'][$key]['image'] = FileService::getImgUrl($value['image']); $data['data']['lists'][$key]['dtime'] = date("Y-m-d H:i:s"); } return $data; } /** * @notes 添加 * @param array $params * @return bool * @author likeadmin * @date 2026/02/12 00:34 */ public static function add(array $params): bool { Db::startTrans(); try { Training::create([ 'type_id' => $params['type_id'], 'title' => $params['title'], 'admin_name' => $params['admin_name'], 'image' => $params['image'], 'video' => $params['video'], 'content' => $params['content'], 'status' => $params['status'], 'dtime' => time() ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 编辑 * @param array $params * @return bool * @author likeadmin * @date 2026/02/12 00:34 */ public static function edit(array $params): bool { Db::startTrans(); try { Training::where('id', $params['id'])->update([ 'type_id' => $params['type_id'], 'title' => $params['title'], 'admin_name' => $params['admin_name'], 'image' => $params['image'], 'video' => $params['video'], 'content' => $params['content'], 'status' => $params['status'], 'update_dtime' => time() ]); Db::commit(); return true; } catch (\Exception $e) { Db::rollback(); self::setError($e->getMessage()); return false; } } /** * @notes 删除 * @param array $params * @return bool * @author likeadmin * @date 2026/02/12 00:34 */ public static function delete(array $params): bool { return Training::destroy($params['id']); } /** * @notes 获取详情 * @param $params * @return array * @author likeadmin * @date 2026/02/12 00:34 */ public static function detail($params): array { return Training::findOrEmpty($params['id'])->toArray(); } }