分组管理优化
This commit is contained in:
parent
d4589f5049
commit
b2de5a8964
|
@ -30,8 +30,8 @@ export const list = (params) =>
|
|||
defHttp.get({url: Api.list, params}).then((res) => {
|
||||
//添加组员信息
|
||||
res.records.map((item) => {
|
||||
getRowUser({id: item.id}).then((data) => {
|
||||
item.rowUser = data.map((item) => item).join(',');
|
||||
getRowUser({groupId: item.id}).then((data) => {
|
||||
item.rowUser = data.map((item2) => item2.userName).join(',');
|
||||
}).catch((error) => {
|
||||
item.rowUser = '加载失败';
|
||||
});
|
||||
|
|
|
@ -4,14 +4,16 @@ import { rules} from '/@/utils/helper/validator';
|
|||
import { render } from '/@/utils/common/renderUtils';
|
||||
//import { getRowUser } from '/@/views/cees/group/CeesGroup.api';
|
||||
//列表数据
|
||||
|
||||
export const columns: BasicColumn[] = [
|
||||
{
|
||||
title: '组名',
|
||||
align:"center",
|
||||
dataIndex: 'name'
|
||||
dataIndex: 'name',
|
||||
width: 150
|
||||
},
|
||||
// {
|
||||
// title: '操作',
|
||||
// title: '分组',
|
||||
// align: 'center',
|
||||
// width: 150,
|
||||
// slots: { customRender: 'action2' }, // 使用插槽自定义操作列
|
||||
|
@ -54,12 +56,20 @@ export const formSchema: FormSchema[] = [
|
|||
},
|
||||
},
|
||||
{
|
||||
label: '专业id',
|
||||
label: '学科',
|
||||
field: 'majorId',
|
||||
component: 'InputNumber',
|
||||
component: 'Select',
|
||||
componentProps: {
|
||||
options: [
|
||||
{ label: '语文', value: 1 },
|
||||
{ label: '地理', value: 4 },
|
||||
{ label: '历史', value: 7 },
|
||||
{ label: '政治', value: 8 },
|
||||
],
|
||||
},
|
||||
dynamicRules: ({model,schema}) => {
|
||||
return [
|
||||
{ required: true, message: '请输入专业id!'},
|
||||
{ required: true, message: '请选择学科!'},
|
||||
];
|
||||
},
|
||||
},
|
||||
|
|
|
@ -36,6 +36,10 @@
|
|||
</BasicTable>
|
||||
<!-- 表单区域 -->
|
||||
<CeesGroupModal @register="registerModal" @success="handleSuccess"></CeesGroupModal>
|
||||
<!-- 分组对话框 -->
|
||||
<!--<CeesGroupTransferModal v-model:visible="groupDialogVisible" :groupDialogTitle="groupDialogTitle"
|
||||
:groupTitle="groupTitle" :dataSource="transferData" show-search @search="handleSearch" :targetKeys="targetKeys"
|
||||
@change="handleTransferChange" @cancel="handleGroupDialogCancel" @ok="handleGroupDialogOk" />-->
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
@ -43,10 +47,11 @@
|
|||
import { ref, reactive, computed, unref, onMounted } from 'vue';
|
||||
import { BasicTable, useTable, TableAction } from '/@/components/Table';
|
||||
import { useModal } from '/@/components/Modal';
|
||||
import CeesGroupTransferModal from './components/CeesGroupTransferModal.vue'
|
||||
import { useListPage } from '/@/hooks/system/useListPage'
|
||||
import CeesGroupModal from './components/CeesGroupModal.vue'
|
||||
import { columns, searchFormSchema, superQuerySchema } from './CeesGroup.data';
|
||||
import { list, deleteOne, batchDelete, getImportUrl, getExportUrl, getRowUser } from './CeesGroup.api';
|
||||
import { list, deleteOne, batchDelete, getImportUrl, getExportUrl, getRowUser, addGroupMembers, removeGroupMembers } from './CeesGroup.api';
|
||||
import { downloadFile } from '/@/utils/common/renderUtils';
|
||||
import { useUserStore } from '/@/store/modules/user';
|
||||
|
||||
|
@ -93,15 +98,11 @@ const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({
|
|||
|
||||
const [registerTable, { reload }, { rowSelection, selectedRowKeys }] = tableContext
|
||||
|
||||
|
||||
// 高级查询配置
|
||||
const superQueryConfig = reactive(superQuerySchema);
|
||||
|
||||
|
||||
//分组
|
||||
const addOrUpdateHandle = (record) => {
|
||||
console.log('分组操作:', record);
|
||||
}
|
||||
|
||||
/**
|
||||
* 高级查询事件
|
||||
*/
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
<template>
|
||||
<a-modal :title="groupDialogTitle" :visible="visible" @cancel="handleCancel" @ok="handleOk" width="1000px">
|
||||
<a-transfer v-model:target-keys="targetKeys" :data-source="dataSource" :titles="['所有用户', groupTitle]"
|
||||
:render="item => item.title" @change="handleChange" />
|
||||
</a-modal>
|
||||
</template>
|
||||
|
||||
<script lang="ts">
|
||||
import { defineComponent, ref } from 'vue';
|
||||
import { Transfer } from 'ant-design-vue';
|
||||
|
||||
export default defineComponent({
|
||||
components: {
|
||||
'a-transfer': Transfer,
|
||||
},
|
||||
props: {
|
||||
groupDialogTitle: String,
|
||||
groupTitle: String,
|
||||
visible: Boolean,
|
||||
dataSource: Array,
|
||||
targetKeys: Array,
|
||||
},
|
||||
emits: ['cancel', 'ok', 'change'],
|
||||
setup(props, { emit }) {
|
||||
const handleCancel = () => {
|
||||
emit('cancel');
|
||||
};
|
||||
|
||||
const handleOk = () => {
|
||||
emit('ok');
|
||||
};
|
||||
|
||||
const handleChange = (targetKeys, direction, moveKeys) => {
|
||||
emit('change', targetKeys, direction, moveKeys);
|
||||
};
|
||||
|
||||
return {
|
||||
handleCancel,
|
||||
handleOk,
|
||||
handleChange,
|
||||
};
|
||||
},
|
||||
});
|
||||
</script>
|
Loading…
Reference in New Issue