FIX_Bug Fixes : ps

This commit is contained in:
VE10-Sanjeev 2024-07-20 11:42:45 +00:00
parent 16bbefe30c
commit 5743bd33c1
12 changed files with 1854 additions and 945 deletions

View File

@ -249,19 +249,21 @@ $routes->match(['get', 'post', 'put', 'delete'],'storerequisitionlisting', 'Stor
$routes->match(['get', 'post', 'put', 'delete'],'EditStoreRequisition', 'Storerequisitioncontroller::EditStoreRequistion');
// Application IGR Routes
$routes->get('Addigr', 'Inwardgateregister::addinwardgateregister');
$routes->match(['get', 'post', 'put', 'delete'],'ViewigrDetails', 'Inwardgateregister::viewIGRDetails');
$routes->match(['get', 'post', 'put', 'delete'],'ViewMRIRBilling', 'MRIRcontroller::viewmrirforbilling');
$routes->post('inwardgateregister/IGRITEM', 'Inwardgateregister::IGRITEM');
$routes->get('Addigr', 'Inwardgateregister::addinwardgateregister'); // ADD IGR page - working
$routes->post('inwardgateregister/IGRITEM', 'Inwardgateregister::IGRITEM'); // ADD IGR page - Working
$routes->post('inwardgateregister/ViewIGR', 'Inwardgateregister::ViewIGR');
$routes->post('inwardgateregister/addNewigr', 'Inwardgateregister::addNewigr');
$routes->get('inwardgateregister/viewIGRDetails','Inwardgateregister::viewIGRDetails');
$routes->match(['get', 'post', 'put', 'delete'],'ViewigrDetails', 'Inwardgateregister::viewIGRDetails'); //ADD IGR - Working when Save
$routes->post('inwardgateregister/ViewIGRfile', 'Inwardgateregister::ViewIGRfile');
$routes->post('inwardgateregister/ViewIGR', 'Inwardgateregister::ViewIGR');
$routes->post('inwardgateregister/edituploadfile', 'Inwardgateregister::edituploadfile');
$routes->post('inwardgateregister/addloadfile', 'Inwardgateregister::addloadfile');
$routes->post('inwardgateregister/edituploadfile', 'Inwardgateregister::edituploadfile');
$routes->post('inwardgateregister/ViewIGRHistory', 'Inwardgateregister::ViewIGRHistory');
$routes->post('inwardgateregister/UpdateIGR', 'Inwardgateregister::UpdateIGR');
$routes->post('inwardgateregister/updateIGRLineItem', 'Inwardgateregister::updateIGRLineItem');
$routes->post('inwardgateregister/ViewIGRHistory', 'Inwardgateregister::ViewIGRHistory');
// Application OGR Page
$routes->match(['get', 'post', 'put', 'delete'],'AddOgr', 'Inwardgateregister::addoutwardgateregister');

View File

@ -63,10 +63,13 @@ class Inwardgateregister extends BaseController
$result = $this->inwardgateregister_model->getpurchaseorder();
// $data['PO_NO'] = array_filter($result, function($item) {
// return !($item->status === 'ST027' && $item->IsOpenOrder === null);
// });
$data['PO_NO'] = array_filter($result, function($item) {
return !($item->status === 'ST027' && $item->IsOpenOrder === null);
return !($item->status === 'ST027');
});
$this->loadViews("inwardgateregister", $this->global, $data, NULL);
}
@ -313,66 +316,14 @@ class Inwardgateregister extends BaseController
$prefile = array();
$fileupdated_count = 0;
$fileupdated_name = [];
$GrossWeight = $this->request->getPost('GrossWeight');
$TareWeight = $this->request->getPost('TareWeight');
$NetWeight = $this->request->getPost('NetWeight');
$GrossWeightDate = (string)$this->request->getPost('GrossWeightDate');
$GrossWtDt = get_date_time_format($GrossWeightDate);
$TareWeightDate = (string)$this->request->getPost('TareWeightDate');
$TareWtDt = get_date_time_format($TareWeightDate);
// $igr = array('PONO' => $PONO, 'VehicleNo' => $VehicleNo, 'DeliveryChellanOrInvoiceNo' => $DeliveryChellanOrInvoiceNo, 'DeliveryChellanDate' => $DeliveryChellanDate, 'MaterialRcvdDate' => $MaterialRcvdDt, 'DriverName' => $DriverName, 'DriverMobileNumber' => $DriverMobileNumber,'IGRStatus' => $IGRStatus, 'CreatedBy' => $CreatedBy, 'CreatedDate' => $createddt, 'PaymentStatus' => $paymentstatus);
$igr = array('PONO' => $PONO, 'VehicleNo' => $VehicleNo, 'DeliveryChellanOrInvoiceNo' => $DeliveryChellanOrInvoiceNo, 'DeliveryChellanDate' => $DeliveryChellanDate, 'MaterialRcvdDate' => $MaterialRcvdDt, 'DriverName' => $DriverName, 'DriverMobileNumber' => $DriverMobileNumber,'IGRStatus' => $IGRStatus, 'CreatedBy' => $CreatedBy, 'CreatedDate' => $createddt, 'PaymentStatus' => $paymentstatus,'GrossWeight'=>$GrossWeight,'TareWeight'=>$TareWeight,'NetWeight'=>$NetWeight,'GrossWeightDate'=>$GrossWtDt,'TareWeightDate'=>$TareWtDt);
$igr = array('PONO' => $PONO, 'VehicleNo' => $VehicleNo, 'DeliveryChellanOrInvoiceNo' => $DeliveryChellanOrInvoiceNo, 'DeliveryChellanDate' => $DeliveryChellanDate, 'MaterialRcvdDate' => $MaterialRcvdDt, 'DriverName' => $DriverName, 'DriverMobileNumber' => $DriverMobileNumber,'IGRStatus' => $IGRStatus, 'CreatedBy' => $CreatedBy, 'CreatedDate' => $createddt, 'PaymentStatus' => $paymentstatus);
//Saving IGR details Here
$IGRNO = $this->inwardgateregister_model->addigrM($igr);
if($IGRNO){
#Step 1.1 Fetch On History
if($GrossWeight){
$igr_history = array('field' => 'GrossWeight','is_add' => 1,'new_data' => $GrossWeight,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO);
$history_id = $this->inwardgateregister_model->igr_history($igr_history);
log_message('error', "History updated successfully. History id: " . $history_id);
}
if($TareWeight){
$igr_history = array('field' => 'TareWeight','is_add' => 1,'new_data' => $TareWeight,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO);
$history_id = $this->inwardgateregister_model->igr_history($igr_history);
log_message('error', "History updated successfully. History id: " . $history_id);
}
if($NetWeight){
$igr_history = array('field' => 'NetWeight','is_add' => 1,'new_data' => $NetWeight,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO);
$history_id = $this->inwardgateregister_model->igr_history($igr_history);
log_message('error', "History updated successfully. History id: " . $history_id);
}
if($GrossWtDt){
$igr_history = array('field' => 'GrossWeightDate','is_add' => 1,'new_data' => $GrossWtDt,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO);
$history_id = $this->inwardgateregister_model->igr_history($igr_history);
log_message('error', "History updated successfully. History id: " . $history_id);
}
if($TareWtDt){
$igr_history = array('field' => 'TareWeightDate','is_add' => 1,'new_data' => $TareWtDt,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO);
$history_id = $this->inwardgateregister_model->igr_history($igr_history);
log_message('error', "History updated successfully. History id: " . $history_id);
}
// if($DeliveryChellanOrInvoiceNo){
// $igr_history = array('field' => 'DeliveryChellanOrInvoiceNo','is_add' => 1,'new_data' => $DeliveryChellanOrInvoiceNo,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO);
// $history_id = $this->inwardgateregister_model->igr_history($igr_history);
// log_message('error', "History updated successfully. History id: " . $history_id);
// }
// if($DeliveryChellanDate){
// $igr_history = array('field' => 'DeliveryChellanDate','is_add' => 1,'new_data' => $DeliveryChellanDate,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO);
// $history_id = $this->inwardgateregister_model->igr_history($igr_history);
// log_message('error', "History updated successfully. History id: " . $history_id);
// }
// if($MaterialRcvdDt){
// $igr_history = array('field' => 'MaterialRcvdDate','is_add' => 1,'new_data' => $MaterialRcvdDt,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO);
// $history_id = $this->inwardgateregister_model->igr_history($igr_history);
// log_message('error', "History updated successfully. History id: " . $history_id);
// }
if($VehicleNo){
$igr_history = array('field' => 'VehicleNo','is_add' => 1,'new_data' => $VehicleNo,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO);
$history_id = $this->inwardgateregister_model->igr_history($igr_history);
@ -466,6 +417,12 @@ class Inwardgateregister extends BaseController
$ReceivedQty = $ReceivedQty !== null && is_string($ReceivedQty) ? trim($ReceivedQty) : null;
$PendingQty = $this->request->getPost('txtPendingQty' . $i);
$TotalPendingQty = $TotalPendingQty + $PendingQty;
$GrossWeight = $this->request->getPost('txtGrossWeight' . $i);
$GrossWeightDate= $this->request->getPost('txtGrossWeightDate' . $i);
$TareWeight= $this->request->getPost('txtTareWeight' . $i);
$TareWeightDate= $this->request->getPost('txtTareWeightDate' . $i);
$NetWeight= $this->request->getPost('txtNetWeight' . $i);
if (strlen($QuantityAsPerInvoice) > 0 && $QuantityAsPerInvoice != '0') {
$Remarks = $this->request->getPost('txtRemarks' . $i);
@ -478,6 +435,12 @@ class Inwardgateregister extends BaseController
$CreatedBy = $this->session->get('userId');
$igrDetails = array('IGRNO' => $IGRNO, 'MaterialCode' => $MaterialCode, 'QuantityAsPerInvoice' => $QuantityAsPerInvoice, 'Remarks' => $Remarks, 'IGRItemStatus' => $IGRItemStatus, 'CreatedBy' => $CreatedBy, 'CreatedDate' => $createddt);
$igrDetails['GrossWeight'] = $GrossWeight ;
$igrDetails['GrossWeightDate'] = $GrossWeightDate;
$igrDetails['TareWeight'] = $TareWeight;
$igrDetails['TareWeightDate'] = $TareWeightDate;
$igrDetails['NetWeight'] = $NetWeight;
$igrD = $this->inwardgateregister_model->addigrD($igrDetails);
$igrlineno = !empty($igrD) ? $igrD : '';
@ -490,6 +453,35 @@ class Inwardgateregister extends BaseController
}
$historydetails = array('MaterialCode' => $MaterialCode, 'Transaction_type' => "Add", 'Ref_Type' => "IGR", 'Ref_No' => $igrlineno, 'Quantity' => $QuantityAsPerInvoice, 'CreatedBy' => $CreatedBy, 'CreatedOn' => $createddt, 'SupplierID' => $SupplierId, 'ItemValue' => $itemvalue);
$this->inwardgateregister_model->addmaterialhistory($historydetails);
if($GrossWeight){
$igr_history = array('field' => 'GrossWeight','is_add' => 1,'new_data' => $GrossWeight,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO,'IGRItem_No'=>$igrlineno);
$history_id = $this->inwardgateregister_model->igr_history($igr_history);
log_message('error', "History updated successfully. History id: " . $history_id);
}
if($TareWeight){
$igr_history = array('field' => 'TareWeight','is_add' => 1,'new_data' => $TareWeight,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO,'IGRItem_No'=>$igrlineno);
$history_id = $this->inwardgateregister_model->igr_history($igr_history);
log_message('error', "History updated successfully. History id: " . $history_id);
}
if($NetWeight){
$igr_history = array('field' => 'NetWeight','is_add' => 1,'new_data' => $NetWeight,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO,'IGRItem_No'=>$igrlineno);
$history_id = $this->inwardgateregister_model->igr_history($igr_history);
log_message('error', "History updated successfully. History id: " . $history_id);
}
if($GrossWeightDate){
$igr_history = array('field' => 'GrossWeightDate','is_add' => 1,'new_data' => $GrossWeightDate,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO,'IGRItem_No'=>$igrlineno);
$history_id = $this->inwardgateregister_model->igr_history($igr_history);
log_message('error', "History updated successfully. History id: " . $history_id);
}
if($TareWeightDate){
$igr_history = array('field' => 'TareWeightDate','is_add' => 1,'new_data' => $TareWeightDate,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO,'IGRItem_No'=>$igrlineno);
$history_id = $this->inwardgateregister_model->igr_history($igr_history);
log_message('error', "History updated successfully. History id: " . $history_id);
}
if($QuantityAsPerInvoice){
$igr_history = array('field' => 'QuantityAsPerInvoice','is_add' => 1,'new_data' => $QuantityAsPerInvoice,'old_data' => NULL,'history_dated' => get_current_date_time(),'by' => $this->session->get('userId'),'IGR_No' => $IGRNO,'IGRItem_No'=>$igrlineno);
$history_id = $this->inwardgateregister_model->igr_history($igr_history);

View File

@ -143,6 +143,8 @@ class MRIRcontroller extends BaseController
$this->loadViews("materialinspectionreport", $this->global, $data, NULL);
}
/** Admin Login View IGR ... to Create the MRIR..... */
function viewinwardgateregister()
{

View File

@ -616,7 +616,7 @@ $mpdf->use_kwt = true;
if ($ReqType == SERVICE) {
$data['POItem'] = $this->purchaseorder_model->GetServicePurchaseOrderDetails($PONO);
// print_r($data['POItem']);die;
$data['getdata'] = $this->purchaseorder_model->getfunction($PONO);
//$data['billfile'] = $this->purchaseorder_model->getbillfiesr($pono);

View File

@ -302,7 +302,8 @@ class Supplier extends BaseController
$file2 = $this->request->getFile('Cert_GST');
$file3 = $this->request->getFile('Cert_BANK');
$path = ROOTPATH.'public/uploads/images/';
if($PAN){ $supplier['PAN'] = $PAN;}
if($GSTNo){ $supplier['GSTNO'] = $GSTNo;}
if ($file2 && $file2->isValid() && !$file2->hasMoved()) {
if(!is_dir($path)) { mkdir($path, 0777, true); }
$GST_DOC = $file2->getName();
@ -361,7 +362,7 @@ class Supplier extends BaseController
//$data['payment'] = $this->supplier_model->getpayment($Payment );
$data['payment'] = $this->supplier_model->getPaymentTerms($Payment);
$this->global['pageTitle'] = 'Edit Supplier';
// print_r($data['supplier']);die;
$this->loadViews("editSupplier", $this->global, $data, NULL);
}

View File

@ -231,7 +231,7 @@ class Inwardgateregister_model extends Model
function addigrM($igrM)
{
// print_r($igrM);die;
$this->db->transStart();
$builder = $this->db->table('T_IGR_Master');
$builder->insert($igrM);
@ -340,6 +340,7 @@ class Inwardgateregister_model extends Model
$result = $query->getResult();
// echo $this->db->getLastQuery()->getQuery();
// echo $this->db->getLastQuery()->getQuery();die;
return $result;
}

View File

@ -0,0 +1,825 @@
<?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,PO.POType')
->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')
->orderBy('igr.CreatedDate','desc')
->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,POM.CreatedDate,POM.POType')
->select("IF(POM.PODate IS NOT NULL, DATE_FORMAT(POM.PODate, '%Y-%m-%d'), NULL) AS formatted_PODate")
->select("IF(POM.IsOpenOrder IS NULL OR POM.IsOpenOrder = '', 0, POM.IsOpenOrder) 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)
->orderBy('POM.CreatedDate', 'desc');
$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);
$YesIAmAffected = $this->db->affectedRows();
$this->db->transComplete();
$result = [];
if ($YesIAmAffected > 0) {
$result = $this->db->table('T_IGR_Master')
->select('IGRNO')
->orderBy('CreatedDate', 'desc')
->get()
->getRow();
// $result->IGRNO;
}
$igrno = ($YesIAmAffected && !empty($result)) ? $result->IGRNO : '';
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,POM.POType')
->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 updateIGRLineItem($igrlineitemarr, $IGRitemNo){
$this->db->table('T_IGR_Details')
->where('IGRItemNo', $IGRitemNo)
->update($igrlineitemarr);
$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;
}
}

View File

@ -31,7 +31,7 @@ class Mrir_model extends Model
{
$builder = $this->db->table('T_IGR_Master igr')
->select('igr.*,PO.DeliveryDate,sup.SupplierName,PO.POType')
->select('igr.*,PO.IsOpenOrder,PO.DeliveryDate,sup.SupplierName,PO.POType')
->join('T_PurchaseOrder_Master PO', 'igr.PONO = PO.PONO')
->join('T_SupplierDetailsN` sup', 'PO.SupplierID = sup.SupplierID')
->where('igr.IGRStatus !=', MRIR_CREATED)

View File

@ -2042,7 +2042,6 @@ if (!empty($getlogpodtl)) {
<tbody id='ServiceAppend'>
<?php
if (!empty($POItem)) {

View File

@ -58,10 +58,15 @@
</style>
<div class="content-wrapper" style="min-height:537px;">
<section class="content-header">
<h5><div class="pull-right hidden-xs">
<b><div id="wizard_clock"></div> <br><div id="formatted_IsOpenOrder"></div> </b>
</div></h5>
<h1>
<center> Inward Gate Register </center>
</h1>
</section>
<section class="content" style="margin: 15px;"><br/>
<div style="border:2px solid #333;">
@ -115,7 +120,7 @@
<div class="col-md-3">
<label>Invoice Number <!-- Delivery Challan/Inv No --></label>
<?php
$data = array('name' => 'InvoiceNo','value' => set_value('InvoiceNo'),'id'=>'InvoiceNo', 'class' => 'form-control', 'required=>"true"','onkeypress'=>'return isNumberKey(event);' );
$data = array('name' => 'InvoiceNo','value' => set_value('InvoiceNo'),'id'=>'InvoiceNo', 'class' => 'form-control', 'required=>"true"' ); // ,'onkeypress'=>'return isNumberKey(event);' );
echo form_input($data);
?>
@ -206,18 +211,16 @@
<table id="Inwardgateregistertable" class="table table-bordered table-hover editabletable IGR_Line" style="background-color:#fff;font-size:12px;">
<thead style="background-color:#ddf">
<tr>
<th>S.No</th>
<th>Item Code</th>
<th>Material</th>
<th>UOM</th>
<th>Ordered Quantity</th>
<th>Received Quantity</th>
<th>Pending Quantity</th>
<th>Advised Quantity</th>
<th>Remarks</th>
<th> </th>
<th>#</th>
<th>Item Code</th>
<th>Material</th>
<th>UOM</th>
<th>Ordered Quantity</th>
<th>Received Quantity</th>
<th>Balance Quantity</th>
<th>Invoice Quantity</th>
<th>Remarks</th>
<th> </th>
</tr>
</thead>
<tbody id ="IGRappend">
@ -515,6 +518,9 @@ function validate()
$("#po").val(obj.PONO);
$("#Sup").val(obj.SupplierName);
$("#hiddenIsOpenOrder").val(obj.IsOpenOrder);
var isOpenOrder = parseInt(obj.IsOpenOrder, 2);
var formatted_IsOpenOrder = (isOpenOrder === 0 || isNaN(isOpenOrder)) ? "Ordered Quantity PO" : "Open Order PO";
$('#formatted_IsOpenOrder').text(formatted_IsOpenOrder);
//$("#Add").val(obj.Address);
$("#del").val(obj.DeliveryDate);
@ -1043,6 +1049,7 @@ function removeRows(inputs) {
const dateString = todaydate+'-'+month+'-'+year;
const timeString = hours+":"+minutes+":"+seconds;
document.getElementById('clock').textContent = dateString+" "+timeString;
document.getElementById('wizard_clock').textContent = dateString+" "+timeString;
}
setInterval(updateTime, 1000); // Update every second
@ -1138,7 +1145,7 @@ function modalSave() {
// Close the modal
$("#WeightCalculator").modal('hide');
} else {
console.log("Saving values for index: undefined");
console.log("Saving values for index: "+v6+" undefined");
}
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff