'boolean', 'enable_ecommerce' => 'boolean', 'status' => 'boolean', ]; /** * Nombre de la etiqueta para generar Componentes * * @var string */ public $tagName = 'Store'; /** * Nombre de la columna que contiee el nombre del registro * * @var string */ public $columnNameLabel = 'name'; /** * Nombre singular del registro. * * @var string */ public $singularName = 'sucursal'; /** * Nombre plural del registro. * * @var string */ public $pluralName = 'sucursales'; /** * Relación con el catálogo de códigos postales SAT. */ public function codigoPostal(): BelongsTo { return $this->belongsTo(CodigoPostal::class, 'c_codigo_postal', 'c_codigo_postal'); } /** * Relación con el catálogo de estados SAT. */ public function estado(): BelongsTo { return $this->belongsTo(Estado::class, 'c_estado', 'c_estado'); } /** * Relación con el catálogo de municipios SAT. */ public function municipio(): BelongsTo { return $this->belongsTo(Municipio::class, 'c_municipio', 'c_municipio'); } /** * Relación con el catálogo de colonias SAT. */ public function colonia(): BelongsTo { return $this->belongsTo(Colonia::class, 'c_colonia', 'c_colonia'); } /** * Relación con el régimen fiscal SAT. */ public function regimenFiscal(): BelongsTo { return $this->belongsTo(RegimenFiscal::class, 'c_regimen_fiscal', 'c_regimen_fiscal'); } /** * Relación con el domicilio fiscal (Código Postal SAT). */ public function domicilioFiscal(): BelongsTo { return $this->belongsTo(CodigoPostal::class, 'domicilio_fiscal', 'c_codigo_postal'); } public function workCenters(): HasMany { return $this->hasMany(StoreWorkCenter::class); } public function warehouses(): HasMany { return $this->hasMany(Warehouses::class); } public function manager(): BelongsTo { return $this->belongsTo(User::class, 'manager_id'); } public function scopeActive($query) { return $query->where('status', true); } public function getFullAddressAttribute() { return "{$this->direccion}, {$this->num_ext}, {$this->num_int}, {$this->c_colonia}, {$this->c_municipio}, {$this->c_estado}, {$this->c_pais}"; } }