Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Доработка] Отчет по продажам (оптовая цена, прибыль)


vibe

Recommended Posts

Вот файл полностью /admin/controller/report/sale.php

<?php
class ControllerReportSale extends Controller {
public function index() {
  $this->load->language('report/sale');
  $this->document->title = $this->language->get('heading_title');
  if (isset($this->request->get['filter_date_start'])) {
   $filter_date_start = $this->request->get['filter_date_start'];
  } else {
   $filter_date_start = date('Y-m-d', strtotime('-7 day'));
  }
  if (isset($this->request->get['filter_date_end'])) {
   $filter_date_end = $this->request->get['filter_date_end'];
  } else {
   $filter_date_end = date('Y-m-d', time());
  }

  if (isset($this->request->get['filter_group'])) {
   $filter_group = $this->request->get['filter_group'];
  } else {
   $filter_group = 'week';
  }

  if (isset($this->request->get['filter_order_status_id'])) {
   $filter_order_status_id = $this->request->get['filter_order_status_id'];
  } else {
   $filter_order_status_id = 0;
  }
  if (isset($this->request->get['page'])) {
   $page = $this->request->get['page'];
  } else {
   $page = 1;
  }

  $url = '';
	
  if (isset($this->request->get['filter_date_start'])) {
   $url .= '&filter_date_start=' . $this->request->get['filter_date_start'];
  }

  if (isset($this->request->get['filter_date_end'])) {
   $url .= '&filter_date_end=' . $this->request->get['filter_date_end'];
  }

  if (isset($this->request->get['filter_group'])) {
   $url .= '&filter_group=' . $this->request->get['filter_group'];
  }
  if (isset($this->request->get['filter_order_status_id'])) {
   $url .= '&filter_order_status_id=' . $this->request->get['filter_order_status_id'];
  }
	
  if (isset($this->request->get['page'])) {
   $url .= '&page=' . $this->request->get['page'];
  }
	 $this->document->breadcrumbs = array();
	 $this->document->breadcrumbs[] = array(
		 'href'	  => HTTPS_SERVER . 'index.php?route=common/home&token=' . $this->session->data['token'],
		 'text'	  => $this->language->get('text_home'),
		'separator' => FALSE
	 );
	 $this->document->breadcrumbs[] = array(
		 'href'	  => HTTPS_SERVER . 'index.php?route=report/sale&token=' . $this->session->data['token'] . $url,
		 'text'	  => $this->language->get('heading_title'),
		'separator' => ' :: '
	 );

  $this->load->model('report/sale');

  $this->data['orders'] = array();

  $data = array(
   'filter_date_start'	  => $filter_date_start,
   'filter_date_end'	  => $filter_date_end,
   'filter_group'		   => $filter_group,
   'filter_order_status_id' => $filter_order_status_id,
   'start'				  => ($page - 1) * $this->config->get('config_admin_limit'),
   'limit'				  => $this->config->get('config_admin_limit')
  );

  $order_total = $this->model_report_sale->getSaleReportTotal($data);

  $results = $this->model_report_sale->getSaleReport($data);

  foreach ($results as $result) {
   $this->data['orders'][] = array(
	'date_start' => date($this->language->get('date_format_short'), strtotime($result['date_start'])),
	'date_end'   => date($this->language->get('date_format_short'), strtotime($result['date_end'])),
	'orders'	 => $result['orders'],
	'total'	  => $this->currency->format($result['total'], $this->config->get('config_currency')),
				'total_purchase' => $this->currency->format($result['total_purchase'], $this->config->get('config_currency')),
				'profit'	 => $this->currency->format($result['profit'], $this->config->get('config_currency'))
   );
  }
  $this->data['heading_title'] = $this->language->get('heading_title');

  $this->data['text_no_results'] = $this->language->get('text_no_results');
  $this->data['text_all_status'] = $this->language->get('text_all_status');

  $this->data['column_date_start'] = $this->language->get('column_date_start');
  $this->data['column_date_end'] = $this->language->get('column_date_end');
	 $this->data['column_orders'] = $this->language->get('column_orders');
  $this->data['column_total'] = $this->language->get('column_total');
  $this->data['column_total_purchase'] = $this->language->get('column_total_purchase');
		$this->data['column_profit_diff'] = $this->language->get('column_profit_diff');

  $this->data['entry_date_start'] = $this->language->get('entry_date_start');
  $this->data['entry_date_end'] = $this->language->get('entry_date_end');
  $this->data['entry_group'] = $this->language->get('entry_group');
  $this->data['entry_status'] = $this->language->get('entry_status');
  $this->data['button_filter'] = $this->language->get('button_filter');

  $this->data['token'] = $this->session->data['token'];

  $this->load->model('localisation/order_status');

  $this->data['order_statuses'] = $this->model_localisation_order_status->getOrderStatuses();
  $this->data['groups'] = array();
  $this->data['groups'][] = array(
   'text'  => $this->language->get('text_year'),
   'value' => 'year',
  );
  $this->data['groups'][] = array(
   'text'  => $this->language->get('text_month'),
   'value' => 'month',
  );
  $this->data['groups'][] = array(
   'text'  => $this->language->get('text_week'),
   'value' => 'week',
  );
  $this->data['groups'][] = array(
   'text'  => $this->language->get('text_day'),
   'value' => 'day',
  );
  $url = '';
	
  if (isset($this->request->get['filter_date_start'])) {
   $url .= '&filter_date_start=' . $this->request->get['filter_date_start'];
  }

  if (isset($this->request->get['filter_date_end'])) {
   $url .= '&filter_date_end=' . $this->request->get['filter_date_end'];
  }

  if (isset($this->request->get['filter_group'])) {
   $url .= '&filter_group=' . $this->request->get['filter_group'];
  }
  if (isset($this->request->get['filter_order_status_id'])) {
   $url .= '&filter_order_status_id=' . $this->request->get['filter_order_status_id'];
  }

  $pagination = new Pagination();
  $pagination->total = $order_total;
  $pagination->page = $page;
  $pagination->limit = $this->config->get('config_admin_limit');
  $pagination->text = $this->language->get('text_pagination');
  $pagination->url = HTTPS_SERVER . 'index.php?route=report/sale&token=' . $this->session->data['token'] . $url . '&page={page}';
  
  $this->data['pagination'] = $pagination->render();
  $this->data['filter_date_start'] = $filter_date_start;
  $this->data['filter_date_end'] = $filter_date_end;
  $this->data['filter_group'] = $filter_group;
  $this->data['filter_order_status_id'] = $filter_order_status_id;
  
  $this->template = 'report/sale.tpl';
  $this->children = array(
   'common/header',
   'common/footer'
  );

  $this->response->setOutput($this->render(TRUE), $this->config->get('config_compression'));
}
}
?>
Змінено користувачем afwollis
Надіслати
Поділитися на інших сайтах


вам явно в модель надо смотреть.

$results = $this->model_report_sale->getSaleReport($data);

там в методе не выбираются необходимые данные

Змінено користувачем afwollis
Надіслати
Поділитися на інших сайтах

  • 3 weeks later...
  • 2 weeks later...

Может кто помочь доработать Отчет по продажам? Version 0.2.0. Необходимо из общей прибыли вычесть расходы на доставку, не учитывать заказы, которые не оплачены или по ним возврат.... Если кто заинтересовался - прошу в личку (на Ваших условиях, за разумное вознаграждение).

Надіслати
Поділитися на інших сайтах


  • 1 month later...
  • 10 months later...

здравствуйте, интересует возможность вести онлайн магазин в обычном магазине. например сейчас я открываю небольшую точку о продажам, 1С туда покупать не хочется, можно ли допилить этот мод до такого состояния. чтоб вбивалась номенклатура, был приход товара. вбивалась закупочная и продажная цена и допиливание админки для менеджера продаж. Есть кто возьмется за такое и сумму уточните плиз.

Надіслати
Поділитися на інших сайтах


  • 4 weeks later...
  • 4 years later...

Створіть аккаунт або увійдіть для коментування

Ви повинні бути користувачем, щоб залишити коментар

Створити обліковий запис

Зареєструйтеся для отримання облікового запису. Це просто!

Зареєструвати аккаунт

Вхід

Уже зареєстровані? Увійдіть тут.

Вхід зараз
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.