/var/www/doncode.com.ua/www/models
Edit: /var/www/doncode.com.ua/www/models/class.settings_model.php (11799B)
form->post('limit','Количество выводимых строк')->val('digit')->val('emptyStr')->val('maxNum',50)->val('zeroField')
->post('minwidth',' Ширина маленькой картинки')->val('digit')->val('emptyStr')->val('maxNum',150)->val('zeroField')
->post('maxwidth',' Ширина большой картинки')->val('digit')->val('emptyStr')->val('maxNum',350)->val('zeroField') ;
$this->form->submit();
$data = $this->form->fetch();
}catch(Exception $e){
session::set('errmsg',$e->getMessage() );
header("Location:".$_SERVER["HTTP_REFERER"]);
return false;
}
session::set('succmsg','Настройки применены.');
header("Location:".$_SERVER["HTTP_REFERER"]);
return false;
}
public function testBase (){
try{
$sth = $this->database->query("SELECT * FROM `petty_cash_order`");
}catch(PDOException $e){
return array($e->getMessage());
}
$data = $sth->fetchAll();
$arr = array();
$contractor = array();
$summ_p = 0;
$summ_r = 0;
$count_p = 0;
$count_r = 0;
$summ_pn = 0;
$summ_rn = 0;
$count_pn = 0;
$count_rn = 0;
if(count($data)>0){
foreach($data as $v){
//$arr[substr($v['time_exp'],0,10)]['p'][$v['id']]=$v;
$v['doc_type'] = 'ПКО';
$arr[$v['time_exp']][]=$v;
$count_p++;
$summ_p+=$v['summ'];
}
}
try{
$sth = $this->database->query("SELECT * FROM `expendable_cash_order`");
}catch(PDOException $e){
return array($e->getMessage());
}
$data = $sth->fetchAll();
if(count($data)>0){
foreach($data as $v){
//$arr[substr($v['date_exp'],0,10)]['r'][$v['id']]=$v;
$v['doc_type'] = 'РКО';
$arr[$v['date_exp']][]=$v;
$count_r++;
$summ_r+=$v['summ'];
}
}
try{
$sth = $this->database->query("SELECT * FROM `invoice`");
}catch(PDOException $e){
return array($e->getMessage());
}
$data = $sth->fetchAll();
if(count($data)>0){
foreach($data as $v){
//$arr[substr($v['date_exp'],0,10)]['r'][$v['id']]=$v;
$v['doc_type'] = 'ПН';
$arr[$v['time']][]=$v;
$count_pn++;
$summ_pn+=$v['summ_bez_ndc'];
}
}
try{
$sth = $this->database->query("SELECT * FROM `sales_invoice`");
}catch(PDOException $e){
return array($e->getMessage());
}
$data = $sth->fetchAll();
if(count($data)>0){
foreach($data as $v){
//$arr[substr($v['date_exp'],0,10)]['r'][$v['id']]=$v;
$v['doc_type'] = 'РН';
$arr[$v['time']][]=$v;
$count_rn++;
$summ_rn+=$v['total_discount'];
}
}
ksort($arr);
$arr['count_p'] = $count_p;
$arr['count_r'] = $count_r;
$arr['summ_p'] = $summ_p;
$arr['summ_r'] = $summ_r;
$arr['count_pn'] = $count_pn;
$arr['count_rn'] = $count_rn;
$arr['summ_pn'] = $summ_pn;
$arr['summ_rn'] = $summ_rn;
$arr['summ_pr'] = $summ_p-$summ_r;
$kass = 0;
if(count($arr)>0){
foreach($arr as $k => $v){
if(is_array($v)){
foreach($v as $k2 => $v2){
$arr[$k][$k2]['account_before'] = $kass;
if($v2['doc_type']=="ПКО"){
$kass += $v2['summ'];
if(!isset($contractor[$v2['id_contractor']])){
$contractor[$v2['id_contractor']] = $v2['summ'];
}else{
$contractor[$v2['id_contractor']] += $v2['summ'];
}
}else
if($v2['doc_type']=="РКО"){
$kass -= $v2['summ'];
if(!isset($contractor[$v2['contractor']])){
$contractor[$v2['contractor']] = $v2['summ'];
}else{
$contractor[$v2['contractor']] -= $v2['summ'];
}
}else
if($v2['doc_type']=="ПН"){
if(!isset($contractor[$v2['contractor_id']])){
$contractor[$v2['contractor_id']] = $v2['summ_bez_ndc'];
}else{
$contractor[$v2['contractor_id']] += $v2['summ_bez_ndc'];
}
}else
if($v2['doc_type']=="РН"){
if(!isset($contractor[$v2['clients_id']])){
$contractor[$v2['clients_id']] = -1*$v2['total_discount']; // =200-100
}else{
$contractor[$v2['clients_id']] -= $v2['total_discount']; // 100 += 200-100
}
}
$arr[$k][$k2]['account_after'] = $kass;
}
}
}
}
/*
foreach($arr as $k => $v){
if(count($arr)>0){
if(isset($v['p'])){
foreach($v['p'] as $k2 => $v2){
$arr[$k]['p'][$k2]['account_before'] = $kass;
$kass += $v2['summ'];
if(!isset($contractor[$v2['id_contractor']])){
$contractor[$v2['id_contractor']] = $v2['summ'];
}else{
$contractor[$v2['id_contractor']] += $v2['summ'];
}
$arr[$k]['p'][$k2]['account_after'] = $kass;
}
}
if(isset($v['r'])){
foreach($v['r'] as $k2 => $v2){
$arr[$k]['r'][$k2]['account_before'] = $kass;
$kass -= $v2['summ'];
if(!isset($contractor[$v2['contractor']])){
$contractor[$v2['contractor']] = ($v2['summ'])*-1;
}else{
$contractor[$v2['contractor']] -= $v2['summ'];
}
$arr[$k]['r'][$k2]['account_after'] = $kass;
}
}
}
}
*/
$arr['contractor'] = $contractor;
return $arr;
}
public function assignAllBarcode (){
try{
$this->form->post('command')->val('emptyStr');
$this->form->submit();
$p = $this->form->fetch();
}catch(Exception $e){
if(ajax::check_ajax_request){
echo ajax::fail("Не верная команда");
return false;
}else{
session::set('errmsg',"Не верная команда");
header("Location:".$_SERVER["HTTP_REFERER"]);
exit;
}
}
switch ($p['command']):
case 'assignAll':
try{
$this->database->beginTransaction();
$sth = $this->database->prepare("SELECT id FROM `art_base` WHERE `article`=''");
$sth->execute();
$data = $sth->fetchAll();
$pref=5000000;
foreach ($data as $v){
$num = $pref+$v['id'];
$id[]=$v['id'];
$arr[]="WHEN `id`={$v['id']} AND `article`='' THEN '".BarcodeEAN::compute($num,'ean8')."' ";
}
$this->database->exec("UPDATE `art_base` SET `article`=CASE ".implode(" ",$arr)." ELSE `article` END WHERE `id` IN(".implode(",",$id).") ");
$this->database->commit();
}catch(PDOException $e){
$this->database->rollBack();
if(ajax::check_ajax_request){
echo ajax::fail($e->getMessage());
return false;
}else{
session::set('errmsg',$e->getMessage());
header("Location:".$_SERVER["HTTP_REFERER"]);
exit;
}
}
break;
case 'assignSimple' :
try{
$this->form->post('id')->val('digit')->val('zeroField');
$this->form->submit();
$i = $this->form->fetch();
}catch(Exception $e){
if(ajax::check_ajax_request){
echo ajax::fail($e->getMessage());
return false;
}else{
session::set('errmsg',$e->getMessage());
header("Location:".$_SERVER["HTTP_REFERER"]);
exit;
}
}
try{
$num = BARCODE_ARTICLE+$i['id'];
$this->database->exec("UPDATE `art_base` SET `article`='".BarcodeEAN::compute($num,BARCODE_TYPE)."' WHERE `id`={$i['id']}");
}catch(PDOException $e){
if(ajax::check_ajax_request){
echo ajax::fail($e->getMessage());
return false;
}else{
session::set('errmsg',$e->getMessage());
header("Location:".$_SERVER["HTTP_REFERER"]);
exit;
}
}
break;
case 'assignCategory' :
try{
$this->form->post('category')->val('digit')->val('zeroField');
$this->form->submit();
$i = $this->form->fetch();
}catch(Exception $e){
if(ajax::check_ajax_request){
echo ajax::fail($e->getMessage());
return false;
}else{
session::set('errmsg',$e->getMessage());
header("Location:".$_SERVER["HTTP_REFERER"]);
exit;
}
}
try{
$num = BARCODE_ARTICLE+$i['id'];
$this->database->exec("UPDATE `art_base` SET `article`='".BarcodeEAN::compute($num,BARCODE_TYPE)."' WHERE `category_id`={$i['id']}");
}catch(PDOException $e){
if(ajax::check_ajax_request){
echo ajax::fail($e->getMessage());
return false;
}else{
session::set('errmsg',$e->getMessage());
header("Location:".$_SERVER["HTTP_REFERER"]);
exit;
}
}
break;
default :
if(ajax::check_ajax_request){
echo ajax::fail('Неверная команда.');
return false;
}else{
session::set('errmsg','Неверная команда.');
header("Location:".$_SERVER["HTTP_REFERER"]);
exit;
}
break;
endswitch;
if(ajax::check_ajax_request){
session::set('succmsg','Готово!');
header("Location:".$_SERVER["HTTP_REFERER"]);
exit;
}else{
ajax::success('Готово!');
return false;
}
}
}