File: /home/mostafedeg/public_html/erp/controllers/buyBillprintController.php
<?php
//the global file operation
session_start();
ob_start();
//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
include("../public/include_dao.php");
//Buybill
require_once('../models/dao/BuybillDAO.class.php');
require_once('../models/dto/Buybill.class.php');
require_once('../models/mysql/BuybillMySqlDAO.class.php');
require_once('../models/mysql/ext/BuybillMySqlExtDAO.class.php');
//Buybilldetail
require_once('../models/dao/BuybilldetailDAO.class.php');
require_once('../models/dto/Buybilldetail.class.php');
require_once('../models/mysql/BuybilldetailMySqlDAO.class.php');
require_once('../models/mysql/ext/BuybilldetailMySqlExtDAO.class.php');
//Returnbuybill
require_once('../models/dao/ReturnbuybillDAO.class.php');
require_once('../models/dto/Returnbuybill.class.php');
require_once('../models/mysql/ReturnbuybillMySqlDAO.class.php');
require_once('../models/mysql/ext/ReturnbuybillMySqlExtDAO.class.php');
//Returnbuybilldetail
require_once('../models/dao/ReturnbuybilldetailDAO.class.php');
require_once('../models/dto/Returnbuybilldetail.class.php');
require_once('../models/mysql/ReturnbuybilldetailMySqlDAO.class.php');
require_once('../models/mysql/ext/ReturnbuybilldetailMySqlExtDAO.class.php');
//Buyandruternbill
require_once('../models/dao/BuyandruternbillDAO.class.php');
require_once('../models/dto/Buyandruternbill.class.php');
require_once('../models/mysql/BuyandruternbillMySqlDAO.class.php');
require_once('../models/mysql/ext/BuyandruternbillMySqlExtDAO.class.php');
//Buyandruternbilldetail
require_once('../models/dao/BuyandruternbilldetailDAO.class.php');
require_once('../models/dto/Buyandruternbilldetail.class.php');
require_once('../models/mysql/BuyandruternbilldetailMySqlDAO.class.php');
require_once('../models/mysql/ext/BuyandruternbilldetailMySqlExtDAO.class.php');
//Product
require_once('../models/dao/ProductDAO.class.php');
require_once('../models/dto/Product.class.php');
require_once('../models/mysql/ProductMySqlDAO.class.php');
require_once('../models/mysql/ext/ProductMySqlExtDAO.class.php');
//Productcat
require_once('../models/dao/ProductcatDAO.class.php');
require_once('../models/dto/Productcat.class.php');
require_once('../models/mysql/ProductcatMySqlDAO.class.php');
require_once('../models/mysql/ext/ProductcatMySqlExtDAO.class.php');
//Supplier
require_once('../models/dao/SupplierDAO.class.php');
require_once('../models/dto/Supplier.class.php');
require_once('../models/mysql/SupplierMySqlDAO.class.php');
require_once('../models/mysql/ext/SupplierMySqlExtDAO.class.php');
//Supplierdebtchange
require_once('../models/dao/SupplierdebtchangeDAO.class.php');
require_once('../models/dto/Supplierdebtchange.class.php');
require_once('../models/mysql/SupplierdebtchangeMySqlDAO.class.php');
require_once('../models/mysql/ext/SupplierdebtchangeMySqlExtDAO.class.php');
//Store
require_once('../models/dao/StoreDAO.class.php');
require_once('../models/dto/Store.class.php');
require_once('../models/mysql/StoreMySqlDAO.class.php');
require_once('../models/mysql/ext/StoreMySqlExtDAO.class.php');
//Programsetting
require_once('../models/dao/ProgramsettingsDAO.class.php');
require_once('../models/dto/Programsetting.class.php');
require_once('../models/mysql/ProgramsettingsMySqlDAO.class.php');
require_once('../models/mysql/ext/ProgramsettingsMySqlExtDAO.class.php');
//Unit
require_once('../models/dao/UnitDAO.class.php');
require_once('../models/dto/Unit.class.php');
require_once('../models/mysql/UnitMySqlDAO.class.php');
require_once('../models/mysql/ext/UnitMySqlExtDAO.class.php');
//Billname
require_once('../models/dao/BillnameDAO.class.php');
require_once('../models/dto/Billname.class.php');
require_once('../models/mysql/BillnameMySqlDAO.class.php');
require_once('../models/mysql/ext/BillnameMySqlExtDAO.class.php');
//Billsetting
require_once('../models/dao/BillsettingsDAO.class.php');
require_once('../models/dto/Billsetting.class.php');
require_once('../models/mysql/BillsettingsMySqlDAO.class.php');
require_once('../models/mysql/ext/BillsettingsMySqlExtDAO.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');
//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');
//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');
//Productserial
require_once('../models/dao/ProductserialDAO.class.php');
require_once('../models/dto/Productserial.class.php');
require_once('../models/mysql/ProductserialMySqlDAO.class.php');
require_once('../models/mysql/ext/ProductserialMySqlExtDAO.class.php');
//Programsetting
require_once('../models/dao/ProgramsettingsDAO.class.php');
require_once('../models/dto/Programsetting.class.php');
require_once('../models/mysql/ProgramsettingsMySqlDAO.class.php');
require_once('../models/mysql/ext/ProgramsettingsMySqlExtDAO.class.php');
//User
require_once('../models/dao/UserDAO.class.php');
require_once('../models/dto/User.class.php');
require_once('../models/mysql/UserMySqlDAO.class.php');
require_once('../models/mysql/ext/UserMySqlExtDAO.class.php');
//Branch
require_once('../models/dao/BranchDAO.class.php');
require_once('../models/dto/Branch.class.php');
require_once('../models/mysql/BranchMySqlDAO.class.php');
require_once('../models/mysql/ext/BranchMySqlExtDAO.class.php');
//Buybilloffer
require_once('../models/dao/BuybillofferDAO.class.php');
require_once('../models/dto/Buybilloffer.class.php');
require_once('../models/mysql/BuybillofferMySqlDAO.class.php');
require_once('../models/mysql/ext/BuybillofferMySqlExtDAO.class.php');
//Buybilldetailoffer
require_once('../models/dao/BuybilldetailofferDAO.class.php');
require_once('../models/dto/Buybilldetailoffer.class.php');
require_once('../models/mysql/BuybilldetailofferMySqlDAO.class.php');
require_once('../models/mysql/ext/BuybilldetailofferMySqlExtDAO.class.php');
//Usergroup
require_once ('../models/dao/UsergroupDAO.class.php');
require_once ('../models/dto/Usergroup.class.php');
require_once ('../models/mysql/UsergroupMySqlDAO.class.php');
require_once ('../models/mysql/ext/UsergroupMySqlExtDAO.class.php');
//Buyandruternbillcurr
require_once('../models/dao/BuyandruternbillcurrDAO.class.php');
require_once('../models/dto/Buyandruternbillcurr.class.php');
require_once('../models/mysql/BuyandruternbillcurrMySqlDAO.class.php');
require_once('../models/mysql/ext/BuyandruternbillcurrMySqlExtDAO.class.php');
//Buybillcurr
require_once('../models/dao/BuybillcurrDAO.class.php');
require_once('../models/dto/Buybillcurr.class.php');
require_once('../models/mysql/BuybillcurrMySqlDAO.class.php');
require_once('../models/mysql/ext/BuybillcurrMySqlExtDAO.class.php');
//Returnbuybillcurr
require_once('../models/dao/ReturnbuybillcurrDAO.class.php');
require_once('../models/dto/Returnbuybillcurr.class.php');
require_once('../models/mysql/ReturnbuybillcurrMySqlDAO.class.php');
require_once('../models/mysql/ext/ReturnbuybillcurrMySqlExtDAO.class.php');
//get the do the action
$do = $_GET['do'];
$langs = $_SESSION['erp_lang'];
include_once("../views/languages/$langs/success.php");
include_once("../views/languages/$langs/error.php");
/* ======================
Controller Name :- buyBillController
OPERTATION in Controller
1- add buy bill
2- تقرير لمورد معين
======================== */
//here the global templates
//here goes the instances and general variables
//Programsetting
$ProgramsettingDAO = new ProgramsettingsMySqlDAO();
//Buybill
$buyBill = new Buybill();
$buyBillDAO = new BuybillMySqlDAO();
$buyBillExt = new BuybillMySqlExtDAO();
//Buybilldetail
$buyBillDetail = new Buybilldetail();
$buyBillDetailDAO = new BuybilldetailMySqlDAO();
$buyBillDetailExt = new BuybilldetailMySqlExtDAO();
//Returnbuybill
$returnBuyBill = new Returnbuybill();
$returnBuyBillDAO = new ReturnbuybillMySqlDAO();
$returnBuyBillExt = new ReturnbuybillMySqlExtDAO();
//Returnbuybilldetail
$returnBuyBillDetail = new Returnbuybilldetail();
$returnBuyBillDetailDAO = new ReturnbuybilldetailMySqlDAO();
$returnBuyBillDetailExt = new ReturnbuybilldetailMySqlExtDAO();
//Buyandruternbill
$buyAndReturnBill = new Buyandruternbill();
$buyAndReturnBillDAO = new BuyandruternbillMySqlDAO();
$buyAndReturnBillExt = new BuyandruternbillMySqlExtDAO();
//Buyandruternbilldetail
$buyAndReturnBillDetail = new Buyandruternbilldetail();
$buyAndReturnBillDetailDAO = new BuyandruternbilldetailMySqlDAO();
$buyAndReturnBillDetailExt = new BuyandruternbilldetailMySqlExtDAO();
//Product
$product = new Product();
$productDAO = new ProductMySqlDAO();
$productExt = new ProductMySqlExtDAO();
//Productcat
$productCatDAO = new ProductcatMySqlDAO();
$productCatExt = new ProductcatMySqlExtDAO();
//Supplier
$supplier = new Supplier();
$supplierDAO = new SupplierMySqlDAO();
$supplierExt = new SupplierMySqlExtDAO();
//Supplierdebtchange
$supplierDebtChange = new Supplierdebtchange();
$supplierDebtChangeDAO = new SupplierdebtchangeMySqlDAO();
$supplierDebtChangeExt = new SupplierdebtchangeMySqlExtDAO();
//Store
$storeDAO = new StoreMySqlDAO();
$storeExt = new StoreMySqlExtDAO();
//Programsetting
$programSettingExt = new ProgramsettingsMySqlExtDAO();
//Unit
$unitDAO = new UnitMySqlDAO();
$unitExt = new UnitMySqlExtDAO();
//Billname
$billNameDAO = new BillnameMySqlDAO();
$billNameExt = new BillnameMySqlExtDAO();
//Billsetting
$billSettingExt = new BillsettingsMySqlExtDAO();
//Storedetail
$storeDetail = new Storedetail();
$storeDetailDAO = new StoredetailMySqlDAO();
$storeDetailExt = new StoredetailMySqlExtDAO();
//Storereport
$storeReport = new Storereport;
$storeReportDAO = new StorereportMySqlDAO();
$storeReportExt = new StorereportMySqlExtDAO();
//Save
$save = new Save();
$saveDAO = new SaveMySqlDAO();
$saveExt = new SaveMySqlExtDAO();
//Savedaily
$saveDaily = new Savedaily();
$saveDailyDAO = new SavedailyMySqlDAO();
$saveDailyExt = new SavedailyMySqlExtDAO();
//Productserial
$Productserial = new Productserial();
$ProductserialDAO = new ProductserialMySqlDAO();
$ProductserialEX = new ProductserialMySqlExtDAO();
//User
$userDAO = new UserMySqlDAO();
$myUserEx = new UserMySqlExtDAO();
//Branch
$Branch = new Branch();
$BranchDAO = new BranchMySqlDAO();
$BranchEX = new BranchMySqlExtDAO();
//Buybilloffer
$buyBillOffer = new Buybilloffer();
$buyBillOfferDAO = new BuybillofferMySqlDAO();
$buyBillOfferEX = new BuybillofferMySqlExtDAO();
//Buybilldetailoffer
$buyBillDetailOffer = new Buybilldetailoffer();
$buyBillDetailOfferDAO = new BuybilldetailofferMySqlDAO();
$buyBillDetailOfferEX = new BuybilldetailofferMySqlExtDAO();
//Usergroup
$Usergroup = new Usergroup();
$UsergroupDAO = new UsergroupMySqlDAO();
$UsergroupEX = new UsergroupMySqlExtDAO();
//Buyandruternbillcurr
$buyAndRuternBillCurr = new Buyandruternbillcurr();
$buyAndRuternBillCurrDAO = new BuyandruternbillcurrMySqlDAO();
$buyAndRuternBillCurrEX = new BuyandruternbillcurrMySqlExtDAO();
//Buybillcurr
$buyBillCurr = new Buybillcurr();
$buyBillCurrDAO = new BuybillcurrMySqlDAO();
$buyBillCurrEX = new BuybillcurrMySqlExtDAO();
//Returnbuybillcurr
$returnBuyBllCurr = new Returnbuybillcurr();
$returnBuyBllCurrDAO = new ReturnbuybillcurrMySqlDAO();
$returnBuyBllCurrEX = new ReturnbuybillcurrMySqlExtDAO();
$today = date("Y-m-d");
$smarty->assign("today", $today);
//
$Usergroupdata = $UsergroupDAO->load($_SESSION['usergroupid']);
$smarty->assign("Usergroupdata", $Usergroupdata);
//check and use the condition that suite this action
if (empty($do)) {
//here the permssion check
//include_once("../public/authentication.php");
$billNameData = getBuyBillNames();
$smarty->assign("billNameData", $billNameData);
$smarty->display("buyBillview/billType.html");
} elseif ($do == "editprint") {
//include_once("../public/authentication.php");
$countBillDetails = 0;
$buyBill_Id = $_GET['id'];
$detailsData = showBillDetails($buyBill_Id);
$buyBillData = $detailsData[0];
$buyBillDetails = $detailsData[1];
$billCurrData = $detailsData[2];
//getalldiscount
$buybilldiscount = $detailsData[0]->buybilldiscount;
$buybilldiscountrype = $detailsData[0]->buybilldiscountrype; //0 مباشر
$buybilltotalbill = $detailsData[0]->buybilltotalbill;
$buybillaftertotalbill = $detailsData[0]->buybillaftertotalbill;
$tax = $detailsData[0]->payedtax;
if ($buybilldiscountrype == 0) {
//tax
$taxvalue = $buybillaftertotalbill - ($buybilltotalbill - ($buybilldiscount));
$discountvalue = $buybilldiscount;
} else {
//discount
$discountvalue = ($buybilltotalbill / 100) * $buybilldiscount;
//tax
$taxvalue = $buybillaftertotalbill - ($buybilltotalbill - ($discountvalue));
}
$smarty->assign('discountvalue', $discountvalue);
$smarty->assign('taxvalue', $taxvalue);
//get count
if (count($buyBillDetails) > 0) {
foreach ($buyBillDetails as $detail) {
$countBillDetails += $detail->buybilldetailquantity;
}
}
$smarty->assign('buyBillData', $buyBillData);
$smarty->assign('buyBillDetails', $buyBillDetails);
$smarty->assign('billCurrData', $billCurrData);
$smarty->assign('countBillDetails', $countBillDetails);
$billSettingsData = loadBillProperties($detailsData[0]->billnameid);
$smarty->assign("billsettingsData", $billSettingsData);
$smarty->assign("billnameid", $detailsData[0]->billnameid);
$billnameAddData = $billNameDAO->load($buyBillData->billnameid);
$smarty->assign("billnameAddData", $billnameAddData);
$smarty->assign("customPrint", 1);
$smarty->assign("customBuyBill", 1);
$smarty->assign("buyBillNewProductScript", 1);
$Programsettingdata = $ProgramsettingDAO->load(1);
$smarty->assign("Programsettingdata", $Programsettingdata);
$userData = $userDAO->load($_SESSION['userid']);
$smarty->assign("userData", $userData);
if ($userData->branchId != 0 && $userData->branchId != -1) {
$branchData = $BranchDAO->load($userData->branchId);
$smarty->assign("branchData", $branchData);
}
//here the smarty templates
$smarty->display("buyBillview/editprint2.html");
} elseif ($do == "editprint1") {
//include_once("../public/authentication.php");
$countBillDetails = 0;
$buyBill_Id = $_GET['id'];
$detailsData = showBillDetails($buyBill_Id);
$buyBillData = $detailsData[0];
$buyBillDetails = $detailsData[1];
$billCurrData = $detailsData[2];
//getalldiscount
$buybilldiscount = $detailsData[0]->buybilldiscount;
$buybilldiscountrype = $detailsData[0]->buybilldiscountrype; //0 مباشر
$buybilltotalbill = $detailsData[0]->buybilltotalbill;
$buybillaftertotalbill = $detailsData[0]->buybillaftertotalbill;
$tax = $detailsData[0]->payedtax;
if ($buybilldiscountrype == 0) {
//tax
$taxvalue = $buybillaftertotalbill - ($buybilltotalbill - ($buybilldiscount));
$discountvalue = $buybilldiscount;
} else {
//discount
$discountvalue = ($buybilltotalbill / 100) * $buybilldiscount;
//tax
$taxvalue = $buybillaftertotalbill - ($buybilltotalbill - ($discountvalue));
}
$smarty->assign('discountvalue', $discountvalue);
$smarty->assign('taxvalue', $taxvalue);
//get count
if (count($buyBillDetails) > 0) {
foreach ($buyBillDetails as $detail) {
$countBillDetails += $detail->buybilldetailquantity;
}
}
$smarty->assign('buyBillData', $buyBillData);
$smarty->assign('buyBillDetails', $buyBillDetails);
$smarty->assign('billCurrData', $billCurrData);
$smarty->assign('countBillDetails', $countBillDetails);
$billSettingsData = loadBillProperties($detailsData[0]->billnameid);
$smarty->assign("billsettingsData", $billSettingsData);
$smarty->assign("billnameid", $detailsData[0]->billnameid);
$billnameAddData = $billNameDAO->load($buyBillData->billnameid);
$smarty->assign("billnameAddData", $billnameAddData);
$smarty->assign("customPrint", 1);
$smarty->assign("customBuyBill", 1);
$smarty->assign("buyBillNewProductScript", 1);
$Programsettingdata = $ProgramsettingDAO->load(1);
$smarty->assign("Programsettingdata", $Programsettingdata);
//here the smarty templates
$smarty->display("buyBillview/editprint2a4.html");
}
//returneditprint
if ($do == "returneditprint") {
$returnbuybillId = $_GET['id'];
$detailsData = showreturnBillDetails($returnbuybillId);
$returnbuybillData = $detailsData[0];
$returnbuybilldetailData = $detailsData[1];
$billCurrData = $detailsData[2];
//get count
if (count($returnbuybilldetailData) > 0) {
foreach ($returnbuybilldetailData as $detail) {
$countBillDetails += $detail->returnbuybilldetailquantity;
}
}
$smarty->assign('returnbuybillData', $returnbuybillData);
$smarty->assign('returnbuybilldetailData', $returnbuybilldetailData);
$smarty->assign('billCurrData', $billCurrData);
//print_r($returnbuybilldetailData);
$smarty->assign('countBillDetails', $countBillDetails);
$billSettingsData = loadBillProperties($detailsData[0]->billnameid);
/* print_r($detailsData[0]->returnbuybillid);
print_r("<pre>");
print_r($billSettingsData);
print_r("<pre>"); */
$smarty->assign("billsettingsData", $billSettingsData);
$smarty->assign("billnameid", $detailsData[0]->returnbuybillid);
$billnameAddData = $billNameDAO->load($returnbuybillData->billnameid);
$smarty->assign("billnameAddData", $billnameAddData);
$Programsettingdata = $ProgramsettingDAO->load(1);
$smarty->assign("Programsettingdata", $Programsettingdata);
$userData = $userDAO->load($_SESSION['userid']);
$smarty->assign("userData", $userData);
if ($userData->branchId != 0 && $userData->branchId != -1) {
$branchData = $BranchDAO->load($userData->branchId);
$smarty->assign("branchData", $branchData);
}
//here the smarty templates
$smarty->assign("customPrint", 1);
$smarty->assign("customBuyBill", 1);
$smarty->assign("buyBillNewProductScript", 1);
$smarty->display("returnbuybillview/editprint2.html");
}
if ($do == "returneditprint1") {
$returnbuybillId = $_GET['id'];
$detailsData = showreturnBillDetails($returnbuybillId);
$returnbuybillData = $detailsData[0];
$returnbuybilldetailData = $detailsData[1];
$billCurrData = $detailsData[2];
//getalldiscount
$buybilldiscount = $detailsData[0]->returnbuybilldiscount;
$buybilldiscountrype = $detailsData[0]->returnbuybilldiscountrype; //0 مباشر
$buybilltotalbill = $detailsData[0]->returnbuybilltotalbill;
$buybillaftertotalbill = $detailsData[0]->returnbuybillaftertotalbill;
$tax = $detailsData[0]->payedtax;
if ($buybilldiscountrype == 0) {
//tax
$taxvalue = $buybillaftertotalbill - ($buybilltotalbill - ((abs($buybilldiscount) * -1)));
$discountvalue = $buybilldiscount;
} else {
//discount
$discountvalue = ($buybilltotalbill / 100) * $buybilldiscount;
//tax
$taxvalue = $buybillaftertotalbill - ($buybilltotalbill - ((abs($discountvalue) * -1)));
}
$smarty->assign('discountvalue', $discountvalue);
$smarty->assign('taxvalue', $taxvalue);
//get count
if (count($returnbuybilldetailData) > 0) {
foreach ($returnbuybilldetailData as $detail) {
$countBillDetails += $detail->returnbuybilldetailquantity;
}
}
$smarty->assign('returnbuybillData', $returnbuybillData);
$smarty->assign('returnbuybilldetailData', $returnbuybilldetailData);
$smarty->assign('billCurrData', $billCurrData);
$smarty->assign('countBillDetails', $countBillDetails);
//print_r($countBillDetails);
$billSettingsData = loadBillProperties($detailsData[0]->billnameid);
/* print_r($detailsData[0]->returnbuybillid);
print_r("<pre>");
print_r($billSettingsData);
print_r("<pre>"); */
$smarty->assign("billsettingsData", $billSettingsData);
$smarty->assign("billnameid", $detailsData[0]->returnbuybillid);
$billnameAddData = $billNameDAO->load($returnbuybillData->billnameid);
$smarty->assign("billnameAddData", $billnameAddData);
$Programsettingdata = $ProgramsettingDAO->load(1);
$smarty->assign("Programsettingdata", $Programsettingdata);
$userData = $userDAO->load($_SESSION['userid']);
$smarty->assign("userData", $userData);
if ($userData->branchId != 0 && $userData->branchId != -1) {
$branchData = $BranchDAO->load($userData->branchId);
$smarty->assign("branchData", $branchData);
}
//here the smarty templates
$smarty->assign("customPrint", 1);
$smarty->assign("customBuyBill", 1);
$smarty->assign("buyBillNewProductScript", 1);
$smarty->display("returnbuybillview/editprint2a4.html");
} elseif ($do == "buyandreturneditprint") {
//editprint
//here the permssion check
$buyAndReturnBill_Id = $_GET['id'];
$detailsData = showbuyAndReturnBillDetails($buyAndReturnBill_Id);
$buyBillData = $detailsData[0];
$buyBillDetails = $detailsData[1];
$billCurrData = $detailsData[2];
//get count
$details = countBillDetails($buyAndReturnBill_Id);
$countBillDetails_buy = $details[0];
$countBillDetails_return = $details[1];
$smarty->assign('countBillDetails_buy', $countBillDetails_buy);
$smarty->assign('countBillDetails_return', $countBillDetails_return);
$countBillDetails = $countBillDetails_buy + $countBillDetails_return;
// print_r($countBillDetails);
$smarty->assign('countBillDetails', $countBillDetails);
$smarty->assign('buyBillData', $buyBillData);
$smarty->assign('buyBillDetails', $buyBillDetails);
$smarty->assign('billCurrData', $billCurrData);
$billSettingsData = loadBillProperties($detailsData[0]->billnameid);
$smarty->assign("billsettingsData", $billSettingsData);
$smarty->assign("billnameid", $detailsData[0]->billnameid);
$billnameAddData = $billNameDAO->load($buyBillData->billnameid);
$smarty->assign("billnameAddData", $billnameAddData);
//here the smarty templates
$smarty->assign("customPrint", 1);
$smarty->assign("customBuyBill", 1);
$smarty->assign("buyBillNewProductScript", 1);
$Programsettingdata = $ProgramsettingDAO->load(1);
$smarty->assign("Programsettingdata", $Programsettingdata);
$userData = $userDAO->load($_SESSION['userid']);
$smarty->assign("userData", $userData);
if ($userData->branchId != 0 && $userData->branchId != -1) {
$branchData = $BranchDAO->load($userData->branchId);
$smarty->assign("branchData", $branchData);
}
$smarty->display("buyAndReturnBillview/editprint2.html");
} elseif ($do == "buyandreturneditprint1") {
//editprint
//here the permssion check
$buyAndReturnBill_Id = $_GET['id'];
$detailsData = showbuyAndReturnBillDetails($buyAndReturnBill_Id);
$buyBillData = $detailsData[0];
$buyBillDetails = $detailsData[1];
$billCurrData = $detailsData[2];
//getalldiscount
$buybilldiscount = $detailsData[0]->buybilldiscount;
$buybilldiscountrype = $detailsData[0]->buybilldiscountrype; //0 مباشر
$buybilltotalbill = $detailsData[0]->buybilltotalbill;
$buybillaftertotalbill = $detailsData[0]->buybillaftertotalbill;
$tax = $detailsData[0]->payedtax;
if ($buybilldiscountrype == 0) {
//tax
$taxvalue = $buybillaftertotalbill - ($buybilltotalbill - ($buybilldiscount));
$discountvalue = $buybilldiscount;
} else {
//discount
$discountvalue = ($buybilltotalbill / 100) * $buybilldiscount;
//tax
$taxvalue = $buybillaftertotalbill - ($buybilltotalbill - ($discountvalue));
}
$smarty->assign('discountvalue', $discountvalue);
$smarty->assign('taxvalue', $taxvalue);
//get count
$details = countBillDetails($buyAndReturnBill_Id);
$countBillDetails_buy = $details[0];
$countBillDetails_return = $details[1];
$smarty->assign('countBillDetails_buy', $countBillDetails_buy);
$smarty->assign('countBillDetails_return', $countBillDetails_return);
$countBillDetails = $countBillDetails_buy + $countBillDetails_return;
// print_r($countBillDetails);
$smarty->assign('countBillDetails', $countBillDetails);
$smarty->assign('buyBillData', $buyBillData);
$smarty->assign('buyBillDetails', $buyBillDetails);
$smarty->assign('billCurrData', $billCurrData);
$billSettingsData = loadBillProperties($detailsData[0]->billnameid);
$smarty->assign("billsettingsData", $billSettingsData);
$smarty->assign("billnameid", $detailsData[0]->billnameid);
$billnameAddData = $billNameDAO->load($buyBillData->billnameid);
$smarty->assign("billnameAddData", $billnameAddData);
//here the smarty templates
$smarty->assign("customPrint", 1);
$smarty->assign("customBuyBill", 1);
$smarty->assign("buyBillNewProductScript", 1);
$Programsettingdata = $ProgramsettingDAO->load(1);
$smarty->assign("Programsettingdata", $Programsettingdata);
$smarty->display("buyAndReturnBillview/editprint2a4.html");
} elseif ($do == "sucess") {
//here the smarty templates
$smarty->display("succes.html");
} elseif ($do == "error") {
//here the smarty templates
$smarty->display("error.html");
}
//here the global templates
$smarty->assign("customValidation", 1);
/* ===============================
function in this CONTROLLER
================================ */
function showbuyAndReturnBillDetails($buyAndReturnBill_Id) {
global $buyAndReturnBillExt;
global $buyAndRuternBillCurrEX;
global $buyAndReturnBillDetailExt;
$buyBillData = $buyAndReturnBillExt->loadExt($buyAndReturnBill_Id);
$buyBillDetails = $buyAndReturnBillDetailExt->queryByBuybillidExt($buyAndReturnBill_Id);
$billCurrData = $buyAndRuternBillCurrEX->queryOneByBuybillid($buyAndReturnBill_Id);
##use currency values
if (isset($billCurrData)) {
$buyBillData->buybilldiscount = $billCurrData->buybilldiscountC;
$buyBillData->buybilltotalbill = $billCurrData->buybilltotalbillC;
$buyBillData->buybillaftertotalbill = $billCurrData->buybillaftertotalbillC;
$buyBillData->buybilltotalpayed = $billCurrData->buybilltotalpayedC;
$buyBillData->buybillfinalbill = $billCurrData->buybillfinalbillC;
$buyBillData->buybilldirectpayment = $billCurrData->buybilldirectpaymentC;
$buyBillData->payedtax = $billCurrData->payedtaxC;
##
$buyBillData->buybilltotaldeptbefor = $buyBillData->buybilltotaldeptbefor * $billCurrData->conversionFactor;
$buyBillData->buybilltotaldeptafter = $buyBillData->buybilltotaldeptafter * $billCurrData->conversionFactor;
foreach ($buyBillDetails as $value) {
$value->buybilldetailprice = $value->buybilldetailpriceC;
$value->buybilldetailtotalprice = $value->buybilldetailtotalpriceC;
$value->discountvalue = $value->discountvalueC;
}
}
//print_r($buyAndReturnBill_Id);
return array($buyBillData, $buyBillDetails, $billCurrData);
}
function showreturnBillDetails($returnbuybillId) {
global $returnBuyBillExt;
global $returnBuyBillDetailExt;
global $returnBuyBllCurrEX;
$returnbuybillData = $returnBuyBillExt->loadExt($returnbuybillId);
$returnbuybilldetailData = $returnBuyBillDetailExt->queryByBuyReturnbuybillIdExt($returnbuybillId);
$billCurrData = $returnBuyBllCurrEX->queryOneByBuybillid($returnbuybillId);
##use currency values
if (isset($billCurrData)) {
$returnbuybillData->returnbuybilldiscount = $billCurrData->returnbuybilldiscountC;
$returnbuybillData->returnbuybilltotalbill = $billCurrData->returnbuybilltotalbillC;
$returnbuybillData->returnbuybillaftertotalbill = $billCurrData->returnbuybillaftertotalbillC;
$returnbuybillData->returnbuybilltotalpayed = $billCurrData->returnbuybilltotalpayedC;
$returnbuybillData->returnbuybillfinalbill = $billCurrData->returnbuybillfinalbillC;
$returnbuybillData->returnbuybilldirectpayment = $billCurrData->returnbuybilldirectpaymentC;
$returnbuybillData->payedtax = $billCurrData->payedtaxC;
##
$returnbuybillData->returnbuybilltotaldeptbefor = $returnbuybillData->returnbuybilltotaldeptbefor * $billCurrData->conversionFactor;
$returnbuybillData->returnbuybilltotaldeptafter = $returnbuybillData->returnbuybilltotaldeptafter * $billCurrData->conversionFactor;
foreach ($returnbuybilldetailData as $value) {
$value->returnbuybilldetailprice = $value->returnbuybilldetailpriceC;
$value->returnbuybilldetailtotalprice = $value->returnbuybilldetailtotalpriceC;
$value->discountvalue = $value->discountvalueC;
}
}
return array($returnbuybillData, $returnbuybilldetailData);
}
function getBuyBillNames() {
global $billNameDAO;
global $billNameExt;
$type = 1;
// get all not deleted
$billNameData = $billNameExt->queryByType($type);
return $billNameData;
}
function loadBillProperties($billnameid) {
global $billSettingExt;
// select all data from Billname
$billSettingsData = $billSettingExt->queryWithBillnameId($billnameid);
return $billSettingsData;
}
function getProducts() {
global $productExt;
global $productCatDAO;
global $smarty;
$categories;
$productsData = $productExt->queryAllExt();
if (count($productsData) > 0) {
$i = 0;
foreach ($productsData as $pro) {
$parentId = $pro->productCatId;
//print("parentId: ".$parentId."");
$pathArr = fetch_recursive($parentId, $categories);
$smarty->assign("names" . $i, $pathArr);
$i++;
}
}
return $productsData;
}
function getSuppliers() {
global $supplierDAO;
$suppliersData = $supplierDAO->queryByCondition(0);
return $suppliersData;
}
function getUnits() {
global $unitDAO;
$unitsData = $unitDAO->queryByCondition(0);
return $unitsData;
}
function getStores() {
global $storeDAO;
$storesData = $storeDAO->queryByConditions(0);
return $storesData;
}
function getProductCatParents() {
global $productCatExt;
global $productExt;
$allParents = $productExt->queryAllCategories(); //$productCatExt->queryAllChildrenExt();
return $allParents;
}
function checkRoundNumbers() {
global $programSettingExt;
$roundNumbersStatus = $programSettingExt->getRoundNumbersStatus();
return $roundNumbersStatus;
}
function getProductCatId($productId) {
global $productExt;
$catId = $productExt->getProductCatId($productId);
return $catId;
}
function showBillDetails($buyBill_Id) {
global $buyBillExt;
global $buyBillCurrEX;
global $buyBillDetailExt;
global $buyBillOfferEX;
global $buyBillDetailOfferEX;
$ordertype = $_GET['ordertype'];
if ($ordertype == 0) {//bill
$buyBillData = $buyBillExt->loadExt($buyBill_Id);
$buyBillDetails = $buyBillDetailExt->queryByBuybillidExt($buyBill_Id);
$billCurrData = $buyBillCurrEX->queryOneByBuybillid($buyBill_Id);
} elseif ($ordertype == 1) { //offer
$buyBillData = $buyBillOfferEX->loadExt($buyBill_Id);
$buyBillDetails = $buyBillDetailOfferEX->queryByBuybillidExt($buyBill_Id);
}
##use currency values
if (isset($billCurrData)) {
$buyBillData->buybilldiscount = $billCurrData->buybilldiscountC;
$buyBillData->buybilltotalbill = $billCurrData->buybilltotalbillC;
$buyBillData->buybillaftertotalbill = $billCurrData->buybillaftertotalbillC;
$buyBillData->buybilltotalpayed = $billCurrData->buybilltotalpayedC;
$buyBillData->buybillfinalbill = $billCurrData->buybillfinalbillC;
$buyBillData->buybilldirectpayment = $billCurrData->buybilldirectpaymentC;
$buyBillData->payedtax = $billCurrData->payedtaxC;
##
$buyBillData->buybilltotaldeptbefor = $buyBillData->buybilltotaldeptbefor * $billCurrData->conversionFactor;
$buyBillData->buybilltotaldeptafter = $buyBillData->buybilltotaldeptafter * $billCurrData->conversionFactor;
foreach ($buyBillDetails as $value) {
$value->buybilldetailprice = $value->buybilldetailpriceC;
$value->buybilldetailtotalprice = $value->buybilldetailtotalpriceC;
$value->discountvalue = $value->discountvalueC;
}
}
return array($buyBillData, $buyBillDetails, $billCurrData);
}
function showBuyBills() {
global $buyBillExt;
$buyBills = $buyBillExt->queryAllSerialsNotDeleted();
return $buyBills;
}
function countBillDetails($buyAndReturnBill_Id) {
global $buyAndReturnBillExt;
global $buyAndReturnBillDetailExt;
$countBillDetails_return = 0;
$countBillDetails_buy = 0;
$buyBillDetails_buy = $buyAndReturnBillDetailExt->queryByBuybillidANDType($buyAndReturnBill_Id, 0);
$buyBillDetails_return = $buyAndReturnBillDetailExt->queryByBuybillidANDType($buyAndReturnBill_Id, 1);
//get count
if (count($buyBillDetails_buy) > 0) {
foreach ($buyBillDetails_buy as $detail) {
$countBillDetails_buy += $detail->buybilldetailquantity;
}
}
//get count
if (count($buyBillDetails_return) > 0) {
foreach ($buyBillDetails_return as $detail) {
$countBillDetails_return += $detail->buybilldetailquantity;
}
}
//print_r($buyAndReturnBill_Id);
return array($countBillDetails_buy, $countBillDetails_return);
}
?>