if ($option != '' && $value != '') { // ФОрмируем строки для добавления в запрос; $options .= "`" . $option . "`" . ($key < count($options_line_temp) - 2 ? ", " : ""); $values .= "'" . $value . "'" . ($key < count($options_line_temp) - 2 ? ", " : ""); } } // Если были данные по кредиту, то нам надо сохранить их в базу; write_log($options, 'take_tech_queries_credit'); write_log($values, 'take_tech_queries_credit'); if ($options != '' && $values != '') { $sql = "INSERT INTO `take_credit` (`take_id`, `client_code`, " . $options . ") VALUES('" . $take_id . "', '" . $client_code . "', " . $values . ");"; } write_log($sql, 'take_tech_queries'); $db_rs->query($sql); // Пишем в историю заказа информацию об оплате через кредит; dvj_write($_POST['numm'], 'Заказ был оплачен в кредит'); } // Перед тем как изменить заказу статус, нам надо понять был ли ремонт. Если у нас был 11-й статус - этоь говорит о том, что // заказ ыбл без ремонта, а соответственно у нас меняются данные которые нам надо внести в базу; // Определим текущий статус заказа; $sql = "SELECT `status` FROM `remont` WHERE `numm` = '" . $_POST['numm'] . "';"; $current_status = $db->one($sql); // Если у нас была выдача без ремонта; if ($current_status == '11' || $current_status == '10') { // Если у нас была выдача без ремонта, то нам надо оставить соответствеующий маркер; ok_rem = 0; $sql = "UPDATE `remont` SET `status` = '12', `block` = '0', `ok_rem` = 0, `office` = '" . $_SESSION['office'] . "', `date2` = NOW(), `saved` = NOW(), `saveds` = NOW(), `who` = '" . $_SESSION['user_login'] . "', `dt_block` = NOW(), `place_h` = '', `garant_ex` = '1', `ignore_w` = '0', `no_list_parts` = '0', `on_credit` = '0', `is_pay_diag` = '0', `date3` = '" . $warranty_days . "' WHERE `numm` = '" . $_POST['numm'] . "';"; } else { // Теперь обновляем другую инфрмацию о заказе; ok_rem = 1; $sql = "UPDATE `remont` SET `status` = '12', `block` = '0', `ok_rem` = 1, `office` = '" . $_SESSION['office'] . "', `date2` = NOW(), `saved` = NOW(), `saveds` = NOW(), `who` = '" . $_SESSION['user_login'] . "', `dt_block` = NOW(), `place_h` = '', `garant_ex` = '1', `ignore_w` = '0', `no_list_parts` = '0', `on_credit` = '0', `is_pay_diag` = '0', `date3` = '" . $warranty_days . "' WHERE `numm` = '" . $_POST['numm'] . "';"; } write_log($sql, 'take_tech_queries');
case 'db_rs': $db_rs->query($sql); $link_var = mysqli_insert_id($db_rs->link_id); break; } } } // По завершению dvj_write($numm, 'Заказ был выдан. Детали списаны.'); dvj_write($numm, 'Номер чека оплаты за заказ: ' . $take_check); dvj_write($numm, 'Смена статуса на *Выдано клиенту*12.'); dvj_write($numm, 'Создание правила на выдачу /'); $sql = "UPDATE `couriers_later_take` SET `status` = 0 WHERE `id` = '" . $later_take_id . "';"; write_log($sql, 'later_tech_query'); $db_rs->query($sql); echo 'OK'; } /* Неудачная выдача */ if (isset($_POST['fuck_take']) && $_POST['fuck_take'] != '') { $fuck_take = $_POST['fuck_take']; $sql = "SELECT `numm` FROM `couriers_later_take` WHERE `id` = '" . $fuck_take . "';"; write_log($sql, 'fuck_take_query'); $numm = $db_rs->one($sql); dvj_write($numm, 'Неудачное вручение заказу клиенту!'); $systems->set_new_status($numm, 37); $sql = "UPDATE `couriers_later_take` SET `status` = 0 WHERE `id` = '" . $fuck_take . "';"; write_log($sql, 'fuck_take_query'); $db_rs->query($sql); echo 'OK'; } }
* Date: 30.05.2016 * Time: 15:02 */ require_once $_SERVER['DOCUMENT_ROOT'] . '/systems/connect.php'; // Номер заказа; $numm = $_POST['numm']; $html = '<div class="sub_menu_title">Диагностика и дефекты</div>'; $html .= $elements->button_icon('Назад', 'button_navigation_back', 'sub_menu_back_button', '', 'margin-top: 12px;margin-bottom: 5px;') . '<br>'; // Подгружаем в текстовое поле текст диагностики из заказа и прочими мелочами; $sql = "SELECT `diag`, `summ_det`, `a1`, `inj` FROM `remont` WHERE `numm` = '" . $numm . "';"; $diag_text = $db->row($sql); /* Если у заказа нет инженера, то нам надо его установить */ if ($diag_text['inj'] == '') { $sql = "UPDATE `remont` SET `inj` = '" . $_SESSION['user_login'] . "' WHERE `numm` = '" . $numm . "';"; $db->query($sql); dvj_write($numm, 'Был автоматом назначен инженер. (' . $_SESSION['user_login'] . ')'); } /* Как только мы открыли диагностику, заказ принимает соотвуствующий статус */ if ($systems->get_current_status($numm) != 2) { $systems->set_new_status($numm, 2); } /* Показываем неисправность */ $html .= $elements->small_title('Неисправность указанная при приеме техники'); $html .= $elements->memo('', 10, 10, 'break_text', '', $diag_text['a1'], 'disabled', 'width: 38.6em;height: 3.3em;'); /* Ввод текста диагностики */ //$html .= $elements->small_title('Результат диагностики'); //$html .= $elements->memo('', 10, 10, 'diag_text', '', $diag_text['diag'], '', 'width: 38.6em;height: 3.3em;'); $html .= '<br>'; /* Ввод набора необходимых выполняемых работ */ $html .= $elements->small_title('Добавление дефектов'); // Выбор из списка;
$sales = $part_data['sale'] - 1; $reserv = $part_data['reserv'] + 1; $sql = "UPDATE `goods_base` SET `sale` = '" . $sales . "', `reserv` = '" . $reserv . "' WHERE `index_i` = '" . $part_id . "';"; write_log($sql, 'numm_return'); $db->query($sql); // Теперь пишем в главную таблицу с остатками; $sql = "SELECT `kol` FROM `detals_m` WHERE `numm_rem` = '" . $numm . "';"; $part_count = $db->one($sql); write_log($sql, 'numm_return'); if ($_SESSION['office'] == 'marksa') { $sklad = 'marksasklad'; } else { $sklad = $_SESSION['office']; } } $sql = "DELETE FROM `goods_outk` WHERE `zakaz` = '" . $numm . "';"; write_log($sql, 'numm_return'); $db->query($sql); } } // Устанавливаем новый статус; $sql = "UPDATE `remont` SET `status` = '" . $new_status . "' WHERE `numm` = '" . $numm . "';"; write_log($sql, 'numm_return'); $db->query($sql); // Пишем в историю заказа; dvj_write($numm, '------- Административная корректировка заказа -------'); dvj_write($numm, 'Установлен новый статус: ' . $systems->get_status_name($new_status)); dvj_write($numm, 'Административный возврат заказа завершен.'); echo 'OK'; } }
public function set_new_status($numm, $status_id) { global $db; $sql = "UPDATE `remont` SET `status` = '" . $status_id . "', `saved` = NOW() WHERE `numm` = '" . $numm . "';"; $db->query($sql); $new_dvj_str = 'Смена статуса на *' . $this->get_status_name($status_id) . '*' . $status_id . "."; write_log($new_dvj_str, 'class_status_change'); dvj_write($numm, $new_dvj_str); return 'OK'; }
function dealers_table($all_orders, $dealer) { global $db, $db_rs, $elements, $systems; // Заголовок; $html = '<div style="display: inline-block; margin-right: 10px; vertical-align: top;">'; $html .= '<p class="itog_title">' . $dealer . '</p>'; // Готовим временные массивы; $time_1_status_3 = time() - 3600; $time_2_status_3 = time() - 7200; $time_1_array = array(); $time_2_array = array(); $time_3_array = array(); $special_table = array(); foreach ($all_orders as $all_orders_array) { $order_numm = $all_orders_array['numm']; $order_status = $all_orders_array['status']; $order_datetime = $all_orders_array['saved']; $order_summ = $all_orders_array['summa']; /* * Здесь у нас блок временной корректтировки заказов; * */ switch ($order_status) { /* * Новая концепция сдвигов по ТЗ от Данила; * */ case '8': case '41': $order_datetime = date('d.m.Y 10:00:00', strtotime("+1 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); break; case '9': case '26': $order_datetime = date('d.m.Y 11:00:00', strtotime("+1 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); break; case '52': case '55': $order_datetime = date('d.m.Y 14:00:00', strtotime("+1 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); break; case '25': $order_datetime = date('d.m.Y 10:00:00', strtotime("+5 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); break; case '46': $order_datetime = date('d.m.Y 10:00:00', strtotime("+10 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); break; case '53': $order_datetime = date('d.m.Y 14:00:00', strtotime("+5 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); break; case '56': $order_datetime = date('d.m.Y 15:00:00', strtotime("+5 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); break; case '27': $order_datetime = date('d.m.Y 12:00:00', strtotime("+1 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); // Подсчет количества раз смены статуса; $current_dvj = $all_orders_array['dvj']; $status_count = only_dvj_parse($current_dvj, array($order_status)); if ($status_count >= 3 && round_math($status_count, 3) == 1) { // Меняем статус на более далекий; $new_status = '28'; // Надо проверить если заказ в 12-м статусе (внезапно) ему не нужно менять статус; $sql = "SELECT `status` FROM `remont` WHERE `numm` = '" . $order_numm . "';"; $exist_status = $db->one($sql); if ($exist_status != '12') { // Получаем текст будущего статуса; $sql = "SELECT `name` FROM `status` WHERE `id` = '" . $new_status . "';"; $status_name = $db_rs->one($sql); dvj_write($order_numm, 'Автосмена статуса на *' . $status_name . '*' . $new_status . '.'); $sql = "UPDATE `remont` SET `status` = '" . $new_status . "' WHERE `numm` = '" . $order_numm . "';"; $db->query($sql); } } break; case '28': $order_datetime = date('d.m.Y 12:00:00', strtotime("+10 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); // Подсчет количества раз смены статуса; $current_dvj = $all_orders_array['dvj']; $status_count = only_dvj_parse($current_dvj, array($order_status)); if ($status_count >= 4 && round_math($status_count, 4) == 1) { // Меняем статус на более далекий; $new_status = '58'; // Надо проверить если заказ в 12-м статусе (внезапно) ему не нужно менять статус; $sql = "SELECT `status` FROM `remont` WHERE `numm` = '" . $order_numm . "';"; $exist_status = $db->one($sql); if ($exist_status != '12') { // Получаем текст будущего статуса; $sql = "SELECT `name` FROM `status` WHERE `id` = '" . $new_status . "';"; $status_name = $db_rs->one($sql); dvj_write($order_numm, 'Автосмена статуса на *' . $status_name . '*' . $new_status . '.'); $sql = "UPDATE `remont` SET `status` = '" . $new_status . "' WHERE `numm` = '" . $order_numm . "';"; $db->query($sql); } } break; case '42': $order_datetime = date('d.m.Y 10:00:00', strtotime("+1 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); // Подсчет количества раз смены статуса; $current_dvj = $all_orders_array['dvj']; $status_count = only_dvj_parse($current_dvj, array($order_status)); if ($status_count >= 3 && round_math($status_count, 3) == 1) { // Меняем статус на более далекий; $new_status = '43'; // Надо проверить если заказ в 12-м статусе (внезапно) ему не нужно менять статус; $sql = "SELECT `status` FROM `remont` WHERE `numm` = '" . $order_numm . "';"; $exist_status = $db->one($sql); if ($exist_status != '12') { // Получаем текст будущего статуса; $sql = "SELECT `name` FROM `status` WHERE `id` = '" . $new_status . "';"; $status_name = $db_rs->one($sql); dvj_write($order_numm, 'Автосмена статуса на *' . $status_name . '*' . $new_status . '.'); $sql = "UPDATE `remont` SET `status` = '" . $new_status . "' WHERE `numm` = '" . $order_numm . "';"; $db->query($sql); } } break; case '43': $order_datetime = date('d.m.Y 10:00:00', strtotime("+10 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); // Подсчет количества раз смены статуса; $current_dvj = $all_orders_array['dvj']; $status_count = only_dvj_parse($current_dvj, array($order_status)); if ($status_count >= 4 && round_math($status_count, 4) == 1) { // Меняем статус на более далекий; $new_status = '62'; // Надо проверить если заказ в 12-м статусе (внезапно) ему не нужно менять статус; $sql = "SELECT `status` FROM `remont` WHERE `numm` = '" . $order_numm . "';"; $exist_status = $db->one($sql); if ($exist_status != '12') { // Получаем текст будущего статуса; $sql = "SELECT `name` FROM `status` WHERE `id` = '" . $new_status . "';"; $status_name = $db_rs->one($sql); dvj_write($order_numm, 'Автосмена статуса на *' . $status_name . '*' . $new_status . '.'); $sql = "UPDATE `remont` SET `status` = '" . $new_status . "' WHERE `numm` = '" . $order_numm . "';"; $db->query($sql); } } break; case '47': $order_datetime = date('d.m.Y 11:00:00', strtotime("+1 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); // Подсчет количества раз смены статуса; $current_dvj = $all_orders_array['dvj']; $status_count = only_dvj_parse($current_dvj, array($order_status)); if ($status_count >= 3 && round_math($status_count, 3) == 1) { // Меняем статус на более далекий; $new_status = '48'; // Надо проверить если заказ в 12-м статусе (внезапно) ему не нужно менять статус; $sql = "SELECT `status` FROM `remont` WHERE `numm` = '" . $order_numm . "';"; $exist_status = $db->one($sql); if ($exist_status != '12') { // Получаем текст будущего статуса; $sql = "SELECT `name` FROM `status` WHERE `id` = '" . $new_status . "';"; $status_name = $db_rs->one($sql); dvj_write($order_numm, 'Автосмена статуса на *' . $status_name . '*' . $new_status . '.'); $sql = "UPDATE `remont` SET `status` = '" . $new_status . "' WHERE `numm` = '" . $order_numm . "';"; $db->query($sql); } } break; case '48': case '49': $order_datetime = date('d.m.Y 14:00:00', strtotime("+10 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); // Подсчет количества раз смены статуса; $current_dvj = $all_orders_array['dvj']; $status_count = only_dvj_parse($current_dvj, array($order_status)); if ($status_count >= 4 && round_math($status_count, 4) == 1) { // Меняем статус на более далекий; if ($order_status == '48') { $new_status = '59'; } if ($order_status == '49') { $new_status = '61'; } // Надо проверить если заказ в 12-м статусе (внезапно) ему не нужно менять статус; $sql = "SELECT `status` FROM `remont` WHERE `numm` = '" . $order_numm . "';"; $exist_status = $db->one($sql); if ($exist_status != '12') { // Получаем текст будущего статуса; $sql = "SELECT `name` FROM `status` WHERE `id` = '" . $new_status . "';"; $status_name = $db_rs->one($sql); dvj_write($order_numm, 'Автосмена статуса на *' . $status_name . '*' . $new_status . '.'); $sql = "UPDATE `remont` SET `status` = '" . $new_status . "' WHERE `numm` = '" . $order_numm . "';"; $db->query($sql); } } break; case '54': case '57': $order_datetime = date('d.m.Y 15:00:00', strtotime("+10 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); // Подсчет количества раз смены статуса; $current_dvj = $all_orders_array['dvj']; $status_count = only_dvj_parse($current_dvj, array($order_status)); if ($status_count >= 4 && round_math($status_count, 4) == 1) { // Меняем статус на более далекий; if ($order_status == '54') { $new_status = '60'; } if ($order_status == '57') { $new_status = '62'; } // Надо проверить если заказ в 12-м статусе (внезапно) ему не нужно менять статус; $sql = "SELECT `status` FROM `remont` WHERE `numm` = '" . $order_numm . "';"; $exist_status = $db->one($sql); if ($exist_status != '12') { // Получаем текст будущего статуса; $sql = "SELECT `name` FROM `status` WHERE `id` = '" . $new_status . "';"; $status_name = $db_rs->one($sql); dvj_write($order_numm, 'Автосмена статуса на *' . $status_name . '*' . $new_status . '.'); $sql = "UPDATE `remont` SET `status` = '" . $new_status . "' WHERE `numm` = '" . $order_numm . "';"; $db->query($sql); } } break; /* Остатки старого сдвига по времени - либо не описанные статусы */ /* * Сдвиг отображения на 1 день; * */ /* Остатки старого сдвига по времени - либо не описанные статусы */ /* * Сдвиг отображения на 1 день; * */ case '45': case '50': $order_datetime = date('d.m.Y 12:00:00', strtotime("+1 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); // Костыльный алгоримт смещения статуса автоматически, если не мы имели статус 27.42.45 - 7 и более раз; $current_dvj = $all_orders_array['dvj']; $status_count = only_dvj_parse($current_dvj, array($order_status)); if ($status_count >= 7 && round_math($status_count, 7) == 1) { // Меняем статус на более далекий; $new_status = ''; if ($order_status == '45') { $new_status = '46'; } // Надо проверить если заказ в 12-м статусе (внезапно) ему не нужно менять статус; $sql = "SELECT `status` FROM `remont` WHERE `numm` = '" . $order_numm . "';"; $exist_status = $db->one($sql); if ($exist_status != '12') { // Получаем текст будущего статуса; $sql = "SELECT `name` FROM `status` WHERE `id` = '" . $new_status . "';"; $status_name = $db_rs->one($sql); dvj_write($order_numm, 'Автосмена статуса на *' . $status_name . '*' . $new_status . '.'); $sql = "UPDATE `remont` SET `status` = '" . $new_status . "' WHERE `numm` = '" . $order_numm . "';"; $db->query($sql); } } break; /* * Сдвиг на 7 дней; * */ /* * Сдвиг на 7 дней; * */ case '51': $order_datetime = date('d.m.Y 12:00:00', strtotime("+7 day", strtotime(date('d.m.Y', strtotime($order_datetime))))); // Костыльный алгоримт смещения статуса автоматически, если не мы имели статус 27.42.45 - 7 и более раз; $current_dvj = $all_orders_array['dvj']; $status_count = only_dvj_parse($current_dvj, array($order_status)); // Если мы больше 4-х раз переносили на неделю, значит нам пора перемещать заказ в архив; // Проверяем, прошли ли у нас равные отрезки времени; if ($status_count >= 4 && round_math($status_count, 4) == 1) { // Меняем статус на более далекий; $new_status = 70; // Надо проверить если заказ в 12-м статусе (внезапно) ему не нужно менять статус; $sql = "SELECT `status` FROM `remont` WHERE `numm` = '" . $order_numm . "';"; $exist_status = $db->one($sql); if ($exist_status != '12') { // Получаем текст будущего статуса; $sql = "SELECT `name` FROM `status` WHERE `id` = '" . $new_status . "';"; $status_name = $db_rs->one($sql); dvj_write($order_numm, 'Автосмена статуса на *' . $status_name . '*' . $new_status . '.'); $sql = "UPDATE `remont` SET `status` = '" . $new_status . "' WHERE `numm` = '" . $order_numm . "';"; $db->query($sql); } } break; } // Что будем добавлять в массивы; // Проверяем суммы; $numm_item = '<div style="display: inline-block;' . ($order_summ >= 5000 ? 'font-weight: bold;' : '') . '" class="numm_info">' . $order_numm . '</div>'; // Так как у нас есть отдельная таблица, мы в отдельный массив будем собирать данные; switch ($order_status) { // Эти статусы отправляются в отдельную таблицу для аналитики пиздеца; case '13': case '50': case '51': case '14': case '15': case '20': case '24': case '17': $special_table[] = $order_numm; break; default: /* * Обработка временных разделений на 3 блока приоритета; * */ if (strtotime($order_datetime) >= $time_1_status_3) { if (strtotime($order_datetime) <= strtotime(date('d.m.Y H:i:s'))) { $time_1_array[] = $numm_item; //'('.$order_status.') - '. $order_datetime; } } if (strtotime($order_datetime) >= $time_2_status_3 && strtotime($order_datetime) <= $time_1_status_3) { if (strtotime($order_datetime) <= strtotime(date('d.m.Y H:i:s'))) { $time_2_array[] = $numm_item; // '(' . $order_status . ') - ' . $order_datetime; } } if (strtotime($order_datetime) <= $time_2_status_3) { if (strtotime($order_datetime) <= strtotime(date('d.m.Y H:i:s'))) { $time_3_array[] = $numm_item; // '(' . $order_status . ') - ' . $order_datetime; // Проблемные документы добавляем в черный лист; $systems->black_journal(basename($_SERVER['SCRIPT_NAME'], ".php"), $order_numm); } } break; } } /* * Собрав данные, выводим их исходя из роли пользователя; * */ $html .= call_center_table($time_1_array, $time_2_array, $time_3_array); /* * Так же некоторым пользователям надо выводить дополнительную таблицу; * */ if ($_SESSION['department_id'] == 2 || $_SESSION['department_id'] == 12 || $_SESSION['user_login'] == 'N') { $html .= '<br><br>'; $html .= $elements->small_title('Таблица проблемных заказов (' . count($special_table) . ')'); $html .= call_option_table($special_table); } $html .= '</div>'; return $html; }
write_log($sql, 'take_tech_queries'); write_log($sql, 'take_tech_queries', '1'); if ($take_type == 'simple_take') { $db->query($sql); } else { $late_take_query_array[]['db'] = $sql; } if ($take_type == 'courier_take') { // Записывает отложенные запросы; $save_array = json_encode($late_take_query_array); write_log(print_r($save_array, true), 'courier_later_take'); $sql = "INSERT INTO `couriers_later_take` (`numm`, `user_id`, `query_json`, `take_date`, `status`) VALUES('" . $numm . "', '" . $_SESSION['user_id'] . "', '" . urlencode($save_array) . "', NOW(), '1');"; $db_rs->query($sql); // Отмечаем у заказа что у нас отложенная выдача и меняем ему статус; $systems->set_new_status($numm, 34); dvj_write($numm, 'Отложенная выдача заказа. Доставка курьером.'); $sql = "UPDATE `remont` SET `date3` = '" . $warranty_days . "', `office` = '" . $_SESSION['office'] . "' WHERE `numm` = '" . $numm . "';"; $db->query($sql); } if (isset($print_rko_id) && $discount == '1') { echo $print_rko_id; } else { echo 'OK'; } } // Получаем стоимсоть ремонтных работ; if (isset($_POST['get_price']) && $_POST['get_price'] != '') { // Массив который мы убдем возвращать; $result_array = array(); // Отвечаем не только ценой но и тем, был ли заказ принят по гарантии; $predy_numm = $systems->numm_predy($_POST['get_price']);
$db->query($sql); dvj_write($numm, 'Главный инженер подтвердил смену инженера у заказа: ' . get_user_full_name('', $want_kompl) . '->' . get_user_full_name('', $want_kolvs)); echo 'OK'; } /* Когда главный инженер принудительно меняет инежнера */ if (isset($_POST['full_inj_change']) && $_POST['full_inj_change'] != '') { $numm = $_POST['full_inj_change']; $new_inj = $_POST['new_inj']; // Получаем логин инженера; $new_inj_login = get_user_login($new_inj); $new_inj_full_name = get_user_full_name($new_inj); $current_inj = $systems->get_inj_user_id_in_numm($numm); $current_inj_full_name = get_user_full_name($current_inj); $sql = "UPDATE `remont` SET `inj` = '" . $new_inj_login . "', `kolvs` = '', `kompl` = '' WHERE `numm` = '" . $numm . "';"; $db->query($sql); dvj_write($numm, 'Главный инженер сделал принудительную смену инженера. ' . $current_inj_full_name . ' -> ' . $new_inj_full_name); echo 'OK'; } /* Пагинация */ if (isset($_POST['get_pagination_data']) && $_POST['get_pagination_data'] != '') { // Маркер сессии; $marker = $_POST['marker']; // Полный запрос; $sql = $_SESSION['pagination_' . $marker]; // Номер страницы; $page_num = $_POST['page_num']; // Старнтовый документв пагинации; if ($page_num == 'Все') { $limit_str = " "; } else { $page_start = $page_num * $max_docs_count_on_page - $max_docs_count_on_page;
$status_text = $db_rs->one($sql); // Обновляем статус заказа; $sql = "UPDATE `remont` SET `status` = '" . $new_status . "' WHERE `numm` = '" . $numm . "';"; write_log($sql, 'db_otk'); $db->query($sql); // И пишем в DVJ и результатах прохождени ОКТ; if ($otk_ok == 1) { dvj_write($numm, 'Аппарат прошёл ОТК'); echo 'OK'; } else { dvj_write($numm, 'Аппарат НЕ прошёл ОТК'); echo 'NO'; } //$new_dvj_str = 'Смена статуса через ОТК на *' . $status_text . '*' . $_POST['status']."."; $new_dvj_str = 'Смена статуса на *' . $status_text . '*' . $new_status . "."; dvj_write($numm, $new_dvj_str); } /* Проверка номера зкакза на валидность */ if (isset($_POST['check_numm_valid']) && $_POST['check_numm_valid'] != '') { $sql = "SELECT `numm` FROM `remont` WHERE `numm` = '" . $_POST['check_numm_valid'] . "';"; $exist_numm = $db->one($sql); if ($exist_numm == '') { echo 'FAIL'; } else { echo 'OK'; } } // Получим данные дефекта; if (isset($_POST['get_defect_data']) && $_POST['get_defect_data']) { $sql = "SELECT `defect`, `price`, `repair_time` FROM `defects` WHERE `id` = '" . $_POST['get_defect_data'] . "';"; write_log($sql, 'add_defect_from_list');
} /** Блок для тестов */ /* $print_type = 'numm'; $doc_numm = $_POST['numm']; $doc_numm = 151104; */ // Надо обязхательно зафиксировать факт печать такого таклона; if ($print_type == 'numm') { // Если у нас заказ, то нам надо забрать данные для заказа; $sql = "UPDATE `remont` SET `printed` = (`printed` + 1) WHERE `numm` = '" . $doc_numm . "';"; $db->query($sql); // Так же в истории заказа зафиксируем факт печать талона; dvj_write($doc_numm, 'Печать талона на прием заказа!'); /* Получаем данные по заказу */ $sql = "SELECT * FROM `remont` WHERE `numm` = '" . $doc_numm . "';"; $numm_data = $db->row($sql); /* Получаем код клоиента для проверки статуса заказа на сайте */ $sql = "SELECT CONCAT(`prefix_ap`, `code`) as `client_code` FROM `kontr` WHERE `code` = '" . $numm_data['kod'] . "'"; $client_code = $db->one($sql); /* Согласился ли клиент на обработку его данных */ $sql = "SELECT `can_send_sms` FROM `handlings` WHERE `numm` = '" . $doc_numm . "';"; $can_send_sms = $db_rs->one($sql); } if ($print_type == 'handling') { // Если у нас печатаетс яобращние, то и поля нам нужны в ограниченном варианте; $sql = "SELECT `id`, `client_fam`, `client_name`, `client_otch`, `client_phone`, `client_tech_type`, `client_tech_producer`, `client_tech_model`, `client_tech_sn`, `can_send_sms` FROM `handlings` WHERE `id` = '" . $doc_numm . "'"; $temp_handling_data = $db_rs->row($sql); // Нам надо получить код клиента для печати
<?php /** * Created by PhpStorm. * User: admin64 * Date: 23.01.2016 * Time: 13:30 */ // Подключение к базе данных; require_once $_SERVER['DOCUMENT_ROOT'] . '/systems/connect.php'; // Запись в dvjж if (isset($_POST['write_dvj']) && $_POST['write_dvj'] != '') { write_log('1', 'dvj_write'); write_log($_POST['write_dvj'], 'dvj_write'); write_log($_POST['text'], 'dvj_write'); dvj_write($_POST['write_dvj'], $_POST['text']); write_log('2', 'dvj_write'); echo 'OK'; die; } // Функция сохранения аватар пользователя; if (isset($_POST['save_user_avatar']) && $_POST['save_user_avatar'] != '') { // Генерируем уникальный номер аватарам; $avatar_id = rand(100000, 999999); // Поулчив уникальный номер аватара добавляем данные о нем в базe; // Проверяем если ли у польозвателя уже настройки; $sql = "SELECT `id` FROM `users_settings` WHERE `user` = '" . $_SESSION['user_login'] . "';"; $exist_settings = $db_rs->one($sql); if ($exist_settings == '') { // Если настроек нет - добавляем их; $sql = "INSERT INTO `users_settings` (`user`, `avatar`) VALUES('" . $_SESSION['user_login'] . "', '" . $avatar_id . "')";