pageSearch.js 2.8 KB
Newer Older
1 2
import React, { Fragment } from 'react';
import { redText } from '@/pages/zydxg/CheckManage/PiciSetting/publicFunc';
钟是志's avatar
钟是志 committed
3
import { getInfo } from '@/highOrderComponent/Service';
4 5

const width = 110;
钟是志's avatar
钟是志 committed
6
const deleteChildren = (response) => {
7 8 9 10 11 12 13 14 15 16 17 18
	if (response && response.length) {
		for (let item of response) {
			if (item.children && !item.children.length) {
				delete item.children;
			} else if (item.children) {
				deleteChildren(item.children);
			}
		}
		return response;
	} else {
		return [];
	}
钟是志's avatar
钟是志 committed
19 20
};

21
const handlePageSearch = (props) => {
22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
	const pageSearch = {
		search: {
			url: '/asdasd/asdgggki',
			field: {
				groupId: {
					//
					required: true,
					defaultValue: props.typeList[0].key,
				},
				sysCode: {
					required: true,
					defaultValue: 'xg',
				},
				applyType: {
					required: true,
					defaultValue: 'role',
				},
			},
			getInfo: (data, url) => {
				return getInfo(
					{
						appId: props.selectKey,
						applyType: data.applyType,
						sysCode: data.sysCode,
					},
					'/CommonApi/queryApplyTarget',
				);
			},
			giveFieldsToFormValues: true,
			afterFormValuesChange: (key, oldValue, getPage) => {
				getPage();
				props.changeFormValues(oldValue);
			},
			responseCallBack: (response) => {
				return deleteChildren(response);
			},
			condition: [
				{
					key: 'groupId',
					name: '类别',
					type: 'select',
					options: props.typeList,
					required: true,
				},
				{
					key: 'sysCode',
					type: 'select',
					required: true,
					options: [
						{ key: 'xg', name: '学工' },
						{ key: 'sg', name: '宿管' },
						{ key: 'jy', name: '就业' },
						{ key: 'yx', name: '迎新' },
钟是志's avatar
钟是志 committed
75 76
            { key: 'zs', name: '招生' },
            { key: 'wzb', name: '武装部' },
77 78 79 80 81 82 83 84 85 86
						{ key: 'xl', name: '心理健康xl' },
						{ key: 'xljk', name: '心理健康xljk' },
						{ key: 'uaa', name: '认证系统' },
						{ key: 'lx', name: '离校' },
						{ key: 'tw', name: '团委' },
						{ key: 'szxf', name: '素质学分' },
						{ key: 'szcp', name: '素质测评' },
					],
					name: '系统',
				},
87

88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130
				{
					key: 'applyType',
					type: 'radioGroup',
					required: true,
					name: '权限分类',
					options: [
						{
							key: 'role',
							name: '角色',
						},
						{
							key: 'group',
							name: '分组',
						},
					],
				},
			],
			nameSpan: { big: 6, small: 7 },
			fileSpan: { big: 4, small: 4 },
			noNeedReset: true, // 不需要重置按钮
		},
		tableRowKey: 'id',
		columns: [
			{
				dataIndex: 'groupName',
				title: '类别',
				width,
			},
			{
				dataIndex: 'title',
				title: '角色/分组',
				width: width + 150,
			},
			{
				dataIndex: 'hasAuth',
				title: '是否已授权',
				render: (text, record) => {
					return text ? redText('已授权') : '未授权';
				},
			},
		],
	};
	return pageSearch;
131 132 133
};

export default handlePageSearch;