MOAC批量转账工具----纯前端

选择的文件导入批量转账,导入的是excel文件,

使用的是vue框架+element

安装xlsx    cnpm install xlsx

import XLSX from 'xlsx'

使用input的上传文件

<input

type="file"

ref="file"

@change="changeFile"

style="width:96px; padding:7.5px 0;position:relative;opacity:0;z-index:999;"

/>

input函数

changeFile() {

this.tableData = []

var wb; //读取Excel的数据

var excelTab;

var f = this.$refs.file.files[0]

this.fileName = this.$refs.file.files[0].name

var reader = new FileReader();

var fixdata = function (data) { //文件流转BinaryString

var o = "",

l = 0,

w = 10240;

for (; l < data.byteLength / w; ++l) o += String.fromCharCode.apply(null, new Uint8Array(data.slice(l * w, l * w + w)));

o += String.fromCharCode.apply(null, new Uint8Array(data.slice(l * w)));

return o;

}

reader.onload = (e) => {

var data = e.target.result;

wb = XLSX.read(data, {

type: 'binary'

});

var table = XLSX.utils.sheet_to_json(wb.Sheets[wb.SheetNames[0]])

for (var i = 0; i < table.length; i++) {

this.tableData.push(table[i])

}

}

reader.readAsBinaryString(f);

},

导入的表格式

 

导出函数

saveFile() {

var excelName = [['姓名/工号', '地址', '金额', '转账结果']]

for (var i = 0; i < this.tableData.length; i++) {

var temp = []

temp.push(this.tableData[i]["姓名/工号"])

temp.push(this.tableData[i]["地址"])

temp.push(this.tableData[i]["金额"])

temp.push(this.tableData[i]["结果"])

excelName.push(temp)

}

console.log(this.tableData)

var wscols = [{ wch: 15 }, { wch: 50 }, { wch: 15 }, { wch: 70 }]

var xlsxName = '转账记录表'

/* convert state to workbook */

const ws = XLSX.utils.aoa_to_sheet(excelName)

ws['!cols'] = wscols

const wb = XLSX.utils.book_new()

XLSX.utils.book_append_sheet(wb, ws, xlsxName)

/* generate file and send to client */

XLSX.writeFile(wb, xlsxName + ".xlsx")

},

 

导出结果

 

批量转账采用了同步函数,根据前一个转账结果来判断下一个是否转账

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值