Condicionante.php 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  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. 'idNivel'
  20. ];
  21. }
  22. public function extraFields() {
  23. return [
  24. 'producto',
  25. 'creador',
  26. 'modificador',
  27. 'condicionanteFin',
  28. 'condicionanteTipo',
  29. 'condicionanteOrigen',
  30. 'condicionanteDestino'
  31. ];
  32. }
  33. public function getProducto() {
  34. return $this->hasOne(Producto::class, ['id' => 'idProducto']);
  35. }
  36. public function getCreador() {
  37. return $this->hasOne(Usuario::class, ['id' => 'idCreador']);
  38. }
  39. public function getModificador() {
  40. return $this->hasOne(Usuario::class, ['id' => 'idModificador']);
  41. }
  42. public function getCondicionanteFin() {
  43. return $this->hasMany(CondicionanteFin::class, ['idCondicionante' => 'id'])
  44. ->andWhere('eliminado IS NULL')
  45. ->orderBy(['creado' => SORT_ASC]);
  46. }
  47. public function getCondicionanteTipo() {
  48. return $this->hasMany(CondicionanteTipo::class, ['idCondicionante' => 'id'])
  49. ->andWhere('eliminado IS NULL')
  50. ->orderBy(['creado' => SORT_ASC]);
  51. }
  52. public function getCondicionanteOrigen() {
  53. return $this->hasMany(CondicionanteOrigen::class, ['idCondicionante' => 'id'])
  54. ->andWhere('eliminado IS NULL')
  55. ->orderBy(['creado' => SORT_ASC]);
  56. }
  57. public function getCondicionanteDestino() {
  58. return $this->hasMany(CondicionanteDestino::class, ['idCondicionante' => 'id'])
  59. ->andWhere('eliminado IS NULL')
  60. ->orderBy(['creado' => SORT_ASC]);
  61. }
  62. }