Condicionante.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. <?php
  2. namespace v1\models;
  3. use app\models\Condicionante as ModelsCondicionante;
  4. class Condicionante extends ModelsCondicionante {
  5. public function fields() {
  6. return [
  7. 'id',
  8. 'titulo',
  9. 'descripcion',
  10. 'activa',
  11. 'amplitud',
  12. 'idProducto',
  13. 'subproductos',
  14. 'idCreador',
  15. 'idModificador',
  16. 'creado',
  17. 'modificado',
  18. 'eliminado',
  19. ];
  20. }
  21. public function extraFields() {
  22. return [
  23. 'producto',
  24. 'creador',
  25. 'modificador',
  26. 'condicionanteFin',
  27. 'condicionanteTipo',
  28. 'condicionanteOrigen',
  29. 'condicionanteDestino'
  30. ];
  31. }
  32. public function getProducto() {
  33. return $this->hasOne(Producto::class, ['id' => 'idProducto']);
  34. }
  35. public function getCreador() {
  36. return $this->hasOne(Usuario::class, ['id' => 'idCreador']);
  37. }
  38. public function getModificador() {
  39. return $this->hasOne(Usuario::class, ['id' => 'idModificador']);
  40. }
  41. public function getCondicionanteFin() {
  42. return $this->hasMany(CondicionanteFin::class, ['idCondicionante' => 'id'])
  43. ->andWhere('eliminado IS NULL')
  44. ->orderBy(['creado' => SORT_ASC]);
  45. }
  46. public function getCondicionanteTipo() {
  47. return $this->hasMany(CondicionanteTipo::class, ['idCondicionante' => 'id'])
  48. ->andWhere('eliminado IS NULL')
  49. ->orderBy(['creado' => SORT_ASC]);
  50. }
  51. public function getCondicionanteOrigen() {
  52. return $this->hasMany(CondicionanteOrigen::class, ['idCondicionante' => 'id'])
  53. ->andWhere('eliminado IS NULL')
  54. ->orderBy(['creado' => SORT_ASC]);
  55. }
  56. public function getCondicionanteDestino() {
  57. return $this->hasMany(CondicionanteDestino::class, ['idCondicionante' => 'id'])
  58. ->andWhere('eliminado IS NULL')
  59. ->orderBy(['creado' => SORT_ASC]);
  60. }
  61. }