public function setRecord($data)
 {
     $data[blocktype] = $this->blocktype;
     $operation[$data[operation_id]] = array('date' => $data[action_date], 'comment_id' => sqltable_model::getCommentId($data[comment]));
     // если в поле для нового ввели номер сопроводиловки уже существующий в журнале
     // то будем править его
     $sql = "SELECT * FROM {$this->maintable} WHERE lanch_id='{$data[lanch_id]}'";
     $res = sql::fetchOne($sql);
     if (empty($res)) {
         // гадство! тут нужен уникальный, а без коментариев будет получаться один
         sql::insert('coments', array(array("comment" => multibyte::Json_encode($operation))));
         $data[coment_id] = sql::lastId();
     } else {
         $coment = multibyte::Json_decode(sqltable_model::getComment($res[coment_id]));
         $coment[$data[operation_id]] = $operation[$data[operation_id]];
         // заменить старый по ключу
         sql::insertUpdate('coments', array(array("id" => $res[coment_id], "comment" => multibyte::Json_encode($coment))));
         $data[edit] = $res[id];
         // если был такой его и правим
         $data[coment_id] = $res[coment_id];
     }
     $data[lastoperation] = $data[operation_id];
     parent::setRecord($data);
     return true;
 }
示例#2
0
 public function setRecord($data)
 {
     extract($data);
     if (empty($edit)) {
         $sql = "INSERT INTO {$this->db}sk_{$this->sklad}_spr (nazv,edizm,spr_price,koeff,krost) VALUES ('{$nazv}','{$edizm}','{$spr_price}','{$koeff}','{$krost}')";
         sql::query($sql);
         $sprid = sql::lastId();
         $sql = "INSERT INTO {$this->db}sk_{$this->sklad}_ost (spr_id,ost) VALUES ('{$sprid}','0')";
         sql::query($sql);
     } else {
         $sql = "UPDATE {$this->db}sk_{$this->sklad}_spr SET nazv='{$nazv}', edizm='{$edizm}', spr_price='{$spr_price}', koeff='{$koeff}', krost='{$krost}' WHERE id='{$edit}'";
         sql::query($sql);
     }
     return true;
     //sql::affected();
 }
示例#3
0
 /**
  *	Methode generique de save de tout module
  *
  *	@param	module	Le nom du module a sauvegarder (table de destination)
  *	@param	fields	Liste de champs a sauvegarder ex: Array('nom','prenom',etc..);
  *	@param	data	Array contenant les donnés a sauvegarder ex: Array ('nom' => Jean, 'prenom'=>'Pierre')
  *	@return	Array	Renvoi un array contenant msg qui dit s'il y a eut ajout ou edition
  *											id representant l'id de l'enregistrement conserné
  *											query	pour debug la chaine envoyé en mysql	
  */
 public function upsert($module, $fields, $data)
 {
     $nbr_fields = count($fields);
     $data_string_array = array();
     $fields_string = implode(',', $fields);
     $data_string = "";
     foreach ($fields as $field) {
         if (isset($data[$field]) && !empty($data[$field])) {
             $data_string_array[$field] = '"' . sql::escapeString($data[$field]) . '"';
         } else {
             $data_string_array[$field] = '""';
         }
     }
     // SI id est set alors il s'agit d'un update
     if (isset($data['id']) && $data['id'] != 0) {
         foreach ($fields as $field) {
             $data_string .= $field . '= ' . $data_string_array[$field] . ',';
         }
         $data_string = substr($data_string, 0, -1);
         $query = 'UPDATE ' . $module . ' SET ' . $data_string . ' WHERE id=' . $data['id'];
         sql::query($query);
         $response['msg'] = 'EDITED';
         $response['id'] = $data['id'];
         $response['query'] = $query;
     } else {
         // ID not set alors nouvelle création
         $data_string = implode(',', $data_string_array);
         $query = 'INSERT INTO ' . $module . ' (' . $fields_string . ') VALUES (' . $data_string . ');';
         sql::query($query);
         $lastid = sql::lastId();
         $response['msg'] = 'ADDED';
         $response['id'] = $lastid;
         $response['query'] = $query;
     }
     return $response;
 }
示例#4
0
 /**
  * Возвращает идентификатор коментария по тексту коментария
  * @param string $comment
  * @return int
  */
 public static function getCommentId($comment)
 {
     $sql = "SELECT * FROM coments WHERE comment='{$comment}'";
     $rs = sql::fetchOne($sql);
     if (empty($rs)) {
         $sql = "INSERT INTO coments (comment) VALUES ('{$comment}')";
         sql::query($sql);
         return sql::lastId();
     } else {
         return $rs[id];
     }
 }
示例#5
0
 public function arc()
 {
     // годовая архивация
     // перенести движения
     $sql = "INSERT INTO {$this->db}sk_{$this->sklad}_dvizh_arc\n                (type,numd,numdf,docyr,spr_id,quant,ddate,post_id,comment_id,price)\n                SELECT sk_{$this->sklad}_dvizh.type,sk_{$this->sklad}_dvizh.numd,sk_{$this->sklad}_dvizh.numdf,sk_{$this->sklad}_dvizh.docyr,sk_{$this->sklad}_dvizh.spr_id,sk_{$this->sklad}_dvizh.quant,sk_{$this->sklad}_dvizh.ddate,sk_{$this->sklad}_dvizh.post_id,sk_{$this->sklad}_dvizh.comment_id,sk_{$this->sklad}_dvizh.price\n                FROM {$this->db}sk_{$this->sklad}_dvizh";
     if (!sql::query($sql)) {
         return false;
     }
     // очистить движения
     $sql = "TRUNCATE TABLE {$this->db}sk_{$this->sklad}_dvizh";
     if (!sql::query($sql)) {
         return false;
     }
     $sql = "SELECT * FROM {$this->db}sk_{$this->sklad}_spr";
     $res = sql::fetchAll($sql);
     foreach ($res as $rs) {
         $id = $rs["id"];
         // получить остатки
         $sql = "SELECT * FROM {$this->db}sk_{$this->sklad}_ost WHERE sk_{$this->sklad}_ost.spr_id='{$id}'";
         $ost = mysql_fetch_array(mysql_query($sql));
         $ost = $ost["ost"];
         // создать архивное движение
         // поставщик
         $sql = "SELECT id FROM {$this->db}sk_{$this->sklad}_postav WHERE supply=''";
         $rs1 = sql::fetchOne($sql);
         if (!empty($rs1)) {
             $post_id = $rs1["id"];
         }
         // коментарий
         $sql = "SELECT id FROM {$this->db}coments WHERE comment='Передача остатка'";
         $rs1 = sql::fetchOne($sql);
         if (!empty($rs1)) {
             $comment_id = $rs1["id"];
         } else {
             $sql = "INSERT INTO {$this->db}coments (comment) VALUES ('Передача остатка')";
             sql::query($sql) or die(sql::error(true));
             $comment_id = sql::lastId();
         }
         $numd = "9999";
         $numdf = "9999";
         $docyr = date("Y") - 1;
         $ddate = date("Y-m-d", mktime(0, 0, 0, 12, 31, $docyr));
         $sql = "INSERT INTO {$this->db}sk_{$this->sklad}_dvizh_arc (type,numd,numdf,docyr,spr_id,quant,ddate,post_id,comment_id,price)\n                    VALUES ('0','{$numd}','{$numdf}','{$docyr}','{$id}','{$ost}','{$ddate}','{$post_id}','{$comment_id}','0')";
         echo $sql . "<br>";
         if (!sql::query($sql)) {
             return false;
         }
         // создадим первое движение года
         // коментарий
         $sql = "SELECT id FROM {$this->db}coments WHERE comment='Остаток на 31.12.{$docyr}'";
         $rs1 = sql::fetchOne($sql);
         if (!empty($rs1)) {
             $comment_id = $rs1["id"];
         } else {
             $sql = "INSERT INTO {$this->db}coments (comment) VALUES ('Остаток на 31.12.{$docyr}')";
             sql::query($sql) or die(sql::error(true));
             $comment_id = sql::lastId();
         }
         $docyr = date("Y");
         $ddate = date("Y-m-d", mktime(0, 0, 0, 1, 1, $docyr));
         $sql = "INSERT INTO {$this->db}sk_{$this->sklad}_dvizh (type,numd,numdf,docyr,spr_id,quant,ddate,post_id,comment_id,price)\n                    VALUES ('1','{$numd}','{$numdf}','{$docyr}','{$id}','{$ost}','{$ddate}','{$post_id}','{$comment_id}','0')";
         if (!sql::query($sql)) {
             return false;
         }
     }
     return true;
 }
示例#6
0
 /**
  * Добавляет к блоку данные о проводниках и зазорах
  */
 public function wideandgap($rec)
 {
     $rec = multibyte::cp1251_to_utf8($rec);
     // TODO duble code
     // update block size
     extract($rec);
     $sql = "SELECT id FROM customers WHERE customer='{$customer}'";
     $rs = sql::fetchOne($sql);
     if (empty($rs)) {
         $sql = "INSERT INTO customers (customer) VALUES ('{$customer}')";
         sql::query($sql);
         $customer_id = sql::lastId();
     } else {
         $customer_id = $rs[id];
     }
     $sql = "SELECT id,comment_id FROM blocks WHERE customer_id='{$customer_id}' AND blockname='{$board}'";
     $rs = sql::fetchOne($sql);
     if (!empty($rs)) {
         $params = json_decode(multibyte::Unescape(sqltable_model::getComment($rs["comment_id"])), true);
         //получим текщий комент
         $params["wideandgaps"] = update_model::parsexstring($wideandgaps);
         $comment_id = sqltable_model::getCommentId(multibyte::Json_encode(multibyte::recursiveEscape($params)));
         $id = $rs["id"];
         $sql = "UPDATE blocks SET comment_id='{$comment_id}' WHERE id='{$id}'";
         sql::query($sql);
         echo json_encode($params);
     }
     /* если не нашелся такой блок, то не понятно как вызывался метод, блок создается раньше вызовом coppers и другими
      * wideandgaps вызывается для готовых блоков, не вижу смысла отрабатывать ситуацию когда блока нет
      */
 }
示例#7
0
     $filename = createdironserver($file_link);
     $fe = file_exists($filename);
     if ($fe) {
         $pos_in_order++;
     }
 } while ($fe);
 // Определим идентификатор файловой ссылки
 $sql = "SELECT id FROM filelinks WHERE file_link='{$file_link}'";
 $rs = sql::fetchOne($sql);
 if (!empty($rs[id])) {
     $file_id = $rs["id"];
 } else {
     $sql = "INSERT INTO filelinks (file_link) VALUES ('{$file_link}')";
     sql::query($sql);
     sql::error(true);
     $file_id = sql::lastId();
 }
 // добавить поля в
 $sql = "UPDATE tz SET file_link_id='{$file_id}', pos_in_order='{$pos_in_order}' WHERE id='{$tzid}'";
 sql::query($sql);
 $excel = file_get_contents($typetz == "mpp" ? "tzmpp.xls" : ($typetz == "dpp" ? "tzdpp.xls" : "tzdppm.xls"));
 if ($file = @fopen($filename, "w")) {
     fwrite($file, $excel);
     fclose($file);
     chmod($filename, 0777);
     if ($file = @fopen($filename . ".txt", "w")) {
         fwrite($file, $cdate . "\n");
         fwrite($file, $fullname . "\n");
         fwrite($file, $order . "\n");
         fwrite($file, $odate . "\n");
         fwrite($file, sprintf("%08d\n", $tzid));
示例#8
0
 tz - идентификатор ТЗ
 posintz - номер позиции в ТЗ
 mpdate - дата запуска
 user - кто добавил
 Возвращает id добавленого МП
*/
include_once $_SERVER["DOCUMENT_ROOT"] . "/lib/engine.php";
// это нужно при добавлении так как не вызывается заголовк html
// Определим идентификатор пользователя
$sql = "SELECT id FROM users WHERE nik='{$user}'";
$rs = sql::fetchOne($sql);
if (!empty($rs)) {
    $user_id = $rs["id"];
} else {
    $sql = "INSERT INTO users (nik) VALUES ('{$user}')";
    sql::query($sql) or die(sql::error(true));
    $user_id = sql::lastId();
}
// добавим МП если есть такое исправим
$sql = "SELECT * FROM masterplate WHERE tz_id='{$tz}' AND posintz='{$posintz}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
    $sql = "INSERT INTO masterplate (tz_id,posintz,mpdate,user_id) VALUES ('{$tz}','{$posintz}','{$mpdate}','{$user_id}')";
    sql::query($sql) or die(sql::error(true));
    $mp_id = sql::lastId();
} else {
    $sql = "UPDATE masterplate SET mpdate='{$mpdate}', user_id='{$user_id}' WHERE tz_id='{$tz}' AND posintz='{$posintz}'";
    sql::query($sql) or die(sql::error(true));
    $mp_id = $rs["id"];
}
printf("%08d", $mp_id);
示例#9
0
 public function getPartyfile($rec)
 {
     extract($rec);
     if ($dozap === true) {
         $sql = "SELECT pos_in_tz_id AS posid\r\n            FROM lanch\r\n            WHERE lanch.id='{$posid}'";
         //echo $sql;
         $rs = sql::fetchOne($sql);
         sql::error(true);
         $rec[posid] = $posid = $rs[posid];
         $rec[dozapnumbers] = $party;
         // тут было записано сколько при дозапуске
         $rec[party] = $party = -2;
     } elseif ($dozap == "zadel") {
         $rec[dozapnumbers] = $party;
         $rec[party] = $party = -1;
     }
     // Получим идентификатор запуска, нового или уже сущечтвующего
     // почти всегда, кажется, нового
     // давай посмотрим варианты
     // 1-запуск
     // 2-дозапуск
     // 3-использование задела
     // при запуске могло использоваться, но теперь при удалении будет другое значение
     // дозапуск не получится если не удален предыдущий запуск
     // делаем всегда новое
     /*
     $sql = "SELECT * FROM lanch
         WHERE pos_in_tz_id='{$posid}' AND part='{$party}'";
     $rs = sql::fetchOne($sql);
     if (empty($rs)) {
         $sql = "INSERT INTO lanch
         (ldate, user_id,pos_in_tz_id)
         VALUES (NOW(),'" . Auth::getInstance()->getUser('userid') . "','{$posid}')";
         sql::query($sql);
         $lanch_id = sql::lastId();
     } else {
         $lanch_id = $rs["id"];
     }
     */
     // Определим идентификатор коментария
     $comment_id = 1;
     //пустой
     $file_link_id = 1;
     //пустой! обяязательно указать для нормальной работы внешних ключей
     $sql = "INSERT INTO lanch\r\n        (ldate, user_id,pos_in_tz_id,comment_id,file_link_id)\r\n        VALUES (NOW(),'" . Auth::getInstance()->getUser('userid') . "','{$posid}','{$comment_id}','{$file_link_id}')";
     sql::query($sql);
     $lanch_id = sql::lastId();
     // вернем вызывальщику
     if (!empty($lanch_id)) {
         $rec[lanch_id] = $lanch_id;
         // заказчик и имя блока
         $sql = "SELECT *\r\n                FROM posintz\r\n                JOIN (blocks,customers)\r\n                ON (blocks.id=posintz.block_id AND blocks.customer_id=customers.id)\r\n                WHERE posintz.id='{$posid}'";
         $rs = sql::fetchOne($sql);
         $rec[customer] = $customer = $rs[customer];
         $rec[blockname] = $blockname = $rs[blockname];
         $rec[block_id] = $rs[block_id];
         return $rec;
     } else {
         return false;
     }
 }
示例#10
0
文件: addposintz.php 项目: GGF/baza4
$com = sql::fetchOne($sql);
if (empty($com)) {
	$sql = "INSERT INTO coments (comment) VALUES ('{$comment}')";
	sql::query($sql);
	$comment_id = sql::lastId();
} else {
	$comment_id = $com[id];
}

// добавим МП если есть такое исправим
$sql="SELECT * FROM posintz WHERE tz_id='$tznumber' AND posintz='$posintz'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
	$sql="INSERT INTO posintz (tz_id,posintz,plate_id,board_id,block_id,numbers,first,srok,priem,constr,template_check,template_make,eltest,numpl1,numpl2,numpl3,numpl4,numpl5,numpl6,numbl,pitz_mater,pitz_psimat,comment_id) VALUES ('$tznumber','$posintz','$plate_id','$board_id','$block_id','$numbers','$first','$srok','$priem','$constr','$template_check','$template_make','$eltest','$numpl1','$numpl2','$numpl3','$numpl4','$numpl5','$numpl6','$numbl','$textolite','$textolitepsi','{$comment_id}')";
	sql::query ($sql);
	$pit_id = sql::lastId();
} else {
	$sql="UPDATE posintz SET numbers='$numbers', plate_id='$board_id',plate_id='$board_id', block_id='$block_id',first='$first',srok='$srok',priem='$priem',constr='$constr',template_check='$template_check',template_make='$template_make', eltest='$eltest', numpl1='$numpl1', numpl2='$numpl2', numpl3='$numpl3', numpl4='$numpl4', numpl5='$numpl5', numpl6='$numpl6', numbl='$numbl', pitz_mater='$textolite', pitz_psimat='$textolitepsi', comment_id='{$comment_id}' WHERE tz_id='$tznumber' AND posintz='$posintz'";
	sql::query ($sql);
	$pit_id = $rs["id"];
}

// обновить запуски если некоторые позиции уже запускались
$sql="SELECT * FROM lanch WHERE tz_id='$tznumber' AND pos_in_tz='$posintz'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
	$sql="UPDATE lanch SET pos_in_tz_id='$pit_id' WHERE id='".$rs["id"]."'";
	sql::query ($sql);
	$sql="UPDATE posintz SET ldate='".$rs["ldate"]."' WHERE id='$pit_id'";
	sql::query ($sql);
}
示例#11
0
    ${$key} = cmsUTF_decode($val);
    // она сама и массивы перекодирует и проверяет на utf
}
foreach ($_POST as $key => $val) {
    ${$key} = cmsUTF_decode($val);
    // она сама и массивы перекодирует и проверяет на utf
}
// заказчик по tzid
$sql = "SELECT orders.customer_id AS id FROM tz JOIN (orders) ON (tz.order_id=orders.id) WHERE tz.id='{$tznumber}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
    echo -1;
    exit;
}
$customer_id = $rs[id];
// добавление блока
$sql = "SELECT id FROM blocks WHERE customer_id='{$customer_id}' AND blockname='{$blockname}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
    $sql = "INSERT INTO blocks (id,customer_id,blockname,sizex,sizey,thickness) VALUES(NULL,'{$customer_id}','{$blockname}','{$bsizex}','{$bsizey}','{$thickness}')";
    sql::query($sql) or die(sql::error(true));
    $block_id = sql::lastId();
} else {
    $block_id = $rs["id"];
    $sql = "UPDATE blocks SET customer_id='{$customer_id}',blockname='{$blockname}',sizex='{$bsizex}',sizey='{$bsizey}',thickness='{$thickness}' WHERE id='{$block_id}'";
    sql::query($sql) or die(sql::error(true));
}
// удалим позиции с блока потому что они будут добавляться из ТЗ
$sql = "DELETE FROM blockpos WHERE block_id='{$block_id}'";
sql::query($sql);
echo $block_id;
示例#12
0
if (!empty($rs)) {
    $file_id = $rs["id"];
} else {
    $sql = "INSERT INTO filelinks (file_link) VALUES ('{$file_link}')";
    sql::query($sql) or die(sql::error(true));
    $file_id = sql::lastId();
}
// пщлучим номер очередной позиции тз в заказе
$sql = "SELECT max(pos_in_order) as pio FROM tz WHERE order_id='{$order_id}'";
$rs = sql::fetchOne($sql);
if (!empty($rs)) {
    $pos_in_order = $rs[pio] + 1;
} else {
    $pos_in_order = 1;
}
// добавим ТЗ если есть такое добавим вторую позицию - типа ДПП1 ДПП2 и т.д.
$sql = "SELECT * FROM tz WHERE file_link_id='{$file_id}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
    $sql = "INSERT INTO tz (order_id,tz_date,user_id,pos_in_order,file_link_id) VALUES ('{$order_id}','{$tz_date}','{$user_id}','{$pos_in_order}','{$file_id}')";
    sql::query($sql) or die(sql::error(true));
    $tz_id = sql::lastId();
} else {
    $sql = "DELETE FROM posintz WHERE tz_id='" . $rs["id"] . "'";
    sql::query($sql) or die(sql::error(true));
    $sql = "UPDATE tz SET order_id='{$order_id}', tz_date='{$tz_date}', user_id='{$user_id}' WHERE file_link_id='{$file_id}'";
    sql::query($sql) or die(sql::error(true));
    //$rs=mysql_fetch_array($res);
    $tz_id = $rs["id"];
}
printf("%08d", $tz_id);
示例#13
0
$customer = '';
//Заказчик  тут обозначаю потому что при вызове движка будут переписаны из $_GET, а warnings будет меньше
$board = '';
// Плата
$ndraw = $osob = $nstek = $dop = $nprokl = $tprokl = $dfrez = $mn1 = $mn2 = $mn3 = $mn4 = $mn5 = $mn6 = $mn7 = $mn8 = $m1 = $m2 = $m3 = $m4 = $m5 = $m6 = $m7 = $m8 = '';
// параметры из ТЗ, но они не заполняются никем и судя по всему этот скрипт уже не нужен
require $_SERVER["DOCUMENT_ROOT"] . "/lib/engine.php";
// заказчик
$sql = "SELECT id FROM customers WHERE customer='{$customer}'";
$rs = sql::fetchOne($sql);
if (!empty($rs)) {
    $customer_id = $rs["id"];
} else {
    $sql = "INSERT INTO customers (customer) VALUES ('{$customer}')";
    sql::query($sql) or die(sql::error(true));
    $customer_id = sql::lastId();
}
// изменение платы
$sql = "SELECT id FROM blocks WHERE customer_id='{$customer_id}' AND blockname='{$board}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
    exit;
} else {
    $block_id = $rs[id];
}
$sql = "SELECT id FROM mppdop WHERE block_id='{$block_id}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
    $sql = "INSERT INTO mppdop (id,block_id,ndraw,osob,nstek,dop,nprokl,tprokl,dfrez,mn1,mn2,mn3,mn4,mn5,mn6,mn7,mn8,m1,m2,m3,m4,m5,m6,m7,m8) VALUES (NULL,'{$block_id}','{$ndraw}','{$osob}','{$nstek}','{$dop}','{$nprokl}','{$tprokl}','{$dfrez}','{$mn1}','{$mn2}','{$mn3}','{$mn4}','{$mn5}','{$mn6}','{$mn7}','{$mn8}','{$m1}','{$m2}','{$m3}','{$m4}','{$m5}','{$m6}','{$m7}','{$m8}')";
    sql::query($sql) or die(sql::error(true));
} else {
示例#14
0
 public function setRecord($data)
 {
     extract($data);
     $spr_id = $_SESSION[Auth::$lss][tovarid];
     /*
      * Актуализация цены
      */
     //if ($this->sklad == "mat_" ) { // только для материала
     // 02-12-2014 для всех
     if ($type == 1) {
         // приход
         if ($price != 0) {
             // цена указана
             //if ($comment != "***" ) {
             // мне лучше не знать, но наверное цена не правильная
             $sql = "UPDATE {$this->db}sk_{$this->sklad}_spr SET spr_price = '{$price}'  WHERE id='{$spr_id}'";
             sql::query($sql);
             //}
         }
     }
     //}
     //console::getInstance()->out(print_r($data,true));
     // отредактировано
     // найдем поставщика
     if (!empty($supply_id)) {
         $post_id = $supply_id;
     } else {
         $sql = "SELECT id FROM {$this->db}sk_{$this->sklad}_postav WHERE supply='{$supply}'";
         $rs = sql::fetchOne($sql);
         if (!empty($rs)) {
             $post_id = $rs[id];
         } else {
             $sql = "INSERT INTO {$this->db}sk_{$this->sklad}_postav (supply) VALUES ('{$supply}')";
             sql::query($sql);
             if (sql::error(true) != null) {
                 return false;
             }
             $post_id = sql::lastId();
         }
     }
     // Определим идентификатор коментария
     $sql = "SELECT id FROM {$this->db}coments WHERE comment='{$comment}'";
     $rs = sql::fetchOne($sql);
     if (!empty($rs)) {
         $comment_id = $rs["id"];
     } else {
         $sql = "INSERT INTO {$this->db}coments (comment) VALUES ('{$comment}')";
         sql::query($sql);
         sql::error();
         $comment_id = sql::lastId();
     }
     list($numdf, $numyr) = explode("/", $numd);
     if (empty($edit)) {
         //добавление нового
         $ddate = date("Y-m-d", mktime(0, 0, 0, substr($ddate, 3, 2), substr($ddate, 0, 2), substr($ddate, 6, 4)));
         //$dyear."-".$dmonth."-".$dday;
         $sql = "INSERT INTO {$this->db}sk_{$this->sklad}_dvizh (type,numd,numdf,docyr,spr_id,quant,ddate,post_id,comment_id,price) VALUES ('{$type}','{$numd}','{$numdf}','{$numyr}','{$spr_id}','{$quant}','{$ddate}','{$post_id}','{$comment_id}','{$price}')";
         sql::query($sql);
         sql::error(true);
         $sql = "UPDATE {$this->db}sk_{$this->sklad}_ost SET ost=ost" . ($type ? "+" : "-") . abs($quant) . " WHERE spr_id='{$spr_id}'";
         sql::query($sql);
         sql::error(true);
     } else {
         // удалить  старое движенеи
         $sql = "SELECT * FROM {$this->db}sk_{$this->sklad}_dvizh WHERE id='{$edit}'";
         $rs = sql::fetchOne($sql);
         $sql = "UPDATE {$this->db}sk_{$this->sklad}_ost SET ost=ost" . ($rs["type"] ? "-" : "+") . abs($rs["quant"]) . " WHERE spr_id='" . $rs["spr_id"] . "'";
         sql::query($sql);
         $ddate = date("Y-m-d", mktime(0, 0, 0, substr($ddate, 3, 2), substr($ddate, 0, 2), substr($ddate, 6, 4)));
         //$dyear."-".$dmonth."-".$dday;
         $sql = "UPDATE {$this->db}sk_{$this->sklad}_dvizh SET type='{$type}',numd='{$numd}',numdf='{$numdf}',docyr='{$numyr}',spr_id='" . $rs["spr_id"] . "',quant='{$quant}',ddate='{$ddate}',post_id='{$post_id}',comment_id='{$comment_id}',price='{$price}' WHERE id='{$edit}'";
         sql::query($sql);
         $sql = "UPDATE {$this->db}sk_{$this->sklad}_ost SET ost=ost" . ($type ? "+" : "-") . abs($quant) . " WHERE spr_id='" . $rs["spr_id"] . "'";
         sql::query($sql);
     }
     return true;
     //sql::affected();
 }
示例#15
0
 public function createTZ($rec)
 {
     extract($rec);
     // np не надо редактировать - только добавлять с текущей датой и пользователем
     // определим позицию в письме
     extract($_SESSION[Auth::$lss]);
     //list($customer_id,$order_id,$tz_id,$posintzid) = explode(':',$idstr);
     $orderid = $order_id;
     $sql = "SELECT COUNT(*)+1 AS next FROM tz WHERE order_id='{$orderid}'";
     $rs = sql::fetchOne($sql);
     $pos_in_order = $rs[next];
     // добавление
     // создать файл с табличкой
     // определим заказчика
     $sql = "SELECT number,orderdate,customer, fullname\n                FROM orders\n                JOIN customers\n                ON customers.id=customer_id\n                WHERE orders.id='{$orderid}'";
     //echo $sql;
     $rs = sql::fetchOne($sql);
     $order = $rs["number"];
     $customer = $rs["customer"];
     $fullname = $rs["fullname"];
     $odate = $rs["orderdate"];
     $cdate = date("m-d-Y");
     $sql = "INSERT INTO tz (order_id,tz_date,user_id) VALUES ('{$orderid}',NOW(),'" . Auth::getInstance()->getUser('id') . "')";
     sql::query($sql);
     $tzid = sql::lastId();
     do {
         $filetype = $typetz == "mpp" ? "МПП" : ($typetz == "dpp" ? "ДПП" : ($typetz == "mppb" ? "МПП-Блок" : "ДПП-Блок"));
         $orderstring = fileserver::removeOSsimbols($rs["number"]);
         $file_link = "t:\\\\Расчет стоимости плат\\\\ТехЗад\\\\{$customer}\\\\{$tzid}-{$filetype}-{$pos_in_order}-{$orderstring} от {$rs["orderdate"]}.xls";
         $filename = fileserver::createdironserver($file_link);
         $fe = file_exists($filename);
         if ($fe) {
             $pos_in_order++;
         }
     } while ($fe);
     // Определим идентификатор файловой ссылки
     $file_id = $this->getFileId($file_link);
     // добавить поля в
     $sql = "UPDATE tz SET file_link_id='{$file_id}', pos_in_order='{$pos_in_order}' WHERE id='{$tzid}'";
     sql::query($sql);
     $rec = array('id' => $tzid, 'tzlink' => $file_link, 'success' => true);
     $tzid = sprintf("%08s", $tzid);
     // для отображения в заказе
     $rec = array_merge($rec, compact('cdate', 'filename', 'order', 'odate', 'typetz', 'fullname', 'tzid'));
     return $rec;
 }
示例#16
0
$rs = sql::fetchOne($sql);
if (!empty($rs)) {
    $customer_id = $rs["id"];
} else {
    $sql = "INSERT INTO customers (customer) VALUES ('{$customer}')";
    sql::query($sql) or die(sql::error(true));
    $customer_id = sql::lastId();
}
$sql = "SELECT id FROM plates \n            WHERE customer_id='{$customer_id}' AND plate='{$board}'";
$rs = sql::fetchOne($sql);
if (!empty($rs)) {
    $plate_id = $rs["id"];
} else {
    $sql = "INSERT INTO plates (customer_id,plate) \n                    VALUES ('{$customer_id}','{$board}')";
    sql::query($sql) or die(sql::error(true));
    $plate_id = sql::lastId();
}
$sql = "SELECT * FROM coppers \n        WHERE customer_id='{$customer_id}' AND plate_id='{$plate_id}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
    $sql = "INSERT INTO coppers \n        (scomp,ssolder,drlname,customer_id,plate_id,sizex,sizey) \n        VALUES \n        ('{$comp}','{$solder}','{$drillname}','{$customer_id}',\n                        '{$plate_id}','{$sizex}','{$sizey}')";
    sql::query($sql) or die(sql::error(true));
} else {
    $sql = "UPDATE coppers SET \n            scomp='{$comp}', ssolder='{$solder}', drlname='{$drillname}', \n            sizex='{$sizex}', sizey='{$sizey}' \n            WHERE customer_id='{$customer_id}' AND plate_id='{$plate_id}'";
    sql::query($sql) or die(sql::error(true));
}
// изменения в блоки
$sql = "SELECT id FROM blocks \n        WHERE customer_id='{$customer_id}' AND blockname='{$board}'";
$rs = sql::fetchOne($sql);
if (empty($rs)) {
    $sql = "INSERT INTO blocks \n            (scomp,ssolder,drlname,customer_id,blockname,sizex,sizey) \n            VALUES \n            ('{$comp}','{$solder}','{$drillname}',\n                '{$customer_id}','{$board}','{$sizex}','{$sizey}')";
示例#17
0
<?php

include_once $_SERVER["DOCUMENT_ROOT"] . "/lib/engine.php";
// это нужно при добавлении так как не вызываетс¤ заголовк html
// ќпределим идентификатор пользовател¤
$sql = "SELECT id FROM users WHERE nik='{$user}'";
$rs = sql::fetchOne($sql);
if (!empty($rs)) {
    $user_id = $rs["id"];
} else {
    $sql = "INSERT INTO users (nik) VALUES ('{$user}')";
    sql::query($sql) or die(sql::error(true));
    $user_id = sql::lastId();
}
$sql = "INSERT INTO phototemplates (ts,user_id,filenames) VALUES (NOW(),'{$user_id}','{$filenames}')";
sql::query($sql) or die(sql::error(true));