kphcdr vor 1 Jahr
Ursprung
Commit
d3f8300059
2 geänderte Dateien mit 10 neuen und 1 gelöschten Zeilen
  1. 6 0
      app/Models/Goods/SpecAttr.php
  2. 4 1
      app/Modules/Admin/Services/SpecService.php

+ 6 - 0
app/Models/Goods/SpecAttr.php

@@ -27,10 +27,16 @@ use Illuminate\Database\Eloquent\SoftDeletes;
  * @method static \Illuminate\Database\Query\Builder|SpecAttr onlyTrashed()
  * @method static \Illuminate\Database\Query\Builder|SpecAttr withTrashed()
  * @method static \Illuminate\Database\Query\Builder|SpecAttr withoutTrashed()
+ * @property-read \App\Models\Goods\Spec|null $spec
  */
 class SpecAttr extends BaseModel
 {
     use SoftDeletes;
 
     protected $table = "spec_attr";
+
+    public function spec()
+    {
+        return $this->belongsTo(Spec::class, "spec_id", "id");
+    }
 }

+ 4 - 1
app/Modules/Admin/Services/SpecService.php

@@ -121,9 +121,12 @@ class SpecService extends BaseService
                 "url_3d" => "",
                 "is_use" => 1,
                 "spec_attr" => array_map(function ($cname) use ($attrS) {
+                    /** @var SpecAttr $attr */
+                    $attr = $attrS->where("name", $cname)->first();
                     return [
-                        "id" => $attrS->where("name", $cname)->value("id"),
+                        "id" => $attr->id,
                         "name" => $cname,
+                        "spec_name" => optional($attr->spec)->name,
                     ];
                 }, $c),
             ];