Advertisement
NikolayPaskulov

Untitled

Nov 11th, 2014
185
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.49 KB | None | 0 0
  1. var cells = [],
  2. purchFooter = [],
  3. isPurchRdy = false,
  4. output = [];
  5.  
  6. function startPokupki(fromDate, toDate) {
  7. var showReference = document.getElementById('show-reference'),
  8. firstDateInput = document.getElementById('firstDate'),
  9. table = document.getElementById('table'),
  10. danPer = document.getElementById('DanPer'),
  11. secDateInput = document.getElementById('secDate');
  12.  
  13. danPer.innerHTML = secDateInput.value.split('-').reverse().join('').slice(0, 6);
  14.  
  15. sendRequestToServer(['documents', 'ЛЕЙДИ СОФИЯ АД', fromDate, toDate, '', 'forward', '{"doc":"+ФЕ"}', 'false']);
  16.  
  17. function sendRequestToServer(arr) {
  18. var request = new XMLHttpRequest();
  19. request.onreadystatechange = function () {
  20. if (request.readyState == 4 && request.status == 200) {
  21. var wanted = JSON.parse(request.responseText);
  22. wanted.sort(function (a, b) { return a.date - b.date });
  23. fillArray(wanted);
  24. }
  25. }
  26. request.open("POST", "http://192.168.1.184:8000/pm", true);
  27. request.send(JSON.stringify(arr));
  28. }
  29.  
  30. function fillArray(arr) {
  31. var strArray = [],
  32. footerFullSum = document.getElementById('footerFullSum'),
  33.  
  34. purchFooter = [];
  35. output = [];
  36. for (var i = 0; i < arr.length; i++) {
  37. var client = arr[i].partner.slice(arr[i].partner.lastIndexOf(':') + 1),
  38. date = arr[i].date.slice(6, 8) + '/' + arr[i].date.slice(4, 6) + '/' + arr[i].date.slice(0, 4),
  39. vat = Number(arr[i].vat).toFixed(2) || '&nbsp;',
  40. sumWithoutVat = ((Number(arr[i].sum) - Number(arr[i].vat)).toFixed(2)) || '&nbsp;',
  41. type = arr[i].type;
  42.  
  43. cells[i] = [];
  44. cells[i][0] = i + 1;
  45. cells[i][1] = '9999';
  46. cells[i][2] = (arr[i].НОММД && arr[i].НОММД != 0 && arr[i].НОММД != '') ? arr[i].НОММД : arr[i].ВИДДОК;
  47. cells[i][3] = (arr[i].НОММД && arr[i].НОММД != 0 && arr[i].НОММД != '') ? arr[i].НОММД : arr[i].docNumber;
  48. cells[i][4] = date;
  49. cells[i][5] = '999999999999999'; // ако няма се поставят 999999999999999;
  50. cells[i][6] = client;
  51. cells[i][7] = arr[i].comment || '';
  52. cells[i][8] = (type == 51) ? '01' : (type == 52) ? '02' : '';
  53. cells[i][9] = (type == 3 || type == 18 || type == 21 || type == 43) ? sumWithoutVat : (type == 35 || type == 36) ? arr[i].СУМАБДК : '';
  54. cells[i][10] = (type == 1 || type == 17 || type == 20 || type == 44 || type == 45) ? sumWithoutVat : (type == 35 || type == 36) ? arr[i].СУМАДК : '';
  55. cells[i][11] = (type == 1 || type == 17 || type == 20 || type == 44 || type == 45) ? vat : (type == 35 || type == 36) ? (arr[i].ДДСДК != 0) ? arr[i].ДДСДК : arr[i].СУМАДК * 0.2 : '';
  56. cells[i][12] = (type == 35 || type == 36) ? arr[i].СУМАЧДК : '';
  57. cells[i][13] = (type == 35 || type == 36) ? (arr[i].ДДСДК != 0) ? arr[i].ДДСДК : arr[i].СУМАЧДК * 0.2 : '';
  58. cells[i][14] = (type == 33 || type == 34) ? vat : '';
  59. cells[i][15] = (type == 4 || type == 38) ? arr[i].sum : '';
  60.  
  61. filloutput(cells[i]);
  62.  
  63. strArray.push('<div class="table-row">')
  64. for (var a = 0; a < cells[i].length; a++) {
  65. strArray.push('<div class="table-cell">' + cells[i][a] + '</div>');
  66. }
  67. strArray.push('</div>');
  68. }
  69. table.innerHTML = strArray.join('');
  70. calculateFooter();
  71. for (var f = 3; f < footerFullSum.childElementCount; f++) {
  72. footerFullSum.children[f].innerHTML = (purchFooter[f - 3]) ? (purchFooter[f - 3]).toFixed(2) : '&nbsp;';
  73. }
  74. isPurchRdy = true;
  75. }
  76.  
  77. function filloutput(arr) {
  78. output.push(addingSymbol('BG175140782', 15) + addingSymbol(danPer.innerHTML, 6) + addingSymbol(arr[1], 4) + addingSymbol(arr[0], 15) +
  79. addingSymbol(arr[2], 2) + addingSymbol(arr[3], 20) + addingSymbol(arr[4], 10) + addingSymbol(arr[5], 15) +
  80. addingSymbol(arr[6], 50) + addingSymbol(arr[7], 30) + addingSymbol(Number(arr[9]).toFixed(2), 15) + addingSymbol(Number(arr[10]).toFixed(2), 15) +
  81. addingSymbol(Number(arr[11]).toFixed(2), 15) + addingSymbol(Number(arr[12]).toFixed(2), 15) + addingSymbol(Number(arr[13]).toFixed(2), 15) + addingSymbol(Number(arr[14]).toFixed(2), 15) +
  82. addingSymbol(Number(arr[15]).toFixed(2), 15) + addingSymbol(arr[8], 2) + '\r\n');
  83. }
  84.  
  85. function addingSymbol(str, num) {
  86. if (typeof str != 'string') str = String(str);
  87. if (str.length > num) str = str.slice(0, num);
  88. var len = num - str.length,
  89. spaceArray = [str];
  90. for (var i = 0; i < len; i++) spaceArray.push(' ');
  91. return spaceArray.join('');
  92. }
  93.  
  94. function calculateFooter() {
  95. var counter = 0;
  96. for (var row = 0; row < table.children.length; row++) {
  97. for (var cell = 9; cell < table.children[row].children.length; cell++) {
  98. purchFooter[counter] = (purchFooter[counter]) ? Number(purchFooter[counter]) + Number(table.children[row].children[cell].innerHTML) : Number(table.children[row].children[cell].innerHTML);
  99. counter++;
  100. }
  101. counter = 0;
  102. }
  103. }
  104. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement