From 8b29fc7fea328ca9d3631245c15c6f95b274032e Mon Sep 17 00:00:00 2001 From: Erastus Date: Mon, 20 Aug 2018 23:42:47 -0500 Subject: [PATCH] reports graphical discount --- application/config/routes.php | 1 + application/controllers/Reports.php | 8 ++++---- application/libraries/Sale_lib.php | 11 +++++++---- application/views/sales/register.php | 2 -- 4 files changed, 12 insertions(+), 10 deletions(-) diff --git a/application/config/routes.php b/application/config/routes.php index 125471bd8..70dfe3d41 100644 --- a/application/config/routes.php +++ b/application/config/routes.php @@ -65,6 +65,7 @@ $route['reports/summary_:any'] = 'reports/date_input'; $route['reports/(graphical_:any)/([^/]+)/([^/]+)'] = 'reports/$1/$2/$3/$4'; $route['reports/graphical_summary_expenses_categories'] = 'reports/date_input_only'; +$route['reports/graphical_summary_discounts'] = 'reports/summary_discounts_input'; $route['reports/graphical_:any'] = 'reports/date_input'; $route['reports/(inventory_:any)/([^/]+)'] = 'reports/$1/$2'; diff --git a/application/controllers/Reports.php b/application/controllers/Reports.php index daf0c0704..703a3f521 100644 --- a/application/controllers/Reports.php +++ b/application/controllers/Reports.php @@ -721,9 +721,9 @@ class Reports extends Secure_Controller } //Graphical summary discounts report - public function graphical_summary_discounts($start_date, $end_date, $sale_type, $location_id = 'all') + public function graphical_summary_discounts($start_date, $end_date, $sale_type, $location_id = 'all', $discount_type=0) { - $inputs = array('start_date' => $start_date, 'end_date' => $end_date, 'sale_type' => $sale_type, 'location_id' => $location_id); + $inputs = array('start_date' => $start_date, 'end_date' => $end_date, 'sale_type' => $sale_type, 'location_id' => $location_id,'discount_type'=>$discount_type); $this->load->model('reports/Summary_discounts'); $model = $this->Summary_discounts; @@ -737,7 +737,7 @@ class Reports extends Secure_Controller { $row = $this->xss_clean($row); - $labels[] = $row['discount_percent']; + $labels[] = $row['discount']; $series[] = $row['count']; } @@ -749,7 +749,7 @@ class Reports extends Secure_Controller 'series_data_1' => $series, 'summary_data_1' => $summary, 'yaxis_title' => $this->lang->line('reports_count'), - 'xaxis_title' => $this->lang->line('reports_discount_percent'), + 'xaxis_title' => $this->lang->line('reports_discount'), 'show_currency' => FALSE ); diff --git a/application/libraries/Sale_lib.php b/application/libraries/Sale_lib.php index cad4ce1f6..e1ee8a512 100644 --- a/application/libraries/Sale_lib.php +++ b/application/libraries/Sale_lib.php @@ -1214,6 +1214,12 @@ class Sale_lib $item_discount = $this->get_item_discount($item['quantity'], $item['price'], $item['discount'], $item['discount_fixed']); $discount = bcadd($discount, $item_discount); } + + if($item['discount_fixed'] > 0) + { + $item_discount = $this->get_item_discount($item['quantity'], $item['price'], $item['discount'], $item['discount_fixed']); + $discount = bcadd($discount, $item_discount); + } } return $discount; @@ -1290,10 +1296,7 @@ class Sale_lib $total = bcmul($quantity, $price); $discount_fraction = bcdiv($discount_percentage, 100); - $discount_amount=bcadd(bcmul($total, $discount_fraction), $discount_fixed); - - return round($discount_amount, totals_decimals(), PHP_ROUND_HALF_UP); - + return round(bcadd(bcmul($total, $discount_fraction),$discount_fixed), totals_decimals(), PHP_ROUND_HALF_UP); } public function get_item_tax($quantity, $price, $discount_percentage, $discount_fixed, $tax_percentage) diff --git a/application/views/sales/register.php b/application/views/sales/register.php index 71d9bdd5e..6ce1ca99d 100644 --- a/application/views/sales/register.php +++ b/application/views/sales/register.php @@ -211,8 +211,6 @@ if(isset($success)) ?> 'discount_toggle', 'name'=>'discount_toggle', 'value'=>1, 'data-toggle'=>"toggle",'data-size'=>'small', 'data-onstyle'=>'success', 'data-on'=>''.$this->config->item('currency_symbol').'', 'data-off'=>'%', 'data-line'=>$line, 'checked'=>$item['discount_type'])); ?> - -