Stock pour le module gestion
This commit is contained in:
parent
e72d4e976e
commit
e3f7ec5dc7
1 changed files with 170 additions and 0 deletions
170
include/stock.inc.php
Normal file
170
include/stock.inc.php
Normal file
|
|
@ -0,0 +1,170 @@
|
|||
|
||||
<?
|
||||
/*
|
||||
* This file is part of PHPCOMPTA.
|
||||
*
|
||||
* PhpCompta is free software; you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation; either version 2 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* PhpCompta is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with PHPCOMPTA; if not, write to the Free Software
|
||||
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
// Auteur Dany De Bontridder ddebontridder@yahoo.fr
|
||||
/* $Revision$ */
|
||||
/*!\file
|
||||
* \brief Manage the stock by year
|
||||
*/
|
||||
|
||||
include_once("preference.php");
|
||||
include_once ("ac_common.php");
|
||||
include_once("postgres.php");
|
||||
include_once("stock_inc.php");
|
||||
include_once("check_priv.php");
|
||||
|
||||
html_page_start($_SESSION['g_theme']);
|
||||
|
||||
if ( ! isset ( $_SESSION['g_dossier'] ) ) {
|
||||
echo "You must choose a Dossier ";
|
||||
exit -2;
|
||||
}
|
||||
include_once ("postgres.php");
|
||||
/* Admin. Dossier */
|
||||
|
||||
$cn=DbConnect($_SESSION['g_dossier']);
|
||||
include_once ("class_user.php");
|
||||
$User=new cl_user($cn);
|
||||
$User->Check();
|
||||
|
||||
// Synchronize rights
|
||||
SyncRight($_SESSION['g_dossier'],$_SESSION['g_user']);
|
||||
|
||||
// Get The priv on the selected folder
|
||||
if ( $User->admin == 0 ) {
|
||||
|
||||
$r=GetPriv($_SESSION['g_dossier'],$_SESSION['g_user']);
|
||||
if ($r == 0 ){
|
||||
/* Cannot Access */
|
||||
NoAccess();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
$action= ( isset ($_GET['action']))? $_GET['action']:"";
|
||||
include_once("stock_inc.php");
|
||||
|
||||
// Adjust the stock
|
||||
if ( isset ($_POST['sub_change'])) {
|
||||
$change=$_POST['stock_change'];
|
||||
$sg_code=$_POST['sg_code'];
|
||||
$sg_date=$_POST['sg_date'];
|
||||
if ( isDate($sg_date) == null
|
||||
or isNumber($change) == 0 ) {
|
||||
$msg="Stock données non conformes";
|
||||
echo "<script> alert('$msg');</script>";
|
||||
echo_error($msg);
|
||||
} else {
|
||||
// Check if User Can change the stock
|
||||
if ( CheckAction($_SESSION['g_dossier'],$_SESSION['g_user'],STOCK_WRITE) == 0 ) {
|
||||
NoAccess();
|
||||
exit (-1);
|
||||
}
|
||||
|
||||
// if neg the stock decrease => credit
|
||||
$type=( $change < 0 )?'c':'d';
|
||||
if ( $change != 0)
|
||||
$Res=ExecSql($cn,"insert into stock_goods
|
||||
( j_id,
|
||||
f_id,
|
||||
sg_code,
|
||||
sg_quantity,
|
||||
sg_type,
|
||||
sg_date,
|
||||
sg_tech_user)
|
||||
values (
|
||||
null,
|
||||
0,
|
||||
'$sg_code',
|
||||
abs($change),
|
||||
'$type',
|
||||
to_date('$sg_date','DD.MM.YYYY'),
|
||||
'".$_SESSION['g_user']."');
|
||||
");
|
||||
// to update the view
|
||||
$action="detail";
|
||||
}
|
||||
}
|
||||
|
||||
// View the summary
|
||||
|
||||
// if year is not set then use the year of the user's periode
|
||||
if ( ! isset ($_GET['year']) ) {
|
||||
// get defaut periode
|
||||
$a=$User->GetPeriode();
|
||||
// get exercice of periode
|
||||
$year=GetExercice($cn,$a);
|
||||
} else
|
||||
{
|
||||
$year=$_GET['year'];
|
||||
}
|
||||
|
||||
// View details
|
||||
if ( $action == 'detail' ) {
|
||||
// Check if User Can see the stock
|
||||
if ( CheckAction($_SESSION['g_dossier'],$_SESSION['g_user'],STOCK_READ) == 0 ) {
|
||||
NoAccess();
|
||||
exit (-1);
|
||||
}
|
||||
$sg_code=(isset ($_GET['sg_code'] ))?$_GET['sg_code']:$_POST['sg_code'];
|
||||
$year=(isset($_GET['year']))?$_GET['year']:$_POST['year'];
|
||||
$a=ViewDetailStock($cn,$sg_code,$year);
|
||||
|
||||
$b=ChangeStock($sg_code,$year);
|
||||
echo '<div class="u_redcontent">' ;
|
||||
echo $a;
|
||||
echo 'Entrer la valeur qui doit augmenter ou diminuer le stock, attention ne pas utiliser de décimales';
|
||||
echo '<form action="stock.php" method="POST">';
|
||||
echo $b;
|
||||
echo '<input type="submit" name="sub_change" value="Ok">';
|
||||
echo '<A class="mtitle" HREF="?"><INPUT TYPE="BUTTON" value="Retour"</A>';
|
||||
|
||||
echo '</form>';
|
||||
echo '</div>';
|
||||
exit();
|
||||
}
|
||||
|
||||
// Show the possible years
|
||||
$sql="select distinct (p_exercice) as exercice from parm_periode ";
|
||||
$Res=ExecSql($cn,$sql);
|
||||
$r="";
|
||||
for ( $i = 0; $i < pg_NumRows($Res);$i++) {
|
||||
$l=pg_fetch_array($Res,$i);
|
||||
$r.=sprintf('<A class="mtitle" HREF="?p_action=stock&year=%d">%d</a> - ',
|
||||
$l['exercice'],
|
||||
$l['exercice']);
|
||||
|
||||
}
|
||||
// Check if User Can see the stock
|
||||
if ( CheckAction($_SESSION['g_dossier'],$_SESSION['g_user'],STOCK_READ) == 0 ) {
|
||||
NoAccess();
|
||||
exit (-1);
|
||||
}
|
||||
|
||||
// Show the current stock
|
||||
echo '<div class="u_redcontent">';
|
||||
echo $r;
|
||||
$a=ViewStock($cn,$year);
|
||||
if ( $a != null ) {
|
||||
echo $a;
|
||||
}
|
||||
echo '</div>';
|
||||
html_page_stop();
|
||||
?>
|
||||
Loading…
Add table
Add a link
Reference in a new issue