07a3f34f
赵凤
审批配置-》预设条件
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
import React, { useState, useEffect } from "react";
import { Input, Select, Modal, Form, message, Tooltip } from "antd";
import { Condition_Type, Judge_Rule1, Judge_Rule2 } from "../entity";
import _ from "lodash";
import { systemListApi } from "@/pages/admin/Privilege/api";
import usePagination from "@/hooks/usePagination";
import { getAllRoleCodeApi } from "@/common/api";
import useInitial from "@/hooks/useInitail";
import { saveApproveCondition } from "../api";
const { Option } = Select;
const layout = {
labelCol: { span: 4 },
wrapperCol: { span: 20 },
};
interface Props {
|
07a3f34f
赵凤
审批配置-》预设条件
|
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
item: PreSetting.Item;
setItem: any;
approvalConfigId: number;
setListLoading: any;
}
export default function CreateItem({
item,
setItem,
approvalConfigId,
setListLoading,
}: Props) {
const [form] = Form.useForm();
const {visible, id, currentItem} = item;
const [conditionType, setConditionType] = useState<number>();
const [loading, setLoading] = useState(false);
|
07a3f34f
赵凤
审批配置-》预设条件
|
33
34
35
|
useEffect(() => {
if (visible&& id) {
|
07a3f34f
赵凤
审批配置-》预设条件
|
36
37
38
|
currentItem?.type&& setConditionType(currentItem.type);
form.setFieldsValue({ ...currentItem });
}
|
07a3f34f
赵凤
审批配置-》预设条件
|
39
40
41
42
43
44
|
}, [visible]);
const onFinish = () => {
form
.validateFields()
.then((fileds) => {
|
07a3f34f
赵凤
审批配置-》预设条件
|
45
46
47
48
49
50
51
52
53
54
|
const pa = {
...fileds,
id: id || undefined,
approvalConfigId,
};
setLoading(true);
saveApproveCondition(pa)
.then((res) => {
message.success("保存成功");
setItem({visible: false});
|
07a3f34f
赵凤
审批配置-》预设条件
|
55
|
setListLoading(true);
|
07a3f34f
赵凤
审批配置-》预设条件
|
56
57
58
59
60
61
62
63
64
65
|
})
.catch((err) => message.error(err.message))
.finally(() => {
setLoading(false);
});
})
.catch((err) => message.error(err.message));
};
return (
<Modal
|
60c0e139
赵凤
审批
|
66
|
title={`${id?'编辑':'新增'}预设条件`}
|
07a3f34f
赵凤
审批配置-》预设条件
|
67
|
visible={visible}
|
60c0e139
赵凤
审批
|
68
|
onCancel={() => setItem({ visible: false })}
|
07a3f34f
赵凤
审批配置-》预设条件
|
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
|
onOk={() => form.submit()}
confirmLoading={loading}
afterClose={() => form.resetFields()}
>
<Form {...layout} form={form} name="control-hooks" onFinish={onFinish}>
<Form.Item
name="name"
label="条件名称"
rules={[{ required: true, message: "请输入预设条件名称" }]}
>
<Input placeholder="请输入" maxLength={8} />
</Form.Item>
<Form.Item
name="paramName"
label="参数名称"
rules={[{ required: true, message: "请输入参数名称" }]}
>
<Input placeholder="请输入" maxLength={16} />
</Form.Item>
<Form.Item
name="type"
label="条件类型"
rules={[{ required: true, message: "请选择条件类型" }]}
>
<Select
placeholder="请选择"
onChange={(value) => {
|
07a3f34f
赵凤
审批配置-》预设条件
|
96
|
setConditionType(value);
|
60c0e139
赵凤
审批
|
97
|
// 条件类型改变,清空单位和判断规则
|
60c0e139
赵凤
审批
|
98
99
100
|
form.setFields([{ name: "unit", value: undefined, errors: undefined },
{ name: "judgeRule", value: undefined, errors: undefined }
]);
|
07a3f34f
赵凤
审批配置-》预设条件
|
101
102
103
104
105
106
107
108
109
110
111
112
|
}}
>
{Condition_Type.map((item) => (
<Option value={item.value} key={item.value}>
{item.label}
</Option>
))}
</Select>
</Form.Item>
<Form.Item
noStyle
|
0fb75a0d
赵凤
删除多余代码
|
113
|
shouldUpdate={(prevValues, currentValues) => prevValues.type !== currentValues.type}
|
07a3f34f
赵凤
审批配置-》预设条件
|
114
|
>
|
0fb75a0d
赵凤
删除多余代码
|
115
116
117
118
119
|
{({ getFieldValue }) => ([1, 2].includes(getFieldValue("type")) ? (
<Form.Item name="unit" label="单位" rules={[{ required: true }]}>
<Input placeholder="请输入单位" maxLength={4} />
</Form.Item>
) : null)}
|
07a3f34f
赵凤
审批配置-》预设条件
|
120
121
122
123
124
125
126
127
128
129
|
</Form.Item>
{conditionType && (
<Form.Item
name="judgeRule"
label="判断规则"
rules={[{ required: true, message: "请选择判断规则" }]}
>
<Select placeholder="请选择">
{[1, 2].includes(conditionType)
? Judge_Rule1.map((item) => (
|
0fb75a0d
赵凤
删除多余代码
|
130
131
132
|
<Option value={item.value} key={item.value}>
{item.label}
</Option>
|
07a3f34f
赵凤
审批配置-》预设条件
|
133
134
|
))
: Judge_Rule2.map((item) => (
|
0fb75a0d
赵凤
删除多余代码
|
135
136
137
|
<Option value={item.value} key={item.value}>
{item.label}
</Option>
|
07a3f34f
赵凤
审批配置-》预设条件
|
138
139
140
141
142
143
144
145
|
))}
</Select>
</Form.Item>
)}
</Form>
</Modal>
);
}
|