ls-pro-common 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +746 -0
- package/README.md +23 -0
- package/dist/common.js +2 -0
- package/dist/common.js.LICENSE.txt +29 -0
- package/dist/common.less +0 -0
- package/dist/common.min.js +2 -0
- package/dist/common.min.js.LICENSE.txt +29 -0
- package/es/components/EditModalForm.d.ts +7 -0
- package/es/components/EditModalForm.js +29 -0
- package/es/hooks/useSingle/index.d.ts +29 -0
- package/es/hooks/useSingle/index.js +267 -0
- package/es/http/index.d.ts +47 -0
- package/es/http/index.js +306 -0
- package/es/index.d.ts +10 -0
- package/es/index.js +8 -0
- package/es/service/BaseService.d.ts +15 -0
- package/es/service/BaseService.js +202 -0
- package/es/typing.d.ts +43 -0
- package/es/typing.js +1 -0
- package/es/utils/index.d.ts +80 -0
- package/es/utils/index.js +205 -0
- package/lib/components/EditModalForm.d.ts +7 -0
- package/lib/components/EditModalForm.js +42 -0
- package/lib/hooks/useSingle/index.d.ts +29 -0
- package/lib/hooks/useSingle/index.js +288 -0
- package/lib/http/index.d.ts +47 -0
- package/lib/http/index.js +331 -0
- package/lib/index.d.ts +10 -0
- package/lib/index.js +82 -0
- package/lib/service/BaseService.d.ts +15 -0
- package/lib/service/BaseService.js +216 -0
- package/lib/typing.d.ts +43 -0
- package/lib/typing.js +5 -0
- package/lib/utils/index.d.ts +80 -0
- package/lib/utils/index.js +264 -0
- package/package.json +48 -0
|
@@ -0,0 +1,331 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
exports.fetchOptions = fetchOptions;
|
|
10
|
+
exports.getDict = getDict;
|
|
11
|
+
exports.httpDelete = httpDelete;
|
|
12
|
+
exports.httpGet = httpGet;
|
|
13
|
+
exports.httpPost = httpPost;
|
|
14
|
+
exports.httpPut = httpPut;
|
|
15
|
+
|
|
16
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
17
|
+
|
|
18
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
19
|
+
|
|
20
|
+
var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
|
|
21
|
+
|
|
22
|
+
var _umiRequest = require("umi-request");
|
|
23
|
+
|
|
24
|
+
var _utils = require("../utils");
|
|
25
|
+
|
|
26
|
+
//默认超时时间为1分钟
|
|
27
|
+
var request = (0, _umiRequest.extend)({
|
|
28
|
+
timeout: 60000
|
|
29
|
+
});
|
|
30
|
+
/** 请求拦截器,统一添加token */
|
|
31
|
+
|
|
32
|
+
request.interceptors.request.use(function (url, options) {
|
|
33
|
+
var token = (0, _utils.getCache)("token");
|
|
34
|
+
var opts = (0, _objectSpread2.default)({}, options);
|
|
35
|
+
|
|
36
|
+
if (token) {
|
|
37
|
+
Object.assign(opts, {
|
|
38
|
+
headers: {
|
|
39
|
+
token: token
|
|
40
|
+
}
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
return {
|
|
45
|
+
url: url,
|
|
46
|
+
options: opts
|
|
47
|
+
};
|
|
48
|
+
});
|
|
49
|
+
/** 请求返回拦截器,统一处理业务异常 */
|
|
50
|
+
|
|
51
|
+
request.interceptors.response.use( /*#__PURE__*/function () {
|
|
52
|
+
var _ref = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(response, options) {
|
|
53
|
+
var noMsg, data, flag, status;
|
|
54
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
55
|
+
while (1) {
|
|
56
|
+
switch (_context.prev = _context.next) {
|
|
57
|
+
case 0:
|
|
58
|
+
noMsg = (0, _utils.getUrlQuery)('noMsg', options.url);
|
|
59
|
+
|
|
60
|
+
if (!(response.status < 200 || response.status >= 300)) {
|
|
61
|
+
_context.next = 5;
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
(0, _utils.showError)(options.url + response.statusText);
|
|
66
|
+
_context.next = 12;
|
|
67
|
+
break;
|
|
68
|
+
|
|
69
|
+
case 5:
|
|
70
|
+
if (!(noMsg != '1')) {
|
|
71
|
+
_context.next = 12;
|
|
72
|
+
break;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
_context.next = 8;
|
|
76
|
+
return response.clone().json();
|
|
77
|
+
|
|
78
|
+
case 8:
|
|
79
|
+
data = _context.sent;
|
|
80
|
+
flag = data.flag;
|
|
81
|
+
status = ((0, _utils.getUrlQuery)('apiStatus') || '0').split(',');
|
|
82
|
+
|
|
83
|
+
if (flag && !status.includes(flag.retCode || '')) {
|
|
84
|
+
(0, _utils.showError)(flag.retMsg || '访问接口出错');
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
case 12:
|
|
88
|
+
return _context.abrupt("return", response);
|
|
89
|
+
|
|
90
|
+
case 13:
|
|
91
|
+
case "end":
|
|
92
|
+
return _context.stop();
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}, _callee);
|
|
96
|
+
}));
|
|
97
|
+
|
|
98
|
+
return function (_x, _x2) {
|
|
99
|
+
return _ref.apply(this, arguments);
|
|
100
|
+
};
|
|
101
|
+
}());
|
|
102
|
+
/**
|
|
103
|
+
* get请求
|
|
104
|
+
* @param url 接口
|
|
105
|
+
* @param params 参数{key:value}
|
|
106
|
+
* @returns Promise<ApiResponse>
|
|
107
|
+
*/
|
|
108
|
+
|
|
109
|
+
function httpGet(_x3) {
|
|
110
|
+
return _httpGet.apply(this, arguments);
|
|
111
|
+
}
|
|
112
|
+
/**
|
|
113
|
+
* post请求
|
|
114
|
+
* @param url 接口
|
|
115
|
+
* @param data 参数{key:value}
|
|
116
|
+
* @param isJson json请求还是form请求,默认为json请求
|
|
117
|
+
* @returns Promise<ApiResponse>
|
|
118
|
+
*/
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
function _httpGet() {
|
|
122
|
+
_httpGet = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(url) {
|
|
123
|
+
var params,
|
|
124
|
+
_args2 = arguments;
|
|
125
|
+
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
126
|
+
while (1) {
|
|
127
|
+
switch (_context2.prev = _context2.next) {
|
|
128
|
+
case 0:
|
|
129
|
+
params = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : {};
|
|
130
|
+
return _context2.abrupt("return", request.get(url, {
|
|
131
|
+
params: params
|
|
132
|
+
}));
|
|
133
|
+
|
|
134
|
+
case 2:
|
|
135
|
+
case "end":
|
|
136
|
+
return _context2.stop();
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
}, _callee2);
|
|
140
|
+
}));
|
|
141
|
+
return _httpGet.apply(this, arguments);
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
function httpPost(_x4) {
|
|
145
|
+
return _httpPost.apply(this, arguments);
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* put 请求
|
|
149
|
+
* @param url 接口
|
|
150
|
+
* @param data 参数{key:value}
|
|
151
|
+
* @returns Promise<ApiResponse>
|
|
152
|
+
*/
|
|
153
|
+
|
|
154
|
+
|
|
155
|
+
function _httpPost() {
|
|
156
|
+
_httpPost = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(url) {
|
|
157
|
+
var data,
|
|
158
|
+
isJson,
|
|
159
|
+
_args3 = arguments;
|
|
160
|
+
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
161
|
+
while (1) {
|
|
162
|
+
switch (_context3.prev = _context3.next) {
|
|
163
|
+
case 0:
|
|
164
|
+
data = _args3.length > 1 && _args3[1] !== undefined ? _args3[1] : {};
|
|
165
|
+
isJson = _args3.length > 2 && _args3[2] !== undefined ? _args3[2] : true;
|
|
166
|
+
return _context3.abrupt("return", request.post(url, {
|
|
167
|
+
data: data,
|
|
168
|
+
requestType: isJson ? 'json' : 'form'
|
|
169
|
+
}));
|
|
170
|
+
|
|
171
|
+
case 3:
|
|
172
|
+
case "end":
|
|
173
|
+
return _context3.stop();
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
}, _callee3);
|
|
177
|
+
}));
|
|
178
|
+
return _httpPost.apply(this, arguments);
|
|
179
|
+
}
|
|
180
|
+
|
|
181
|
+
function httpPut(_x5) {
|
|
182
|
+
return _httpPut.apply(this, arguments);
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* delete 请求
|
|
186
|
+
* @param url 接口
|
|
187
|
+
* @param data 参数[]
|
|
188
|
+
* @returns Promise<ApiResponse>
|
|
189
|
+
*/
|
|
190
|
+
|
|
191
|
+
|
|
192
|
+
function _httpPut() {
|
|
193
|
+
_httpPut = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee4(url) {
|
|
194
|
+
var data,
|
|
195
|
+
_args4 = arguments;
|
|
196
|
+
return _regenerator.default.wrap(function _callee4$(_context4) {
|
|
197
|
+
while (1) {
|
|
198
|
+
switch (_context4.prev = _context4.next) {
|
|
199
|
+
case 0:
|
|
200
|
+
data = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : {};
|
|
201
|
+
return _context4.abrupt("return", request.put(url, {
|
|
202
|
+
data: data
|
|
203
|
+
}));
|
|
204
|
+
|
|
205
|
+
case 2:
|
|
206
|
+
case "end":
|
|
207
|
+
return _context4.stop();
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}, _callee4);
|
|
211
|
+
}));
|
|
212
|
+
return _httpPut.apply(this, arguments);
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
function httpDelete(_x6, _x7) {
|
|
216
|
+
return _httpDelete.apply(this, arguments);
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* 读取数据字典
|
|
220
|
+
* @param dictCode 字典编码
|
|
221
|
+
* @returns Promise<Record<string,string>>
|
|
222
|
+
*/
|
|
223
|
+
|
|
224
|
+
|
|
225
|
+
function _httpDelete() {
|
|
226
|
+
_httpDelete = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee5(url, data) {
|
|
227
|
+
return _regenerator.default.wrap(function _callee5$(_context5) {
|
|
228
|
+
while (1) {
|
|
229
|
+
switch (_context5.prev = _context5.next) {
|
|
230
|
+
case 0:
|
|
231
|
+
return _context5.abrupt("return", request.delete(url, {
|
|
232
|
+
data: data
|
|
233
|
+
}));
|
|
234
|
+
|
|
235
|
+
case 1:
|
|
236
|
+
case "end":
|
|
237
|
+
return _context5.stop();
|
|
238
|
+
}
|
|
239
|
+
}
|
|
240
|
+
}, _callee5);
|
|
241
|
+
}));
|
|
242
|
+
return _httpDelete.apply(this, arguments);
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
function getDict(_x8) {
|
|
246
|
+
return _getDict.apply(this, arguments);
|
|
247
|
+
}
|
|
248
|
+
/**
|
|
249
|
+
* 加载下拉框的数据源
|
|
250
|
+
* @param url 后端接口
|
|
251
|
+
* @param param 请求参数
|
|
252
|
+
* @param valueField 值字段
|
|
253
|
+
* @param labelField 显示字段
|
|
254
|
+
* @param showValue 显示值
|
|
255
|
+
* @returns
|
|
256
|
+
*/
|
|
257
|
+
|
|
258
|
+
|
|
259
|
+
function _getDict() {
|
|
260
|
+
_getDict = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee6(dictCode) {
|
|
261
|
+
var api, param;
|
|
262
|
+
return _regenerator.default.wrap(function _callee6$(_context6) {
|
|
263
|
+
while (1) {
|
|
264
|
+
switch (_context6.prev = _context6.next) {
|
|
265
|
+
case 0:
|
|
266
|
+
api = '/lesoon-integration/sysDictDtl';
|
|
267
|
+
param = {
|
|
268
|
+
where: {
|
|
269
|
+
dictCode: dictCode
|
|
270
|
+
},
|
|
271
|
+
ifPage: 0
|
|
272
|
+
};
|
|
273
|
+
return _context6.abrupt("return", fetchOptions(api, param, 'dictValue', 'displayName'));
|
|
274
|
+
|
|
275
|
+
case 3:
|
|
276
|
+
case "end":
|
|
277
|
+
return _context6.stop();
|
|
278
|
+
}
|
|
279
|
+
}
|
|
280
|
+
}, _callee6);
|
|
281
|
+
}));
|
|
282
|
+
return _getDict.apply(this, arguments);
|
|
283
|
+
}
|
|
284
|
+
|
|
285
|
+
function fetchOptions(_x9, _x10, _x11, _x12) {
|
|
286
|
+
return _fetchOptions.apply(this, arguments);
|
|
287
|
+
}
|
|
288
|
+
|
|
289
|
+
function _fetchOptions() {
|
|
290
|
+
_fetchOptions = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee7(url, param, valueField, labelField) {
|
|
291
|
+
var showValue,
|
|
292
|
+
_yield$httpGet,
|
|
293
|
+
_yield$httpGet$rows,
|
|
294
|
+
rows,
|
|
295
|
+
data,
|
|
296
|
+
_args7 = arguments;
|
|
297
|
+
|
|
298
|
+
return _regenerator.default.wrap(function _callee7$(_context7) {
|
|
299
|
+
while (1) {
|
|
300
|
+
switch (_context7.prev = _context7.next) {
|
|
301
|
+
case 0:
|
|
302
|
+
showValue = _args7.length > 4 && _args7[4] !== undefined ? _args7[4] : true;
|
|
303
|
+
_context7.next = 3;
|
|
304
|
+
return httpGet(url, param);
|
|
305
|
+
|
|
306
|
+
case 3:
|
|
307
|
+
_yield$httpGet = _context7.sent;
|
|
308
|
+
_yield$httpGet$rows = _yield$httpGet.rows;
|
|
309
|
+
rows = _yield$httpGet$rows === void 0 ? [] : _yield$httpGet$rows;
|
|
310
|
+
data = (rows || []).map(function (o) {
|
|
311
|
+
return {
|
|
312
|
+
value: o[valueField],
|
|
313
|
+
text: o[labelField],
|
|
314
|
+
label: (showValue ? o[valueField] + '→' : '') + o[labelField],
|
|
315
|
+
status: o.status
|
|
316
|
+
};
|
|
317
|
+
});
|
|
318
|
+
return _context7.abrupt("return", data);
|
|
319
|
+
|
|
320
|
+
case 8:
|
|
321
|
+
case "end":
|
|
322
|
+
return _context7.stop();
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
}, _callee7);
|
|
326
|
+
}));
|
|
327
|
+
return _fetchOptions.apply(this, arguments);
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
var _default = request;
|
|
331
|
+
exports.default = _default;
|
package/lib/index.d.ts
ADDED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import EditModalForm from './components/EditModalForm';
|
|
2
|
+
import BaseService from './service/BaseService';
|
|
3
|
+
import request, { httpGet, httpPut, httpPost, httpDelete, getDict, fetchOptions } from './http';
|
|
4
|
+
import * as utils from './utils';
|
|
5
|
+
/** Hooks */
|
|
6
|
+
import useSingle from './hooks/useSingle';
|
|
7
|
+
/** Type */
|
|
8
|
+
import type { ApiResponse, TableToolbar, BaseApiType, MethodType } from './typing';
|
|
9
|
+
export type { ApiResponse, TableToolbar, BaseApiType, MethodType };
|
|
10
|
+
export { EditModalForm, BaseService, request, httpDelete, httpGet, httpPost, httpPut, getDict, fetchOptions, utils, useSingle };
|
package/lib/index.js
ADDED
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard");
|
|
4
|
+
|
|
5
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "__esModule", {
|
|
8
|
+
value: true
|
|
9
|
+
});
|
|
10
|
+
Object.defineProperty(exports, "BaseService", {
|
|
11
|
+
enumerable: true,
|
|
12
|
+
get: function get() {
|
|
13
|
+
return _BaseService.default;
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
Object.defineProperty(exports, "EditModalForm", {
|
|
17
|
+
enumerable: true,
|
|
18
|
+
get: function get() {
|
|
19
|
+
return _EditModalForm.default;
|
|
20
|
+
}
|
|
21
|
+
});
|
|
22
|
+
Object.defineProperty(exports, "fetchOptions", {
|
|
23
|
+
enumerable: true,
|
|
24
|
+
get: function get() {
|
|
25
|
+
return _http.fetchOptions;
|
|
26
|
+
}
|
|
27
|
+
});
|
|
28
|
+
Object.defineProperty(exports, "getDict", {
|
|
29
|
+
enumerable: true,
|
|
30
|
+
get: function get() {
|
|
31
|
+
return _http.getDict;
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
Object.defineProperty(exports, "httpDelete", {
|
|
35
|
+
enumerable: true,
|
|
36
|
+
get: function get() {
|
|
37
|
+
return _http.httpDelete;
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
Object.defineProperty(exports, "httpGet", {
|
|
41
|
+
enumerable: true,
|
|
42
|
+
get: function get() {
|
|
43
|
+
return _http.httpGet;
|
|
44
|
+
}
|
|
45
|
+
});
|
|
46
|
+
Object.defineProperty(exports, "httpPost", {
|
|
47
|
+
enumerable: true,
|
|
48
|
+
get: function get() {
|
|
49
|
+
return _http.httpPost;
|
|
50
|
+
}
|
|
51
|
+
});
|
|
52
|
+
Object.defineProperty(exports, "httpPut", {
|
|
53
|
+
enumerable: true,
|
|
54
|
+
get: function get() {
|
|
55
|
+
return _http.httpPut;
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
Object.defineProperty(exports, "request", {
|
|
59
|
+
enumerable: true,
|
|
60
|
+
get: function get() {
|
|
61
|
+
return _http.default;
|
|
62
|
+
}
|
|
63
|
+
});
|
|
64
|
+
Object.defineProperty(exports, "useSingle", {
|
|
65
|
+
enumerable: true,
|
|
66
|
+
get: function get() {
|
|
67
|
+
return _useSingle.default;
|
|
68
|
+
}
|
|
69
|
+
});
|
|
70
|
+
exports.utils = void 0;
|
|
71
|
+
|
|
72
|
+
var _EditModalForm = _interopRequireDefault(require("./components/EditModalForm"));
|
|
73
|
+
|
|
74
|
+
var _BaseService = _interopRequireDefault(require("./service/BaseService"));
|
|
75
|
+
|
|
76
|
+
var _http = _interopRequireWildcard(require("./http"));
|
|
77
|
+
|
|
78
|
+
var utils = _interopRequireWildcard(require("./utils"));
|
|
79
|
+
|
|
80
|
+
exports.utils = utils;
|
|
81
|
+
|
|
82
|
+
var _useSingle = _interopRequireDefault(require("./hooks/useSingle"));
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import type { BaseApiType, MethodType } from '../typing';
|
|
2
|
+
/** 基本增删改查服务 */
|
|
3
|
+
declare class BaseService {
|
|
4
|
+
/** 定义每个服务的api */
|
|
5
|
+
api: BaseApiType;
|
|
6
|
+
/** 定义每个服务接口对应的请求方法,默认为 restful */
|
|
7
|
+
method: MethodType;
|
|
8
|
+
/** 加载数据方法 @param param 请求参数对象 */
|
|
9
|
+
load(param: Record<string, any>): Promise<any>;
|
|
10
|
+
/** 保存数据方法 @param data 对象数据,当存在id时即为更改 */
|
|
11
|
+
save(data: Record<string, any>): Promise<any>;
|
|
12
|
+
/** 批量删除对象方法,@param data id集合 */
|
|
13
|
+
remove(data: any[]): Promise<any>;
|
|
14
|
+
}
|
|
15
|
+
export default BaseService;
|
|
@@ -0,0 +1,216 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
+
|
|
5
|
+
Object.defineProperty(exports, "__esModule", {
|
|
6
|
+
value: true
|
|
7
|
+
});
|
|
8
|
+
exports.default = void 0;
|
|
9
|
+
|
|
10
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
11
|
+
|
|
12
|
+
require("antd/es/message/style");
|
|
13
|
+
|
|
14
|
+
var _message2 = _interopRequireDefault(require("antd/es/message"));
|
|
15
|
+
|
|
16
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
17
|
+
|
|
18
|
+
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
19
|
+
|
|
20
|
+
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
21
|
+
|
|
22
|
+
var _http = require("../http");
|
|
23
|
+
|
|
24
|
+
/** 基本增删改查服务 */
|
|
25
|
+
var BaseService = /*#__PURE__*/function () {
|
|
26
|
+
function BaseService() {
|
|
27
|
+
(0, _classCallCheck2.default)(this, BaseService);
|
|
28
|
+
this.api = {};
|
|
29
|
+
this.method = {
|
|
30
|
+
get: 'get',
|
|
31
|
+
edit: 'put',
|
|
32
|
+
delete: 'delete'
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
(0, _createClass2.default)(BaseService, [{
|
|
37
|
+
key: "load",
|
|
38
|
+
value:
|
|
39
|
+
/** 加载数据方法 @param param 请求参数对象 */
|
|
40
|
+
function () {
|
|
41
|
+
var _load = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee(param) {
|
|
42
|
+
var _this$api;
|
|
43
|
+
|
|
44
|
+
var url;
|
|
45
|
+
return _regenerator.default.wrap(function _callee$(_context) {
|
|
46
|
+
while (1) {
|
|
47
|
+
switch (_context.prev = _context.next) {
|
|
48
|
+
case 0:
|
|
49
|
+
url = (_this$api = this.api) === null || _this$api === void 0 ? void 0 : _this$api.load;
|
|
50
|
+
|
|
51
|
+
if (url) {
|
|
52
|
+
_context.next = 4;
|
|
53
|
+
break;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
_message2.default.error("加载方法没有配置api");
|
|
57
|
+
|
|
58
|
+
return _context.abrupt("return", Promise.reject("加载方法没有配置api"));
|
|
59
|
+
|
|
60
|
+
case 4:
|
|
61
|
+
if (!(this.method.get === 'post')) {
|
|
62
|
+
_context.next = 8;
|
|
63
|
+
break;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
_context.next = 7;
|
|
67
|
+
return (0, _http.httpPost)(url, param);
|
|
68
|
+
|
|
69
|
+
case 7:
|
|
70
|
+
return _context.abrupt("return", _context.sent);
|
|
71
|
+
|
|
72
|
+
case 8:
|
|
73
|
+
_context.next = 10;
|
|
74
|
+
return (0, _http.httpGet)(url, param);
|
|
75
|
+
|
|
76
|
+
case 10:
|
|
77
|
+
return _context.abrupt("return", _context.sent);
|
|
78
|
+
|
|
79
|
+
case 11:
|
|
80
|
+
case "end":
|
|
81
|
+
return _context.stop();
|
|
82
|
+
}
|
|
83
|
+
}
|
|
84
|
+
}, _callee, this);
|
|
85
|
+
}));
|
|
86
|
+
|
|
87
|
+
function load(_x) {
|
|
88
|
+
return _load.apply(this, arguments);
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
return load;
|
|
92
|
+
}()
|
|
93
|
+
/** 保存数据方法 @param data 对象数据,当存在id时即为更改 */
|
|
94
|
+
|
|
95
|
+
}, {
|
|
96
|
+
key: "save",
|
|
97
|
+
value: function () {
|
|
98
|
+
var _save = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee2(data) {
|
|
99
|
+
var _this$api2;
|
|
100
|
+
|
|
101
|
+
var url;
|
|
102
|
+
return _regenerator.default.wrap(function _callee2$(_context2) {
|
|
103
|
+
while (1) {
|
|
104
|
+
switch (_context2.prev = _context2.next) {
|
|
105
|
+
case 0:
|
|
106
|
+
url = (_this$api2 = this.api) === null || _this$api2 === void 0 ? void 0 : _this$api2.add;
|
|
107
|
+
|
|
108
|
+
if (data.id && this.api.edit) {
|
|
109
|
+
url = this.api.edit;
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
if (url) {
|
|
113
|
+
_context2.next = 5;
|
|
114
|
+
break;
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
_message2.default.error("保存方法没有配置api");
|
|
118
|
+
|
|
119
|
+
return _context2.abrupt("return", Promise.reject("保存方法没有配置api"));
|
|
120
|
+
|
|
121
|
+
case 5:
|
|
122
|
+
if (!(data.id && this.method.edit === 'put')) {
|
|
123
|
+
_context2.next = 9;
|
|
124
|
+
break;
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
_context2.next = 8;
|
|
128
|
+
return (0, _http.httpPut)(url, data);
|
|
129
|
+
|
|
130
|
+
case 8:
|
|
131
|
+
return _context2.abrupt("return", _context2.sent);
|
|
132
|
+
|
|
133
|
+
case 9:
|
|
134
|
+
_context2.next = 11;
|
|
135
|
+
return (0, _http.httpPost)(url, data);
|
|
136
|
+
|
|
137
|
+
case 11:
|
|
138
|
+
return _context2.abrupt("return", _context2.sent);
|
|
139
|
+
|
|
140
|
+
case 12:
|
|
141
|
+
case "end":
|
|
142
|
+
return _context2.stop();
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}, _callee2, this);
|
|
146
|
+
}));
|
|
147
|
+
|
|
148
|
+
function save(_x2) {
|
|
149
|
+
return _save.apply(this, arguments);
|
|
150
|
+
}
|
|
151
|
+
|
|
152
|
+
return save;
|
|
153
|
+
}()
|
|
154
|
+
/** 批量删除对象方法,@param data id集合 */
|
|
155
|
+
|
|
156
|
+
}, {
|
|
157
|
+
key: "remove",
|
|
158
|
+
value: function () {
|
|
159
|
+
var _remove = (0, _asyncToGenerator2.default)( /*#__PURE__*/_regenerator.default.mark(function _callee3(data) {
|
|
160
|
+
var _this$api3;
|
|
161
|
+
|
|
162
|
+
var url;
|
|
163
|
+
return _regenerator.default.wrap(function _callee3$(_context3) {
|
|
164
|
+
while (1) {
|
|
165
|
+
switch (_context3.prev = _context3.next) {
|
|
166
|
+
case 0:
|
|
167
|
+
url = (_this$api3 = this.api) === null || _this$api3 === void 0 ? void 0 : _this$api3.delete;
|
|
168
|
+
|
|
169
|
+
if (url) {
|
|
170
|
+
_context3.next = 4;
|
|
171
|
+
break;
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
_message2.default.error("加载方法没有配置api");
|
|
175
|
+
|
|
176
|
+
return _context3.abrupt("return", Promise.reject("加载方法没有配置api"));
|
|
177
|
+
|
|
178
|
+
case 4:
|
|
179
|
+
if (!(this.method.delete === 'post')) {
|
|
180
|
+
_context3.next = 8;
|
|
181
|
+
break;
|
|
182
|
+
}
|
|
183
|
+
|
|
184
|
+
_context3.next = 7;
|
|
185
|
+
return (0, _http.httpPost)(url, data);
|
|
186
|
+
|
|
187
|
+
case 7:
|
|
188
|
+
return _context3.abrupt("return", _context3.sent);
|
|
189
|
+
|
|
190
|
+
case 8:
|
|
191
|
+
_context3.next = 10;
|
|
192
|
+
return (0, _http.httpDelete)(url, data);
|
|
193
|
+
|
|
194
|
+
case 10:
|
|
195
|
+
return _context3.abrupt("return", _context3.sent);
|
|
196
|
+
|
|
197
|
+
case 11:
|
|
198
|
+
case "end":
|
|
199
|
+
return _context3.stop();
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
}, _callee3, this);
|
|
203
|
+
}));
|
|
204
|
+
|
|
205
|
+
function remove(_x3) {
|
|
206
|
+
return _remove.apply(this, arguments);
|
|
207
|
+
}
|
|
208
|
+
|
|
209
|
+
return remove;
|
|
210
|
+
}()
|
|
211
|
+
}]);
|
|
212
|
+
return BaseService;
|
|
213
|
+
}();
|
|
214
|
+
|
|
215
|
+
var _default = BaseService;
|
|
216
|
+
exports.default = _default;
|
package/lib/typing.d.ts
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/** @name 接口返回值 */
|
|
2
|
+
export declare type ApiResponse = Record<string, any> & {
|
|
3
|
+
flag?: {
|
|
4
|
+
retCode?: string;
|
|
5
|
+
retMsg?: string;
|
|
6
|
+
retDetail?: string;
|
|
7
|
+
};
|
|
8
|
+
rows?: [];
|
|
9
|
+
data?: any;
|
|
10
|
+
total?: 0;
|
|
11
|
+
};
|
|
12
|
+
export declare type TableToolbar = {
|
|
13
|
+
add?: boolean;
|
|
14
|
+
edit?: boolean;
|
|
15
|
+
remove?: boolean;
|
|
16
|
+
export?: boolean;
|
|
17
|
+
import?: boolean;
|
|
18
|
+
print?: boolean;
|
|
19
|
+
};
|
|
20
|
+
/** 基础模块接口类型 */
|
|
21
|
+
export declare type BaseApiType = {
|
|
22
|
+
/**加载数据api */
|
|
23
|
+
load?: string;
|
|
24
|
+
/**新增数据api */
|
|
25
|
+
add?: string;
|
|
26
|
+
/**更改数据api,如果跟新增接口一样,可不指定 */
|
|
27
|
+
edit?: string;
|
|
28
|
+
/**删除数据api */
|
|
29
|
+
delete?: string;
|
|
30
|
+
/**导入数据api */
|
|
31
|
+
import?: string;
|
|
32
|
+
/**导出数据api,如果跟加载数据api一致,可不指定 */
|
|
33
|
+
export?: string;
|
|
34
|
+
};
|
|
35
|
+
/**请求后端接口方法 */
|
|
36
|
+
export declare type MethodType = {
|
|
37
|
+
/**加载数据对应的方法,默认为get, 如果请求参数太长时,后端可能会改为post */
|
|
38
|
+
get: 'get' | 'post';
|
|
39
|
+
/** 更改数据的请求方法,默认为 put, 也可以是post,根据后端接口而定 */
|
|
40
|
+
edit: 'put' | 'post';
|
|
41
|
+
/** 删除数据的请求方法,默认为delete, 也可以是post,根据后端接口而定 */
|
|
42
|
+
delete: 'delete' | 'post';
|
|
43
|
+
};
|