forked from sparkison/m3u-editor
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.blueprint
15 lines (15 loc) · 2.3 KB
/
.blueprint
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
created:
- database/factories/EpgMapFactory.php
- database/migrations/2025_02_16_181719_create_epg_maps_table.php
- app/Models/EpgMap.php
models:
User: { name: string, email: string, email_verified_at: 'datetime nullable', password: string, remember_token: 'string nullable' }
Playlist: { name: string, uuid: uuid, url: string, status: 'enum:pending,processing,completed,failed default:pending', prefix: 'string nullable', channels: 'unsignedInteger default:0', synced: 'datetime nullable', errors: 'longText nullable', user_id: 'id foreign:users', relationships: { belongsTo: User, hasMany: 'Channel, Group' } }
Group: { name: string, user_id: 'id foreign:users', playlist_id: 'id foreign:playlists', relationships: { belongsTo: 'User, Playlist', hasMany: Channel } }
Channel: { name: string, enabled: 'boolean default:false', channel: 'unsignedInteger nullable', shift: 'unsignedInteger default:0', url: 'string nullable', logo: 'string nullable', group: 'string nullable', stream_id: 'string nullable', lang: 'string nullable', country: 'string nullable', user_id: 'id foreign:users', playlist_id: 'id foreign:playlists', group_id: 'id foreign:groups nullable', relationships: { belongsTo: 'User, Playlist, Group' } }
MergedPlaylist: { name: string, uuid: uuid, user_id: 'id foreign:users', relationships: { belongsTo: User, belongsToMany: Playlist } }
CustomPlaylist: { name: string, uuid: uuid, user_id: 'id foreign:users', relationships: { belongsTo: User, belongsToMany: Channel } }
Epg: { name: string, url: string, user_id: 'id foreign:users', relationships: { belongsTo: User } }
EpgChannel: { name: string, display_name: 'string nullable', lang: 'string nullable', channel_id: 'string nullable', epg_id: 'id foreign:epgs', programmes: 'longText nullable', relationships: { belongsTo: Epg } }
Programme: { name: 'string nullable', channel_id: string, data: longText, user_id: 'id foreign:users', epg_id: 'id foreign:epgs', relationships: { belongsTo: 'User, Epg' } }
EpgMap: { name: string, uuid: uuid, errors: 'longText nullable', status: 'enum:pending,processing,completed,failed default:pending', processing: 'boolean default:false', progress: 'float default:0', sync_time: 'datetime nullable', user_id: 'id foreign:users', epg_id: 'id foreign:epgs', relationships: { belongsTo: 'User, Epg' } }