273 { name: 'prop4_type', type: 'int' }, |
273 { name: 'prop4_type', type: 'int' }, |
274 { name: 'prop4_volume', type: 'float' }, |
274 { name: 'prop4_volume', type: 'float' }, |
275 { name: 'divide_type', type: 'int' }, |
275 { name: 'divide_type', type: 'int' }, |
276 { name: 'divide_size', type: 'float' }, |
276 { name: 'divide_size', type: 'float' }, |
277 { name: 'divide_parts', type: 'int' }, |
277 { name: 'divide_parts', type: 'int' }, |
278 { name: 'divide_from', type: 'string' }, |
|
279 { name: 'fermentables', type: 'string' }, |
278 { name: 'fermentables', type: 'string' }, |
280 { name: 'hops', type: 'string' }, |
279 { name: 'hops', type: 'string' }, |
281 { name: 'miscs', type: 'string' }, |
280 { name: 'miscs', type: 'string' }, |
282 { name: 'yeasts', type: 'string' }, |
281 { name: 'yeasts', type: 'string' }, |
283 { name: 'mashs', type: 'string' } |
282 { name: 'mashs', type: 'string' } |
306 }, |
305 }, |
307 beforeLoadComplete: function(records) { |
306 beforeLoadComplete: function(records) { |
308 $('#jqxLoader').jqxLoader('open'); |
307 $('#jqxLoader').jqxLoader('open'); |
309 } |
308 } |
310 }); |
309 }); |
|
310 |
|
311 durl = 'includes/db_divides.php', |
|
312 |
|
313 // Prepare the data |
|
314 dividerec = { |
|
315 datatype: 'json', |
|
316 cache: false, |
|
317 datafields: [ |
|
318 // From prod_main |
|
319 { name: 'record', type: 'number' }, |
|
320 { name: 'divide_from', type: 'string' }, |
|
321 { name: 'divide_type', type: 'int' }, |
|
322 { name: 'divide_size', type: 'float' }, |
|
323 { name: 'name', type: 'string' }, |
|
324 { name: 'code', type: 'string' } |
|
325 ], |
|
326 id: 'record', |
|
327 url: durl + '?record=' + my_record |
|
328 }; |
311 |
329 |
312 var editSplit = function(data) { |
330 var editSplit = function(data) { |
313 var splitSource = { |
331 var splitSource = { |
314 datatype: 'local', |
332 datatype: 'local', |
315 cache: false, |
333 cache: false, |
455 window.location.href = my_return; |
473 window.location.href = my_return; |
456 }); |
474 }); |
457 |
475 |
458 $('#Save').jqxButton({ template: 'success', width: '80px', theme: theme }); |
476 $('#Save').jqxButton({ template: 'success', width: '80px', theme: theme }); |
459 $('#Save').bind('click', function() { |
477 $('#Save').bind('click', function() { |
460 var rows, row, i, batch; |
478 var rows, row, i, div, data; |
461 if (leftover != available) { |
479 if (leftover != available) { |
462 console.log('Save and there are splits'); |
480 console.log('Save and there are splits'); |
|
481 |
|
482 // Record 0, the master data |
|
483 div = {}; |
|
484 div.divide_from = dataRecord.uuid; |
|
485 div.divide_type = dataRecord.divide_type; |
|
486 div.divide_size = leftover; |
|
487 div.divide_part = 0; |
|
488 div.name = dataRecord.name; |
|
489 div.code = dataRecord.code; |
|
490 data = 'insert=true&' + $.param(div); |
|
491 $.ajax({ |
|
492 dataType: 'json', |
|
493 url: durl, |
|
494 cache: false, |
|
495 data: data, |
|
496 type: "POST", |
|
497 success: function (data, status, xhr) { |
|
498 console.log('insert divides: 0'); |
|
499 }, |
|
500 error: function(jqXHR, textStatus, errorThrown) { |
|
501 console.log('insert divides: ' + textStatus); |
|
502 } |
|
503 }); |
463 |
504 |
464 rows = $('#splitGrid').jqxGrid('getrows'); |
505 rows = $('#splitGrid').jqxGrid('getrows'); |
465 for (i = 0; i < rows.length; i++) { |
506 for (i = 0; i < rows.length; i++) { |
466 row = rows[i]; |
507 row = rows[i]; |
467 console.log('split ' + i); |
508 console.log('split ' + i); |
468 // batch = dataRecord; |
509 div = {}; |
469 // batch.divide_from = batch.uuid; |
510 div.divide_from = dataRecord.uuid; |
470 // batch.divide_size = row.split_size; |
511 div.divide_type = dataRecord.divide_type; |
471 // batch.divide_parts = rows.length; |
512 div.divide_size = row.split_size; |
472 // delete batch['uuid']; |
513 div.divide_part = i + 1; |
473 // batch.record = -1; |
514 div.name = row.split_name; |
474 // batch.name = row.split_name; |
515 div.code = row.split_code; |
475 // batch.code = row.split_code; |
516 data = 'insert=true&' + $.param(div); |
|
517 $.ajax({ |
|
518 dataType: 'json', |
|
519 url: durl, |
|
520 cache: false, |
|
521 data: data, |
|
522 type: "POST", |
|
523 success: function (data, status, xhr) { |
|
524 console.log('insert divides: ' + i); |
|
525 }, |
|
526 error: function(jqXHR, textStatus, errorThrown) { |
|
527 console.log('insert divides: ' + textStatus); |
|
528 } |
|
529 }); |
476 } |
530 } |
|
531 |
|
532 div = {}; |
|
533 div.record = dataRecord.record; |
|
534 div.divide_type = dataRecord.divide_type; |
|
535 div.divide_size = leftover; |
|
536 div.divide_parts = i; |
|
537 data = 'splitit=true&' + $.param(div); |
|
538 $.ajax({ |
|
539 dataType: 'json', |
|
540 url: url, |
|
541 cache: false, |
|
542 data: data, |
|
543 type: "POST", |
|
544 success: function (data, status, xhr) { |
|
545 console.log('updated products'); |
|
546 }, |
|
547 error: function(jqXHR, textStatus, errorThrown) { |
|
548 console.log('updated products: ' + textStatus); |
|
549 } |
|
550 }); |
477 } |
551 } |
478 // saveRecord(1); |
552 window.location.href = my_return; |
479 }); |
553 }); |
480 |
554 |
481 }); |
555 }); |