siddharth_application/application/models/inwardgateregister_model.php
gandhimathi Bharathirajan 98dbdd9a4d 'IGRissuefixed'
2017-07-05 19:00:42 +05:30

144 lines
4.8 KiB
PHP
Executable File

<?php if(!defined('BASEPATH')) exit('No direct script access allowed');
class inwardgateregister_model extends CI_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
*/
function igrListing()
{
$this->db->select('igr.*,PO.DeliveryDate,sup.SupplierName');
$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');
$query = $this->db->get();
$result = $query->result();
return $result;
}
function getpurchaseorder()
{
$this->db->distinct();
$this->db->select('POM.PONO,POM.ServiceDescription,POM.DeliveryDate,sup.SupplierName,sup.Address');
$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->where('POM.Status',PO_RELEASED);
$this->db->where('POL.Status !=',IGR_CREATED);
$this->db->where('POL.Status !=',MRIR_CREATED);
$query = $this->db->get();
$result = $query->result();
//print_r($this->db->last_query());
return $result;
}
function viewpurchaseorder($PO)
{
$subQuery ='SELECT POM.PONO,POL.MaterialCode,(CASE WHEN (POL.Quantity > igr.QuantityAsPerInvoice )
THEN ( POL.Quantity - igr.QuantityAsPerInvoice) ELSE POL.Quantity
END) as Quantity,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_Details igr on igr.MaterialCode = POL.MaterialCode left join T_MaterialMaster MM
on MM.MaterialCode = POL.MaterialCode where POM.PONO=? and POL.Status not in(?,?) ';
$query = $this->db->query($subQuery, array($PO,IGR_CREATED,MRIR_CREATED));
// print_r($this->db->last_query());
return $query->result();
/* $this->db->select('POM.PONO,POL.MaterialCode,POL.Quantity,POL.PONO,MM.MaterialName,MM.UOM');
$this->db->from('T_PurchaseOrder_Master POM');
$this->db->join('T_PurchaseOrder_LineItem POL', 'POL.PONO = POM.PONO','left');
$this->db->join('T_MaterialMaster MM', 'MM.MaterialCode = POL.MaterialCode','left');
$this->db->where('POM.PONO',$PO );
$this->db->where('POL.Status !=',POLINEITEM_IGR_CREATED );
$query = $this->db->get();
$result = $query->result();
$this->db->last_query();
return $result; */
}
function addigrM($igrM)
{
$this->db->trans_start();
$this->db->insert('T_IGR_Master', $igrM);
$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(IGRNO) as IGRNO from T_IGR_Master';
$query = $this->db->query($subQuery);
return $query->result();
}
}
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 viewigr($IGRNO)
{
$this->db->select('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','POL.PONO = POM.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('igr.IGRNO',$IGRNO);
$query = $this->db->get();
//print_r( $this->db->last_query());
$result = $query->result();
return $result;
}
function UpdatePOLineItem($LineItem,$PONO,$MaterialCode)
{
$this->db->where('PONO', $PONO);
$this->db->where('MaterialCode', $MaterialCode);
$this->db->update('T_PurchaseOrder_LineItem', $LineItem);
return TRUE;
}
}