Merge branch 'main' of bitbucket.org:venbainformationtechnology/the_mechanic
This commit is contained in:
commit
d2ad528720
@ -6,7 +6,7 @@ use App\Models\ProductModel;
|
||||
use App\Models\BikemakeModel;
|
||||
use App\Models\VendorModel;
|
||||
use App\Models\BikemodelsModel;
|
||||
|
||||
|
||||
|
||||
class Products extends BaseController
|
||||
{
|
||||
@ -61,14 +61,24 @@ class Products extends BaseController
|
||||
$data['page_name']="Add Product";
|
||||
} else if ($product_id !== '0') {
|
||||
$data['page_name']="Edit Product";
|
||||
$ProductModel = new ProductModel();
|
||||
$products=$ProductModel->where('product_id', $product_id)->get()->getRowArray();
|
||||
|
||||
$data['products']=$products;
|
||||
|
||||
$BikemakeModel = new BikemakeModel();
|
||||
$data['make'] = $BikemakeModel->findAll();
|
||||
$ProductModel = new ProductModel();
|
||||
$BikemodelsModel = new BikemodelsModel();
|
||||
$make_id = $products['make_id'];
|
||||
$data['models'] = $BikemodelsModel->where('make_id', $make_id)->findAll();
|
||||
|
||||
$tax=$ProductModel->getTax();
|
||||
$data['tax']=$tax;
|
||||
|
||||
$products=$ProductModel->where('product_id', $product_id)->get()->getRowArray();
|
||||
$data['products']=$products;
|
||||
$VendorModel = new VendorModel();
|
||||
$data['vendors']=$VendorModel->findAll();
|
||||
|
||||
|
||||
// print_r($data);die;
|
||||
}
|
||||
$data['product_id'] = $product_id;
|
||||
|
||||
|
||||
@ -63,7 +63,7 @@ class Sales extends BaseController
|
||||
$data['page_name']="Edit Sale Order";
|
||||
$ClientModel = new ClientModel();
|
||||
$client=$ClientModel->where('isactive',1)->where('branch_id',$this->session->get('logged_user_branch_id'))->findAll();
|
||||
$SalesOrderModel = new SalesOrderModel();
|
||||
$SalesOrderModel = new SalesOrderModel();
|
||||
$sales=$SalesOrderModel->where('sales_order_id', $sales_order_id)->get()->getRowArray();
|
||||
$data['sales']=$sales;
|
||||
$VehicleModel = new VehicleModel();
|
||||
@ -71,7 +71,7 @@ $vehicles = $VehicleModel->where('isactive',1)->where('vehicle_id',$sales['vehic
|
||||
->where('branch_id',$this->session->get('logged_user_branch_id'))
|
||||
->first();
|
||||
$makeId = $vehicles['make'];
|
||||
$modelId = $vehicles['model'];
|
||||
$modelId = $vehicle['model'];
|
||||
|
||||
// Encode the modelId before searching
|
||||
$encodedModelId = json_encode([$modelId]);
|
||||
|
||||
@ -91,6 +91,13 @@
|
||||
|
||||
<li class="menu-title">Navigation</li>
|
||||
|
||||
|
||||
|
||||
<?php if(session()->get('logged_user_role') == 'Floor Manager' ||
|
||||
session()->get('logged_user_role') == 'Job Card Manager' ||
|
||||
session()->get('logged_user_role') == 'Store Manager') {
|
||||
?>
|
||||
|
||||
<li>
|
||||
<a href="#sidebarLayouts1" data-toggle="collapse">
|
||||
<i class="mdi mdi-sale"></i>
|
||||
@ -102,12 +109,23 @@
|
||||
<li>
|
||||
<a href="<?php echo base_url('sales_order_index') ?>">Sales Order</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="<?php echo base_url('vehicle_index') ?>">Vehicles</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="<?php echo base_url('client_index') ?>">Clients</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
<?php } ?>
|
||||
|
||||
|
||||
|
||||
<?php if(session()->get('logged_user_role') == 'Floor Manager' ||
|
||||
session()->get('logged_user_role') == 'Job Card Manager' ||
|
||||
session()->get('logged_user_role') == 'Store Manager') {
|
||||
?>
|
||||
<li>
|
||||
<a href="#sidebarLayouts" data-toggle="collapse">
|
||||
<i class="ri-shopping-cart-fill"></i>
|
||||
@ -128,41 +146,16 @@
|
||||
</ul>
|
||||
</div>
|
||||
</li>
|
||||
<?php } ?>
|
||||
|
||||
|
||||
|
||||
<?php if(session()->get('logged_user_role') == 'Floor Manager' ||
|
||||
session()->get('logged_user_role') == 'Job Card Manager' ||
|
||||
session()->get('logged_user_role') == 'Store Manager') { ?>
|
||||
<li>
|
||||
<a href="<?php echo base_url('vehicle_index') ?>">
|
||||
<i class="mdi mdi-motorbike"></i>
|
||||
<span> Vehicle </span>
|
||||
</a>
|
||||
</li>
|
||||
<?php } ?>
|
||||
|
||||
<?php if(session()->get('logged_user_role') == 'Floor Manager' ||
|
||||
session()->get('logged_user_role') == 'Job Card Manager' ||
|
||||
session()->get('logged_user_role') == 'Store Manager') { ?>
|
||||
<li>
|
||||
<a href="<?php echo base_url('client_index') ?>">
|
||||
<i class="mdi mdi-clipboard-account"></i>
|
||||
<span> Client </span>
|
||||
</a>
|
||||
</li>
|
||||
<?php } ?>
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
<!-- <li>
|
||||
<a href="<?php echo base_url('service_index') ?>">
|
||||
<i class="fas fa-wrench"></i>
|
||||
<span> Service </span>
|
||||
</a>
|
||||
</li> -->
|
||||
|
||||
|
||||
<li class="menu-title">Masters</li>
|
||||
<li>
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
<?php include('layout/header.php'); ?>
|
||||
|
||||
<div class="row">
|
||||
<div class="col-12">
|
||||
<div class="page-title-box page-title-box-alt">
|
||||
@ -27,18 +28,29 @@
|
||||
<label for="make" class="col-form-label">Make<span class="text-danger">*</span></label>
|
||||
<select class="form-control SelExample" id="make" name="make" required>
|
||||
<option value="">Select a Make</option>
|
||||
|
||||
<!-- Options for make -->
|
||||
<?php foreach ($make as $value): ?>
|
||||
<option value="<?= $value['make_id'] ?>" <?= isset($vendor['make_ids']) && in_array($value['make_id'], $vendor['make_ids']) ? 'selected' : '' ?>><?= $value['make'] ?></option>
|
||||
<?php endforeach; ?>
|
||||
<option value="<?= $value['make_id'] ?>" <?= isset($products['make_id']) && $products['make_id'] == $value['make_id'] ? 'selected' : '' ?>>
|
||||
<?= $value['make'] ?>
|
||||
</option>
|
||||
<?php endforeach; ?>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group col-md-4">
|
||||
<label for="model" class="col-form-label">Model<span class="text-danger">*</span></label>
|
||||
<select class="form-control SelExample" id="model" name="model[]" required multiple>
|
||||
<!-- Options for model will be populated dynamically via AJAX -->
|
||||
</select>
|
||||
</div>
|
||||
<label for="model" class="col-form-label">Model<span class="text-danger">*</span></label>
|
||||
<select class="form-control SelExample" id="model" name="model[]" required multiple>
|
||||
<!-- Options for model will be populated dynamically via AJAX -->
|
||||
<?php if(isset($models) && !empty($models)): ?>
|
||||
<?php foreach($models as $model): ?>
|
||||
<option value="<?= $model['model_id'] ?>" <?= isset($products['models_id']) && in_array($model['model_id'], json_decode($products['models_id'], true)) ? 'selected' : '' ?>>
|
||||
<?= $model['model_name'] ?>
|
||||
</option>
|
||||
<?php endforeach; ?>
|
||||
<?php endif; ?>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-md-4">
|
||||
<label for="inputEmail4" class="col-form-label">Product Name<span class="text-danger">*</span></label>
|
||||
<input type="text" class="form-control" name="productname" placeholder="Product Name" value="<?= isset($products['product_name']) ? $products['product_name'] : '' ?>" required>
|
||||
@ -48,6 +60,13 @@
|
||||
<select class="form-control" id="vendor" name="vendor" required>
|
||||
<!-- Placeholder option -->
|
||||
<option value="">Select Vendor</option>
|
||||
|
||||
<?php foreach ($vendors as $vendor): ?>
|
||||
<option value="<?= $vendor['vendor_id'] ?>" <?= isset($products['vendor']) && $products['vendor'] == $vendor['vendor_id'] ? 'selected' : '' ?>>
|
||||
<?= $vendor['vendor_name'] ?>
|
||||
</option>
|
||||
<?php endforeach; ?>
|
||||
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group col-md-4">
|
||||
@ -114,13 +133,18 @@
|
||||
<h4 class="header-title">Stock Information :</h4><br>
|
||||
<div class="form-row">
|
||||
<div class="form-group col-md-4">
|
||||
<label for="inputPassword4" class="col-form-label">Qty in Stock<span class="text-danger">*</span></label>
|
||||
<input type="number" class="form-control" name="qty_in_stock" placeholder="Qty in Stock" value="<?= isset($products['qty_stock']) ? $products['qty_stock'] : '' ?>" required>
|
||||
</div>
|
||||
<div class="form-group col-md-4">
|
||||
<label for="inputPassword4" class="col-form-label">Purchase Order Level<span class="text-danger"></span></label>
|
||||
<input type="number" class="form-control" name="purchase_order_level" placeholder="Purchase Order Level" value="<?= isset($products['purchase_order_level']) ? $products['purchase_order_level'] : '' ?>" required>
|
||||
</div>
|
||||
<label for="inputPassword4" class="col-form-label">Qty in Stock<span class="text-danger">*</span></label>
|
||||
<input type="number" class="form-control" id="qty_in_stock" name="qty_in_stock" placeholder="Qty in Stock" value="<?= isset($products['qty_stock']) ? $products['qty_stock'] : '' ?>" required>
|
||||
</div>
|
||||
<div class="form-group col-md-4">
|
||||
<label for="inputPassword4" class="col-form-label">Purchase Order Level<span class="text-danger"></span></label>
|
||||
<input type="number" class="form-control" id="purchase_order_level" name="purchase_order_level" placeholder="Purchase Order Level" value="<?= isset($products['purchase_order_level']) ? $products['purchase_order_level'] : '' ?>" required>
|
||||
</div>
|
||||
<div class="form-group col-md-4">
|
||||
<label for="inputPassword4" class="col-form-label">Purchase Re-Order Level<span class="text-danger"></span></label>
|
||||
<input type="number" class="form-control" id="purchase_reorder_level" name="purchase_reorder_level" placeholder="Purchase Re-Order Level" value="<?= isset($products['purchase_reorder_level']) ? $products['purchase_reorder_level'] : '' ?>" required>
|
||||
</div>
|
||||
|
||||
<div class="form-group col-md-4" hidden>
|
||||
<label for="inputPassword4" class="col-form-label">Qty in Demand</label>
|
||||
<input type="number" class="form-control" name="qty_in_demand" placeholder="Qty in Demand" value="<?= isset($products['qty_in_demand']) ? $products['qty_in_demand'] : '' ?>" >
|
||||
@ -217,45 +241,28 @@ $(document).ready(function() {
|
||||
});
|
||||
});
|
||||
});
|
||||
</script>
|
||||
<script>
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
const qtyInStockInput = document.getElementById('qty_in_stock');
|
||||
const purchaseOrderLevelInput = document.getElementById('purchase_order_level');
|
||||
const purchaseReorderLevelInput = document.getElementById('purchase_reorder_level');
|
||||
|
||||
$(document).ready(function() {
|
||||
$('#model').change(function() {
|
||||
// Listen for the keyup event on qty in stock input
|
||||
qtyInStockInput.addEventListener('keyup', function() {
|
||||
const qtyInStock = parseFloat(qtyInStockInput.value);
|
||||
const purchaseorderLevel = qtyInStock / 2; // Calculate the purchase reorder level (half of qty in stock)
|
||||
|
||||
var model_ids = $('#model').val(); // Get the selected model IDs
|
||||
var make_id = $('#make').val();
|
||||
console.log(model_ids);
|
||||
|
||||
// AJAX request to get vendors based on the selected model ID
|
||||
$.ajax({
|
||||
url: '<?php echo base_url('get_vendors_by_model') ?>', // URL to your CodeIgniter controller method
|
||||
type: 'POST',
|
||||
dataType: 'json',
|
||||
data: { model_ids: model_ids , make_id : make_id }, // Send the selected make ID and model IDs to the controller
|
||||
success: function(response) {
|
||||
// Update vendor dropdown based on the response
|
||||
if (response) {
|
||||
// Clear existing options
|
||||
$('#vendor').empty();
|
||||
// Append new options
|
||||
$('#vendor').append('<option value>Select Vendor</option>');
|
||||
$.each(response, function(index, vendor) {
|
||||
$('#vendor').append('<option value="' + vendor.vendor_id + '">' + vendor.vendor_name + '</option>');
|
||||
});
|
||||
} else {
|
||||
// Handle case when no vendors are found for the selected model
|
||||
console.log('No vendors found for the selected model');
|
||||
}
|
||||
},
|
||||
error: function(xhr, status, error) {
|
||||
// Handle error
|
||||
console.error(xhr.responseText);
|
||||
}
|
||||
});
|
||||
// Update the value of purchase reorder level input
|
||||
purchaseOrderLevelInput.value = isNaN(purchaseorderLevel) ? '' : purchaseorderLevel;
|
||||
purchaseReorderLevelInput.value = isNaN(qtyInStock) ? '' : qtyInStock;
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
|
||||
|
||||
<style>
|
||||
.select2-container .select2-selection--multiple .select2-selection__choice{
|
||||
padding: 5px 7px 5px 0 !important;
|
||||
|
||||
Loading…
Reference in New Issue
Block a user