$cash_box = $db_rs->all($sql); if (isset($_POST['date_from']) && isset($_POST['date_to'])) { $html .= get_analytic_report($cash_box, $_SESSION['office'], $_POST['date_from'], $_POST['date_to']); } else { $html .= get_analytic_report($cash_box, $_SESSION['office']); } } echo $html; die; } // Пересчет одного z-отчета; if (isset($_POST['update_z_report']) && $_POST['update_z_report'] != '') { $html = ''; $sql = "SELECT * FROM `z-reports` WHERE `id` = '" . $_POST['update_z_report'] . "' ORDER BY `date` DESC;"; $z_report_data = $db_rs->row($sql); calc_cash_day($z_report_data['kassa_id'], $z_report_data['id'], date('Y-m-d', strtotime($z_report_data['date']))); $result = get_z_report_table($z_report_data['kassa_id'], $z_report_data); $html .= $result['result']; echo $html; die; } // фУНКЦИЯ ФОРМИРОВАНИЯ ОТЧЕТА АНАЛИТИЧЕСКОГО; function get_analytic_report($cash_box, $office, $date_from = '', $date_to = '') { global $db_rs; $html = ''; foreach ($cash_box as $cash) { if ($date_from != '' && $date_to != '') { $sql = "SELECT * FROM `z-reports` WHERE `kassa_id` = '" . $cash['id'] . "' AND date(`date`) BETWEEN date('" . $date_from . "') AND ('" . $date_to . "') ORDER BY `date` DESC;"; } else { $sql = "SELECT * FROM `z-reports` WHERE `kassa_id` = '" . $cash['id'] . "' ORDER BY `date` DESC;";
// Номер Z отчета; $z_number = $_POST['z_number']; // Сумма по Z отчету; $z_sum = $_POST['z_sum']; // Поулчаем ID оператора; $sql = "SELECT `id`, `open_day_sum` FROM `kassa_operators` WHERE `kassa_id` = '" . $kassa_id . "' AND date(`date`) = date('" . calc_last_kassa_cash_day($kassa_id) . "');"; $operator_data = $db_rs->row($sql); $operator_id = $operator_data['id']; $open_day_sum = $operator_data['open_day_sum']; // Вносим данные в базу данных; if ($_SESSION['user_login'] == 'root' && $_SESSION['department_id'] != 12) { $operator_id = '1'; } // Перед тем как мы закроем смену и создадим з-отчет в базе, нам надо посчитать данные самим, и сравнить эти данные с пользователем; // Сфитаем данные сами и сравниваем с данными пользователя; $system_z_report_data = calc_cash_day($kassa_id); write_log(print_r($system_z_report_data, true), 'close_od'); // ФОрмируем массив из полученных данных; $user_z_report_data = array('count_check' => $_POST['count_check'], 'count_beznal' => $_POST['count_beznal'], 'count_rko' => $_POST['count_rko'], 'count_pko' => $_POST['count_pko'], 'z_sum' => $_POST['z_sum'], 'beznal_sum' => $_POST['beznal_sum'], 'count_credit' => $_POST['count_credit'], 'close_day_sum' => $_POST['close_day_sum'], 'open_day_sum' => $open_day_sum); write_log(print_r($user_z_report_data, true), 'close_od'); // Сравниваем два массива и записываем данные в базу; /* $close_result = "OK"; foreach($system_z_report_data as $key => $system_data){ if ($user_z_report_data[$key] != $system_z_report_data[$key]){ $close_result = "FALSE"; } }*/ $diff_array = array_diff_assoc($system_z_report_data, $user_z_report_data); if (count($diff_array) > 0) { $close_result = "FALSE"; } else {