fastlion-amis
Version:
一种MIS页面生成工具
598 lines (597 loc) • 34.8 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.chunkArray = exports.buildPrintFlowSchema = exports.buildPrintFormSchema = exports.buildPropertyUI = exports.getDetailTableValues = exports.findLabel = exports.createHtml = void 0;
var tslib_1 = require("tslib");
var commonTableFunction_1 = require("../../../../../store/utils/commonTableFunction");
var helper_1 = require("../../../../../utils/helper");
var utils_1 = require("../../../../../utils/utils");
var FlowNodeData;
(function (FlowNodeData) {
FlowNodeData["seq"] = "\u5E8F\u53F7";
FlowNodeData["nodeName"] = "\u5BA1\u6279\u8282\u70B9";
FlowNodeData["nodeType"] = "\u7B7E\u6838\u7C7B\u578B";
FlowNodeData["nodeUser"] = "\u5BA1\u6279\u4EBA";
FlowNodeData["nodeStatus"] = "\u5BA1\u6279\u7ED3\u679C";
FlowNodeData["nodeEndTime"] = "\u5BA1\u6279\u65F6\u95F4";
FlowNodeData["remarkComment"] = "\u5BA1\u6279\u610F\u89C1";
FlowNodeData["assignComment"] = "\u52A0\u7B7E\u610F\u89C1";
FlowNodeData["attachments"] = "\u9644\u4EF6";
})(FlowNodeData || (FlowNodeData = {}));
var createPropertyElement = function (ui, options, border) {
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
var _l = ui.column, column = _l === void 0 ? 3 : _l, rows = ui.body, data = ui.data;
var table = document.createElement('table');
if (rows.length === 0)
return table;
table.style.borderCollapse = 'collapse';
table.style.tableLayout = 'fixed';
table.style.border = border ? "".concat(Math.max(2, (_a = options.borderWidth) !== null && _a !== void 0 ? _a : 2), "px solid black") : 'none';
table.style.wordBreak = options.numberBreak ? 'break-all' : 'break-word';
table.style.fontSize = "".concat(options.contentFontSize, "px");
table.style.fontFamily = options.contentFontFamily;
table.setAttribute('width', '100%');
var tbody = table.createTBody();
for (var _i = 0, rows_1 = rows; _i < rows_1.length; _i++) {
var row = rows_1[_i];
var tr = document.createElement('tr');
var _loop_1 = function (index) {
var item = row[index];
if (item.content.type === 'input-table-field') {
var td_1 = document.createElement('td');
td_1.colSpan = column * 2;
td_1.style.padding = '0';
td_1.style.border = 'none';
td_1.style.borderStyle = 'hidden';
var tableData = getValue(item.content, data);
var label_1 = (_b = item.label) !== null && _b !== void 0 ? _b : '';
var tableValues = options.detailTableValues;
var setting_1 = tableValues.find(function (value) { return value.name === item.content.name; });
if ((setting_1 === null || setting_1 === void 0 ? void 0 : setting_1.isPrint) === false) {
return "continue";
}
var fieldColumns_3 = (_d = (_c = item.content.columns) === null || _c === void 0 ? void 0 : _c.filter(function (column) { var _a; return setting_1 ? ((_a = setting_1.columns.find(function (v) { return v.name === column.name; })) === null || _a === void 0 ? void 0 : _a.printType) === 'all' : true; })) !== null && _d !== void 0 ? _d : [];
if (item.content.tableLayout === 'horizontal') {
if (item.content.showIndex === true)
fieldColumns_3.unshift({ type: 'index', name: 'index', label: '' });
var datas = (0, commonTableFunction_1.combineCell)(tableData.map(function (data) { return (tslib_1.__assign(tslib_1.__assign({}, data), { rowSpans: {} })); }), fieldColumns_3.filter(function (column) { return column.combined; }));
if (label_1.length > 0) {
var div = document.createElement('div');
if (setting_1) {
div.style.fontSize = "".concat(setting_1.fontSize, "px");
div.style.fontFamily = setting_1.fontFamily;
}
div.textContent = label_1;
td_1.appendChild(div);
}
var fieldTable = document.createElement('table');
fieldTable.style.borderStyle = 'hidden';
fieldTable.style.borderCollapse = 'collapse';
fieldTable.style.fontSize = "".concat((_e = setting_1 === null || setting_1 === void 0 ? void 0 : setting_1.fontSize) !== null && _e !== void 0 ? _e : 12, "px");
fieldTable.style.fontFamily = (_f = setting_1 === null || setting_1 === void 0 ? void 0 : setting_1.fontFamily) !== null && _f !== void 0 ? _f : '宋体';
fieldTable.setAttribute('width', '100%');
//字段表格thead
var fieldThead = fieldTable.createTHead();
var fieldTr = document.createElement('tr');
for (var _m = 0, fieldColumns_1 = fieldColumns_3; _m < fieldColumns_1.length; _m++) {
var fieldColumn = fieldColumns_1[_m];
var fieldTh = document.createElement('th');
fieldTh.style.textAlign = fieldColumn.align;
fieldTh.textContent = fieldColumn.label;
fieldTr.appendChild(fieldTh);
}
fieldThead.appendChild(fieldTr);
//字段表格tbody
var fieldTbody_1 = fieldTable.createTBody();
datas.forEach(function (data, index) {
var fieldTr = document.createElement('tr');
for (var _i = 0, fieldColumns_4 = fieldColumns_3; _i < fieldColumns_4.length; _i++) {
var fieldColumn = fieldColumns_4[_i];
var rowspan = data.rowSpans[fieldColumn.name];
if (rowspan === 0)
continue;
var fieldTd = document.createElement('td');
fieldTd.style.textAlign = fieldColumn.align;
fieldTd.rowSpan = rowspan || 1;
fieldTd.textContent = fieldColumn.type === 'index' ? index + 1 : getValue(fieldColumn, data);
fieldTr.appendChild(fieldTd);
}
fieldTbody_1.appendChild(fieldTr);
});
if (Array.isArray(item.content.affixRow)) {
var summaryTr = document.createElement('tr');
var _loop_2 = function (fieldColumn) {
var target = item.content.affixRow.find(function (field) { return field.name === fieldColumn.name; });
var td_2 = document.createElement('td');
if (target) {
var value = (0, utils_1.calcFn)((_g = target.formula) === null || _g === void 0 ? void 0 : _g.toLocaleLowerCase(), target.name, datas);
td_2.textContent = (target.rule ? target.rule + ':' : '') + (0, commonTableFunction_1.getCellValue)(value, tslib_1.__assign(tslib_1.__assign({}, fieldColumn), { pristine: fieldColumn }));
}
summaryTr.appendChild(td_2);
};
for (var _o = 0, fieldColumns_2 = fieldColumns_3; _o < fieldColumns_2.length; _o++) {
var fieldColumn = fieldColumns_2[_o];
_loop_2(fieldColumn);
}
fieldTable.appendChild(summaryTr);
}
td_1.appendChild(fieldTable);
}
else if (item.content.tableLayout === 'vertical') {
tableData.forEach(function (data, index) {
var _a, _b;
var div = document.createElement('div');
if (setting_1) {
div.style.fontSize = "".concat(setting_1.fontSize, "px");
div.style.fontFamily = setting_1.fontFamily;
}
div.style.padding = "".concat(options.rowPadding, "px ").concat(options.colPadding, "px");
div.textContent = label_1 + "".concat(index + 1);
td_1.appendChild(div);
var rows = (0, exports.buildPropertyUI)({ type: 'property', column: column, items: fieldColumns_3.map(function (column) { return ({ label: column.label, span: 1, content: tslib_1.__assign(tslib_1.__assign({}, column), { value: getValue(column, data) }) }); }) }, data);
var table = createPropertyElement({ type: 'property', column: column, body: rows, data: data }, options, false);
table.style.fontSize = "".concat((_a = setting_1 === null || setting_1 === void 0 ? void 0 : setting_1.fontSize) !== null && _a !== void 0 ? _a : 12, "px");
table.style.fontFamily = (_b = setting_1 === null || setting_1 === void 0 ? void 0 : setting_1.fontFamily) !== null && _b !== void 0 ? _b : '宋体';
table.style.borderStyle = 'hidden';
td_1.appendChild(table);
});
}
tr.appendChild(td_1);
}
else {
var isLastFillCell = item.span == 1 && row.length != column && item.label === ((_h = row[row.length - 1]) === null || _h === void 0 ? void 0 : _h.label);
var th = document.createElement('th');
th.style.width = "".concat(options.labelWidthPercent / column, "%");
th.textContent = (_k = (_j = item.label) === null || _j === void 0 ? void 0 : _j.replace(/\n|\r|<[^>]*>/g, '')) !== null && _k !== void 0 ? _k : '';
var td = document.createElement('td');
td.colSpan = isLastFillCell ? column * 2 - (index * 2 + 1) : item.span * 2 - 1;
td.textContent = getValue(item.content, data);
tr.appendChild(th);
tr.appendChild(td);
}
};
for (var index = 0; index < row.length; index++) {
_loop_1(index);
}
tbody.appendChild(tr);
}
return table;
};
var createTableElement = function (ui, options) {
var _a, _b, _c;
var _d = ui.body, columns = _d.columns, data = _d.data;
var setting = options.detailTableValues.find(function (value) { return value.name === ui.name; });
var table = document.createElement('table');
if ((setting === null || setting === void 0 ? void 0 : setting.isPrint) === false) {
return table;
}
table.style.borderCollapse = 'collapse';
table.style.border = "".concat(Math.max(2, (_a = options.borderWidth) !== null && _a !== void 0 ? _a : 2), "px solid black");
table.style.wordBreak = options.numberBreak ? 'break-all' : 'break-word';
table.style.fontSize = "".concat((_b = setting === null || setting === void 0 ? void 0 : setting.fontSize) !== null && _b !== void 0 ? _b : options.contentFontSize, "px");
table.style.fontFamily = (_c = setting === null || setting === void 0 ? void 0 : setting.fontFamily) !== null && _c !== void 0 ? _c : options.contentFontFamily;
table.setAttribute('width', '100%');
var thead = table.createTHead();
var tr = document.createElement('tr');
var tableColumns = columns.filter(function (column) { var _a; return setting ? ((_a = setting.columns.find(function (v) { return v.name === column.name; })) === null || _a === void 0 ? void 0 : _a.printType) === 'all' : true; });
for (var _i = 0, tableColumns_1 = tableColumns; _i < tableColumns_1.length; _i++) {
var column = tableColumns_1[_i];
var th = document.createElement('th');
th.textContent = column.label;
th.style.textAlign = column.align;
tr.appendChild(th);
}
thead.appendChild(tr);
var tbody = table.createTBody();
data.forEach(function (item) {
var tr = document.createElement('tr');
for (var _i = 0, tableColumns_2 = tableColumns; _i < tableColumns_2.length; _i++) {
var column = tableColumns_2[_i];
var td = document.createElement('td');
td.textContent = getValue(column, item);
td.style.textAlign = column.align;
tr.appendChild(td);
}
tbody.appendChild(tr);
});
return table;
};
var createLabelElement = function (label) {
var labelDiv = document.createElement('div');
labelDiv.textContent = label;
labelDiv.style.backgroundColor = 'gray';
labelDiv.style.padding = '6px';
labelDiv.style.color = 'white';
labelDiv.style.fontSize = 'large';
labelDiv.style.marginBottom = '12px';
labelDiv.style.width = '20%';
labelDiv.style.minWidth = '80px';
labelDiv.style.fontWeight = 'bold';
return labelDiv;
};
var getValue = function (schema, data) {
var _a, _b, _c, _d;
var value = (_a = data[schema.name]) !== null && _a !== void 0 ? _a : schema.value;
var types = ['mapping', 'static-mapping', 'number', 'static-number'];
if (types.includes(schema.type)) {
return (0, commonTableFunction_1.getCellValue)(value, tslib_1.__assign(tslib_1.__assign({}, schema), { type: schema.type.replace('static-', ''), pristine: schema }));
}
if (schema.type === 'lion-upload') {
var tempValue = data[schema.name];
return (_b = tempValue === null || tempValue === void 0 ? void 0 : tempValue.info) === null || _b === void 0 ? void 0 : _b.map(function (item) { return item.name; }).join(',');
}
if (schema.type === 'switch') {
return value === schema.trueValue ? schema.onText : schema.offText;
}
if (schema.type === 'input-table-field') {
return (_c = data[schema.name]) !== null && _c !== void 0 ? _c : [];
}
if (schema.type === 'flow-user') {
return (_d = value === null || value === void 0 ? void 0 : value.userName) !== null && _d !== void 0 ? _d : '';
}
if (schema.type === 'flow-attachment') {
return value === null || value === void 0 ? void 0 : value.map(function (item) { return item.name; }).join(',');
}
return data[schema.name];
};
var createHtml = function (schema, options) {
var body = document.createElement('body');
var form = schema.form, flow = schema.flow;
// console.log(form, flow)
if (flow) {
var labelDiv = createLabelElement('申请详情');
body.appendChild(labelDiv);
}
form.forEach(function (item) {
if (item.label) {
var div = document.createElement('div');
div.textContent = item.label;
div.style.fontSize = "".concat(options.contentFontSize, "px");
div.style.fontFamily = options.contentFontFamily;
div.style.marginTop = '6px';
div.style.marginBottom = '6px';
body.appendChild(div);
}
if (item.type === 'property') {
var table = createPropertyElement(item, options, true);
body.appendChild(table);
}
else if (item.type === 'table') {
var table = createTableElement(item, options);
body.appendChild(table);
}
});
if (flow) {
var labelDiv = createLabelElement('审批详情');
labelDiv.style.marginTop = '20px';
body.appendChild(labelDiv);
var flowTable = createTableElement(flow, options);
body.appendChild(flowTable);
}
return "<!DOCTYPE html>\n <html>\n <head>\n <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\n </head>\n <style>\n body {\n width: 100%;\n }\n td, th {\n border: ".concat(options.lineWidth, "px solid;\n font-weight: normal;\n padding: ").concat(options.rowPadding, "px ").concat(options.colPadding, "px;\n }\n div {\n padding: ").concat(options.rowPadding, "px ").concat(options.colPadding, "px;\n }\n </style>\n ").concat(body.outerHTML, "\n </html>");
};
exports.createHtml = createHtml;
var findLabel = function (name, object) {
if (typeof object == 'object' && object != null) {
if (Array.isArray(object)) {
for (var _i = 0, object_1 = object; _i < object_1.length; _i++) {
var item = object_1[_i];
var target = (0, exports.findLabel)(name, item);
if (target)
return target;
}
}
if (Object.prototype.hasOwnProperty.call(object, 'label') && Object.prototype.hasOwnProperty.call(object, 'content')) {
var content = object['content'];
if (content['name'] === name) {
return object;
}
}
for (var key in object) {
if (Object.prototype.hasOwnProperty.call(object, key)) {
var value = object[key];
var target = (0, exports.findLabel)(name, value);
if (target)
return target;
}
}
}
return undefined;
};
exports.findLabel = findLabel;
var getDetailTableValues = function (schema, formData, fetcher) { return tslib_1.__awaiter(void 0, void 0, Promise, function () {
var schemas;
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, computed(schema, formData, fetcher)];
case 1:
schemas = _a.sent();
return [2 /*return*/, schemas.map(function (schema) {
var _a;
if (schema.type === 'property') {
if (Array.isArray(schema.items)) {
return schema.items.filter(function (item) {
return item.content.type === 'input-table-field' && Array.isArray(item.content.columns);
}).map(function (item) {
var _a;
return {
name: item.content.name,
isPrint: true,
label: (_a = item.label) !== null && _a !== void 0 ? _a : '',
fontSize: 12,
fontFamily: '宋体',
columns: item.content.columns.map(function (column) {
var _a;
return {
name: column.name,
title: column.label,
align: (_a = column.align) !== null && _a !== void 0 ? _a : 'left',
printType: 'all'
};
})
};
});
}
}
else {
return {
name: schema.name,
isPrint: true,
label: (_a = schema.aliasTitle) !== null && _a !== void 0 ? _a : '',
fontSize: 12,
fontFamily: '宋体',
columns: schema.columns.filter(function (column) { return column.type !== 'operation'; }).map(function (column) {
var _a;
return {
name: column.name,
title: column.label,
align: (_a = column.align) !== null && _a !== void 0 ? _a : 'left',
printType: 'all'
};
})
};
}
return [];
}).flat()];
}
});
}); };
exports.getDetailTableValues = getDetailTableValues;
var buildPropertyUI = function (property, data) {
var _a, _b, _c;
var items = (_b = (_a = property.items) === null || _a === void 0 ? void 0 : _a.filter(function (item) { return (0, helper_1.isVisible)(item, data); })) !== null && _b !== void 0 ? _b : [];
var column = (_c = property.column) !== null && _c !== void 0 ? _c : 3;
var rows = [];
var row = [];
var columnLeft = column;
var index = 0;
for (var _i = 0, items_1 = items; _i < items_1.length; _i++) {
var item = items_1[_i];
index = index + 1;
var span = Math.min(item.span || 1, column);
columnLeft = columnLeft - span;
var rowItem = {
label: item.label,
content: item.content,
span: span,
};
if (columnLeft >= 0) {
row.push(rowItem);
}
else {
rows.push(row);
columnLeft = column - span;
row = [rowItem];
}
if (index === items.length) {
rows.push(row);
}
}
return rows;
};
exports.buildPropertyUI = buildPropertyUI;
var computed = function (node, formData, fetcher, title) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
var result, _i, node_1, item, schema, data, error_1, data, error_2;
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0:
if (!Array.isArray(node)) return [3 /*break*/, 5];
result = [];
_i = 0, node_1 = node;
_a.label = 1;
case 1:
if (!(_i < node_1.length)) return [3 /*break*/, 4];
item = node_1[_i];
return [4 /*yield*/, computed(item, formData, fetcher, title)];
case 2:
schema = _a.sent();
result.push.apply(result, schema);
_a.label = 3;
case 3:
_i++;
return [3 /*break*/, 1];
case 4: return [2 /*return*/, result];
case 5:
if (!(node.type === 'service')) return [3 /*break*/, 10];
_a.label = 6;
case 6:
_a.trys.push([6, 9, , 10]);
return [4 /*yield*/, fetcher(node.schemaApi, formData !== null && formData !== void 0 ? formData : {})];
case 7:
data = (_a.sent()).data;
return [4 /*yield*/, computed(data, formData, fetcher, title)];
case 8: return [2 /*return*/, _a.sent()];
case 9:
error_1 = _a.sent();
return [2 /*return*/, []];
case 10:
if (!(node.type === 'tabs')) return [3 /*break*/, 12];
return [4 /*yield*/, computed(node.tabs.map(function (tab) { return (tslib_1.__assign(tslib_1.__assign({}, tab), { type: 'tabsItem' })); }), formData, fetcher, title)];
case 11: return [2 /*return*/, _a.sent()];
case 12:
if (!(node.type === 'form')) return [3 /*break*/, 20];
_a.label = 13;
case 13:
_a.trys.push([13, 18, , 20]);
if (!node.initApi) return [3 /*break*/, 16];
return [4 /*yield*/, fetcher(node.initApi, formData !== null && formData !== void 0 ? formData : {})];
case 14:
data = (_a.sent()).data;
return [4 /*yield*/, computed(node.body, data, fetcher, title)];
case 15: return [2 /*return*/, _a.sent()];
case 16: return [4 /*yield*/, computed(node.body, formData, fetcher, title)];
case 17: return [2 /*return*/, _a.sent()];
case 18:
error_2 = _a.sent();
return [4 /*yield*/, computed(node.body, formData, fetcher, title)];
case 19: return [2 /*return*/, _a.sent()];
case 20:
if (!(node.type === 'fieldSet' || node.type === 'tabsItem')) return [3 /*break*/, 22];
return [4 /*yield*/, computed(node.body, formData, fetcher, node.title)];
case 21: return [2 /*return*/, _a.sent()];
case 22:
if (node.type === 'property') {
if (title)
node.title = title;
return [2 /*return*/, [node]];
}
if (node.type === 'crud') {
return [2 /*return*/, [node]];
}
return [2 /*return*/, []];
}
});
}); };
var buildPrintFormSchema = function (formSchema, formData, fetcher) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
var dealSchema, schemas;
return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0:
dealSchema = function (schema) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
var _a, ok, data;
var _b, _c, _d, _e;
return tslib_1.__generator(this, function (_f) {
switch (_f.label) {
case 0:
if (!(schema.type === 'property')) return [3 /*break*/, 2];
return [4 /*yield*/, Promise.all((_c = (_b = schema.items) === null || _b === void 0 ? void 0 : _b.map(function (item) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
var _a, ok, data;
var _b, _c;
return tslib_1.__generator(this, function (_d) {
switch (_d.label) {
case 0:
if (!(item.content.type === 'static-mapping' && item.content.source)) return [3 /*break*/, 2];
return [4 /*yield*/, fetcher(item.content.source, formData).catch(function () { return ({ ok: false, data: null }); })];
case 1:
_a = _d.sent(), ok = _a.ok, data = _a.data;
ok && (item.content.map = data);
return [3 /*break*/, 4];
case 2:
if (!(item.content.type === 'input-table-field')) return [3 /*break*/, 4];
return [4 /*yield*/, Promise.all((_c = (_b = item.content.columns) === null || _b === void 0 ? void 0 : _b.map(function (column) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
var _a, ok, data;
return tslib_1.__generator(this, function (_b) {
switch (_b.label) {
case 0:
if (!(column.type === 'mapping' && column.source)) return [3 /*break*/, 2];
return [4 /*yield*/, fetcher(column.source, formData).catch(function () { return ({ ok: false, data: null }); })];
case 1:
_a = _b.sent(), ok = _a.ok, data = _a.data;
ok && (column.map = data);
_b.label = 2;
case 2: return [2 /*return*/];
}
});
}); })) !== null && _c !== void 0 ? _c : [])];
case 3:
_d.sent();
_d.label = 4;
case 4: return [2 /*return*/];
}
});
}); })) !== null && _c !== void 0 ? _c : [])];
case 1:
_f.sent();
return [3 /*break*/, 5];
case 2:
if (!(schema.type === 'crud')) return [3 /*break*/, 5];
return [4 /*yield*/, fetcher(schema.api, { perPage: 30, page: 1 }).catch(function () { return ({ ok: false, data: null }); })];
case 3:
_a = _f.sent(), ok = _a.ok, data = _a.data;
ok && (schema.data = data.items);
return [4 /*yield*/, Promise.all((_e = (_d = schema.columns) === null || _d === void 0 ? void 0 : _d.map(function (column) { return tslib_1.__awaiter(void 0, void 0, void 0, function () {
var _a, ok_1, data_1;
return tslib_1.__generator(this, function (_b) {
switch (_b.label) {
case 0:
if (!(column.type === 'mapping' && column.source)) return [3 /*break*/, 2];
return [4 /*yield*/, fetcher(column.source, formData).catch(function () { return ({ ok: false, data: null }); })];
case 1:
_a = _b.sent(), ok_1 = _a.ok, data_1 = _a.data;
ok_1 && (column.map = data_1);
_b.label = 2;
case 2: return [2 /*return*/];
}
});
}); })) !== null && _e !== void 0 ? _e : [])];
case 4:
_f.sent();
_f.label = 5;
case 5: return [2 /*return*/, schema];
}
});
}); };
return [4 /*yield*/, computed(formSchema, formData, fetcher)];
case 1:
schemas = _a.sent();
return [4 /*yield*/, Promise.all(schemas.map(function (schema) { return tslib_1.__awaiter(void 0, void 0, void 0, function () { return tslib_1.__generator(this, function (_a) {
switch (_a.label) {
case 0: return [4 /*yield*/, dealSchema(schema)];
case 1: return [2 /*return*/, _a.sent()];
}
}); }); }))];
case 2: return [2 /*return*/, _a.sent()];
}
});
}); };
exports.buildPrintFormSchema = buildPrintFormSchema;
var buildPrintFlowSchema = function (printInfo) {
var nodeList = printInfo === null || printInfo === void 0 ? void 0 : printInfo.processNodeList;
if (Array.isArray(nodeList)) {
var hasAssignComment_1 = nodeList.some(function (item) { return !!item.assignComment; });
var columns = Object.entries(FlowNodeData).filter(function (_a) {
var name = _a[0];
return hasAssignComment_1 ? true : name !== 'assignComment';
}).map(function (value) {
var name = value[0], label = value[1];
if (name === 'nodeType') {
return { label: label, name: name, type: 'mapping', map: { 0: '或签', 1: '会签', 2: '依次审批', 3: '系统签核', 4: '加签' } };
}
if (name === 'nodeStatus') {
return { label: label, name: name, type: 'mapping', map: { submit: '提交申请', waiting: '待签核', doing: '签核中', revert: '撤销', refuse: '拒绝', pass: '通过', return: '退回' } };
}
if (name === 'nodeUser') {
return { label: label, name: name, type: 'flow-user' };
}
if (name === 'attachments') {
return { label: label, name: name, type: 'flow-attachment' };
}
return { label: label, name: name };
});
return {
type: 'table',
name: 'flow-detail',
body: { columns: columns, data: nodeList }
};
}
return undefined;
};
exports.buildPrintFlowSchema = buildPrintFlowSchema;
function chunkArray(arr, size) {
var result = [];
for (var i = 0; i < arr.length; i += size) {
result.push(arr.slice(i, i + size));
}
return result;
}
exports.chunkArray = chunkArray;
//# sourceMappingURL=./renderers/Lion/LabelPrint/components/detail/utils.js.map