分组管理优化
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) => {
|
defHttp.get({url: Api.list, params}).then((res) => {
|
||||||
//添加组员信息
|
//添加组员信息
|
||||||
res.records.map((item) => {
|
res.records.map((item) => {
|
||||||
getRowUser({id: item.id}).then((data) => {
|
getRowUser({groupId: item.id}).then((data) => {
|
||||||
item.rowUser = data.map((item) => item).join(',');
|
item.rowUser = data.map((item2) => item2.userName).join(',');
|
||||||
}).catch((error) => {
|
}).catch((error) => {
|
||||||
item.rowUser = '加载失败';
|
item.rowUser = '加载失败';
|
||||||
});
|
});
|
||||||
|
|
|
@ -4,14 +4,16 @@ import { rules} from '/@/utils/helper/validator';
|
||||||
import { render } from '/@/utils/common/renderUtils';
|
import { render } from '/@/utils/common/renderUtils';
|
||||||
//import { getRowUser } from '/@/views/cees/group/CeesGroup.api';
|
//import { getRowUser } from '/@/views/cees/group/CeesGroup.api';
|
||||||
//列表数据
|
//列表数据
|
||||||
|
|
||||||
export const columns: BasicColumn[] = [
|
export const columns: BasicColumn[] = [
|
||||||
{
|
{
|
||||||
title: '组名',
|
title: '组名',
|
||||||
align:"center",
|
align:"center",
|
||||||
dataIndex: 'name'
|
dataIndex: 'name',
|
||||||
|
width: 150
|
||||||
},
|
},
|
||||||
// {
|
// {
|
||||||
// title: '操作',
|
// title: '分组',
|
||||||
// align: 'center',
|
// align: 'center',
|
||||||
// width: 150,
|
// width: 150,
|
||||||
// slots: { customRender: 'action2' }, // 使用插槽自定义操作列
|
// slots: { customRender: 'action2' }, // 使用插槽自定义操作列
|
||||||
|
@ -54,12 +56,20 @@ export const formSchema: FormSchema[] = [
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
label: '专业id',
|
label: '学科',
|
||||||
field: 'majorId',
|
field: 'majorId',
|
||||||
component: 'InputNumber',
|
component: 'Select',
|
||||||
|
componentProps: {
|
||||||
|
options: [
|
||||||
|
{ label: '语文', value: 1 },
|
||||||
|
{ label: '地理', value: 4 },
|
||||||
|
{ label: '历史', value: 7 },
|
||||||
|
{ label: '政治', value: 8 },
|
||||||
|
],
|
||||||
|
},
|
||||||
dynamicRules: ({model,schema}) => {
|
dynamicRules: ({model,schema}) => {
|
||||||
return [
|
return [
|
||||||
{ required: true, message: '请输入专业id!'},
|
{ required: true, message: '请选择学科!'},
|
||||||
];
|
];
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
|
@ -36,6 +36,10 @@
|
||||||
</BasicTable>
|
</BasicTable>
|
||||||
<!-- 表单区域 -->
|
<!-- 表单区域 -->
|
||||||
<CeesGroupModal @register="registerModal" @success="handleSuccess"></CeesGroupModal>
|
<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>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
@ -43,10 +47,11 @@
|
||||||
import { ref, reactive, computed, unref, onMounted } from 'vue';
|
import { ref, reactive, computed, unref, onMounted } from 'vue';
|
||||||
import { BasicTable, useTable, TableAction } from '/@/components/Table';
|
import { BasicTable, useTable, TableAction } from '/@/components/Table';
|
||||||
import { useModal } from '/@/components/Modal';
|
import { useModal } from '/@/components/Modal';
|
||||||
|
import CeesGroupTransferModal from './components/CeesGroupTransferModal.vue'
|
||||||
import { useListPage } from '/@/hooks/system/useListPage'
|
import { useListPage } from '/@/hooks/system/useListPage'
|
||||||
import CeesGroupModal from './components/CeesGroupModal.vue'
|
import CeesGroupModal from './components/CeesGroupModal.vue'
|
||||||
import { columns, searchFormSchema, superQuerySchema } from './CeesGroup.data';
|
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 { downloadFile } from '/@/utils/common/renderUtils';
|
||||||
import { useUserStore } from '/@/store/modules/user';
|
import { useUserStore } from '/@/store/modules/user';
|
||||||
|
|
||||||
|
@ -93,15 +98,11 @@ const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({
|
||||||
|
|
||||||
const [registerTable, { reload }, { rowSelection, selectedRowKeys }] = tableContext
|
const [registerTable, { reload }, { rowSelection, selectedRowKeys }] = tableContext
|
||||||
|
|
||||||
|
|
||||||
// 高级查询配置
|
// 高级查询配置
|
||||||
const superQueryConfig = reactive(superQuerySchema);
|
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