Elizabeth's proactive approach involves introducing urinal toilet attachment , an ingenious concept that optimizes space and functionality.

print_all.vue 5.0KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. <template>
  2. <div class="main-contain">
  3. <div class="position">
  4. <bread-crumb :crumbs="crumbs"></bread-crumb>
  5. <el-row style="float:right;">
  6. <el-col :span="24">
  7. <el-button size="small" icon="el-icon-printer" type="primary" @click="printAction">打印</el-button>
  8. </el-col>
  9. </el-row>
  10. </div>
  11. <div class="app-container" style="background-color: white;">
  12. <div id="print_content">
  13. <table class="printTable" border="0" cellspacing="0" align="center">
  14. <thead class="print_head">
  15. <tr><td colspan="11">{{org_name}}</td></tr>
  16. <tr><td colspan="11">耗材盘点</td></tr>
  17. </thead>
  18. <tbody class="print_body">
  19. <tr>
  20. <td>耗材名称</td>
  21. <td>规格</td>
  22. <td>单位</td>
  23. <td>批号</td>
  24. <td>生产厂商</td>
  25. <td>仓库名称</td>
  26. <td>盘点前数量</td>
  27. <td>盘点后数量</td>
  28. <td>盈亏类型</td>
  29. <td>进货单价</td>
  30. <td width="60">总额</td>
  31. </tr>
  32. <tr v-for="(item,index) in tableData" :key="index">
  33. <td>{{item.good_name}}</td>
  34. <td>{{item.specification_name}}</td>
  35. <td>{{item.packing_unit}}</td>
  36. <td>{{item.number}}</td>
  37. <td></td>
  38. <td></td>
  39. <td></td>
  40. <td></td>
  41. <td></td>
  42. <td></td>
  43. <td></td>
  44. </tr>
  45. </tbody>
  46. </table>
  47. </div>
  48. </div>
  49. </div>
  50. </template>
  51. <script>
  52. import BreadCrumb from '@/xt_pages/components/bread-crumb'
  53. const moment = require('moment');
  54. import { uParseTime } from '@/utils/tools'
  55. import { getPrintList } from "@/api/stock"
  56. import print from "print-js";
  57. export default {
  58. components:{
  59. BreadCrumb
  60. },
  61. data(){
  62. return{
  63. crumbs: [
  64. { path: false, name: '库存管理' },
  65. { path: false, name: '耗材管理' },
  66. { path: false, name: '耗材盘点打印' },
  67. ],
  68. org_name:"",
  69. ids:"",
  70. tableData:[],
  71. manufacturerList:[],
  72. houseList:[],
  73. }
  74. },
  75. methods:{
  76. printAction: function() {
  77. const style = '@page{size:landscape;margin: 10mm;} @media print { print_content{width:960px;margin:0} .flex{display: flex;justify-content: space-between;} .printTable{width:100%;border-collapse: collapse;border:0px;margin:10px 0;} .printTable thead{text-align:center}.printTable td{padding:5px;} .print_body tr td{border: 1px solid;font-size:12px;border-collapse:collapse;} }';
  78. printJS({
  79. printable: 'print_content',
  80. type: 'html',
  81. documentTitle: ' ',
  82. style: style,
  83. scanStyles: false
  84. })
  85. },
  86. getTime(val) {
  87. if(val < 0){
  88. return ""
  89. }
  90. if(val == ""){
  91. return ""
  92. }else {
  93. return uParseTime(val, '{y}-{m}-{d}')
  94. }
  95. },
  96. getlist(){
  97. var params = {
  98. storehouse_id:this.$route.query.storehouse_id,
  99. good_name:this.$route.query.good_name,
  100. limit:this.$route.query.limit,
  101. page:this.$route.query.page,
  102. }
  103. getPrintList(params).then(response=>{
  104. if(response.data.state == 1){
  105. var list = response.data.data.list
  106. console.log("list233233232323",list)
  107. this.tableData = list
  108. this.houseList = response.data.data.houseList
  109. }
  110. })
  111. },
  112. getManufacturerName(id){
  113. var name = ""
  114. for(let i=0;i<this.manufacturerList.length;i++){
  115. if(id == this.manufacturerList[i].id){
  116. name = this.manufacturerList[i].manufacturer_name
  117. }
  118. }
  119. return name
  120. }
  121. },
  122. created(){
  123. this.getlist()
  124. }
  125. }
  126. </script>
  127. <style rel="stylesheet/scss" lang="scss" scoped>
  128. .printTitle{font-size: 22px;text-align: center;}
  129. .flex{display: flex;justify-content: space-between;}
  130. .tableTitle{display: flex;border-top:1px solid #000;border-bottom: 1px solid #000;padding: 10px 0;}
  131. .tableTr{display: flex;border-bottom: 1px dashed #000;padding: 10px 0;}
  132. .tableBottom{display: flex;border-bottom: 1px solid #000;padding: 10px 0;}
  133. .printTable{width:100%;border-collapse: collapse;}
  134. .printTable td{padding:5px;}
  135. .print_head{border: none;display: table-header-group;}
  136. .print_head tr td{text-align: center;border: none;}
  137. .print_body tr td{border:1px solid}
  138. </style>