public function destroy($id) { $invoiceItem = InvoiceItem::find($id); $salesId = $invoiceItem->salesInvoice->id; $invoice = SalesInvoice::find($salesId); $invoice->update(['total_amount' => $invoice->total_amount - $invoiceItem->total_price]); $invoiceItem->delete(); return redirect()->action('SalesInvoicesController@edit', [$salesId]); }
public function collectedFromLog(Requests\UpdateStatusRequest $request) { $input = Request::all(); $salesInvoice = SalesInvoice::find($input['id']); $client = $salesInvoice->Client; if ($client->payment_terms == 'Cash') { $salesInvoice->update(['status' => "Collected", 'date_collected' => Carbon::now(), 'or_number' => $input['or_number']]); Flash::success('Successfully Collected SI#' . $salesInvoice->si_no); } else { if ($input['or_number'] != 'Cash' && $input['or_number'] != 'CASH' && $input['or_number'] != 'cash') { $salesInvoice->update(['status' => "Collected", 'date_collected' => Carbon::now(), 'or_number' => $input['or_number']]); Flash::success('Successfully Collected SI#' . $salesInvoice->si_no); } else { Flash::error("This client's payment terms is not Cash"); } } $clientId = $salesInvoice->client_id; $hasOverdue = DB::SELECT("SELECT COUNT(*) FROM sales_invoices WHERE status='overdue'"); if ($hasOverdue == 0) { $client = Client::find($clientId); $client->update(['status' => "Good"]); } Activity::log('Sales Invoice ' . $salesInvoice['si_no'] . ' was collected'); return redirect()->action('CollectionLogsController@index', $client->id); }
@extends('layouts.app') @section('content') <?php //namespace App\Http\Controllers; use App\Item; use App\SalesInvoice; use App\PriceLog; use App\Supplier; ?> <h2 class="sub-header">New Sales Invoice</h2><hr> <h3 class="sub-header"><?php echo SalesInvoice::find($invoice_id)->Client->name; ?> Sales Invoice</h3> {!! Form::open(['route' => ['invoices.creation'], 'method' => 'post' ]) !!} {!! Form::hidden('invoice_no', $invoice_id) !!} <!-- {!! Form::hidden('item_count', 1, ['class' => 'itemCount']) !!} --> <div class="table-responsive"> @include('includes.required_errors') @include('flash::message') <table class="table"> <!-- <thead> <tr> <th>Item</th>