tplus-member 3.47.3 → 3.47.4
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/member/ShopMember.js +152 -54
- package/dist/member/ShopMember.js.map +1 -1
- package/dist/member/ShopMember.less +19 -1
- package/dist/member/ShopMemberStorage.js +191 -86
- package/dist/member/ShopMemberStorage.js.map +1 -1
- package/dist/member/index.js +2 -2
- package/dist/member/index.js.map +1 -1
- package/dist/member/index.less +9 -2
- package/package.json +1 -1
@@ -78,13 +78,31 @@
|
|
78
78
|
line-height: 65px;
|
79
79
|
display: flex;
|
80
80
|
align-items: center;
|
81
|
+
.temp {
|
82
|
+
padding-right: 30px;
|
83
|
+
.tplus-input-clear {
|
84
|
+
display: none;
|
85
|
+
}
|
86
|
+
}
|
81
87
|
.search-input{
|
82
|
-
margin-right:
|
88
|
+
margin-right: -28px;
|
83
89
|
width: 270px;
|
84
90
|
input{
|
85
91
|
padding-left: 0;
|
86
92
|
}
|
87
93
|
}
|
94
|
+
.primary-btn {
|
95
|
+
margin-left: 50px;
|
96
|
+
}
|
97
|
+
.icon {
|
98
|
+
position: absolute;
|
99
|
+
left: 250px;
|
100
|
+
font-size: 20px;
|
101
|
+
color : @color-g2;
|
102
|
+
cursor : pointer;
|
103
|
+
margin-left: 8px;
|
104
|
+
margin-right: 8px;
|
105
|
+
}
|
88
106
|
}
|
89
107
|
.member-shop-content{
|
90
108
|
display: flex;
|
@@ -9,6 +9,10 @@ var _button = require('antd/es/button');
|
|
9
9
|
|
10
10
|
var _button2 = _interopRequireDefault(_button);
|
11
11
|
|
12
|
+
var _extends2 = require('babel-runtime/helpers/extends');
|
13
|
+
|
14
|
+
var _extends3 = _interopRequireDefault(_extends2);
|
15
|
+
|
12
16
|
var _defineProperty2 = require('babel-runtime/helpers/defineProperty');
|
13
17
|
|
14
18
|
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
|
@@ -73,6 +77,8 @@ var _MemberCardList2 = _interopRequireDefault(_MemberCardList);
|
|
73
77
|
|
74
78
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
75
79
|
|
80
|
+
var hasElectron = _mutantsMicrofx.env.platform === _mutantsMicrofx.env.constant.platform.electron;
|
81
|
+
|
76
82
|
// let swiperSelectObserver;
|
77
83
|
|
78
84
|
var ShopMemberStorage = (_temp = _class = function (_Component) {
|
@@ -81,45 +87,63 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
|
|
81
87
|
function ShopMemberStorage(props) {
|
82
88
|
(0, _classCallCheck3.default)(this, ShopMemberStorage);
|
83
89
|
|
84
|
-
var
|
90
|
+
var _this2 = (0, _possibleConstructorReturn3.default)(this, (ShopMemberStorage.__proto__ || (0, _getPrototypeOf2.default)(ShopMemberStorage)).call(this, props));
|
91
|
+
|
92
|
+
_this2.currentPage = 1;
|
93
|
+
_this2.cacheUserRetail = {};
|
85
94
|
|
86
|
-
|
87
|
-
|
95
|
+
_this2.handleReadICard = function () {
|
96
|
+
_this2.readRfCard();
|
97
|
+
};
|
98
|
+
|
99
|
+
_this2.changeScanProduct = function () {
|
100
|
+
if (_this2.scanObj) _this2.scanObj.startScan();
|
101
|
+
};
|
88
102
|
|
89
|
-
|
103
|
+
_this2.onScanCzkResult = function (val) {
|
104
|
+
var _this = _this2;
|
105
|
+
_this2.setState({
|
106
|
+
searchValue: val
|
107
|
+
});
|
108
|
+
setTimeout(function () {
|
109
|
+
_this.getCardList(val);
|
110
|
+
}, 0);
|
111
|
+
};
|
112
|
+
|
113
|
+
_this2.hotKeyListener = function (nodeName, index) {
|
90
114
|
if (nodeName && ~nodeName.className.indexOf('slide-selected')) {
|
91
|
-
|
115
|
+
_this2.isHotKeyAction = true;
|
92
116
|
var activeElement = document.activeElement;
|
93
117
|
activeElement && activeElement.blur();
|
94
118
|
}
|
95
119
|
};
|
96
120
|
|
97
|
-
|
121
|
+
_this2.observerCard = function () {
|
98
122
|
setTimeout(function () {
|
99
123
|
var slideSelected = document.querySelector('.slide-selected');
|
100
|
-
|
101
|
-
|
124
|
+
_this2.prevSlideSelected && swiperSelectObserver.unobserve(_this2.prevSlideSelected);
|
125
|
+
_this2.prevSlideSelected = slideSelected;
|
102
126
|
slideSelected && swiperSelectObserver.observe(slideSelected);
|
103
127
|
});
|
104
128
|
};
|
105
129
|
|
106
|
-
|
107
|
-
if (!
|
108
|
-
return window.removeEventListener('resize',
|
130
|
+
_this2.windowOnresize = function () {
|
131
|
+
if (!_this2.memberTab) {
|
132
|
+
return window.removeEventListener('resize', _this2.windowOnresize);
|
109
133
|
};
|
110
|
-
var memberTabHeight =
|
134
|
+
var memberTabHeight = _this2.state.memberTabHeight;
|
111
135
|
|
112
|
-
var clientHeight =
|
136
|
+
var clientHeight = _this2.memberTab.clientHeight - _this2.state.tabMenuHeight;
|
113
137
|
if (memberTabHeight !== clientHeight) {
|
114
|
-
|
138
|
+
_this2.setState({ memberTabHeight: clientHeight });
|
115
139
|
}
|
116
140
|
};
|
117
141
|
|
118
|
-
|
119
|
-
if (
|
142
|
+
_this2.isNotSetState = function (Idmember) {
|
143
|
+
if (_this2.willUnmount || Idmember !== _this2.currentMemberId) return true;
|
120
144
|
};
|
121
145
|
|
122
|
-
|
146
|
+
_this2.getCardList = function (cardNo) {
|
123
147
|
var currentPage = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
124
148
|
var pageSize = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 10;
|
125
149
|
var key = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
@@ -130,25 +154,25 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
|
|
130
154
|
return;
|
131
155
|
}
|
132
156
|
_tplusComponentsTouch.Loading.show({ target: '.memberShopContainer' });
|
133
|
-
|
157
|
+
_this2.setState({
|
134
158
|
loadingBtn: true
|
135
159
|
});
|
136
|
-
|
160
|
+
_this2.ms.getCardInfoByCardNo(cardNo).then(function (ret) {
|
137
161
|
var _ref = ret || {},
|
138
162
|
_ref$data = _ref.data,
|
139
163
|
data = _ref$data === undefined ? [] : _ref$data;
|
140
164
|
|
141
165
|
if (data.length) {
|
142
|
-
|
166
|
+
_this2.setState({
|
143
167
|
cardList: data,
|
144
168
|
selected: 0,
|
145
169
|
loadingBtn: false
|
146
170
|
}, function () {
|
147
|
-
|
148
|
-
|
171
|
+
_this2.setCardInfo(currentPage === 1 ? 0 : key, data[0]);
|
172
|
+
_this2.memberCardList.resetSlideTop();
|
149
173
|
});
|
150
174
|
} else {
|
151
|
-
|
175
|
+
_this2.setCardInfo(key);
|
152
176
|
}
|
153
177
|
|
154
178
|
_tplusComponentsTouch.Loading.hide();
|
@@ -161,20 +185,20 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
|
|
161
185
|
content: '\u8BF7\u8F93\u5165\u5361\u53F7\uFF01'
|
162
186
|
});
|
163
187
|
}
|
164
|
-
|
165
|
-
|
188
|
+
_this2.setCardInfo(key);
|
189
|
+
_this2.setState({
|
166
190
|
loadingBtn: false
|
167
191
|
});
|
168
192
|
_tplusComponentsTouch.Loading.hide();
|
169
193
|
});
|
170
194
|
};
|
171
195
|
|
172
|
-
|
196
|
+
_this2.loadUserInfo = function (ID) {
|
173
197
|
// this.observerCard();
|
174
198
|
|
175
|
-
|
199
|
+
_this2.ms.getGetUmemberDTO(ID).then(function (ret) {
|
176
200
|
_mutantsMicrofx.stores.selectMemberStore.setCurMemberInfo(ret);
|
177
|
-
var memberChange =
|
201
|
+
var memberChange = _this2.props.memberChange;
|
178
202
|
|
179
203
|
memberChange && memberChange(ret);
|
180
204
|
}).catch(function (err) {
|
@@ -182,50 +206,50 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
|
|
182
206
|
});
|
183
207
|
};
|
184
208
|
|
185
|
-
|
209
|
+
_this2.setCardInfo = function (key) {
|
186
210
|
var cardInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
187
211
|
|
188
|
-
|
212
|
+
_this2.setState({
|
189
213
|
selected: key,
|
190
214
|
cardInfo: cardInfo
|
191
215
|
});
|
192
216
|
};
|
193
217
|
|
194
|
-
|
195
|
-
var
|
196
|
-
searchValue =
|
197
|
-
selected =
|
218
|
+
_this2.handleSearchClick = function () {
|
219
|
+
var _this2$state = _this2.state,
|
220
|
+
searchValue = _this2$state.searchValue,
|
221
|
+
selected = _this2$state.selected;
|
198
222
|
|
199
|
-
|
200
|
-
|
223
|
+
_this2.userSearch = true;
|
224
|
+
_this2.currentPage = 1;
|
201
225
|
// this.setState({ selected: undefined });
|
202
|
-
|
226
|
+
_this2.getCardList(searchValue, _this2.currentPage, 10, selected);
|
203
227
|
};
|
204
228
|
|
205
|
-
|
206
|
-
|
229
|
+
_this2.handleSearchChange = function (val) {
|
230
|
+
_this2.setState({ searchValue: val });
|
207
231
|
};
|
208
232
|
|
209
|
-
|
210
|
-
|
233
|
+
_this2.keyboardOnOk = function () {
|
234
|
+
_this2.handleSearchClick();
|
211
235
|
};
|
212
236
|
|
213
|
-
|
214
|
-
|
237
|
+
_this2.keyboardOnClose = function () {
|
238
|
+
_this2.searchRef && _this2.searchRef.blur();
|
215
239
|
};
|
216
240
|
|
217
|
-
|
241
|
+
_this2.onKeyPressed = function (e) {
|
218
242
|
var keyCode = e.keyCode;
|
219
243
|
|
220
244
|
var enterKey = 13;
|
221
245
|
if (keyCode === enterKey) {
|
222
|
-
|
223
|
-
|
246
|
+
_this2.handleSearchClick();
|
247
|
+
_this2.keyboardOnClose();
|
224
248
|
}
|
225
249
|
};
|
226
250
|
|
227
|
-
|
228
|
-
var memberList =
|
251
|
+
_this2.MemberMenuChange = function (dto) {
|
252
|
+
var memberList = _this2.state.memberList;
|
229
253
|
|
230
254
|
(0, _utils.userInfoFormat)(dto);
|
231
255
|
var arr = [];
|
@@ -236,31 +260,48 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
|
|
236
260
|
arr.push(item);
|
237
261
|
}
|
238
262
|
});
|
239
|
-
|
263
|
+
_this2.setState({ member: dto, memberList: arr });
|
240
264
|
};
|
241
265
|
|
242
|
-
|
243
|
-
|
266
|
+
_this2.onClear = function (key, input) {
|
267
|
+
_this2.setState((0, _defineProperty3.default)({}, key, ''));
|
244
268
|
input.focus();
|
245
269
|
};
|
246
270
|
|
247
|
-
var mode =
|
271
|
+
var mode = _this2.props.mode;
|
272
|
+
|
273
|
+
_this2.hasElectron = hasElectron;
|
248
274
|
|
249
|
-
|
275
|
+
var _ref2 = _mutantsMicrofx.stores.user.options.get('loginInfo') || {},
|
276
|
+
ICCardServer = _ref2.ICCardServer,
|
277
|
+
ICCardPassword = _ref2.ICCardPassword;
|
278
|
+
|
279
|
+
_this2.iCCardServer = parseInt(ICCardServer); // 启用IC卡:0为禁用 1为启用
|
280
|
+
_this2.iCCardPassword = ICCardPassword; //IC卡密码
|
281
|
+
_this2.state = {
|
250
282
|
searchValue: '',
|
251
|
-
searchStatus: !!
|
252
|
-
tabIndex:
|
283
|
+
searchStatus: !!_this2.props.listArr ? true : false,
|
284
|
+
tabIndex: _this2.props.defaultActiveKey,
|
253
285
|
tabMenuHeight: mode !== 'practice' ? 64 : 0, // 64为table上部操作菜单高度
|
254
286
|
cardList: [], // 储值卡列表
|
255
|
-
cardInfo: {} // 当前被选中的卡信息
|
287
|
+
cardInfo: {}, // 当前被选中的卡信息
|
288
|
+
connectCardStatus: false, //连接IC卡状态
|
289
|
+
connectCardError: '' //连接IC卡错误后记录错误信息
|
256
290
|
};
|
257
|
-
|
258
|
-
|
291
|
+
_this2.ms = _api2.default;
|
292
|
+
//移动端环境下,没有读取IC卡的方式。
|
293
|
+
|
294
|
+
var _ref3 = _mutantsUtil.platform || {},
|
295
|
+
isHorizontalPad = _ref3.isHorizontalPad;
|
296
|
+
|
297
|
+
_this2.isHorizontalPad = !!isHorizontalPad;
|
298
|
+
return _this2;
|
259
299
|
}
|
260
300
|
|
261
301
|
(0, _createClass3.default)(ShopMemberStorage, [{
|
262
302
|
key: 'componentDidMount',
|
263
303
|
value: function componentDidMount() {
|
304
|
+
this.connectRfCard();
|
264
305
|
window.addEventListener('resize', this.windowOnresize);
|
265
306
|
$.on(this.hotKeyListener);
|
266
307
|
this.ms.searchValue = ''; //初始化完成筛选列表清空数据(会员新增成功——封涛)
|
@@ -285,6 +326,63 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
|
|
285
326
|
// swiperSelectObserver.disconnect();
|
286
327
|
$.off(this.hotKeyListener);
|
287
328
|
}
|
329
|
+
}, {
|
330
|
+
key: 'readRfCard',
|
331
|
+
|
332
|
+
//IC卡读取
|
333
|
+
value: function readRfCard() {
|
334
|
+
var _this3 = this;
|
335
|
+
|
336
|
+
//客户端环境下,并开启了启用IC卡。
|
337
|
+
if (this.hasElectron === true && this.iCCardServer === 1) {
|
338
|
+
var _state2 = this.state,
|
339
|
+
connectCardStatus = _state2.connectCardStatus,
|
340
|
+
connectCardError = _state2.connectCardError;
|
341
|
+
|
342
|
+
if (connectCardStatus === false) {
|
343
|
+
_tplusComponentsTouch.Message.error(connectCardError ? connectCardError : '读取IC卡失败');
|
344
|
+
this.connectRfCard(); //读取失败后,重新连接一下。
|
345
|
+
return;
|
346
|
+
}
|
347
|
+
var params = { cardPsw: this.iCCardPassword, cardSec: 13, cardKm: 0 };
|
348
|
+
_mutantsMicrofx.nativeMs.setIpcRendererMethod('ReadRfCard', (0, _extends3.default)({}, params), function (ret) {
|
349
|
+
if (ret.status === 0) {
|
350
|
+
_tplusComponentsTouch.Message.error(ret.value);
|
351
|
+
_this3.connectRfCard(); //读取失败后,重新连接一下。
|
352
|
+
return;
|
353
|
+
} else if (ret.status === 1) {
|
354
|
+
_this3.setState({
|
355
|
+
searchValue: ret.value
|
356
|
+
});
|
357
|
+
_this3.getCardList(ret.value);
|
358
|
+
}
|
359
|
+
});
|
360
|
+
}
|
361
|
+
}
|
362
|
+
|
363
|
+
//IC卡连接
|
364
|
+
|
365
|
+
}, {
|
366
|
+
key: 'connectRfCard',
|
367
|
+
value: function connectRfCard() {
|
368
|
+
var _this4 = this;
|
369
|
+
|
370
|
+
//客户端环境下,并开启了启用IC卡。
|
371
|
+
if (this.hasElectron === true && this.iCCardServer === 1) {
|
372
|
+
_mutantsMicrofx.nativeMs.setIpcRendererMethod('ConnectRfCard', null, function (ret) {
|
373
|
+
var result = {};
|
374
|
+
if (ret.status === 0) {
|
375
|
+
result = { connectCardStatus: false, connectCardError: ret.value };
|
376
|
+
} else {
|
377
|
+
result = { connectCardStatus: true, connectCardError: '' };
|
378
|
+
}
|
379
|
+
_this4.setState(result);
|
380
|
+
});
|
381
|
+
}
|
382
|
+
}
|
383
|
+
|
384
|
+
//移动端:扫描商品
|
385
|
+
|
288
386
|
|
289
387
|
// 获取储值卡信息
|
290
388
|
|
@@ -294,19 +392,19 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
|
|
294
392
|
}, {
|
295
393
|
key: 'render',
|
296
394
|
value: function render() {
|
297
|
-
var
|
395
|
+
var _this5 = this;
|
298
396
|
|
299
397
|
var isUserAndroidKey = !!window.android_setKeyBoard;
|
300
|
-
var
|
301
|
-
searchValue =
|
302
|
-
|
303
|
-
memberTabHeight =
|
304
|
-
initEmpty =
|
305
|
-
loadingBtn =
|
306
|
-
selected =
|
307
|
-
isAllAuthority =
|
308
|
-
cardList =
|
309
|
-
cardInfo =
|
398
|
+
var _state3 = this.state,
|
399
|
+
searchValue = _state3.searchValue,
|
400
|
+
_state3$memberTabHeig = _state3.memberTabHeight,
|
401
|
+
memberTabHeight = _state3$memberTabHeig === undefined ? 0 : _state3$memberTabHeig,
|
402
|
+
initEmpty = _state3.initEmpty,
|
403
|
+
loadingBtn = _state3.loadingBtn,
|
404
|
+
selected = _state3.selected,
|
405
|
+
isAllAuthority = _state3.isAllAuthority,
|
406
|
+
cardList = _state3.cardList,
|
407
|
+
cardInfo = _state3.cardInfo;
|
310
408
|
var _props = this.props,
|
311
409
|
status = _props.status,
|
312
410
|
showModal = _props.showModal,
|
@@ -337,35 +435,42 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
|
|
337
435
|
tplusInput: true,
|
338
436
|
placeholder: '\u5361\u53F7/\u624B\u673A\u53F7',
|
339
437
|
prefix: 'sousuo',
|
340
|
-
className: searchClassName + ' android_focus_keyboard',
|
438
|
+
className: searchClassName + ' android_focus_keyboard ' + (this.hasElectron === true && this.iCCardServer === 1 || this.isHorizontalPad === true ? 'temp' : ''),
|
341
439
|
value: searchValue,
|
342
440
|
type: 'native',
|
343
|
-
onChange: function onChange(
|
344
|
-
var searchValue =
|
345
|
-
return
|
441
|
+
onChange: function onChange(_ref4) {
|
442
|
+
var searchValue = _ref4.target.value;
|
443
|
+
return _this5.setState({ searchValue: searchValue });
|
346
444
|
},
|
347
445
|
inputRef: function inputRef(ref) {
|
348
|
-
return
|
446
|
+
return _this5.searchRef = ref;
|
349
447
|
},
|
350
448
|
onClear: function onClear() {
|
351
|
-
return
|
449
|
+
return _this5.onClear('searchValue', _this5.searchRef);
|
352
450
|
},
|
353
|
-
onFocus: function onFocus(
|
354
|
-
var target =
|
451
|
+
onFocus: function onFocus(_ref5) {
|
452
|
+
var target = _ref5.target;
|
355
453
|
|
356
454
|
if (!isUserAndroidKey) {
|
357
|
-
|
358
|
-
|
455
|
+
_this5.focusInputName = 'searchValue';
|
456
|
+
_this5.inputTarget = target;
|
359
457
|
_tplusComponentsTouch.Keyboard.open(function (v) {
|
360
|
-
var key =
|
361
|
-
var value = _tplusComponentsTouch.Keyboard.getNewValue(
|
362
|
-
|
363
|
-
},
|
458
|
+
var key = _this5.focusInputName;
|
459
|
+
var value = _tplusComponentsTouch.Keyboard.getNewValue(_this5.inputTarget, _this5.inputTarget.value, v);
|
460
|
+
_this5.setState((0, _defineProperty3.default)({}, key, value));
|
461
|
+
}, _this5.keyboardOnOk, _this5.keyboardOnClose)();
|
364
462
|
}
|
365
463
|
},
|
366
464
|
onBlur: _tplusComponentsTouch.Keyboard.close,
|
367
465
|
onKeyDown: this.onKeyPressed
|
368
466
|
}),
|
467
|
+
this.hasElectron === true && this.iCCardServer === 1 && _react2.default.createElement(_tplusComponentsTouch.Ticon, { className: 'icon', onClick: this.handleReadICard, type: 'ICka' }),
|
468
|
+
this.isHorizontalPad && _react2.default.createElement(_tplusComponentsTouch.Ticon, { type: 'saomiao1', className: 'icon', onClick: this.changeScanProduct }),
|
469
|
+
|
470
|
+
/* 扫描组件 */
|
471
|
+
this.isHorizontalPad && _react2.default.createElement(Scan, { ref: function ref(scan) {
|
472
|
+
return _this5.scanObj = scan;
|
473
|
+
}, onChange: this.onScanCzkResult }),
|
369
474
|
_react2.default.createElement(
|
370
475
|
_button2.default,
|
371
476
|
{ className: 'primary-btn', onClick: this.handleSearchClick },
|
@@ -375,15 +480,15 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
|
|
375
480
|
_react2.default.createElement(
|
376
481
|
'div',
|
377
482
|
{
|
378
|
-
ref: function ref(
|
379
|
-
return
|
483
|
+
ref: function ref(_ref6) {
|
484
|
+
return _this5.memberTab = _ref6;
|
380
485
|
},
|
381
486
|
className: '' + memberTabClassName
|
382
487
|
},
|
383
488
|
noList && _react2.default.createElement('div', { className: 'empty-data-img storage-empty-data-img' }),
|
384
489
|
_react2.default.createElement(_MemberCardList2.default, {
|
385
490
|
ref: function ref(list) {
|
386
|
-
return
|
491
|
+
return _this5.memberCardList = list;
|
387
492
|
},
|
388
493
|
title: title,
|
389
494
|
storeKey: storeKey,
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"sources":["tplus-member/member/ShopMemberStorage.js"],"names":["ShopMemberStorage","props","currentPage","cacheUserRetail","hotKeyListener","nodeName","index","className","indexOf","isHotKeyAction","activeElement","document","blur","observerCard","setTimeout","slideSelected","querySelector","prevSlideSelected","swiperSelectObserver","unobserve","observe","windowOnresize","memberTab","window","removeEventListener","memberTabHeight","state","clientHeight","tabMenuHeight","setState","isNotSetState","Idmember","willUnmount","currentMemberId","getCardList","cardNo","pageSize","key","replace","length","Message","error","Loading","show","target","loadingBtn","ms","getCardInfoByCardNo","then","ret","data","cardList","selected","setCardInfo","memberCardList","resetSlideTop","hide","catch","message","err","includes","ModalWraper","warning","title","content","loadUserInfo","ID","getGetUmemberDTO","stores","selectMemberStore","setCurMemberInfo","memberChange","warn","cardInfo","handleSearchClick","searchValue","userSearch","handleSearchChange","val","keyboardOnOk","keyboardOnClose","searchRef","onKeyPressed","e","keyCode","enterKey","MemberMenuChange","dto","memberList","arr","map","item","push","member","onClear","input","focus","mode","searchStatus","listArr","tabIndex","defaultActiveKey","memberStore","addEventListener","$","on","off","isUserAndroidKey","android_setKeyBoard","initEmpty","isAllAuthority","status","showModal","titleModal","type","onCancel","authProcess","storeKey","showSearch","noList","showSelectBtn","voucherStateType","searchClassName","hotKey","hotKeyNotFilter","memberTabClassName","hotKeyBindClass","value","ref","focusInputName","inputTarget","Keyboard","open","getNewValue","v","close","list","display","Component","defaultProps","contextTypes","viewModel","PropTypes","object","columnInfo","array"],"mappings":"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","file":"ShopMemberStorage.js","sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Button } from 'antd';\nimport { ModalWraper, Input, Loading, Message, Ticon, Keyboard, Spin, hotKey } from 'tplus-components-touch';\nimport { stores } from 'mutants-microfx';\nimport { enumController, platform } from 'mutants-util';\nimport memberStore from './api';\nimport MemberTab from './memberTab/index.js';\nimport './ShopMember.less';\nimport { formatPrecision, userInfoFormat, errMessageTip } from '../utils';\nimport MemberMenuStorage from './memberMenuStorage/index.js'\nimport MemberCardList from './MemberCardList'\n\n// let swiperSelectObserver;\n\nexport default class ShopMemberStorage extends Component {\n static defaultProps = {\n onCancel: () => {}\n };\n\n static contextTypes = {\n viewModel: PropTypes.object,\n columnInfo: PropTypes.array,\n };\n constructor(props) {\n super(props);\n const { mode } = this.props;\n this.state = {\n searchValue: '',\n searchStatus: !!this.props.listArr ? true : false,\n tabIndex: this.props.defaultActiveKey,\n tabMenuHeight: mode !== 'practice' ? 64 : 0, // 64为table上部操作菜单高度\n cardList: [], // 储值卡列表\n cardInfo: {}, // 当前被选中的卡信息\n };\n this.ms = memberStore;\n }\n\n currentPage = 1;\n cacheUserRetail = {};\n\n componentDidMount() {\n window.addEventListener('resize', this.windowOnresize);\n $.on(this.hotKeyListener);\n this.ms.searchValue = '';//初始化完成筛选列表清空数据(会员新增成功——封涛)\n }\n\n componentDidUpdate() {\n const {memberTabHeight, tabMenuHeight} = this.state;\n const clientHeight = this.memberTab.clientHeight - tabMenuHeight;\n if (clientHeight !== memberTabHeight) {\n this.setState({memberTabHeight: clientHeight});\n }\n }\n\n componentWillUnmount() {\n this.willUnmount = true;\n window.removeEventListener('resize', this.windowOnresize);\n // swiperSelectObserver.disconnect();\n $.off(this.hotKeyListener);\n }\n\n hotKeyListener = (nodeName, index) => {\n if (nodeName && ~nodeName.className.indexOf('slide-selected')) {\n this.isHotKeyAction = true;\n const activeElement = document.activeElement;\n activeElement && activeElement.blur();\n }\n }\n\n observerCard = () => {\n setTimeout(() => {\n const slideSelected = document.querySelector('.slide-selected');\n this.prevSlideSelected && swiperSelectObserver.unobserve(this.prevSlideSelected);\n this.prevSlideSelected = slideSelected;\n slideSelected && swiperSelectObserver.observe(slideSelected);\n })\n }\n windowOnresize = () => {\n if (!this.memberTab) {\n return window.removeEventListener('resize', this.windowOnresize);\n };\n const {memberTabHeight} = this.state;\n const clientHeight = this.memberTab.clientHeight - this.state.tabMenuHeight;\n if (memberTabHeight !== clientHeight) {\n this.setState({memberTabHeight: clientHeight});\n }\n }\n\n isNotSetState = (Idmember) => {\n if (this.willUnmount || Idmember !== this.currentMemberId) return true;\n }\n\n // 获取储值卡信息\n getCardList = (cardNo, currentPage = 1, pageSize = 10, key = 0) => {\n cardNo = cardNo.replace(/\\s+/g,\"\")\n if (cardNo.length === 0) {\n Message.error('请输入卡号')\n return\n }\n Loading.show({ target: '.memberShopContainer' });\n this.setState({\n loadingBtn: true\n })\n this.ms.getCardInfoByCardNo(cardNo)\n .then(ret => {\n const {data = []} = ret || {}\n if (data.length) {\n this.setState({\n cardList: data,\n selected: 0,\n loadingBtn: false\n }, () => {\n this.setCardInfo(currentPage === 1 ? 0 : key, data[0])\n this.memberCardList.resetSlideTop();\n })\n } else {\n this.setCardInfo(key)\n }\n \n Loading.hide();\n })\n .catch(err => {\n const { message } = err\n if (message.includes('code 404')) {\n ModalWraper.warning({\n title: '提示',\n content: `请输入卡号!`\n })\n }\n this.setCardInfo(key)\n this.setState({\n loadingBtn: false\n })\n Loading.hide()\n });\n }\n\n loadUserInfo = (ID) => {\n // this.observerCard();\n\n this.ms.getGetUmemberDTO(ID)\n .then(ret => {\n stores.selectMemberStore.setCurMemberInfo(ret);\n const { memberChange } = this.props;\n memberChange && memberChange(ret);\n }).catch(err => {\n Message.warn('会员信息更新失败!')\n });\n }\n\n // 设置当前被选中的卡信息\n setCardInfo = (key, cardInfo = {}) => {\n this.setState({\n selected: key,\n cardInfo\n })\n }\n\n handleSearchClick = () => {\n const { searchValue, selected } = this.state;\n this.userSearch = true;\n this.currentPage = 1;\n // this.setState({ selected: undefined });\n this.getCardList(searchValue, this.currentPage, 10, selected)\n }\n\n handleSearchChange = (val) => {\n this.setState({searchValue: val});\n }\n\n keyboardOnOk = () => {\n this.handleSearchClick();\n }\n\n keyboardOnClose = () => {\n this.searchRef && this.searchRef.blur();\n }\n\n onKeyPressed = (e) => {\n const { keyCode } = e;\n const enterKey = 13;\n if (keyCode === enterKey) {\n this.handleSearchClick();\n this.keyboardOnClose();\n }\n }\n\n MemberMenuChange = (dto) => {\n const { memberList } = this.state;\n userInfoFormat(dto)\n let arr = [];\n memberList.map(item => {\n if (item.ID == dto.ID) {\n arr.push(dto)\n } else {\n arr.push(item)\n }\n })\n this.setState({ member: dto, memberList: arr })\n }\n\n onClear = (key, input) => {\n this.setState({[key]: ''});\n input.focus();\n }\n\n render() {\n const isUserAndroidKey = !! window.android_setKeyBoard;\n const { searchValue, memberTabHeight = 0, initEmpty, loadingBtn, selected, isAllAuthority, cardList, cardInfo } = this.state;\n const { status, showModal, titleModal, type, defaultActiveKey, onCancel, authProcess, mode, title, storeKey } = this.props;\n const showSearch = ['会员查询'].includes(type);\n const noList = !cardList.length;\n const showSelectBtn = type === '会员查询' || !!status;\n //是否正常开单\n let voucherStateType = (mode !== 'practice');\n const searchClassName = hotKey.hotKeyNotFilter('search-input')\n const memberTabClassName = hotKey.hotKeyBindClass('10', 'member-shop-content')\n \n return (\n <div className='memberShopContainer'>\n {\n showSearch &&\n <div className='search-container'>\n <Input\n tplusInput\n placeholder='卡号/手机号'\n prefix='sousuo'\n className={`${searchClassName} android_focus_keyboard`}\n value={searchValue}\n type='native'\n onChange={\n ({ target: { value: searchValue } }) => this.setState({ searchValue })\n }\n inputRef={ref => this.searchRef = ref}\n onClear={() => this.onClear('searchValue', this.searchRef)}\n onFocus={({ target }) => {\n if(!isUserAndroidKey ){\n this.focusInputName = 'searchValue';\n this.inputTarget = target;\n Keyboard.open(v => {\n const key = this.focusInputName;\n const value = Keyboard.getNewValue(this.inputTarget, this.inputTarget.value, v);\n this.setState({ [key]: value });\n }, this.keyboardOnOk, this.keyboardOnClose)();\n }\n }}\n onBlur={Keyboard.close}\n onKeyDown={this.onKeyPressed}\n />\n <Button className='primary-btn' onClick={this.handleSearchClick}>搜索</Button>\n </div>\n }\n <div \n ref={ref => this.memberTab = ref} \n className={`${memberTabClassName}`}\n >\n {\n noList && <div className='empty-data-img storage-empty-data-img' />\n }\n <MemberCardList \n ref={list => this.memberCardList = list}\n title={title}\n storeKey={storeKey}\n selected={selected}\n cardList={cardList}\n setCardInfo={this.setCardInfo}\n />\n \n <div className='member-content-tab content' style={{ display: noList ? 'none' : 'flex' }}>\n {\n (voucherStateType && !isAllAuthority) &&\n <div>\n <div className='menu'>\n <MemberMenuStorage \n storeKey={storeKey}\n authProcess={authProcess}\n loadingBtn={loadingBtn} \n selected={selected} \n cardList={cardList}\n loadUserInfo={this.loadUserInfo}\n getCardList={this.getCardList}\n handleChange={this.MemberMenuChange} />\n </div>\n <div className='line'></div>\n </div>\n }\n <MemberTab\n defaultActiveKey={defaultActiveKey}\n showModal={showModal}\n title={title}\n titleModal={titleModal}\n storeKey={storeKey}\n selected={selected}\n memberTabHeight={memberTabHeight}\n initEmpty={initEmpty}\n cardList={cardList}\n />\n </div>\n </div>\n <div className='member-footer'>\n <Button onClick={onCancel}>取消</Button>\n </div>\n </div>\n )\n }\n}\n"]}
|
1
|
+
{"version":3,"sources":["tplus-member/member/ShopMemberStorage.js"],"names":["hasElectron","env","platform","constant","electron","ShopMemberStorage","props","currentPage","cacheUserRetail","handleReadICard","readRfCard","changeScanProduct","scanObj","startScan","onScanCzkResult","val","_this","setState","searchValue","setTimeout","getCardList","hotKeyListener","nodeName","index","className","indexOf","isHotKeyAction","activeElement","document","blur","observerCard","slideSelected","querySelector","prevSlideSelected","swiperSelectObserver","unobserve","observe","windowOnresize","memberTab","window","removeEventListener","memberTabHeight","state","clientHeight","tabMenuHeight","isNotSetState","Idmember","willUnmount","currentMemberId","cardNo","pageSize","key","replace","length","Message","error","Loading","show","target","loadingBtn","ms","getCardInfoByCardNo","then","ret","data","cardList","selected","setCardInfo","memberCardList","resetSlideTop","hide","catch","message","err","includes","ModalWraper","warning","title","content","loadUserInfo","ID","getGetUmemberDTO","stores","selectMemberStore","setCurMemberInfo","memberChange","warn","cardInfo","handleSearchClick","userSearch","handleSearchChange","keyboardOnOk","keyboardOnClose","searchRef","onKeyPressed","e","keyCode","enterKey","MemberMenuChange","dto","memberList","arr","map","item","push","member","onClear","input","focus","mode","user","options","get","ICCardServer","ICCardPassword","iCCardServer","parseInt","iCCardPassword","searchStatus","listArr","tabIndex","defaultActiveKey","connectCardStatus","connectCardError","memberStore","isHorizontalPad","connectRfCard","addEventListener","$","on","off","params","cardPsw","cardSec","cardKm","nativeMs","setIpcRendererMethod","status","value","result","isUserAndroidKey","android_setKeyBoard","initEmpty","isAllAuthority","showModal","titleModal","type","onCancel","authProcess","storeKey","showSearch","noList","showSelectBtn","voucherStateType","searchClassName","hotKey","hotKeyNotFilter","memberTabClassName","hotKeyBindClass","ref","focusInputName","inputTarget","Keyboard","open","getNewValue","v","close","scan","list","display","Component","defaultProps","contextTypes","viewModel","PropTypes","object","columnInfo","array"],"mappings":"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","file":"ShopMemberStorage.js","sourcesContent":["import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { Button } from 'antd';\nimport { ModalWraper, Input, Loading, Message, Ticon, Keyboard, Spin, hotKey } from 'tplus-components-touch';\nimport { stores, env, nativeMs } from 'mutants-microfx';\nimport { enumController, platform } from 'mutants-util';\nimport memberStore from './api';\nimport MemberTab from './memberTab/index.js';\nimport './ShopMember.less';\nimport { formatPrecision, userInfoFormat, errMessageTip } from '../utils';\nimport MemberMenuStorage from './memberMenuStorage/index.js'\nimport MemberCardList from './MemberCardList'\nconst hasElectron = (env.platform === env.constant.platform.electron);\n\n// let swiperSelectObserver;\n\nexport default class ShopMemberStorage extends Component {\n static defaultProps = {\n onCancel: () => {}\n };\n\n static contextTypes = {\n viewModel: PropTypes.object,\n columnInfo: PropTypes.array,\n };\n constructor(props) {\n super(props);\n const { mode } = this.props;\n this.hasElectron = hasElectron;\n const { ICCardServer, ICCardPassword } = stores.user.options.get('loginInfo') || {};\n this.iCCardServer = parseInt(ICCardServer); // 启用IC卡:0为禁用 1为启用\n this.iCCardPassword = ICCardPassword; //IC卡密码\n this.state = {\n searchValue: '',\n searchStatus: !!this.props.listArr ? true : false,\n tabIndex: this.props.defaultActiveKey,\n tabMenuHeight: mode !== 'practice' ? 64 : 0, // 64为table上部操作菜单高度\n cardList: [], // 储值卡列表\n cardInfo: {}, // 当前被选中的卡信息\n connectCardStatus: false, //连接IC卡状态\n connectCardError: '', //连接IC卡错误后记录错误信息\n };\n this.ms = memberStore;\n //移动端环境下,没有读取IC卡的方式。\n const { isHorizontalPad } = platform || {};\n this.isHorizontalPad = !!isHorizontalPad;\n }\n\n currentPage = 1;\n cacheUserRetail = {};\n\n componentDidMount() {\n this.connectRfCard();\n window.addEventListener('resize', this.windowOnresize);\n $.on(this.hotKeyListener);\n this.ms.searchValue = '';//初始化完成筛选列表清空数据(会员新增成功——封涛)\n }\n\n componentDidUpdate() {\n const {memberTabHeight, tabMenuHeight} = this.state;\n const clientHeight = this.memberTab.clientHeight - tabMenuHeight;\n if (clientHeight !== memberTabHeight) {\n this.setState({memberTabHeight: clientHeight});\n }\n }\n\n componentWillUnmount() {\n this.willUnmount = true;\n window.removeEventListener('resize', this.windowOnresize);\n // swiperSelectObserver.disconnect();\n $.off(this.hotKeyListener);\n }\n\n handleReadICard = () => {\n this.readRfCard();\n }\n //IC卡读取\n readRfCard() {\n //客户端环境下,并开启了启用IC卡。\n if (this.hasElectron === true && this.iCCardServer === 1) {\n const { connectCardStatus, connectCardError } = this.state;\n if (connectCardStatus === false) {\n Message.error(connectCardError ? connectCardError : '读取IC卡失败');\n this.connectRfCard(); //读取失败后,重新连接一下。\n return;\n }\n let params = { cardPsw: this.iCCardPassword, cardSec: 13, cardKm: 0 }\n nativeMs.setIpcRendererMethod('ReadRfCard', { ...params }, ret => {\n if (ret.status === 0) {\n Message.error(ret.value);\n this.connectRfCard(); //读取失败后,重新连接一下。\n return;\n } else if (ret.status === 1) {\n this.setState({\n searchValue: ret.value\n })\n this.getCardList(ret.value);\n }\n })\n }\n }\n\n //IC卡连接\n connectRfCard() {\n //客户端环境下,并开启了启用IC卡。\n if (this.hasElectron === true && this.iCCardServer === 1) {\n nativeMs.setIpcRendererMethod('ConnectRfCard', null, ret => {\n let result = {}\n if (ret.status === 0) {\n result = { connectCardStatus: false, connectCardError: ret.value }\n } else {\n result = { connectCardStatus: true, connectCardError: '' };\n }\n this.setState(result)\n })\n }\n }\n\n //移动端:扫描商品\n changeScanProduct = () => {\n if (this.scanObj) this.scanObj.startScan()\n }\n\n onScanCzkResult = (val) => {\n let _this = this;\n this.setState({\n searchValue: val\n })\n setTimeout(() => { _this.getCardList(val) }, 0)\n }\n\n hotKeyListener = (nodeName, index) => {\n if (nodeName && ~nodeName.className.indexOf('slide-selected')) {\n this.isHotKeyAction = true;\n const activeElement = document.activeElement;\n activeElement && activeElement.blur();\n }\n }\n\n observerCard = () => {\n setTimeout(() => {\n const slideSelected = document.querySelector('.slide-selected');\n this.prevSlideSelected && swiperSelectObserver.unobserve(this.prevSlideSelected);\n this.prevSlideSelected = slideSelected;\n slideSelected && swiperSelectObserver.observe(slideSelected);\n })\n }\n windowOnresize = () => {\n if (!this.memberTab) {\n return window.removeEventListener('resize', this.windowOnresize);\n };\n const {memberTabHeight} = this.state;\n const clientHeight = this.memberTab.clientHeight - this.state.tabMenuHeight;\n if (memberTabHeight !== clientHeight) {\n this.setState({memberTabHeight: clientHeight});\n }\n }\n\n isNotSetState = (Idmember) => {\n if (this.willUnmount || Idmember !== this.currentMemberId) return true;\n }\n\n // 获取储值卡信息\n getCardList = (cardNo, currentPage = 1, pageSize = 10, key = 0) => {\n cardNo = cardNo.replace(/\\s+/g,\"\")\n if (cardNo.length === 0) {\n Message.error('请输入卡号')\n return\n }\n Loading.show({ target: '.memberShopContainer' });\n this.setState({\n loadingBtn: true\n })\n this.ms.getCardInfoByCardNo(cardNo)\n .then(ret => {\n const {data = []} = ret || {}\n if (data.length) {\n this.setState({\n cardList: data,\n selected: 0,\n loadingBtn: false\n }, () => {\n this.setCardInfo(currentPage === 1 ? 0 : key, data[0])\n this.memberCardList.resetSlideTop();\n })\n } else {\n this.setCardInfo(key)\n }\n \n Loading.hide();\n })\n .catch(err => {\n const { message } = err\n if (message.includes('code 404')) {\n ModalWraper.warning({\n title: '提示',\n content: `请输入卡号!`\n })\n }\n this.setCardInfo(key)\n this.setState({\n loadingBtn: false\n })\n Loading.hide()\n });\n }\n\n loadUserInfo = (ID) => {\n // this.observerCard();\n\n this.ms.getGetUmemberDTO(ID)\n .then(ret => {\n stores.selectMemberStore.setCurMemberInfo(ret);\n const { memberChange } = this.props;\n memberChange && memberChange(ret);\n }).catch(err => {\n Message.warn('会员信息更新失败!')\n });\n }\n\n // 设置当前被选中的卡信息\n setCardInfo = (key, cardInfo = {}) => {\n this.setState({\n selected: key,\n cardInfo\n })\n }\n\n handleSearchClick = () => {\n const { searchValue, selected } = this.state;\n this.userSearch = true;\n this.currentPage = 1;\n // this.setState({ selected: undefined });\n this.getCardList(searchValue, this.currentPage, 10, selected)\n }\n\n handleSearchChange = (val) => {\n this.setState({searchValue: val});\n }\n\n keyboardOnOk = () => {\n this.handleSearchClick();\n }\n\n keyboardOnClose = () => {\n this.searchRef && this.searchRef.blur();\n }\n\n onKeyPressed = (e) => {\n const { keyCode } = e;\n const enterKey = 13;\n if (keyCode === enterKey) {\n this.handleSearchClick();\n this.keyboardOnClose();\n }\n }\n\n MemberMenuChange = (dto) => {\n const { memberList } = this.state;\n userInfoFormat(dto)\n let arr = [];\n memberList.map(item => {\n if (item.ID == dto.ID) {\n arr.push(dto)\n } else {\n arr.push(item)\n }\n })\n this.setState({ member: dto, memberList: arr })\n }\n\n onClear = (key, input) => {\n this.setState({[key]: ''});\n input.focus();\n }\n\n render() {\n const isUserAndroidKey = !! window.android_setKeyBoard;\n const { searchValue, memberTabHeight = 0, initEmpty, loadingBtn, selected, isAllAuthority, cardList, cardInfo } = this.state;\n const { status, showModal, titleModal, type, defaultActiveKey, onCancel, authProcess, mode, title, storeKey } = this.props;\n const showSearch = ['会员查询'].includes(type);\n const noList = !cardList.length;\n const showSelectBtn = type === '会员查询' || !!status;\n //是否正常开单\n let voucherStateType = (mode !== 'practice');\n const searchClassName = hotKey.hotKeyNotFilter('search-input')\n const memberTabClassName = hotKey.hotKeyBindClass('10', 'member-shop-content')\n \n return (\n <div className='memberShopContainer'>\n {\n showSearch &&\n <div className='search-container'>\n <Input\n tplusInput\n placeholder='卡号/手机号'\n prefix='sousuo'\n className={`${searchClassName} android_focus_keyboard ${(this.hasElectron === true && this.iCCardServer === 1 || this.isHorizontalPad === true) ? 'temp' : ''}`}\n value={searchValue}\n type='native'\n onChange={\n ({ target: { value: searchValue } }) => this.setState({ searchValue })\n }\n inputRef={ref => this.searchRef = ref}\n onClear={() => this.onClear('searchValue', this.searchRef)}\n onFocus={({ target }) => {\n if(!isUserAndroidKey ){\n this.focusInputName = 'searchValue';\n this.inputTarget = target;\n Keyboard.open(v => {\n const key = this.focusInputName;\n const value = Keyboard.getNewValue(this.inputTarget, this.inputTarget.value, v);\n this.setState({ [key]: value });\n }, this.keyboardOnOk, this.keyboardOnClose)();\n }\n }}\n onBlur={Keyboard.close}\n onKeyDown={this.onKeyPressed}\n />\n {\n this.hasElectron === true && this.iCCardServer === 1 &&\n <Ticon className='icon' onClick={this.handleReadICard} type=\"ICka\" />\n }\n {\n this.isHorizontalPad &&\n <Ticon type='saomiao1' className='icon' onClick={this.changeScanProduct} />\n }\n {\n /* 扫描组件 */\n this.isHorizontalPad &&\n <Scan ref={scan => this.scanObj = scan} onChange={this.onScanCzkResult} />\n }\n <Button className='primary-btn' onClick={this.handleSearchClick}>搜索</Button>\n </div>\n }\n <div \n ref={ref => this.memberTab = ref} \n className={`${memberTabClassName}`}\n >\n {\n noList && <div className='empty-data-img storage-empty-data-img' />\n }\n <MemberCardList \n ref={list => this.memberCardList = list}\n title={title}\n storeKey={storeKey}\n selected={selected}\n cardList={cardList}\n setCardInfo={this.setCardInfo}\n />\n \n <div className='member-content-tab content' style={{ display: noList ? 'none' : 'flex' }}>\n {\n (voucherStateType && !isAllAuthority) &&\n <div>\n <div className='menu'>\n <MemberMenuStorage \n storeKey={storeKey}\n authProcess={authProcess}\n loadingBtn={loadingBtn} \n selected={selected} \n cardList={cardList}\n loadUserInfo={this.loadUserInfo}\n getCardList={this.getCardList}\n handleChange={this.MemberMenuChange} />\n </div>\n <div className='line'></div>\n </div>\n }\n <MemberTab\n defaultActiveKey={defaultActiveKey}\n showModal={showModal}\n title={title}\n titleModal={titleModal}\n storeKey={storeKey}\n selected={selected}\n memberTabHeight={memberTabHeight}\n initEmpty={initEmpty}\n cardList={cardList}\n />\n </div>\n </div>\n <div className='member-footer'>\n <Button onClick={onCancel}>取消</Button>\n </div>\n </div>\n )\n }\n}\n"]}
|
package/dist/member/index.js
CHANGED
@@ -692,7 +692,7 @@ var MemberTag = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_
|
|
692
692
|
_this5.connectRfCard(); //读取失败后,重新连接一下。
|
693
693
|
return;
|
694
694
|
} else if (ret.status === 1) {
|
695
|
-
_this5.searchMember(ret.value);
|
695
|
+
_this5.searchMember(ret.value, 'ok');
|
696
696
|
}
|
697
697
|
});
|
698
698
|
}
|
@@ -871,7 +871,7 @@ var MemberTag = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_
|
|
871
871
|
} },
|
872
872
|
_react2.default.createElement(
|
873
873
|
'div',
|
874
|
-
{ className: 'one' },
|
874
|
+
{ className: 'one oneDtMember' },
|
875
875
|
dtMember.Name && _react2.default.createElement(
|
876
876
|
'div',
|
877
877
|
{ className: 'a' },
|