work-xmd.vue 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. <style scoped>
  2. .user-panel {
  3. margin: 10px auto;
  4. }
  5. </style>
  6. <template>
  7. <el-dialog :visible.sync="showDialog" :title="title" :modal-append-to-body="false" style="text-align:left;" @close="closeDialog" :close-on-click-modal="false">
  8. <div class="user-panel" v-loading="loading">
  9. <table width="100%">
  10. <tr>
  11. <td>客户:{{dataCustomer}}</td>
  12. <td>订单号:{{dataNumber}}</td>
  13. <td>品名:{{dataName}}</td>
  14. <td>幅宽:{{dataWidth}}</td>
  15. <td>单位:{{dataUnit}}</td>
  16. </tr>
  17. </table>
  18. <el-table :data="dataList" style="min-height:400px;" v-loading="loading" stripe>
  19. <el-table-column prop="sort" label="序号"></el-table-column>
  20. <el-table-column prop="length" label="长度"></el-table-column>
  21. </el-table>
  22. <div>件数:{{totalCount}}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;长度:{{totalLength}}</div>
  23. </div>
  24. <span slot="footer" class="dialog-footer">
  25. <el-button @click="closeDialog">关 闭</el-button>
  26. <el-button type="primary" @click="exportXls" :loading="loading">下 载</el-button>
  27. </span>
  28. </el-dialog>
  29. </template>
  30. <script>
  31. import Constant from "@/constant";
  32. import workApi from "@/api/base/work";
  33. export default {
  34. props: ["businessKey", "title"],
  35. data() {
  36. return {
  37. showDialog: true,
  38. loading: false,
  39. dataCustomer: "",
  40. dataNumber: "",
  41. dataName: "",
  42. dataWidth: "",
  43. dataUnit: "",
  44. dataList: [],
  45. totalCount: "",
  46. totalLength: ""
  47. };
  48. },
  49. methods: {
  50. exportXls() {
  51. var self = this;
  52. self.loading = true;
  53. var formData = new FormData();
  54. formData.append("workId", self.businessKey);
  55. workApi.tableXMDXls(formData).then(function (response) {
  56. self.loading = false;
  57. var jsonData = response.data;
  58. self.$message({
  59. showClose: true,
  60. dangerouslyUseHTMLString: true,
  61. message: jsonData.message + `,<a href="${jsonData.data}" target="_blank">点击下载</a>&nbsp;`,
  62. duration: 30000,
  63. });
  64. }).catch((error) => {
  65. self.loading = false;
  66. });
  67. },
  68. closeDialog() {
  69. this.$emit("close", false);
  70. },
  71. },
  72. mounted: function () {
  73. var self = this;
  74. self.loading = true;
  75. var formData = new FormData();
  76. formData.append("workId", self.businessKey);
  77. workApi.tableXMD(formData).then(response => {
  78. var jsonData = response.data;
  79. self.loading = false;
  80. if (jsonData.result) {
  81. self.dataCustomer = jsonData.data.customer;
  82. self.dataNumber = jsonData.data.number;
  83. self.dataName = jsonData.data.name;
  84. self.dataWidth = jsonData.data.width;
  85. self.dataUnit = jsonData.data.unit;
  86. self.dataList = jsonData.data.list;
  87. self.totalCount = jsonData.data.totalCount;
  88. self.totalLength = jsonData.data.totalLength;
  89. } else {
  90. self.$message.error(jsonData.message + "");
  91. }
  92. });
  93. }
  94. };
  95. </script>