37 function calcLeftover() { |
37 function calcLeftover() { |
38 rows = $('#splitGrid').jqxGrid('getrows'); |
38 rows = $('#splitGrid').jqxGrid('getrows'); |
39 leftover = Round(available, 1); |
39 leftover = Round(available, 1); |
40 for (i = 0; i < rows.length; i++) { |
40 for (i = 0; i < rows.length; i++) { |
41 row = rows[i]; |
41 row = rows[i]; |
42 leftover -= row.split_size; |
42 leftover = Round(leftover - row.split_size, 1); |
43 console.log('i:' + i + ' split_size:' + row.split_size); |
43 console.log('i:' + i + ' split_size:' + row.split_size); |
44 } |
44 } |
45 $('#leftover').val(leftover); |
45 $('#leftover').val(leftover); |
46 console.log('calcLeftover():' + leftover); |
46 console.log('calcLeftover():' + leftover); |
47 } |
47 } |
296 $('#name').val(dataRecord.name); |
296 $('#name').val(dataRecord.name); |
297 $('#code').val(dataRecord.code); |
297 $('#code').val(dataRecord.code); |
298 $('#stage').val(StageData[dataRecord.stage].nl); |
298 $('#stage').val(StageData[dataRecord.stage].nl); |
299 // Disable stages that are already done. |
299 // Disable stages that are already done. |
300 for (i = 0; i < SplitData.length; i++) { |
300 for (i = 0; i < SplitData.length; i++) { |
301 console.log('i:' + i + ' ok:' + SplitData[i].ok + ' stage:' + dataRecord.stage); |
|
302 if (SplitData[i].ok < dataRecord.stage) |
301 if (SplitData[i].ok < dataRecord.stage) |
303 $('#divide_type').jqxDropDownList('disableAt', i); |
302 $('#divide_type').jqxDropDownList('disableAt', i); |
304 } |
303 } |
305 }, |
304 }, |
306 loadError: function(jqXHR, status, error) { |
305 loadError: function(jqXHR, status, error) { |
361 var rowscount, id, row; |
360 var rowscount, id, row; |
362 rowscount = $('#splitGrid').jqxGrid('getdatainformation').rowscount; |
361 rowscount = $('#splitGrid').jqxGrid('getdatainformation').rowscount; |
363 id = $('#splitGrid').jqxGrid('getrowid', rowscount - 1); |
362 id = $('#splitGrid').jqxGrid('getrowid', rowscount - 1); |
364 // First, give back this batch volume. |
363 // First, give back this batch volume. |
365 row = $('#splitGrid').jqxGrid('getrowdata', id); |
364 row = $('#splitGrid').jqxGrid('getrowdata', id); |
366 leftover += row.split_size; |
365 leftover = Round(leftover + row.split_size, 1); |
367 if (leftover > available) |
366 if (leftover > available) |
368 leftover = available; |
367 leftover = available; |
369 $('#leftover').val(leftover); |
368 $('#leftover').val(leftover); |
370 // Then delete the row. |
369 // Then delete the row. |
371 $('#splitGrid').jqxGrid('deleterow', id); |
370 $('#splitGrid').jqxGrid('deleterow', id); |
438 case 6: |
437 case 6: |
439 available = dataRecord.package_volume; |
438 available = dataRecord.package_volume; |
440 break; |
439 break; |
441 } |
440 } |
442 leftover = available; |
441 leftover = available; |
443 // minvolume = Round(0.1 * available, 1); /* What was the use for this ?? */ |
|
444 console.log('divide_type:' + index + ' available:' + available); |
442 console.log('divide_type:' + index + ' available:' + available); |
445 $('#available').val(available); |
443 $('#available').val(available); |
446 $('#leftover').val(leftover); |
444 $('#leftover').val(leftover); |
447 if (index != 0) { |
445 if (index != 0) { |
448 $('#saddrowbutton').jqxButton({ disabled: false }); |
446 $('#saddrowbutton').jqxButton({ disabled: false }); |
457 }); |
455 }); |
458 |
456 |
459 $('#Save').jqxButton({ template: 'success', width: '80px', theme: theme }); |
457 $('#Save').jqxButton({ template: 'success', width: '80px', theme: theme }); |
460 $('#Save').bind('click', function() { |
458 $('#Save').bind('click', function() { |
461 var rows, row, i, div, data; |
459 var rows, row, i, div, data; |
462 if (leftover != available) { |
460 if (! leftover) { |
|
461 console.log('Save and no volume left'); |
|
462 alert('Fout, er is geen volume over in de hoofd batch.'); |
|
463 } else if (leftover != available) { |
463 console.log('Save and there are splits'); |
464 console.log('Save and there are splits'); |
464 |
465 |
465 // Send all the info to the database. The server handles the splitting. |
466 // Send all the info to the database. The server handles the splitting. |
466 var divide_data = new Array(); |
467 var divide_data = new Array(); |
467 row = {}; |
468 row = {}; |
496 dataType: 'json', |
497 dataType: 'json', |
497 url: 'includes/db_divides.php', |
498 url: 'includes/db_divides.php', |
498 cache: false, |
499 cache: false, |
499 data: data, |
500 data: data, |
500 type: 'POST', |
501 type: 'POST', |
501 success: function(data, status, xhr) { |
502 success: function(data) { |
502 console.log('insert divides: success'); |
503 if (data.error) { |
|
504 console.log('insert divides: error ' + data.msg); |
|
505 alert('Fout: ' + data.msg); |
|
506 } else { |
|
507 console.log('insert divides: success'); |
|
508 } |
503 window.location.href = my_return; |
509 window.location.href = my_return; |
504 }, |
510 }, |
505 error: function(jqXHR, textStatus, errorThrown) { |
511 error: function(jqXHR, textStatus, errorThrown) { |
506 console.log('insert divides: ' + textStatus); |
512 console.log('insert divides: ' + textStatus); |
507 } |
513 } |
508 }); |
514 }); |
509 |
515 } // if (leftover != available) |
510 } |
|
511 }); |
516 }); |
512 }); |
517 }); |