jc file sales module inv-no : GWM
This commit is contained in:
parent
8f43e39420
commit
405799a296
@ -26,7 +26,7 @@ use App\Models\JobcardFileModel;
|
||||
use Mpdf\Mpdf;
|
||||
use DateTime;
|
||||
use CodeIgniter\API\ResponseTrait;
|
||||
|
||||
use App\Helpers\InvNoHelper;
|
||||
|
||||
class Jobcard extends BaseController
|
||||
{
|
||||
@ -67,28 +67,10 @@ class Jobcard extends BaseController
|
||||
return view('jobs_list',$data);
|
||||
}
|
||||
|
||||
public function getCurrentFinancialYear() {
|
||||
// Get the current month and year
|
||||
$currentMonth = date('n');
|
||||
$currentYear = date('Y');
|
||||
|
||||
// Determine the start date of the financial year
|
||||
if ($currentMonth >= 4) {
|
||||
$startYear = $currentYear;
|
||||
} else {
|
||||
$startYear = $currentYear - 1;
|
||||
}
|
||||
|
||||
// Determine the end date of the financial year
|
||||
$endYear = $startYear + 1;
|
||||
|
||||
// Format the financial year string
|
||||
$financialYear = $startYear . '/' . substr($endYear, -2);
|
||||
|
||||
return $financialYear;
|
||||
}
|
||||
|
||||
|
||||
public function preview_jobcard_invoice($job_card_id) {
|
||||
public function preview_jobcard_invoice($job_card_id)
|
||||
{
|
||||
$logged_user = $this->session->get('logged_user');
|
||||
try {
|
||||
|
||||
@ -101,16 +83,7 @@ class Jobcard extends BaseController
|
||||
$productdata = $this->JobcardModel->get_jobcard_products_details($job_card_id);
|
||||
// echo json_encode($productdata);die;
|
||||
|
||||
if($data['job_card'][0]['inv_no'] == '')
|
||||
{
|
||||
/** GENERATE INV NO */
|
||||
$count = $this->JobcardModel->where('status', 'Paid')->countAllResults();
|
||||
$formattedCount = str_pad($count+1, 5, '0', STR_PAD_LEFT);
|
||||
$currentFinancialYear = $this->getCurrentFinancialYear();
|
||||
$invoiceNumber = 'MECH-' . $currentFinancialYear. '/' . $formattedCount;
|
||||
$this->JobcardModel->update($job_card_id,['inv_no' => $invoiceNumber]);
|
||||
$data['job_card'][0]['inv_no'] = $invoiceNumber;
|
||||
}
|
||||
|
||||
|
||||
$servicedata = $this->JobcardModel->get_jobcard_service($job_card_id);
|
||||
$complaintdata = $this->JobcardModel->get_jobcard_complaint($job_card_id);
|
||||
@ -135,6 +108,7 @@ class Jobcard extends BaseController
|
||||
// Create single output array
|
||||
$labour_data[0] = [
|
||||
"name" => "Labour Cost",
|
||||
"product_name" => "Labour Cost",
|
||||
"qty" => "-",
|
||||
"per" => "-",
|
||||
"tax" => number_format($totalTax, 2),
|
||||
@ -165,50 +139,42 @@ class Jobcard extends BaseController
|
||||
$productdata = $this->JobcardModel->get_jobcard_products_details($job_card_id);
|
||||
// echo json_encode($productdata);die;
|
||||
|
||||
if($data['job_card'][0]['inv_no'] == '')
|
||||
{
|
||||
/** GENERATE INV NO */
|
||||
$count = $this->JobcardModel->where('status', 'Paid')->countAllResults();
|
||||
$formattedCount = str_pad($count+1, 5, '0', STR_PAD_LEFT);
|
||||
$currentFinancialYear = $this->getCurrentFinancialYear();
|
||||
$invoiceNumber = 'MECH-' . $currentFinancialYear. '/' . $formattedCount;
|
||||
$this->JobcardModel->update($job_card_id,['inv_no' => $invoiceNumber]);
|
||||
$data['job_card'][0]['inv_no'] = $invoiceNumber;
|
||||
}
|
||||
|
||||
|
||||
$servicedata = $this->JobcardModel->get_jobcard_service($job_card_id);
|
||||
$complaintdata = $this->JobcardModel->get_jobcard_complaint($job_card_id);
|
||||
$osdata = $this->JobcardModel->get_jobcard_os($job_card_id);
|
||||
$customcomplaintdata = $this->JobcardModel->get_jobcard_custom_complaint($job_card_id);
|
||||
$labourcost = array_merge($servicedata, $complaintdata,$customcomplaintdata,$osdata);
|
||||
/** CALCULATE LABOURCOST WITH TAX */
|
||||
$totalAmount = 0;
|
||||
$totalTax = 0;
|
||||
|
||||
// Calculate total amount and total tax
|
||||
foreach ($labourcost as $product) {
|
||||
$totalAmount += $product["labour_amount"];
|
||||
$totalTax = $product["tax"];
|
||||
}
|
||||
// Calculate total
|
||||
$total = $totalAmount + $totalTax;
|
||||
|
||||
$discount = ($data['job_card'][0]['is_rework'] == 1) ? 0 : $data['job_card'][0]['discount'] ;
|
||||
$amt_with_tax = $totalAmount + ($totalAmount * $totalTax / 100);
|
||||
$totalAmount = ($amt_with_tax - (float)$discount) / (1 + ($totalTax/100));
|
||||
// Create single output array
|
||||
$labour_data[0] = [
|
||||
"name" => "Labour Cost",
|
||||
"qty" => '-',
|
||||
"per" => '-',
|
||||
"tax" => number_format($totalTax, 2),
|
||||
"amount" => number_format($totalAmount, 2),
|
||||
"custom_tax" => number_format($totalTax, 2),
|
||||
"custom_total" => number_format($total, 2)
|
||||
];
|
||||
$data['job_card_products'] = array_merge($productdata, $labour_data);
|
||||
// echo json_encode($complaintdata);die;
|
||||
|
||||
/** CALCULATE LABOURCOST WITH TAX */
|
||||
$totalAmount = 0;
|
||||
$totalTax = 0;
|
||||
|
||||
// Calculate total amount and total tax
|
||||
foreach ($labourcost as $product) {
|
||||
$totalAmount += $product["labour_amount"];
|
||||
$totalTax = $product["tax"];
|
||||
}
|
||||
// Calculate total
|
||||
$total = $totalAmount + $totalTax;
|
||||
|
||||
$discount = ($data['job_card'][0]['is_rework'] == 1) ? 0 : $data['job_card'][0]['discount'] ;
|
||||
$amt_with_tax = $totalAmount + ($totalAmount * $totalTax / 100);
|
||||
$totalAmount = ($amt_with_tax - (float)$discount) / (1 + ($totalTax/100));
|
||||
// Create single output array
|
||||
$labour_data[0] = [
|
||||
"name" => "Labour Cost",
|
||||
"product_name" => "Labour Cost",
|
||||
"qty" => '-',
|
||||
"per" => '-',
|
||||
"tax" => number_format($totalTax, 2),
|
||||
"amount" => number_format($totalAmount, 2),
|
||||
"custom_tax" => number_format($totalTax, 2),
|
||||
"custom_total" => number_format($total, 2)
|
||||
];
|
||||
$data['job_card_products'] = array_merge($productdata, $labour_data);
|
||||
|
||||
// Create an mPDF object
|
||||
$mpdf = new Mpdf([
|
||||
'mode' => '',
|
||||
@ -252,11 +218,41 @@ class Jobcard extends BaseController
|
||||
$bus_id = $this->session->get('logged_user_business_id');
|
||||
$data['job_card'] = $this->JobcardModel->where('job_card_id',$job_card_id)->findAll();
|
||||
$data['company_address'] = $this->BranchModel->where('branch_id', $this->session->get('logged_user_branch_id'))->where('business_id', $bus_id)->where('isactive', 1)->findAll();
|
||||
$data['job_card_products'] = $this->JobcardModel->get_jobcard_products_details($job_card_id);
|
||||
$productdata = $this->JobcardModel->get_jobcard_products_details($job_card_id);
|
||||
$data['service'] = $this->JobcardModel->get_jobcard_service($job_card_id);
|
||||
$complaint = $this->JobcardModel->get_jobcard_complaint($job_card_id);
|
||||
$customcomplaint = $this->JobcardModel->get_jobcard_custom_complaint($job_card_id);
|
||||
$data['complaint'] = array_merge($complaint,$customcomplaint);
|
||||
$data['complaint'] = $this->JobcardModel->get_jobcard_complaint($job_card_id);
|
||||
$data['customcomplaint'] = $this->JobcardModel->get_jobcard_custom_complaint($job_card_id);
|
||||
$data['osdata'] = $this->JobcardModel->get_jobcard_os($job_card_id);
|
||||
$labourcost = array_merge($data['service'], $data['complaint'],$data['customcomplaint'],$data['osdata']);
|
||||
|
||||
/** CALCULATE LABOURCOST WITH TAX */
|
||||
$totalAmount = 0;
|
||||
$totalTax = 0;
|
||||
|
||||
// Calculate total amount and total tax
|
||||
foreach ($labourcost as $product) {
|
||||
$totalAmount += $product["labour_amount"];
|
||||
$totalTax = $product["tax"];
|
||||
}
|
||||
// Calculate total
|
||||
$total = $totalAmount + $totalTax;
|
||||
|
||||
$discount = ($data['job_card'][0]['is_rework'] == 1) ? 0 : $data['job_card'][0]['discount'] ;
|
||||
$amt_with_tax = $totalAmount + ($totalAmount * $totalTax / 100);
|
||||
$totalAmount = ($amt_with_tax - (float)$discount) / (1 + ($totalTax/100));
|
||||
// Create single output array
|
||||
$labour_data[0] = [
|
||||
"name" => "Labour Cost",
|
||||
"product_name" => "Labour Cost",
|
||||
"qty" => 0,
|
||||
"per" => '-',
|
||||
"tax" => number_format($totalTax, 2),
|
||||
"amount" => number_format($totalAmount, 2),
|
||||
"custom_tax" => number_format($totalTax, 2),
|
||||
"custom_total" => number_format($total, 2)
|
||||
];
|
||||
$data['job_card_products'] = array_merge($productdata, $labour_data);
|
||||
|
||||
|
||||
$html = view('jobcard_pdf_template', $data);
|
||||
return $this->respond(['status' => 'success','code' => 200,'data' => $html],200);
|
||||
@ -271,17 +267,46 @@ class Jobcard extends BaseController
|
||||
$bus_id = $this->session->get('logged_user_business_id');
|
||||
$data['job_card'] = $this->JobcardModel->where('job_card_id',$job_card_id)->findAll();
|
||||
$data['company_address'] = $this->BranchModel->where('branch_id', $this->session->get('logged_user_branch_id'))->where('business_id', $bus_id)->where('isactive', 1)->findAll();
|
||||
$data['job_card_products'] = $this->JobcardModel->get_jobcard_products_details($job_card_id);
|
||||
$productdata = $this->JobcardModel->get_jobcard_products_details($job_card_id);
|
||||
$data['service'] = $this->JobcardModel->get_jobcard_service($job_card_id);
|
||||
$complaint = $this->JobcardModel->get_jobcard_complaint($job_card_id);
|
||||
$customcomplaint = $this->JobcardModel->get_jobcard_custom_complaint($job_card_id);
|
||||
$data['complaint'] = array_merge($complaint,$customcomplaint);
|
||||
$data['complaint'] = $this->JobcardModel->get_jobcard_complaint($job_card_id);
|
||||
$data['customcomplaint'] = $this->JobcardModel->get_jobcard_custom_complaint($job_card_id);
|
||||
$data['osdata'] = $this->JobcardModel->get_jobcard_os($job_card_id);
|
||||
$labourcost = array_merge($data['service'], $data['complaint'],$data['customcomplaint'],$data['osdata']);
|
||||
|
||||
/** CALCULATE LABOURCOST WITH TAX */
|
||||
$totalAmount = 0;
|
||||
$totalTax = 0;
|
||||
|
||||
// Calculate total amount and total tax
|
||||
foreach ($labourcost as $product) {
|
||||
$totalAmount += $product["labour_amount"];
|
||||
$totalTax = $product["tax"];
|
||||
}
|
||||
// Calculate total
|
||||
$total = $totalAmount + $totalTax;
|
||||
|
||||
$discount = ($data['job_card'][0]['is_rework'] == 1) ? 0 : $data['job_card'][0]['discount'] ;
|
||||
$amt_with_tax = $totalAmount + ($totalAmount * $totalTax / 100);
|
||||
$totalAmount = ($amt_with_tax - (float)$discount) / (1 + ($totalTax/100));
|
||||
// Create single output array
|
||||
$labour_data[0] = [
|
||||
"name" => "Labour Cost",
|
||||
"product_name" => "Labour Cost",
|
||||
"qty" => 0,
|
||||
"per" => '-',
|
||||
"tax" => number_format($totalTax, 2),
|
||||
"amount" => number_format($totalAmount, 2),
|
||||
"custom_tax" => number_format($totalTax, 2),
|
||||
"custom_total" => number_format($total, 2)
|
||||
];
|
||||
$data['job_card_products'] = array_merge($productdata, $labour_data);
|
||||
|
||||
|
||||
// Create an mPDF object
|
||||
$mpdf = new Mpdf([
|
||||
'mode' => '',
|
||||
'format' => 'A5',
|
||||
'format' => 'A4',
|
||||
'default_font_size' => 0,
|
||||
'default_font' => '',
|
||||
|
||||
@ -710,7 +735,6 @@ class Jobcard extends BaseController
|
||||
public function add_jobs()
|
||||
{
|
||||
|
||||
// dd($this->request->getPost());
|
||||
$JobcardModel = new JobcardModel();
|
||||
if($this->session->get('logged_user_role') == "Store Manager") {
|
||||
$data['status'] = $this->request->getPost('status');
|
||||
@ -730,7 +754,7 @@ class Jobcard extends BaseController
|
||||
$this->delete_items($this->request->getPost('delete_items'));
|
||||
$rework = $this->request->getPost('rework');
|
||||
// Job card INSERT
|
||||
$deliveryDate = $this->request->getPost('delivery_date');
|
||||
|
||||
|
||||
// Retrieve and validate the delivery date
|
||||
$deliveryDate = $this->request->getPost('delivery_date');
|
||||
@ -775,6 +799,8 @@ class Jobcard extends BaseController
|
||||
}
|
||||
$JobcardModel->update($job_card_id, $job_card_data);
|
||||
} else {
|
||||
|
||||
$job_card_data['inv_no'] = InvNoHelper::generateInvoiceNumber();
|
||||
$JobcardModel->insert($job_card_data);
|
||||
$job_card_id = $JobcardModel->getInsertID(); // Get the last inserted ID
|
||||
|
||||
@ -798,8 +824,8 @@ class Jobcard extends BaseController
|
||||
$service['service_id'] = $item->service_id;
|
||||
$service['qty'] = $item->quality;
|
||||
$service['tax'] = (int)$item->tax;
|
||||
$service['labour_cost'] = $item->labour_cost; //(isset($rework) ? 0 : $item->labour_cost );
|
||||
$service['amount'] = $item->amount; //(isset($rework) ? 0 : $item->amount );
|
||||
$service['labour_cost'] = $item->labour_cost;
|
||||
$service['amount'] = $item->amount;
|
||||
|
||||
if(empty($item->id)) {
|
||||
$JobcardServiceModel->insert($service);
|
||||
|
||||
@ -13,6 +13,7 @@ use App\Models\BusinessModel;
|
||||
use App\Models\BranchModel;
|
||||
use Mpdf\Mpdf;
|
||||
use CodeIgniter\API\ResponseTrait;
|
||||
use App\Helpers\InvNoHelper;
|
||||
class Sales extends BaseController
|
||||
{
|
||||
public $session;
|
||||
@ -45,17 +46,16 @@ class Sales extends BaseController
|
||||
{
|
||||
|
||||
if(!$this->session->has('logged_user')) { return redirect()->to(base_url()); }
|
||||
|
||||
if ($sales_order_id === '0') {
|
||||
$data['page_name']="Create Sales Order";
|
||||
$data['page_name']="Create Sales Order";
|
||||
$data['sales'] = [];
|
||||
$ClientModel = new ClientModel();
|
||||
$client=$ClientModel
|
||||
->where('isactive',1)
|
||||
->where('branch_id',$this->session->get('logged_user_branch_id'))->findAll();
|
||||
$client = $ClientModel->where('isactive',1)
|
||||
->where('branch_id',$this->session->get('logged_user_branch_id'))->findAll();
|
||||
$VehicleModel = new VehicleModel();
|
||||
$vehicle = $VehicleModel->getCustomerandVehicle($this->session->get('logged_user_branch_id'));
|
||||
// ->where('isactive',1)
|
||||
// ->where('branch_id',$this->session->get('logged_user_branch_id'))->findAll();
|
||||
|
||||
|
||||
$ProductModel = new ProductModel();
|
||||
$product=$ProductModel->select('products.*, manufacturer.manufacturer_name')
|
||||
@ -64,8 +64,7 @@ class Sales extends BaseController
|
||||
->where('products.branch_id', $this->session->get('logged_user_branch_id'))
|
||||
->where('products.isactive', 1)
|
||||
->findAll();
|
||||
// echo "<pre>";
|
||||
// print_r($product);die;
|
||||
|
||||
$data['product']=$product;
|
||||
$data['client']=$client;
|
||||
$data['vehicle']=$vehicle;
|
||||
@ -178,8 +177,11 @@ class Sales extends BaseController
|
||||
}
|
||||
$SalesOrderModel->update($sales_order_id, $data);
|
||||
} else {
|
||||
$data['inv_no'] = InvNoHelper::generateInvoiceNumber();
|
||||
|
||||
// dd($data);
|
||||
$SalesOrderModel->insert($data);
|
||||
$sales_order_id = $SalesOrderModel->getInsertID(); // Get the last inserted ID
|
||||
$sales_order_id = $SalesOrderModel->getInsertID();
|
||||
|
||||
// Update sales order with generated order number
|
||||
$orderNumber = 'SO-' . date('md') . '-' . str_pad($sales_order_id, 5, '0', STR_PAD_LEFT);
|
||||
|
||||
61
app/Helpers/InvNoHelper.php
Normal file
61
app/Helpers/InvNoHelper.php
Normal file
@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
namespace App\Helpers;
|
||||
use App\Models\SalesOrderModel;
|
||||
use App\Models\JobcardModel;
|
||||
|
||||
class InvNoHelper
|
||||
{
|
||||
|
||||
|
||||
|
||||
public static function generateInvoiceNumber()
|
||||
{
|
||||
|
||||
$SalesOrderModel = new SalesOrderModel();
|
||||
$JobcardModel = new JobcardModel();
|
||||
|
||||
|
||||
$Sales = $SalesOrderModel->orderBy('sales_order_id', 'DESC')->first();
|
||||
$SaleslastFiveDigits = $Sales && isset($Sales['inv_no']) ? substr($Sales['inv_no'], -5) : 0;
|
||||
|
||||
$Jobs = $JobcardModel->orderBy('job_card_id', 'DESC')->first();
|
||||
$JobslastFiveDigits = $Jobs && isset($Jobs['inv_no']) ? substr($Jobs['inv_no'], -5) : 0;
|
||||
|
||||
|
||||
|
||||
$largerNumber = max((int)$SaleslastFiveDigits, (int)$JobslastFiveDigits);
|
||||
$formattedCount = str_pad($largerNumber+1, 5, '0', STR_PAD_LEFT);
|
||||
$currentFinancialYear = SELF::getCurrentFinancialYear();
|
||||
$invoiceNumber = 'MECH-' . $currentFinancialYear. '/' . $formattedCount;
|
||||
|
||||
|
||||
return $invoiceNumber;
|
||||
|
||||
}
|
||||
|
||||
public static function getCurrentFinancialYear() {
|
||||
// Get the current month and year
|
||||
$currentMonth = date('n');
|
||||
$currentYear = date('Y');
|
||||
|
||||
// Determine the start date of the financial year
|
||||
if ($currentMonth >= 4) {
|
||||
$startYear = $currentYear;
|
||||
} else {
|
||||
$startYear = $currentYear - 1;
|
||||
}
|
||||
|
||||
// Determine the end date of the financial year
|
||||
$endYear = $startYear + 1;
|
||||
|
||||
// Format the financial year string
|
||||
$financialYear = $startYear . '-' . substr($endYear, -2);
|
||||
|
||||
return $financialYear;
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
?>
|
||||
@ -5,8 +5,8 @@ class SalesOrderModel extends Model
|
||||
{
|
||||
protected $table = 'sales_order';
|
||||
protected $primaryKey = 'sales_order_id';
|
||||
protected $allowedFields = ['sales_order_id','client_name','vehicle_id','order_number','branch_id','status','mode_of_payment','mobile_no','billing_address','billing_city','billing_state','billing_country','billing_postal_code','total','tax','subtotal','discount','terms_condition','isactive'];
|
||||
//
|
||||
protected $allowedFields = ['sales_order_id','inv_no','client_name','vehicle_id','order_number','branch_id','status','mode_of_payment','mobile_no','billing_address','billing_city','billing_state','billing_country','billing_postal_code','total','tax','subtotal','discount','terms_condition','isactive'];
|
||||
|
||||
public function getSalesPdf($sales_order_id){
|
||||
return $this->db->table('sales_order')
|
||||
->where('sales_order_id', $sales_order_id)
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
<table style="border-collapse: collapse; width: 100%;" border="0">
|
||||
<tbody>
|
||||
<tr>
|
||||
<td style="width: 33.3333%;"></td>
|
||||
<td style="width: 33.3333%;"><?= $sales[0]->inv_no; ?></td>
|
||||
<td style="width: 33.3333%;"> </td>
|
||||
<td style="width: 33.3333%;"> </td>
|
||||
</tr>
|
||||
|
||||
@ -112,7 +112,7 @@
|
||||
|
||||
<tr >
|
||||
<td style="width: 10%; height: 5px;text-align: center; font-size: small;"> <?= $key+1; ?> </td>
|
||||
<td style="width: 10%; height: 5px; font-size: small;"> <?= $value['name']; ?> </td>
|
||||
<td style="width: 10%; height: 5px; font-size: small;"> <?= $value['product_name']; ?> </td>
|
||||
<td style="width: 10%; height: 5px;text-align: center; font-size: small;"><?php echo $value['amount']; ?></td>
|
||||
<td style="width: 10%; height: 5px;text-align: center; font-size: small;"><?= $value['qty']; ?></td>
|
||||
<td style="width: 10%; height: 5px;text-align: center; font-size: small;"><?= $value['per']; ?></td>
|
||||
@ -158,7 +158,7 @@
|
||||
<tr style="height: 36px;">
|
||||
<td style="width: 33.3333%; height: 36px;"> </td>
|
||||
<td style="width: 33.3333%; height: 36px; text-align: right; font-size: small"><strong>Grand Total</strong></td>
|
||||
<td style="width: 25.7946%; height: 36px; text-align: right; font-size: small"><strong>₹ <?php $grandTotal = $subTotal+$subTax; round($grandTotal, 2); ?></strong></td>
|
||||
<td style="width: 25.7946%; height: 36px; text-align: right; font-size: small"><strong>₹ <?php echo number_format($subTotal+$subTax, 2, '.', ''); ?></strong></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
File diff suppressed because one or more lines are too long
@ -139,7 +139,7 @@
|
||||
<div class="modal-header">
|
||||
<h5 class="modal-title" id="PreviewJobcardModalLabel"></h5>
|
||||
<a href="#" class="ri-download-2-fill ml-3 text-muted font-18" id="downloadJobcardButton" title="Download Jobcard"></a>
|
||||
|
||||
<a href="#" class="ri-printer-fill ml-3 text-muted font-18" id="printJobcardButton" title="Print Jobcard"></a>
|
||||
<button type="button" class="close" data-dismiss="modal" aria-label="Close" style="font-size: 27px; margin-bottom: 2px;">
|
||||
<span aria-hidden="true">×</span>
|
||||
</button>
|
||||
@ -257,6 +257,9 @@
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
|
||||
$(document).on('click', '.preview-jobcard', function() {
|
||||
var jobCardId = $(this).data('job-card-id');
|
||||
$.ajax({
|
||||
@ -269,6 +272,7 @@
|
||||
$('#PreviewJobcardModalLabel').text('Preview Jobcard Modal');
|
||||
$('#PreviewJobcardModal .modal-body').html(response.data);
|
||||
$('#downloadJobcardButton').attr('href', '<?= base_url("download_jobcard/") ?>' + jobCardId);
|
||||
$('#printJobcardButton').attr('data-id', jobCardId);
|
||||
}else{
|
||||
$('#PreviewJobcardModal').modal('hide');
|
||||
$('#PreviewJobcardModalLabel').text('');
|
||||
@ -330,23 +334,35 @@
|
||||
}
|
||||
});
|
||||
});
|
||||
$(document).on('click', '.print-jobcard', function() {
|
||||
var jobCardId = $(this).data('job-card-id');
|
||||
$(document).on('click', '#printJobcardButton', function() {
|
||||
var jobCardId = $(this).data('id');
|
||||
$.ajax({
|
||||
type: 'GET',
|
||||
url: 'preview_jobcard/'+jobCardId,
|
||||
dataType: 'json',
|
||||
success: function(response) {
|
||||
if (response.status == "success") {
|
||||
$('#PreviewJobcardModal').modal('show');
|
||||
$('#PreviewJobcardModalLabel').text('Preview Jobcard Modal');
|
||||
$('#PreviewJobcardModal .modal-body').html(response.data);
|
||||
$('#downloadJobcardButton').attr('href', '<?= base_url("download_jobcard/") ?>' + jobCardId);
|
||||
}else{
|
||||
$('#PreviewJobcardModal').modal('hide');
|
||||
$('#PreviewJobcardModalLabel').text('');
|
||||
|
||||
}
|
||||
var newWin = window.open("", "_blank", "width=600,height=400");
|
||||
newWin.document.write("<html><head><title>Print</title>");
|
||||
newWin.document.write(`
|
||||
<style>
|
||||
@media print {
|
||||
@page {
|
||||
size: A4; /* Set default print size to A4 */
|
||||
margin: 1cm; /* Set margin as per requirement */
|
||||
}
|
||||
body {
|
||||
font-family: Arial, sans-serif;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
`);
|
||||
newWin.document.write("</head><body>");
|
||||
newWin.document.write(response.data);
|
||||
newWin.document.write("</body></html>");
|
||||
newWin.document.close();
|
||||
newWin.print();
|
||||
newWin.close();
|
||||
},
|
||||
error: function(xhr, status, error) {
|
||||
// Handle error response here
|
||||
|
||||
@ -408,6 +408,9 @@
|
||||
<li>
|
||||
<a href="<?php echo base_url('product_index') ?>">Products</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="<?php echo base_url('product_category_index') ?>">Product Category</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
@ -451,12 +454,7 @@
|
||||
<span> Make & Models</span>
|
||||
</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="<?php echo base_url('product_category_index') ?>">
|
||||
<i class="fas fa-luggage-cart"></i>
|
||||
<span>Product Category</span>
|
||||
</a>
|
||||
</li>
|
||||
|
||||
<?php } ?>
|
||||
|
||||
|
||||
|
||||
@ -7,6 +7,9 @@
|
||||
/* left: 50px; Adjust as needed */
|
||||
width: 300px; /* Adjust as needed */
|
||||
}
|
||||
.form-control{
|
||||
padding: 5px !important;
|
||||
}
|
||||
</style>
|
||||
|
||||
<div class="row">
|
||||
@ -73,11 +76,12 @@
|
||||
minlength="6" onkeypress="return onlyNumbers(event)" readonly>
|
||||
</div>
|
||||
<div class="form-group col-md-4">
|
||||
<label for="inputPassword4" class="col-form-label">Status<span class="text-danger">*</span>
|
||||
<label for="inputPassword4" class="col-form-label">Status
|
||||
<?php if (isset($sales['status']) && $sales['status'] !== ''): ?>
|
||||
(<?= $sales['status'] ?>)
|
||||
<?php echo "( ". $sales['status']." )"; ?>
|
||||
<?php endif; ?></label>
|
||||
<select class="form-control status-select status_class_for_change" name="status" required data-toggle="select2">
|
||||
|
||||
<select class="form-control status-select status_class_for_change" name="status" data-toggle="select2" style="background-color: aquamarine;color: darkblue;">
|
||||
<?php if (isset($sales['status'])): ?>
|
||||
<?php if ($sales['status'] === 'Cancelled'): ?>
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user