diff --git a/src/views/system/tenant/TenantPackModal.vue b/src/views/system/tenant/TenantPackModal.vue index ad63655..8397835 100644 --- a/src/views/system/tenant/TenantPackModal.vue +++ b/src/views/system/tenant/TenantPackModal.vue @@ -18,9 +18,10 @@ + diff --git a/src/views/system/tenant/TenantPackUserModal.vue b/src/views/system/tenant/TenantPackUserModal.vue new file mode 100644 index 0000000..3c9da65 --- /dev/null +++ b/src/views/system/tenant/TenantPackUserModal.vue @@ -0,0 +1,173 @@ + + + + + diff --git a/src/views/system/tenant/index.vue b/src/views/system/tenant/index.vue index 7dca935..2f8d6fd 100644 --- a/src/views/system/tenant/index.vue +++ b/src/views/system/tenant/index.vue @@ -86,7 +86,7 @@ } }, }); - const [registerTable, { reload }, { rowSelection, selectedRowKeys }] = tableContext; + const [registerTable, { reload }, { rowSelection, selectedRowKeys, selectedRows }] = tableContext; /** * 操作列定义 @@ -186,6 +186,8 @@ } packModal(true, { tenantId: unref(selectedRowKeys.value.join(',')), + //将租户创建人(拥有者)传递过去,产品包下的用户不允许非拥有者删除 + createBy: selectedRows.value[0].createBy }); } diff --git a/src/views/system/tenant/tenant.api.ts b/src/views/system/tenant/tenant.api.ts index 2ac4a05..ca2d6d3 100644 --- a/src/views/system/tenant/tenant.api.ts +++ b/src/views/system/tenant/tenant.api.ts @@ -19,6 +19,10 @@ enum Api { recycleBinPageList = '/sys/tenant/recycleBinPageList', deleteLogicDeleted = '/sys/tenant/deleteLogicDeleted', revertTenantLogic = '/sys/tenant/revertTenantLogic', + //用户产品包关系api + queryTenantPackUserList = '/sys/tenant/queryTenantPackUserList', + deleteTenantPackUser = '/sys/tenant/deleteTenantPackUser', + addTenantPackUser = '/sys/tenant/addTenantPackUser', } /** @@ -174,3 +178,27 @@ export const revertTenantLogic = (params,handleSuccess) => { handleSuccess(); }) }; + +/** + * 获取租户产品包下面的用户 + * @param params + */ +export const queryTenantPackUserList = (params) => { + return defHttp.get({ url: Api.queryTenantPackUserList, params }); +}; + +/** + * 移除用户和产品包的关系数据 + * @param params + */ +export const deleteTenantPackUser = (params)=>{ + return defHttp.put({ url: Api.deleteTenantPackUser, params }); +} + +/** + * 添加用户和产品包的关系数据 + * @param params + */ +export const addTenantPackUser = (params)=>{ + return defHttp.post({ url: Api.addTenantPackUser, params }); +} diff --git a/src/views/system/tenant/tenant.data.ts b/src/views/system/tenant/tenant.data.ts index b3367ff..12176c8 100644 --- a/src/views/system/tenant/tenant.data.ts +++ b/src/views/system/tenant/tenant.data.ts @@ -49,6 +49,11 @@ export const columns: BasicColumn[] = [ title: '部门', width: 150 }, + { + dataIndex: 'createBy_dictText', + title: '创建者(拥有者)', + width: 150 + }, /* { title: '开始时间', dataIndex: 'beginDate', @@ -300,6 +305,7 @@ export const packMenuFormSchema: FormSchema[] = [ pidField: 'parent_id', multiple: true, treeCheckAble:true, + treeCheckStrictly: true, getPopupContainer: () => document.body, }, }, @@ -372,3 +378,26 @@ export const searchRecycleFormSchema : FormSchema[] = [ component: 'Input', }, ] + +//产品包用户列表 +export const tenantPackUserColumns: BasicColumn[] = [ + { + title: '用户', + dataIndex: 'realname', + width: 200, + }, + { + title: '部门', + dataIndex: 'departNames', + width: 200, + ellipsis: true, + slots: { customRender: 'departNames' } + }, + { + title: '职位', + dataIndex: 'positionNames', + ellipsis: true, + width: 200, + slots: { customRender: 'positionNames' } + } +]