Merge branch 'new_theme' of bitbucket.org:venbainformationtechnology/ria into new_theme

This commit is contained in:
vadivelJ96 2025-04-05 17:33:39 +05:30
commit 40ea479b73
22 changed files with 486 additions and 254 deletions

View File

@ -90,5 +90,5 @@ class Autoload extends AutoloadConfig
*
* @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()
{
helper('numberseries');
$NewPO = '';
$MAD = '';
// $changeStatus ,will havestatus code itself provided from front-end , no need of constants
@ -309,8 +310,9 @@ class Amendmentpurchaseorder extends BaseController
if ($PaymentTerms != 'PT08') {
$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);
$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');
$requestfilename = $file->getName();
$PrePOFile = $this->request->getPost('PrePOFile');
@ -580,13 +582,13 @@ class Amendmentpurchaseorder extends BaseController
$recqty = $qty[0]->rec;
// $POno = $qtyvalue->PONO;
if ($ordqty == $recqty) {
if(!$IsOpenOrder):if ($ordqty == $recqty) {
$Newstatus = array('Status' => IGR_CREATED);
$this->purchaseorder_model->POLineItemsupdatestatus($NewPO, $Newstatus);
$this->purchaseorder_model->pomasterupdatestatus($NewPO, $Newstatus);
}
}endif;
$message = 'Purchase Order ' . $PONO . ' Amended Successfully! - New PO Number is: ' . $NewPO ;
@ -603,7 +605,7 @@ class Amendmentpurchaseorder extends BaseController
function UpdateAmendServicePurchaseOrder()
{
// dd($this->request->getPost());
helper('numberseries');
$PONO = $this->request->getPost('txtPONO');
$changeStatus = $this->request->getPost('changeStatus');
@ -672,6 +674,7 @@ class Amendmentpurchaseorder extends BaseController
$qtycheck = $this->purchaseorder_model->getqtycheck($PONO);
$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) {
$qtycheckresult = $qty->IsQualityChkReqired;
}
@ -685,7 +688,7 @@ class Amendmentpurchaseorder extends BaseController
}
$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');
$PrePOFile = $this->request->getPost('PrePOFile');
$requestfilename = $file ? $file->getName() : null;
@ -879,13 +882,13 @@ class Amendmentpurchaseorder extends BaseController
$recqty = $qty[0]->rec;
// $POno = $qtyvalue->PONO;
if ($ordqty == $recqty) {
if(!$IsOpenOrder):if ($ordqty == $recqty) {
$Newstatus = array('Status' => IGR_CREATED);
$this->purchaseorder_model->POLineItemsupdatestatus($NewPO, $Newstatus);
$this->purchaseorder_model->pomasterupdatestatus($NewPO, $Newstatus);
}
}endif;
$message = 'Purchase Order ' . $PONO . ' Amended Successfully! - New PO Number is: ' . $NewPO ;
if($changeStatus == 'ST014'){
@ -900,6 +903,7 @@ class Amendmentpurchaseorder extends BaseController
*/
function EditAmendCapitalPurchaseOrder()
{
helper('numberseries');
$changeStatus = $this->request->getPost('changeStatus');
$PONO = $this->request->getPost('txtPONO');
$MAD = '';
@ -1309,7 +1313,7 @@ class Amendmentpurchaseorder extends BaseController
function EditAmendImportPO()
{
// echo "<pre>"; print_r($this->request->getPost()); echo"</pre>";
helper('numberseries');
$MAD = '';
$PONO = $this->request->getPost('txtPONO');

View File

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

View File

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

View File

@ -405,6 +405,7 @@ class Inwardgateregister extends BaseController
function SaveIGR()
{
#Step 1 IGR Details
helper('numberseries');
$PONO = $this->request->getPost('PONO');
$IsThisOpenOrderPO = $this->request->getPost('hiddenIsOpenOrder');
$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['company_info'] = $this->monthlypay_model->getCompanyInformation();
$html = view('leaveApplicationPDF', $data);
// echo $html;die;
$data['company_info'] = $this->monthlypay_model->getCompanyInformation();
$html = view('leaveApplicationPDF', $data); // echo $html;
$mpdf = new Mpdf();
$mpdf->WriteHTML($html);

View File

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

View File

@ -187,7 +187,7 @@ class Servicepurchaseorder extends BaseController
//This used to Create Service Purchase Order
function addNewServicePurchaseOrder()
{
helper('numberseries');
$POdt = $this->request->getPost('PODate');
$PODate = get_date_time_format($POdt);
$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
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'))
{
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');
$query = $builder->get();
$result = $query->getResult();
// $last_query = $this->db->getLastQuery();
// echo $last_query;die;
return $result;
}
@ -177,6 +179,8 @@ class Monthlypay_model extends Model
$year_val = date('Y', strtotime($current));
$date_val = cal_days_in_month(CAL_GREGORIAN, $month_val, $year_val);
$lastdate = $year_val . '-' . $month_val . '-' . $date_val;
// echo $current;
// echo "last date - ".$lastdate;die;
$builder = $this->db->table('t_attendance')
->select('t_attendance.*,t_employee_details.FirstName,t_employee_details.LastName')
@ -191,6 +195,8 @@ class Monthlypay_model extends Model
$query = $builder->get();
$result = $query->getResult();
// $last_query = $this->db->getLastQuery();
// echo $last_query;die;
return $result;
}

View File

@ -1252,10 +1252,12 @@ if (!empty($getlogpodtl)) {
<div class="form-row">
<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 == 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
<?php } ?>
<?php if(!$isChecked){ ?>
<a data-toggle="modal"><button type="submit" onclick="myFunction();" class="btn btn-success" id="abcd">Select Line Item</button> </a>
<?php } ?>
<?php } ?>
</div>
</div>
@ -1900,7 +1902,7 @@ if (!empty($getlogpodtl)) {
</div>
<div class="form-group col-md-3">
<?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);
?>
</div>
@ -2545,6 +2547,14 @@ if (!empty($getlogpodtl)) {
$('input[type="file"], input[type="radio"], input[type="checkbox"]').attr('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>
@ -3090,7 +3100,7 @@ if (!empty($getlogpodtl)) {
}
function validateServiceTax() {
var openOrder = $('#IsOpenOrder').prop('checked');
if ($('#ReqNo').val() == "0") {
alert('Please select the Requisition Number');
$('#ReqNo').focus();
@ -3103,39 +3113,46 @@ if (!empty($getlogpodtl)) {
alert('Please select the Material Code');
$('#MaterialCode').focus();
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() == '') {
alert('Please Enter the Service Description');
$('#txtSpcialInstruction').focus();
return false;
} else if (ExceedBudget($('#txtBasicValue').val(), $('#AvlBudAmt').val()) == false) {
$('#Rate').focus();
return false;
} 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() {
var openOrder = $('#IsOpenOrder').prop('checked');
if ($('#EditCostCenter').val() == "0") {
alert('Please select the Cost center');
$('#EditCostCenter').focus();
@ -3144,33 +3161,35 @@ if (!empty($getlogpodtl)) {
alert('Please select the Material Code');
$('#EditMaterialCode').focus();
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 {
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() {
if (this.checked) {
$('#ServiceQuantity').val(0);
$('#ServiceQuantity').removeAttr('required');
$('#ServiceQuantity').attr('readonly', true);
} else {
$('#ServiceQuantity').val('');
$('#ServiceQuantity').removeAttr('readonly');
$('#ServiceQuantity').attr('required', true);
$('#IsOpenOrder').change(function () {
// 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(); }
</script>

View File

@ -8636,22 +8636,46 @@ if (!empty($INRSYMBOL)) {
$('#Quantity').val(0);
$('#Quantity').removeAttr('required');
$('#Quantity').attr('readonly', true);
$('#txtTotalOrderValue').val(0);
$('#txtBasicValue').val(0);
$('#EditRevenueQuantity').val(0);
$('#EditRevenueQuantity').removeAttr('required');
$('#EditRevenueQuantity').attr('readonly', true);
}
if (input == 'SERVICE') {
$('#ServiceQuantity').val(0);
$('#ServiceQuantity').removeAttr('required');
$('#ServiceQuantity').attr('readonly', true);
$('#ServiceBasAmt').val(0);
$('#TotalOrderValue').val(0);
$('#EditQuantity').val(0);
$('#EditQuantity').removeAttr('required');
$('#EditQuantity').attr('readonly', true);
}
} else {
if (input == 'REVENUE') {
$('#Quantity').val('');
$('#Quantity').removeAttr('readonly');
$('#Quantity').attr('required', true);
$('#txtTotalOrderValue').val('');
$('#txtBasicValue').val('');
$('#EditRevenueQuantity').val(0);
$('#EditRevenueQuantity').removeAttr('readonly');
$('#EditRevenueQuantity').attr('required', true);
}
if (input == 'SERVICE') {
$('#ServiceQuantity').val('');
$('#ServiceQuantity').removeAttr('readonly');
$('#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
$datefordropdown = format_date($datefordropdown, 0, 'M-Y');
//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');
$currentday = date('d');
// print_r($employeeleavedate);
@ -261,8 +261,6 @@ $currentday = date('d');
<?php
$testarray = array();
$finalarray = array();
if (!empty($attendance)) {

View File

@ -175,6 +175,12 @@ if (!empty($POMaster)) {
$insurenceno = $Req->InsuranceNumber;
$BudgetType = $Req->BudgetType;
$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>
<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="table-responsive" style="padding-bottom: 30px;">
<table id="revenueTax" class="table table-bordered table-hover" style="font-size:12px;">
@ -2850,6 +2865,11 @@ if (!empty($INRSYMBOL)) {
<script>
$(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
$('#freightmodel').on('show.bs.modal', function () {
// 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
});
});
$('#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(); }
</script>

View File

@ -233,6 +233,7 @@ if (!empty($POMaster)) {
$IsOpenOrder = isset($Req->IsOpenOrder) ? $Req->IsOpenOrder : null;
if ($IsOpenOrder !== null && (int) $IsOpenOrder !== 0) {
$isChecked = true;
} else {
@ -378,7 +379,14 @@ if (!empty($getlogpodtl)) {
var InsuranceNumber = '<?php echo $insurenceno; ?>';
var statuscheck = '<?php echo $PONOStatus; ?>';
$(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; ?>") {
$('#splpodiv').show();
// var js_array =<?php echo json_encode($billfile); ?>;
@ -2346,13 +2354,13 @@ if (!empty($getlogpodtl)) {
<div class="form-row">
<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 == 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
<?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();"
class="btn btn-success" id="abcd">Select Line Item</button> </a>
<?php } ?>
<?php } ?>
</div>
</div>
@ -5381,8 +5389,8 @@ if (!empty($getlogpodtl)) {
});
function Save(status) {
// console.log("status");
// console.log(status);
console.log("status");
console.log(status);
if (status == '0') {
stat = '<?php echo PO_DRAFT; ?>';
@ -5498,7 +5506,8 @@ if (!empty($getlogpodtl)) {
$('#EditUOM').val($('#uom' + userid).val());
$('#EditQuantity').val($('#quantity' + 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()
if (per == '') {
$('#EditPer').val($('#uom' + userid).val());
@ -5950,10 +5959,16 @@ if (!empty($getlogpodtl)) {
$('#Quantity').val(0);
$('#Quantity').removeAttr('required');
$('#Quantity').attr('readonly', true);
$('#EditQuantity').val(0.00);
$('#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);
}
});
</script>

View File

@ -154,6 +154,14 @@ if (!empty($POMaster)) {
$DescriptionOfPo = $Req->Description_Of_Service;
$BudgetType = $Req->BudgetType;
$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 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>
@ -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->ReceivedQuantity ?></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; ?>" />
@ -1243,10 +1260,10 @@ foreach ($PaymentTerms as $TER) {
//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"
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>-->
<?php
//} else {
@ -1863,6 +1880,12 @@ foreach ($PaymentTerms as $TER) {
$('#EditotherDescription').hide();
$(document).ready(function() {
var openOrder = <?php echo $IsOpenOrder; ?>;
if(openOrder){
$('#EditQuantity').removeAttr('required');
$('#EditQuantity').attr('readonly', true);
}
$("#EDITSERVICE").on("shown.bs.modal", function(e) {
var AvlBudAmt = '<?php echo $AvlAmount ?>';
@ -2275,7 +2298,6 @@ foreach ($PaymentTerms as $TER) {
}
function validateServiceTax() {
if ($('#ReqNo').val() == "0") {
alert('Please select the Requisition Number');
$('#ReqNo').focus();
@ -2308,7 +2330,10 @@ foreach ($PaymentTerms as $TER) {
}
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") {
alert('Please select the Cost center');
$('#EditCostCenter').focus();
@ -2317,11 +2342,11 @@ foreach ($PaymentTerms as $TER) {
alert('Please select the Material Code');
$('#EditMaterialCode').focus();
return false;
} else if ($('#EditQuantity').val() == '' || $('#EditQuantity').val() == 0.00) {
} else if ($('#EditQuantity').val() == '' || (!openOrder && quantity === 0 )){
alert('Please Enter the Quantity value');
$('#EditQuantity').focus();
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');
$('#EditRate').focus();
return false;
@ -2500,6 +2525,20 @@ foreach ($PaymentTerms as $TER) {
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(); }
$(document).ready(function () {
$("#PaymentTerms").change(function() {

View File

@ -107,23 +107,19 @@
<td><?= esc($d['no_of_days']) ?></td>
<td><?= esc($d['status']) ?></td>
<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;
</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 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']); ?>">
<i class="fa fa-download"></i>&nbsp;&nbsp;&nbsp;
</a>
<?php if($d['status'] == "Approved"){ ?>
<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">
<i class="fa fa-download"></i>&nbsp;&nbsp;&nbsp;
</a>
<?php }else{ ?>
<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>
</tr>
<?php } ?>
@ -259,6 +255,7 @@
<script>
$(document).ready(function () {
$('.tooltip-trigger').tooltip();
$(".searchabledropdown").select2();
let today = new Date().toISOString().split("T")[0]; // Format: YYYY-MM-DD
$("#start_date").attr("min", today);

View File

@ -316,7 +316,7 @@
<label for="status" class="col-form-label">Status</label>
</div>
<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="Completed">Completed</option>
<option value="Canceled">Canceled</option>

View File

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

View File

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