excel helper 1

This commit is contained in:
VE10-Sanjeev 2025-04-05 05:50:38 +00:00
parent 15760bf727
commit 8bc7894126
22 changed files with 486 additions and 254 deletions

View File

@ -90,5 +90,5 @@ class Autoload extends AutoloadConfig
* *
* @var list<string> * @var list<string>
*/ */
public $helpers = ['datetime','cias','purchaseorder','alert']; public $helpers = ['cias','datetime','image','alert','excel'];
} }

View File

@ -229,6 +229,7 @@ class Amendmentpurchaseorder extends BaseController
*/ */
function EditRevenuePurchaseOrder() function EditRevenuePurchaseOrder()
{ {
helper('numberseries');
$NewPO = ''; $NewPO = '';
$MAD = ''; $MAD = '';
// $changeStatus ,will havestatus code itself provided from front-end , no need of constants // $changeStatus ,will havestatus code itself provided from front-end , no need of constants
@ -309,8 +310,9 @@ class Amendmentpurchaseorder extends BaseController
if ($PaymentTerms != 'PT08') { if ($PaymentTerms != 'PT08') {
$Otherpayment = ''; $Otherpayment = '';
} }
$IsOpenOrder = ($this->request->getPost('IsOpenOrder') !== null && !empty($this->request->getPost('IsOpenOrder')) && $this->request->getPost('IsOpenOrder') === '1') ? $this->request->getPost('IsOpenOrder') : null;
$AmendmentNewPoNo = generate_amendment_po_number($PONO); $AmendmentNewPoNo = generate_amendment_po_number($PONO);
$POMaster = array('PONO' => $AmendmentNewPoNo, 'ParentPO' => $PONO, 'SupplierID' => $SupplierID, 'POType' => $POType, 'PORange' => $Local_Interstate, 'TotalOrderValue' => $TotalOrderValueSummary, 'PODate' => $PODate, 'Status' => $changeStatus , 'PaymentTerms' => $PaymentTerms, 'PaymentOtherDescription' => $Otherpayment, 'Mode_Of_Shipment' => $Modeofshipment, 'Supplier_Reference' => $supplierreference, 'Supplier_Offer_No' => $supplieroffno, 'Other_Reference' => $otherreference, 'Fincap' => $fincap, 'InsuranceStatus' => $insurancestatus, 'InsuranceNumber' => $InsuranceNumber, 'POSubType' => $revenuetype, 'DeliverySchedule' => $DeliverySchedule, 'DeliveryOption' => $DeliveryOption, 'ServiceDescription' => $SpecialInstruction, 'CreatedBy' => $updatedBy, 'DeliveryAddress' => $DeliveryAddr, 'DeliveryDate' => $Deliverydt, 'UpdatedOn' => $updateddt, 'ReleasedBy' => $updatedBy, 'ReleasedOn' => $updateddt, 'AmendedDetails' => $MAD, 'IsQualityChkReqired' => $qtycheckresult,'CapitalRange' => $Local_Interstate,'BudgetType' => $BudgetType); // not $POMaster = array('PONO' => $AmendmentNewPoNo, 'ParentPO' => $PONO, 'SupplierID' => $SupplierID, 'POType' => $POType, 'PORange' => $Local_Interstate, 'TotalOrderValue' => $TotalOrderValueSummary, 'PODate' => $PODate, 'Status' => $changeStatus , 'PaymentTerms' => $PaymentTerms, 'PaymentOtherDescription' => $Otherpayment, 'Mode_Of_Shipment' => $Modeofshipment, 'Supplier_Reference' => $supplierreference, 'Supplier_Offer_No' => $supplieroffno, 'Other_Reference' => $otherreference, 'Fincap' => $fincap, 'InsuranceStatus' => $insurancestatus, 'InsuranceNumber' => $InsuranceNumber, 'POSubType' => $revenuetype, 'DeliverySchedule' => $DeliverySchedule, 'DeliveryOption' => $DeliveryOption, 'ServiceDescription' => $SpecialInstruction, 'CreatedBy' => $updatedBy, 'DeliveryAddress' => $DeliveryAddr, 'DeliveryDate' => $Deliverydt, 'UpdatedOn' => $updateddt, 'ReleasedBy' => $updatedBy, 'ReleasedOn' => $updateddt, 'AmendedDetails' => $MAD, 'IsQualityChkReqired' => $qtycheckresult,'CapitalRange' => $Local_Interstate,'BudgetType' => $BudgetType, 'IsOpenOrder'=>$IsOpenOrder); // not
$file = $this->request->getFile('POFile'); $file = $this->request->getFile('POFile');
$requestfilename = $file->getName(); $requestfilename = $file->getName();
$PrePOFile = $this->request->getPost('PrePOFile'); $PrePOFile = $this->request->getPost('PrePOFile');
@ -580,13 +582,13 @@ class Amendmentpurchaseorder extends BaseController
$recqty = $qty[0]->rec; $recqty = $qty[0]->rec;
// $POno = $qtyvalue->PONO; // $POno = $qtyvalue->PONO;
if ($ordqty == $recqty) { if(!$IsOpenOrder):if ($ordqty == $recqty) {
$Newstatus = array('Status' => IGR_CREATED); $Newstatus = array('Status' => IGR_CREATED);
$this->purchaseorder_model->POLineItemsupdatestatus($NewPO, $Newstatus); $this->purchaseorder_model->POLineItemsupdatestatus($NewPO, $Newstatus);
$this->purchaseorder_model->pomasterupdatestatus($NewPO, $Newstatus); $this->purchaseorder_model->pomasterupdatestatus($NewPO, $Newstatus);
} }endif;
$message = 'Purchase Order ' . $PONO . ' Amended Successfully! - New PO Number is: ' . $NewPO ; $message = 'Purchase Order ' . $PONO . ' Amended Successfully! - New PO Number is: ' . $NewPO ;
@ -603,7 +605,7 @@ class Amendmentpurchaseorder extends BaseController
function UpdateAmendServicePurchaseOrder() function UpdateAmendServicePurchaseOrder()
{ {
// dd($this->request->getPost()); helper('numberseries');
$PONO = $this->request->getPost('txtPONO'); $PONO = $this->request->getPost('txtPONO');
$changeStatus = $this->request->getPost('changeStatus'); $changeStatus = $this->request->getPost('changeStatus');
@ -672,6 +674,7 @@ class Amendmentpurchaseorder extends BaseController
$qtycheck = $this->purchaseorder_model->getqtycheck($PONO); $qtycheck = $this->purchaseorder_model->getqtycheck($PONO);
$qtycheckresult = ''; $qtycheckresult = '';
$IsOpenOrder = ($this->request->getPost('IsOpenOrder') !== null && !empty($this->request->getPost('IsOpenOrder')) && $this->request->getPost('IsOpenOrder') === '1') ? $this->request->getPost('IsOpenOrder') : null;
foreach ($qtycheck as $qty) { foreach ($qtycheck as $qty) {
$qtycheckresult = $qty->IsQualityChkReqired; $qtycheckresult = $qty->IsQualityChkReqired;
} }
@ -685,7 +688,7 @@ class Amendmentpurchaseorder extends BaseController
} }
$AmendmentNewPoNo = generate_amendment_po_number($PONO); $AmendmentNewPoNo = generate_amendment_po_number($PONO);
$POMaster = array('PONO' => $AmendmentNewPoNo, 'ParentPO' => $PONO, 'POType' => $POType, 'SupplierID' => $SupplierID, 'TotalOrderValue' => $TotalOrderValueSummary, 'PODate' => $PODate, 'Status' =>$changeStatus , 'DeliverySchedule' => $DeliverySchedule, 'DeliveryOption' => $DeliveryOption, 'ServiceDescription' => $scopeofwork, 'CreatedBy' => $updatedBy, 'DeliveryAddress' => $DeliveryAddr, 'DeliveryDate' => $Deliverydt, 'CreatedDate' => $updateddt, 'PaymentTerms' => $PaymentTerms, 'PaymentOtherDescription' => $Otherpayment, 'ServiceWorkStatus' => $WorkStatus, 'ReleasedBy' => $updatedBy, 'ReleasedOn' => $updateddt, 'AmendedDetails' => $MAD, 'Supplier_Reference' => $SupplierReference, 'Mode_Of_Shipment' => $ModeOfShipment, 'Supplier_Offer_No' => $SuppliersOfferNo, 'Other_Reference' => $OtherReferences, 'Fincap' => $Fincap, 'Description_Of_Service' => strip_tags((string)$DescriptionOfPo), 'InsuranceStatus' => $InsuranceOptions, 'InsuranceNumber' => $InsuranceNumber, 'POSubType' => $ServiceTypeOptions, 'IsQualityChkReqired' => $qtycheckresult); $POMaster = array('PONO' => $AmendmentNewPoNo, 'ParentPO' => $PONO, 'POType' => $POType, 'SupplierID' => $SupplierID, 'TotalOrderValue' => $TotalOrderValueSummary, 'PODate' => $PODate, 'Status' =>$changeStatus , 'DeliverySchedule' => $DeliverySchedule, 'DeliveryOption' => $DeliveryOption, 'ServiceDescription' => $scopeofwork, 'CreatedBy' => $updatedBy, 'DeliveryAddress' => $DeliveryAddr, 'DeliveryDate' => $Deliverydt, 'CreatedDate' => $updateddt, 'PaymentTerms' => $PaymentTerms, 'PaymentOtherDescription' => $Otherpayment, 'ServiceWorkStatus' => $WorkStatus, 'ReleasedBy' => $updatedBy, 'ReleasedOn' => $updateddt, 'AmendedDetails' => $MAD, 'Supplier_Reference' => $SupplierReference, 'Mode_Of_Shipment' => $ModeOfShipment, 'Supplier_Offer_No' => $SuppliersOfferNo, 'Other_Reference' => $OtherReferences, 'Fincap' => $Fincap, 'Description_Of_Service' => strip_tags((string)$DescriptionOfPo), 'InsuranceStatus' => $InsuranceOptions, 'InsuranceNumber' => $InsuranceNumber, 'POSubType' => $ServiceTypeOptions, 'IsQualityChkReqired' => $qtycheckresult,'IsOpenOrder'=>$IsOpenOrder);
$file = $this->request->getFile('POFile'); $file = $this->request->getFile('POFile');
$PrePOFile = $this->request->getPost('PrePOFile'); $PrePOFile = $this->request->getPost('PrePOFile');
$requestfilename = $file ? $file->getName() : null; $requestfilename = $file ? $file->getName() : null;
@ -879,13 +882,13 @@ class Amendmentpurchaseorder extends BaseController
$recqty = $qty[0]->rec; $recqty = $qty[0]->rec;
// $POno = $qtyvalue->PONO; // $POno = $qtyvalue->PONO;
if ($ordqty == $recqty) { if(!$IsOpenOrder):if ($ordqty == $recqty) {
$Newstatus = array('Status' => IGR_CREATED); $Newstatus = array('Status' => IGR_CREATED);
$this->purchaseorder_model->POLineItemsupdatestatus($NewPO, $Newstatus); $this->purchaseorder_model->POLineItemsupdatestatus($NewPO, $Newstatus);
$this->purchaseorder_model->pomasterupdatestatus($NewPO, $Newstatus); $this->purchaseorder_model->pomasterupdatestatus($NewPO, $Newstatus);
} }endif;
$message = 'Purchase Order ' . $PONO . ' Amended Successfully! - New PO Number is: ' . $NewPO ; $message = 'Purchase Order ' . $PONO . ' Amended Successfully! - New PO Number is: ' . $NewPO ;
if($changeStatus == 'ST014'){ if($changeStatus == 'ST014'){
@ -900,6 +903,7 @@ class Amendmentpurchaseorder extends BaseController
*/ */
function EditAmendCapitalPurchaseOrder() function EditAmendCapitalPurchaseOrder()
{ {
helper('numberseries');
$changeStatus = $this->request->getPost('changeStatus'); $changeStatus = $this->request->getPost('changeStatus');
$PONO = $this->request->getPost('txtPONO'); $PONO = $this->request->getPost('txtPONO');
$MAD = ''; $MAD = '';
@ -1309,7 +1313,7 @@ class Amendmentpurchaseorder extends BaseController
function EditAmendImportPO() function EditAmendImportPO()
{ {
// echo "<pre>"; print_r($this->request->getPost()); echo"</pre>"; // echo "<pre>"; print_r($this->request->getPost()); echo"</pre>";
helper('numberseries');
$MAD = ''; $MAD = '';
$PONO = $this->request->getPost('txtPONO'); $PONO = $this->request->getPost('txtPONO');

View File

@ -122,6 +122,7 @@ class Emergencypurchaseorder extends BaseController
//This used to Create Service Purchase Order //This used to Create Service Purchase Order
function addNewServicePurchaseOrder() function addNewServicePurchaseOrder()
{ {
helper('numberseries');
// print_r($this->request->getPost());die; // print_r($this->request->getPost());die;
$txtRowCount = $this->request->getPost('txtRowCount'); $txtRowCount = $this->request->getPost('txtRowCount');
$POdt = $this->request->getPost('PODate'); $POdt = $this->request->getPost('PODate');
@ -365,7 +366,7 @@ class Emergencypurchaseorder extends BaseController
//This used to Create Revenue Emergency Purchase Order //This used to Create Revenue Emergency Purchase Order
function addNewRevenuePurchaseOrder() function addNewRevenuePurchaseOrder()
{ {
helper('numberseries');
// print_r($this->request->getPost());die; // print_r($this->request->getPost());die;
$txtspl = $this->request->getPost('txtSpecial'); $txtspl = $this->request->getPost('txtSpecial');
@ -1164,6 +1165,7 @@ class Emergencypurchaseorder extends BaseController
//This used to Create Revenue Purchase Order //This used to Create Revenue Purchase Order
function addNewPurchaseOrder() function addNewPurchaseOrder()
{ {
helper('numberseries');
$POdt = $this->request->getPost('PODate'); $POdt = $this->request->getPost('PODate');
$PODate = get_date_time_format($POdt); $PODate = get_date_time_format($POdt);
$SupplierID = $this->request->getPost('drpSupplier'); $SupplierID = $this->request->getPost('drpSupplier');

View File

@ -51,6 +51,7 @@ class Expense extends BaseController
public function addExpense() public function addExpense()
{ {
helper('numberseries');
try{ try{
$file = $this->request->getFile('transporterfile'); $file = $this->request->getFile('transporterfile');
$fileName = ''; $fileName = '';

View File

@ -405,6 +405,7 @@ class Inwardgateregister extends BaseController
function SaveIGR() function SaveIGR()
{ {
#Step 1 IGR Details #Step 1 IGR Details
helper('numberseries');
$PONO = $this->request->getPost('PONO'); $PONO = $this->request->getPost('PONO');
$IsThisOpenOrderPO = $this->request->getPost('hiddenIsOpenOrder'); $IsThisOpenOrderPO = $this->request->getPost('hiddenIsOpenOrder');
$DeliveryChellanOrInvoiceNo = $this->request->getPost('InvoiceNo'); $DeliveryChellanOrInvoiceNo = $this->request->getPost('InvoiceNo');

View File

@ -1045,10 +1045,8 @@ class Monthlypay extends BaseController
$data['leave_info'] = $this->monthlypay_model->getheringleaveApplicationForm($leave_application_id); $data['leave_info'] = $this->monthlypay_model->getheringleaveApplicationForm($leave_application_id);
$data['company_info'] = $this->monthlypay_model->getCompanyInformation(); $data['company_info'] = $this->monthlypay_model->getCompanyInformation();
$html = view('leaveApplicationPDF', $data); // echo $html;
$html = view('leaveApplicationPDF', $data);
// echo $html;die;
$mpdf = new Mpdf(); $mpdf = new Mpdf();
$mpdf->WriteHTML($html); $mpdf->WriteHTML($html);

View File

@ -1113,6 +1113,7 @@ class Purchaseorder extends BaseController
//This used to Create Revenue Purchase Order //This used to Create Revenue Purchase Order
function addNewPurchaseOrder() function addNewPurchaseOrder()
{ {
helper('numberseries');
try { try {
// Extract POST data // Extract POST data
@ -1985,6 +1986,7 @@ class Purchaseorder extends BaseController
function addNewImportPurchaseOrder() function addNewImportPurchaseOrder()
{ {
helper('numberseries');
try { try {
$POdt = $this->request->getPost('PODate'); $POdt = $this->request->getPost('PODate');
$PODate = get_date_time_format($POdt); $PODate = get_date_time_format($POdt);
@ -2670,7 +2672,7 @@ class Purchaseorder extends BaseController
/* Add capital Po*/ /* Add capital Po*/
function addNewCapitalPurchaseOrder() function addNewCapitalPurchaseOrder()
{ {
helper('numberseries');
try { try {
$POdt = $this->request->getPost('PODate'); $POdt = $this->request->getPost('PODate');
$PODate = get_date_time_format($POdt); $PODate = get_date_time_format($POdt);

View File

@ -187,7 +187,7 @@ class Servicepurchaseorder extends BaseController
//This used to Create Service Purchase Order //This used to Create Service Purchase Order
function addNewServicePurchaseOrder() function addNewServicePurchaseOrder()
{ {
helper('numberseries');
$POdt = $this->request->getPost('PODate'); $POdt = $this->request->getPost('PODate');
$PODate = get_date_time_format($POdt); $PODate = get_date_time_format($POdt);
$SupplierID = $this->request->getPost('drpSupplier'); $SupplierID = $this->request->getPost('drpSupplier');

49
app/Helpers/excel_helper.php Executable file
View File

@ -0,0 +1,49 @@
<?php
use PhpOffice\PhpSpreadsheet\Spreadsheet;
use PhpOffice\PhpSpreadsheet\Writer\Xlsx;
use PhpOffice\PhpSpreadsheet\IOFactory;
use PhpOffice\PhpSpreadsheet\Reader\Exception as SpreadsheetReaderException;
if (!function_exists('generate_excel')) {
/*
This function generates an Excel file using the given headers and data and saves it with the specified filename.
It utilizes the PhpSpreadsheet library to create and manipulate Excel files.
Parameters:
- $headers: An array containing the column headers for the Excel sheet.
- $data: An array containing the data to be inserted into the Excel sheet.
- $filename: The name of the file to be saved.
- $totals (optional): A flag indicating whether to include total calculations in the Excel sheet.
*/
function generate_excel($headers, $data, $filename)
{
// Create new Spreadsheet object
$spreadsheet = new Spreadsheet();
// Set worksheet title
$spreadsheet->getActiveSheet()->setTitle('Sheet 1');
// Set headers into the spreadsheet
$spreadsheet->getActiveSheet()->fromArray([$headers], null, 'A1');
// Set data into the spreadsheet
$spreadsheet->getActiveSheet()->fromArray($data, null, 'A2');
// Create Excel writer
$writer = new Xlsx($spreadsheet);
try {
// Save Excel file to the specified path
$writer->save($filename);
return true; // Return true if file was successfully saved
} catch (\Exception $e) {
// Log or handle the exception
return false; // Return false if there was an error saving the file
}
}
}

View File

@ -1,112 +1,4 @@
<?php <?php
if (!function_exists('generate_po_number')) {
function generate_po_number($last_pono)
{
$currentYear = date("Y");
$shortenFinYear = get_shorten_financial_year();// Get it From - DateTime Helper refer it.
// if(here have to check fin year if there is a change means both are same means ){
// $counter = $counter + 1;
// }else{
// $counter = 1;
// }
$result = explode('/', $last_pono);
$requestedFinYear = $result[1];
$leftPad = "RIPL";
$digit = 5;
if($requestedFinYear == $shortenFinYear){
$number = ((int)$result[2])+1;
$PoNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($number, $digit, '0', STR_PAD_LEFT);
}else{
$counter = 1;
$PoNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($counter, $digit, '0', STR_PAD_LEFT);
}
return $PoNo;
}
}
if (!function_exists('generate_igr_number')) {
function generate_igr_number($last_igrno)
{
$shortenFinYear = get_shorten_financial_year();
if (preg_match('/^\w+\/\d+-\d+\/\d+$/', $last_igrno)) {
// echo $last_igrno;
$type = 1; // IGRNO/25-26/00001 // 2025 april onwards karthick asked to changed this type.
} elseif (preg_match('/^\w+-\d+$/', $last_igrno)) {
// echo $last_igrno;
$type = 2; // IGRNO-0001 // karthick asked to checked this type 2023- 2025 april
} else {
// echo $last_igrno;
$type = 3; // IGRNO00001 // very first time we followed this type
}
if ($type == 1) {
$result = explode('/', $last_igrno);
$requestedFinYear = $result[1];
$leftPad = "IGR";
$digit = 4;
if($requestedFinYear == $shortenFinYear){ // here i am comparing the shoren fin year
$number = ((int)$result[2])+1;
$IgrNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($number, $digit, '0', STR_PAD_LEFT);
}else{
// here not same means ressetted type 1 format
$counter = 1;
$IgrNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($counter, $digit, '0', STR_PAD_LEFT);
}
return $IgrNo;
}else{
// type 2 and type 3 is converted into type 1 format
$leftPad = "IGR";
$digit = 5;
$counter = 1;
$IgrNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($counter, $digit, '0', STR_PAD_LEFT);
return $IgrNo;
}
}
}
if (!function_exists('generate_non_igr_number')) {
function generate_non_igr_number($last_non_igr)
{
$shortenFinYear = get_shorten_financial_year();// Get it From
$result = explode('/', $last_non_igr);
$requestedFinYear = $result[1];
$leftPad = "NonIGR";
$digit = 3;
if($requestedFinYear == $shortenFinYear){
$number = ((int)$result[2])+1;
$NonIgrNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($number, $digit, '0', STR_PAD_LEFT);
}else{
$counter = 1;
$NonIgrNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($counter, $digit, '0', STR_PAD_LEFT);
}
return $NonIgrNo;
}
}
function generate_amendment_po_number($PoNo, $increment = 1) {
if (strpos($PoNo, '.') !== false) {
list($base, $decimal) = explode('.', $PoNo);
preg_match('/^0*(\d+)$/', $decimal, $matches);
$numeric_part = isset($matches[1]) ? $matches[1] : '';
$new_numeric_part = intval($numeric_part) + $increment;
// Determine the number of leading zeros based on the original numeric part length
$new_decimal_length = strlen($numeric_part) > 1 ? strlen($numeric_part) : 2;
$new_decimal = str_pad($new_numeric_part, $new_decimal_length, '0', STR_PAD_LEFT);
return $base . '.' . $new_decimal;
} else {
return $PoNo . '.01';
}
}
if (!function_exists('invoice_logo_pdf')) if (!function_exists('invoice_logo_pdf'))
{ {
function invoice_logo_pdf() function invoice_logo_pdf()

View File

@ -0,0 +1,109 @@
<?php
if (!function_exists('generate_po_number')) {
function generate_po_number($last_pono)
{
$currentYear = date("Y");
$shortenFinYear = get_shorten_financial_year();// Get it From - DateTime Helper refer it.
// if(here have to check fin year if there is a change means both are same means ){
// $counter = $counter + 1;
// }else{
// $counter = 1;
// }
$result = explode('/', $last_pono);
$requestedFinYear = $result[1];
$leftPad = "RIPL";
$digit = 5;
if($requestedFinYear == $shortenFinYear){
$number = ((int)$result[2])+1;
$PoNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($number, $digit, '0', STR_PAD_LEFT);
}else{
$counter = 1;
$PoNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($counter, $digit, '0', STR_PAD_LEFT);
}
return $PoNo;
}
}
if (!function_exists('generate_igr_number')) {
function generate_igr_number($last_igrno)
{
$shortenFinYear = get_shorten_financial_year();
if (preg_match('/^\w+\/\d+-\d+\/\d+$/', $last_igrno)) {
// echo $last_igrno;
$type = 1; // IGRNO/25-26/00001 // 2025 april onwards karthick asked to changed this type.
} elseif (preg_match('/^\w+-\d+$/', $last_igrno)) {
// echo $last_igrno;
$type = 2; // IGRNO-0001 // karthick asked to checked this type 2023- 2025 april
} else {
// echo $last_igrno;
$type = 3; // IGRNO00001 // very first time we followed this type
}
if ($type == 1) {
$result = explode('/', $last_igrno);
$requestedFinYear = $result[1];
$leftPad = "IGR";
$digit = 4;
if($requestedFinYear == $shortenFinYear){ // here i am comparing the shoren fin year
$number = ((int)$result[2])+1;
$IgrNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($number, $digit, '0', STR_PAD_LEFT);
}else{
// here not same means ressetted type 1 format
$counter = 1;
$IgrNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($counter, $digit, '0', STR_PAD_LEFT);
}
return $IgrNo;
}else{
// type 2 and type 3 is converted into type 1 format
$leftPad = "IGR";
$digit = 5;
$counter = 1;
$IgrNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($counter, $digit, '0', STR_PAD_LEFT);
return $IgrNo;
}
}
}
if (!function_exists('generate_non_igr_number')) {
function generate_non_igr_number($last_non_igr)
{
$shortenFinYear = get_shorten_financial_year();// Get it From
$result = explode('/', $last_non_igr);
$requestedFinYear = $result[1];
$leftPad = "NonIGR";
$digit = 3;
if($requestedFinYear == $shortenFinYear){
$number = ((int)$result[2])+1;
$NonIgrNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($number, $digit, '0', STR_PAD_LEFT);
}else{
$counter = 1;
$NonIgrNo = $leftPad . '/' . $shortenFinYear . '/' . str_pad($counter, $digit, '0', STR_PAD_LEFT);
}
return $NonIgrNo;
}
}
function generate_amendment_po_number($PoNo, $increment = 1) {
if (strpos($PoNo, '.') !== false) {
list($base, $decimal) = explode('.', $PoNo);
preg_match('/^0*(\d+)$/', $decimal, $matches);
$numeric_part = isset($matches[1]) ? $matches[1] : '';
$new_numeric_part = intval($numeric_part) + $increment;
// Determine the number of leading zeros based on the original numeric part length
$new_decimal_length = strlen($numeric_part) > 1 ? strlen($numeric_part) : 2;
$new_decimal = str_pad($new_numeric_part, $new_decimal_length, '0', STR_PAD_LEFT);
return $base . '.' . $new_decimal;
} else {
return $PoNo . '.01';
}
}
?>

View File

@ -72,6 +72,8 @@ class Monthlypay_model extends Model
->orderBy('EmpID', 'asc'); ->orderBy('EmpID', 'asc');
$query = $builder->get(); $query = $builder->get();
$result = $query->getResult(); $result = $query->getResult();
// $last_query = $this->db->getLastQuery();
// echo $last_query;die;
return $result; return $result;
} }
@ -177,6 +179,8 @@ class Monthlypay_model extends Model
$year_val = date('Y', strtotime($current)); $year_val = date('Y', strtotime($current));
$date_val = cal_days_in_month(CAL_GREGORIAN, $month_val, $year_val); $date_val = cal_days_in_month(CAL_GREGORIAN, $month_val, $year_val);
$lastdate = $year_val . '-' . $month_val . '-' . $date_val; $lastdate = $year_val . '-' . $month_val . '-' . $date_val;
// echo $current;
// echo "last date - ".$lastdate;die;
$builder = $this->db->table('t_attendance') $builder = $this->db->table('t_attendance')
->select('t_attendance.*,t_employee_details.FirstName,t_employee_details.LastName') ->select('t_attendance.*,t_employee_details.FirstName,t_employee_details.LastName')
@ -191,6 +195,8 @@ class Monthlypay_model extends Model
$query = $builder->get(); $query = $builder->get();
$result = $query->getResult(); $result = $query->getResult();
// $last_query = $this->db->getLastQuery();
// echo $last_query;die;
return $result; return $result;
} }

View File

@ -1252,10 +1252,12 @@ if (!empty($getlogpodtl)) {
<div class="form-row"> <div class="form-row">
<div class="form-group col-md-12 text-right"> <div class="form-group col-md-12 text-right">
<?php if ($PONOStatus == PO_DRAFT || $PONOStatus == PO_CREATED || $PONOStatus == PO_APPROVED || $PONOStatus == REQITEM_Emergency_PO_CREATED) { ?> <?php if ($PONOStatus == PO_DRAFT || $PONOStatus == PO_CREATED || $PONOStatus == PO_APPROVED || $PONOStatus == REQITEM_Emergency_PO_CREATED) { ?>
<?php if ($PONOStatus == REQITEM_Emergency_PO_CREATED) { ?> <?php if($isChecked){ // if ($PONOStatus == REQITEM_Emergency_PO_CREATED) { ?>
<input type="checkbox" id="IsOpenOrder" name="IsOpenOrder" value="1" <?php echo $isChecked ? 'checked' : ''; ?>> IS THIS OPEN ORDER FORMAT <input type="checkbox" id="IsOpenOrder" name="IsOpenOrder" value="1" <?php echo $isChecked ? 'checked' : ''; ?>> IS THIS OPEN ORDER FORMAT
<?php } ?> <?php } ?>
<?php if(!$isChecked){ ?>
<a data-toggle="modal"><button type="submit" onclick="myFunction();" class="btn btn-success" id="abcd">Select Line Item</button> </a> <a data-toggle="modal"><button type="submit" onclick="myFunction();" class="btn btn-success" id="abcd">Select Line Item</button> </a>
<?php } ?>
<?php } ?> <?php } ?>
</div> </div>
</div> </div>
@ -1900,7 +1902,7 @@ if (!empty($getlogpodtl)) {
</div> </div>
<div class="form-group col-md-3"> <div class="form-group col-md-3">
<?php <?php
$data = array('name' => 'AfterSgst', 'value' => set_value('AfterSgst'), 'id' => 'AfterSgst', 'class' => 'form-control num', 'placeholder' => 'After SGST'); $data = array('name' => 'AfterSgst', 'value' => set_value('AfterSgst'), 'id' => 'AfterSgst', 'class' => 'form-control num', 'placeholder' => 'After SGST', 'readonly' => 'true');
echo form_input($data); echo form_input($data);
?> ?>
</div> </div>
@ -2545,6 +2547,14 @@ if (!empty($getlogpodtl)) {
$('input[type="file"], input[type="radio"], input[type="checkbox"]').attr('disabled', true); $('input[type="file"], input[type="radio"], input[type="checkbox"]').attr('disabled', true);
$("#PaymentTerms,#drpSupplier,#insuranceStatus,#PoTypeOptions,#workstatus").prop("disabled", true); $("#PaymentTerms,#drpSupplier,#insuranceStatus,#PoTypeOptions,#workstatus").prop("disabled", true);
} }
var openOrder = <?php echo $IsOpenOrder; ?>;
if(openOrder){
$('#Quantity').val(0);
$('#Quantity').removeAttr('required');
$('#Quantity').attr('readonly', true);
$('#EditQuantity').removeAttr('required');
$('#EditQuantity').attr('readonly', true);
}
}); });
</script> </script>
@ -3090,7 +3100,7 @@ if (!empty($getlogpodtl)) {
} }
function validateServiceTax() { function validateServiceTax() {
var openOrder = $('#IsOpenOrder').prop('checked');
if ($('#ReqNo').val() == "0") { if ($('#ReqNo').val() == "0") {
alert('Please select the Requisition Number'); alert('Please select the Requisition Number');
$('#ReqNo').focus(); $('#ReqNo').focus();
@ -3103,39 +3113,46 @@ if (!empty($getlogpodtl)) {
alert('Please select the Material Code'); alert('Please select the Material Code');
$('#MaterialCode').focus(); $('#MaterialCode').focus();
return false; return false;
} else if ($('#Quantity').val() == '') {
alert('Please Enter the Quantity value');
$('#Quantity').focus();
return false;
} else if ($('#Quantity').val() == 0) {
alert('Please Enter the Valid Quantity Value');
$('#Quantity').focus();
return false;
} else if ($('#Rate').val() == '') {
alert('Please Enter the Rate of the Item');
$('#Rate').focus();
return false;
} else if ($('#Rate').val() == 0) {
alert('Please Enter the Valid Rate of the Item');
$('#Rate').focus();
return false;
} else if (ExceedQuantityCheck() == false) {
return false;
} else if ($('#txtSpcialInstruction').val() == '') { } else if ($('#txtSpcialInstruction').val() == '') {
alert('Please Enter the Service Description'); alert('Please Enter the Service Description');
$('#txtSpcialInstruction').focus(); $('#txtSpcialInstruction').focus();
return false; return false;
} else if (ExceedBudget($('#txtBasicValue').val(), $('#AvlBudAmt').val()) == false) {
$('#Rate').focus();
return false;
} else { } else {
return true; var openOrder = <?php echo $IsOpenOrder; ?>;
if(!openOrder){
if ($('#Quantity').val() == '') {
alert('Please Enter the Quantity value');
$('#Quantity').focus();
return false;
} else if ($('#Quantity').val() == 0) {
alert('Please Enter the Valid Quantity Value');
$('#Quantity').focus();
return false;
} else if ($('#Rate').val() == '') {
alert('Please Enter the Rate of the Item');
$('#Rate').focus();
return false;
} else if ($('#Rate').val() == 0) {
alert('Please Enter the Valid Rate of the Item');
$('#Rate').focus();
return false;
} else if (ExceedQuantityCheck() == false) {
return false;
} else if (ExceedBudget($('#txtBasicValue').val(), $('#AvlBudAmt').val()) == false) {
$('#Rate').focus();
return false;
} else{
return true;
}
}else{
return true;
}
} }
} }
function validateEditServiceTax() { function validateEditServiceTax() {
var openOrder = $('#IsOpenOrder').prop('checked');
if ($('#EditCostCenter').val() == "0") { if ($('#EditCostCenter').val() == "0") {
alert('Please select the Cost center'); alert('Please select the Cost center');
$('#EditCostCenter').focus(); $('#EditCostCenter').focus();
@ -3144,33 +3161,35 @@ if (!empty($getlogpodtl)) {
alert('Please select the Material Code'); alert('Please select the Material Code');
$('#EditMaterialCode').focus(); $('#EditMaterialCode').focus();
return false; return false;
} else if ($('#EditQuantity').val() == '') {
alert('Please Enter the Quantity value');
$('#EditQuantity').focus();
return false;
} else if ($('#EditQuantity').val() == 0) {
alert('Please Enter the Valid Quantity value');
$('#EditQuantity').focus();
return false;
} else if ($('#EditRate').val() == 0) {
alert('Please Enter the Valid Rate of the Item');
$('#EditRate').focus();
return false;
} else if ($('#EditRate').val() == '') {
alert('Please Enter the Rate of the Item');
$('#EditRate').focus();
return false;
} else if (EditExceedQuantityCheck() == false) {
return false;
} else if ($('#EdittxtSpcialInstruction').val() == '') {
alert('Please Enter the Service Description');
$('#EdittxtSpcialInstruction').focus();
return false;
} else if (ExceedBudget($('#txtEditBasicValue').val(), $('#EditAvlBudAmt').val()) == false) {
$('#EditRate').focus();
return false;
} else { } else {
return true; if(!openOrder){
if ($('#EditQuantity').val() == '') {
alert('Please Enter the Quantity value');
$('#EditQuantity').focus();
return false;
} else if ($('#EditQuantity').val() == 0) {
alert('Please Enter the Valid Quantity value');
$('#EditQuantity').focus();
return false;
} else if ($('#EditRate').val() == 0) {
alert('Please Enter the Valid Rate of the Item');
$('#EditRate').focus();
return false;
} else if ($('#EditRate').val() == '') {
alert('Please Enter the Rate of the Item');
$('#EditRate').focus();
return false;
} else if (EditExceedQuantityCheck() == false) {
return false;
} else if ($('#EdittxtSpcialInstruction').val() == '') {
alert('Please Enter the Service Description');
$('#EdittxtSpcialInstruction').focus();
return false;
} else if (ExceedBudget($('#txtEditBasicValue').val(), $('#EditAvlBudAmt').val()) == false) {
$('#EditRate').focus();
return false;
} else{ return true; }
}else{return true; }
} }
} }
@ -3884,17 +3903,25 @@ if (!empty($getlogpodtl)) {
} }
} }
$('#IsOpenOrder').change(function() { $('#IsOpenOrder').change(function () {
if (this.checked) {
$('#ServiceQuantity').val(0);
$('#ServiceQuantity').removeAttr('required');
$('#ServiceQuantity').attr('readonly', true);
} else {
$('#ServiceQuantity').val('');
$('#ServiceQuantity').removeAttr('readonly');
$('#ServiceQuantity').attr('required', true);
// alert("IsOpenOrder");
if (this.checked) {
$('#Quantity').val(0);
$('#Quantity').removeAttr('required');
$('#Quantity').attr('readonly', true);
$('#EditQuantity').val(0);
$('#EditQuantity').removeAttr('required');
$('#EditQuantity').attr('readonly', true);
} else {
$('#Quantity').val('');
$('#Quantity').removeAttr('readonly');
$('#Quantity').attr('required', true);
$('#EditQuantity').val('');
$('#EditQuantity').removeAttr('readonly');
$('#EditQuantity').attr('required', true);
} }
}); });
function Reset() { location.reload(); } function Reset() { location.reload(); }
</script> </script>

View File

@ -8636,22 +8636,46 @@ if (!empty($INRSYMBOL)) {
$('#Quantity').val(0); $('#Quantity').val(0);
$('#Quantity').removeAttr('required'); $('#Quantity').removeAttr('required');
$('#Quantity').attr('readonly', true); $('#Quantity').attr('readonly', true);
$('#txtTotalOrderValue').val(0);
$('#txtBasicValue').val(0);
$('#EditRevenueQuantity').val(0);
$('#EditRevenueQuantity').removeAttr('required');
$('#EditRevenueQuantity').attr('readonly', true);
} }
if (input == 'SERVICE') { if (input == 'SERVICE') {
$('#ServiceQuantity').val(0); $('#ServiceQuantity').val(0);
$('#ServiceQuantity').removeAttr('required'); $('#ServiceQuantity').removeAttr('required');
$('#ServiceQuantity').attr('readonly', true); $('#ServiceQuantity').attr('readonly', true);
$('#ServiceBasAmt').val(0);
$('#TotalOrderValue').val(0);
$('#EditQuantity').val(0);
$('#EditQuantity').removeAttr('required');
$('#EditQuantity').attr('readonly', true);
} }
} else { } else {
if (input == 'REVENUE') { if (input == 'REVENUE') {
$('#Quantity').val(''); $('#Quantity').val('');
$('#Quantity').removeAttr('readonly'); $('#Quantity').removeAttr('readonly');
$('#Quantity').attr('required', true); $('#Quantity').attr('required', true);
$('#txtTotalOrderValue').val('');
$('#txtBasicValue').val('');
$('#EditRevenueQuantity').val(0);
$('#EditRevenueQuantity').removeAttr('readonly');
$('#EditRevenueQuantity').attr('required', true);
} }
if (input == 'SERVICE') { if (input == 'SERVICE') {
$('#ServiceQuantity').val(''); $('#ServiceQuantity').val('');
$('#ServiceQuantity').removeAttr('readonly'); $('#ServiceQuantity').removeAttr('readonly');
$('#ServiceQuantity').attr('required', true); $('#ServiceQuantity').attr('required', true);
$('#ServiceBasAmt').val('');
$('#TotalOrderValue').val('');
$('#EditQuantity').val(0);
$('#EditQuantity').removeAttr('readonly');
$('#EditQuantity').attr('required', true);
} }
} }
}); });

View File

@ -1,7 +1,7 @@
<?php <?php
$datefordropdown = format_date($datefordropdown, 0, 'M-Y'); $datefordropdown = format_date($datefordropdown, 0, 'M-Y');
//echo $datefordropdown; //echo $datefordropdown;
$attendance = array_merge($attendance, $emppay); $attendance = array_merge($attendance, $emppay); // initial step there is no attendance entry so emppay data is merged
date_default_timezone_set('Asia/Kolkata'); date_default_timezone_set('Asia/Kolkata');
$currentday = date('d'); $currentday = date('d');
// print_r($employeeleavedate); // print_r($employeeleavedate);
@ -261,8 +261,6 @@ $currentday = date('d');
<?php <?php
$testarray = array(); $testarray = array();
$finalarray = array(); $finalarray = array();
if (!empty($attendance)) { if (!empty($attendance)) {

View File

@ -175,6 +175,12 @@ if (!empty($POMaster)) {
$insurenceno = $Req->InsuranceNumber; $insurenceno = $Req->InsuranceNumber;
$BudgetType = $Req->BudgetType; $BudgetType = $Req->BudgetType;
$PrePOFile = $Req->POFile; $PrePOFile = $Req->POFile;
$IsOpenOrder = isset($Req->IsOpenOrder) ? $Req->IsOpenOrder : null;
if ($IsOpenOrder !== null && (int)$IsOpenOrder !== 0) {
$isChecked = true;
} else {
$isChecked = false;
}
} }
} }
@ -1293,6 +1299,15 @@ if (!empty($INRSYMBOL)) {
</div> </div>
</div> </div>
<br> <br>
<div class="form-row">
<?php if($isChecked){ // ($PONOStatus == REQITEM_Emergency_PO_CREATED) { ?>
<div class="form-group col-md-12 text-right">
<input type="checkbox" id="IsOpenOrder" name="IsOpenOrder" value="1" <?php echo $isChecked ? 'checked' : ''; ?>> IS THIS OPEN ORDER FORMAT
</div>
<?php } ?>
</div>
<div class="form-row"> <div class="form-row">
<div class="table-responsive" style="padding-bottom: 30px;"> <div class="table-responsive" style="padding-bottom: 30px;">
<table id="revenueTax" class="table table-bordered table-hover" style="font-size:12px;"> <table id="revenueTax" class="table table-bordered table-hover" style="font-size:12px;">
@ -2850,6 +2865,11 @@ if (!empty($INRSYMBOL)) {
<script> <script>
$(document).ready(function () { $(document).ready(function () {
var openOrder = <?php echo $IsOpenOrder; ?>;
if(openOrder){
$('#EditQuantity').removeAttr('required');
$('#EditQuantity').attr('readonly', true);
}
// When the second modal is about to be shown // When the second modal is about to be shown
$('#freightmodel').on('show.bs.modal', function () { $('#freightmodel').on('show.bs.modal', function () {
// Set a higher z-index for the second modal to appear on top // Set a higher z-index for the second modal to appear on top
@ -2865,5 +2885,18 @@ if (!empty($INRSYMBOL)) {
$('#freightmodel').css('z-index', ''); // Reset to default $('#freightmodel').css('z-index', ''); // Reset to default
}); });
}); });
$('#IsOpenOrder').change(function () {
// alert("IsOpenOrder");
if (this.checked) {
$('#EditQuantity').val(0);
$('#EditQuantity').removeAttr('required');
$('#EditQuantity').attr('readonly', true);
} else {
$('#EditQuantity').val('');
$('#EditQuantity').removeAttr('readonly');
$('#EditQuantity').attr('required', true);
}
});
function Reset() { location.reload(); } function Reset() { location.reload(); }
</script> </script>

View File

@ -233,6 +233,7 @@ if (!empty($POMaster)) {
$IsOpenOrder = isset($Req->IsOpenOrder) ? $Req->IsOpenOrder : null; $IsOpenOrder = isset($Req->IsOpenOrder) ? $Req->IsOpenOrder : null;
if ($IsOpenOrder !== null && (int) $IsOpenOrder !== 0) { if ($IsOpenOrder !== null && (int) $IsOpenOrder !== 0) {
$isChecked = true; $isChecked = true;
} else { } else {
@ -378,7 +379,14 @@ if (!empty($getlogpodtl)) {
var InsuranceNumber = '<?php echo $insurenceno; ?>'; var InsuranceNumber = '<?php echo $insurenceno; ?>';
var statuscheck = '<?php echo $PONOStatus; ?>'; var statuscheck = '<?php echo $PONOStatus; ?>';
$(document).ready(function () { $(document).ready(function () {
//alert('capital-'); var openOrder = <?php echo $IsOpenOrder; ?>;
if(openOrder){
$('#Quantity').val(0);
$('#Quantity').removeAttr('required');
$('#Quantity').attr('readonly', true);
$('#EditQuantity').removeAttr('required');
$('#EditQuantity').attr('readonly', true);
}
if (statuscheck == "<?php echo SPECIAL_PO; ?>") { if (statuscheck == "<?php echo SPECIAL_PO; ?>") {
$('#splpodiv').show(); $('#splpodiv').show();
// var js_array =<?php echo json_encode($billfile); ?>; // var js_array =<?php echo json_encode($billfile); ?>;
@ -2346,13 +2354,13 @@ if (!empty($getlogpodtl)) {
<div class="form-row"> <div class="form-row">
<div class="form-group col-md-12" align="right"> <div class="form-group col-md-12" align="right">
<?php if ($PONOStatus == PO_DRAFT || $PONOStatus == PO_CREATED || $PONOStatus == PO_APPROVED || $PONOStatus == REQITEM_Emergency_PO_CREATED) { ?> <?php if ($PONOStatus == PO_DRAFT || $PONOStatus == PO_CREATED || $PONOStatus == PO_APPROVED || $PONOStatus == REQITEM_Emergency_PO_CREATED) { ?>
<?php if ($PONOStatus == REQITEM_Emergency_PO_CREATED) { ?> <?php if($isChecked){ // if ($PONOStatus == REQITEM_Emergency_PO_CREATED) { ?>
<input type="checkbox" id="IsOpenOrder" name="IsOpenOrder" value="1" <?php echo $isChecked ? 'checked' : ''; ?>> IS THIS OPEN ORDER FORMAT <input type="checkbox" id="IsOpenOrder" name="IsOpenOrder" value="1" <?php echo $isChecked ? 'checked' : ''; ?>> IS THIS OPEN ORDER FORMAT
<?php } ?> <?php } ?>
<!-- <a data-toggle="modal" onclick="showmodel();" class=" btn btn-success"> Select Line Item </a> --> <?php if(!$isChecked){ ?>
<a data-toggle="modal"><button type="submit" onclick="myFunction();" <a data-toggle="modal"><button type="submit" onclick="myFunction();"
class="btn btn-success" id="abcd">Select Line Item</button> </a> class="btn btn-success" id="abcd">Select Line Item</button> </a>
<?php } ?>
<?php } ?> <?php } ?>
</div> </div>
</div> </div>
@ -5381,8 +5389,8 @@ if (!empty($getlogpodtl)) {
}); });
function Save(status) { function Save(status) {
// console.log("status"); console.log("status");
// console.log(status); console.log(status);
if (status == '0') { if (status == '0') {
stat = '<?php echo PO_DRAFT; ?>'; stat = '<?php echo PO_DRAFT; ?>';
@ -5498,7 +5506,8 @@ if (!empty($getlogpodtl)) {
$('#EditUOM').val($('#uom' + userid).val()); $('#EditUOM').val($('#uom' + userid).val());
$('#EditQuantity').val($('#quantity' + userid).val()); $('#EditQuantity').val($('#quantity' + userid).val());
tinyMCE.get('Edit_Service_Description').setContent($('#service_description' + userid).val()); tinyMCE.get('Edit_Service_Description').setContent($('#service_description' + userid).val());
$('#EditRate').val($('#itemRate' + userid).val()); var editrate = parseFloat($('#itemRate' + userid).val()).toFixed(2);
$('#EditRate').val(editrate);
var per = $('#per' + userid).val() var per = $('#per' + userid).val()
if (per == '') { if (per == '') {
$('#EditPer').val($('#uom' + userid).val()); $('#EditPer').val($('#uom' + userid).val());
@ -5950,10 +5959,16 @@ if (!empty($getlogpodtl)) {
$('#Quantity').val(0); $('#Quantity').val(0);
$('#Quantity').removeAttr('required'); $('#Quantity').removeAttr('required');
$('#Quantity').attr('readonly', true); $('#Quantity').attr('readonly', true);
$('#EditQuantity').val(0.00);
$('#EditQuantity').removeAttr('required');
$('#EditQuantity').attr('readonly', true);
} else { } else {
$('#Quantity').val(''); $('#Quantity').val('');
$('#Quantity').removeAttr('readonly'); $('#Quantity').removeAttr('readonly');
$('#Quantity').attr('required', true); $('#Quantity').attr('required', true);
$('#EditQuantity').val('');
$('#EditQuantity').removeAttr('readonly');
$('#EditQuantity').attr('required', true);
} }
}); });
</script> </script>

View File

@ -154,6 +154,14 @@ if (!empty($POMaster)) {
$DescriptionOfPo = $Req->Description_Of_Service; $DescriptionOfPo = $Req->Description_Of_Service;
$BudgetType = $Req->BudgetType; $BudgetType = $Req->BudgetType;
$PrePOFile = $Req->POFile; $PrePOFile = $Req->POFile;
$IsOpenOrder = isset($Req->IsOpenOrder) ? $Req->IsOpenOrder : null;
if ($IsOpenOrder !== null && (int)$IsOpenOrder !== 0) {
$isChecked = true;
} else {
$isChecked = false;
}
} }
} }
@ -1091,7 +1099,11 @@ foreach ($PaymentTerms as $TER) {
</div> </div>
<div class="form-row"> <div class="form-row">
<?php if($isChecked){ // ($PONOStatus == REQITEM_Emergency_PO_CREATED) { ?>
<div class="form-group col-md-12 text-right">
<input type="checkbox" id="IsOpenOrder" name="IsOpenOrder" value="1" <?php echo $isChecked ? 'checked' : ''; ?>> IS THIS OPEN ORDER FORMAT
</div>
<?php } ?>
</div> </div>
@ -1166,6 +1178,11 @@ foreach ($PaymentTerms as $TER) {
<td style="text-align:right !important"><?php echo $record->Quantity ?></td> <td style="text-align:right !important"><?php echo $record->Quantity ?></td>
<td style="text-align:right !important"><?php echo $record->ReceivedQuantity ?></td> <td style="text-align:right !important"><?php echo $record->ReceivedQuantity ?></td>
<td style="text-align:right !important"><?php echo number_format($record->Quantity - $record->ReceivedQuantity, 2, '.', ''); ?></td> <td style="text-align:right !important"><?php echo number_format($record->Quantity - $record->ReceivedQuantity, 2, '.', ''); ?></td>
<td>
<a href="#" data-toggle="modal" data-target="#EDITSERVICE" data-id="<?php echo $index; ?>" data-userid="<?php echo $index; ?>" class="tooltip-trigger" title="Click here to view/Edit the <?php echo $record->ReqNo; ?> Requisition details">
<i class="ri-pencil-fill"style="text-align: center;"></i>
</a>
</td>
<input type="hidden" name="<?php echo 'Reqnumber' . $index ?>" id="<?php echo 'Reqnumber' . $index ?>" value="<?php echo $record->ReqNo; ?>" /> <input type="hidden" name="<?php echo 'Reqnumber' . $index ?>" id="<?php echo 'Reqnumber' . $index ?>" value="<?php echo $record->ReqNo; ?>" />
@ -1243,10 +1260,10 @@ foreach ($PaymentTerms as $TER) {
//if($PONOStatus == PO_DRAFT) //if($PONOStatus == PO_DRAFT)
//{ //{
?> ?>
<td> <a data-target='#EDITSERVICE' data-id="<?php echo $index; ?>" data-userid="<?php echo $index; ?>" <!-- <td> <a data-target='#EDITSERVICE' data-id="<?php echo $index; ?>" data-userid="<?php echo $index; ?>"
data-toggle="modal" href="#EDITSERVICE"><i class="ri-pencil-fill" data-toggle="tooltip" data-toggle="modal" href="#EDITSERVICE"><i class="ri-pencil-fill" data-toggle="tooltip"
title="Click here to view/Edit the <?php echo $record->ReqNo; ?> title="Click here to view/Edit the <?php echo $record->ReqNo; ?>
Requisition details"></i>&nbsp;&nbsp;&nbsp; Requisition details"></i>&nbsp;&nbsp;&nbsp; -->
<!-- </a> <a href='#' onclick = "DeleteRow(<?php echo $index; ?>)" class="link" data-id="<?php echo $index; ?>" data-userid="<?php echo $index; ?>" id="Del" ><span class="ri-delete-bin-7-fill"></span></a>--> <!-- </a> <a href='#' onclick = "DeleteRow(<?php echo $index; ?>)" class="link" data-id="<?php echo $index; ?>" data-userid="<?php echo $index; ?>" id="Del" ><span class="ri-delete-bin-7-fill"></span></a>-->
<?php <?php
//} else { //} else {
@ -1863,6 +1880,12 @@ foreach ($PaymentTerms as $TER) {
$('#EditotherDescription').hide(); $('#EditotherDescription').hide();
$(document).ready(function() { $(document).ready(function() {
var openOrder = <?php echo $IsOpenOrder; ?>;
if(openOrder){
$('#EditQuantity').removeAttr('required');
$('#EditQuantity').attr('readonly', true);
}
$("#EDITSERVICE").on("shown.bs.modal", function(e) { $("#EDITSERVICE").on("shown.bs.modal", function(e) {
var AvlBudAmt = '<?php echo $AvlAmount ?>'; var AvlBudAmt = '<?php echo $AvlAmount ?>';
@ -2275,7 +2298,6 @@ foreach ($PaymentTerms as $TER) {
} }
function validateServiceTax() { function validateServiceTax() {
if ($('#ReqNo').val() == "0") { if ($('#ReqNo').val() == "0") {
alert('Please select the Requisition Number'); alert('Please select the Requisition Number');
$('#ReqNo').focus(); $('#ReqNo').focus();
@ -2308,7 +2330,10 @@ foreach ($PaymentTerms as $TER) {
} }
function validateEditServiceTax() { function validateEditServiceTax() {
var openOrder = $('#IsOpenOrder').prop('checked');
var quantity = parseFloat($('#EditQuantity').val()) || 0;
var rate = parseFloat($('#EditRate').val()) || 0;
console.log(openOrder);
if ($('#EditCostCenter').val() == "0") { if ($('#EditCostCenter').val() == "0") {
alert('Please select the Cost center'); alert('Please select the Cost center');
$('#EditCostCenter').focus(); $('#EditCostCenter').focus();
@ -2317,11 +2342,11 @@ foreach ($PaymentTerms as $TER) {
alert('Please select the Material Code'); alert('Please select the Material Code');
$('#EditMaterialCode').focus(); $('#EditMaterialCode').focus();
return false; return false;
} else if ($('#EditQuantity').val() == '' || $('#EditQuantity').val() == 0.00) { } else if ($('#EditQuantity').val() == '' || (!openOrder && quantity === 0 )){
alert('Please Enter the Quantity value'); alert('Please Enter the Quantity value');
$('#EditQuantity').focus(); $('#EditQuantity').focus();
return false; return false;
} else if ($('#EditRate').val() == '' || $('#EditRate').val() == 0.00) { } else if ($('#EditRate').val() == '' || (!openOrder && rate === 0 )){
alert('Please Enter the Rate of the Item'); alert('Please Enter the Rate of the Item');
$('#EditRate').focus(); $('#EditRate').focus();
return false; return false;
@ -2500,6 +2525,20 @@ foreach ($PaymentTerms as $TER) {
return TAXval; // $('#AfterServiceTax').val(TAXval); return TAXval; // $('#AfterServiceTax').val(TAXval);
} }
$('#IsOpenOrder').change(function () {
// alert("IsOpenOrder");
if (this.checked) {
$('#EditQuantity').val(0);
$('#EditQuantity').removeAttr('required');
$('#EditQuantity').attr('readonly', true);
} else {
$('#EditQuantity').val('');
$('#EditQuantity').removeAttr('readonly');
$('#EditQuantity').attr('required', true);
}
});
function Reset() { location.reload(); } function Reset() { location.reload(); }
$(document).ready(function () { $(document).ready(function () {
$("#PaymentTerms").change(function() { $("#PaymentTerms").change(function() {

View File

@ -107,23 +107,19 @@
<td><?= esc($d['no_of_days']) ?></td> <td><?= esc($d['no_of_days']) ?></td>
<td><?= esc($d['status']) ?></td> <td><?= esc($d['status']) ?></td>
<td><?php if($d['leave_application_id']){ ?> <td><?php if($d['leave_application_id']){ ?>
<a data-toggle="modal" href="#applicationModal" data-arr='<?php echo json_encode($d); ?>' data-id='<?= esc($d['leave_application_id']) ?>' data-toggle="tooltip" title="<?php echo $d['emp_id']; ?> - Click here to view Employee Leave Details"> <a data-toggle="modal" href="#applicationModal" data-arr='<?php echo json_encode($d); ?>' data-id='<?= esc($d['leave_application_id']) ?>' title="<?php echo $d['emp_id']; ?> - Click here to View/Edit Employee Leave Details">
<i class="fas fa-edit"></i>&nbsp;&nbsp;&nbsp; <i class="fas fa-edit"></i>&nbsp;&nbsp;&nbsp;
</a> </a>
<!-- <a onclick="confirmDelete(event)" style="cursor:pointer;" href="<?php echo base_url() . 'deleteLeaveApplicationForm?leave_application_id=' . esc($d['leave_application_id']); ?>" data-toggle="tooltip" title="<?php echo $d['emp_id']; ?> - Click here to delete Employee Leave Details"> -->
<a onclick="confirmDelete(event)" style="cursor:pointer;" href="<?php echo base_url() . 'deleteLeaveApplicationForm?leave_application_id=' . esc($d['leave_application_id']); ?>">
<i class="fa fa-trash"></i>&nbsp;&nbsp;&nbsp;
</a>
<?php } ?> <?php } ?>
<?php if($d['status'] == "APPROVED"){} ?> <?php if($d['status'] == "Approved"){ ?>
<!-- <a style="cursor:pointer;" href="<?php echo base_url() . 'leaveApplicationPDF/' . esc($d['leave_application_id']); ?>" data-toggle="tooltip" title="<?php echo $d['emp_id']; ?> - Click here to download Employee Leave Details"> --> <a style="cursor:pointer;" href="<?php echo base_url() . 'leaveApplicationPDF/' . esc($d['leave_application_id']); ?>" title="<?php echo $d['emp_id']; ?> - Click here to Download Employee Leave Details">
<a style="cursor:pointer;" href="<?php echo base_url() . 'leaveApplicationPDF/' . esc($d['leave_application_id']); ?>"> <i class="fa fa-download"></i>&nbsp;&nbsp;&nbsp;
</a>
<i class="fa fa-download"></i>&nbsp;&nbsp;&nbsp; <?php }else{ ?>
</a> <a style="cursor:pointer;" onclick="confirmDelete(event)" href="<?php echo base_url() . 'deleteLeaveApplicationForm?leave_application_id=' . esc($d['leave_application_id']); ?>" title="<?php echo $d['emp_id']; ?> - Click here to Delete Employee Leave Details">
<i class="fa fa-trash"></i>&nbsp;&nbsp;&nbsp;
</a>
<?php } ?>
</td> </td>
</tr> </tr>
<?php } ?> <?php } ?>
@ -259,6 +255,7 @@
<script> <script>
$(document).ready(function () { $(document).ready(function () {
$('.tooltip-trigger').tooltip();
$(".searchabledropdown").select2(); $(".searchabledropdown").select2();
let today = new Date().toISOString().split("T")[0]; // Format: YYYY-MM-DD let today = new Date().toISOString().split("T")[0]; // Format: YYYY-MM-DD
$("#start_date").attr("min", today); $("#start_date").attr("min", today);

View File

@ -316,7 +316,7 @@
<label for="status" class="col-form-label">Status</label> <label for="status" class="col-form-label">Status</label>
</div> </div>
<div class="col"> <div class="col">
<select name="status" id="non_igr_status" class="form-control"> <select name="status" id="non_igr_status" class="form-control" required>
<option value="Draft">Draft</option> <option value="Draft">Draft</option>
<option value="Completed">Completed</option> <option value="Completed">Completed</option>
<option value="Canceled">Canceled</option> <option value="Canceled">Canceled</option>

View File

@ -13,7 +13,7 @@
color: #3A3A3A; color: #3A3A3A;
background: #FFFFFF; background: #FFFFFF;
font-family: sans-serif; font-family: sans-serif;
font-size: 0.8em; font-size: 12px;
} }
.main-table { .main-table {
@ -34,21 +34,57 @@
.form-title { .form-title {
font-weight: bold; font-weight: bold;
padding: 10px 0; padding: 10px 1px;
} }
#leaveDetails { #leaveDetails {
width: 100%; width: 100%;
border-collapse: collapse; border-collapse: collapse;
} }
#leaveDetails td, #leaveDetails th { #leaveDetails th, #leaveDetails td {
border: 1px solid #000 !important; border: 0 !important; /* Reset all borders first */
} }
/* Header Row */
#leaveDetails th:nth-child(1) { /* From Date */
border-right: 1px solid #000;
border-bottom: 1px solid #000;
}
#leaveDetails th:nth-child(2) { /* To Date */
border-left: 1px solid #000;
border-right: 1px solid #000;
border-bottom: 1px solid #000;
}
#leaveDetails th:nth-child(3) { /* No's Days */
border-left: 1px solid #000;
border-bottom: 1px solid #000;
}
/* Data Row */
#leaveDetails td:nth-child(1) { /* From Date value */
border-right: 1px solid #000;
border-top: 1px solid #000;
}
#leaveDetails td:nth-child(2) { /* To Date value */
border-left: 1px solid #000;
border-right: 1px solid #000;
border-top: 1px solid #000;
}
#leaveDetails td:nth-child(3) { /* No's Days value */
border-left: 1px solid #000;
border-top: 1px solid #000;
}
#leaveDetails td, #leaveDetails th {
padding: 5px; /* or 0 if you want no padding */
margin: 0;
}
.signature-section {
padding-top: 40px;
}
</style> </style>
</head> </head>
@ -75,7 +111,7 @@
<table class="main-table"> <table class="main-table">
<!-- Company Name & Address --> <!-- Company Name & Address -->
<tr> <tr>
<td colspan="12" class="text-center"> <td colspan="12" class="text-center" style="width:12.5em">
<div class="company-header"><?php echo $CompanyName ? _htmlsc($CompanyName) : ""; ?></div> <div class="company-header"><?php echo $CompanyName ? _htmlsc($CompanyName) : ""; ?></div>
<?php if ($CompanyAddress) { <?php if ($CompanyAddress) {
echo '<div>' . _htmlsc($CompanyAddress) . '</div>'; echo '<div>' . _htmlsc($CompanyAddress) . '</div>';
@ -90,36 +126,36 @@
<!-- Employee Details --> <!-- Employee Details -->
<tr> <tr>
<td colspan="5" class="text-right"><?php echo trans('Employee Name'); ?></td> <td colspan="3" class="text-right"><?php echo trans('Employee Name'); ?></td>
<td colspan="7" class="text-left"><?php echo _htmlsc($emp_name); ?></td> <td colspan="9" class="text-left"><?php echo _htmlsc($emp_name); ?></td>
</tr> </tr>
<tr> <tr>
<td colspan="5" class="text-right"><?php echo trans('Employee ID'); ?></td> <td colspan="3" class="text-right"><?php echo trans('Employee ID'); ?></td>
<td colspan="7" class="text-left"><?php echo _htmlsc($emp_id); ?></td> <td colspan="9" class="text-left"><?php echo _htmlsc($emp_id); ?></td>
</tr> </tr>
<tr> <tr>
<td colspan="5" class="text-right"><?php echo trans('Department'); ?></td> <td colspan="3" class="text-right"><?php echo trans('Department'); ?></td>
<td colspan="7" class="text-left"><?php echo _htmlsc($department); ?></td> <td colspan="9" class="text-left"><?php echo _htmlsc($department); ?></td>
</tr> </tr>
<tr> <tr>
<td colspan="5" class="text-right"><?php echo trans('Designation'); ?></td> <td colspan="3" class="text-right"><?php echo trans('Designation'); ?></td>
<td colspan="7" class="text-left"><?php echo _htmlsc($designation); ?></td> <td colspan="9" class="text-left"><?php echo _htmlsc($designation); ?></td>
</tr> </tr>
<!-- Leave Details Table --> <!-- Leave Details Table -->
<tr> <tr>
<td colspan="5" class="text-right"><?php echo trans('No. of days'); ?></td> <td colspan="3" class="text-right"><?php echo trans('Date Range'); ?></td>
<td colspan="7"> <td colspan="9" style="padding: 0 !important;margin: 0 !important">
<table id="leaveDetails"> <table id="leaveDetails">
<tr> <tr>
<th>From Date</th> <th>From Date</th>
<th>To Date</th> <th>To Date</th>
<th>No's Days</th> <th>No Of Days</th>
</tr> </tr>
<tr> <tr>
<td><?php echo _htmlsc($start_date); ?></td> <td class="text-center"><?php echo _htmlsc($start_date); ?></td>
<td><?php echo _htmlsc($end_date); ?></td> <td class="text-center"><?php echo _htmlsc($end_date); ?></td>
<td><?php echo _htmlsc($no_of_days); ?></td> <td class="text-center"><?php echo _htmlsc($no_of_days); ?></td>
</tr> </tr>
</table> </table>
</td> </td>
@ -127,20 +163,20 @@
<!-- Status and Reason --> <!-- Status and Reason -->
<tr> <tr>
<td colspan="5" class="text-right"><?php echo trans('Status'); ?></td> <td colspan="3" class="text-right"><?php echo trans('Status'); ?></td>
<td colspan="7" class="text-left"><?php echo _htmlsc($status); ?></td> <td colspan="9" class="text-left"><?php echo _htmlsc($status); ?></td>
</tr> </tr>
<tr> <tr>
<td colspan="5" class="text-right"><?php echo trans('Reason'); ?></td> <td colspan="3" class="text-right"><?php echo trans('Reason'); ?></td>
<td colspan="7" class="text-left"><?php echo _htmlsc($reason); ?></td> <td colspan="9" class="text-left"><?php echo _htmlsc($reason); ?></td>
</tr> </tr>
<!-- Signature Section --> <!-- Signature Section -->
<tr> <tr>
<td colspan="6" class="text-center signature-section"> <td colspan="6" class="text-center" style="height: 50px; padding-top: 50px;">
<h6>Employee Signatory</h6> <h6>Employee Signatory</h6>
</td> </td>
<td colspan="6" class="text-center signature-section"> <td colspan="6" class="text-center" style="height: 50px; padding-top: 50px;">
<h6>Authorized Signatory</h6> <h6>Authorized Signatory</h6>
</td> </td>
</tr> </tr>

View File

@ -47,7 +47,6 @@
} }
</style> </style>
<?php <?php
$sample = $fresh; $sample = $fresh;
$ex = explode('-', $dropdownvalue); $ex = explode('-', $dropdownvalue);
@ -226,7 +225,7 @@
</div> </div>
</div> </div>
<?php // echo "<pre>"; print_r($fresh); echo "</pre>"; ?>
<div class="table-responsive" id="table-responsive" style="overflow-x:scroll;"> <div class="table-responsive" id="table-responsive" style="overflow-x:scroll;">
<table id="monthlylistings" class="table table-bordered table-hover fht-table" <table id="monthlylistings" class="table table-bordered table-hover fht-table"
style="background-color:#fff;font-size:12px;white-space: nowrap;"> style="background-color:#fff;font-size:12px;white-space: nowrap;">
@ -536,7 +535,7 @@
<td style="text-align:right;" style="background-color:blue;"> <td style="text-align:right;" style="background-color:blue;">
<?php echo $inx; ?></td> <?php echo $inx; ?></td>
<td style="max-width:80px"><?php echo $record->EmpID; ?></td> <td style="max-width:80px"><?php echo $record->EmpID; ?></td>
<td style="background-color: #d8d8ea;" > <td> <!-- style="background-color: #6cb4ff17;" -->
<?php echo $record->FirstName; ?> <?php echo $record->FirstName; ?>
</td> </td>
<td style="max-width: 100px;"> <td style="max-width: 100px;">