UNPKG

yuang-framework-ui-pc

Version:

yuang-framework-ui-pc Library

195 lines (194 loc) 5.89 kB
"use strict"; const vue = require("vue"); const RoleQuery = require("./role-query"); const httpConfig = require("yuang-framework-ui-common/lib/config/httpConfig"); const applicationConfig = require("yuang-framework-ui-common/lib/config/applicationConfig"); const _sfc_main = /* @__PURE__ */ vue.defineComponent({ ...{ name: "UimsUserList" }, __name: "role-list", props: { param: {}, application: {} }, setup(__props, { expose: __expose }) { const props = __props; const queryRef = vue.ref(null); const tableRef = vue.ref(null); const columns = vue.ref([ { type: "selection", columnKey: "selection", width: 50, align: "center", fixed: "left", selectable: (row) => { return !row.isRoleExistsUser; } }, { type: "index", columnKey: "index", label: "编号", width: 70, align: "center", fixed: "left" }, { prop: "name", label: "角色名称", sortable: "custom", minWidth: 200, align: "left", slot: "name" }, { prop: "code", label: "角色代码", sortable: "custom", minWidth: 180, align: "left" }, { prop: "status", label: "状态", width: 90, align: "center", sortable: "custom", slot: "status", formatter: (row) => row.status == 1 ? "正常" : "禁用" }, { prop: "remark", label: "备注", minWidth: 240, align: "center" }, { prop: "sequence", label: "排序号", sortable: "custom", width: 100, align: "center" }, { prop: "createUserName", label: "创建人", sortable: "custom", width: 100, align: "center" }, { prop: "createTime", label: "创建时间", sortable: "custom", width: 180, align: "center" }, { prop: "lastUpdateUserName", label: "最后更新人", sortable: "custom", width: 120, align: "center" }, { prop: "lastUpdateTime", label: "最后更新时间", sortable: "custom", width: 180, align: "center" }, { columnKey: "action", label: "操作", width: 80, align: "center", slot: "action", fixed: "right" } ]); const selections = vue.ref([]); const datasource = async ({ queryParam, pageParam, orderParamList }) => { var _a, _b; const data = { ...queryParam, ...pageParam, orderParamList, uimsApplicationIdForEqual: props.application.id, // 查询角色存在的用户id selectRoleExistsUserIdForEqual: ((_a = props.param) == null ? void 0 : _a.isDisableSelectExistsUser) && ((_b = props.param) == null ? void 0 : _b.selectRoleExistsUserId) }; const res = await httpConfig.http.post(`${applicationConfig.application.gatewayServerBaseUrl}/uims-api/admin/uims-role/selectPage`, data); return res.data.data; }; const queryPage = () => { var _a, _b, _c; selections.value = []; (_c = (_a = tableRef.value) == null ? void 0 : _a.reload) == null ? void 0 : _c.call(_a, { currentPage: 1, queryParam: (_b = queryRef.value) == null ? void 0 : _b.queryForm }); }; vue.watch( () => props.application.id, () => { var _a, _b; (_b = (_a = queryRef.value) == null ? void 0 : _a.resetFields) == null ? void 0 : _b.call(_a); queryPage(); } ); __expose({ selections }); return (_ctx, _cache) => { const _component_el_tag = vue.resolveComponent("el-tag"); const _component_ele_pro_table = vue.resolveComponent("ele-pro-table"); return vue.openBlock(), vue.createElementBlock(vue.Fragment, null, [ vue.createVNode(RoleQuery, { ref_key: "queryRef", ref: queryRef, style: { "margin-bottom": "-14px" }, onQuery: queryPage }, null, 512), vue.createVNode(_component_ele_pro_table, { ref_key: "tableRef", ref: tableRef, "row-key": "id", border: "", sticky: false, columns: columns.value, datasource, "show-overflow-tooltip": true, selections: selections.value, "onUpdate:selections": _cache[0] || (_cache[0] = ($event) => selections.value = $event), "highlight-current-row": true, "header-cell-style": { "text-align": "center" }, "footer-style": { paddingBottom: "16px" } }, { name: vue.withCtx(({ row }) => [ vue.createTextVNode(vue.toDisplayString(row.name) + " ", 1), row.isSystemRole ? (vue.openBlock(), vue.createBlock(_component_el_tag, { key: 0, type: "warning", "disable-transitions": true }, { default: vue.withCtx(() => _cache[1] || (_cache[1] = [ vue.createTextVNode("系统角色") ])), _: 1, __: [1] })) : vue.createCommentVNode("", true) ]), status: vue.withCtx(({ row }) => [ vue.createVNode(_component_el_tag, { type: row.status === 1 ? "success" : "danger", "disable-transitions": true }, { default: vue.withCtx(() => [ vue.createTextVNode(vue.toDisplayString(row.status === 1 ? "正常" : "禁用"), 1) ]), _: 2 }, 1032, ["type"]) ]), _: 1 }, 8, ["columns", "selections"]) ], 64); }; } }); module.exports = _sfc_main;