Merge branch 'CI4-Application' of bitbucket.org:venbainformationtechnology/ria into CI4-Application

This commit is contained in:
bitbucket 2024-08-20 16:43:18 +05:30
commit 133f34e00b
9 changed files with 535 additions and 56 deletions

View File

@ -49,7 +49,10 @@ $routes->post('supplierExist','Supplier::checksupplier');
$routes->get('exportsupplier','Supplier::exportsupplier'); // export supplier details
$routes->post('deletesupplier','Supplier::deletesupplier');
// transporter Routes
$routes->get('transporterListing', 'Supplier::transporterListing');
$routes->post('fetchTransporterDetails', 'Supplier::fetchTransporterDetails');// for Ajax both add and edit....
$routes->get('deleteTransporter', 'Supplier::deleteTransporter');
// Material Master Routes
$routes->match(['GET', 'POST', 'PUT', 'DELETE'],'addRawmaterial', 'Rawmaterialdetails::addRawMaterial');

View File

@ -49,10 +49,13 @@ class Inwardgateregister extends BaseController
function viewIGR()
{
// echo $this->roleText;
// echo $this->role;die;
$this->global['pageTitle'] = 'View Inward Gate Register';
$data['IGR'] = $this->inwardgateregister_model->ViewigrListing();
$data['DEPCode'] = $this->session->get('DEPCode');
$data['userRole'] = $this->session->get('role');
$data['transporter'] = $this->inwardgateregister_model->transporter();
$this->loadViews("viewinwardgateregister", $this->global, $data, NULL);
// $this->global['pageTitle'] = 'Inward Gate Register Details';
// $data['IGR'] = $this->inwardgateregister_model->igrListing();
@ -66,6 +69,11 @@ class Inwardgateregister extends BaseController
$this->global['pageTitle'] = 'Add Inward Gate Register';
$result = $this->inwardgateregister_model->getpurchaseorder();
$result1 = $this->inwardgateregister_model->transporter();
$data['transporter'] = array_filter($result1 , function($item) {
return ($item->isactive == 1);
});
// print_r($data['transporter']);die;
// $data['PO_NO'] = array_filter($result, function($item) {
// return !($item->status === 'ST027' && $item->IsOpenOrder === null);
@ -320,7 +328,7 @@ class Inwardgateregister extends BaseController
$Mat_Rcvd_Dt = (string)$this->request->getPost('MaterialRcvdDate');
$MaterialRcvdDt = get_date_time_format($Mat_Rcvd_Dt);
$VehicleNo = $this->request->getPost('VehicleNo');
$VehicleType = $this->request->getPost('VehicleType');
$TransporterId = $this->request->getPost('TransporterId');
$DriverName = $this->request->getPost('DriverName');
$DriverMobileNumber = $this->request->getPost('DriverMobileNumber');
$CreatedBy = $this->session->get('userId');
@ -356,7 +364,7 @@ class Inwardgateregister extends BaseController
}
}
#Step 3 Master Details Gathering to Save In DB
$igr = array('PONO' => $PONO, 'VehicleNo' => $VehicleNo, 'VehicleType'=>$VehicleType,'DeliveryChellanOrInvoiceNo' => $DeliveryChellanOrInvoiceNo, 'DeliveryChellanDate' => $DeliveryChellanDate, 'MaterialRcvdDate' => $MaterialRcvdDt, 'DriverName' => $DriverName, 'DriverMobileNumber' => $DriverMobileNumber,'IGRStatus' => $IGRStatus, 'CreatedBy' => $CreatedBy, 'CreatedDate' => $createddt, 'PaymentStatus' => $paymentstatus);
$igr = array('PONO' => $PONO, 'VehicleNo' => $VehicleNo, 'TransporterId'=>$TransporterId,'DeliveryChellanOrInvoiceNo' => $DeliveryChellanOrInvoiceNo, 'DeliveryChellanDate' => $DeliveryChellanDate, 'MaterialRcvdDate' => $MaterialRcvdDt, 'DriverName' => $DriverName, 'DriverMobileNumber' => $DriverMobileNumber,'IGRStatus' => $IGRStatus, 'CreatedBy' => $CreatedBy, 'CreatedDate' => $createddt, 'PaymentStatus' => $paymentstatus);
$igr['MasterFile'] = $requestMasterFileName;
#Step 4 Calling DB to Save IGR Master
$IGRNO = $this->inwardgateregister_model->addigrM($igr);
@ -667,10 +675,10 @@ function viewIGRDetails()
function UpdateIGR()
{
$IGRNo = $this->request->getPost('igr');
$PONo = $this->request->getPost('po');
$DeliveryChellanOrInvoiceNo = $this->request->getPost('invno');
$DeliveryChellan = $this->request->getPost('invdate');
$DeliveryChellanDate = !$DeliveryChellan || $DeliveryChellan === null ? NULL : get_date_time_format($DeliveryChellan);
@ -679,7 +687,7 @@ function viewIGRDetails()
$VehicleNo = $this->request->getPost('vehicle_no');
$VehicleType = $this->request->getPost('vehicle_type');
$TransporterId = $this->request->getPost('Transporter_Id');
$DriverName = $this->request->getPost('driver');
$DriverMobileNumber = $this->request->getPost('driver_mobile');
@ -694,7 +702,7 @@ function viewIGRDetails()
$path = ROOTPATH.'public/uploads/Igrfiles/';
if(!is_dir($path)) { mkdir($path, 0777, true); }
$igrarr = array('DeliveryChellanDate' => $DeliveryChellanDate, 'MaterialRcvdDate' => $MaterialRcvdDt,'VehicleNo'=>$VehicleNo,'VehicleType'=>$VehicleType,'DriverMobileNumber'=>$DriverMobileNumber,'DriverName'=>$DriverName, 'IGRStatus' => $IGRStatus,'UpdateBY' => $updateby);
$igrarr = array('DeliveryChellanDate' => $DeliveryChellanDate, 'MaterialRcvdDate' => $MaterialRcvdDt,'VehicleNo'=>$VehicleNo,'TransporterId'=>$TransporterId,'DriverMobileNumber'=>$DriverMobileNumber,'DriverName'=>$DriverName, 'IGRStatus' => $IGRStatus,'UpdateBY' => $updateby,'DeliveryChellanOrInvoiceNo'=>$DeliveryChellanOrInvoiceNo);
$MasterFile = $this->request->getfile('MasterFile');

View File

@ -405,4 +405,64 @@ class Supplier extends BaseController
exit;
}
// transporter functionality
/**
* This function used to Transporter listing
*/
public function transporterListing()
{
$data['userRecords'] = $this->supplier_model->transporterListing();
$this->global['pageTitle'] = 'Transporter List';
$this->loadViews("transporterListing", $this->global, $data, NULL);
}
/**
* This function is used to add/edit Transporter
*/
public function fetchTransporterDetails() {
$id = $this->request->getPost('transporterid');
$name = $this->request->getPost('transportername');
$name = ($name !== null && is_string($name)) ? strtoupper(trim($name)) : null;
$userId = $this->session->get('userId');
$data = ['status' => false, 'message' => 'An error occurred while creating transporter details'.gettype($id)];
$id = trim($id);
if ((int)$id === 0) {
$addarr = ['name' => $name,
'created_by' => $userId,
];
if ($this->supplier_model->saveTransporter($addarr) > 0) {
$data = ['status' => true, 'message' => 'Successfully created transporter details'];
}
}else{
$editarr = ['name' => $name,'updated_by' => $userId];
if ($this->supplier_model->updateTransporter($editarr, (int)$id) > 0) {
$data = ['status' => true, 'message' => 'Successfully updated transporter details'];
}
}
return $this->response->setJSON($data);
}
/**
* delete the Transporter
*/
function deleteTransporter($id = NULL)
{
$ID = $id ?? $_GET['id'];
if(!empty($ID)){
$updatedBy = $this->session->get('userId');
$message = $this->supplier_model->deleteTransporter($ID, $updatedBy);
}else{
$message = "Transporter ID Not Avalable";
}
$this->session->setFlashdata('success', $message);
return redirect()->route('transporterListing');
}
}

View File

@ -995,5 +995,14 @@ class Inwardgateregister_model extends Model
return $results;
}
public function transporter()
{
$builder = $this->db->table('t_transporter t');
$query = $builder->select('t.*')->get();
$result = $query->getResult();
return $result;
}
}

View File

@ -168,4 +168,49 @@ class Supplier_model extends Model
}
/*SUPPLIER */
/*SUPPLIER TYPE */
/** for transporter listing */
function transporterListing()
{
$builder = $this->db->table('t_transporter as t')
->select('t.id,t.name,t_employee_details.FirstName as FirstName,t.created_on,t.isactive')
->join('tbl_users', 'tbl_users.userId = t.created_by')
->join('t_employee_details', 't_employee_details.EmpID=tbl_users.EmpID');
$query =$builder->get();
$result = $query->getResult();
// echo $this->db->getLastQuery()->getQuery();die;
return $result;
}
/** for save transporter details */
public function saveTransporter($addarr) {
$this->db->transStart();
$builder = $this->db->table('t_transporter');
$builder->insert($addarr);
$aff_row = $this->db->affectedRows();
log_message('error', 'save transporter Query: ' . $this->db->getLastQuery()->getQuery());
$this->db->transComplete();
return $aff_row;
}
/** for update transporter details */
public function updateTransporter($editarr, $id) {
$this->db->table('t_transporter')
->where('id', $id)
->update($editarr);
$aff_row = $this->db->affectedRows();
return $aff_row;
}
function deleteTransporter($id,$UpdatedBy)
{
$this->db->table('t_transporter')
->where('id', $id)
->update(['isactive' => 0,'updated_by' => $UpdatedBy ]);
$aff_row = $this->db->affectedRows();
return $aff_row;
}
}

View File

@ -782,9 +782,7 @@
<?php if($DEPCode == ADMIN || $DEPCode == HR) { ?>
<p class="menu-heading"><i class="fa fa-angle-right" aria-hidden="true"></i> HR</p>
<?php } ?>
<p class="menu-heading"><i class="fa fa-angle-right" aria-hidden="true"></i> HR</p>
<li >
<a href="<?php echo base_url(); ?>employeeListing" >
<i class="fa fa-user-circle"></i>
@ -843,6 +841,7 @@
</ul>
</li>
<?php } ?>
@ -1285,6 +1284,13 @@
</a>
</li>
<?php } ?>
<?php if ($DEPCode == ADMIN) { ?>
<li><a href="<?php echo base_url(); ?>transporterListing" >
<i class="fa fa-user-secret"></i>
<span class="nav-label">Transporter Details</span>
</a>
</li>
<?php } ?>
<?php if ($DEPCode == ADMIN && $DEPCode != SECURITY) { ?>
<li><a href="<?php echo base_url(); ?>companyview" >
@ -1410,6 +1416,11 @@
<span class="nav-label">Supplier Details</span>
</a>
</li>
<li><a href="<?php echo base_url(); ?>transporterListing" >
<i class="fa fa-user-secret"></i>
<span class="nav-label">Transporter Details</span>
</a>
</li>
</ul>
<?php
} ?>

View File

@ -23,7 +23,7 @@
$(document).ready(function() {
$("#PONO").select2();
$("#VehicleType").select2();
$("#TransporterId").select2();
$('#DriverName').autocomplete({
onSearchStart: function(query) {
@ -194,10 +194,15 @@
<!-- <span pattern="" required="true"></span> -->
</div>
<div class="col-md-3">
<label>Vechicle Type</label>
<label>Transporter Name</label>
<?php
$opt = array(""=>'Vechicle Type',"Rented"=>'Rented',"Owned"=>'Owned');
echo form_dropdown('VehicleType', $opt,set_value('VehicleType'),'id="VehicleType"' ,'class="form-control select2');
$option = array(0 => 'Transporter Name');
if (!empty($transporter)) {
foreach ($transporter as $opt) :
$option[$opt->id] = $opt->name;
endforeach;
}
echo form_dropdown('TransporterId', $option, set_value('TransporterId'), 'id="TransporterId"', 'class="form-control select2"');
?>
</div>
<div class="col-md-3">

View File

@ -0,0 +1,289 @@
<style>
.Date-filter-form {
display: flex;
align-items: center;
gap: 10px; /* Adjust the gap as needed */
}
.Date-filter-form input, .Date-filter-form button {
padding: 5px;
font-size: 14px;
}
.Date-filter-form button {
background-color: #007bff;
color: white;
border: none;
cursor: pointer;
}
.Date-filter-form button:hover {
background-color: #0056b3;
}
.icon-button {
background: none;
border: none;
cursor: pointer;
color: #007bff;
font-size: 18px;
}
.icon-button:hover {
color: #0056b3;
}
</style>
<div class="content-wrapper">
<section class="content">
<div class="box">
<div class="box-header">
<CENTER>
<h3 class="box-title"> Transporter Details</h3>
</CENTER>
</div>
<div class="container-fluid">
<div class="row">
<div class="col-xs-12 col-md-6">
<form class="Date-filter-form" id="DateRangeFilter" >
<input type="hidden" name="table" value="requisition">
<label for="fromDate">From:</label>
<input type="text" id="fromDate" name="fromDate" placeholder="Select From Date" autocomplete="off" required>
<label for="toDate">To:</label>
<input type="text" id="toDate" name="toDate" placeholder="Select To Date" autocomplete="off" required>
<button type="submit">Search</button>
<i class="fa fa-repeat" aria-hidden="true" class="icon-button" id="resetButton" title="Reset"></i>
<div class="error" id="error"></div>
</form>
</div>
<div class="col-xs-12 col-md-6 text-right">
<div class="form-group">
<a data-toggle="modal" href="#transporterwizard" data-id="0" data-name="" class="btn btn-success">Add New Transporter</a>
</div>
</div>
<div class="row">
<div class="col-xs-12">
<table id="datatable" class="table table-bordered table-hover" style="background-color:#fff;font-size:12px;">
<thead style="background-color: #ddd;">
<tr>
<th>Create Date</th>
<th>Create Time</th>
<th>Transporter ID</th>
<th>Transporter Name</th>
<th>Created By</th>
<th>Active</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<?php
if (!empty($userRecords)) {
foreach ($userRecords as $record) {
$createdat = new DateTime($record->created_on);
$date = $createdat->format('d-m-Y');
$time = $createdat->format('h:i A');
?>
<tr>
<td align="right"><?php echo $date; ?></td>
<td align="right"><?php echo $time; ?></td>
<td><?php echo $record->id ?></td>
<td><?php echo $record->name ?></td>
<td><?php echo $record->FirstName ?></td>
<td><?php
$a = '';
$a = $record->isactive == 1 ? 'ACTIVE' : 'INACTIVE';
echo $a;
?></td>
<td>
<a data-toggle="modal" href="#transporterwizard" data-id="<?php echo $record->id; ?>" data-name="<?php echo $record->name; ?>" ><i class="fa fa-pencil"></i></a>
<?php if($record->isactive == 1){ ?>
<a href="<?php echo base_url() . 'deleteTransporter?id=' . $record->id; ?>"><i class="fa fa-trash"></i>&nbsp;&nbsp;&nbsp;</a>
<?php } ?>
</td>
</tr>
<?php
}
}
?>
</tbody>
</table>
</div>
</div>
</div>
<!-- for Add and edit Modal -->
<div class="modal fade" id="transporterwizard" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-dialog">
<div class="modal-content">
<!-- Modal Header -->
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">
<span aria-hidden="true">&times;</span>
<span class="sr-only">Close</span>
</button>
<center><h4 class="modal-title" id="myModalLabel"></h4></center>
</div>
<!-- Modal Body -->
<div class="modal-body">
<form id="transporterForm" class="form-horizontal" role="form">
<div class="form-group">
<div class="row">
<div class="col-md-3 col-md-offset-2">
Transporter Name:
</div>
<div class="col-md-5">
<input type="text" name="transportername" id="transportername" class="form-control">
<input type="hidden" name="transporterid" id="transporterid" class="form-control">
</div>
</div>
</div>
</form>
</div>
<!-- Modal Footer -->
<div class="modal-footer">
<a class="btn btn-cancel" data-dismiss="modal">Cancel</a>
<a class="btn btn-success font tempClick" id="tempClick">
<span class="bold">Submit</span>
</a>
</div>
</div>
</div>
</div>
</section>
</div>
<script type="text/javascript" src="<?php echo base_url(); ?>public/assets/js/common.js" charset="utf-8"></script>
<script src="https://cdn.datatables.net/plug-ins/1.10.16/sorting/datetime-moment.js"></script>
<script>
$(document).ready(function() {
$("#transporterwizard").on("shown.bs.modal", function(e) {
var id = $(e.relatedTarget).data('id');
var name = $(e.relatedTarget).data('name');
$('#transportername').val('');
$('#transporterid').val(id);
if (id == 0) {
$('.modal-title').html("Add Transporter");
} else {
$('.modal-title').html("Edit Transporter");
$('#transportername').val(name);
}
});
$('#tempClick').click(function() {
if ($('#transportername').val() === '') {
alert('Please Enter the Transporter Name');
return;
}
var formData = {
transporterid: $('#transporterid').val(),
transportername: $('#transportername').val()
};
$.ajax({
type: 'POST',
url: "<?php echo base_url();?>fetchTransporterDetails",
data: formData,
dataType: 'json',
success: function(response) {
if (response.status) {
alert(response.message);
$('#transporterwizard').modal('hide');
location.reload();
} else {
alert(response.message);
}
},
error: function(xhr, status, error) {
alert('An error occurred: ' + error);
}
});
});
});
</script>
<script>
$(document).ready(function() {
$.fn.dataTable.ext.type.order['date-eu-pre'] = function (date) {
var dateSplit = date.split('-');
return (dateSplit[2] + dateSplit[1] + dateSplit[0]) * 1;
};
// Initialize the DataTable
var table = $('#datatable').DataTable({
"paging": true,
"lengthChange": true,
"searching": true,
"ordering": true,
"columnDefs": [{
"targets": 0,
"type": "date-eu"
}],
"aaSorting": [
[0, "desc"]
],
"info": true,
"autoWidth": true,
"pageLength": 10,
"lengthMenu": [10, 25, 50, 100],
});
// Initialize the datepickers
$("#fromDate").datepicker({
dateFormat: 'dd-mm-yy',
onSelect: function(selectedDate) {
var minDate = $(this).datepicker("getDate");
$("#toDate").datepicker("option", "minDate", minDate);
}
});
$("#toDate").datepicker({
dateFormat: 'dd-mm-yy',
onSelect: function(selectedDate) {
var maxDate = $(this).datepicker("getDate");
$("#fromDate").datepicker("option", "maxDate", maxDate);
}
});
// Reset button functionality
$("#resetButton").click(function() {
$("#fromDate").datepicker("setDate", null);
$("#toDate").datepicker("setDate", null);
$("#toDate").datepicker("option", "minDate", null);
$("#fromDate").datepicker("option", "maxDate", null);
table.draw();
});
// Date range filter
$.fn.dataTable.ext.search.push(
function(settings, data, dataIndex) {
var fromDate = $("#fromDate").datepicker("getDate");
var toDate = $("#toDate").datepicker("getDate");
var dateStr = data[0]; // Assuming the date is in the first column
// Convert dateStr to Date object
var dateParts = dateStr.split("-");
var date = new Date(dateParts[2], dateParts[1] - 1, dateParts[0]); // Convert dd-mm-yyyy to Date object
if (!fromDate || !toDate) {
return true; // No filter if dates are not selected
}
return date >= fromDate && date <= toDate;
}
);
// Handle form submission
$("#DateRangeFilter").submit(function(e) {
e.preventDefault();
table.draw();
});
});
</script>
<!-- <script src="https://cdn.datatables.net/plug-ins/1.10.11/sorting/date-eu.js"></script> -->

View File

@ -127,7 +127,6 @@ var data = suggestion.DriverMobileNumber;
}
</style>
<script type="text/javascript" src="<?php echo base_url(); ?>public/assets/Autocomplete/jquery.autocomplete.js"></script>
<div class="content-wrapper">
<section class="content"><br/>
<div class="box">
@ -285,10 +284,21 @@ var data = suggestion.DriverMobileNumber;
?>
</div>
<div class="col-md-3">
<label>Vehicle Type</label>
<?php
$opt = array(""=>'Vehicle Type',"Rented"=>'Rented',"Owned"=>'Owned');
echo form_dropdown('VehicleType', $opt,set_value('VehicleType'),'id="Vehicle_Type"' ,'class="form-control select2');
<label>Transporter Name</label>
<?php
$dropdown = '<select name="TransporterId" id="Transporter_Id" class="form-control select2">';
$dropdown .= '<option value=0>Transporter Name</option>';
if (!empty($transporter)) {
foreach ($transporter as $opt) {
$selected = set_value('TransporterId') == $opt->id ? 'selected' : '';
$disabled = $opt->isactive == 0 ? 'disabled' : '';
$label = $opt->isactive == 0 ? $opt->name . ' (Inactive)' : $opt->name;
$dropdown .= "<option value='{$opt->id}' $selected $disabled>{$label}</option>";
}
}
$dropdown .= '</select>';
echo $dropdown;
?>
</div>
<div class="col-md-3">
@ -587,18 +597,17 @@ var data = suggestion.DriverMobileNumber;
var buttonContainer = $(".buttonContainer");
var modal = $(this); // Reference to the modal itself
var invoiceDateInput = modal.find('#Invoice_Date');
var invoiceNoInput = modal.find('#Invoice_No');
var MaterialRcvdDateInput = modal.find('#MaterialRcvdDate');
var VehicleNoInput = modal.find('#Vehicle_No');
var VehicleTypeInput = modal.find('#Vehicle_Type');
var TransporterIdInput = modal.find('#Transporter_Id');
var DriverInput = modal.find('#Driver_Name');
var DriverMobileNumberInput = modal.find('#DriverMobileNumber');
var MasterFileInput = modal.find('#MasterFile');
modal.find('#MasterFileLabel').hide();
var depCode = "<?php echo $DEPCode; ?>";
// depCode != "DEP27"
if(depCode == "DEP27"){
var userRole = "<?php echo (int)$userRole; ?>";
if(userRole != 1){
if (igrstatus == "ST074") {
buttonContainer.find("#draftIGR, #generateIGR").css("display", "inline-block");
$(".a_tag_for_mrir").css("display", "block");
@ -607,6 +616,7 @@ var data = suggestion.DriverMobileNumber;
DriverMobileNumberInput.prop('readonly', false);
MaterialRcvdDateInput.prop('readonly', false);
invoiceDateInput.prop('readonly', false);
invoiceNoInput.prop('readonly', false);
} else {
buttonContainer.find("#draftIGR, #generateIGR").css("display", "none");
$(".a_tag_for_mrir").css("display", "none");
@ -615,6 +625,7 @@ var data = suggestion.DriverMobileNumber;
DriverMobileNumberInput.prop('readonly', true);
MaterialRcvdDateInput.prop('readonly', true);
invoiceDateInput.prop('readonly', true);
invoiceNoInput.prop('readonly', true);
}
}else{
$(".a_tag_for_mrir").css("display", "none");
@ -647,7 +658,7 @@ console.log(parsedData);
$('#printLink').attr('href', '#');
$('.help-block').text('');
$("#Vehicle_No").val('');
$("#Vehicle_Type").val('');
$("#Transporter_Id").val('');
$("#Driver_Name").val('');
$("#DriverMobileNumber").val('');
$("#IGRStatus").val('');
@ -686,7 +697,7 @@ console.log(parsedData);
$('#draftIGR').text(button_text_for_IGRDraft);
$("#hiddenIsOpenOrder").val(isOpenOrder);
$("#Vehicle_No").val(item.VehicleNo);
$("#Vehicle_Type").val(item.VehicleType);
$("#Transporter_Id").val(item.TransporterId);
$("#Driver_Name").val(item.DriverName);
$("#DriverMobileNumber").val(item.DriverMobileNumber);
$("#IGRStatus").val(item.IGRStatus);
@ -721,7 +732,8 @@ console.log(parsedData);
$("#ser").val(item.ServiceDescription);
i = i + 1;
if (igrstatus === "ST074") {
// userrole is system admin also know as admin (if)
if (userRole == 1) {
$("#pendingQuantityHeader").css("display", "table-cell");
trIGRHTML += '<tr>' +
@ -753,31 +765,68 @@ console.log(parsedData);
$('#QuantityAsPerInvoice' + i).attr('readonly', 'true');
}
} else {
$("#pendingQuantityHeader").css("display", "none");
trIGRHTML += '<tr>' +
'<td style="width: 50px;" align="right">' + i + '</td>' +
'<td style="width: 100px;" name="MaterialName" id="MaterialCode" onchange="test(' + i + ')">' + item.MaterialCode + '</td>' +
'<td style="width: 200px; word-wrap: break-word; word-break: break-all; white-space: normal;">' + item.MaterialName + '</td>' +
'<td style="width: 50px;" name="UOM">' + item.UOM + '</td>' +
'<td style="width: 100px;" align="right" name="Quantity">' + item.Quantity + '</td>' +
'<td style="width: 100px;" align="right" data-name="sel" >' + item.QuantityAsPerInvoice + '</td>' +
'<td style="width: 150px;">' + item.Remarks + '</td>' +
'<td style="width: 50px;"><a target="_blank" data-toggle="modal" data-target="#WeightCalculator" title="Weight Calculator" data-index="'+i+'" data-material="'+item.MaterialName+'" data-igrstatus = "'+igrstatus+'"><i class="fa fa-solid fa-truck" style="text-align: center;"></i></a> </td>' +
'<input type="hidden" id="IGRNO' + i + '" name="IGRNO' + i + '" value="' + item.IGRNO + '">' +
'<input type="hidden" id="MaterialCode' + i + '" name="MaterialCode' + i + '" value="' + item.MaterialCode + '">' +
'<input type="hidden" id="txtQuantityAsPerInvoice' + i + '" name="txtQuantityAsPerInvoice' + i + '" value="' + item.QuantityAsPerInvoice + '">' +
'<input type="hidden" id="txtOrderedQuantity' + i + '" name="txtOrderedQuantity' + i + '" value="' + item.Quantity + '">' +
'<input type="hidden" id="txtGrossWeight' + i + '" name="txtGrossWeight' + i + '" value="' + item.GrossWeight + '">' +
'<input type="hidden" id="txtGrossWeightDate' + i + '" name="txtGrossWeightDate' + i + '" value="' + item.GrossWeightDate + '">' +
'<input type="hidden" id="txtTareWeight' + i + '" name="txtTareWeight' + i + '" value="' + item.TareWeight + '">' +
'<input type="hidden" id="txtTareWeightDate' + i + '" name="txtTareWeightDate' + i + '" value="' + item.TareWeightDate + '">' +
'<input type="hidden" id="txtNetWeight' + i + '" name="txtNetWeight' + i + '"value="' + item.NetWeight + '">' +
'<input type="hidden" id="txtRemarks' + i + '" name="txtRemarks' + i + '"value="' + item.Remarks + '">' +
'<input type="hidden" id="txtIGRLineItem' + i + '" name="txtIGRLineItem' + i + '"value="' + item.IGRItemNo + '">' +
'<input type="file" id="txtWeightFile' + i + '" name="txtWeightFile' + i + '"value="' + item.WeightFile + '">' +
'<input type="hidden" id="txtWeightFileName' + i + '" name="txtWeightFileName' + i + '"value="' + item.WeightFile + '">' +
'</tr>';
}
// userrole is security based on status we show and here (else if)
else if (userRole !== 1) {
if(igrstatus === "ST074"){
$("#pendingQuantityHeader").css("display", "table-cell");
trIGRHTML += '<tr>' +
'<td style="width: 50px;" align="right">' + i + '</td>' +
'<td style="width: 100px;" name="MaterialName" onchange="test(' + i + ')">' + item.MaterialCode + '</td>' +
'<td style="width: 200px; word-wrap: break-word; word-break: break-all; white-space: normal;">' + item.MaterialName + '</td>' +
'<td style="width: 50px;" name="UOM">' + item.UOM + '</td>' +
'<td style="width: 100px;" align="right" id="Quantity' + i + '" name="Quantity">' + parseInt(item.Quantity) + '</td>' +
'<td style="width: 100px;" align="right" data-name="sel" ><input type="text" onchange="validateReceivedQuantity(' + i + ','+isOpenOrder+')"id="QuantityAsPerInvoice' + i + '" name="QuantityAsPerInvoice' + i + '" value="' + parseInt(item.QuantityAsPerInvoice) + '" onkeypress="return isNumberKey(event);" style="width: 75px;"></td>' +
'<td style="width: 100px;" name="PendingQuantity' + i + '" id="PendingQuantity' + i + '">' + ((isOpenOrder) ? 0 : parseInt(item.Quantity - item.QuantityAsPerInvoice)) + '</td>' +
'<td style="width: 150px;"><input type="text" id="Remark' + i + '" name="Remark' + i + '" class="form" onchange="SetRemarks(' + i + ')" style="width: 75px;"> </td>' +
'<td style="width: 50px;"><a target="_blank" data-toggle="modal" data-target="#WeightCalculator" title="Weight Calculator" data-index="'+i+'" data-material="'+item.MaterialName+'" data-igrstatus = "'+igrstatus+'"><i class="fa fa-solid fa-truck" style="text-align: center;"></i></a> </td>' +
'<input type="hidden" id="IGRNO' + i + '" name="IGRNO' + i + '" value="' + item.IGRNO + '">' +
'<input type="hidden" id="MaterialCode' + i + '" name="MaterialCode' + i + '" value="' + item.MaterialCode + '">' +
'<input type="hidden" id="txtQuantityAsPerInvoice' + i + '" name="txtQuantityAsPerInvoice' + i + '" value="' + item.QuantityAsPerInvoice + '">' +
'<input type="hidden" id="txtOrderedQuantity' + i + '" name="txtOrderedQuantity' + i + '" value="' + item.Quantity + '">' +
'<input type="hidden" id="txtGrossWeight' + i + '" name="txtGrossWeight' + i + '" value="' + item.GrossWeight + '">' +
'<input type="hidden" id="txtGrossWeightDate' + i + '" name="txtGrossWeightDate' + i + '" value="' + item.GrossWeightDate + '">' +
'<input type="hidden" id="txtTareWeight' + i + '" name="txtTareWeight' + i + '" value="' + item.TareWeight + '">' +
'<input type="hidden" id="txtTareWeightDate' + i + '" name="txtTareWeightDate' + i + '" value="' + item.TareWeightDate + '">' +
'<input type="hidden" id="txtNetWeight' + i + '" name="txtNetWeight' + i + '"value="' + item.NetWeight + '">' +
'<input type="hidden" id="txtRemarks' + i + '" name="txtRemarks' + i + '"value="' + item.Remarks + '">' +
'<input type="hidden" id="txtIGRLineItem' + i + '" name="txtIGRLineItem' + i + '"value="' + item.IGRItemNo + '">' +
'<input type="file" id="txtWeightFile' + i + '" name="txtWeightFile' + i + '"value="' + item.WeightFile + '" style="display:none;">' +
'<input type="hidden" id="txtWeightFileName' + i + '" name="txtWeightFileName' + i + '"value="' + item.WeightFile + '">' +
'</tr>';
if ((item.Quantity - item.QuantityAsPerInvoice) == 0.00) {
$('#QuantityAsPerInvoice' + i).attr('readonly', 'true');
}
}else{
$("#pendingQuantityHeader").css("display", "none");
trIGRHTML += '<tr>' +
'<td style="width: 50px;" align="right">' + i + '</td>' +
'<td style="width: 100px;" name="MaterialName" id="MaterialCode" onchange="test(' + i + ')">' + item.MaterialCode + '</td>' +
'<td style="width: 200px; word-wrap: break-word; word-break: break-all; white-space: normal;">' + item.MaterialName + '</td>' +
'<td style="width: 50px;" name="UOM">' + item.UOM + '</td>' +
'<td style="width: 100px;" align="right" name="Quantity">' + item.Quantity + '</td>' +
'<td style="width: 100px;" align="right" data-name="sel" >' + item.QuantityAsPerInvoice + '</td>' +
'<td style="width: 150px;">' + item.Remarks + '</td>' +
'<td style="width: 50px;"><a target="_blank" data-toggle="modal" data-target="#WeightCalculator" title="Weight Calculator" data-index="'+i+'" data-material="'+item.MaterialName+'" data-igrstatus = "'+igrstatus+'"><i class="fa fa-solid fa-truck" style="text-align: center;"></i></a> </td>' +
'<input type="hidden" id="IGRNO' + i + '" name="IGRNO' + i + '" value="' + item.IGRNO + '">' +
'<input type="hidden" id="MaterialCode' + i + '" name="MaterialCode' + i + '" value="' + item.MaterialCode + '">' +
'<input type="hidden" id="txtQuantityAsPerInvoice' + i + '" name="txtQuantityAsPerInvoice' + i + '" value="' + item.QuantityAsPerInvoice + '">' +
'<input type="hidden" id="txtOrderedQuantity' + i + '" name="txtOrderedQuantity' + i + '" value="' + item.Quantity + '">' +
'<input type="hidden" id="txtGrossWeight' + i + '" name="txtGrossWeight' + i + '" value="' + item.GrossWeight + '">' +
'<input type="hidden" id="txtGrossWeightDate' + i + '" name="txtGrossWeightDate' + i + '" value="' + item.GrossWeightDate + '">' +
'<input type="hidden" id="txtTareWeight' + i + '" name="txtTareWeight' + i + '" value="' + item.TareWeight + '">' +
'<input type="hidden" id="txtTareWeightDate' + i + '" name="txtTareWeightDate' + i + '" value="' + item.TareWeightDate + '">' +
'<input type="hidden" id="txtNetWeight' + i + '" name="txtNetWeight' + i + '"value="' + item.NetWeight + '">' +
'<input type="hidden" id="txtRemarks' + i + '" name="txtRemarks' + i + '"value="' + item.Remarks + '">' +
'<input type="hidden" id="txtIGRLineItem' + i + '" name="txtIGRLineItem' + i + '"value="' + item.IGRItemNo + '">' +
'<input type="file" id="txtWeightFile' + i + '" name="txtWeightFile' + i + '"value="' + item.WeightFile + '">' +
'<input type="hidden" id="txtWeightFileName' + i + '" name="txtWeightFileName' + i + '"value="' + item.WeightFile + '">' +
'</tr>';
}
}
}
});
@ -841,9 +890,10 @@ console.log(parsedData);
formData.append('igr', igrno);
formData.append('po', pono);
formData.append('mrc', $("#MaterialRcvdDate").val());
formData.append('invno', $("#Invoice_No").val());
formData.append('invdate', $("#Invoice_Date").val());
formData.append('vehicle_no', $('#Vehicle_No').val());
formData.append('vehicle_type', $('#Vehicle_Type').val());
formData.append('Transporter_Id', $('#Transporter_Id').val());
formData.append('driver', $('#Driver_Name').val());
formData.append('driver_mobile', $('#DriverMobileNumber').val());
formData.append('status', status);
@ -900,9 +950,10 @@ console.log(parsedData);
formData.append('igr', igrno);
formData.append('po', pono);
formData.append('mrc', $("#MaterialRcvdDate").val());
formData.append('invno', $("#Invoice_No").val());
formData.append('invdate', $("#Invoice_Date").val());
formData.append('vehicle_no', $('#Vehicle_No').val());
formData.append('vehicle_type', $('#Vehicle_Type').val());
formData.append('Transporter_Id', $('#Transporter_Id').val());
formData.append('driver', $('#Driver_Name').val());
formData.append('driver_mobile', $('#DriverMobileNumber').val());
formData.append('status', status);
@ -1056,7 +1107,6 @@ function constructSentence(record) {
formData.append('param1', param1);
formData.append('param2', param2);
$('.content').loader('show');
$.ajax({
data: formData,
@ -1159,7 +1209,6 @@ $("#Fileshow").on("shown.bs.modal", function(e) {
$("#tblefile").append(trFileHTML);
}
});
}
});