static public function createdironserver($filelink) { $filelink = self::normalizefile($filelink); list($disk, $path) = explode(":", $filelink); $serpath = SHARE_ROOT_DIR . strtolower($disk) . "/"; $dirs = explode("\\", $path); $filename = $dirs[count($dirs) - 1]; unset($dirs[count($dirs) - 1]); $dir = $serpath; $cats = ''; foreach ($dirs as $cat) { if (!empty($cat)) { $cats .= $cat . "/"; $dir = multibyte::UTF_encode($serpath . $cats); if (!is_dir($dir)) { mkdir($dir); chmod($dir, 0777); } } } return $dir . multibyte::UTF_encode($filename); }
public function storeFiles($files = false, $dir = '') { if ($files) { // файл если есть сохраним $curfile = array(); foreach ($files as $file) { if (!empty($file[size])) { $pathname = $_SERVER["DOCUMENT_ROOT"] . UPLOAD_FILES_DIR . "/" . multibyte::UTF_encode($dir); if (!file_exists($pathname)) { // содать каталог @mkdir($pathname, 0777); } $filename = $pathname . "/" . multibyte::UTF_encode($file["name"]); $i = 0; while (file_exists($filename)) { $i++; $filename = $pathname . "/{$i}_" . multibyte::UTF_encode($file["name"]); } if (@move_uploaded_file($file["tmp_name"], $filename)) { // переместилось удачно @chmod($filename, 0777); $filename = multibyte::UTF_decode($filename); $curfile[$this->getFileId($filename)] = 1; // сделаем структуру как уже существующие } else { return false; } } } return $curfile; } else { return array(); } }
public function getSlMpp($rec) { extract($rec); // получить данные в переменные $sql = "SELECT\r\n blockname AS board_name,\r\n CONCAT(orders.number,CONCAT(' от ',CONCAT(DATE_FORMAT(orderdate,'%d.%m.%Y'),CONCAT(' - ',CONCAT(posintz.numbers,' шт.'))))) AS letter,\r\n fullname AS customerfullname,\r\n posintz.numbers AS numbers,\r\n drlname AS frezfile,\r\n scomp AS copperc,\r\n ssolder AS coppers,\r\n CONCAT(CEIL(blocks.sizex),CONCAT('x',CEIL(blocks.sizey))) AS sizez,\r\n priem,\r\n tz.id as tzid,\r\n blocks.id AS block_id,\r\n customers.id AS customer_id,\r\n blocks.comment_id AS comment_id1,\r\n posintz.comment_id AS comment_id2,\r\n posintz.posintz AS posintz\r\n\r\n FROM posintz\r\n JOIN (customers,blocks,tz,\r\n orders)\r\n ON (blocks.id=posintz.block_id\r\n AND customers.id=orders.customer_id\r\n AND posintz.tz_id=tz.id\r\n AND tz.order_id=orders.id\r\n )\r\n WHERE posintz.id='{$posid}'"; $rs = sql::fetchOne($sql); $rs = multibyte::UTF_encode($rs); $rec = array_merge($rec, $rs); extract($rs); $param = json_decode(multibyte::Unescape(sqltable_model::getComment($comment_id1)), true); if (empty($param)) { $param = array(); } // если коментарий не JSON или неправильный JSON $rec[customerfullname] = html_entity_decode($rec[customerfullname]); // кавычки в названии $rec = array_merge($rec, $param); $rec[mkrfile] = "{$rec[frezfile]}.{$param[filext]}"; $rec[comment1] = multibyte::UTF_encode($param["coment"]); $rec[comment2] = sqltable_model::getComment($comment_id2); $sql = "SELECT *, board_name AS boardname, sizex AS psizex,\r\n sizey AS psizey\r\n FROM blockpos\r\n JOIN (boards)\r\n ON (boards.id=blockpos.board_id)\r\n WHERE blockpos.block_id='{$block_id}'"; $res = sql::fetchOne($sql); extract($res); $platonblock = $res[nib]; $tolsh = $res[thickness]; $rec[sizep] = sprintf("%5.1fx%5.1f", $res[sizex], $res[sizey]); $mask = $res[mask]; $mark = $res[mark]; $rec = array_merge($rec, compact('platonblock', 'numlam', 'rmark', 'immer', 'mask', 'layers', 'mark', 'commentp')); if ($customer_id == '8') { // радар $zagotinparty = 1; } else { $zagotinparty = 5; } $rec[zagotinparty] = $zagotinparty; if ($dozap === true) { $zagotovokvsego = ceil($dozapnumbers / $platonblock); $zag = $zagotovokvsego; $ppart = $dozapnumbers; $numpl1 = $numbers = $dozapnumbers; $part = -2; //$party; } elseif ($dozap == "zadel") { $part = -1; $zagotovokvsego = ceil($dozapnumbers["use"] / $platonblock); $zag = $zagotovokvsego; $ppart = $dozapnumbers["use"]; $numpl1 = $numbers = $dozapnumbers["use"]; } else { // в дозапуске указано сколько запускать в реале $zagotovokvsego = ceil($dozap / $platonblock); // общее количество заготовок + 15% потом может быть $zag = $party * $zagotinparty >= $zagotovokvsego ? $zagotovokvsego - ($party - 1) * $zagotinparty : $zagotinparty; $ppart = ceil($zagotovokvsego / $zagotinparty) > 1 ? isset($last) ? $numbers - (ceil($numbers / $platonblock / $zagotinparty) - 1) * $platonblock * $zagotinparty . "({$numbers})" : $zag * $platonblock . "({$numbers})" : $numbers; } $rec[last] = ceil($zagotovokvsego / $zagotinparty) <= $party; // реорганизуем для запонения сл одной строчкой $rec[number] = sprintf("%08d", $lanch_id); $platonblock = $zagotovokvsego * $platonblock; $rec[numonzag] = "{$rec[platonblock]} ({$platonblock})"; $rec[znumbers] = "{$zag} ({$zagotovokvsego})"; $rec[marktype] = stristr($rec[mark], multibyte::UTF_encode('PR')) ? multibyte::UTF_encode('Маркировка на PRINTARе') : multibyte::UTF_encode('Фотомаркировка'); $rec[phm1] = strstr($rec[mark], '1') || strstr($rec[mark], '2') ? "+" : "-"; $rec[phm2] = strstr($rec[mark], '2') ? "+" : "-"; $rec[rmark] = $rec[rmark] == '1' ? "+" : "-"; $rec[sizex] = ceil($rec[sizex]); $rec[sizey] = ceil($rec[sizey]); $rec[dataz] = date("d.m.Y"); $rec[tolsh] = $tolsh; $rec[spm] = strstr($rec[mask], multibyte::UTF_encode('КМ')) ? "+" : "-"; $rec[zhpm] = strstr($rec[mask], multibyte::UTF_encode('ЖМ')) ? "+" : "-"; $rec[immer] = $rec[immer] == '1' ? "+" : "-"; $rec[priempz] = strstr($priem, multibyte::UTF_encode('ПЗ')) ? "+" : "-"; $rec[priemotk] = '+'; // всегда $rec[copperc] = sprintf("%3.2f", $rec[copperc] / 10000); $rec[coppers] = sprintf("%3.2f", $rec[coppers] / 10000); $rec[lamel] = $rec[numlam] > 0 ? "+" : "-"; // прокоментируем сопроводительный лист $rec[dozapcoment] = $rec[dozap] === true ? multibyte::UTF_encode('ДОЗАПУСК') : ($rec[dozap] == "zadel" ? multibyte::UTF_encode('ИЗ ЗАДЕЛА') : ''); $rec[comment] = $rec[comment1] . " " . $rec[comment2] . " " . $rec[dozapcoment]; $rec = array_merge($rec, compact('ppart', 'part', 'zagotovokvsego', 'zag')); return $rec; }