File: /home/mostafedeg/public_html/erp/controllers/testFunction.php
<?php
//the global file operation
include("../public/impOpreation.php");
//global varable
global $showoutside;
//to check if the page from .htacess
//$showoutside = $_GET['sn'];
// get the config file
include_once("../public/config.php");
//here the db files that include in the file
// GOES HERE ....................
include("../public/include_dao.php");
//Save
require_once('../models/dao/SaveDAO.class.php');
require_once('../models/dto/Save.class.php');
require_once('../models/mysql/SaveMySqlDAO.class.php');
require_once('../models/mysql/ext/SaveMySqlExtDAO.class.php');
//Savedaily
require_once('../models/dao/SavedailyDAO.class.php');
require_once('../models/dto/Savedaily.class.php');
require_once('../models/mysql/SavedailyMySqlDAO.class.php');
require_once('../models/mysql/ext/SavedailyMySqlExtDAO.class.php');
//Storereport
require_once('../models/dao/StorereportDAO.class.php');
require_once('../models/dto/Storereport.class.php');
require_once('../models/mysql/StorereportMySqlDAO.class.php');
require_once('../models/mysql/ext/StorereportMySqlExtDAO.class.php');
//Storedetail
require_once('../models/dao/StoredetailDAO.class.php');
require_once('../models/dto/Storedetail.class.php');
require_once('../models/mysql/StoredetailMySqlDAO.class.php');
require_once('../models/mysql/ext/StoredetailMySqlExtDAO.class.php');
//Bankaccount
require_once('../models/dao/BankaccountDAO.class.php');
require_once('../models/dto/Bankaccount.class.php');
require_once('../models/mysql/BankaccountMySqlDAO.class.php');
require_once('../models/mysql/ext/BankaccountMySqlExtDAO.class.php');
//Accountmovement
require_once('../models/dao/AccountmovementDAO.class.php');
require_once('../models/dto/Accountmovement.class.php');
require_once('../models/mysql/AccountmovementMySqlDAO.class.php');
require_once('../models/mysql/ext/AccountmovementMySqlExtDAO.class.php');
//Client
require_once('../models/dao/ClientDAO.class.php');
require_once('../models/dto/Client.class.php');
require_once('../models/mysql/ClientMySqlDAO.class.php');
require_once('../models/mysql/ext/ClientMySqlExtDAO.class.php');
//Clientdebtchange
require_once('../models/dao/ClientdebtchangeDAO.class.php');
require_once('../models/dto/Clientdebtchange.class.php');
require_once('../models/mysql/ClientdebtchangeMySqlDAO.class.php');
require_once('../models/mysql/ext/ClientdebtchangeMySqlExtDAO.class.php');
//get the do the action
$do = $_GET['do'];
/* ======================
Controller Name :- saveCTRL
OPERTATION in Controller
1-display add form
2- add in Save tbl
3-display sucess or error
4-display show form
5-delete from Save tbl
6-edit in Save data
======================== */
//here the global templates
$smarty->display("header.html");
$smarty->display("quciktask.html");
//here goes the instances and general variables
$mySave = new Save();
$mySaveRecord = new SaveMySqlDAO();
$mySaveEx = new SaveMySqlExtDAO();
$mySavedaily = new Savedaily();
$mySavedailyRecord = new SavedailyMySqlDAO();
$mySavedailyEx = new SavedailyMySqlExtDAO();
//Storereport
$myStorereportEx = new StorereportMySqlExtDAO();
$myStorereport = new Storereport();
$myStorereportRecord = new StorereportMySqlDAO();
//Storedetail
$myStoredetailEx = new StoredetailMySqlExtDAO();
$myStoredetailRecord = new StoredetailMySqlDAO();
$myStoredetail = new Storedetail();
//Bankaccount
$myBankaccount = new Bankaccount();
$myBankaccountRecord = new BankaccountMySqlDAO();
$myBankaccountEx = new BankaccountMySqlExtDAO();
//Accountmovement
$myAccountmovement = new Accountmovement();
$myAccountmovementRecord = new AccountmovementMySqlDAO();
//Client
$myClient = new Client();
$myClientEx = new ClientMySqlExtDAO();
//Clientdebtchange
$myClientdebtchange = new Clientdebtchange();
$myClientdebtchangeRecord = new ClientdebtchangeMySqlDAO();
//check and use the condetion that suite this action
if (empty($do)) {
//here the permssion check
include_once("../public/authentication.php");
//here the smarty templates
$smarty->display("saveview/add.html");
}
//here the global templates
$smarty->display("footer.html");
/* ===============================
function in this CONTROLLER
================================ */
// get initialvalue from save tbl
function getSaveValueBefore() {
//to use the variable out side the funcion
global $mySave;
global $mySaveRecord;
$saveData = $mySaveRecord->load($_SESSION['saveid']);
$saveValuebefore = $saveData->savecurrentvalue;
return $saveValuebefore;
}
// get initialvalue and plus from save tbl
function getSaveValueAndPlus($savevaluechanged) {
//to use the variable out side the funcion
global $mySave;
global $mySaveRecord;
$saveData = $mySaveRecord->load($_SESSION['saveid']);
$saveId = $saveData->saveid;
$saveValuebefore = $saveData->savecurrentvalue;
$saveValueafter = $saveValuebefore + $savevaluechanged;
return array($saveId, $saveValuebefore, $saveValueafter);
}
// get initialvalue and mins from save tbl
function getSaveValueAndMins($savevaluechanged) {
//to use the variable out side the funcion
global $mySave;
global $mySaveRecord;
$saveData = $mySaveRecord->load($_SESSION['saveid']);
$saveId = $saveData->saveid;
$saveValuebefore = $saveData->savecurrentvalue;
$saveValueafter = $saveValuebefore - $savevaluechanged;
return array($saveId, $saveValuebefore, $saveValueafter);
}
// update in Save tbl
function updateSave($saveid, $savevalueafter) {
//to use the variable out side the funcion
global $mySave;
global $mySaveEx;
//update initialvalue in Save tbl
$mySave->savecurrentvalue = $savevalueafter;
$mySave->userid = $_SESSION['userid'];
$mySave->saveid = $saveid;
$mySaveEx->updateSaveValue($mySave);
}
// insert in Savedaily tbl
function insertSavedaily($savedailysavebefore, $savedailychangeamount, $savedailychangetype, $saveid, $processname, $savedailymodelid, $savedailysaveafter, $tablename) {
//to use the variable out side the funcion
global $mySavedaily;
global $mySavedailyRecord;
//insert in Savedaily tbl
$mySavedaily->savedailydate = date("Y-m-d");
$mySavedaily->userid = $_SESSION['userid'];
$mySavedaily->savedailysavebefore = $savedailysavebefore;
$mySavedaily->savedailychangeamount = $savedailychangeamount;
$mySavedaily->savedailychangetype = $savedailychangetype;
$mySavedaily->saveid = $saveid;
$mySavedaily->processname = $processname;
$mySavedaily->savedailymodelid = $savedailymodelid;
$mySavedaily->savedailysaveafter = $savedailysaveafter;
$mySavedaily->tablename = $tablename;
$mySavedailyRecord->insert($mySavedaily);
}
///////////////////////////////////clients//////////////////////
// update in rawmaterialssuppliers tbl
function updateClientDebt($clientid, $clientdebtAfter) {
//to use the variable out side the funcion
global $myClient;
global $myClientEx;
//update clientdebt in client tbl
$myClient->userid = $_SESSION['userid'];
$myClient->clientdebt = $clientdebtAfter;
$myClient->clientid = $clientid;
$myClientEx->updateClientdebt($myClient);
}
// insert data into Clientdebtchange tbl
function insertClientdebtchange($clientid, $clientdebtchangebefore, $clientdebtchangeamount, $clientdebtchangetype, $processname, $clientdebtchangemodelid, $clientdebtchangeafter, $tablename, $comment) {
//to use the variable out side the funcion
global $myClientdebtchange;
global $myClientdebtchangeRecord;
$myClientdebtchange->clientdebtchangeafter = $clientdebtchangeafter;
$myClientdebtchange->clientdebtchangeamount = $clientdebtchangeamount;
$myClientdebtchange->clientdebtchangebefore = $clientdebtchangebefore;
$myClientdebtchange->clientdebtchangedate = date("Y-m-d");
$myClientdebtchange->clientdebtchangemodelid = $clientdebtchangemodelid;
$myClientdebtchange->clientdebtchangetype = $clientdebtchangetype;
$myClientdebtchange->clientid = $clientid;
$myClientdebtchange->comment = $comment;
$myClientdebtchange->processname = $processname;
$myClientdebtchange->tablename = $tablename;
$myClientdebtchange->userid = $_SESSION['userid'];
$myClientdebtchangeRecord->insert($myClientdebtchange);
}
/////////////////////////////////store////////////////////////////
// get productquantity from storedetail tbl
function getProductAmountInStore($storeid, $productid) {
//to use the variable out side the funcion
global $myStoredetailEx;
//select data from storerawmaterialdetails by storeid and rawmaterialid
$storedetailData = $myStoredetailEx->queryWithStoreAndProduct($productid, $storeid);
$productquantityBefore = $storedetailData->productquantity;
return $productquantityBefore;
}
// get productquantity from storedetail tbl
function getStoredetailData($storeid, $productid) {
//to use the variable out side the funcion
global $myStoredetailEx;
//select data from storerawmaterialdetails by storeid and rawmaterialid
$storedetailData = $myStoredetailEx->queryWithStoreAndProduct($productid, $storeid);
$storedetailId = $storedetailData->storedetailid;
$productquantityBefore = $storedetailData->productquantity;
return array($storedetailData, $storedetailId, $productquantityBefore);
}
//update and increase productquantity in storedetail tbl
function increaseProductQuantity($storedetailId, $productquantityBefore, $productChangeAmount) {
//to use the variable out side the funcion
global $myStoredetail;
global $myStoredetailEx;
//increase productquantity
$productquantityAfter = $productquantityBefore + $productChangeAmount;
//update productquantity in storedetail tbl
$myStoredetail->storedetailid = $storedetailId;
$myStoredetail->userid = $_SESSION['userid'];
$myStoredetail->storedetaildate = date("Y-m-d");
$myStoredetail->productquantity = $productquantityAfter;
$myStoredetailEx->updateProductquantity($myStoredetail);
return $productquantityAfter;
}
//update and decrease Rawmaterialamount in storerawmaterialdetails tbl
function decreaseProductQuantity($storedetailId, $productquantityBefore, $productChangeAmount) {
//to use the variable out side the funcion
global $myStoredetail;
global $myStoredetailEx;
//increase productquantity
$productquantityAfter = $productquantityBefore - $productChangeAmount;
//update productquantity in storedetail tbl
$myStoredetail->storedetailid = $storedetailId;
$myStoredetail->userid = $_SESSION['userid'];
$myStoredetail->storedetaildate = date("Y-m-d");
$myStoredetail->productquantity = $productquantityAfter;
$myStoredetailEx->updateProductquantity($myStoredetail);
return $productquantityAfter;
}
//add in storerawmaterialdetails tbl
function insertStoredetail($storeid, $productid, $productChangeAmount) {
global $myStoredetail;
global $myStoredetailRecord;
$myStoredetail->userid = $_SESSION['userid'];
$myStoredetail->storedetaildate = date("Y-m-d");
$myStoredetail->productquantity = $productChangeAmount;
$myStoredetail->storeid = $storeid;
$myStoredetail->productid = $productid;
$myStoredetailRecord->insert($myStoredetail);
}
//add in Storemovement tbl
function insertStorereport($productid, $storeid, $productChangeAmount, $productbefore, $productafter, $storereporttype, $storereportmodelid, $processname, $tablename) {
global $myStorereport;
global $myStorereportRecord;
$myStorereport->processname = $processname;
$myStorereport->productafter = $productafter;
$myStorereport->productbefore = $productbefore;
$myStorereport->productid = $productid;
$myStorereport->storeid = $storeid;
$myStorereport->storereportdate = date("Y-m-d");
$myStorereport->storereportmodelid = $storereportmodelid;
$myStorereport->storereporttype = $storereporttype;
$myStorereport->tablename = $tablename;
$myStorereport->userid = $_SESSION['userid'];
$myStorereportRecord->insert($myStorereport);
}
/////////////////////////////bank////////////////////////
// get accountbeginingbalance from bankaccount tbl
function getAccountBalanceBefore($accountid) {
//to use the variable out side the funcion
global $myBankaccountRecord;
$bankaccountData = $myBankaccountRecord->load($accountid);
$accountBalance = $bankaccountData->accountbeginingbalance;
return $accountBalance;
}
// get accountbeginingbalance and plus from Bankaccount tbl
function getAccountBalanceAndPlus($accountid, $accountmovementamount) {
//to use the variable out side the funcion
global $myBankaccount;
global $myBankaccountRecord;
$bankaccountData = $myBankaccountRecord->load($accountid);
$accountBalanceBefore = $bankaccountData->accountbeginingbalance;
$accountBalanceAfter = $accountBalanceBefore + $accountmovementamount;
return array($accountBalanceBefore, $accountBalanceAfter);
}
// get accountbeginingbalance and minus from Bankaccount tbl
function getAccountBalanceAndMins($accountid, $accountmovementamount) {
//to use the variable out side the funcion
global $myBankaccount;
global $myBankaccountRecord;
$bankaccountData = $myBankaccountRecord->load($accountid);
$accountBalanceBefore = $bankaccountData->accountbeginingbalance;
$accountBalanceAfter = $accountBalanceBefore - $accountmovementamount;
return array($accountBalanceBefore, $accountBalanceAfter);
}
// update in BankAccount tbl
function updateBankAccount($accountid, $accountBalanceAfter) {
//to use the variable out side the funcion
global $myBankaccount;
global $myBankaccountEx;
//update accountbeginingbalance in BankAccount tbl
$myBankaccount->accountbeginingbalance = $accountBalanceAfter;
$myBankaccount->userid = $_SESSION['userid'];
$myBankaccount->accountid = $accountid;
$myBankaccountEx->updateAccountbeginingbalance($myBankaccount);
}
// insert in Savedaily tbl
function insertAccountmovement($accountbefore, $accountamount, $accountmovementtype, $accountafter, $processname, $accountmovementmodelid, $accountid, $bankid, $tablename) {
//to use the variable out side the funcion
global $myAccountmovement;
global $myAccountmovementRecord;
//insert in Accountmovement tbl
$myAccountmovement->accountid = $accountid;
$myAccountmovement->accountmovementafter = $accountafter;
$myAccountmovement->accountmovementamount = $accountamount;
$myAccountmovement->accountmovementbefore = $accountbefore;
$myAccountmovement->accountmovementdate = date("Y-m-d");
$myAccountmovement->accountmovementmodelid = $accountmovementmodelid;
$myAccountmovement->accountmovementtype = $accountmovementtype;
$myAccountmovement->bankid = $bankid;
$myAccountmovement->processname = $processname;
$myAccountmovement->tablename = $tablename;
$myAccountmovement->userid = $_SESSION['userid'];
$myAccountmovementRecord->insert($myAccountmovement);
}
?>