799 lines
26 KiB
PHP
799 lines
26 KiB
PHP
<?php if(!defined('BASEPATH')) exit('No direct script access allowed');
|
|
|
|
class inwardgateregister_model extends CI_Model
|
|
{
|
|
// function __construct(){
|
|
// parent::__construct();
|
|
// //load our second db and put in $db2
|
|
// $this->db2 = $this->load->database('invoicedb', TRUE);
|
|
// }
|
|
|
|
function updatefile($bill,$Picture,$oldfile)
|
|
{
|
|
|
|
// if($oldfile != ''){
|
|
// //unlink("uploads/BillFiles/".$oldfile);//this deletes the file on particular folder too
|
|
// }
|
|
|
|
$this->db->set('FilePath', $Picture); //value that used to update column
|
|
$this->db->where('BillNo', $bill); //which row want to upgrade
|
|
$this->db->update('T_Inwardgateregister_fileupload');
|
|
$afftectedRows = $this->db->affected_rows();
|
|
return $afftectedRows;
|
|
|
|
}
|
|
|
|
|
|
function getfies($igr)
|
|
{
|
|
|
|
$this->db->select('*');
|
|
|
|
|
|
$this->db->from('T_Inwardgateregister_fileupload');
|
|
|
|
$this->db->where('IGRNO',$igr);
|
|
|
|
$query = $this->db->get();
|
|
|
|
return $query->result();
|
|
}
|
|
|
|
function fileupload($myfiles)
|
|
{
|
|
|
|
|
|
$this->db->insert('T_Inwardgateregister_fileupload',$myfiles);
|
|
$myfile=$this->db->affected_rows();
|
|
return $myfile;
|
|
}
|
|
|
|
function addMaterialStockHistory($MaterialstockHistoryadd)
|
|
{
|
|
|
|
$this->db->trans_start();
|
|
$this->db->insert('T_Material_stock_history', $MaterialstockHistoryadd);
|
|
$insert_id = $this->db->affected_rows();
|
|
$this->db->trans_complete();
|
|
// print_r($this->db->last_query());
|
|
//print_r($insert_id);
|
|
if($insert_id>0)
|
|
{
|
|
$subQuery = 'select * from T_Material_stock_history';
|
|
|
|
$query = $this->db->query($subQuery);
|
|
|
|
return $query->result();
|
|
}
|
|
|
|
|
|
}
|
|
|
|
/*------------------------------------------------------------*/
|
|
// function igrListing()
|
|
// {
|
|
// $this->db->select('igr.*,PO.DeliveryDate,sup.SupplierName,igr.file');
|
|
// $this->db->from('T_IGR_Master igr');
|
|
// $this->db->join('T_PurchaseOrder_Master PO','igr.PONO = PO.PONO');
|
|
// $this->db->join('T_SupplierDetailsN` sup','PO.SupplierID = sup.SupplierID');
|
|
// $this->db->order_by('igr.CreatedDate','desc');
|
|
// $query = $this->db->get();
|
|
// $result = $query->result();
|
|
// return $result;
|
|
// }
|
|
|
|
/**
|
|
* To get the IGR details for listing
|
|
* @return array $result : result of the query (returns igr informations)
|
|
*/
|
|
function igrListing()
|
|
{
|
|
|
|
$this->db->select('igr.*,PO.DeliveryDate,sup.SupplierName,igr.file,igrdetail.*,POL.Quantity,MM.MaterialName');
|
|
$this->db->from('T_IGR_Master igr');
|
|
$this->db->join('T_PurchaseOrder_Master PO','igr.PONO = PO.PONO');
|
|
$this->db->join('T_SupplierDetailsN` sup','PO.SupplierID = sup.SupplierID');
|
|
$this->db->join('T_IGR_Details igrdetail','igrdetail.IGRNO = igr.IGRNO');
|
|
$this->db->join('T_PurchaseOrder_LineItem POL','igr.PONO = POL.PONO and POL.MaterialCode=igrdetail.MaterialCode');
|
|
$this->db->join('T_MaterialMaster MM', 'MM.MaterialCode = igrdetail.MaterialCode');
|
|
$this->db->order_by('igr.IGRNO','desc');
|
|
//$this->db->group_by('igr.IGRNO');
|
|
$query = $this->db->get();
|
|
$result = $query->result();
|
|
|
|
return $result;
|
|
}
|
|
|
|
function viewIGRFile($IGRNO)
|
|
{
|
|
$this->db->distinct();
|
|
$this->db->select('*'); //BillNo,IGRNO,FilePath,PONO
|
|
$this->db->from('T_Inwardgateregister_fileupload');
|
|
$this->db->where('IGRNO',$IGRNO);
|
|
|
|
$query = $this->db->get();
|
|
|
|
$result = $query->result();
|
|
// print_r($result);die;
|
|
//print_r($this->db->last_query());
|
|
return $result;
|
|
}
|
|
|
|
/**
|
|
* To get the po details
|
|
* @return array $result : result of the query (returns po information)
|
|
*/
|
|
function getpurchaseorder()
|
|
{
|
|
$this->db->distinct();
|
|
$this->db->select('POM.PONO,POM.ServiceDescription,POM.DeliveryDate,sup.SupplierName,sup.Address,POM.status,POL.OGR_Status');
|
|
$this->db->from('T_PurchaseOrder_Master POM');
|
|
$this->db->join('T_PurchaseOrder_LineItem POL', 'POL.PONO = POM.PONO');
|
|
$this->db->join('T_SupplierDetailsN sup', 'POM.SupplierID = sup.SupplierID');
|
|
$this->db->join('T_OGR_Master OGM ', 'POM.PONO = OGM.PONO_INV','left');
|
|
$this->db->where('POM.Status',PO_RELEASED);
|
|
$this->db->where('POM.POType !=',SERVICE);
|
|
$this->db->or_where('POM.Status',IGR_CREATED);
|
|
$this->db->or_where('POM.Status',MRIR_CREATED);
|
|
$this->db->or_where('POM.Status',MRIR_APPROVED);
|
|
$this->db->or_where('POM.Status',OGR_COMPLETE);
|
|
$query = $this->db->get();
|
|
|
|
$result = $query->result();
|
|
|
|
return $result;
|
|
}
|
|
|
|
/**
|
|
* To get the po details for revalant Po
|
|
* @param number $PO : This is po number
|
|
* @return array $query->result() : result of the query (returns po details)
|
|
*/
|
|
function viewpurchaseorder($PO)
|
|
{
|
|
|
|
$subQuery ='SELECT distinct POM.PONO,POL.MaterialCode,POL.Quantity,POL.ReceivedQuantity,(POL.Quantity -POL.ReceivedQuantity ) as PendingQty,QuantityRejected,POL.PONO,MM.MaterialName,MM.UOM
|
|
from T_PurchaseOrder_Master POM
|
|
left join T_PurchaseOrder_LineItem POL on POL.PONO = POM.PONO
|
|
left join T_IGR_Master IGM on IGM.PONO =POL.PONO
|
|
left join T_IGR_Details igr on igr.MaterialCode = POL.MaterialCode and IGM.PONO =POL.PONO
|
|
left join T_MaterialMaster MM on MM.MaterialCode = POL.MaterialCode
|
|
left join T_MRIR_Master MRM on POM.PONO=MRM.PONO
|
|
left join T_MRIR_Details MRD on MRM.MRIRNO=MRD.MRIRNO and POL.MaterialCode=MRD.MaterialCode
|
|
where POM.PONO=? group by POL.MaterialCode';// and POM.Status not in(?) ';
|
|
|
|
$query = $this->db->query($subQuery, array($PO,IGR_CREATED));
|
|
return $query->result();
|
|
|
|
|
|
}
|
|
|
|
/**
|
|
* To store the igr master details
|
|
* @param array $igrM : This will have all igr master details
|
|
* @var number $insert_id : This will have insertion count
|
|
* @return array $query->result() : result of the query (returns igr no based on count value)
|
|
*/
|
|
function addigrM($igrM)
|
|
{
|
|
|
|
$this->db->trans_start();
|
|
$this->db->insert('T_IGR_Master', $igrM);
|
|
$insert_id = $this->db->affected_rows();
|
|
$this->db->trans_complete();
|
|
|
|
if($insert_id>0)
|
|
{
|
|
$subQuery = 'select max(IGRNO) as IGRNO from T_IGR_Master';
|
|
|
|
$query = $this->db->query($subQuery);
|
|
|
|
return $query->result();
|
|
}
|
|
}
|
|
|
|
/**
|
|
* To store the igr child details
|
|
* @param array $igrD : This will have all igr child details
|
|
* @var number $insert_id : This will have insertion count
|
|
* @return array $query->result() : result of the query (returns igr lineitem no based on count value)
|
|
*/
|
|
function addigrD($igrD)
|
|
{
|
|
$this->db->trans_start();
|
|
$this->db->insert('T_IGR_Details', $igrD);
|
|
$insert_id = $this->db->affected_rows();
|
|
$this->db->trans_complete();
|
|
|
|
if($insert_id>0)
|
|
{
|
|
$subQuery = 'select max(IGRItemNo) as IGRItemNo from T_IGR_Details';
|
|
|
|
$query = $this->db->query($subQuery);
|
|
|
|
return $query->result();
|
|
}
|
|
}
|
|
function addmaterialhistory($historydetails)
|
|
{
|
|
|
|
$this->db->trans_start();
|
|
$this->db->insert('T_Material_stock_history', $historydetails);
|
|
$insert_id = $this->db->affected_rows();
|
|
$this->db->trans_complete();
|
|
return true;
|
|
}
|
|
|
|
|
|
function getitemvalue($pono,$MaterialCode)
|
|
{
|
|
$this->db->select('Rate,SupplierID');
|
|
$this->db->from('T_PurchaseOrder_LineItem');
|
|
$this->db->join('T_PurchaseOrder_Master','T_PurchaseOrder_Master.PONO=T_PurchaseOrder_LineItem.PONO');
|
|
$this->db->where('T_PurchaseOrder_LineItem.PONO',$pono);
|
|
$this->db->where('MaterialCode',$MaterialCode);
|
|
$query = $this->db->get();
|
|
$result = $query->result();
|
|
return $result;
|
|
|
|
}
|
|
|
|
/**
|
|
* To get igr details for revalant IGRNO
|
|
* @param number $IGRNO : This is IGRNO
|
|
* @return array $result : result of the query (returns igr details)
|
|
*/
|
|
function viewigr($IGRNO)
|
|
{
|
|
$this->db->distinct();
|
|
$this->db->select('igr.IGRNO,igr.*,igrd.*,MM.MaterialName,MM.UOM,sup.Address,sup.SupplierName,POM.ServiceDescription,POL.Quantity');
|
|
$this->db->from('T_IGR_Master igr');
|
|
$this->db->join('T_IGR_Details igrd','igrd.IGRNO = igr.IGRNO');
|
|
$this->db->join('T_PurchaseOrder_Master POM','igr.PONO = POM.PONO');
|
|
$this->db->join('T_PurchaseOrder_LineItem POL','igr.PONO = POL.PONO and POL.MaterialCode=igrd.MaterialCode ');
|
|
$this->db->join('T_SupplierDetailsN sup', 'sup.SupplierID = POM.SupplierID');
|
|
$this->db->join('T_MaterialMaster MM', 'MM.MaterialCode = igrd.MaterialCode');
|
|
$this->db->where('igrd.IGRItemNo',$IGRNO);//here not a igr no , igrlineitem no
|
|
//$this->db->where('igr.IGRNO',$IGRNO);//this where igno old flow
|
|
|
|
|
|
$query = $this->db->get();
|
|
|
|
$result = $query->result();
|
|
return $result;
|
|
}
|
|
|
|
/**
|
|
* To store edited po lineitem details
|
|
* @param number $PONO : This is PONO
|
|
* @param number $MaterialCode : This material code
|
|
* @param array $Lineitem : This will have all edited po lineitem details
|
|
*/
|
|
function UpdatePOLineItem($LineItem,$PONO,$MaterialCode)
|
|
{
|
|
$this->db->where('PONO', $PONO);
|
|
$this->db->where('MaterialCode', $MaterialCode);
|
|
$this->db->update('T_PurchaseOrder_LineItem', $LineItem);
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
/**
|
|
* To store edited po master details
|
|
* @param number $PONO : This is PONO
|
|
* @var $query : this will have igr created po no
|
|
* @var array $POStatus : for updation operation : this will have igrcreated's const value and updater' id
|
|
* @param number $updatedBy : This is updater's id
|
|
* @param array $Lineitem : This will have all edited po lineitem details
|
|
*/
|
|
function UpdateMRIROUTQty($mrirarray,$MRIRNO,$MaterialCode)
|
|
{
|
|
|
|
$this->db->where('MRIRNO', $MRIRNO);
|
|
$this->db->where('MaterialCode', $MaterialCode);
|
|
$this->db->update('T_MRIR_Details', $mrirarray);
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
function UpdatePOMasterOGRStatus($pono,$POMasterStatuss)
|
|
{
|
|
$this->db->where('PONO', $pono);
|
|
$this->db->update('T_PurchaseOrder_Master', $POMasterStatuss);
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
function update_OGR($PONO,$status)
|
|
{
|
|
$this->db->select('*');
|
|
$this->db->from('T_OGR_Master');
|
|
$this->db->where('PONO_INV',$PONO);
|
|
$query= $this->db->get();
|
|
|
|
if($query->num_rows!=0)
|
|
{
|
|
$this->db->where('PONO_INV',$PONO);
|
|
$ogrstatus=array('Status'=>$status);
|
|
$this->db->update('T_OGR_Master',$ogrstatus);
|
|
}
|
|
}
|
|
|
|
function UpdatePOMaster($PONO,$updatedBy)
|
|
{
|
|
$this->db->select('*');
|
|
$this->db->from('T_PurchaseOrder_LineItem');
|
|
$this->db->where('PONO',$PONO);
|
|
$this->db->where('Status !=',IGR_CREATED);
|
|
|
|
$query = $this->db->get();
|
|
|
|
|
|
if ($query->num_rows == 0) {
|
|
$this->db->where('PONO', $PONO);
|
|
$POStatus = array('status'=>IGR_CREATED,'UpdateBY'=>$updatedBy);
|
|
$this->db->update('T_PurchaseOrder_Master', $POStatus);
|
|
}
|
|
|
|
}
|
|
|
|
/**
|
|
* To get po lineitem details for recieved qty
|
|
* @param number $PONO : This is PONO
|
|
* @param number $MaterialCode : This is material code
|
|
* @return array $result : result of the query (returns po received quantity )
|
|
*/
|
|
function UpdateOGRMasterOGRStatus($OGRNO)
|
|
{
|
|
$this->db->select('*');
|
|
$this->db->from('T_OGR_Details');
|
|
$this->db->where('OGRNO',$OGRNO);
|
|
$this->db->where('Status !=',OGR_PARTIAL_COMPLETE);
|
|
|
|
$query = $this->db->get();
|
|
|
|
if ($query->num_rows == 0) {
|
|
$this->db->where('OGRNO', $OGRNO);
|
|
$OGRStatus = array('status'=>OGR_PARTIAL_COMPLETE);
|
|
$this->db->update('T_OGR_Master', $OGRStatus);
|
|
}
|
|
|
|
else
|
|
{
|
|
$this->db->where('OGRNO', $OGRNO);
|
|
$OGRStatus = array('status'=>OGR_COMPLETE);
|
|
$this->db->update('T_OGR_Master', $OGRStatus);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
function UpdateMRIRMasterOGRStatus($MRIRNO,$OGRNO)
|
|
{
|
|
$this->db->select('*');
|
|
$this->db->from('T_OGR_Details');
|
|
$this->db->where('OGRNO',$OGRNO);
|
|
$this->db->where('Status !=',OGR_PARTIAL_COMPLETE);
|
|
|
|
$query = $this->db->get();
|
|
|
|
if ($query->num_rows == 0) {
|
|
$this->db->where('MRIRNO', $MRIRNO);
|
|
$OGRStatus = array('OGRstatus'=>OGR_PARTIAL_COMPLETE);
|
|
$this->db->update('T_MRIR_Master', $OGRStatus);
|
|
}
|
|
|
|
else
|
|
{
|
|
$this->db->where('MRIRNO', $MRIRNO);
|
|
$OGRStatus = array('OGRstatus'=>OGR_COMPLETE);
|
|
$this->db->update('T_MRIR_Master', $OGRStatus);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
function updateogrpomaster($pono)
|
|
{
|
|
$this->db->select('*');
|
|
$this->db->from('T_PurchaseOrder_LineItem');
|
|
$this->db->where('PONO',$pono);
|
|
$this->db->where('OGR_Status !=','ST064');
|
|
|
|
$query = $this->db->get();
|
|
|
|
|
|
if ($query->num_rows == 0) {
|
|
$this->db->where('PONO',$pono);
|
|
$POStatus = array('status'=>'ST063');
|
|
$this->db->update('T_PurchaseOrder_Master', $POStatus);
|
|
}
|
|
}
|
|
|
|
function getPOLineItemReceivedQty($PONO,$MaterialCode)
|
|
{
|
|
$this->db->select('ReceivedQuantity');
|
|
$this->db->from('T_PurchaseOrder_LineItem');
|
|
$this->db->where('PONO',$PONO);
|
|
$this->db->where('MaterialCode',$MaterialCode);
|
|
$query = $this->db->get();
|
|
$result = $query->result();
|
|
return $result;
|
|
}
|
|
|
|
|
|
function GetMRIROutQty($MRIRNO,$MaterialCode)
|
|
{
|
|
$this->db->select('Ogr_Out_Qty');
|
|
$this->db->from('T_MRIR_Details');
|
|
$this->db->where('MRIRNO',$MRIRNO);
|
|
$this->db->where('MaterialCode',$MaterialCode);
|
|
$query = $this->db->get();
|
|
// print_r( $this->db->last_query());
|
|
$result = $query->result();
|
|
return $result;
|
|
}
|
|
|
|
|
|
function getCustomer()
|
|
{
|
|
$subQuery='select client_id,client_name from ip_clients';
|
|
$query = $this->db->query($subQuery);
|
|
return $query->result();
|
|
|
|
}
|
|
|
|
|
|
function getSupplier()
|
|
{
|
|
$subQuery='select SupplierID,SupplierName from T_SupplierDetailsN';
|
|
$query = $this->db->query($subQuery);
|
|
//print_r( $this->db->last_query());
|
|
return $query->result();
|
|
|
|
}
|
|
|
|
|
|
function getstoredmaterialcode()
|
|
{
|
|
$subQuery='select MaterialCode,MaterialName from T_MaterialMaster';
|
|
$query = $this->db->query($subQuery);
|
|
return $query->result();
|
|
}
|
|
|
|
|
|
|
|
function getOGRData()
|
|
{
|
|
$this->db->select('T_OGR_Master.*,T_OGR_Details.*,T_SupplierDetailsN.SupplierName,sup.SupplierName as Servicesupplier');
|
|
$this->db->from('T_OGR_Master');
|
|
$this->db->join('T_OGR_Details','T_OGR_Details.OGRNO=T_OGR_Master.OGRNO');
|
|
$this->db->join('T_PurchaseOrder_Master','T_PurchaseOrder_Master.PONO=T_OGR_Master.PONO_INV','left');
|
|
$this->db->join('T_SupplierDetailsN','T_SupplierDetailsN.SupplierID=T_PurchaseOrder_Master.SupplierID','left');
|
|
$this->db->join('T_SupplierDetailsN sup','sup.SupplierID=T_OGR_Details.SupplierID','left');
|
|
$this->db->group_by('T_OGR_Master.OGRNO');
|
|
//$this->db->where();
|
|
$query = $this->db->get();
|
|
//print_r( $this->db->last_query());
|
|
$result = $query->result();
|
|
return $result;
|
|
}
|
|
|
|
|
|
function getOGRDataforedit($OGRNO)
|
|
{
|
|
$this->db->select('T_OGR_Master.*,T_SupplierDetailsN.SupplierName,T_OGR_Details.*,sup.SupplierName as ServiceSupname,T_MaterialMaster.MaterialName as Matname,Remark');
|
|
$this->db->from('T_OGR_Master');
|
|
$this->db->join('T_OGR_Details','T_OGR_Details.OGRNO=T_OGR_Master.OGRNO');
|
|
$this->db->join('T_PurchaseOrder_Master','T_PurchaseOrder_Master.PONO=T_OGR_Master.PONO_INV','left');
|
|
$this->db->join('T_SupplierDetailsN','T_SupplierDetailsN.SupplierID=T_PurchaseOrder_Master.SupplierID','left');
|
|
$this->db->join('T_SupplierDetailsN sup','sup.SupplierID=T_OGR_Details.SupplierID','left');
|
|
|
|
$this->db->join('T_MaterialMaster','T_MaterialMaster.MaterialCode=T_OGR_Details.MaterialCode','left');
|
|
$this->db->where('T_OGR_Master.OGRNO',$OGRNO);
|
|
//$this->db->group_by('T_OGR_Master.OGRNO');
|
|
|
|
$query = $this->db->get();
|
|
//print_r( $this->db->last_query());
|
|
$result = $query->result();
|
|
return $result;
|
|
}
|
|
|
|
|
|
|
|
function getOGRlineDataforedit($OGRNO,$MRIRNO)
|
|
{
|
|
$this->db->select('T_OGR_Details.*,MaterialName,ActualQuantityReceived,Quantity,QuantityRejected');
|
|
$this->db->from('T_OGR_Details');
|
|
$this->db->join('T_MaterialMaster','T_MaterialMaster.MaterialCode=T_OGR_Details.MaterialCode');
|
|
$this->db->join('T_OGR_Master','T_OGR_Master.OGRNO=T_OGR_Details.OGRNO');
|
|
$this->db->join('T_MRIR_Master','T_MRIR_Master.PONO=T_OGR_Master.PONO_INV','left');
|
|
$this->db->join('T_MRIR_Details','T_MRIR_Details.MRIRNO=T_MRIR_Master.MRIRNO and T_MRIR_Details.MaterialCode=T_OGR_Details.MaterialCode');
|
|
$this->db->join('T_PurchaseOrder_Master','T_PurchaseOrder_Master.PONO=T_MRIR_Master.PONO');
|
|
$this->db->join('T_PurchaseOrder_LineItem','T_PurchaseOrder_Master.PONO=T_PurchaseOrder_LineItem.PONO and T_OGR_Details.MaterialCode=T_PurchaseOrder_LineItem.MaterialCode');
|
|
$this->db->where('T_OGR_Details.OGRNO',$OGRNO);
|
|
$this->db->where('T_MRIR_Details.MRIRNO',$MRIRNO);
|
|
$this->db->group_by('T_OGR_Details.MaterialCode');
|
|
|
|
$query = $this->db->get();
|
|
// print_r( $this->db->last_query());
|
|
$result = $query->result();
|
|
return $result;
|
|
}
|
|
|
|
function getInvoice($CustomerId)
|
|
{
|
|
|
|
$this->db->select('ip_invoices.invoice_id,invoice_number,item_product_id,item_name,item_quantity');
|
|
$this->db->from('ip_invoices');
|
|
$this->db->join('ip_invoice_items','ip_invoice_items.invoice_id = ip_invoices.invoice_id');
|
|
$this->db->join('ip_clients','ip_invoices.client_id = ip_clients.client_id');
|
|
$this->db->where('ip_invoices.client_id',$CustomerId);
|
|
|
|
$query = $this->db->get();
|
|
//print_r( $this->db->last_query());
|
|
$result = $query->result();
|
|
return $result;
|
|
}
|
|
|
|
|
|
function getPOmrir($PONO)
|
|
{
|
|
$this->db->select('MRIRNO');
|
|
$this->db->from('T_MRIR_Master');
|
|
$this->db->where('T_MRIR_Master.PONO',$PONO);
|
|
$this->db->where('T_MRIR_Master.OGRstatus !=',OGR_COMPLETE);
|
|
//$this->db->where('Status !=',IGR_CREATED);
|
|
$query = $this->db->get();
|
|
//print_r( $this->db->last_query());
|
|
//die();
|
|
$result = $query->result();
|
|
return $result;
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function getPO($supplierId)
|
|
{
|
|
|
|
/// echo $supplierId;
|
|
$subQuery='select T_PurchaseOrder_Master.PONO from T_PurchaseOrder_Master
|
|
join T_MRIR_Master on T_MRIR_Master.PONO= T_PurchaseOrder_Master.PONO
|
|
where T_PurchaseOrder_Master.SupplierID=? and (T_PurchaseOrder_Master.Status=? or T_PurchaseOrder_Master.Status=? or T_PurchaseOrder_Master.Status=? or T_PurchaseOrder_Master.Status=? or T_PurchaseOrder_Master.Status=? or T_PurchaseOrder_Master.Status=? or T_PurchaseOrder_Master.Status=?) group by T_PurchaseOrder_Master.PONO';
|
|
|
|
//$query= $this->db->query($subQuery, array($supplierId,ST044,PO,ST063));
|
|
$query= $this->db->query($subQuery, array($supplierId,ST044,PO,PO_RELEASED,IGR_CREATED,MRIR_CREATED,PARTIAL_MRIRAPPROVED,OGR_COMPLETE,OGR_PARTIAL_COMPLETE,OGR_CREATED));
|
|
//print_r( $this->db->last_query());
|
|
return $query->result();
|
|
|
|
|
|
}
|
|
|
|
function getPODetails($PONO)
|
|
{
|
|
|
|
$subQuery ='select distinct T_PurchaseOrder_Master.PONO,T_PurchaseOrder_LineItem.MaterialCode,
|
|
T_PurchaseOrder_LineItem.Quantity as Oqty,T_MRIR_Details.ActualQuantityReceived,
|
|
T_MRIR_Details.QuantityRejected,MaterialName,balance_Qty
|
|
from T_PurchaseOrder_Master
|
|
join T_PurchaseOrder_LineItem on T_PurchaseOrder_LineItem.PONO = T_PurchaseOrder_Master.PONO
|
|
join T_MRIR_Master on T_MRIR_Master.PONO = T_PurchaseOrder_Master.PONO
|
|
join T_MRIR_Details on T_MRIR_Master.MRIRNO = T_MRIR_Details.MRIRNO and T_PurchaseOrder_LineItem.MaterialCode=T_MRIR_Details.MaterialCode
|
|
join T_MaterialMaster on T_MRIR_Details.MaterialCode=T_MaterialMaster.MaterialCode
|
|
left join T_OGR_Master on T_PurchaseOrder_Master.PONO=T_OGR_Master.PONO_INV
|
|
left join T_OGR_Details on T_OGR_Master.OGRNO=T_OGR_Details.OGRNO and T_PurchaseOrder_LineItem.MaterialCode= T_OGR_Details.MaterialCode
|
|
where T_PurchaseOrder_Master.PONO=?';
|
|
|
|
$query = $this->db->query($subQuery, array($PONO));
|
|
//print_r($this->db->last_query());
|
|
return $query->result();
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
function getPOMRIRDetails($MRIRno,$PONO,$materialcode)
|
|
{
|
|
$subQuery='select T_MRIR_Details.MaterialCode,ActualQuantityReceived,QuantityAccepted,QuantityRejected,
|
|
MaterialName,Quantity as Oqty,SUM(Ogr_Out_Qty) as allowedQty
|
|
from T_MRIR_Details
|
|
join T_MaterialMaster on T_MRIR_Details.MaterialCode=T_MaterialMaster.MaterialCode
|
|
join T_MRIR_Master on T_MRIR_Details.MRIRNO = T_MRIR_Master.MRIRNO
|
|
join T_PurchaseOrder_LineItem on T_MRIR_Master.PONO = T_PurchaseOrder_LineItem.PONO and T_PurchaseOrder_LineItem.MaterialCode=T_MRIR_Details.MaterialCode
|
|
where T_MRIR_Details.MRIRNO=? and T_MRIR_Master.PONO=? and T_MRIR_Details.MaterialCode=? group by T_MRIR_Details.MaterialCode;';
|
|
$query = $this->db->query($subQuery, array($MRIRno,$PONO,$materialcode));
|
|
//print_r($this->db->last_query());
|
|
return $query->result();
|
|
|
|
|
|
}
|
|
|
|
|
|
function getPOMRIRMaterial($MRIRno,$PONO)
|
|
{
|
|
$this->db->select('MaterialCode');
|
|
$this->db->from('T_MRIR_Details');
|
|
$this->db->join('T_MRIR_Master','T_MRIR_Master.MRIRNO=T_MRIR_Details.MRIRNO');
|
|
$this->db->where('T_MRIR_Details.MRIRNO',$MRIRno);
|
|
$this->db->where('PONO',$PONO);
|
|
$this->db->group_by('T_MRIR_Details.MaterialCode');
|
|
$query = $this->db->get();
|
|
//print_r( $this->db->last_query());
|
|
$result = $query->result();
|
|
return $result;
|
|
|
|
}
|
|
|
|
|
|
function gettotalout($PONO,$materialcode)
|
|
{
|
|
$subQuery='select SUM(Ogr_Out_Qty)
|
|
from T_MRIR_Details
|
|
join T_MRIR_Master on T_MRIR_Master.MRIRNO= T_MRIR_Details.MRIRNO
|
|
where PONO =? and MaterialCode = ?; ';
|
|
|
|
$query = $this->db->query($subQuery, array($PONO,$materialcode));
|
|
//print_r($this->db->last_query());
|
|
return $query->result();
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function getPOmaterialDetails($PONO,$materialcode)
|
|
{
|
|
$subQuery='select distinct T_PurchaseOrder_LineItem.MaterialCode,MaterialName,T_PurchaseOrder_LineItem.Quantity as Oqty,T_MRIR_Details.ActualQuantityReceived,T_MRIR_Details.QuantityRejected,balance_Qty
|
|
from T_PurchaseOrder_Master
|
|
join T_PurchaseOrder_LineItem on T_PurchaseOrder_LineItem.PONO = T_PurchaseOrder_Master.PONO
|
|
join T_MRIR_Master on T_MRIR_Master.PONO = T_PurchaseOrder_Master.PONO
|
|
join T_MRIR_Details on T_MRIR_Master.MRIRNO = T_MRIR_Details.MRIRNO and T_PurchaseOrder_LineItem.MaterialCode=T_MRIR_Details.MaterialCode
|
|
join T_MaterialMaster on T_MRIR_Details.MaterialCode=T_MaterialMaster.MaterialCode
|
|
left join T_OGR_Master on T_PurchaseOrder_Master.PONO=T_OGR_Master.PONO_INV
|
|
left join T_OGR_Details on T_OGR_Master.OGRNO=T_OGR_Details.OGRNO and T_PurchaseOrder_LineItem.MaterialCode= T_OGR_Details.MaterialCode
|
|
where T_PurchaseOrder_LineItem.PONO=? and T_PurchaseOrder_LineItem.MaterialCode=?'
|
|
;
|
|
$query = $this->db->query($subQuery, array($PONO,$materialcode));
|
|
// print_r($this->db->last_query());
|
|
return $query->result();
|
|
}
|
|
|
|
|
|
function getPOmaterial($PONO)
|
|
{
|
|
$subQuery ='select MaterialCode from T_PurchaseOrder_LineItem where PONO=?';
|
|
|
|
$query = $this->db->query($subQuery, array($PONO));
|
|
//print_r($this->db->last_query());
|
|
return $query->result();
|
|
}
|
|
|
|
|
|
|
|
function AddOGR($ogrmaster)
|
|
{
|
|
$this->db->trans_start();
|
|
$this->db->insert('T_OGR_Master', $ogrmaster);
|
|
$insert_id = $this->db->affected_rows();
|
|
$this->db->trans_complete();
|
|
// print_r($this->db->last_query());
|
|
//print_r($insert_id);
|
|
if($insert_id>0)
|
|
{
|
|
$subQuery = 'select max(OGRNO) as OGRNO from T_OGR_Master';
|
|
|
|
$query = $this->db->query($subQuery);
|
|
|
|
return $query->result();
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
function getlastogrline()
|
|
{
|
|
$subQuery = 'select max(OGRItemNO) as OGRItemNO from T_OGR_Details';
|
|
|
|
$query = $this->db->query($subQuery);
|
|
|
|
return $query->result();
|
|
}
|
|
|
|
|
|
function UpdateOGR($updateogrmaster,$OGRNO)
|
|
{
|
|
$this->db->where('OGRNO',$OGRNO);
|
|
//$this->db->where('MaterialCode', $MaterialCode);
|
|
$this->db->update('T_OGR_Master', $updateogrmaster);
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
function AddOgrLine($Ogrline)
|
|
{
|
|
$this->db->trans_start();
|
|
$this->db->insert('T_OGR_Details',$Ogrline);
|
|
$insert_id = $this->db->affected_rows();
|
|
$this->db->trans_complete();
|
|
return $insert_id;
|
|
}
|
|
|
|
|
|
// function GetIGR_Details($pono)
|
|
// {
|
|
// $this->db->select('IGRNO,MRIRNO,MaterialCode,');
|
|
// $this->db->from('ip_invoices');
|
|
// $this->db->join('ip_invoice_items','ip_invoice_items.invoice_id = ip_invoices.invoice_id');
|
|
// $this->db->join('ip_clients','ip_invoices.client_id = ip_clients.client_id');
|
|
|
|
// $this->db->where('ip_invoices.client_id',$CustomerId);
|
|
|
|
// $query = $this->db->get();
|
|
// //print_r( $this->db->last_query());
|
|
// $result = $query->result();
|
|
// return $result;
|
|
// }
|
|
|
|
|
|
|
|
|
|
function GetPreSavedQty($pono,$MaterialCode)
|
|
{
|
|
// $subQuery = 'select Total_OutwardQty from T_PurchaseOrder_LineItem where PONO=? and MaterialCode=?';
|
|
// $query = $this->db->query($subQuery, array($pono,$MaterialCode));
|
|
// //print_r($this->db->last_query());
|
|
// return $query->result();
|
|
|
|
|
|
$this->db->select('Total_OutwardQty');
|
|
$this->db->from('T_PurchaseOrder_LineItem');
|
|
$this->db->where('PONO',$pono);
|
|
$this->db->where('MaterialCode',$MaterialCode);
|
|
$query = $this->db->get();
|
|
//print_r( $this->db->last_query());
|
|
$result = $query->result();
|
|
return $result;
|
|
|
|
}
|
|
|
|
|
|
function check_PO($pono)
|
|
{
|
|
$subQuery='select * from T_OGR_Master where PONO_INV=?';
|
|
$query=$this->db->query($subQuery,array($pono));
|
|
return $query->result();
|
|
}
|
|
|
|
|
|
function UpdatePOMasterOGR($postatus,$pono)
|
|
{
|
|
$this->db->where('PONO',$pono);
|
|
//$this->db->where('MaterialCode', $MaterialCode);
|
|
$this->db->update('T_PurchaseOrder_Master', $postatus);
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
/**
|
|
* To Update IGR master details for material recieved data and delivery ch date
|
|
* @param number $IGRNo : This is igr no
|
|
* @return array $igrarr : Igr Array
|
|
*/
|
|
|
|
function updateigr($igrarr,$IGRNo){
|
|
|
|
//$this->db->where('PONO',$PONO);
|
|
$this->db->where('IGRNO',$IGRNo);
|
|
$this->db->update('T_IGR_Master',$igrarr);
|
|
$r = $this->db->affected_rows();
|
|
return $r;
|
|
}
|
|
} |