|
@@ -21,127 +21,6 @@
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-
|
|
|
|
|
- /**
|
|
|
|
|
- *
|
|
|
|
|
- *
|
|
|
|
|
- * @param dom dom 数据对象
|
|
|
|
|
- * @param fileName 文件名
|
|
|
|
|
- * @param data 数据
|
|
|
|
|
- * @param format
|
|
|
|
|
- * var tableNead = {
|
|
|
|
|
- column:[
|
|
|
|
|
- {filed: "projectName",label:"项目名称",width:50},
|
|
|
|
|
- {filed: "managerNickName",label:"成员名称",width:50},
|
|
|
|
|
- {filed: "pdmType",label:"种类",width:50,dictDataOptions: []},
|
|
|
|
|
- {filed: "pdmMoney",label:"收入金额",width:50},
|
|
|
|
|
- ],
|
|
|
|
|
- countFiled:["pdmMoney"],
|
|
|
|
|
- };
|
|
|
|
|
- * @returns {*}
|
|
|
|
|
- */
|
|
|
|
|
- function exportTable(dom, fileName, data,format) {
|
|
|
|
|
- /* 从表生成工作簿对象 */
|
|
|
|
|
- var wb = XLSX.utils.table_to_book(dom);
|
|
|
|
|
- var columnWidth = [];
|
|
|
|
|
- var table = [];
|
|
|
|
|
- var tableHead = [];
|
|
|
|
|
- //初始化头部字段
|
|
|
|
|
- format.column.forEach(function (value) {
|
|
|
|
|
- tableHead.push(value.label);
|
|
|
|
|
- columnWidth.push({
|
|
|
|
|
- "wpx": value.width
|
|
|
|
|
- });
|
|
|
|
|
- });
|
|
|
|
|
- table.push(tableHead);
|
|
|
|
|
- var tableFoot = new Array(format.column.length);
|
|
|
|
|
-
|
|
|
|
|
- //遍历,将数据整理重新返回
|
|
|
|
|
- data.map(function (x) {
|
|
|
|
|
- var a = [];
|
|
|
|
|
-
|
|
|
|
|
- //遍历中设定需要的那些字段数据
|
|
|
|
|
- format.column.forEach(function (value) {
|
|
|
|
|
- if (x.hasOwnProperty(value.filed)){
|
|
|
|
|
- //替换字典数据
|
|
|
|
|
- if (value.dictDataOptions != undefined && value.dictDataOptions.length > 0){
|
|
|
|
|
- //遍历字典数据,有就替换
|
|
|
|
|
- var dict = value.dictDataOptions.find(function (val) {
|
|
|
|
|
- return x[value.filed] == val.dictValue;
|
|
|
|
|
- })
|
|
|
|
|
- a.push(dict?dict.dictLabel:"");
|
|
|
|
|
- }else {
|
|
|
|
|
- a.push(x[value.filed]);
|
|
|
|
|
- if (format.countFiled != undefined && format.countFiled.indexOf(value.filed) >= 0) {
|
|
|
|
|
- tableFoot[0] = '总计';
|
|
|
|
|
- format.column.findIndex(function (value1, index) {
|
|
|
|
|
- if (value1.filed == value.filed){
|
|
|
|
|
- tableFoot[index] = tableFoot[index] == undefined ? x[value.filed] : tableFoot[index] + x[value.filed];
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- }
|
|
|
|
|
- }
|
|
|
|
|
- }else {
|
|
|
|
|
- a.push("");
|
|
|
|
|
- }
|
|
|
|
|
- });
|
|
|
|
|
- return a
|
|
|
|
|
- }).forEach(function (v, i) {
|
|
|
|
|
- // 遍历整理后的数据加入table
|
|
|
|
|
- table.push(v)
|
|
|
|
|
- });
|
|
|
|
|
- table.push(tableFoot);
|
|
|
|
|
- var sheet = XLSX2.utils.aoa_to_sheet(table);
|
|
|
|
|
- wb.Sheets.Sheet1 = sheet;
|
|
|
|
|
- wb.Sheets.Sheet1['!cols'] = columnWidth;
|
|
|
|
|
- /* 获取二进制字符串作为输出 */
|
|
|
|
|
- var wbout = XLSX.write(wb, {
|
|
|
|
|
- bookType: 'xlsx',
|
|
|
|
|
- bookSST: true,
|
|
|
|
|
- type: "array"
|
|
|
|
|
- });
|
|
|
|
|
-
|
|
|
|
|
- try {
|
|
|
|
|
- //保存文件
|
|
|
|
|
- saveAs(
|
|
|
|
|
- //Blob 对象表示一个不可变、原始数据的类文件对象。
|
|
|
|
|
- //Blob 表示的不一定是JavaScript原生格式的数据。
|
|
|
|
|
- //File 接口基于Blob,继承了 blob 的功能并将其扩展使其支持用户系统上的文件。
|
|
|
|
|
- //返回一个新创建的 Blob 对象,其内容由参数中给定的数组串联组成。
|
|
|
|
|
- new Blob([wbout], {type: "application/octet-stream"}),
|
|
|
|
|
- //设置导出文件名称
|
|
|
|
|
- fileName + '.xlsx'
|
|
|
|
|
- );
|
|
|
|
|
- } catch (e) {
|
|
|
|
|
- if (typeof console !== "undefined") console.log(e, wbout);
|
|
|
|
|
- }
|
|
|
|
|
- return wbout;
|
|
|
|
|
- };
|
|
|
|
|
-
|
|
|
|
|
- /**
|
|
|
|
|
- * 打印方法
|
|
|
|
|
- * @param name 模板的名字
|
|
|
|
|
- * @param data 需要绑定的数据
|
|
|
|
|
- */
|
|
|
|
|
- function printFile(name,data){
|
|
|
|
|
- if (name != "" && name != null && name != undefined){
|
|
|
|
|
- ms.http.get(ms.manager+ "/mprint/printTemplate/get.do", {
|
|
|
|
|
- name: name
|
|
|
|
|
- }).then(function (res) {
|
|
|
|
|
- if(data != null && data != undefined && res.data != null){
|
|
|
|
|
- printVue.open(res.data,data);
|
|
|
|
|
- }else {
|
|
|
|
|
- console.error("未定义数据,或没有模板数据");
|
|
|
|
|
- }
|
|
|
|
|
- }).catch(function (err) {
|
|
|
|
|
- console.log(err);
|
|
|
|
|
- });
|
|
|
|
|
- }else {
|
|
|
|
|
- console.error("未定义模板名称");
|
|
|
|
|
- }
|
|
|
|
|
- };
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
/**
|
|
/**
|
|
|
* 列表数据转化为树形结构的列表
|
|
* 列表数据转化为树形结构的列表
|
|
|
* @param source 数据源list
|
|
* @param source 数据源list
|
|
@@ -162,9 +41,8 @@
|
|
|
branchArr.length > 0 ? father[children] = branchArr : '';
|
|
branchArr.length > 0 ? father[children] = branchArr : '';
|
|
|
return !father[parentId] || father[parentId] == '0' || father[parentId] == null ;
|
|
return !father[parentId] || father[parentId] == '0' || father[parentId] == null ;
|
|
|
});
|
|
});
|
|
|
- } //验证是否为子集
|
|
|
|
|
-
|
|
|
|
|
-
|
|
|
|
|
|
|
+ }
|
|
|
|
|
+ //验证是否为子集
|
|
|
function childValidate(sourceList, id, parentId, key, parentKey) {
|
|
function childValidate(sourceList, id, parentId, key, parentKey) {
|
|
|
var data = sourceList.find(function (x) {
|
|
var data = sourceList.find(function (x) {
|
|
|
return x[key] == parentId;
|
|
return x[key] == parentId;
|
|
@@ -178,26 +56,6 @@
|
|
|
return true;
|
|
return true;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
- /**
|
|
|
|
|
- * 科学计数改成普通计数
|
|
|
|
|
- * @param num
|
|
|
|
|
- * @returns {string|*}
|
|
|
|
|
- */
|
|
|
|
|
- function getFullNum(num){
|
|
|
|
|
- //处理非数字
|
|
|
|
|
- if(isNaN(num)){return num};
|
|
|
|
|
- //处理不需要转换的数字
|
|
|
|
|
- var str = ''+num;
|
|
|
|
|
- if(!/e/i.test(str)){return num;};
|
|
|
|
|
- return (num).toFixed(18).replace(/\.?0+$/, "");
|
|
|
|
|
- }
|
|
|
|
|
-
|
|
|
|
|
- /**
|
|
|
|
|
- * 数字转金额
|
|
|
|
|
- * */
|
|
|
|
|
- function moneyFormatter(cellValue) {
|
|
|
|
|
- return accounting.formatMoney(cellValue, '¥',2)
|
|
|
|
|
- }
|
|
|
|
|
//日期处理
|
|
//日期处理
|
|
|
var date = {
|
|
var date = {
|
|
|
//格式化时间
|
|
//格式化时间
|
|
@@ -367,14 +225,10 @@
|
|
|
getParameter: getParameter,
|
|
getParameter: getParameter,
|
|
|
treeData:treeData,
|
|
treeData:treeData,
|
|
|
childValidate:childValidate,
|
|
childValidate:childValidate,
|
|
|
- moneyFormatter:moneyFormatter,
|
|
|
|
|
- exportTable:exportTable,
|
|
|
|
|
- printFile:printFile,
|
|
|
|
|
date: date,
|
|
date: date,
|
|
|
array: array,
|
|
array: array,
|
|
|
log: log,
|
|
log: log,
|
|
|
convert: convert,
|
|
convert: convert,
|
|
|
- getFullNum: getFullNum,
|
|
|
|
|
store: store,
|
|
store: store,
|
|
|
}
|
|
}
|
|
|
|
|
|