1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
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
75
76
77
78
79
80
81
82
83
84
85
86
87
88
| #set($upperEntityPath=$table.entityPath.toUpperCase())
| import { message } from 'antd';
| import router from 'umi/router';
| import { $!{upperEntityPath}_NAMESPACE } from '../actions/$!{table.entityPath}';
| import { list, submit, detail, remove } from '../services/$!{table.entityPath}';
|
| export default {
| namespace: $!{upperEntityPath}_NAMESPACE,
| state: {
| data: {
| list: [],
| pagination: false,
| },
| detail: {},
| },
| effects: {
| *fetchList({ payload }, { call, put }) {
| const response = yield call(list, payload);
| if (response.success) {
| yield put({
| type: 'saveList',
| payload: {
| list: response.data.records,
| pagination: {
| total: response.data.total,
| current: response.data.current,
| pageSize: response.data.size,
| },
| },
| });
| }
| },
| *fetchDetail({ payload }, { call, put }) {
| const response = yield call(detail, payload);
| if (response.success) {
| yield put({
| type: 'saveDetail',
| payload: {
| detail: response.data,
| },
| });
| }
| },
| *clearDetail({ payload }, { put }) {
| yield put({
| type: 'removeDetail',
| payload: { payload },
| });
| },
| *submit({ payload }, { call }) {
| const response = yield call(submit, payload);
| if (response.success) {
| message.success('提交成功');
| router.push('/$!{servicePackage}/$!{table.entityPath}');
| }
| },
| *remove({ payload }, { call }) {
| const {
| data: { keys },
| success,
| } = payload;
| const response = yield call(remove, { ids: keys });
| if (response.success) {
| success();
| }
| },
| },
| reducers: {
| saveList(state, action) {
| return {
| ...state,
| data: action.payload,
| };
| },
| saveDetail(state, action) {
| return {
| ...state,
| detail: action.payload.detail,
| };
| },
| removeDetail(state) {
| return {
| ...state,
| detail: {},
| };
| },
| },
| };
|
|