From d279a06c01bda81e98ca067f07a8517ed7727b5d Mon Sep 17 00:00:00 2001 From: chenjianan Date: Sat, 22 Dec 2018 15:31:20 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AF=BC=E5=87=BA=E6=95=B4=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- .../exportExcel.js | 2 +- .../CreateInquirySheet/index.vue | 84 +++++++++++++++---- .../OfflineContract/index.vue | 6 +- 4 files changed, 72 insertions(+), 22 deletions(-) rename src/views/PurchasingCenter/{OfflineContract => CreateInquirySheet}/exportExcel.js (95%) diff --git a/package.json b/package.json index 0d67aa4f..02b3cafd 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "html2canvas": "^1.0.0-alpha.12", "jquery": "^3.3.1", "js-cookie": "2.2.0", - "jspdf": "^1.4.1", + "jspdf": "^1.5.2", "node-sass": "^4.10.0", "normalize.css": "7.0.0", "nprogress": "0.2.0", diff --git a/src/views/PurchasingCenter/OfflineContract/exportExcel.js b/src/views/PurchasingCenter/CreateInquirySheet/exportExcel.js similarity index 95% rename from src/views/PurchasingCenter/OfflineContract/exportExcel.js rename to src/views/PurchasingCenter/CreateInquirySheet/exportExcel.js index 88de1a6d..5b36e3e5 100644 --- a/src/views/PurchasingCenter/OfflineContract/exportExcel.js +++ b/src/views/PurchasingCenter/CreateInquirySheet/exportExcel.js @@ -5,7 +5,7 @@ export function exportExcelMethod(tableId, fileName, sheetName) { const tableToExcel = (function() { const uri = 'data:application/vnd.ms-excel;base64,' // 设置导出表格的单元格默认高度/宽度/边框样式/字体颜色/背景颜色/居中,网页显示表格宽度建议1240,tr/td视情况而定 - const template = `{worksheet}{table}
` + const template = `{worksheet}{table}
` const base64 = function(s) { return window.btoa(unescape(encodeURIComponent(s))) } const format = function(s, c) { return s.replace(/{(\w+)}/g, function(m, p) { return c[p] }) } return function(table, filename, sheetname) { diff --git a/src/views/PurchasingCenter/CreateInquirySheet/index.vue b/src/views/PurchasingCenter/CreateInquirySheet/index.vue index 7366f090..93330a41 100644 --- a/src/views/PurchasingCenter/CreateInquirySheet/index.vue +++ b/src/views/PurchasingCenter/CreateInquirySheet/index.vue @@ -295,12 +295,12 @@ {{ scope.row.组件零件流水号 ? scope.row.物料规格 : scope.row.规格 }} - + - + @@ -313,6 +313,37 @@ + + @@ -494,6 +525,7 @@ import { searchMaterial, searchPart, searchSupplier, searchCreateInquirySheet, searchCreateInquirySheet2, searchSheetDetail, editInquirySheet, createInquirySheet, deleteInquirySheet, addInquirySheet1, addInquirySheet2, outInquirySheet, searchAllMaterial, materialChange } from '@/api/PurchasingCenter/CreateInquirySheet' import { mapGetters } from 'vuex' +import { exportExcelMethod } from './exportExcel' export default { name: '', // 创建询价单 @@ -765,20 +797,34 @@ export default { cancelButtonText: '取消', type: 'warning' }).then(() => { - // import('@/vendor/Export2Excelcjn').then(excel => { - // const tHeader = ['询价单编号', '供应商名称', '物料名称', '物料规格', '物料型号', '数量', '单价', '备注'] // 表头内容 - // const filterVal = ['询价单编号', '供应商名称', '物料名称', '物料规格', '物料型号', '零件数量'] // tableData3里的属性名 - // const list = this.tableData3 - // const data = list.map(v => filterVal.map(j => v[j])) - // excel.export_json_to_excel({ - // header: tHeader, - // data, - // filename: row.询价单编号 + '_' + row.供应商名称, - // autoWidth: true, - // bookType: 'xlsx' - // }) - // }) - }).catch(() => { + const children = document.getElementsByClassName('tableData') + const parent = document.getElementsByClassName('inquirySheet')[0] + if (children.length !== 0) { + for (let i = children.length - 1; i >= 0; i--) { + parent.removeChild(children[i]) + } + } + const tr = [] + let length = 0 + this.tableData3.length < 15 ? length = 15 : length = this.tableData3.length + for (let i = 0; i < length; i++) { + tr[i] = document.createElement('tr') + tr[i].setAttribute('class', 'tableData') + tr[i].innerHTML = `` + document.getElementById('tablehead').after(tr[i]) + } + for (let j = 0; j < this.tableData3.length; j++) { + document.getElementsByClassName('tableData')[j].children[0].innerHTML = j + 1 + document.getElementsByClassName('tableData')[j].children[1].innerHTML = this.tableData3[j].物料型号 || this.tableData3[j].零件图号 + document.getElementsByClassName('tableData')[j].children[2].innerHTML = this.tableData3[j].物料名称 || this.tableData3[j].零件名称 + document.getElementsByClassName('tableData')[j].children[3].innerHTML = this.tableData3[j].物料规格 || this.tableData3[j].规格 + document.getElementsByClassName('tableData')[j].children[4].innerHTML = this.tableData3[j].数量 + } + document.getElementById('inquirySheetNum').innerHTML = row.询价单编号 + document.getElementById('supplier').innerHTML = row.供应商名称 + exportExcelMethod('inquirySheet', '采购询价单', '采购询价单sheet') + }).catch(res => { + console.log(res) this.$message({ type: 'info', message: '已取消操作' @@ -946,7 +992,7 @@ export default { this.materialOldValue = row.物料流水号 }, partChange(row) { // 零件变更 基本件 - alert('没有基本件库,你想替换啥?') + alert('没有基本件库') console.log(row) }, searchMaterial() { @@ -988,6 +1034,10 @@ export default {