814 lines
24 KiB
PHP
Executable File
814 lines
24 KiB
PHP
Executable File
<?php
|
|
|
|
namespace App\Models;
|
|
|
|
use CodeIgniter\Model;
|
|
|
|
class Inwardgateregister_model extends Model
|
|
{
|
|
/**
|
|
* This function is used to get the user listing count
|
|
* @param string $searchText : This is optional search text
|
|
* @return number $count : This is row count
|
|
*/
|
|
|
|
|
|
/**
|
|
* This function is used to get the user listing count
|
|
* @param string $searchText : This is optional search text
|
|
* @param number $page : This is pagination offset
|
|
* @param number $segment : This is pagination limit
|
|
* @return array $result : This is result
|
|
*/
|
|
|
|
|
|
|
|
/*--------------------------JUN 11Change ----------------------------------*/
|
|
|
|
|
|
function updatefile($bill, $Picture, $oldfile)
|
|
{
|
|
|
|
// if($oldfile != ''){
|
|
// //unlink("public/uploads/BillFiles/".$oldfile);//this deletes the file on particular folder too
|
|
// }
|
|
|
|
$this->db->table('T_Inwardgateregister_fileupload')
|
|
->set('FilePath', $Picture)
|
|
->where('BillNo', $bill)
|
|
->update();
|
|
$afftectedRows = $this->db->affectedRows();
|
|
return $afftectedRows;
|
|
}
|
|
|
|
|
|
function getfies($igr)
|
|
{
|
|
|
|
$builder = $this->db->table('T_Inwardgateregister_fileupload')->select('*')
|
|
|
|
->where('IGRNO', $igr);
|
|
|
|
$query = $builder->get();
|
|
|
|
return $query->getResult();
|
|
}
|
|
|
|
function fileupload($myfiles)
|
|
{
|
|
|
|
$builder = $this->db->table('T_Inwardgateregister_fileupload');
|
|
$builder->insert($myfiles);
|
|
$myfile = $this->db->affectedRows();
|
|
return $myfile;
|
|
}
|
|
|
|
|
|
/*------------------------------------------------------------*/
|
|
function addMaterialStockHistory($MaterialstockHistoryadd)
|
|
{
|
|
|
|
$this->db->transStart();
|
|
$builder = $this->db->table('T_Material_stock_history');
|
|
$builder->insert($MaterialstockHistoryadd);
|
|
$insert_id = $this->db->affectedRows();
|
|
$this->db->transComplete();
|
|
|
|
//print_r($insert_id);
|
|
if ($insert_id > 0) {
|
|
$subQuery = 'select * from T_Material_stock_history';
|
|
|
|
$query = $this->db->query($subQuery);
|
|
|
|
return $query->getResult();
|
|
}
|
|
}
|
|
|
|
/*------------------------------------------------------------*/
|
|
// function igrListing()
|
|
// {
|
|
// $builder = $this->db->table('T_IGR_Master igr')->select('igr.*,PO.DeliveryDate,sup.SupplierName,igr.file');
|
|
// ->join('T_PurchaseOrder_Master PO','igr.PONO = PO.PONO');
|
|
// ->join('T_SupplierDetailsN` sup','PO.SupplierID = sup.SupplierID');
|
|
// ->orderBy('igr.CreatedDate','desc');
|
|
// $query =$builder->get();
|
|
// $result = $query->getResult();
|
|
// return $result;
|
|
// }
|
|
function igrListing()
|
|
{
|
|
|
|
$builder = $this->db->table('T_IGR_Master igr')
|
|
->select('igr.*,PO.DeliveryDate,sup.SupplierName,fileup.FilePath,igr.file')
|
|
->join('T_PurchaseOrder_Master PO', 'igr.PONO = PO.PONO')
|
|
->join('T_Inwardgateregister_fileupload fileup', ' igr.IGRNO = fileup.IGRNO', 'left')
|
|
->join('T_SupplierDetailsN` sup', 'PO.SupplierID = sup.SupplierID')
|
|
->groupBy('igr.IGRNO', 'desc');
|
|
$query = $builder->get();
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
|
|
|
|
function viewIGRFile($IGRNO)
|
|
{
|
|
$builder = $this->db->table('T_Inwardgateregister_fileupload')
|
|
->distinct()->select('*') //BillNo,IGRNO,FilePath,PONO
|
|
->where('IGRNO', $IGRNO);
|
|
|
|
$query = $builder->get();
|
|
$result = $query->getResult();
|
|
// print_r($result);die;
|
|
|
|
return $result;
|
|
}
|
|
|
|
function viewIGRFile1($IGRNO)
|
|
{
|
|
$builder = $this->db->table('T_IGR_Master igrm')
|
|
->distinct()->select('igrm.file,igrm.PONO as pono') //BillNo,IGRNO,FilePath,PONO
|
|
//->join('T_Inwardgateregister_fileupload igrf','igrm.IGRNO = igrf.IGRNO','left')
|
|
//->join('T_IGR_Details igrd','igrm.IGRNO = igrd.IGRNO','left');
|
|
->where('igrm.IGRNO', $IGRNO);
|
|
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
// print_r($result);die;
|
|
|
|
return $result;
|
|
}
|
|
|
|
function getpurchaseorder()
|
|
{
|
|
|
|
$builder = $this->db->table('T_PurchaseOrder_Master POM')
|
|
->distinct()->select('POM.PONO,POM.ServiceDescription,POM.DeliveryDate,sup.SupplierName,sup.Address,POM.status,OGR_Status,POM.PODate,POM.IsOpenOrder')
|
|
->select("IF(POM.PODate IS NOT NULL, DATE_FORMAT(POM.PODate, '%Y-%m-%d'), NULL) AS formatted_PODate")
|
|
->select("IF(POM.IsOpenOrder IS NOT NULL, POM.IsOpenOrder, '%Y-%m-%d'), NULL) AS formatted_IsOpenOrder")
|
|
->join('T_PurchaseOrder_LineItem POL', 'POL.PONO = POM.PONO')
|
|
->join('T_SupplierDetailsN sup', 'POM.SupplierID = sup.SupplierID')
|
|
->join('T_OGR_Master OGM ', 'POM.PONO = OGM.PONO_INV', 'left')
|
|
->where('POM.POType !=', SERVICE)
|
|
->where('POM.Status', PO_RELEASED)
|
|
->orWhere('POM.Status',REQITEM_Emergency_PO_CREATED)
|
|
->orWhere('POM.Status',IGR_CREATED)
|
|
->orWhere('POM.Status', MRIR_CREATED)
|
|
->orWhere('POM.Status', MRIR_APPROVED)
|
|
->orWhere('POM.Status', OGR_COMPLETE);
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
|
|
return $result;
|
|
}
|
|
|
|
|
|
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';
|
|
|
|
$query = $this->db->query($subQuery, [$PO]);
|
|
|
|
|
|
return $query->getResult();
|
|
|
|
/*
|
|
$builder = $this->db->table('T_PurchaseOrder_Master POM')
|
|
->select('POM.PONO,POL.MaterialCode,POL.Quantity,POL.PONO,MM.MaterialName,MM.UOM')
|
|
->join('T_PurchaseOrder_LineItem POL', 'POL.PONO = POM.PONO','left')
|
|
->join('T_MaterialMaster MM', 'MM.MaterialCode = POL.MaterialCode','left')
|
|
->where('POM.PONO',$PO )
|
|
->where('POL.Status !=',POLINEITEM_IGR_CREATED );
|
|
$query =$builder->get();
|
|
$result = $query->getResult();
|
|
return $result; */
|
|
}
|
|
|
|
function addigrM($igrM)
|
|
{
|
|
$this->db->transStart();
|
|
$builder = $this->db->table('T_IGR_Master');
|
|
$builder->insert($igrM);
|
|
$aff_row = $this->db->affectedRows();
|
|
$this->db->transComplete();
|
|
// echo "ii" .$this->db->getLastQuery()->getQuery();
|
|
|
|
$result = $this->db->table('T_IGR_Master')
|
|
->select('IGRNO')
|
|
->orderBy('CreatedDate', 'desc')
|
|
->get()
|
|
->getRow();
|
|
|
|
$igrno = ($aff_row && $result !== null) ? $result->IGRNO : 0;
|
|
return $igrno;
|
|
}
|
|
|
|
function addigrD($igrD)
|
|
{
|
|
$this->db->transStart();
|
|
$builder = $this->db->table('T_IGR_Details');
|
|
$builder->insert($igrD);
|
|
$aff_row = $this->db->affectedRows();
|
|
$this->db->transComplete();
|
|
|
|
$result = $this->db->table('T_IGR_Details')
|
|
->select('IGRItemNo')
|
|
->orderBy('CreatedDate', 'desc')
|
|
->get()
|
|
->getRow();
|
|
|
|
$res = ($aff_row && $result !== null) ? $result->IGRItemNo : 0;
|
|
return $res;
|
|
}
|
|
|
|
|
|
|
|
function addmaterialhistory($historydetails)
|
|
{
|
|
|
|
$this->db->transStart();
|
|
$builder = $this->db->table('T_Material_stock_history');
|
|
$builder->insert($historydetails);
|
|
$insert_id = $this->db->affectedRows();
|
|
$this->db->transComplete();
|
|
return true;
|
|
}
|
|
|
|
|
|
|
|
function addmaterialmaster($current_qty, $MaterialCode)
|
|
{
|
|
$this->db->table('T_MaterialMaster')
|
|
->where('MaterialCode', $MaterialCode)
|
|
->update($current_qty);
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
function get_CurrentQty($MaterialCode)
|
|
{
|
|
|
|
$builder = $this->db->table('T_MaterialMaster')->select('Current_stock')
|
|
->where('T_MaterialMaster.MaterialCode', $MaterialCode);
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
|
|
function getitemvalue($pono, $MaterialCode)
|
|
{
|
|
$builder = $this->db->table('T_PurchaseOrder_LineItem')->select('Rate,SupplierID')
|
|
->join('T_PurchaseOrder_Master', 'T_PurchaseOrder_Master.PONO=T_PurchaseOrder_LineItem.PONO')
|
|
->where('T_PurchaseOrder_LineItem.PONO', $pono)
|
|
->where('MaterialCode', $MaterialCode);
|
|
$query = $builder->get();
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
|
|
function viewigr($IGRNO)
|
|
{
|
|
$builder = $this->db->table('T_IGR_Master igr')
|
|
->distinct()
|
|
->select('igr.IGRNO,igr.*,igrd.*,MM.MaterialName,MM.UOM,sup.Address,sup.SupplierName,POM.ServiceDescription,POL.Quantity')
|
|
->join('T_IGR_Details igrd', 'igrd.IGRNO = igr.IGRNO')
|
|
->join('T_PurchaseOrder_Master POM', 'igr.PONO = POM.PONO')
|
|
->join('T_PurchaseOrder_LineItem POL', 'igr.PONO = POL.PONO and POL.MaterialCode=igrd.MaterialCode ')
|
|
->join('T_SupplierDetailsN sup', 'sup.SupplierID = POM.SupplierID')
|
|
->join('T_MaterialMaster MM', 'MM.MaterialCode = igrd.MaterialCode')
|
|
->where('igr.IGRNO', $IGRNO);
|
|
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
|
|
return $result;
|
|
}
|
|
|
|
function UpdatePOLineItem($LineItem, $PONO, $MaterialCode)
|
|
{
|
|
$this->db->table('T_PurchaseOrder_LineItem')
|
|
->where('PONO', $PONO)
|
|
->where('MaterialCode', $MaterialCode)
|
|
->update($LineItem);
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
function UpdateMRIROUTQty($mrirarray, $MRIRNO, $MaterialCode)
|
|
{
|
|
$this->db->table('T_MRIR_Details')
|
|
->where('MaterialCode', $MaterialCode)
|
|
->update($mrirarray);
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
function UpdatePOMasterOGRStatus($pono, $POMasterStatuss)
|
|
{
|
|
$this->db->table('T_PurchaseOrder_Master')
|
|
->where('PONO', $pono)
|
|
->update($POMasterStatuss);
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
function update_OGR($PONO, $status)
|
|
{
|
|
|
|
$builder = $this->db->table('T_OGR_Master')->select('*')
|
|
->where('PONO_INV', $PONO);
|
|
$query = $builder->get();
|
|
|
|
if ($query->getNumRows() != 0) {
|
|
|
|
$ogrstatus = array('Status' => $status);
|
|
$this->db->table('T_OGR_Master')
|
|
->where('PONO_INV', $PONO)
|
|
->update($ogrstatus);
|
|
}
|
|
}
|
|
|
|
function UpdatePOMaster($PONO, $updatedBy)
|
|
{
|
|
|
|
$builder = $this->db->table('T_PurchaseOrder_LineItem')->select('*')
|
|
->where('PONO', $PONO)
|
|
->where('Status !=', IGR_CREATED);
|
|
|
|
$query = $builder->get();
|
|
|
|
|
|
if ($query->getNumRows() == 0) {
|
|
$POStatus = array('status' => IGR_CREATED, 'UpdateBY' => $updatedBy);
|
|
$this->db->table('T_PurchaseOrder_Master')
|
|
->where('PONO', $PONO)
|
|
->update($POStatus);
|
|
}
|
|
}
|
|
|
|
function UpdateOGRMasterOGRStatus($OGRNO)
|
|
{
|
|
|
|
$builder = $this->db->table('T_OGR_Details')->select('*')
|
|
->where('OGRNO', $OGRNO)
|
|
->where('Status !=', OGR_PARTIAL_COMPLETE);
|
|
|
|
$query = $builder->get();
|
|
|
|
$OGRStatus = ($query->getNumRows() == 0) ? array('status' => OGR_PARTIAL_COMPLETE) : array('status' => OGR_COMPLETE);
|
|
|
|
$this->db->table('T_OGR_Master')
|
|
->where('OGRNO', $OGRNO)
|
|
->update($OGRStatus);
|
|
}
|
|
|
|
|
|
function UpdateMRIRMasterOGRStatus($MRIRNO, $OGRNO)
|
|
{
|
|
|
|
$builder = $this->db->table('T_OGR_Details')->select('*')
|
|
->where('OGRNO', $OGRNO)
|
|
->where('Status !=', OGR_PARTIAL_COMPLETE);
|
|
|
|
$query = $builder->get();
|
|
|
|
$OGRStatus = ($query->getNumRows() == 0) ? array('OGRstatus' => OGR_PARTIAL_COMPLETE) : array('OGRstatus' => OGR_COMPLETE);
|
|
$this->db->table('T_MRIR_Master')
|
|
->where('MRIRNO', $MRIRNO)
|
|
->update($OGRStatus);
|
|
}
|
|
|
|
|
|
|
|
function updateogrpomaster($pono)
|
|
{
|
|
|
|
$builder = $this->db->table('T_PurchaseOrder_LineItem')->select('*')
|
|
->where('PONO', $pono)
|
|
->where('OGR_Status !=', 'ST064');
|
|
|
|
$query = $builder->get();
|
|
|
|
$POStatus = ($query->getNumRows() == 0) ?? array('status' => 'ST063');
|
|
$this->db->table('T_PurchaseOrder_Master')
|
|
->where('PONO', $pono)
|
|
->update($POStatus);
|
|
}
|
|
|
|
|
|
|
|
function getPOLineItemReceivedQty($PONO, $MaterialCode)
|
|
{
|
|
$builder = $this->db->table('T_PurchaseOrder_LineItem')->select('ReceivedQuantity')
|
|
->where('PONO', $PONO)
|
|
->where('MaterialCode', $MaterialCode);
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
|
|
function GetMRIROutQty($MRIRNO, $MaterialCode)
|
|
{
|
|
|
|
$builder = $this->db->table('T_MRIR_Details')->select('Ogr_Out_Qty')
|
|
->where('MRIRNO', $MRIRNO)
|
|
->where('MaterialCode', $MaterialCode);
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
|
|
function getCustomer()
|
|
{
|
|
$subQuery = 'select client_id,client_name from ip_clients';
|
|
$query = $this->db->query($subQuery);
|
|
|
|
return $query->getResult();
|
|
}
|
|
|
|
|
|
function getSupplier()
|
|
{
|
|
$subQuery = 'select SupplierID,SupplierName from T_SupplierDetailsN';
|
|
$query = $this->db->query($subQuery);
|
|
|
|
return $query->getResult();
|
|
}
|
|
|
|
|
|
function getstoredmaterialcode()
|
|
{
|
|
$subQuery = 'select MaterialCode,MaterialName from T_MaterialMaster';
|
|
$query = $this->db->query($subQuery);
|
|
return $query->getResult();
|
|
}
|
|
|
|
|
|
|
|
function getOGRData()
|
|
{
|
|
$builder = $this->db->table('T_OGR_Master')
|
|
->select('T_OGR_Master.*,T_OGR_Details.*,T_SupplierDetailsN.SupplierName,sup.SupplierName as Servicesupplier')
|
|
->join('T_OGR_Details', 'T_OGR_Details.OGRNO=T_OGR_Master.OGRNO')
|
|
->join('T_PurchaseOrder_Master', 'T_PurchaseOrder_Master.PONO=T_OGR_Master.PONO_INV', 'left')
|
|
->join('T_SupplierDetailsN', 'T_SupplierDetailsN.SupplierID=T_PurchaseOrder_Master.SupplierID', 'left')
|
|
->join('T_SupplierDetailsN sup', 'sup.SupplierID=T_OGR_Details.SupplierID', 'left')
|
|
->groupBy('T_OGR_Master.OGRNO');
|
|
//$this->db->where();
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
|
|
function getOGRDataforedit($OGRNO)
|
|
{
|
|
|
|
$builder = $this->db->table('T_OGR_Master')
|
|
->select('T_OGR_Master.*,T_SupplierDetailsN.SupplierName,T_OGR_Details.*,sup.SupplierName as ServiceSupname,T_MaterialMaster.MaterialName as Matname,Remark')
|
|
->join('T_OGR_Details', 'T_OGR_Details.OGRNO=T_OGR_Master.OGRNO')
|
|
->join('T_PurchaseOrder_Master', 'T_PurchaseOrder_Master.PONO=T_OGR_Master.PONO_INV', 'left')
|
|
->join('T_SupplierDetailsN', 'T_SupplierDetailsN.SupplierID=T_PurchaseOrder_Master.SupplierID', 'left')
|
|
->join('T_SupplierDetailsN sup', 'sup.SupplierID=T_OGR_Details.SupplierID', 'left')
|
|
->join('T_MaterialMaster', 'T_MaterialMaster.MaterialCode=T_OGR_Details.MaterialCode', 'left')
|
|
->where('T_OGR_Master.OGRNO', $OGRNO);
|
|
//$this->db->groupBy('T_OGR_Master.OGRNO');
|
|
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
|
|
|
|
function getOGRlineDataforedit($OGRNO, $MRIRNO)
|
|
{
|
|
|
|
$builder = $this->db->table('T_OGR_Details')
|
|
->select('T_OGR_Details.*,MaterialName,ActualQuantityReceived,Quantity,QuantityRejected')
|
|
->join('T_MaterialMaster', 'T_MaterialMaster.MaterialCode=T_OGR_Details.MaterialCode')
|
|
->join('T_OGR_Master', 'T_OGR_Master.OGRNO=T_OGR_Details.OGRNO')
|
|
->join('T_MRIR_Master', 'T_MRIR_Master.PONO=T_OGR_Master.PONO_INV', 'left')
|
|
->join('T_MRIR_Details', 'T_MRIR_Details.MRIRNO=T_MRIR_Master.MRIRNO and T_MRIR_Details.MaterialCode=T_OGR_Details.MaterialCode')
|
|
->join('T_PurchaseOrder_Master', 'T_PurchaseOrder_Master.PONO=T_MRIR_Master.PONO')
|
|
->join('T_PurchaseOrder_LineItem', 'T_PurchaseOrder_Master.PONO=T_PurchaseOrder_LineItem.PONO and T_OGR_Details.MaterialCode=T_PurchaseOrder_LineItem.MaterialCode')
|
|
->where('T_OGR_Details.OGRNO', $OGRNO)
|
|
->where('T_MRIR_Details.MRIRNO', $MRIRNO)
|
|
->groupBy('T_OGR_Details.MaterialCode');
|
|
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
function getInvoice($CustomerId)
|
|
{
|
|
|
|
$builder = $this->db->table('ip_invoices')->select('ip_invoices.invoice_id,invoice_number,item_product_id,item_name,item_quantity')
|
|
->join('ip_invoice_items', 'ip_invoice_items.invoice_id = ip_invoices.invoice_id')
|
|
->join('ip_clients', 'ip_invoices.client_id = ip_clients.client_id')
|
|
->where('ip_invoices.client_id', $CustomerId);
|
|
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
|
|
function getPOmrir($PONO)
|
|
{
|
|
|
|
$builder = $this->db->table('T_MRIR_Master')->select('MRIRNO')
|
|
->where('T_MRIR_Master.PONO', $PONO)
|
|
->where('T_MRIR_Master.OGRstatus !=', OGR_COMPLETE);
|
|
// ->where('Status !=',IGR_CREATED);
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
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));
|
|
|
|
return $query->getResult();
|
|
}
|
|
|
|
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));
|
|
|
|
return $query->getResult();
|
|
}
|
|
|
|
|
|
|
|
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));
|
|
|
|
return $query->getResult();
|
|
}
|
|
|
|
|
|
function getPOMRIRMaterial($MRIRno, $PONO)
|
|
{
|
|
$builder = $this->db->table('T_MRIR_Details')
|
|
->select('MaterialCode')
|
|
->join('T_MRIR_Master', 'T_MRIR_Master.MRIRNO=T_MRIR_Details.MRIRNO')
|
|
->where('T_MRIR_Details.MRIRNO', $MRIRno)
|
|
->where('PONO', $PONO)
|
|
->groupBy('T_MRIR_Details.MaterialCode');
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
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));
|
|
|
|
return $query->getResult();
|
|
}
|
|
|
|
|
|
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));
|
|
|
|
return $query->getResult();
|
|
}
|
|
|
|
|
|
function getPOmaterial($PONO)
|
|
{
|
|
$subQuery = 'select MaterialCode from T_PurchaseOrder_LineItem where PONO=?';
|
|
|
|
$query = $this->db->query($subQuery, array($PONO));
|
|
|
|
return $query->getResult();
|
|
}
|
|
|
|
|
|
|
|
function AddOGR($ogrmaster)
|
|
{
|
|
$this->db->transStart();
|
|
$builder = $this->db->table('T_OGR_Master');
|
|
$builder->insert($ogrmaster);
|
|
$aff_row = $this->db->affectedRows();
|
|
$this->db->transComplete();
|
|
|
|
if ($aff_row > 0) {
|
|
//$subQuery = 'select max(OGRNO) as OGRNO from T_OGR_Master';
|
|
// $subQuery = 'select OGRNO from order by desc limit 1';
|
|
// $query = $this->db->query($subQuery);
|
|
// return $query->getResult();
|
|
$result = $this->db->table('T_OGR_Master')
|
|
->select('OGRNO')
|
|
->orderBy('CreatedOn', 'desc')
|
|
->get()
|
|
->getRow();
|
|
|
|
$OGRNO = ($aff_row && $result !== null) ? $result->OGRNO : 0;
|
|
return $OGRNO;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
function getlastogrline()
|
|
{
|
|
//$subQuery = 'select max(OGRItemNO) as OGRItemNO from T_OGR_Details';
|
|
$subQuery = 'select OGRItemNO from T_OGR_Details order by CreatedOn desc limit 1';
|
|
|
|
$query = $this->db->query($subQuery);
|
|
|
|
return $query->getResult();
|
|
}
|
|
|
|
|
|
function UpdateOGR($updateogrmaster, $OGRNO)
|
|
{
|
|
$this->db->table('T_OGR_Master')
|
|
->where('OGRNO', $OGRNO)
|
|
->update($updateogrmaster);
|
|
return TRUE;
|
|
}
|
|
|
|
|
|
function AddOgrLine($Ogrline)
|
|
{
|
|
$this->db->transStart();
|
|
$builder = $this->db->table('T_OGR_Details');
|
|
$builder->insert($Ogrline);
|
|
$insert_id = $this->db->affectedRows();
|
|
$this->db->transComplete();
|
|
return $insert_id;
|
|
}
|
|
|
|
|
|
// function GetIGR_Details($pono)
|
|
// {
|
|
//
|
|
// $builder = $this->db->table('ip_invoices')->select('IGRNO,MRIRNO,MaterialCode,')
|
|
// ->join('ip_invoice_items','ip_invoice_items.invoice_id = ip_invoices.invoice_id');
|
|
// ->join('ip_clients','ip_invoices.client_id = ip_clients.client_id');
|
|
// $this->db->where('ip_invoices.client_id',$CustomerId);
|
|
// $query =$builder->get();
|
|
//
|
|
// $result = $query->getResult();
|
|
// 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));
|
|
//
|
|
// return $query->getResult();
|
|
|
|
|
|
$builder = $this->db->table('T_PurchaseOrder_LineItem')
|
|
->select('Total_OutwardQty')
|
|
->where('PONO', $pono)
|
|
->where('MaterialCode', $MaterialCode);
|
|
$query = $builder->get();
|
|
|
|
$result = $query->getResult();
|
|
return $result;
|
|
}
|
|
|
|
|
|
function check_PO($pono)
|
|
{
|
|
$subQuery = 'select * from T_OGR_Master where PONO_INV=?';
|
|
$query = $this->db->query($subQuery, array($pono));
|
|
return $query->getResult();
|
|
}
|
|
|
|
|
|
function UpdatePOMasterOGR($postatus, $pono)
|
|
{
|
|
$this->db->table('T_PurchaseOrder_Master')
|
|
->where('PONO', $pono)
|
|
//->where('MaterialCode', $MaterialCode)
|
|
->update($postatus);
|
|
|
|
return TRUE;
|
|
}
|
|
|
|
function updateigr($igrarr, $IGRNo)
|
|
{
|
|
$this->db->table('T_IGR_Master')
|
|
->where('IGRNO', $IGRNo)
|
|
//->where('MaterialCode', $MaterialCode)
|
|
->update($igrarr);
|
|
$r = $this->db->affectedRows();
|
|
return $r;
|
|
}
|
|
|
|
function getpolineqty($NewPO)
|
|
{
|
|
$builder = $this->db->table('T_PurchaseOrder_LineItem')
|
|
->select('sum(Quantity)as Qty,sum(ReceivedQuantity)as rec')
|
|
->where('PONO', $NewPO);
|
|
|
|
$query = $builder->get();
|
|
return $query->getResult();
|
|
}
|
|
|
|
|
|
function POLineItemsupdatestatus($PONO, $Newstatus)
|
|
{
|
|
$this->db->table('T_PurchaseOrder_LineItem')
|
|
->where('PONO', $PONO)
|
|
->update($Newstatus);
|
|
|
|
$update = $this->db->affectedRows();
|
|
return $update;
|
|
}
|
|
|
|
function pomasterupdatestatus($PONO, $Newstatus)
|
|
{
|
|
$this->db->table('T_PurchaseOrder_Master')
|
|
->where('PONO', $PONO)
|
|
->update($Newstatus);
|
|
|
|
$update = $this->db->affectedRows();
|
|
return $update;
|
|
}
|
|
} |