1
Changeset 160 – MultiMag

Changeset 160


Ignore:
Timestamp:
Jan 27, 2011, 3:25:23 AM (8 years ago)
Author:
blacklight
Message:
  • Экспериментальные правки
Location:
web/include
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • web/include/doc.nulltype.php

    r158 r160  
    669669                                }
    670670                                else $tmpl->logger("Save comment",0,"doc:$doc, type:".$this->doc_name.", opt:$opt, pos:$pos, mysql:".mysql_error());
     671                        }
     672                        // Сброс цен
     673                        else if($opt=='rc')
     674                        {
     675                                $this->ResetCost();
     676                                DocSumUpdate($this->doc);
     677                                doc_poslist($this->doc);       
    671678                        }
    672679                        // Серийный номер
     
    10681075                return $sum;
    10691076        }
     1077       
     1078        // Сбросить цены документа
     1079        protected function ResetCost()
     1080        {
     1081                if(!$this->doc)                 throw new Exception("Документ не определён!");
     1082                $res=mysql_query("SELECT `id`, `tovar`, `cnt` FROM `doc_list_pos` WHERE `doc`='{$this->doc}'");
     1083                if(mysql_errno())               throw new MysqlException("Не удалось выбрать товар в документе");
     1084                while($nxt=mysql_fetch_row($res))
     1085                {
     1086                        $cost=GetCostPos($nxt[1], $this->dop_data['cena']);
     1087                        mysql_query("UPDATE `doc_list_pos` SET `cost`='$cost' WHERE `id`='$nxt[0]'");
     1088                        if(mysql_errno())       throw new MysqlException("Не удалось сбросить цену документа!");
     1089                }
     1090        }
    10701091};
    10711092
  • web/include/doc.postuplenie.php

    r155 r160  
    232232                {
    233233                        $tmpl->ajax=1;
    234                         $tmpl->AddText("<ul>
    235                         <li><a href='?mode=print&amp;doc=".$this->doc."&amp;opt=nak'>Накладная</a></li>
    236                         <li><a href='?mode=print&amp;doc=".$this->doc."&amp;opt=nac'>Наценки</a></li>
    237                         </ul>");
     234                        $tmpl->AddText("
     235                        <a href='?mode=print&amp;doc=".$this->doc."&amp;opt=nak'><div>Накладная</div></a>
     236                        <a href='?mode=print&amp;doc=".$this->doc."&amp;opt=nac'><div>Наценки</div></a>
     237                        ");
    238238                }
    239239                else if($opt=='nac')    $this->PrintNacenki($this->doc);
     
    378378                {
    379379                        $tmpl->ajax=1;
    380                         $tmpl->AddText("<ul><li><a href='?mode=morphto&amp;doc=$doc&amp;tt=7'>Расходный кассовый ордер</a></li>
    381                         </ul>");
     380                        $tmpl->AddText("<a href='?mode=morphto&amp;doc=$doc&amp;tt=7'><div>Расходный кассовый ордер</div></a>");
    382381                }
    383382                else if($target_type==7)
     
    388387                        $altnum=GetNextAltNum($target_type ,$doc_data[10]);
    389388                        $res=mysql_query("INSERT INTO `doc_list`
    390                         (`type`, `agent`, `date`, `sklad`, `user`, `altnum`, `subtype`, `p_doc`, `sum`)
    391                         VALUES ('$target_type', '$doc_data[2]', '$tm', '1', '$uid', '$altnum', '$doc_data[10]', '$doc', '$sum')");
     389                        (`type`, `agent`, `date`, `sklad`, `kassa` `user`, `altnum`, `subtype`, `p_doc`, `sum`)
     390                        VALUES ('$target_type', '$doc_data[2]', '$tm', '1', '1', '$uid', '$altnum', '$doc_data[10]', '$doc', '$sum')");
    392391                        $ndoc= mysql_insert_id();
    393392                        // Вид расхода - закуп товара на продажу
  • web/include/doc.tovary.php

    r152 r160  
    2929        if($doc_data[1]!=3)     $sklad=$doc_data[7];
    3030        else $sklad=1;
    31 
     31        if(!$doc_data[6])       $refcost="<a href='' title='Сбросить' onclick=\"EditThis('/doc.php?mode=srv&opt=rc&doc=$doc','poslist'); return false;\"><img src='/img/i_reload.png' alt='Сбросить'></a>";
     32        else                    $refcost='';
    3233        $tmpl->AddText("<div id=poslist><table width=100% cellspacing=1 cellpadding=2>
    33         <tr><th align=left>№<th>Наименование<th title='Выбранная цена по прайсу'>Выбр. цена<th>Цена<th width='60px'>Кол-во<th>Стоимость<th title='Остаток товара на складе'>Остаток<th>Место");
     34        <tr><th align=left>№<th>Наименование<th title='Выбранная цена по прайсу'>Выбр. цена<th>Цена $refcost<th width='60px'>Кол-во<th>Стоимость<th title='Остаток товара на складе'>Остаток<th>Место");
    3435        if(@$CONFIG['site']['sn_enable'] && $doc_data[1]<3)     $tmpl->AddText("<th>SN");
    3536        $res=mysql_query("SELECT `doc_base`.`name`, `doc_base`.`cost`, `doc_base_cnt`.`cnt`, `doc_base`.`proizv`, `doc_list_pos`.`cnt`, `doc_list_pos`.`sn`, `doc_list_pos`.`cost`, `doc_list_pos`.`comm`, `doc_list_pos`.`id`, `doc_base_cnt`.`mesto`, `doc_base`.`cost_date`, `doc_base`.`pos_type`, `doc_base`.`id`
     
    357358                        }
    358359                }
     360                else if($nxt[1]==17)
     361                {
     362                        if($nxt[2]==$sklad)     $cnt-=$nxt[0];
     363                        else
     364                        {
     365                                $rr=mysql_query("SELECT `value` FROM `doc_dopdata` WHERE `doc`='$nxt[3]' AND `param`='na_sklad'");
     366                                if(mysql_errno())       throw new MysqlExceprion("Не удалось запросить склад назначения в перемещении $nxt[3] при проверке на отрицательные остатки");
     367                                $nasklad=mysql_result($rr,0,0);
     368                                if(!$nasklad)           throw new Exceprion("Не удалось получить склад назначения в перемещении $nxt[3] при проверке на отрицательные остатки");
     369                                if($nasklad==$sklad)    $cnt+=$nxt[0];
     370                        }
     371                }
    359372                if($cnt<0) break;
    360373        }
Note: See TracChangeset for help on using the changeset viewer.