gas stock module changes
This commit is contained in:
parent
088157dd4d
commit
439909fda0
@ -327,6 +327,48 @@ class StockController extends BaseController
|
|||||||
|
|
||||||
public function updateBagStockDetails(){
|
public function updateBagStockDetails(){
|
||||||
|
|
||||||
|
$postData = $this->request->getPost();
|
||||||
|
|
||||||
|
$updateBagStockDetailsData = json_decode($postData['updateBagStockDetails'], true);
|
||||||
|
|
||||||
|
foreach($updateBagStockDetailsData as $data){
|
||||||
|
|
||||||
|
$date = $data['date'];
|
||||||
|
$materialCode = $data['materialCode'];
|
||||||
|
|
||||||
|
|
||||||
|
$dbData= [
|
||||||
|
'date' =>$data['date'],
|
||||||
|
'materialCode' =>$data['materialCode'],
|
||||||
|
'customer' =>$data['customer'],
|
||||||
|
'opening' =>$data['opening'],
|
||||||
|
'receipt' =>$data['receipt'],
|
||||||
|
'used' =>$data['used'],
|
||||||
|
'balanceStock' =>$data['balanceStock'],
|
||||||
|
];
|
||||||
|
|
||||||
|
$resultExists=$this->bagStockDetails_model
|
||||||
|
->where('date',$date)
|
||||||
|
->where('materialCode',$materialCode)
|
||||||
|
->first();
|
||||||
|
|
||||||
|
|
||||||
|
if(!empty($resultExists)){
|
||||||
|
|
||||||
|
$updated=$this->bagStockDetails_model
|
||||||
|
->where('date',$date)
|
||||||
|
->where('materialCode',$materialCode)
|
||||||
|
->set($dbData)
|
||||||
|
->update();
|
||||||
|
|
||||||
|
}else{
|
||||||
|
$inserted = $this->bagStockDetails_model->insert($dbData);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "Data Saved Successfully";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@ -267,22 +267,43 @@
|
|||||||
|
|
||||||
<?php foreach($bagStockDetails as $bagStockIndex => $bagStock){ ?>
|
<?php foreach($bagStockDetails as $bagStockIndex => $bagStock){ ?>
|
||||||
<?php if ($bagStockIndex === 0): ?>
|
<?php if ($bagStockIndex === 0): ?>
|
||||||
<td class="celda_normal"><?= $bagStock['date'] ?></td>
|
<td class="celda_normal">
|
||||||
|
<?= $bagStock['date'] ?>
|
||||||
|
</td>
|
||||||
<?php endif; ?>
|
<?php endif; ?>
|
||||||
|
|
||||||
<td style="display:none"><?= $bagStock['date']?></td>
|
<td style="display:none">
|
||||||
<td style="display:none"><?= $bagStock['materialCode']?></td>
|
<?= $bagStock['date']?>
|
||||||
|
</td>
|
||||||
|
<td style="display:none"
|
||||||
|
data-id="<?=$bagStock['date']?> <?=$bagStock['materialCode']?>"
|
||||||
|
class="materialCode" ><?= $bagStock['materialCode']?>
|
||||||
|
</td>
|
||||||
|
|
||||||
<td style="display:none"><?= $bagStock['customer']?></td>
|
<td style="display:none"><?= $bagStock['customer']?></td>
|
||||||
<td class="celda_normal "
|
|
||||||
data-id="<?= $bagStock['date']?> <?= $bagStock['materialCode']?>"
|
<td class="celda_normal openingStock"
|
||||||
|
data-id="<?=$bagStock['date']?> <?=$bagStock['materialCode']?>"
|
||||||
oninput="openingStockChange(this)"
|
oninput="openingStockChange(this)"
|
||||||
contenteditable="true"><?= $bagStock['opening']?></td>
|
contenteditable="true"><?= $bagStock['opening']?>
|
||||||
<td class="celda_normal"><?= $bagStock['receipt']?></td>
|
</td>
|
||||||
<td class="celda_normal"
|
|
||||||
data-id="<?= $bagStock['date']?> <?= $bagStock['materialCode']?>"
|
<td class="celda_normal receiptStock"
|
||||||
|
data-id="<?=$bagStock['date']?> <?=$bagStock['materialCode']?>">
|
||||||
|
<?= $bagStock['receipt']?>
|
||||||
|
</td>
|
||||||
|
|
||||||
|
<td class="celda_normal usedStock"
|
||||||
|
data-id="<?=$bagStock['date']?> <?=$bagStock['materialCode']?>"
|
||||||
oninput="usedStockChange(this)"
|
oninput="usedStockChange(this)"
|
||||||
contenteditable="true"><?= $bagStock['used']?></td>
|
contenteditable="true"><?= $bagStock['used']?>
|
||||||
<td class="celda_normal"><?= $bagStock['balanceStock']?></td>
|
</td>
|
||||||
|
|
||||||
|
<td class="celda_normal balanceStock"
|
||||||
|
data-id="<?=$bagStock['date']?> <?=$bagStock['materialCode']?>">
|
||||||
|
<?= $bagStock['balanceStock']?>
|
||||||
|
</td>
|
||||||
|
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
</tr>
|
</tr>
|
||||||
|
|
||||||
@ -330,6 +351,8 @@
|
|||||||
|
|
||||||
var updateBagStockDetails = tableToJson();
|
var updateBagStockDetails = tableToJson();
|
||||||
|
|
||||||
|
alert('Updation may take a while, And we appreciate your patience..!!');
|
||||||
|
|
||||||
$('#loader').show();
|
$('#loader').show();
|
||||||
$.ajax({
|
$.ajax({
|
||||||
data: {
|
data: {
|
||||||
@ -341,9 +364,8 @@
|
|||||||
success: function (data) {
|
success: function (data) {
|
||||||
if (data) {
|
if (data) {
|
||||||
$('#loader').hide();
|
$('#loader').hide();
|
||||||
|
console.log(data);
|
||||||
alert(data);
|
alert(data);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
@ -382,7 +404,7 @@
|
|||||||
for (let i = 1; i < rowCells.length; i += 7) {
|
for (let i = 1; i < rowCells.length; i += 7) {
|
||||||
const rowData = {
|
const rowData = {
|
||||||
date: rowCells.eq(i).text().trim(),
|
date: rowCells.eq(i).text().trim(),
|
||||||
material: rowCells.eq(i+1).text().trim(),
|
materialCode: rowCells.eq(i+1).text().trim(),
|
||||||
customer: rowCells.eq(i+2).text().trim(),
|
customer: rowCells.eq(i+2).text().trim(),
|
||||||
opening: rowCells.eq(i+3).text().trim(),
|
opening: rowCells.eq(i+3).text().trim(),
|
||||||
receipt: rowCells.eq(i+4).text().trim(),
|
receipt: rowCells.eq(i+4).text().trim(),
|
||||||
@ -404,58 +426,89 @@
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
function openingStockChange(tdElement) {
|
function openingStockChange(tdElement) {
|
||||||
let dataId = tdElement.getAttribute('data-id').split(' ');
|
|
||||||
let date=dataId[0];
|
|
||||||
let materialCode= dataId[1];
|
|
||||||
let changedField = "openingStock";
|
|
||||||
let changedFieldValue = tdElement.innerText;
|
|
||||||
let currentBalanceStock=calculateCurrentBalanceStock(changedField,changedFieldValue);
|
|
||||||
|
|
||||||
const table = $('#bagStockDetailsTableId');
|
try{
|
||||||
|
let dataId = tdElement.getAttribute('data-id');
|
||||||
|
let [date,materialCode] = tdElement.getAttribute('data-id').split(' ');
|
||||||
|
let openingStock = tdElement.innerText;
|
||||||
|
let usedStock = document.querySelector(`td.usedStock[data-id="${dataId}"]`).innerText;
|
||||||
|
let receiptStock = document.querySelector(`td.receiptStock[data-id="${dataId}"]`).innerText;
|
||||||
|
let currentBalanceStock = (Number(openingStock) + Number(receiptStock)) - Number(usedStock);
|
||||||
|
document.querySelector(`td.balanceStock[data-id="${dataId}"]`).innerText=currentBalanceStock;
|
||||||
|
|
||||||
|
updateStockValue( date,materialCode,currentBalanceStock )
|
||||||
|
|
||||||
|
|
||||||
|
} catch(error){
|
||||||
|
|
||||||
|
console.error("There is an error updating stock ..!!" + error);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function usedStockChange(tdElement) {
|
||||||
|
|
||||||
|
try {
|
||||||
|
|
||||||
|
let dataId = tdElement.getAttribute('data-id');
|
||||||
|
let [date,materialCode] = tdElement.getAttribute('data-id').split(' ');
|
||||||
|
let openingStock = document.querySelector(`td.openingStock[data-id="${dataId}"]`).innerText;
|
||||||
|
let receiptStock = document.querySelector(`td.receiptStock[data-id="${dataId}"]`).innerText;
|
||||||
|
let usedStock = tdElement.innerText;
|
||||||
|
let currentBalanceStock = ( Number(openingStock) + Number(receiptStock) ) - Number(usedStock);
|
||||||
|
document.querySelector(`td.balanceStock[data-id="${dataId}"]`).innerText=currentBalanceStock;
|
||||||
|
|
||||||
|
updateStockValue( date,materialCode,currentBalanceStock )
|
||||||
|
|
||||||
|
|
||||||
|
} catch (error) {
|
||||||
|
|
||||||
|
console.error("There is an error updating stock ..!!" + error);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
|
||||||
|
function updateStockValue( date, materialCode, currentBalanceStock ){
|
||||||
|
|
||||||
|
const table = $('#bagStockDetailsTableId');
|
||||||
const rows = [];
|
const rows = [];
|
||||||
|
|
||||||
|
|
||||||
table.find('tbody tr').each(function() {
|
table.find('tbody tr').each(function() {
|
||||||
const rowCells = $(this).find('td');
|
const rowCells = $(this).find('td');
|
||||||
const otherDate = rowCells.eq(0).text().trim();
|
const otherDate = rowCells.eq(0).text().trim();
|
||||||
|
|
||||||
|
|
||||||
if( new Date(new Date(otherDate)) > new Date(date)){
|
if( new Date(otherDate) > new Date(date) ){ //other records present after it
|
||||||
console.log( new Date(otherDate));
|
|
||||||
console.log( new Date(date));
|
/**this data-id ,openingStock ,used stock , current Balance Stock
|
||||||
|
is for changing subsequent dates not the earlier one **/
|
||||||
|
|
||||||
|
let dataId = `${otherDate} ${materialCode}`;
|
||||||
|
|
||||||
|
document.querySelector(`td.openingStock[data-id="${dataId}"]`).innerText=currentBalanceStock;
|
||||||
|
|
||||||
|
let usedStock = document.querySelector(`td.usedStock[data-id="${dataId}"]`).innerText;
|
||||||
|
|
||||||
|
let receiptStock = document.querySelector(`td.receiptStock[data-id="${dataId}"]`).innerText;
|
||||||
|
|
||||||
|
currentBalanceStock = (Number(currentBalanceStock) + Number(receiptStock)) - Number(usedStock);
|
||||||
|
|
||||||
|
document.querySelector(`td.balanceStock[data-id="${dataId}"]`).innerText=currentBalanceStock;
|
||||||
|
|
||||||
|
// console.log( 'other date' , new Date(otherDate));
|
||||||
|
// console.log('new balance stock' , currentBalanceStock)
|
||||||
|
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
//find balance stock for this row first and update the balance stock for next rows
|
|
||||||
|
|
||||||
console.log('Date:', date);
|
|
||||||
console.log('materialCode:', materialCode);
|
|
||||||
console.log('changedField:', changedField);
|
|
||||||
console.log('changedFieldValue', tdElement.innerText); // Log the cell's current content
|
|
||||||
}
|
|
||||||
|
|
||||||
function usedStockChange(tdElement) {
|
|
||||||
let dataId = tdElement.getAttribute('data-id').split(' ');
|
|
||||||
let date=dataId[0];
|
|
||||||
let materialCode= dataId[1];
|
|
||||||
let changedField = "usedStock";
|
|
||||||
let changedFieldValue = tdElement.innerText;
|
|
||||||
let newBalanceStock=calculateCurrentBalanceStock(changedField,changedFieldValue);
|
|
||||||
|
|
||||||
//find balance stock for this row first and update the balance stock for next rows
|
|
||||||
|
|
||||||
console.log('Date:', date);
|
|
||||||
console.log('materialCode:', materialCode);
|
|
||||||
console.log('changedField:', changedField);
|
|
||||||
console.log('changedFieldValue', tdElement.innerText); // Log the cell's current content
|
|
||||||
}
|
}
|
||||||
</script>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
function calculateCurrentBalanceStock(changedField,changedFieldValue){
|
|
||||||
return
|
|
||||||
}
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user