6
0
Fork 0

优化购物车商品表

release
李静 2021-12-07 17:01:25 +08:00
parent b4d8d98d8e
commit e668ec9826
4 changed files with 8 additions and 8 deletions

View File

@ -32,7 +32,7 @@ class ShoppingCartItemController extends Controller
{ {
$input = $request->validate([ $input = $request->validate([
'sku_id' => ['bail', 'required'], 'sku_id' => ['bail', 'required'],
'qty' => ['bail', 'required', 'int', 'min:1'], 'quantity' => ['bail', 'required', 'int', 'min:1'],
]); ]);
$sku = ProductSku::whereRelation('category', 'is_show', true)->online()->find($input['sku_id']); $sku = ProductSku::whereRelation('category', 'is_show', true)->online()->find($input['sku_id']);
@ -44,11 +44,11 @@ class ShoppingCartItemController extends Controller
$item = $request->user()->shoppingCartItems()->firstOrCreate([ $item = $request->user()->shoppingCartItems()->firstOrCreate([
'sku_id' => $sku->id, 'sku_id' => $sku->id,
], [ ], [
'qty' => $input['qty'], 'quantity' => $input['quantity'],
]); ]);
if (! $item->wasRecentlyCreated) { if (! $item->wasRecentlyCreated) {
$item->increment('qty', $input['qty']); $item->increment('quantity', $input['quantity']);
} }
return response()->noContent(); return response()->noContent();
@ -64,7 +64,7 @@ class ShoppingCartItemController extends Controller
public function update($id, Request $request) public function update($id, Request $request)
{ {
$input = $request->validate([ $input = $request->validate([
'qty' => ['bail', 'required', 'int', 'min:1'], 'quantity' => ['bail', 'required', 'int', 'min:1'],
]); ]);
$item = $request->user()->shoppingCartItems()->findOrFail($id); $item = $request->user()->shoppingCartItems()->findOrFail($id);

View File

@ -18,7 +18,7 @@ class ShoppingCartItemResource extends JsonResource
return [ return [
'id' => $this->id, 'id' => $this->id,
'sku' => ProductSkuSimpleResource::make($this->whenLoaded('sku')), 'sku' => ProductSkuSimpleResource::make($this->whenLoaded('sku')),
'qty' => $this->qty, 'quantity' => $this->quantity,
]; ];
} }
} }

View File

@ -10,7 +10,7 @@ class ShoppingCartItem extends Model
* @var array * @var array
*/ */
protected $casts = [ protected $casts = [
'qty' => 'int', 'quantity' => 'int',
]; ];
/** /**
@ -19,7 +19,7 @@ class ShoppingCartItem extends Model
protected $fillable = [ protected $fillable = [
'user_id', 'user_id',
'sku_id', 'sku_id',
'qty', 'quantity',
]; ];
/** /**

View File

@ -17,7 +17,7 @@ class CreateShoppingCartItemsTable extends Migration
$table->id(); $table->id();
$table->unsignedBigInteger('user_id')->comment('用户ID'); $table->unsignedBigInteger('user_id')->comment('用户ID');
$table->unsignedBigInteger('sku_id')->comment('商品ID'); $table->unsignedBigInteger('sku_id')->comment('商品ID');
$table->unsignedInteger('qty')->default(0)->comment('购买数量'); $table->unsignedInteger('quantity')->default(0)->comment('购买数量');
$table->timestamps(); $table->timestamps();
$table->unique(['user_id', 'sku_id']); $table->unique(['user_id', 'sku_id']);