updated reports

This commit is contained in:
franknstayn
2022-03-12 20:17:57 +08:00
parent a94ef951a3
commit a24e016b85
4 changed files with 91 additions and 55 deletions

View File

@@ -17,7 +17,7 @@ use Maatwebsite\Excel\Facades\Excel;
use Illuminate\Support\Facades\File;
use Illuminate\Support\Facades\DB;
use Carbon\Carbon;
use Illuminate\Support\Facades\Input;
class AdminController extends Controller
@@ -446,7 +446,23 @@ class AdminController extends Controller
{
$AdminModel = new AdminModel;
$array_store_orders = $AdminModel->selectStoreOrders();
$start = Carbon::now()->startOfMonth()->startOfDay();
$end = Carbon::now()->endOfMonth()->endOfDay();
$min = Input::get('min');
$max = Input::get('max');
if ($min && $max) {
// var_dump(Carbon::parse($min)->format('Y-m-d'), $max);
$start = Carbon::parse($min)->format('Y-m-d');
$end = Carbon::parse($max)->format('Y-m-d');
}
//
$array_store_orders = $AdminModel->selectStoreOrders($start, $end);
// var_dump($array_store_orders);
return view('admin_pages.reports')
->with('array_store_orders', $array_store_orders);
@@ -1406,7 +1422,8 @@ class AdminController extends Controller
return view('admin_pages.home_carousel')->with("carousels", $selectHomeCarousel);
}
public function orderStatus() {
public function orderStatus()
{
$AdminModel = new AdminModel;
$selectOrderStatus = $AdminModel->selectOrderStatus();
return view('admin_pages.order_status')->with("order_status", $selectOrderStatus);

View File

@@ -4,6 +4,7 @@ namespace App\Models\admin;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Support\Facades\DB;
use Carbon\Carbon;
class AdminModel extends Model
{
@@ -297,13 +298,13 @@ class AdminModel extends Model
return $i;
}
function selectStoreOrders()
{
function selectStoreOrders($start, $end) {
$i = DB::table('orders')->select('orders.*', 'orders.Id as Order_Id', 'orders.DateCreated AS date_ordered', 'payment_details.InvoiceNumber', 'payment_details.Currency', 'payment_details.Payer_Email', 'payment_details.Payer_Firstname', 'payment_details.Payer_Lastname', 'shipping_addresses.*', 'teamstores.*')
->leftjoin('payment_details', 'payment_details.CartKey', '=', 'orders.CartKey')
->leftjoin('shipping_addresses', 'shipping_addresses.PaymentDetail_Id', '=', 'payment_details.Id')
->leftjoin('teamstores', 'teamstores.Id', '=', 'orders.StoreId')
// ->where('orders.StoreId', $store_id)
->whereBetween('orders.DateCreated', [$start, $end])
->orderby('orders.DateCreated', 'DESC')
->get();
return $i;

View File

@@ -276,6 +276,13 @@ desired effect
// hash && $('ul.nav a[href="' + hash + '"]').tab('show');
// $.fn.dataTable.moment( 'DD/M/YYYY' );
var date = new Date();
var firstDay = new Date(date.getFullYear(), date.getMonth(), 1);
var lastDay = new Date(date.getFullYear(), date.getMonth() + 1, 0);
// console.log(firstDay.toString("MM/dd/yyyy"), lastDay)
$('#min').val(moment(firstDay).format('MM/DD/YYYY'))
$('#max').val(moment(lastDay).format('MM/DD/YYYY'))
// console.log();
callSpectrumApi();
$('#orders_table').DataTable({
columnDefs: [{

View File

@@ -11,14 +11,14 @@
<div class="content-wrapper">
<!-- Content Header (Page header) -->
<section class="content-header">
<h1>
Reports
<!-- <small>Optional description</small> -->
</h1>
<ol class="breadcrumb">
<li><a href="{{ url ('admin') }}"><i class="fa fa-dashboard"></i> Dashboard</a></li>
<li class="active"> Reports</li>
</ol>
<h1>
Reports
<!-- <small>Optional description</small> -->
</h1>
<ol class="breadcrumb">
<li><a href="{{ url ('admin') }}"><i class="fa fa-dashboard"></i> Dashboard</a></li>
<li class="active"> Reports</li>
</ol>
</section>
<!-- Main content -->
@@ -27,22 +27,33 @@
<div class="col-md-12">
<div class="box">
<div class="box-header with-border">
<h4 class="box-title">Reports</h4>
<h4 class="box-title">Reports</h4>
</div>
<div class="box-body">
<div class="row">
<div class="col-md-3">
<div class="form-group">
<label class="control-label">Select Date From: <span class="required">*</span></label>
<input type="text" name="min" class="form-control datepicker-reports" id="min" placeholder="Select Date" required autocomplete="off"/>
<form action="">
<div class="col-md-3">
<div class="form-group">
<label class="control-label">Select Date From: <span class="required">*</span></label>
<input type="text" name="min" class="form-control datepicker-reports" id="min" placeholder="Select Date" required autocomplete="off" />
</div>
</div>
</div>
<div class="col-md-3">
<div class="form-group">
<label class="control-label">Select Date To: <span class="required">*</span></label>
<input type="text" name="max" class="form-control datepicker-reports" id="max" placeholder="Select Date" required autocomplete="off"/>
<div class="col-md-3">
<div class="form-group">
<label class="control-label">Select Date To: <span class="required">*</span></label>
<input type="text" name="max" class="form-control datepicker-reports" id="max" placeholder="Select Date" required autocomplete="off" />
</div>
</div>
</div>
<div class="col-md-3 ml-0">
<div class="form-group">
<label class="control-label">&nbsp;</label>
<div>
<button class="btn btn-primary">Submit</button>
</div>
</div>
</div>
</form>
<div class="col-md-3">
<div class="form-group">
<label class="control-label">Filter By Store</label>
@@ -80,32 +91,32 @@
</thead>
<tbody>
@foreach($array_store_orders as $item_order)
<tr>
<td>{{ $item_order->StoreName }}</td>
<td>{{ $item_order->InvoiceNumber }}</td>
<td>{{ $item_order->ProductName }}</td>
<td>{{ $item_order->Name }}</td>
<td>{{ $item_order->Number }}</td>
<td>{{ $item_order->Size }}</td>
<td>{{ $item_order->JerseySize }}</td>
<td>{{ $item_order->ShortsSize }}</td>
<td>{{ $item_order->Price . ' ' . $item_order->Currency }}</td>
<td>{{ $item_order->Quantity }} </td>
<td>{{ date('Y/m/d', strtotime($item_order->date_ordered)) }}</td>
<td>{{ $item_order->Payer_Email }} </td>
<td>{{ $item_order->Payer_Firstname . ' ' . $item_order->Payer_Lastname }} </td>
<td>{{ $item_order->recipient_name }} </td>
<td>{{ $item_order->line1 }} </td>
<td>{{ $item_order->line2 }} </td>
<td>{{ $item_order->city }} </td>
<td>{{ $item_order->state }} </td>
<td>{{ $item_order->postal_code }} </td>
<td>{{ $item_order->country_code }} </td>
<td>{{ date('F j, Y g:i a', strtotime($item_order->date_ordered)) }}</td>
<td class="text-center">
<a href="#" data-pid="{{ $item_order->ProductId }}" data-id="{{ $item_order->Order_Id }}" data-ck="{{ $item_order->CartKey }}" class="btn btn-default btn-xs btn-order-item-details">View Details</a>
</td>
</tr>
<tr>
<td>{{ $item_order->StoreName }}</td>
<td>{{ $item_order->InvoiceNumber }}</td>
<td>{{ $item_order->ProductName }}</td>
<td>{{ $item_order->Name }}</td>
<td>{{ $item_order->Number }}</td>
<td>{{ $item_order->Size }}</td>
<td>{{ $item_order->JerseySize }}</td>
<td>{{ $item_order->ShortsSize }}</td>
<td>{{ $item_order->Price . ' ' . $item_order->Currency }}</td>
<td>{{ $item_order->Quantity }} </td>
<td>{{ date('Y/m/d', strtotime($item_order->date_ordered)) }}</td>
<td>{{ $item_order->Payer_Email }} </td>
<td>{{ $item_order->Payer_Firstname . ' ' . $item_order->Payer_Lastname }} </td>
<td>{{ $item_order->recipient_name }} </td>
<td>{{ $item_order->line1 }} </td>
<td>{{ $item_order->line2 }} </td>
<td>{{ $item_order->city }} </td>
<td>{{ $item_order->state }} </td>
<td>{{ $item_order->postal_code }} </td>
<td>{{ $item_order->country_code }} </td>
<td>{{ date('F j, Y g:i a', strtotime($item_order->date_ordered)) }}</td>
<td class="text-center">
<a href="#" data-pid="{{ $item_order->ProductId }}" data-id="{{ $item_order->Order_Id }}" data-ck="{{ $item_order->CartKey }}" class="btn btn-default btn-xs btn-order-item-details">View Details</a>
</td>
</tr>
@endforeach
</tbody>
</table>