function actionClose($oid) { $today = date('Y-m-d', strtotime('today')); //получить данные о рекламациях $con = Order::getOrderById($oid); $noer = 1; if (!Datas::isRekl($con['contract'])) { $allrekl = Order::getOrdersLikeParam('contract', $con['contract']); foreach ($allrekl as $order) { $rekl = Datas::isRekl($order['contract']); $stan = OrderStan::getOrdersByPole('oid', $order['id']); if ($stan[$order['id']]['sborka_end'] == 0 && $rekl == 1) { $noer = 0; } } } if ($noer == 1) { $res1 = OrderStan::updateStanByParam('sborka_end_date', $today, $oid); $res2 = OrderStan::updateStanByParam('sborka_end', '2', $oid); echo $res1 && $res2; // echo $noer; } else { echo $noer; } return true; }
function actionPlan() { $ri = $_COOKIE['ri']; $log = $_COOKIE['login']; if (!isset($ri)) { header('Location: /' . SITE_DIR . '/auth/showAuth'); } //список сборщиков $userList = User_post::getUsersByPost(17); $sborList = array(); foreach ($userList as $uid) { $datasb = Users::getUserById($uid['uid']); if ($datasb['operative'] == 1) { $abr = Datas::nameAbr($datasb['name']); $sborList[$datasb['id']] = $abr; } } //поставить в план $in_plan = array(); //незакрытые $in_process = array(); //тетрадь сборок $ass_list = array(); $ass = OrderStan::getOrdersByPole('sborka_end', '0'); foreach ($ass as $key => $value) { $moun = Mounting::getMountByPole('oid', $key); $orders = Order::getOrderById($key); if (!$moun && $orders) { $in_plan[$key] = array('con' => $orders['contract']); } foreach ($moun as $mont) { if ($mont['uid'] != '0') { $sbname = $sborList[$mont['uid']]; } else { $sbname = ''; } if ($mont['m_date'] == '0000-00-00') { $in_plan[$key] = array('con' => $orders['contract'], 'sbname' => $sbname); } else { $ass_list[$mont['m_date']][] = array('oid' => $key, 'con' => $orders['contract'], 'adress' => $orders['adress'], 'sbname' => $sbname); //список сборщиков выходных $coll_hol[$mont['m_date']] = Freemen::getFreemen($mont['m_date']); } } $last_mount = Mounting::getMountingLast($key); if ($last_mount) { $in_process[$key] = array('con' => $orders['contract'], 'sbname' => $last_mount['uid']); } } ksort($ass_list); //список выходных с сегодняшнего дня $free = Freemen::getFreeDays(); foreach ($free as $i => $one) { $free[$i]['name'] = $sborList[$one['uid']]; $free[$i]['cpdate'] = date('d.m', strtotime($one['date'])); } $page = SITE_PATH . 'views/mounting.php'; // $page = SITE_PATH.'views/assembly.php'; include SITE_PATH . 'views/layout.php'; return true; }
function actionIndex($oid) { $ri = $_COOKIE['ri']; $log = $_COOKIE['login']; if (!isset($ri)) { header('Location: /' . SITE_DIR . '/auth/showAuth'); } $zagol = array('Просчет', 'Материал', 'Распил', 'ЧПУ', 'Кромка', 'Присадка', 'Гнутье', 'Эмаль', 'ПВХ', 'Фотопечать', 'Пескоструй', 'Витраж', 'oracal', 'Фасады', 'Упакован', 'Отгружен'); $db = array("tech_end", "mater", "raspil", "cpu", "kromka", "pris_end", "gnutje", "emal", "pvh", "photo", "pesok", "vitrag", "oracal", "fas", "upak_end", "otgruz_end"); $order = Order::getOrderById($oid); $order_stan = OrderStan::getOrdersByPole('oid', $oid); $stan = $order_stan[$oid]; $us_dis = Users::getUserById($order['designer']); $dis = $us_dis['name']; $us_tech = Users::getUserById($order['technologist']); $tech = $us_tech['name']; //сборщик $mount = Mounting::getMountingLast($oid); if (!$mount) { $coll = ''; $date_mount = ''; $m_phone = ''; } else { $coll_id = $mount['uid']; $user = Users::getUserById($coll_id); $coll = $user['name']; $m_phone = $user['tel']; $date_mount = date("d.m.y", strtotime($mount['m_date'])); } //шаблоны смс $sample = Sms::getSamples(); $search = array('%name%', '%con%', '%date%', '%m_date%', '%collector%', '%phone%'); $replace = array($order['name'], $order['contract'], date("d.m.y", strtotime($stan['plan'])), $date_mount, $coll, $m_phone); foreach ($sample as $key => $sampleone) { $str = $sampleone['text_sms']; $newstr = str_replace($search, $replace, $str); $sample[$key]['text_sms'] = $newstr; } $notes = Notes::getNotesByOid($oid); if (isset($_POST['sendsms'])) { $phone = $_POST['phone']; $message = $_POST['message']; $sms = Sms::send($phone, $message); $errorsms = array(); switch ($sms) { case 100: $errorsms[] = 'Сообщение отправлено'; Sms::save($oid, $message); break; case 201: $errorsms[] = 'Не хватает средств на лицевом счету'; break; case 202: $errorsms[] = 'Неправильно указан получатель'; break; case 203: $errorsms[] = 'Нет текста сообщения'; break; case 205: $errorsms[] = 'Сообщение слишком длинное (превышает 8 СМС)'; break; case 206: $errorsms[] = 'Будет превышен или уже превышен дневной лимит на отправку сообщений'; break; case 207: $errorsms[] = 'На этот номер (или один из номеров) нельзя отправлять сообщения'; break; case 220: $errorsms[] = 'Сервис временно недоступен, попробуйте чуть позже'; break; default: $errorsms[] = 'Сообщение не отправлено, обратитесь к администратору'; } } $page = SITE_PATH . 'views/order.php'; include SITE_PATH . 'views/layout.php'; return true; }
function actionChangeDateStan() { $oid = $_POST['oid']; $pole = $_POST['pole']; $poledb = $this->arr_stan_date[$pole]; $date = $_POST['date']; $datedb = preg_replace('/(\\d{1,2})\\.(\\d{1,2})\\.(\\d{4})/', '\\3-\\2-\\1', $date); $resget = OrderStan::getOrdersByPole('oid', $oid); if ($resget[$oid][$poledb] == '0000-00-00') { $res = OrderStan::updateStanByParam($poledb, $datedb, $oid); } else { $res = $resget[$oid][$poledb]; } echo $res; return true; }