You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

127 lines
7.0 KiB

8 months ago
  1. <#import "base.ftl" as printbase>
  2. <@printbase.layout>
  3. <#if error?? >
  4. <script>alert("${error}");</script>
  5. <#else >
  6. <script>
  7. let dumpPrintList = ${dumpPrintList}
  8. function lodopReady() {
  9. if (!dumpPrintList){
  10. return
  11. }
  12. let dunPrint = dumpPrintList[0]
  13. LODOP.PRINT_INIT("DUMP_ORDER");
  14. LODOP.SET_PRINT_PAGESIZE(0, 2400, 1100, "");
  15. LODOP.ADD_PRINT_TEXT(12, 265, 339, 29, "Outward Delivery()");
  16. LODOP.SET_PRINT_STYLEA(0, "FontSize", 14);
  17. LODOP.ADD_PRINT_TEXT(60, 70, 88, 25, "DocNumText:");
  18. LODOP.SET_PRINT_STYLEA(0, "FontSize", 10);
  19. LODOP.ADD_PRINT_TEXT(60, 400, 100, 25, "Release Date:");
  20. LODOP.SET_PRINT_STYLEA(0, "FontSize", 10);
  21. LODOP.ADD_PRINT_TEXT(60, 158, 100, 25, dunPrint.orderNo);
  22. LODOP.SET_PRINT_STYLEA(0, "FontSize", 10);
  23. LODOP.ADD_PRINT_TEXT(60, 500, 100, 25, dunPrint.releaseDate);
  24. LODOP.ADD_PRINT_LINE(101, 20, 100, 780, 0, 1);
  25. LODOP.ADD_PRINT_LINE(130, 20, 100, 21, 0, 1);
  26. LODOP.ADD_PRINT_LINE(100, 60, 130, 61, 0, 1);
  27. LODOP.ADD_PRINT_LINE(130, 130, 100, 131, 0, 1);
  28. LODOP.ADD_PRINT_LINE(130, 250, 100, 251, 0, 1);
  29. LODOP.ADD_PRINT_LINE(130, 440, 100, 441, 0, 1);
  30. LODOP.ADD_PRINT_LINE(130, 500, 100, 501, 0, 1);
  31. LODOP.ADD_PRINT_LINE(130, 600, 100, 601, 0, 1);
  32. LODOP.ADD_PRINT_LINE(130, 680, 100, 681, 0, 1);
  33. LODOP.ADD_PRINT_LINE(130, 780, 100, 781, 0, 1);
  34. LODOP.ADD_PRINT_TEXT(110, 25, 30, 20, "#");
  35. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  36. LODOP.ADD_PRINT_TEXT(110, 63, 65, 20, "WO Num");
  37. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  38. LODOP.ADD_PRINT_TEXT(110, 130, 120, 20, "Item Num");
  39. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  40. LODOP.ADD_PRINT_TEXT(110, 251, 189, 20, "Item Description");
  41. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  42. LODOP.ADD_PRINT_TEXT(110, 441, 59, 20, "Unit");
  43. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  44. LODOP.ADD_PRINT_TEXT(110, 501, 99, 20, "Quantity");
  45. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  46. LODOP.ADD_PRINT_TEXT(110, 600, 79, 20, "Thyc ta");
  47. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  48. LODOP.ADD_PRINT_TEXT(110, 681, 99, 20, "Tra lien");
  49. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  50. LODOP.ADD_PRINT_LINE(131, 20, 130, 780, 0, 1);
  51. let num = Math.ceil(Math.random() * 10);
  52. let sumTop = 0
  53. for (let i = 0; i < dumpPrintList.length; i++) {
  54. let obj = dumpPrintList[i]
  55. sumTop += 30
  56. let top = 30 * (i + 1)
  57. let xZTop = 100 + top
  58. let label = 110 + top
  59. let xhTop = 130 + top
  60. LODOP.ADD_PRINT_LINE(xZTop + 30, 20, xZTop, 21, 0, 1);
  61. LODOP.ADD_PRINT_LINE(xZTop, 60, xZTop + 30, 61, 0, 1);
  62. LODOP.ADD_PRINT_LINE(xZTop + 30, 130, xZTop, 131, 0, 1);
  63. LODOP.ADD_PRINT_LINE(xZTop + 30, 250, xZTop, 251, 0, 1);
  64. LODOP.ADD_PRINT_LINE(xZTop + 30, 440, xZTop, 441, 0, 1);
  65. LODOP.ADD_PRINT_LINE(xZTop + 30, 500, xZTop, 501, 0, 1);
  66. LODOP.ADD_PRINT_LINE(xZTop + 30, 600, xZTop, 601, 0, 1);
  67. LODOP.ADD_PRINT_LINE(xZTop + 30, 680, xZTop, 681, 0, 1);
  68. LODOP.ADD_PRINT_LINE(xZTop + 30, 780, xZTop, 781, 0, 1);
  69. LODOP.ADD_PRINT_TEXT(label, 25, 30, 20, (i+1));
  70. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  71. LODOP.ADD_PRINT_TEXT(label, 63, 65, 20, obj.warehouseId);
  72. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  73. LODOP.ADD_PRINT_TEXT(label, 130, 120, 20, obj.partNo);
  74. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  75. LODOP.ADD_PRINT_TEXT(label, 251, 189, 20, obj.partDesc);
  76. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  77. LODOP.ADD_PRINT_TEXT(label, 441, 59, 20, obj.umId);
  78. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  79. LODOP.ADD_PRINT_TEXT(label, 501, 99, 20, obj.qty);
  80. LODOP.SET_PRINT_STYLEA(0, "Alignment", 3);
  81. LODOP.ADD_PRINT_TEXT(label, 600, 79, 20, "Thyc ta");
  82. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  83. LODOP.ADD_PRINT_TEXT(label, 681, 99, 20, "Tra lien");
  84. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  85. LODOP.ADD_PRINT_LINE(xhTop + 1, 20, xhTop, 780, 0, 1);
  86. }
  87. let footerTopInit1 = 130 + sumTop // 3直线 100
  88. let footerTopInit2 = 170 + sumTop // 横线 1
  89. let footerTopInit3 = 210 + sumTop // 横线 2
  90. let footerTopInit4 = 145 + sumTop
  91. let footerTopInit5 = 185 + sumTop
  92. let footerTopInit6 = 230 + sumTop
  93. let footerTopInit7 = 250 + sumTop
  94. LODOP.ADD_PRINT_LINE(footerTopInit1 + 80, 20, footerTopInit1, 21, 0, 1);
  95. LODOP.ADD_PRINT_LINE(footerTopInit1 + 80, 180, footerTopInit1, 181, 0, 1);
  96. LODOP.ADD_PRINT_LINE(footerTopInit1 + 80, 780, footerTopInit1, 781, 0, 1);
  97. LODOP.ADD_PRINT_LINE(footerTopInit2 + 1, 20, footerTopInit2, 180, 0, 1);
  98. LODOP.ADD_PRINT_LINE(footerTopInit3 + 1, 20, footerTopInit3, 780, 0, 1);
  99. LODOP.ADD_PRINT_TEXT(footerTopInit4, 25, 150, 25, "Remarks:");
  100. LODOP.SET_PRINT_STYLEA(0, "FontSize", 10);
  101. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  102. LODOP.ADD_PRINT_TEXT(footerTopInit5, 25, 150, 25, "Type:");
  103. LODOP.SET_PRINT_STYLEA(0, "Alignment", 2);
  104. LODOP.ADD_PRINT_TEXT(footerTopInit5, 192, 328, 25, dunPrint.warehouseId);
  105. LODOP.ADD_PRINT_TEXT(footerTopInit6, 20, 100, 20, "Whse Keeper");
  106. LODOP.ADD_PRINT_TEXT(footerTopInit7, 20, 120, 20, "(BP 111 111 1111):");
  107. LODOP.ADD_PRINT_TEXT(footerTopInit7, 140, 120, 20, "{whse}");
  108. LODOP.ADD_PRINT_TEXT(footerTopInit7, 270, 150, 20, "(BP qqq qqqq qqq qqqq):");
  109. LODOP.ADD_PRINT_TEXT(footerTopInit6, 270, 100, 20, "Receiver");
  110. LODOP.ADD_PRINT_TEXT(footerTopInit7, 420, 100, 20, "{receiver}");
  111. LODOP.ADD_PRINT_TEXT(footerTopInit7, 520, 150, 20, "(BP 11 11111 111 1111):");
  112. LODOP.ADD_PRINT_TEXT(footerTopInit6, 520, 100, 20, "PMC");
  113. LODOP.ADD_PRINT_TEXT(footerTopInit7, 670, 105, 20, "{pmc}");
  114. }
  115. </script>
  116. </#if>
  117. </@printbase.layout>