print-test.vue 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. <template>
  2. <div id>
  3. <remote-css cdn="https://cdn.staticfile.org/twitter-bootstrap/4.3.1/css/bootstrap.min.css"></remote-css>
  4. <!-- <button type="button" @click="doPrint()">打印</button>-->
  5. <!--startprint-->
  6. <div class="page" id="printMe" style="margin-left: 20mm">
  7. <div class="top-title">
  8. <p class="ref-title">重庆壳牌能源有限公司中央仓收货单</p>
  9. </div>
  10. <div class="order-info px-4 mb-2">
  11. <div>
  12. <span>收货日期:</span><span>${_receiptModel.workDate}</span> <span>服务单编号:</span
  13. ><span>${_receiptModel.sheetId}</span> <span>相关单号:</span><span>${_receiptModel.refSheetId}</span>
  14. </div>
  15. <div><span>供应商:</span><span>${_receiptModel.vender}</span></div>
  16. </div>
  17. <div>
  18. <table class="table">
  19. <thead>
  20. <tr>
  21. <th nowrap class="font-weight-normal">商品条码</th>
  22. <th nowrap class="font-weight-normal px-0">商品名称</th>
  23. <th nowrap class="text-center font-weight-normal">箱装数</th>
  24. <th nowrap class="text-center font-weight-normal">预定箱数</th>
  25. <th nowrap class="text-center font-weight-normal">预定总数</th>
  26. <th nowrap class="text-center font-weight-normal">保质期</th>
  27. <th nowrap class="text-center font-weight-normal">推荐库位</th>
  28. <th nowrap class="text-center font-weight-normal">生产日期</th>
  29. </tr>
  30. </thead>
  31. <tbody>
  32. <tr>
  33. <td>商品条码1</td>
  34. <td>商品名称</td>
  35. <td>箱装数</td>
  36. <td>预定箱数</td>
  37. <td>预定总数</td>
  38. <td>保质期</td>
  39. <td>推荐库位</td>
  40. <td>生产日期</td>
  41. </tr>
  42. <tr>
  43. <td>商品条码2</td>
  44. <td>商品名称</td>
  45. <td>箱装数</td>
  46. <td>预定箱数</td>
  47. <td>预定总数</td>
  48. <td>保质期</td>
  49. <td>推荐库位</td>
  50. <td>生产日期</td>
  51. </tr>
  52. <tr>
  53. <td>商品条码3</td>
  54. <td>商品名称</td>
  55. <td>箱装数</td>
  56. <td>预定箱数</td>
  57. <td>预定总数</td>
  58. <td>保质期</td>
  59. <td>推荐库位</td>
  60. <td>生产日期</td>
  61. </tr>
  62. <tr>
  63. <td>商品条码4</td>
  64. <td>商品名称</td>
  65. <td>箱装数</td>
  66. <td>预定箱数</td>
  67. <td>预定总数</td>
  68. <td>保质期</td>
  69. <td>推荐库位</td>
  70. <td>生产日期</td>
  71. </tr>
  72. <tr>
  73. <td>商品条码5</td>
  74. <td>商品名称</td>
  75. <td>箱装数</td>
  76. <td>预定箱数</td>
  77. <td>预定总数</td>
  78. <td>保质期</td>
  79. <td>推荐库位</td>
  80. <td>生产日期</td>
  81. </tr>
  82. <tr>
  83. <td>商品条码6</td>
  84. <td>商品名称</td>
  85. <td>箱装数</td>
  86. <td>预定箱数</td>
  87. <td>预定总数</td>
  88. <td>保质期</td>
  89. <td>推荐库位</td>
  90. <td>生产日期</td>
  91. </tr>
  92. <tr>
  93. <td>商品条码7</td>
  94. <td>商品名称</td>
  95. <td>箱装数</td>
  96. <td>预定箱数</td>
  97. <td>预定总数</td>
  98. <td>保质期</td>
  99. <td>推荐库位</td>
  100. <td>生产日期</td>
  101. </tr>
  102. <tr>
  103. <td>商品条码8</td>
  104. <td>商品名称</td>
  105. <td>箱装数</td>
  106. <td>预定箱数</td>
  107. <td>预定总数</td>
  108. <td>保质期</td>
  109. <td>推荐库位</td>
  110. <td>生产日期</td>
  111. </tr>
  112. </tbody>
  113. </table>
  114. </div>
  115. </div>
  116. <el-button v-print="printObj" type="primary" icon="el-icon-printer">打 印</el-button>
  117. <!--endprint-->
  118. </div>
  119. </template>
  120. <script>
  121. import print from 'vue-print-nb'
  122. export default {
  123. name: 'PrintTest',
  124. components: {
  125. 'remote-css': {
  126. render(h) {
  127. return <link rel="stylesheet" type="text/css" href={this.cdn} />
  128. },
  129. props: {
  130. cdn: {
  131. type: String,
  132. required: true
  133. }
  134. }
  135. }
  136. },
  137. directives: {
  138. print
  139. },
  140. data() {
  141. return {
  142. printObj: {
  143. id: 'printMe'
  144. }
  145. }
  146. },
  147. methods: {
  148. doPrint() {
  149. // let bdhtml=window.document.body.innerHTML;
  150. // let sprnstr="<!--startprint-->"; //开始打印标识字符串有17个字符
  151. // let eprnstr="<!--endprint-->"; //结束打印标识字符串
  152. // let prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17); //从开始打印标识之后的内容
  153. // prnhtml=prnhtml.substring(0,prnhtml.indexOf(eprnstr)); //截取开始标识和结束标识之间的内容
  154. // window.document.body.innerHTML=prnhtml; //把需要打印的指定内容赋给body.innerHTML
  155. window.print()
  156. // window.document.body.innerHTML=bdhtml;
  157. }
  158. }
  159. }
  160. </script>
  161. <style scoped>
  162. /*.page {width: 220mm; height: 140mm; position: relative; margin: 0 auto; overflow: hidden;}*/
  163. /*.top-title {position: relative;}*/
  164. .ref-title {
  165. font-size: 36px;
  166. text-align: center;
  167. font-weight: 600;
  168. }
  169. .order-info {
  170. font-size: 18px;
  171. }
  172. th,
  173. td {
  174. font-size: 18px;
  175. }
  176. #printMe {
  177. font-family: 'Microsoft YaHei', 'Arial', '黑体', sans-serif;
  178. }
  179. /*.table tbody tr td{overflow: hidden;font-size:5mm; padding-bottom: 5mm;}*/
  180. /*button {position: fixed; right: 10; font-size: 24px;}*/
  181. </style>