Skip to content

Commit

Permalink
Merge pull request #94 from danitoro97/6-detalles
Browse files Browse the repository at this point in the history
Tabla detalles partidos
  • Loading branch information
danitoro97 authored Apr 17, 2018
2 parents 089cf21 + 157edb6 commit 3f3e85d
Show file tree
Hide file tree
Showing 5 changed files with 148 additions and 3 deletions.
24 changes: 23 additions & 1 deletion db/druidkuma.sql
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ CREATE TABLE jugadores
, equipo_id bigint not null references equipos(id)
ON DELETE NO ACTION
ON UPDATE CASCADE
, url varchar(255)
, url varchar(255)
);

--TABLA PARTIDOS--
Expand All @@ -96,6 +96,28 @@ CREATE TABLE partidos
,goles_visitante numeric(3)
);

--TABLA DEtalles_PARTIDOS --
DROP TABLE IF EXISTS detalles_partidos CASCADE;
CREATE TABLE detalles_partidos
(
id bigserial primary key
, partido_id bigint not null references partidos(id)
ON DELETE NO ACTION
ON UPDATE CASCADE
, equipo_id bigint not null references equipos (id)
ON DELETE NO ACTION
ON UPDATE CASCADE
, minuto varchar(255) not null
, jugador_id bigint not null references jugadores(id)
ON DELETE NO ACTION
ON UPDATE CASCADE
, roja boolean default false
, amarilla boolean default false
, gol boolean default false
, autogol boolean default false
);


--TABLA ROLES --
DROP TABLE IF EXISTS roles CASCADE;

Expand Down
92 changes: 92 additions & 0 deletions models/DetallesPartidos.php
Original file line number Diff line number Diff line change
@@ -0,0 +1,92 @@
<?php

namespace app\models;

use Yii;

/**
* This is the model class for table "detalles_partidos".
*
* @property int $id
* @property int $partido_id
* @property int $equipo_id
* @property string $minuto
* @property int $jugador_id
* @property bool $roja
* @property bool $amarilla
* @property bool $gol
* @property bool $autogol
*
* @property Equipos $equipo
* @property Jugadores $jugador
* @property Partidos $partido
*/
class DetallesPartidos extends \yii\db\ActiveRecord
{
/**
* {@inheritdoc}
*/
public static function tableName()
{
return 'detalles_partidos';
}

/**
* {@inheritdoc}
*/
public function rules()
{
return [
[['partido_id', 'equipo_id', 'jugador_id'], 'required'],
[['partido_id', 'equipo_id', 'jugador_id'], 'default', 'value' => null],
[['partido_id', 'equipo_id', 'jugador_id'], 'integer'],
[['roja', 'amarilla', 'gol', 'autogol'], 'boolean'],
[['minuto'], 'string', 'max' => 255],
[['equipo_id'], 'exist', 'skipOnError' => true, 'targetClass' => Equipos::className(), 'targetAttribute' => ['equipo_id' => 'id']],
[['jugador_id'], 'exist', 'skipOnError' => true, 'targetClass' => Jugadores::className(), 'targetAttribute' => ['jugador_id' => 'id']],
[['partido_id'], 'exist', 'skipOnError' => true, 'targetClass' => Partidos::className(), 'targetAttribute' => ['partido_id' => 'id']],
];
}

/**
* {@inheritdoc}
*/
public function attributeLabels()
{
return [
'id' => 'ID',
'partido_id' => 'Partido ID',
'equipo_id' => 'Equipo ID',
'minuto' => 'Minuto',
'jugador_id' => 'Jugador ID',
'roja' => 'Roja',
'amarilla' => 'Amarilla',
'gol' => 'Gol',
'autogol' => 'Autogol',
];
}

/**
* @return \yii\db\ActiveQuery
*/
public function getEquipo()
{
return $this->hasOne(Equipos::className(), ['id' => 'equipo_id'])->inverseOf('detallesPartidos');
}

/**
* @return \yii\db\ActiveQuery
*/
public function getJugador()
{
return $this->hasOne(Jugadores::className(), ['id' => 'jugador_id'])->inverseOf('detallesPartidos');
}

/**
* @return \yii\db\ActiveQuery
*/
public function getPartido()
{
return $this->hasOne(Partidos::className(), ['id' => 'partido_id'])->inverseOf('detallesPartidos');
}
}
8 changes: 8 additions & 0 deletions models/Jugadores.php
Original file line number Diff line number Diff line change
Expand Up @@ -92,4 +92,12 @@ public function getPosicion()
{
return $this->hasOne(Posiciones::className(), ['id' => 'posicion_id'])->inverseOf('jugadores');
}

/**
* @return \yii\db\ActiveQuery
*/
public function getDetallesPartidos()
{
return $this->hasMany(DetallesPartidos::className(), ['jugador_id' => 'id'])->inverseOf('jugador');
}
}
15 changes: 13 additions & 2 deletions models/Partidos.php
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@

namespace app\models;

use Yii;

/**
* This is the model class for table "partidos".
*
Expand Down Expand Up @@ -88,4 +86,17 @@ public function getLiga()
{
return $this->hasOne(Ligas::className(), ['id' => 'liga_id'])->inverseOf('partidos');
}

public function getDetalles()
{
return $this->getDetallesPartidos()->orderBy('minuto ASC')->all();
}

/**
* @return \yii\db\ActiveQuery
*/
public function getDetallesPartidos()
{
return $this->hasMany(DetallesPartidos::className(), ['partido_id' => 'id'])->inverseOf('partido');
}
}
12 changes: 12 additions & 0 deletions views/partidos/view.php
Original file line number Diff line number Diff line change
Expand Up @@ -34,8 +34,20 @@
if ($model->estado == Equipos::FINALIZADO): ?>
<h2><?=$model->goles_local ?? '0'?> - <?=$model->goles_visitante ?? '0' ?></h2>
<h3>FINALIZADO</h3>
<?php
foreach ($model->detalles as $key) : ?>
<h4>
<?= $key->jugador->nombre; ?>
<?= ($key->roja) ? 'roja' : '' ?>
<?= ($key->amarilla) ? 'amarilla' : '' ?>
<?= ($key->gol) ? 'gol' : '' ?>
<?= ($key->autogol) ? 'gol en propia' : ''?>
<?= $key->minuto . '\'' ?>
</h4>
<?php endforeach ; ?>

<?php else : ?>

<h3>POR JUGAR</h3>
<?php endif; ?>

Expand Down

0 comments on commit 3f3e85d

Please sign in to comment.