代码之家  ›  专栏  ›  技术社区  ›  Rashed Hasan Vijayaragavan

在Laravel中,类照明\数据库\后续\集合的对象无法转换为int

  •  0
  • Rashed Hasan Vijayaragavan  · 技术社区  · 6 年前

    我有一个名为“采购详细信息”的表,其中在采购期间,我一次存储许多项目的采购记录。在采购过程中,我也在更新基于采购项目ID的项目表列期初余额,现在我在试图将“采购明细”表数量的值与“项目”表的旧期初余额相加时遇到了麻烦-在控制器中,我尝试这样做-

    public function store(Request $request)
    {
    $grandTotal = $request->input('grand_total');
    $paidAmount = $request->input('paid_amount');
    $purchase = new Purchase;
    
    $purchase->no          = $request->input('no');
    $purchase->purchase_date = Carbon::parse($request->purchase_date)->format('Y-m-d');
    $purchase->notes       = $request->input('notes');
    $purchase->supplier_id = $request->input('supplier');
    $purchase->total_quantity = $request->input('total_quantity');
    $purchase->grand_total = $grandTotal;
    $purchase->paid_amount = $paidAmount;
    $purchase->due_amount  = abs($grandTotal - $paidAmount);
    $purchase->save();
    
    $itemDetails = [];
    $itemIds = $request->input('itemIds');
    $itemQuantities = $request->input('itemQuantities');
    $itemPrices = $request->input('itemPrices');
    $itemTotals = $request->input('itemTotals');
    $orderNotes = $request->input('orderNotes');
    
    foreach ($itemTotals as $key => $total) {
        $itemDetails[] = [
            'item_id' => $itemIds[$key],
            'quantity' => $itemQuantities[$key],
            'unit_price' => $itemPrices[$key],
            'total_price' => $itemTotals[$key],
        ];
        $openingBalance = Item::where('id', $itemIds[$key])->get(['opening_balance']);
        DB::table('items')
                    ->where('id', $itemIds[$key])
                    ->update(['opening_balance' => $openingBalance + $itemQuantities[$key]]);
    }
    $purchase->purchaseDetails()->createMany($itemDetails);
    
    return back();
    }
    
    1 回复  |  直到 6 年前
        1
  •  2
  •   J. Doe    6 年前

    $openingBalance = Item::select(['opening_balance'])->where('id', $itemIds[$key])->first()->opening_balance;