|
|
@@ -1,644 +0,0 @@
|
|
|
-import D from './ContentContainer-BF98H707.js';
|
|
|
-import { _ as P, B as A } from './Modal-5FpMAvV9.js';
|
|
|
-import { T as M } from './TreeParts-YNkYa4Hd.js';
|
|
|
-import { _ as S } from './_plugin-vue_export-helper-DlAUqK2U.js';
|
|
|
-import {
|
|
|
- ab as U,
|
|
|
- c as m,
|
|
|
- o as I,
|
|
|
- d as T,
|
|
|
- e as C,
|
|
|
- f as n,
|
|
|
- w as r,
|
|
|
- F as q,
|
|
|
- q as E,
|
|
|
- j as s,
|
|
|
- g as V,
|
|
|
- ad as B,
|
|
|
- t as F,
|
|
|
- r as y,
|
|
|
- x as Q,
|
|
|
- b as z,
|
|
|
- m as j,
|
|
|
- ac as G,
|
|
|
- B as $,
|
|
|
- a1 as O,
|
|
|
- s as x,
|
|
|
- i as L
|
|
|
-} from './index-Q0E3WkDV.js';
|
|
|
-import { Q as W, a as H, D as J, U as K, b as X, C as Y } from './resource-wuSN2AiV.js';
|
|
|
-const Z = [
|
|
|
- 'iconVoice',
|
|
|
- 'IconSunFill',
|
|
|
- 'IconApps',
|
|
|
- 'IconArchive',
|
|
|
- 'IconBarChart',
|
|
|
- 'IconBook',
|
|
|
- 'IconBookmark',
|
|
|
- 'IconBranch',
|
|
|
- 'IconBug',
|
|
|
- 'IconBulb',
|
|
|
- 'IconCalendar',
|
|
|
- 'IconCamera',
|
|
|
- 'IconCloud',
|
|
|
- 'IconCommand',
|
|
|
- 'IconCommon',
|
|
|
- 'IconCompass',
|
|
|
- 'IconComputer',
|
|
|
- 'IconCopyright',
|
|
|
- 'IconDashboard',
|
|
|
- 'IconDesktop',
|
|
|
- 'IconDice',
|
|
|
- 'IconDriveFile',
|
|
|
- 'IconEar',
|
|
|
- 'IconEmail',
|
|
|
- 'IconEmpty',
|
|
|
- 'IconExperiment',
|
|
|
- 'IconFileAudio',
|
|
|
- 'IconFileImage',
|
|
|
- 'IconFilePdf',
|
|
|
- 'IconFileVideo',
|
|
|
- 'IconFile',
|
|
|
- 'IconFire',
|
|
|
- 'IconFolderAdd',
|
|
|
- 'IconFolderDelete',
|
|
|
- 'IconFolder',
|
|
|
- 'IconGift',
|
|
|
- 'IconIdcard',
|
|
|
- 'IconImageClose',
|
|
|
- 'IconImage',
|
|
|
- 'IconInteraction',
|
|
|
- 'IconLanguage',
|
|
|
- 'IconLayers',
|
|
|
- 'IconLayout',
|
|
|
- 'IconLocation',
|
|
|
- 'IconLock',
|
|
|
- 'IconLoop',
|
|
|
- 'IconMan',
|
|
|
- 'IconMenu',
|
|
|
- 'IconMobile',
|
|
|
- 'IconMoon',
|
|
|
- 'IconMosaic',
|
|
|
- 'IconNav',
|
|
|
- 'IconPalette',
|
|
|
- 'IconPen',
|
|
|
- 'IconPhone',
|
|
|
- 'IconPrinter',
|
|
|
- 'IconPublic',
|
|
|
- 'IconPushpin',
|
|
|
- 'IconQrcode',
|
|
|
- 'IconRelation',
|
|
|
- 'IconRobotAdd',
|
|
|
- 'IconRobot',
|
|
|
- 'IconSafe',
|
|
|
- 'IconSchedule',
|
|
|
- 'IconShake',
|
|
|
- 'IconSkin',
|
|
|
- 'IconStamp',
|
|
|
- 'IconStorage',
|
|
|
- 'IconSun',
|
|
|
- 'IconTag',
|
|
|
- 'IconTags',
|
|
|
- 'IconThunderbolt',
|
|
|
- 'IconTool',
|
|
|
- 'IconTrophy',
|
|
|
- 'IconUnlock',
|
|
|
- 'IconUserAdd',
|
|
|
- 'IconUserGroup',
|
|
|
- 'IconUser',
|
|
|
- 'IconVideoCamera',
|
|
|
- 'IconWifi'
|
|
|
- ],
|
|
|
- ee = { iconsList: Z },
|
|
|
- oe = { class: 'icon-selector' },
|
|
|
- ne = { class: 'icon-box' },
|
|
|
- te = { class: 'icons-grid' },
|
|
|
- se = ['onClick'],
|
|
|
- ae = {
|
|
|
- __name: 'IconPicker',
|
|
|
- props: { modelValue: { type: String, default: '' } },
|
|
|
- emits: ['update:modelValue'],
|
|
|
- setup(b, { emit: d }) {
|
|
|
- const i = b,
|
|
|
- { modelValue: f } = U(i),
|
|
|
- h = d,
|
|
|
- e = ee.iconsList,
|
|
|
- _ = (l) => {
|
|
|
- h('update:modelValue', l);
|
|
|
- };
|
|
|
- return (l, t) => {
|
|
|
- const u = m('a-scrollbar'),
|
|
|
- c = m('a-popover');
|
|
|
- return (
|
|
|
- I(),
|
|
|
- T('div', oe, [
|
|
|
- C('div', ne, [
|
|
|
- n(
|
|
|
- c,
|
|
|
- { trigger: 'click', position: 'right' },
|
|
|
- {
|
|
|
- content: r(() => [
|
|
|
- n(
|
|
|
- u,
|
|
|
- { style: { height: '60vh', width: '45vw', 'overflow-y': 'auto' } },
|
|
|
- {
|
|
|
- default: r(() => [
|
|
|
- C('div', te, [
|
|
|
- (I(!0),
|
|
|
- T(
|
|
|
- q,
|
|
|
- null,
|
|
|
- E(
|
|
|
- s(e),
|
|
|
- (p, g) => (
|
|
|
- I(),
|
|
|
- T(
|
|
|
- 'div',
|
|
|
- { key: g, onClick: (N) => _(p), class: 'icon-item' },
|
|
|
- [(I(), V(B(p))), C('span', null, F(p), 1)],
|
|
|
- 8,
|
|
|
- se
|
|
|
- )
|
|
|
- )
|
|
|
- ),
|
|
|
- 128
|
|
|
- ))
|
|
|
- ])
|
|
|
- ]),
|
|
|
- _: 1
|
|
|
- }
|
|
|
- )
|
|
|
- ]),
|
|
|
- default: r(() => [(I(), V(B(s(f))))]),
|
|
|
- _: 1
|
|
|
- }
|
|
|
- )
|
|
|
- ])
|
|
|
- ])
|
|
|
- );
|
|
|
- };
|
|
|
- }
|
|
|
- },
|
|
|
- re = S(ae, [['__scopeId', 'data-v-9b05c37a']]),
|
|
|
- R = {
|
|
|
- __name: 'ResourceForm',
|
|
|
- props: {
|
|
|
- resource_form: {
|
|
|
- type: Object,
|
|
|
- required: !0,
|
|
|
- default: () => ({
|
|
|
- parentName: '',
|
|
|
- status: '0',
|
|
|
- menuName: '',
|
|
|
- icon: '',
|
|
|
- menuType: '0',
|
|
|
- description: '',
|
|
|
- perms: '',
|
|
|
- component: '',
|
|
|
- orderNum: 0,
|
|
|
- path: ''
|
|
|
- })
|
|
|
- }
|
|
|
- },
|
|
|
- emits: ['statusChange'],
|
|
|
- setup(b, { emit: d }) {
|
|
|
- y([]), y([]);
|
|
|
- const i = d,
|
|
|
- f = b,
|
|
|
- h = [
|
|
|
- { value: '3', label: '页面' },
|
|
|
- { value: '0', label: '菜单' },
|
|
|
- { value: '1', label: '按钮' }
|
|
|
- ],
|
|
|
- { resource_form: e } = U(f),
|
|
|
- _ = (l) => {
|
|
|
- i('statusChange', l);
|
|
|
- };
|
|
|
- return (l, t) => {
|
|
|
- const u = m('a-input'),
|
|
|
- c = m('a-form-item'),
|
|
|
- p = m('a-switch'),
|
|
|
- g = m('a-select'),
|
|
|
- N = m('a-space'),
|
|
|
- a = m('a-form');
|
|
|
- return (
|
|
|
- I(),
|
|
|
- V(
|
|
|
- a,
|
|
|
- { model: s(e), layout: 'horizontal' },
|
|
|
- {
|
|
|
- default: r(() => [
|
|
|
- n(
|
|
|
- c,
|
|
|
- { field: 'parentName', label: l.$t('permission.resource.parent_org'), disabled: '' },
|
|
|
- {
|
|
|
- default: r(() => [
|
|
|
- n(
|
|
|
- u,
|
|
|
- {
|
|
|
- modelValue: s(e).parentName,
|
|
|
- 'onUpdate:modelValue': t[0] || (t[0] = (o) => (s(e).parentName = o))
|
|
|
- },
|
|
|
- null,
|
|
|
- 8,
|
|
|
- ['modelValue']
|
|
|
- )
|
|
|
- ]),
|
|
|
- _: 1
|
|
|
- },
|
|
|
- 8,
|
|
|
- ['label']
|
|
|
- ),
|
|
|
- n(
|
|
|
- c,
|
|
|
- { field: 'status', label: l.$t('permission.resource.status') },
|
|
|
- {
|
|
|
- default: r(() => [
|
|
|
- n(
|
|
|
- p,
|
|
|
- {
|
|
|
- modelValue: s(e).status,
|
|
|
- 'onUpdate:modelValue': t[1] || (t[1] = (o) => (s(e).status = o)),
|
|
|
- onChange: t[2] || (t[2] = (o) => _(s(e).status)),
|
|
|
- 'checked-value': '1',
|
|
|
- 'unchecked-value': '0'
|
|
|
- },
|
|
|
- null,
|
|
|
- 8,
|
|
|
- ['modelValue']
|
|
|
- )
|
|
|
- ]),
|
|
|
- _: 1
|
|
|
- },
|
|
|
- 8,
|
|
|
- ['label']
|
|
|
- ),
|
|
|
- n(
|
|
|
- c,
|
|
|
- {
|
|
|
- field: 'menuName',
|
|
|
- label: l.$t('permission.resource.org_name'),
|
|
|
- rules: [
|
|
|
- { required: !0, message: '资源名称必填' },
|
|
|
- { maxLength: 50, message: '长度不超过50' }
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- default: r(() => [
|
|
|
- n(
|
|
|
- u,
|
|
|
- {
|
|
|
- modelValue: s(e).menuName,
|
|
|
- 'onUpdate:modelValue': t[3] || (t[3] = (o) => (s(e).menuName = o))
|
|
|
- },
|
|
|
- null,
|
|
|
- 8,
|
|
|
- ['modelValue']
|
|
|
- )
|
|
|
- ]),
|
|
|
- _: 1
|
|
|
- },
|
|
|
- 8,
|
|
|
- ['label']
|
|
|
- ),
|
|
|
- n(
|
|
|
- c,
|
|
|
- {
|
|
|
- field: 'path',
|
|
|
- label: l.$t('permission.resource.address'),
|
|
|
- rules: [
|
|
|
- { required: !0, message: '资源地址必填' },
|
|
|
- { maxLength: 50, message: '长度不超过50' }
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- default: r(() => [
|
|
|
- n(
|
|
|
- u,
|
|
|
- { modelValue: s(e).path, 'onUpdate:modelValue': t[4] || (t[4] = (o) => (s(e).path = o)) },
|
|
|
- null,
|
|
|
- 8,
|
|
|
- ['modelValue']
|
|
|
- )
|
|
|
- ]),
|
|
|
- _: 1
|
|
|
- },
|
|
|
- 8,
|
|
|
- ['label']
|
|
|
- ),
|
|
|
- n(
|
|
|
- c,
|
|
|
- { field: 'icon', label: l.$t('permission.resource.icon') },
|
|
|
- {
|
|
|
- default: r(() => [
|
|
|
- n(
|
|
|
- re,
|
|
|
- { modelValue: s(e).icon, 'onUpdate:modelValue': t[5] || (t[5] = (o) => (s(e).icon = o)) },
|
|
|
- null,
|
|
|
- 8,
|
|
|
- ['modelValue']
|
|
|
- )
|
|
|
- ]),
|
|
|
- _: 1
|
|
|
- },
|
|
|
- 8,
|
|
|
- ['label']
|
|
|
- ),
|
|
|
- n(
|
|
|
- c,
|
|
|
- {
|
|
|
- field: 'menuType',
|
|
|
- label: l.$t('permission.resource.menuType'),
|
|
|
- rules: [{ required: !0, message: '资源类型必填' }]
|
|
|
- },
|
|
|
- {
|
|
|
- default: r(() => [
|
|
|
- n(
|
|
|
- g,
|
|
|
- {
|
|
|
- modelValue: s(e).menuType,
|
|
|
- 'onUpdate:modelValue': t[6] || (t[6] = (o) => (s(e).menuType = o)),
|
|
|
- options: h,
|
|
|
- 'field-names': l.fieldNames,
|
|
|
- style: { width: '320px' },
|
|
|
- placeholder: '请选择'
|
|
|
- },
|
|
|
- null,
|
|
|
- 8,
|
|
|
- ['modelValue', 'field-names']
|
|
|
- )
|
|
|
- ]),
|
|
|
- _: 1
|
|
|
- },
|
|
|
- 8,
|
|
|
- ['label']
|
|
|
- ),
|
|
|
- n(
|
|
|
- c,
|
|
|
- { field: 'description', label: l.$t('permission.resource.description') },
|
|
|
- {
|
|
|
- default: r(() => [
|
|
|
- n(
|
|
|
- u,
|
|
|
- {
|
|
|
- modelValue: s(e).description,
|
|
|
- 'onUpdate:modelValue': t[7] || (t[7] = (o) => (s(e).description = o)),
|
|
|
- placeholder: '请输入提示词'
|
|
|
- },
|
|
|
- null,
|
|
|
- 8,
|
|
|
- ['modelValue']
|
|
|
- )
|
|
|
- ]),
|
|
|
- _: 1
|
|
|
- },
|
|
|
- 8,
|
|
|
- ['label']
|
|
|
- ),
|
|
|
- n(
|
|
|
- c,
|
|
|
- {
|
|
|
- field: 'perms',
|
|
|
- label: l.$t('permission.resource.perms'),
|
|
|
- rules: [
|
|
|
- { required: !0, message: '资源控制权限字符必填' },
|
|
|
- { maxLength: 50, message: '长度不超过50' }
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- default: r(() => [
|
|
|
- n(
|
|
|
- u,
|
|
|
- { modelValue: s(e).perms, 'onUpdate:modelValue': t[8] || (t[8] = (o) => (s(e).perms = o)) },
|
|
|
- null,
|
|
|
- 8,
|
|
|
- ['modelValue']
|
|
|
- )
|
|
|
- ]),
|
|
|
- _: 1
|
|
|
- },
|
|
|
- 8,
|
|
|
- ['label']
|
|
|
- ),
|
|
|
- n(
|
|
|
- c,
|
|
|
- {
|
|
|
- field: 'component',
|
|
|
- label: l.$t('permission.resource.component'),
|
|
|
- style: { align: 'start' },
|
|
|
- rules: [
|
|
|
- { required: !0, message: '组件地址必填' },
|
|
|
- { maxLength: 50, message: '长度不超过50' }
|
|
|
- ]
|
|
|
- },
|
|
|
- {
|
|
|
- default: r(() => [
|
|
|
- n(
|
|
|
- u,
|
|
|
- {
|
|
|
- modelValue: s(e).component,
|
|
|
- 'onUpdate:modelValue': t[9] || (t[9] = (o) => (s(e).component = o))
|
|
|
- },
|
|
|
- null,
|
|
|
- 8,
|
|
|
- ['modelValue']
|
|
|
- )
|
|
|
- ]),
|
|
|
- _: 1
|
|
|
- },
|
|
|
- 8,
|
|
|
- ['label']
|
|
|
- ),
|
|
|
- n(c, null, {
|
|
|
- default: r(() => [n(N, null, { default: r(() => [Q(l.$slots, 'actions')]), _: 3 })]),
|
|
|
- _: 3
|
|
|
- })
|
|
|
- ]),
|
|
|
- _: 3
|
|
|
- },
|
|
|
- 8,
|
|
|
- ['model']
|
|
|
- )
|
|
|
- );
|
|
|
- };
|
|
|
- }
|
|
|
- },
|
|
|
- le = { class: 'organization-container' },
|
|
|
- ce = { class: 'left' },
|
|
|
- ie = { class: 'right' },
|
|
|
- ue = {
|
|
|
- __name: 'index',
|
|
|
- setup(b) {
|
|
|
- const d = y(!1),
|
|
|
- i = y(!0),
|
|
|
- f = y([]),
|
|
|
- h = { add_permission: 'system:resource:add', delete_permission: 'system:resource:delete' },
|
|
|
- e = z({
|
|
|
- parentName: '',
|
|
|
- status: 0,
|
|
|
- menuName: '',
|
|
|
- path: '',
|
|
|
- icon: '',
|
|
|
- menuType: '0',
|
|
|
- description: '',
|
|
|
- perms: '',
|
|
|
- component: ''
|
|
|
- }),
|
|
|
- _ = async () => {
|
|
|
- const {
|
|
|
- code: a,
|
|
|
- data: { rows: o }
|
|
|
- } = await W();
|
|
|
- a == 200 && (f.value = o);
|
|
|
- },
|
|
|
- l = async (a) => {
|
|
|
- const {
|
|
|
- data: { data: o }
|
|
|
- } = await H(a);
|
|
|
- (e.resourceId = a),
|
|
|
- (e.parentId = o.parentId),
|
|
|
- (e.parentName = o.parentName),
|
|
|
- (e.menuName = o.menuName),
|
|
|
- (e.path = o.path),
|
|
|
- (e.status = o.status),
|
|
|
- (e.icon = o.icon),
|
|
|
- (e.menuType = o.menuType),
|
|
|
- (e.description = o.description),
|
|
|
- (e.perms = o.perms),
|
|
|
- (e.component = o.component),
|
|
|
- (i.value = !0),
|
|
|
- (e.orderNum = 0);
|
|
|
- },
|
|
|
- t = (a) => {
|
|
|
- (e.resourceId = null),
|
|
|
- (e.parentId = a.menuId),
|
|
|
- (e.parentName = a.menuName),
|
|
|
- (e.menuName = ''),
|
|
|
- (e.path = ''),
|
|
|
- (e.status = '0'),
|
|
|
- (e.icon = ''),
|
|
|
- (e.menuType = '0'),
|
|
|
- (e.description = ''),
|
|
|
- (e.perms = ''),
|
|
|
- (e.component = ''),
|
|
|
- (e.orderNum = 0),
|
|
|
- (d.value = !0),
|
|
|
- (i.value = !1);
|
|
|
- },
|
|
|
- u = async ({ menuId: a }) => {
|
|
|
- const { code: o } = await J(a);
|
|
|
- o === 200 && $.success({ title: '删除', content: '删除成功' }), _();
|
|
|
- },
|
|
|
- c = async (a) => {
|
|
|
- const o = { menuId: e.resourceId[0], status: a },
|
|
|
- { code: v } = await K(o);
|
|
|
- v === 200 && ($.success({ title: '状态更新', content: '状态更新成功' }), _());
|
|
|
- },
|
|
|
- p = async () => {
|
|
|
- const a = { ...e, menuId: i.value && e.resourceId ? e.resourceId[0] : null },
|
|
|
- o = i.value ? X : Y,
|
|
|
- { code: v } = await o(a);
|
|
|
- if (v === 200) {
|
|
|
- const k = i.value ? '编辑' : '新增';
|
|
|
- $.success({ title: `${k}用户`, content: `${k}成功` }), _(), (d.value = !1);
|
|
|
- }
|
|
|
- },
|
|
|
- g = () => {
|
|
|
- (e.resourceId = null),
|
|
|
- (e.parentName = ''),
|
|
|
- (e.status = 0),
|
|
|
- (e.resourceName = ''),
|
|
|
- (e.leader = ''),
|
|
|
- (e.orderNum = ''),
|
|
|
- (e.address = '');
|
|
|
- },
|
|
|
- N = () => {
|
|
|
- (i.value = !0), (d.value = !1);
|
|
|
- };
|
|
|
- return (
|
|
|
- j(() => {
|
|
|
- G('system:resource:list') ? _() : $.error({ title: '权限不足', content: '抱歉,您没有权限查看资源列表' });
|
|
|
- }),
|
|
|
- (a, o) => {
|
|
|
- const v = m('a-button'),
|
|
|
- k = m('a-card'),
|
|
|
- w = O('hasPerm');
|
|
|
- return (
|
|
|
- I(),
|
|
|
- T('div', le, [
|
|
|
- C('div', ce, [
|
|
|
- n(
|
|
|
- M,
|
|
|
- {
|
|
|
- treeData: f.value,
|
|
|
- title: a.$t('permission.resource.organization'),
|
|
|
- fieldNames: { key: 'menuId', title: 'menuName', children: 'children' },
|
|
|
- permission: h,
|
|
|
- onNodeClick: l,
|
|
|
- onAddBtnClick: t,
|
|
|
- onDeleteBtnClick: u
|
|
|
- },
|
|
|
- null,
|
|
|
- 8,
|
|
|
- ['treeData', 'title']
|
|
|
- )
|
|
|
- ]),
|
|
|
- C('div', ie, [
|
|
|
- n(
|
|
|
- k,
|
|
|
- { title: a.$t('permission.resource.details'), style: { height: '100%' } },
|
|
|
- {
|
|
|
- default: r(() => [
|
|
|
- n(
|
|
|
- R,
|
|
|
- { resource_form: e, onStatusChange: c, onSave: p, onReset: g },
|
|
|
- {
|
|
|
- actions: r(() => [
|
|
|
- x(
|
|
|
- (I(),
|
|
|
- V(
|
|
|
- v,
|
|
|
- { onClick: p },
|
|
|
- { default: r(() => [L(F(a.$t('permission.resource.save')), 1)]), _: 1 }
|
|
|
- )),
|
|
|
- [[w, 'system:resource:edit']]
|
|
|
- ),
|
|
|
- n(
|
|
|
- v,
|
|
|
- { onClick: g },
|
|
|
- { default: r(() => [L(F(a.$t('permission.resource.reset')), 1)]), _: 1 }
|
|
|
- )
|
|
|
- ]),
|
|
|
- _: 1
|
|
|
- },
|
|
|
- 8,
|
|
|
- ['resource_form']
|
|
|
- )
|
|
|
- ]),
|
|
|
- _: 1
|
|
|
- },
|
|
|
- 8,
|
|
|
- ['title']
|
|
|
- )
|
|
|
- ]),
|
|
|
- n(
|
|
|
- P,
|
|
|
- { visible: d.value, onOk: p, onCancel: N, title: a.$t('permission.resource.add') },
|
|
|
- { default: r(() => [n(R, { resource_form: e }, null, 8, ['resource_form'])]), _: 1 },
|
|
|
- 8,
|
|
|
- ['visible', 'title']
|
|
|
- )
|
|
|
- ])
|
|
|
- );
|
|
|
- }
|
|
|
- );
|
|
|
- }
|
|
|
- },
|
|
|
- me = S(ue, [['__scopeId', 'data-v-a5bdb8f9']]),
|
|
|
- ve = {
|
|
|
- __name: 'PermissionResource',
|
|
|
- setup(b) {
|
|
|
- return (d, i) => (I(), V(D, null, { default: r(() => [n(A, { current_label: '资源' }), n(me)]), _: 1 }));
|
|
|
- }
|
|
|
- };
|
|
|
-export { ve as default };
|