sohelp-ele
Version:
SohelpEle Library
748 lines (746 loc) • 30.3 kB
JavaScript
(function() {
"use strict";
try {
if (typeof document != "undefined") {
var elementStyle = document.createElement("style");
elementStyle.appendChild(document.createTextNode(` "UTF-8";
/* \u4E3A\u5355\u9009\u65F6 \u6DFB\u52A0.custom-radio \u7C7B checkbox \u6539\u4E3A radio \u6837\u5F0F*/
/* \u4E0D\u663E\u793A \u8868\u5934 checobox \u590D\u9009\u6846 */
[data-v-49002cbf] .custom-radio .el-table__header-wrapper .el-checkbox__inner {
display: none;
}
[data-v-49002cbf] .custom-radio .el-table__row .el-table-column--selection .el-checkbox__inner {
border-radius: 100%;
}
/* \u8868\u5934\u662F\u5426\u663E\u793A radio \u6846 \u53BB\u9664\u5168\u9009\u529F\u80FD*/
/* ::v-deep .custom-radio .el-table__header-wrapper .el-table-column--selection .cell::after{
content: '';
display: inline-block;
position: relative;
border: 1px solid #DCDFE6;
border-radius: 100%;
box-sizing: border-box;
width: 14px;
height: 14px;
background-color: #FFF;
z-index: 1;
transition: border-color .25s cubic-bezier(.71,-.46,.29,1.46),background-color .25s cubic-bezier(.71,-.46,.29,1.46);
} */
.hight[data-v-49002cbf] {
border: 5px solid #f60 !important;
}
[data-v-49002cbf] .el-table .warning-row {
background: #ebf4fe;
}
.el-menu--vertical .el-menu--popup[data-v-49002cbf] {
width: auto !important;
min-width: auto !important;
}
.el-menu--vertical .el-menu--popup .el-menu-item[data-v-49002cbf] {
padding-left: 10px !important;
}
[data-v-49002cbf] .el-table .el-table__header .el-table__cell .cell div {
display: inline-block;
}
[data-v-49002cbf] .el-table__row {
font-size: 12px;
}
[data-v-49002cbf] .el-table__row .el-link {
font-size: 14px;
}
[data-v-49002cbf] .el-table__row .el-table__cell {
padding: 0 !important;
}
[data-v-49002cbf] .el-table__row .el-table__cell .cell {
padding: 0 !important;
}
[data-v-49002cbf] .el-table__row .el-table__cell .cell .table-row {
padding: 0 5px;
height: 23px;
line-height: 23px;
}
[data-v-49002cbf] .el-table__row .el-table__cell .cell .el-input .el-input__inner {
border-radius: 0;
padding: 0 5px;
}
[data-v-49002cbf] .el-table__row .el-table__cell .cell .el-input .el-select .el-input .el-select__caret {
transform-origin: center center;
}
[data-v-49002cbf] .el-table__row .el-table__cell .cell .el-input--mini .el-input__icon {
line-height: 25px;
}
[data-v-49002cbf] .el-table__row .el-table__cell .cell .el-input--mini .el-input__inner {
height: 23px;
line-height: 23px;
}
:root body[sohelp-theme-mode=mini] .el-link[data-v-49002cbf] {
font-size: 12px;
}
:root body[sohelp-theme-mode=mini] .el-table__row[data-v-49002cbf] {
font-size: 12px;
}
:root body[sohelp-theme-mode=mini] .el-table__row .cell[data-v-49002cbf] {
height: 23px;
line-height: 23px;
}
:root body[sohelp-theme-mode=mini] .el-table__row .cell .table-row[data-v-49002cbf] {
line-height: 23px;
height: 23px;
}
:root body[sohelp-theme-mode=small] .el-link[data-v-49002cbf] {
font-size: 12px;
}
:root body[sohelp-theme-mode=small] .el-table__row[data-v-49002cbf] {
font-size: 14px;
}
:root body[sohelp-theme-mode=small] .el-table__row .cell[data-v-49002cbf] {
height: 28px;
line-height: 28px;
}
:root body[sohelp-theme-mode=small] .el-table__row .cell .table-row[data-v-49002cbf] {
line-height: 28px;
height: 28px;
}
:root body[sohelp-theme-mode=medium] .el-table__row[data-v-49002cbf] {
font-size: 16px;
}
:root body[sohelp-theme-mode=medium] .el-table__row .cell[data-v-49002cbf] {
height: 35px;
line-height: 35px;
}
:root body[sohelp-theme-mode=medium] .el-table__row .cell .table-row[data-v-49002cbf] {
line-height: 35px;
height: 35px;
}
:root body[sohelp-theme-mode=medium] .el-link[data-v-49002cbf] {
font-size: 14px;
}
:root body[sohelp-theme-mode=large] .el-link[data-v-49002cbf] {
font-size: 14px;
}
:root body[sohelp-theme-mode=large] .el-table__row[data-v-49002cbf] {
font-size: 18px;
}
:root body[sohelp-theme-mode=large] .el-table__row .cell[data-v-49002cbf] {
height: 40px;
line-height: 40px;
}
:root body[sohelp-theme-mode=large] .el-table__row .cell .table-row[data-v-49002cbf] {
line-height: 40px;
height: 40px;
}
.el-pagination[data-v-49002cbf] {
margin-top: 20px;
}`));
document.head.appendChild(elementStyle);
}
} catch (e) {
console.error("vite-plugin-css-injected-by-js", e);
}
})();
"use strict";
var TableAdvanceConfiguration = require("./components/TableAdvanceConfiguration");
var TableToolbar = require("./components/TableToolbar");
var TableSearch = require("./components/TableSearch");
var SohelpDictSelect = require("../sohelp-dict-select");
var SohelpDynSelect = require("../sohelp-dyn-select");
var TableConfigurationMixin = require("./mixins/TableConfigurationMixin");
var TableDatasourceMixin = require("./mixins/TableDatasourceMixin");
var SohelpTooltip = require("../sohelp-tooltip/index");
function _interopDefaultLegacy(e) {
return e && typeof e === "object" && "default" in e ? e : { "default": e };
}
var TableAdvanceConfiguration__default = /* @__PURE__ */ _interopDefaultLegacy(TableAdvanceConfiguration);
var TableToolbar__default = /* @__PURE__ */ _interopDefaultLegacy(TableToolbar);
var TableSearch__default = /* @__PURE__ */ _interopDefaultLegacy(TableSearch);
var SohelpDictSelect__default = /* @__PURE__ */ _interopDefaultLegacy(SohelpDictSelect);
var SohelpDynSelect__default = /* @__PURE__ */ _interopDefaultLegacy(SohelpDynSelect);
var TableConfigurationMixin__default = /* @__PURE__ */ _interopDefaultLegacy(TableConfigurationMixin);
var TableDatasourceMixin__default = /* @__PURE__ */ _interopDefaultLegacy(TableDatasourceMixin);
var SohelpTooltip__default = /* @__PURE__ */ _interopDefaultLegacy(SohelpTooltip);
var render = function() {
var _vm = this;
var _h = _vm.$createElement;
var _c = _vm._self._c || _h;
return _c("div", [_c("ele-pro-table", _vm._g(_vm._b({ directives: [{ name: "loading", rawName: "v-loading", value: _vm.loading, expression: "loading" }], ref: "table", class: { "custom-radio": !_vm.multiple }, attrs: { "element-loading-text": "\u6B63\u5728\u52A0\u8F7D\u4E2D...", "datasource": _vm.datasource, "fit": false, "needPage": false, "autoRead": _vm.autoRead, "row-class-name": _vm.tableRowClassName, "selection": _vm.selection, "rowClickChecked": "", "columns": _vm.columns, "row-key": _vm.getRowKeys }, on: { "columns-change": _vm.columnsChange, "header-dragend": _vm.resizeColumn, "current-change": _vm.choose, "update:selection": function($event) {
_vm.selection = $event;
}, "row-click": _vm.rowClick, "refresh": function($event) {
return _vm.refresh();
}, "selection-change": _vm.selectChange }, scopedSlots: _vm._u([_vm._l(_vm.original, function(item, idx) {
return { key: item.slot, fn: function(ref) {
var row = ref.row;
var column = ref.column;
var $index = ref.$index;
return [_c("div", { key: idx }, [item.type === "operation" ? _c("div", { staticStyle: { "display": "flex" } }, [_vm._l(_vm.tableConfiguration.operationToolbars, function(it) {
return it.buttonType != "more" ? _c("div", [_c("el-link", { staticStyle: { "margin": "0px 5px" }, attrs: { "icon": it.iconCls, "type": "primary" }, on: { "click": function($event) {
return _vm.onAction(row, column, it, $index);
} } }, [_vm._v(_vm._s(it.title) + " ")])], 1) : _vm._e();
}), _vm.judge ? _c("el-dropdown", { staticStyle: { "margin": "0px 5px" }, attrs: { "trigger": "click", "placement": "bottom-start" } }, [_c("div", { staticClass: "el-dropdown-link" }, [_c("el-link", { attrs: { "type": "primary", "underline": false } }, [_vm._v(" \u66F4\u591A"), _c("i", { staticClass: "el-icon-arrow-down" })])], 1), _c("el-dropdown-menu", { attrs: { "slot": "dropdown" }, slot: "dropdown" }, _vm._l(_vm.tableConfiguration.more, function(t) {
return _c("el-dropdown-item", [_c("el-link", { attrs: { "underline": false, "icon": t.iconCls }, on: { "click": function($event) {
return _vm.onAction(row, column, t, $index);
} } }, [_vm._v(" " + _vm._s(t.title) + " ")])], 1);
}), 1)], 1) : _vm._e()], 2) : item.editor === "checkbox" ? [_c("el-switch", { attrs: { "active-value": 1, "inactive-value": 0 }, on: { "change": function($event) {
return _vm.onChange(item.slot, $index, row);
} }, model: { value: row[item.slot], callback: function($$v) {
_vm.$set(row, item.slot, $$v);
}, expression: "row[item.slot]" } })] : _vm.currentColumnName === item.slot && _vm.currentRows === $index && item.editable === "1" && item.editor === "date" ? [_c("el-date-picker", { staticClass: "el-date", attrs: { "type": "date", "format": "yyyy-MM-dd HH:mm:ss", "value-format": "yyyy-MM-dd HH:mm:ss", "placeholder": "\u9009\u62E9\u65E5\u671F", "placement": "bottom-start" }, on: { "change": function($event) {
return _vm.onChange(item.slot, $index, row);
} }, model: { value: row[item.slot], callback: function($$v) {
_vm.$set(row, item.slot, $$v);
}, expression: "row[item.slot]" } })] : _vm.currentColumnName === item.slot && _vm.currentRows === $index && item.editable === "1" && item.editor === "dictcombo" ? [_c("sohelp-dyn-select", _vm._b({ attrs: { "dict": item.dict, "data": _vm.dictData[item.name] }, on: { "change": function($event) {
return _vm.onChange(item.slot, $index, row);
} }, model: { value: row[item.slot], callback: function($$v) {
_vm.$set(row, item.slot, $$v);
}, expression: "row[item.slot]" } }, "sohelp-dyn-select", _vm.getEditorConfig(item.editorParam), false))] : _vm.currentColumnName === item.slot && _vm.currentRows === $index && item.editable === "1" && item.editor === "dyncombo" ? [_c("sohelp-dyn-select", _vm._b({ attrs: { "data": _vm.dynSelectData[item.name] }, on: { "change": function($event) {
return _vm.onChange(item.slot, $index, row);
} }, model: { value: row[item.slot], callback: function($$v) {
_vm.$set(row, item.slot, $$v);
}, expression: "row[item.slot]" } }, "sohelp-dyn-select", _vm.getEditorConfig(item.editorParam), false))] : item.type === "boolean" ? [row[item.slot] ? _c("div", { staticClass: "table-row" }, [_vm._v("V")]) : _c("div")] : _vm.currentColumnName === item.slot && _vm.currentRows === $index && item.editable === "1" && item.editor === "text" ? [_c("el-input", { directives: [{ name: "focus", rawName: "v-focus" }], style: { width: item.width }, attrs: { "maxlength": item.length }, on: { "blur": function($event) {
return _vm.onBlur(item, row, $index);
} }, nativeOn: { "keyup": function($event) {
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "enter", 13, $event.key, "Enter")) {
return null;
}
return _vm.onChecked2(item, row, $index);
} }, model: { value: row[item.slot], callback: function($$v) {
_vm.$set(row, item.slot, $$v);
}, expression: "row[item.slot]" } })] : _vm.currentColumnName === item.slot && _vm.currentRows === $index && item.editable === "1" && item.digits > 0 && item.editor === "number" ? [_c("el-input", { directives: [{ name: "focus", rawName: "v-focus" }], style: { width: item.width }, attrs: { "onkeyup": "value=value\n .replace(/[^\\-\\d.]/g,)\n .replace(/^\\./g,'')\n .replace(/\\.{2,}/g,'.')\n .replace(/(\\.\\d+)\\./g,'$1')\n .replace(/(-)\\./g,'$1')\n .replace(/\\-{2}/g,'')\n .replace(/(\\d+|\\.)-/g,'$1')\n .replace(/-(e){2,}/g,'$1')\n .replace(/(-)0+(\\d+)/g,'$1$2')\n .replace(/^0+(\\d)/,'$1')\n .replace('-','$%$').replace(/\\-/g,'').replace('$%$','-')" }, on: { "blur": function($event) {
return _vm.onBlur(item, row, $index);
} }, nativeOn: { "keyup": function($event) {
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "enter", 13, $event.key, "Enter")) {
return null;
}
return _vm.onChecked2(item, row, $index);
} }, model: { value: row[item.slot], callback: function($$v) {
_vm.$set(row, item.slot, $$v);
}, expression: "row[item.slot]" } })] : _vm.currentColumnName === item.slot && _vm.currentRows === $index && item.editable === "1" && item.editor === "number" ? [_c("el-input", { directives: [{ name: "focus", rawName: "v-focus" }], style: { width: item.width }, attrs: { "onkeyup": "value=value.replace(/[^-\\d]/g,'')\n .replace(/^0(\\d)/,'$1')\n .replace(/^\\-0/,'-')\n .replace('-','$%$').replace(/\\-/g,'').replace('$%$','-');\n " }, on: { "blur": function($event) {
return _vm.onBlur(item, row, $index);
} }, nativeOn: { "keyup": function($event) {
if (!$event.type.indexOf("key") && _vm._k($event.keyCode, "enter", 13, $event.key, "Enter")) {
return null;
}
return _vm.onChecked2(item, row, $index);
} }, model: { value: row[item.slot], callback: function($$v) {
_vm.$set(row, item.slot, $$v);
}, expression: "row[item.slot]" } })] : [row[item.slot] != null || row[item.slot] != void 0 ? _c("sohelp-tooltip", { attrs: { "content": _vm.tooltipRender(row[item.slot], row, item, $index), "placement": "top" } }, [_c("div", { staticClass: "table-row", style: {
width: "100%",
overflow: "hidden",
textOverflow: "ellipsis",
whiteSpace: "nowrap"
}, domProps: { "innerHTML": _vm._s(_vm.columnRender(row[item.slot], row, item, $index)) }, on: { "click": function($event) {
return _vm.onChecked(item, row, $index);
} } })]) : row ? _c("div", { staticClass: "table-row", style: { width: item.width }, on: { "click": function($event) {
return _vm.onChecked(item, row, $index);
} } }, [_vm._v(" " + _vm._s(row[item.slot]) + " ")]) : _c("div", { staticClass: "table-row", style: { width: item.width }, on: { "click": function($event) {
return _vm.onChecked(item, row, $index);
} } }, [_vm._v(" " + _vm._s(row[item.slot]) + " ")])]], 2)];
} };
}), !_vm.hideToolbar ? { key: "toolbar", fn: function() {
return [_vm._t("toolbar"), _c("TableToolbar", { ref: "TableToolbar", attrs: { "toolbars": _vm.tableConfiguration.toolbars, "selection": _vm.selection }, on: { "operation": _vm.operation } })];
}, proxy: true } : null, !_vm.hideToolbar ? { key: "toolkit", fn: function() {
return [_vm._t("toolkit"), _vm.isRole() ? _c("TableAdvanceConfiguration", { attrs: { "requestValue": _vm.tableConfiguration.requestValue, "properties": _vm.tableConfiguration.properties, "refid": _vm.refid, "columns": _vm.columns } }) : _vm._e()];
}, proxy: true } : null], null, true) }, "ele-pro-table", _vm.$attrs, false), _vm.$listeners), [_vm._l(_vm.columns, function(item, idx) {
return _c("template", { slot: item.headerSlot }, [_c("div", { key: idx }, [item.not_null == "1" ? _c("div", { staticStyle: { "color": "red" } }, [_vm._v(" " + _vm._s(item.label) + " ")]) : item.editable == "1" ? _c("div", { staticStyle: { "color": "blue" } }, [_vm._v(" " + _vm._s(item.label) + " ")]) : _c("div", { staticStyle: { "color": "black" } }, [_vm._v(" " + _vm._s(item.label) + " ")]), _c("TableSearch", { attrs: { "column": item }, on: { "search": _vm.tableSearch } })], 1)]);
})], 2), _vm.isPaging ? _c("el-pagination", { attrs: { "small": _vm.smallPaging, "current-page": _vm.start, "page-size": _vm.limit, "layout": _vm.smallPaging ? "prev, pager, next" : "total, sizes, prev, pager, next, jumper", "total": _vm.total }, on: { "size-change": _vm.onChangePage, "current-change": _vm.handleCurrentChange } }) : _vm._e()], 1);
};
var staticRenderFns = [];
var index_vue_vue_type_style_index_0_scoped_true_lang = "";
function normalizeComponent(scriptExports, render2, staticRenderFns2, functionalTemplate, injectStyles, scopeId, moduleIdentifier, shadowMode) {
var options = typeof scriptExports === "function" ? scriptExports.options : scriptExports;
if (render2) {
options.render = render2;
options.staticRenderFns = staticRenderFns2;
options._compiled = true;
}
if (functionalTemplate) {
options.functional = true;
}
if (scopeId) {
options._scopeId = "data-v-" + scopeId;
}
var hook;
if (moduleIdentifier) {
hook = function(context) {
context = context || this.$vnode && this.$vnode.ssrContext || this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext;
if (!context && typeof __VUE_SSR_CONTEXT__ !== "undefined") {
context = __VUE_SSR_CONTEXT__;
}
if (injectStyles) {
injectStyles.call(this, context);
}
if (context && context._registeredComponents) {
context._registeredComponents.add(moduleIdentifier);
}
};
options._ssrRegister = hook;
} else if (injectStyles) {
hook = shadowMode ? function() {
injectStyles.call(
this,
(options.functional ? this.parent : this).$root.$options.shadowRoot
);
} : injectStyles;
}
if (hook) {
if (options.functional) {
options._injectStyles = hook;
var originalRender = options.render;
options.render = function renderWithStyleInjection(h, context) {
hook.call(context);
return originalRender(h, context);
};
} else {
var existing = options.beforeCreate;
options.beforeCreate = existing ? [].concat(existing, hook) : [hook];
}
}
return {
exports: scriptExports,
options
};
}
const __vue2_script = {
name: "SohelpTable",
directives: {
focus: {
inserted(el) {
el.querySelector("input").focus();
}
}
},
mixins: [TableConfigurationMixin__default["default"], TableDatasourceMixin__default["default"]],
inject: ["$this"],
props: {
extendEntity: {
type: String,
default: ""
},
multiple: {
type: Boolean,
default: true
},
url: {
type: String,
default: ""
},
namespace: {
type: String,
default: ""
},
refid: {
type: String,
default: ""
},
autoRead: {
type: Boolean,
default: true
},
isPaging: {
type: Boolean,
default: true
},
smallPaging: {
type: Boolean,
default: false
},
rowCheckbox: {
type: Boolean,
default: true
},
rowNumber: {
type: Boolean,
default: false
},
limit: {
type: Number,
default: 20
},
hideToolbar: {
type: Boolean,
default: false
}
},
components: {
TableAdvanceConfiguration: TableAdvanceConfiguration__default["default"],
TableToolbar: TableToolbar__default["default"],
TableSearch: TableSearch__default["default"],
SohelpDictSelect: SohelpDictSelect__default["default"],
SohelpDynSelect: SohelpDynSelect__default["default"],
SohelpTooltip: SohelpTooltip__default["default"]
},
data() {
return {
loading: true,
start: 1,
total: 0,
originDataSource: [],
selection: [],
currentRows: "",
currentColumnName: "",
insertedId: 1,
rowData: {},
dictData: {},
dynSelectData: {},
judge: false,
params: {},
baseParams: {},
done: false
};
},
computed: {
tooltipRender() {
return (value, record, column, index2) => {
return (this.onColumnRender(value, record, column, index2) + "").replace(/<[^>]*>/g, "");
};
},
columnRender() {
return (value, record, column, index2) => {
return this.onColumnRender(value, record, column, index2) + "";
};
}
},
methods: {
isRole() {
var _a, _b, _c;
let role = (_c = (_b = (_a = this.$store) == null ? void 0 : _a.state) == null ? void 0 : _b.user) == null ? void 0 : _c.info;
if ((role == null ? void 0 : role.is_administrator) === 1 || (role == null ? void 0 : role.is_developer) === 1) {
return true;
} else {
return false;
}
},
getSelected() {
if (this.selection && this.selection.length > 0) {
return this.selection[0];
} else {
this.$message.error("\u8BF7\u9009\u62E9\u6570\u636E");
}
},
getSelection() {
if (this.selection && this.selection.length > 0) {
return this.selection;
} else {
this.$message.error("\u8BF7\u9009\u62E9\u6570\u636E");
}
},
rowClick(row) {
this.rowData = row;
},
choose(record) {
this.$emit("currentChange", record);
},
handleCurrentChange(a) {
this.start = a;
this.reload();
},
onChangePage(a) {
this.limit = a;
this.reload();
},
onChange(value, index2, record) {
if (record.native_record_status !== "inserted" || !record.native_record_status) {
let data = {};
data[this.tableConfiguration.primaryKey + "1"] = this.originDataSource[index2][this.tableConfiguration.primaryKey];
data[value] = this.datasource[index2][value];
this.modifyDataSource.updated.push(data);
this.currentRows = "";
}
},
reset(index2) {
this.filters.data[index2] = "";
},
onBlur(columns, record, index2) {
if (record.native_record_status !== "inserted" || !record.native_record_status) {
let data = {};
data[this.tableConfiguration.primaryKey + "1"] = this.originDataSource[index2][this.tableConfiguration.primaryKey];
data[columns.slot] = record[columns.slot];
this.modifyDataSource.updated.push(data);
this.currentRows = "";
this.currentColumnName = columns.slot;
} else {
this.currentRows = "";
this.currentColumnName = columns.slot;
}
this.$emit("valueChange", {
columns,
record
});
},
setValues(values) {
let data = [];
this.datasource.forEach((e) => {
if (e.id === values.rowKey) {
data.push(values.values);
} else {
data.push(e);
}
});
this.datasource = data;
},
startEdit(key, index2, value) {
if (!this.styleInput && this.selection.length === 1) {
this.currentRows = index2;
this.currentColumnName = key;
let data = this.selection[0];
data[key] = value;
this.datasource[index2] = data;
} else {
this.$message.error("\u8BF7\u9009\u62E9\u4E00\u9879\u6570\u636E");
}
},
onChecked(columns, record, index2) {
this.currentRows = index2;
this.currentColumnName = columns.slot;
},
onAction(record, column, button, index2) {
try {
this.rowData = record;
let func = new Function("record", "column", "button", "index", button.handler);
func.call(this, record, column, button, index2);
} catch (e) {
console.log(
"sohelp-ele/sohelp-table.onAction(record, column, button,index)",
button.handler,
e
);
}
},
resizeColumn(width, key, column) {
for (let i = 0; i < this.tableConfiguration.properties.length; i++) {
if (this.tableConfiguration.properties[i].name === column.property) {
this.tableConfiguration.properties[i].width = width;
}
}
let data = [];
this.columns.forEach((e) => {
if (e.prop === column.property) {
e.width = column.width;
data.push(e);
} else {
data.push(e);
}
});
this.columns = data;
},
endEdit() {
this.currentRows = "";
this.currentColumnName = "";
},
onChecked2(columns, record, index2, value) {
this.currentRows = "";
this.currentColumnName = columns.slot;
},
operation(value) {
try {
if (value.type === "custom") {
let func = new Function(value.handler);
func.call(this);
} else if (value.type === "add") {
this.add();
} else if (value.type === "save") {
this.save();
} else if (value.type === "del") {
this.remove();
} else if (value.type === "refresh") {
this.refresh();
}
} catch (e) {
console.log("sohelp-ele/sohelp-table.operation(value)", value, e);
this.$message.error(
"sohelp-ele/sohelp-table.operation(value)" + JSON.stringify(value)
);
}
value.loading = false;
},
getRowKeys(row) {
return row.id;
},
onDropClick() {
let arr = [];
let sum = [];
if (!this.selection.length) {
this.$message.error("\u8BF7\u9009\u62E9\u8981\u5220\u9664\u6570\u636E");
}
for (let i = 0; i < this.selection.length; i++) {
let data = {};
data[this.tableConfiguration.primaryKey] = this.selection[i][this.tableConfiguration.primaryKey];
this.modifyDataSource.deleted.push(data);
sum.push(this.selection[i][this.tableConfiguration.primaryKey]);
}
this.datasource.forEach((rec) => {
if (!sum.includes(rec[this.tableConfiguration.primaryKey])) {
arr.push(rec);
}
});
this.datasource = arr;
this.selection = [];
},
columnsChange(value) {
let name = [];
for (let i = 0; i < value.length; i++) {
name.push(value[i].prop);
for (let j = 0; j < this.tableConfiguration.properties.length; j++) {
if (value[i].prop == this.tableConfiguration.properties[j].name) {
let t = this.tableConfiguration.properties[i];
this.tableConfiguration.properties[i] = this.tableConfiguration.properties[j];
this.tableConfiguration.properties[j] = t;
}
}
}
this.tableConfiguration.properties.forEach((e) => {
if (!name.includes(e.name)) {
e.hidden = "1";
} else {
e.hidden = "0";
}
});
for (let i = 0; i < this.columns.length; i++) {
let recordData = this.tableConfiguration.properties[i];
this.columns[i] = {
label: recordData.header,
prop: recordData.name,
editor: recordData.editor,
editable: recordData.editable,
width: parseInt(recordData.width),
align: recordData.align ? recordData.align : "",
customFilterDropdown: recordData.filter,
slot: recordData.name,
headerSlot: recordData.name + "Header",
resizable: true,
type: recordData.type,
show: parseInt(recordData.hidden) ? false : true,
not_null: recordData.not_null ? recordData.not_null : "",
length: recordData.length,
fixed: recordData.lock === "1" ? "right" : false,
render: recordData.render,
multiline: recordData.multiline,
customCell: this.renderTimeBackground,
editorParam: recordData.editor_param,
summaryRender: recordData.summaryRender
};
}
},
onTableChange(value) {
if (value) {
return true;
} else {
return false;
}
},
tableRowClassName({ row, rowIndex }) {
if (this.selection.length) {
let color = "";
this.selection.forEach((e) => {
if (row[this.tableConfiguration.primaryKey] === e[this.tableConfiguration.primaryKey]) {
color = "warning-row";
}
});
return color;
}
return "";
},
getValues() {
return this.datasource;
},
getRecordUpdater() {
let value = this.modifyDataSource;
let data = [];
const _namespace = this.extendEntity || this.tableConfiguration.extendEntity || this.namespace;
if (value.inserted) {
for (let i = 0; i < value.inserted.length; i++) {
let record = {};
let rec = {
native_record_status: "",
namespace: "",
record: {},
pk_data: {}
};
rec.native_record_status = "inserted";
rec.namespace = _namespace + ".insert";
record = value.inserted[i];
record[this.tableConfiguration.primaryKey] = null;
delete record["native_record_status"];
rec.record = record;
data.push(rec);
}
}
if (value.updated) {
for (let i = 0; i < value.updated.length; i++) {
let updatedArray = value.updated[i];
let rec = {
native_record_status: "",
namespace: "",
record: {},
pk_data: {}
};
rec.native_record_status = "updated";
rec.namespace = _namespace + ".update";
rec.pk_data[this.tableConfiguration.primaryKey] = updatedArray[this.tableConfiguration.primaryKey + "1"];
rec.record = updatedArray;
delete rec.record[this.tableConfiguration.primaryKey + "1"];
data.push(rec);
}
}
if (value.deleted) {
for (let i = 0; i < value.deleted.length; i++) {
let deletedArray = value.deleted[i];
let rec = {
native_record_status: "",
namespace: "",
record: {},
pk_data: {}
};
rec.native_record_status = "deleted";
rec.namespace = _namespace + ".delete";
rec.pk_data = deletedArray;
data.push(rec);
}
}
return data;
},
selectChange(row) {
if (!this.multiple && row && row.length > 1) {
this.$refs.table.clearSelection();
this.$refs.table.toggleRowSelection(row.pop());
}
}
},
async created() {
this.loading = true;
if (this.refid) {
let res = await this.loadColumns(this.refid);
if (res.meta.success) {
if (this.autoRead) {
this.load({}).catch((e) => {
this.$message.error(e);
});
}
} else {
this.$message.error(res.meta.message);
}
}
this.loading = false;
},
mounted() {
}
};
const __cssModules = {};
var __component__ = /* @__PURE__ */ normalizeComponent(
__vue2_script,
render,
staticRenderFns,
false,
__vue2_injectStyles,
"49002cbf",
null,
null
);
function __vue2_injectStyles(context) {
for (let o in __cssModules) {
this[o] = __cssModules[o];
}
}
var index = /* @__PURE__ */ function() {
return __component__.exports;
}();
module.exports = index;