ria/application/models/cashbook_model.php
venbatechnologies 46cb57b1d9 bankstat
2018-08-02 10:41:17 +05:30

1183 lines
36 KiB
PHP
Executable File

<?php if(!defined('BASEPATH')) exit('No direct script access allowed');
class cashbook_model extends CI_Model
{
function getAccounTypes()
{
$this->db->where('status',1);
$r = $this->db->get('t_accountcode');
return $r->result();
}
/**
* To Save Recepit and Payment datas
* array $data - Recepit/Payment array datas
* return $last_id - last inserted id
*/
function saveIncomeExpense($data)
{
$this->db->insert('t_income_expense',$data);
//$r = $this->db->affected_rows();
//return $r;
$last_id = $this->db->insert_id();
return $last_id;
}
function getIncomeExpenseList($i="")
{
$this->db->select('t_accountcode.name,cashtype,T_Employee_Details.FirstName,T_Employee_Details.LastName,t_income_expense.*');
$this->db->from('t_income_expense');
$this->db->join('t_accountcode','t_income_expense.account_code=t_accountcode.code','left');
$this->db->join('tbl_users','t_income_expense.Created_By=tbl_users.userId','left');
$this->db->join('T_Employee_Details','tbl_users.EmpID=T_Employee_Details.EmpID','left');
$this->db->where('t_income_expense.IsActive',1);
$this->db->where('t_income_expense.account_code !=','ADV001');
$this->db->order_by("date","desc");
if(!empty($i))
{
$this->db->where('t_income_expense.id',$i);
}
$r = $this->db->get();
return $r->result();
}
/**
* To Get Recepit and Payment datas for list
* string $aid - Recepit/Payment id
* return $query->result() - Recepit/Payment datas based on id
*/
function getreceiptpaymentlist($aid = '')
{
$sql="SELECT `t_accountcode`.`name`, `T_Employee_Details`.`FirstName`,`T_Employee_Details`.`LastName`, `t_income_expense`.*
FROM (`t_income_expense`)
JOIN `t_accountcode` ON `t_income_expense`.`account_code`=`t_accountcode`.`code` or `t_income_expense`.`account_code` = '999'
JOIN `tbl_users` ON `t_income_expense`.`Created_By`=`tbl_users`.`userId`
JOIN `T_Employee_Details` ON `tbl_users`.`EmpID`=`T_Employee_Details`.`EmpID`
group by t_income_expense.id";
$query = $this->db->query($sql);
return $query->result();
}
function getIncomeExpense($firstyear,$secondyear,$frmdt,$todt)
{
$this->db->select('t_accountcode.name,cashtype,T_Employee_Details.FirstName,T_Employee_Details.LastName,t_income_expense.*');
$this->db->from('t_income_expense');
$this->db->join('t_accountcode','t_income_expense.account_code=t_accountcode.code','left');
$this->db->join('tbl_users','t_income_expense.Created_By=tbl_users.userId','left');
$this->db->join('T_Employee_Details','tbl_users.EmpID=T_Employee_Details.EmpID','left');
$this->db->where('t_income_expense.IsActive',1);
$this->db->where('t_income_expense.account_code !=','ADV001');
$this->db->where('t_income_expense.account_code !=','ADV002');
if ($firstyear and $secondyear != '')
{
$finyear = "t_income_expense.date >= '".$firstyear."-04-01' and t_income_expense.date <= '".$secondyear."-03-31'";
$this->db->where($finyear);
}
if ($frmdt and $todt != ''){
$fromdate= date("Y-m-d",strtotime($frmdt));
$todate=date("Y-m-d",strtotime($todt));
$date = "date(t_income_expense.date) >= '".$fromdate."'
and date(t_income_expense.date) <= '".$todate."'";
$this->db->where($date);
}
$this->db->order_by("date","desc");
$r = $this->db->get();
return $r->result();
}
function getAdvanceList($i="")
{
// echo $i;
$this->db->select('t_accountcode.name,cashtype,T_Employee_Details.FirstName,T_Employee_Details.LastName,t_income_expense.*');
$this->db->from('t_income_expense');
$this->db->join('t_accountcode','t_income_expense.account_code=t_accountcode.code','left');
$this->db->join('tbl_users','t_income_expense.Created_By=tbl_users.userId','left');
$this->db->join('T_Employee_Details','tbl_users.EmpID=T_Employee_Details.EmpID','left');
$this->db->where('t_income_expense.IsActive',1);
$this->db->where('t_income_expense.account_code','ADV001');
$this->db->or_where('t_income_expense.account_code','ADV002');
$this->db->order_by("date","desc");
if(!empty($i))
{
$this->db->where('t_income_expense.id',$i);
}
$r = $this->db->get();
return $r->result();
}
function getAdvance($firstyear,$secondyear,$frmdt,$todt)
{
$this->db->select('t_accountcode.name,cashtype,T_Employee_Details.FirstName,T_Employee_Details.LastName,t_income_expense.*');
$this->db->from('t_income_expense');
$this->db->join('t_accountcode','t_income_expense.account_code=t_accountcode.code','left');
$this->db->join('tbl_users','t_income_expense.Created_By=tbl_users.userId','left');
$this->db->join('T_Employee_Details','tbl_users.EmpID=T_Employee_Details.EmpID','left');
$this->db->where('t_income_expense.IsActive',1);
$this->db->where('t_income_expense.account_code','ADV001');
$this->db->or_where('t_income_expense.account_code','ADV002');
if ($firstyear and $secondyear != '')
{
$finyear = "t_income_expense.date >= '".$firstyear."-04-01' and t_income_expense.date <= '".$secondyear."-03-31'";
$this->db->where($finyear);
}
if ($frmdt and $todt != '')
{
$fromdate= date("Y-m-d",strtotime($frmdt));
$todate=date("Y-m-d",strtotime($todt));
$date = "date(t_income_expense.date) >= '".$fromdate."'
and date(t_income_expense.date) <= '".$todate."'";
$this->db->where($date);
}
$this->db->order_by("date","desc");
$r = $this->db->get();
return $r->result();
}
function finyear()
{
$sql="SELECT
CASE WHEN MONTH(date)>=4 THEN
concat(YEAR(date), '-',YEAR(date)+1)
ELSE concat(YEAR(date)-1,'-', YEAR(date)) END AS financial_year
FROM t_income_expense
GROUP BY financial_year";
$query = $this->db->query($sql);
return $query->result();
}
function getCompany()
{
$r = $this->db->get('T_Company_Details');
return $r->result();
}
function getAccounutInfo($i)
{
$this->db->select('t_accountcode.name,t_income_expense.*');
$this->db->from('t_income_expense');
$this->db->join('t_accountcode','t_income_expense.account_code=t_accountcode.code');
$this->db->order_by("date", "desc");
//$this->db->where('t_income_expense.id')
$r = $this->db->get();
return $r->result();
}
function Selectcash()
{
$this->db->select('*');
$this->db->from('t_accountcode');
$query = $this->db->get();
$result = $query->result();
return $result;
}
function Selectadvance($i="")
{
// echo $i;
$this->db->select('T_SupplierDetailsN.SupplierName,t_accountcode.name,cashtype,T_Employee_Details.FirstName,T_Employee_Details.LastName,t_income_expense.*');
$this->db->from('t_income_expense');
$this->db->join('t_accountcode','t_income_expense.account_code=t_accountcode.code','left');
$this->db->join('tbl_users','t_income_expense.Created_By=tbl_users.userId','left');
$this->db->join('T_Employee_Details','tbl_users.EmpID=T_Employee_Details.EmpID','left');
$this->db->join('T_SupplierDetailsN','T_SupplierDetailsN.SupplierID=t_income_expense.Supplier_id' );
$this->db->order_by("date","desc");
$this->db->where_in('t_accountcode.code',[AReceipt,Apayment]);
if(!empty($i))
{
$this->db->where('t_income_expense.id',$i);
}
$r = $this->db->get();
return $r->result();
}
function viewdepartment($sid='')
{
$sql="SELECT ie.*,br.*,br.ID,ie.totalbankamount,ac.name,ie.id,date_format(ie.date,'%d-%m-%Y')as date FROM t_income_expense ie
left join t_accountcode ac on ac.code=ie.account_code
left join T_bankreport br on br.ID=ie.bankid
WHERE ie.id = ?";
$query = $this->db->query($sql,array($sid));
//print_r($this->db->last_query());
//echo $sql;
return $query->result();
}
function deletefile($cashid)
{
//echo $cashid;
$sql="UPDATE t_income_expense SET document = NULL
WHERE id = ?";
$query = $this->db->query($sql,array($cashid));
//print_r($this->db->last_query());
//echo $sql;
$r = $this->db->affected_rows();
return $r;
}
function updatedepartment($updateaccount,$id1)
{
$this->db->where('id', $id1);
$this->db->update('t_income_expense',$updateaccount);
$r = $this->db->affected_rows();
return $r;
}
/**
* To Update Payment Master datas
* array $updateaccount - Payment Master datas
* string $id1 - Payment's id
* return $ar - it return how many rows will affected
*/
function updatepaymentmaster($updateaccount,$id1)
{
$this->db->where('id', $id1);
$this->db->update('t_income_expense',$updateaccount);
//$ar = $this->db->affected_rows();
//return $ar;
$last_id = $this->db->insert_id();
return $last_id;
}
/**
* To Get Payment Master for edit
* string $sid - Payment id
* return $query->result() - Payment datas based on id return as an array
*/
function viewpaymentmaster($sid='')
{
$sql="SELECT ie.*,ac.name,date_format(ie.date,'%d-%m-%Y')as date
FROM T_Paymentdetails pd
JOIN t_income_expense ie ON ie.id = pd.Payment_id
JOIN t_accountcode ac ON ac.code = pd.account_code
WHERE ie.id = ?
group by pd.Payment_id";
$query = $this->db->query($sql,array($sid));
return $query->result();
}
/**
* To Get Payment lineitem Details for list (list dialog box)
* string $paymentid - Payment id
* return $result - Payment lineitem datas based on id return as an array
*/
function viewpaymentdetails($paymentid)
{
$sql="SELECT ac.name,pd.*,ie.*
FROM T_Paymentdetails pd
JOIN t_income_expense ie ON ie.id = pd.Payment_id
JOIN t_accountcode ac ON ac.code = pd.account_code
WHERE pd.Payment_id = ".$paymentid ;
$query = $this->db->query($sql);
$result = $query->result();
return $result;
}
/**
* To Add and Update Payment Lineitem datas
* array $PaymentDetails - Payment lineitem datas
* return $i - To insert Payment datas based on id if new data means
* return $u - To update Payment datas based on id if already have means
*/
function addpaymentdetails($addPaymentDetails){
$this->db->insert('T_Paymentdetails',$addPaymentDetails);
$r = $this->db->affected_rows();
return $r;
// $this->db->set($addPaymentDetails);
// $this->db->insert($this->db->dbprefix . 'T_Paymentdetails');
}
function updatepaymentdetails($UpdatePaymentsdetails,$hidekey){
$this->db->where('ID', $hidekey);
$this->db->update('T_Paymentdetails',$UpdatePaymentsdetails);
$ar = $this->db->affected_rows();
return $ar;
}
/**
* To Delete Payment Lineitem datas
* string $acc - Payment's accountcode
* string $id - Payment's id
* return $ar - It returns how many rows will affetected
*/
function deletepaymentdetails($id){
$sql = "DELETE FROM T_Paymentdetails WHERE ID =".$id;
$query = $this->db->query($sql);
$ar = $this->db->affected_rows();
return $ar;
}
/**
* To get bank details
* @return array $result : result of the query (returns bank details)
**/
function getBankDetails()
{
$this->db->select('*');
$this->db->from('T_Bank_Details');
$query = $this->db->get();
$result = $query->result();
return $result;
}
/**
* To get bank details
* @return array $result : result of the query (returns bank details)
**/
function getbalancedetails()
{
$subquery="SELECT openingbalance,closingbalance FROM T_bankbalance WHERE balance_keyid in (SELECT MAX(balance_keyid) FROM T_bankbalance)";
$query = $this->db->query($subquery);
return $query->result();
}
function cleareddebitbalance()
{
$sql = "SELECT SUM(Balancetocleared) as debit FROM T_bankreport where Clearbalance >'0'";
$query = $this->db->query($sql);
return $query->result();
}
function clearedcreditbalance()
{
$sql = "SELECT SUM(cbalancetocleared) as credit FROM T_bankreport where cclearbalance >'0'";
$query = $this->db->query($sql);
return $query->result();
}
function bankfile($FileDetails)
{
$this->db->insert('T_bankingfile',$FileDetails);
$r = $this->db->affected_rows();
return $r;
}
function bankfiledata($filedataupload)
{
$this->db->select('reportdate,Narration,Balance');
$this->db->from('T_bankreport');
$this->db->where('reportdate',$filedataupload['reportdate']);
$this->db->where('Narration',$filedataupload['Narration']);
$this->db->where('Balance',$filedataupload['Balance']);
$query = $this->db->get();
if ($query->num_rows() > 0)
{
return true;
}
else{
$this->db->insert('T_bankreport', $filedataupload);
$r = $this->db->affected_rows();
//print_r($this->db->last_query());
return $r;
}
}
function balance($balance)
{
$this ->db->insert('T_bankbalance',$balance);
}
function report_finyear()
{
$sql="SELECT
CASE WHEN MONTH(reportdate)>=4 THEN
concat(YEAR(reportdate), '-',YEAR(reportdate)+1)
ELSE concat(YEAR(reportdate)-1,'-', YEAR(reportdate)) END AS financial_year
FROM T_bankreport
GROUP BY financial_year";
$query = $this->db->query($sql);
return $query->result();
}
function bankstatement($fdate,$tdate,$fa,$aa)
{
$sql="SELECT *,date_format(reportdate,'%d-%m-%Y')as date,tie.total,date_format(valuedate,'%d-%m-%Y')as valuedate from T_bankreport as br left join t_income_expense as tie on tie.bankid=br.ID where br.reportdate !=0 ";
if ($fa and $aa != '')
{
$sql.=" and (reportdate >= '".$fa."-04-01' and reportdate<= '".$aa."-03-31')";
}
if ($fdate and $tdate != '')
{
$fdate= date("Y-m-d",strtotime($fdate));
$tdate=date("Y-m-d",strtotime($tdate));
$sql.= " and date(reportdate) >= '".$fdate."'
and date(reportdate) <= '".$tdate."'";
}
$sql.=" group by(br.ID) ";
$sql.=" ORDER BY br.ID+0 DESC ";
$query = $this->db->query($sql);
return $query->result();
}
function debitbankstatemet($Supplierid,$fdate,$tdate)
{
$status='ST057';
$this->db->distinct();
$this->db->select('igr.PONO,igrli.IGRItemNo,igr.IGRNO,supp.SupplierName,igrli.CreatedDate,BR.Balancetopay,BR.Amountpaid,pom.Status,igrli.QuantityAsPerInvoice ,poli.Rate,(igrli.QuantityAsPerInvoice * poli.Rate) as total');
$this->db->from ('T_IGR_Details igrli');
$this->db->join('T_IGR_Master igr','igrli.IGRNO = igr.IGRNO','left');
$this->db->join('T_PurchaseOrder_LineItem poli','igr.PONO= poli.PONO and igrli.MaterialCode=poli.MaterialCode');
$this->db->join('T_PurchaseOrder_Master pom','poli.PONO =pom.PONO');
$this->db->join('T_SupplierDetailsN supp','pom.SupplierID =supp.SupplierID');
$this->db->join ('T_Bankporeport BR','igrli.IGRItemNo = BR.IGRLineItemNo','left');
if ($fdate and $tdate != ''){
$fromdate= date("Y-m-d",strtotime($fdate));
$todate=date("Y-m-d",strtotime($tdate));
$date = "date(igr.CreatedDate) >= '".$fromdate."'
and date(igr.CreatedDate) <= '".$todate."'";
$this->db->where($date);
}
if ($Supplierid != ''){
$this->db->where('supp.SupplierID',$Supplierid);
}
$this->db->where_in('igr.IGRStatus','ST027');
//$this->db->where_in('pom.Status',[ST044,ST056]);
$this->db->where('igrli.BankStatus !=','ST070');
$query = $this->db->get();
return $query->result();
}
function bankinvoice($Customer,$fdate,$tdate)
{
// $status='ST065';
$this->db->distinct();
$this->db->select('iva.invoice_id,iva.invoice_total,iv.invoice_date_created,iv.invoice_number,iva.invoice_paid,ic.client_name,BI.balancetoreceived,BI.amountreceived');
$this->db->from ('ip_invoice_amounts iva');
$this->db->join ('ip_invoices iv','iva.invoice_id = iv.invoice_id');
$this->db->join ('ip_clients ic','iv.client_id = ic.client_id','left');
$this->db->join ('T_Bankinvoicereport BI',' iv.invoice_number =BI.invoiceno','left');
//$this->db->where('iva.receivedstatus !=','ST065');
$this->db->where('iv.invoice_status_id','2');
$this->db->where('iv.receivedstatus !=','ST065');
if ($fdate and $tdate != ''){
$fromdate= date("Y-m-d",strtotime($fdate));
$todate=date("Y-m-d",strtotime($tdate));
$date = "date(iv.invoice_date_created) >= '".$fromdate."'
and date(iv.invoice_date_created) <= '".$todate."'";
$this->db->where($date);
}
if ($Customer != ''){
$this->db->where('ic.client_id',$Customer);
}
$this->db->group_by('iva.invoice_id');
//$this->db->where('inc.type','PAYMENT');
$query = $this->db->get();
return $query->result();
}
function receiptdata()
{
$this->db->distinct();
$this->db->select('inc.type,inc.date,inc.account_code,inc.towhom,inc.total');
$this->db->from ('t_income_expense inc');
$this->db->where('inc.type','RECEIPT');
$query = $this->db->get();
return $query->result();
}
function paymentdata()
{
$this->db->distinct();
$this->db->select('inc.type,inc.date,inc.account_code,inc.towhom,inc.total');
$this->db->from ('t_income_expense inc');
//$this->db->group_by('inc.account_code');
//$this->db->where('inc.type','PAYMENT');
$query = $this->db->get();
return $query->result();
}
//function for image
function debitimage($igrno,$pono)
{
$this->db->select('*');
$this->db->from ('T_PurchaseOrder_BillUpload');
$this->db->where('IGRNO != "" ');
$this->db->where('IGRNO',$igrno);
$this->db->or_where('PONO',$pono);
$query = $this->db->get();
$result = $query->result();
// print_r($result);die;
return $result;
}
function debitpolistfilter($SupplierName,$fdate,$tdate)
{
$this->db->select('bm.id,bm.mid,igrm.MaterialRcvdDate,bm.PONO,bm.Suppliername,bm.Totalpoamount,
bm.Balancetopay,bm.Amountpaid,bm.IGRNO,igrm.file,bm.IGRLineItemNo,br.Clearbalance,br.Balancetocleared,bu.FilePath,bu.BillNo,inward.FilePath as Fpath');
$this->db->from ('T_Bankmappingpo bm');
$this->db->join ('T_IGR_Master igrm','igrm.IGRNO = bm.IGRNO');
//$this->db->join ('T_IGR_Details igrde','igrde.IGRNO=igrm.IGRNO');
$this->db->join ('T_SupplierDetailsN sd','sd.SupplierName = bm.Suppliername');
$this->db->join ('T_bankreport br','br.ID=bm.mid');
$this->db->join('T_Inwardgateregister_fileupload inward','inward.IGRNO =igrm.IGRNO','left');
$this->db->join ('T_PurchaseOrder_BillUpload bu','bm.PONO=bu.PONO','left');
if($fdate!='' && $tdate!='')
{
$this->db->where('bm.Podate BETWEEN "'. date('Y-m-d', strtotime($fdate)). '" and "'. date('Y-m-d', strtotime($tdate)).'"');
}
if($SupplierName!='')
{
$this->db->where('sd.SupplierID',$SupplierName);
}
$this->db->where('bm.IsActive',1);
$this->db->group_by('bm.id');
$query = $this->db->get();
return $query->result();
}
function igrmastersingle($igrno,$pono)
{
$this->db->distinct();
$this->db->select('IGRNO,file,PONO as pono');
$this->db->from('T_IGR_Master');
if(!empty($igrno) && !empty($pono)){
$this->db->where('PONO',$pono);
$this->db->where('IGRNO',$igrno);
}else if(!empty($pono)){
$this->db->where('PONO',$pono);
$this->db->where('IGRNO != ""');
}else{
$this->db->where('IGRNO',$IGRNO);
}
$query = $this->db->get();
return $query->result();
}
function igrmastermultiple($igrno,$pono)
{
$this->db->distinct();
$this->db->select('BillNo,IGRNO,FilePath,PONO');
$this->db->from('T_Inwardgateregister_fileupload');
if(!empty($igrno) && !empty($pono)){
$this->db->where('PONO',$pono);
$this->db->where('IGRNO',$igrno);
}else if(!empty($pono)){
$this->db->where('PONO',$pono);
$this->db->where('IGRNO != ""');
}else{
$this->db->where('IGRNO',$IGRNO);
}
$query = $this->db->get();
return $query->result();
}
function debitpolist($bankid)
{
$this->db->select('bp.id,bp.mid,igrm.MaterialRcvdDate,bp.PONO,bp.Suppliername,bp.Totalpoamount,br.Debit,bp.Balancetopay,bp.Amountpaid,bp.IGRNO,bp.IGRLineItemNo,igrm.file,bu.FilePath,inward.FilePath as Fpath');
$this->db->from ('T_Bankmappingpo bp');
$this->db->join ('T_IGR_Master igrm','bp.IGRNO = igrm.IGRNO','left');
$this->db->join ('T_PurchaseOrder_BillUpload bu','bu.PONO = bp.PONO','left');
$this->db->join('T_Inwardgateregister_fileupload inward','inward.IGRNO =igrm.IGRNO','left');
$this->db->join ('T_bankreport br','br.ID=bp.mid');
$this->db->where('bp.IsActive',1);
$this->db->where('bp.mid',$bankid);
// $this->db->where('igrde.BankStatus !=','ST072');
$this->db->group_by('bp.id');
$query = $this->db->get();
return $query->result();
}
function creditinvoicelist($bankid)
{
$this->db->select('bm.indate,bm.invoiceno,bm.customername,bm.totinvoiceamount,bm.bankid,
bm.balancetoreceived,bm.amountreceived,bm.ID,br.Credit');
$this->db->from ('T_Bankmappingiv bm');
$this->db->join('T_bankreport br','br.ID=bm.bankid');
$this->db->where('bm.bankid',$bankid);
$this->db->where('bm.IsActive',1);
//$this->db->group_by('invoiceno');
$query = $this->db->get();
return $query->result();
}
function creditinvoicelistfilter($Customer,$fdate,$tdate)
{
$this->db->select('bm.ID,bm.indate,bm.invoiceno,bm.customername,bm.totinvoiceamount,bm.bankid,
bm.balancetoreceived,bm.amountreceived,br.cclearbalance,br.cbalancetocleared');
$this->db->from ('T_Bankmappingiv bm');
$this->db->where('bm.IsActive',1);
$this->db->join ('ip_clients ic','ic.client_name = bm.customername','left');
$this->db->join('T_bankreport br','br.ID = bm.bankid');
if($fdate!='' && $tdate!='')
{
$this->db->where('bm.indate BETWEEN "'. date('Y-m-d', strtotime($fdate)). '" and "'. date('Y-m-d', strtotime($tdate)).'"');
}
if($Customer!='')
{
$this->db->where('ic.client_id',$Customer);
}
//$this->db->group_by('invoiceno');
$query = $this->db->get();
return $query->result();
}
//for cashbook edit screen and update bankreport//
function invoiceamonut($bankid)
{
$this->db->select('sum(amountreceived)as amountreceived');
$this->db->from ('T_Bankmappingiv');
$this->db->where('bankid',$bankid);
$this->db->where('IsActive',1);
//$this->db->group_by('invoiceno');
$query = $this->db->get();
return $query->result();
}
//for cashbook edit screen and update bankreport//
function poamonut($bankid)
{
$this->db->select('sum(Amountpaid)as amountpaid');
$this->db->from ('T_Bankmappingpo');
$this->db->where('mid',$bankid);
$this->db->where('IsActive',1);
//$this->db->group_by('invoiceno');
$query = $this->db->get();
return $query->result();
}
function cashbookamount($bankid)
{
$this->db->select('sum(total)as total');
$this->db->from ('t_income_expense');
$this->db->where('bankid',$bankid);
$this->db->where('IsActive',1);
//$this->db->group_by('invoiceno');
$query = $this->db->get();
return $query->result();
}
function mappingcash($SupplierName,$fdate,$tdate,$bankid)
{
$this->db->select('ie.id,ie.date,ie.bankid,ie.cashtype,ie.amounttype,ie.total,ac.name,totalbankamount,ie.id');
$this->db->from ('t_income_expense as ie');
$this->db->join ('t_accountcode ac ','ac.code = ie.account_code','left');
$this->db->where('bankid',$bankid);
$this->db->where('IsActive',1);
//$this->db->group_by('mid');
$query = $this->db->get();
return $query->result();
}
function newcashbook()
{
$this->db->select('cdate,mid,btype,amount,boption,mappingamount,totalamount,amounttype,alreadycreditpaid');
$this->db->from ('T_Bankmappingcashbook');
//$this->db->where('mid',$bankid);
//$this->db->group_by('mid');
$query = $this->db->get();
return $query->result();
}
//function debitlistpo($SupplierName,$fdate,$tdate,$pono)
function debitlistpo($igrLTno)
{
$this->db->select('bmp.mid,bmp.PONO,bmp.IGRLineItemNo,bmp.Amountpaid,br.Narration');
$this->db->from ('T_Bankmappingpo as bmp');
$this->db->join('T_bankreport br','br.ID = bmp.mid');
$this->db->where('IGRLineItemNo',$igrLTno);
$this->db->where('bmp.IsActive',1);
//$this->db->group_by('PONO');
$query = $this->db->get();
return $query->result();
}
function creditlistinv($invno)
{
$this->db->select('bmp.bankid,bmp.invoiceno,bmp.amountreceived,br.Narration');
$this->db->from ('T_Bankmappingiv as bmp');
$this->db->join('T_bankreport br','br.ID = bmp.bankid');
$this->db->where('invoiceno',$invno);
$this->db->where('bmp.IsActive',1);
//$this->db->group_by('invoiceno');
$query = $this->db->get();
return $query->result();
}
function getsupplier()
{
$this->db->select('SupplierName,SupplierID');
$this->db->from('T_SupplierDetailsN');
//$this->db->join('t_accountcode','t_income_expense.account_code=t_accountcode.code');
//$this->db->where('t_income_expense.id')
$r = $this->db->get();
return $r->result();
}
function checkMerchant($mer){
$temp[] = '' ;
$this->db->distinct();
$this->db->select('SupplierID,SupplierName');
$this->db->from('T_SupplierDetailsN');
$this->db->like('SupplierName',$mer);
$query = $this->db->get();
$temparr[] = '' ;
foreach($query->result() as $arr){
$temparr[] = $arr->SupplierName;
}
$temp['suggestions'] = $temparr;
return $temp;
}
function getsupp_dtls($s){
$this->db->select('GSTNO');
$this->db->from('T_SupplierDetailsN');
$this->db->where('SupplierName',$s);
$r = $this->db->get();
return $r->result();
}
function getcustomer()
{
$this->db->select('client_name,client_id');
$this->db->from('ip_clients');
//$this->db->join('t_accountcode','t_income_expense.account_code=t_accountcode.code');
//$this->db->where('t_income_expense.id')
$r = $this->db->get();
return $r->result();
}
function invoicedata($invoicedata)
{
$this->db->insert('T_Bankinvoicereport',$invoicedata);
// $this->db->where('PONO',$pono);
$r = $this->db->affected_rows();
return $r;
}
function podata($podata)
{
$this->db->insert('T_Bankporeport',$podata);
// $this->db->where('PONO',$pono);
$r = $this->db->affected_rows();
return $r;
}
function mappingpo($podata)
{
$this->db->insert('T_Bankmappingpo',$podata);
// $this->db->where('PONO',$pono);
$r = $this->db->affected_rows();
return $r;
}
function mappinginvoice($invoicedata)
{
$this->db->insert('T_Bankmappingiv',$invoicedata);
// $this->db->where('PONO',$pono);
$r = $this->db->affected_rows();
return $r;
}
public function getpono($igrlineitem)
{
$this->db->select('IGRLineItemNo');
$this->db->from('T_Bankporeport');
$this->db->where('IGRLineItemNo ',$igrlineitem);
$query = $this->db->get();
// print_r( $this->db->last_query());
return $query->result();
}
public function invoiceupdate($invid)
{
$this->db->select('invoiceno');
$this->db->from('T_Bankinvoicereport');
$this->db->where('invoiceno',$invid);
$query = $this->db->get();
// print_r( $this->db->last_query());
return $query->result();
}
public function bankid($pono)
{
$this->db->select('PONO');
$this->db->from('T_Bankporeport');
$this->db->where('PONO ',$pono);
$query = $this->db->get();
// print_r( $this->db->last_query());
return $query->result();
}
public function cashbankupdate($cashbookstatus,$bankid)
{
// echo $bankid;
$this->db->where('ID',$bankid);
$this->db->update('T_bankreport',$cashbookstatus);
return TRUE;
}
function cashcreditupdate($cashbookstatus1,$bankid)
{
$this->db->where('ID',$bankid);
$this->db->update('T_bankreport',$cashbookstatus1);
return TRUE;
}
public function bankupdate($bankdata,$bankid)
{
$this->db->where('ID',$bankid);
$this->db->update('T_bankreport',$bankdata);
return TRUE;
}
public function bankcreditupdate($bankcreditdata,$bankid)
{
$this->db->where('ID',$bankid);
$this->db->update('T_bankreport',$bankcreditdata);
//print_r($this->db->last_query());
return TRUE;
}
public function getearlyamount($igrlineitem)
{
$this->db->select('Amountpaid');
$this->db->from('T_Bankporeport');
$this->db->where('IGRLineItemNo ',$igrlineitem);
$query = $this->db->get();
// print_r( $this->db->last_query());
return $query->result();
}
public function getearlyamountcredit($invid)
{
$this->db->select('amountreceived');
$this->db->from('T_Bankinvoicereport');
$this->db->where('invoiceno ',$invid);
$query = $this->db->get();
// print_r( $this->db->last_query());
return $query->result();
}
public function getalreadypaid($bankid)
{
$this->db->select('Clearbalance');
$this->db->from('T_bankreport');
$this->db->where('ID ',$bankid);
$query = $this->db->get();
// print_r( $this->db->last_query());
return $query->result();
}
public function getalreadyreceived($bankid)
{
$this->db->select('cclearbalance');
$this->db->from('T_bankreport');
$this->db->where('ID ',$bankid);
$query = $this->db->get();
// print_r( $this->db->last_query());
return $query->result();
}
public function poupdate($podata,$igrlineitem)
{
$this->db->where('IGRLineItemNo',$igrlineitem);
$this->db->update('T_Bankporeport',$podata);
return TRUE;
}
public function invoiceupdate1($invoicedata,$invid)
{
//print_r($invoicedata);
//print_r($invid);
$this->db->where('invoiceno',$invid);
$this->db->update('T_Bankinvoicereport',$invoicedata);
return TRUE;
}
function paided()
{
$this->db->select('*');
$this->db->from('T_Bankmappingpo');
$query = $this->db->get();
$result = $query->result();
return $result;
}
function received()
{
$this->db->select('*');
$this->db->from('T_Bankmappingiv');
$query = $this->db->get();
$result = $query->result();
return $result;
}
function igrdetailstatus($igrdetails,$igrlineitem)
{
$this->db->where('IGRItemNo',$igrlineitem);
$this->db->update('T_IGR_Details',$igrdetails);
$r = $this->db->affected_rows();
return $r;
}
function invoiceamountstatus($invoicemaster,$invid)
{
$this->db->where('invoice_number',$invid);
$this->db->update('ip_invoices',$invoicemaster);
$r = $this->db->affected_rows();
return $r;
}
function Cashbook($cashbookdatas)
{
$code=$cashbookdatas['code'];
$type=$cashbookdatas['type'];
$count=0;
$this->db->select('count(*) as count');
$this->db->from('t_accountcode');
$this->db->where('type',$type);
$this->db->where('code',$code);
$isExits = $this->db->get();
$res = $isExits->result_array();
if(!empty($res))
{
$count = $res[0]['count'];
}
if($count == 0 )//for cashbook_insert
{
$cbi = $this->db->insert('t_accountcode', $cashbookdatas);
return $cbi;
}
elseif($count == 1)//for cashbook_update
{
$this->db->where('code',$code);
$cbu = $this->db->update('t_accountcode',$cashbookdatas);
return $cbu;
}
}
function getAccountpay()
{
$this->db->where('type',PAYMENT);
$r = $this->db->get('t_accountcode');
return $r->result();
}
function getAccounTypes1()
{
$this->db->select('name,type');
$r = $this->db->get('t_accountcode');
return $r->result();
}
function deletemapping($Bankid,$updateamount,$updatebalancetoclear)
{
$this->db->set('Clearbalance',$updateamount);
$this->db->set('Balancetocleared',$updatebalancetoclear);
$this->db->where('ID',$Bankid);
$this->db->update('T_bankreport');
$r = $this->db->affected_rows();
return $r;
}
function updatebankreportiv($bankid,$bankstatement)
{
$this->db->where('ID',$bankid);
$this->db->update('T_bankreport',$bankstatement);
$r = $this->db->affected_rows();
return $r;
}
function IgrDetailsStatusUpdate($igrno,$BankStatus)
{
$this->db->set('BankStatus',$BankStatus);
$this->db->where('IGRItemNo',$igrno);
$this->db->update('T_IGR_Details');
$r = $this->db->affected_rows();
return $r;
}
function deleteBankmappingpo($id,$IsActive)
{
$this->db->set('IsActive',$IsActive);
$this->db->where('id',$id);
$this->db->update('T_Bankmappingpo');
$r = $this->db->affected_rows();
return $r;
}
function UpdateIpinvoiceStatus($invoiceno,$receivedstatus)
{
$this->db->set('receivedstatus',$receivedstatus);
$this->db->where('invoice_number',$invoiceno);
$this->db->update('ip_invoices');
$r = $this->db->affected_rows();
return $r;
}
function deletemappinginvoice($mappingid,$IsActive)
{
$this->db->set('IsActive',$IsActive);
$this->db->where('ID',$mappingid);
$this->db->update('T_Bankmappingiv');
$r = $this->db->affected_rows();
return $r;
}
function updateBankporeportpo($igrno,$totalbalancetopay,$updatebankpoamount,$Bankid)
{
$this->db->set('Balancetopay',$totalbalancetopay);
$this->db->set('Amountpaid',$updatebankpoamount);
$this->db->where('IGRLineItemNo',$igrno);
$this->db->where('mid',$Bankid);
$this->db->update('T_Bankporeport');
$r = $this->db->affected_rows();
return $r;
}
function updatebankinvoicereport($invoiceno,$bankid,$updatebalancetoreceived,$updateamountreceived)
{
$this->db->set('balancetoreceived',$updatebalancetoreceived);
$this->db->set('amountreceived',$updateamountreceived);
$this->db->where('invoiceno',$invoiceno);
$this->db->where('bankid',$bankid);
$this->db->update('T_Bankinvoicereport');
$r = $this->db->affected_rows();
return $r;
}
function gettotalbankmappingpo($igrno)
{
$this->db->select('sum(Amountpaid)as Amountpaid');
$this->db->from ('T_Bankmappingpo');
$this->db->where('IGRLineItemNo',$igrno);
$this->db->where('IsActive',1);
$this->db->group_by('T_Bankmappingpo.IGRLineItemNo');
$query = $this->db->get();
return $query->result();
}
function getlatestamount($mappingid,$invoiceno)
{
$this->db->select('min(balancetoreceived)as balancetoreceived');
$this->db->from ('T_Bankmappingiv');
$this->db->where('ID',$mappingid);
$this->db->where('invoiceno',$invoiceno);
$this->db->where('IsActive',1);
//$this->db->group_by('T_Bankmappingpo.IGRLineItemNo');
$query = $this->db->get();
return $query->result();
}
function getlatest($invoiceno)
{
$sql="select ID,balancetoreceived from T_Bankmappingiv where invoiceno='$invoiceno' and
ID in(select max(ID) from T_Bankmappingiv group by invoiceno)";
$query =$this->db->query($sql);
return $query->result();
}
function deletecashbookdata($Bankid,$updatebankamount,$clearbalance)
{
$this->db->set('Clearbalance',$clearbalance);
$this->db->set('Balancetocleared',$updatebankamount);
$this->db->where('ID',$Bankid);
$this->db->update('T_bankreport');
$r = $this->db->affected_rows();
return $r;
}
function deletecashbookdatacredit($Bankid,$updateclearbalance,$updatebalancetoclear)
{
$this->db->set('cclearbalance',$updateclearbalance);
$this->db->set('cbalancetocleared',$updatebalancetoclear);
$this->db->where('ID',$Bankid);
$this->db->update('T_bankreport');
$r = $this->db->affected_rows();
return $r;
}
function getaccountcode($accountname)
{
$this->db->select('code');
$this->db->from ('t_accountcode');
$this->db->where('name',$accountname);
$query = $this->db->get();
return $query->result();
}
function StatusUpadateCashbook($id,$IsActive)
{
$this->db->set('IsActive',$IsActive);
$this->db->where('id',$id);
$this->db->update('t_income_expense');
$r = $this->db->affected_rows();
return $r;
}
}
?>