www/js/prod_divide.js

changeset 754
30abc8024afe
parent 722
c4457e10d968
equal deleted inserted replaced
753:a59ecd6d72f4 754:30abc8024afe
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 });

mercurial