tplus-member 3.36.1 → 3.36.2
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/dist/member/MemberCardList.js +393 -0
- package/dist/member/MemberCardList.js.map +1 -0
- package/dist/member/MemberShow.js +3 -1
- package/dist/member/MemberShow.js.map +1 -1
- package/dist/member/ShopMember.js +274 -268
- package/dist/member/ShopMember.js.map +1 -1
- package/dist/member/ShopMember.less +115 -10
- package/dist/member/ShopMemberStorage.js +451 -0
- package/dist/member/ShopMemberStorage.js.map +1 -0
- package/dist/member/api.js +277 -42
- package/dist/member/api.js.map +1 -1
- package/dist/member/index.js +137 -116
- package/dist/member/index.js.map +1 -1
- package/dist/member/memberMenu/bindCard/index.js +295 -0
- package/dist/member/memberMenu/bindCard/index.js.map +1 -0
- package/dist/member/memberMenu/bindCard/style.less +8 -0
- package/dist/member/memberMenu/index.js +503 -352
- package/dist/member/memberMenu/index.js.map +1 -1
- package/dist/member/memberMenu/modifyPass/index.js +0 -2
- package/dist/member/memberMenu/modifyPass/index.js.map +1 -1
- package/dist/member/memberMenu/style.less +44 -1
- package/dist/member/memberMenuStorage/bindCard/index.js +172 -0
- package/dist/member/memberMenuStorage/bindCard/index.js.map +1 -0
- package/dist/member/memberMenuStorage/bindCard/style.less +8 -0
- package/dist/member/memberMenuStorage/changeMemberCard/index.js +260 -0
- package/dist/member/memberMenuStorage/changeMemberCard/index.js.map +1 -0
- package/dist/member/memberMenuStorage/changeMemberCard/style.less +43 -0
- package/dist/member/memberMenuStorage/index.js +1807 -0
- package/dist/member/memberMenuStorage/index.js.map +1 -0
- package/dist/member/memberMenuStorage/modifyPass/index.js +420 -0
- package/dist/member/memberMenuStorage/modifyPass/index.js.map +1 -0
- package/dist/member/memberMenuStorage/modifyPass/store.js +426 -0
- package/dist/member/memberMenuStorage/modifyPass/store.js.map +1 -0
- package/dist/member/memberMenuStorage/modifyPass/style.less +96 -0
- package/dist/member/memberMenuStorage/style.less +130 -0
- package/dist/member/memberTab/MemberCardInfo.js +89 -0
- package/dist/member/memberTab/MemberCardInfo.js.map +1 -0
- package/dist/member/memberTab/MemberManager.js +640 -0
- package/dist/member/memberTab/MemberManager.js.map +1 -0
- package/dist/member/memberTab/MemberStorage.js +176 -0
- package/dist/member/memberTab/MemberStorage.js.map +1 -0
- package/dist/member/memberTab/index.js +133 -0
- package/dist/member/memberTab/index.js.map +1 -0
- package/dist/member/memberTab.js +58 -11
- package/dist/member/memberTab.js.map +1 -1
- package/dist/stores/MemberStore.js +26 -21
- package/dist/stores/MemberStore.js.map +1 -1
- package/dist/utils.js +15 -1
- package/dist/utils.js.map +1 -1
- package/dist/viewDoMain/StorageAmountChangedProcessorBlock.js +1 -0
- package/dist/viewDoMain/StorageAmountChangedProcessorBlock.js.map +1 -1
- package/dist/views/MemberOrderView.js +1 -1
- package/dist/views/MemberOrderView.js.map +1 -1
- package/dist/views/MemberStoreNew.less +1 -3
- package/dist/views/MemberStoreNewView.js +14 -26
- package/dist/views/MemberStoreNewView.js.map +1 -1
- package/package.json +29 -29
@@ -0,0 +1,451 @@
|
|
1
|
+
'use strict';
|
2
|
+
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
4
|
+
value: true
|
5
|
+
});
|
6
|
+
exports.default = undefined;
|
7
|
+
|
8
|
+
var _button = require('antd/es/button');
|
9
|
+
|
10
|
+
var _button2 = _interopRequireDefault(_button);
|
11
|
+
|
12
|
+
var _defineProperty2 = require('babel-runtime/helpers/defineProperty');
|
13
|
+
|
14
|
+
var _defineProperty3 = _interopRequireDefault(_defineProperty2);
|
15
|
+
|
16
|
+
var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of');
|
17
|
+
|
18
|
+
var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
|
19
|
+
|
20
|
+
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
|
21
|
+
|
22
|
+
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
|
23
|
+
|
24
|
+
var _createClass2 = require('babel-runtime/helpers/createClass');
|
25
|
+
|
26
|
+
var _createClass3 = _interopRequireDefault(_createClass2);
|
27
|
+
|
28
|
+
var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn');
|
29
|
+
|
30
|
+
var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
|
31
|
+
|
32
|
+
var _inherits2 = require('babel-runtime/helpers/inherits');
|
33
|
+
|
34
|
+
var _inherits3 = _interopRequireDefault(_inherits2);
|
35
|
+
|
36
|
+
var _class, _temp;
|
37
|
+
|
38
|
+
require('antd/es/button/style');
|
39
|
+
|
40
|
+
var _react = require('react');
|
41
|
+
|
42
|
+
var _react2 = _interopRequireDefault(_react);
|
43
|
+
|
44
|
+
var _propTypes = require('prop-types');
|
45
|
+
|
46
|
+
var _propTypes2 = _interopRequireDefault(_propTypes);
|
47
|
+
|
48
|
+
var _tplusComponentsTouch = require('tplus-components-touch');
|
49
|
+
|
50
|
+
var _mutantsMicrofx = require('mutants-microfx');
|
51
|
+
|
52
|
+
var _mutantsUtil = require('mutants-util');
|
53
|
+
|
54
|
+
var _api = require('./api');
|
55
|
+
|
56
|
+
var _api2 = _interopRequireDefault(_api);
|
57
|
+
|
58
|
+
var _index = require('./memberTab/index.js');
|
59
|
+
|
60
|
+
var _index2 = _interopRequireDefault(_index);
|
61
|
+
|
62
|
+
require('./ShopMember.less');
|
63
|
+
|
64
|
+
var _utils = require('../utils');
|
65
|
+
|
66
|
+
var _index3 = require('./memberMenuStorage/index.js');
|
67
|
+
|
68
|
+
var _index4 = _interopRequireDefault(_index3);
|
69
|
+
|
70
|
+
var _MemberCardList = require('./MemberCardList');
|
71
|
+
|
72
|
+
var _MemberCardList2 = _interopRequireDefault(_MemberCardList);
|
73
|
+
|
74
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
75
|
+
|
76
|
+
// let swiperSelectObserver;
|
77
|
+
|
78
|
+
var ShopMemberStorage = (_temp = _class = function (_Component) {
|
79
|
+
(0, _inherits3.default)(ShopMemberStorage, _Component);
|
80
|
+
|
81
|
+
function ShopMemberStorage(props) {
|
82
|
+
(0, _classCallCheck3.default)(this, ShopMemberStorage);
|
83
|
+
|
84
|
+
var _this = (0, _possibleConstructorReturn3.default)(this, (ShopMemberStorage.__proto__ || (0, _getPrototypeOf2.default)(ShopMemberStorage)).call(this, props));
|
85
|
+
|
86
|
+
_this.currentPage = 1;
|
87
|
+
_this.cacheUserRetail = {};
|
88
|
+
|
89
|
+
_this.hotKeyListener = function (nodeName, index) {
|
90
|
+
if (nodeName && ~nodeName.className.indexOf('slide-selected')) {
|
91
|
+
_this.isHotKeyAction = true;
|
92
|
+
var activeElement = document.activeElement;
|
93
|
+
activeElement && activeElement.blur();
|
94
|
+
}
|
95
|
+
};
|
96
|
+
|
97
|
+
_this.observerCard = function () {
|
98
|
+
setTimeout(function () {
|
99
|
+
var slideSelected = document.querySelector('.slide-selected');
|
100
|
+
_this.prevSlideSelected && swiperSelectObserver.unobserve(_this.prevSlideSelected);
|
101
|
+
_this.prevSlideSelected = slideSelected;
|
102
|
+
slideSelected && swiperSelectObserver.observe(slideSelected);
|
103
|
+
});
|
104
|
+
};
|
105
|
+
|
106
|
+
_this.windowOnresize = function () {
|
107
|
+
if (!_this.memberTab) {
|
108
|
+
return window.removeEventListener('resize', _this.windowOnresize);
|
109
|
+
};
|
110
|
+
var memberTabHeight = _this.state.memberTabHeight;
|
111
|
+
|
112
|
+
var clientHeight = _this.memberTab.clientHeight - _this.state.tabMenuHeight;
|
113
|
+
if (memberTabHeight !== clientHeight) {
|
114
|
+
_this.setState({ memberTabHeight: clientHeight });
|
115
|
+
}
|
116
|
+
};
|
117
|
+
|
118
|
+
_this.isNotSetState = function (Idmember) {
|
119
|
+
if (_this.willUnmount || Idmember !== _this.currentMemberId) return true;
|
120
|
+
};
|
121
|
+
|
122
|
+
_this.getCardList = function (cardNo) {
|
123
|
+
var currentPage = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 1;
|
124
|
+
var pageSize = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 10;
|
125
|
+
var key = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 0;
|
126
|
+
|
127
|
+
cardNo = cardNo.replace(/\s+/g, "");
|
128
|
+
if (cardNo.length === 0) {
|
129
|
+
_tplusComponentsTouch.Message.error('请输入卡号');
|
130
|
+
return;
|
131
|
+
}
|
132
|
+
_tplusComponentsTouch.Loading.show({ target: '.memberShopContainer' });
|
133
|
+
_this.setState({
|
134
|
+
loadingBtn: true
|
135
|
+
});
|
136
|
+
_this.ms.getCardInfoByCardNo(cardNo).then(function (ret) {
|
137
|
+
var _ref = ret || {},
|
138
|
+
_ref$data = _ref.data,
|
139
|
+
data = _ref$data === undefined ? [] : _ref$data;
|
140
|
+
|
141
|
+
if (data.length) {
|
142
|
+
_this.setState({
|
143
|
+
cardList: data,
|
144
|
+
selected: 0,
|
145
|
+
loadingBtn: false
|
146
|
+
}, function () {
|
147
|
+
_this.setCardInfo(currentPage === 1 ? 0 : key, data[0]);
|
148
|
+
_this.memberCardList.resetSlideTop();
|
149
|
+
});
|
150
|
+
} else {
|
151
|
+
_this.setCardInfo(key);
|
152
|
+
}
|
153
|
+
|
154
|
+
_tplusComponentsTouch.Loading.hide();
|
155
|
+
}).catch(function (err) {
|
156
|
+
var message = err.message;
|
157
|
+
|
158
|
+
if (message.includes('code 404')) {
|
159
|
+
_tplusComponentsTouch.ModalWraper.warning({
|
160
|
+
title: '提示',
|
161
|
+
content: '\u8BF7\u8F93\u5165\u5361\u53F7\uFF01'
|
162
|
+
});
|
163
|
+
}
|
164
|
+
_this.setCardInfo(key);
|
165
|
+
_this.setState({
|
166
|
+
loadingBtn: false
|
167
|
+
});
|
168
|
+
_tplusComponentsTouch.Loading.hide();
|
169
|
+
});
|
170
|
+
};
|
171
|
+
|
172
|
+
_this.loadUserInfo = function (ID) {
|
173
|
+
// this.observerCard();
|
174
|
+
|
175
|
+
_this.ms.getGetUmemberDTO(ID).then(function (ret) {
|
176
|
+
_mutantsMicrofx.stores.selectMemberStore.setCurMemberInfo(ret);
|
177
|
+
var memberChange = _this.props.memberChange;
|
178
|
+
|
179
|
+
memberChange && memberChange(ret);
|
180
|
+
}).catch(function (err) {
|
181
|
+
_tplusComponentsTouch.Message.warn('会员信息更新失败!');
|
182
|
+
});
|
183
|
+
};
|
184
|
+
|
185
|
+
_this.setCardInfo = function (key) {
|
186
|
+
var cardInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
187
|
+
|
188
|
+
_this.setState({
|
189
|
+
selected: key,
|
190
|
+
cardInfo: cardInfo
|
191
|
+
});
|
192
|
+
};
|
193
|
+
|
194
|
+
_this.handleSearchClick = function () {
|
195
|
+
var _this$state = _this.state,
|
196
|
+
searchValue = _this$state.searchValue,
|
197
|
+
selected = _this$state.selected;
|
198
|
+
|
199
|
+
_this.userSearch = true;
|
200
|
+
_this.currentPage = 1;
|
201
|
+
// this.setState({ selected: undefined });
|
202
|
+
_this.getCardList(searchValue, _this.currentPage, 10, selected);
|
203
|
+
};
|
204
|
+
|
205
|
+
_this.handleSearchChange = function (val) {
|
206
|
+
_this.setState({ searchValue: val });
|
207
|
+
};
|
208
|
+
|
209
|
+
_this.keyboardOnOk = function () {
|
210
|
+
_this.handleSearchClick();
|
211
|
+
};
|
212
|
+
|
213
|
+
_this.keyboardOnClose = function () {
|
214
|
+
_this.searchRef && _this.searchRef.blur();
|
215
|
+
};
|
216
|
+
|
217
|
+
_this.onKeyPressed = function (e) {
|
218
|
+
var keyCode = e.keyCode;
|
219
|
+
|
220
|
+
var enterKey = 13;
|
221
|
+
if (keyCode === enterKey) {
|
222
|
+
_this.handleSearchClick();
|
223
|
+
_this.keyboardOnClose();
|
224
|
+
}
|
225
|
+
};
|
226
|
+
|
227
|
+
_this.MemberMenuChange = function (dto) {
|
228
|
+
var memberList = _this.state.memberList;
|
229
|
+
|
230
|
+
(0, _utils.userInfoFormat)(dto);
|
231
|
+
var arr = [];
|
232
|
+
memberList.map(function (item) {
|
233
|
+
if (item.ID == dto.ID) {
|
234
|
+
arr.push(dto);
|
235
|
+
} else {
|
236
|
+
arr.push(item);
|
237
|
+
}
|
238
|
+
});
|
239
|
+
_this.setState({ member: dto, memberList: arr });
|
240
|
+
};
|
241
|
+
|
242
|
+
_this.onClear = function (key, input) {
|
243
|
+
_this.setState((0, _defineProperty3.default)({}, key, ''));
|
244
|
+
input.focus();
|
245
|
+
};
|
246
|
+
|
247
|
+
var mode = _this.props.mode;
|
248
|
+
|
249
|
+
var _ref2 = _mutantsUtil.platform || {},
|
250
|
+
isNewRetailBCPos = _ref2.isNewRetailBCPos;
|
251
|
+
|
252
|
+
_this.state = {
|
253
|
+
searchValue: '',
|
254
|
+
searchStatus: !!_this.props.listArr ? true : false,
|
255
|
+
tabIndex: _this.props.defaultActiveKey,
|
256
|
+
tabMenuHeight: mode !== 'practice' ? 64 : 0, // 64为table上部操作菜单高度
|
257
|
+
cardList: [], // 储值卡列表
|
258
|
+
cardInfo: {} // 当前被选中的卡信息
|
259
|
+
};
|
260
|
+
_this.ms = _api2.default;
|
261
|
+
return _this;
|
262
|
+
}
|
263
|
+
|
264
|
+
(0, _createClass3.default)(ShopMemberStorage, [{
|
265
|
+
key: 'componentDidMount',
|
266
|
+
value: function componentDidMount() {
|
267
|
+
window.addEventListener('resize', this.windowOnresize);
|
268
|
+
$.on(this.hotKeyListener);
|
269
|
+
this.ms.searchValue = ''; //初始化完成筛选列表清空数据(会员新增成功——封涛)
|
270
|
+
}
|
271
|
+
}, {
|
272
|
+
key: 'componentDidUpdate',
|
273
|
+
value: function componentDidUpdate() {
|
274
|
+
var _state = this.state,
|
275
|
+
memberTabHeight = _state.memberTabHeight,
|
276
|
+
tabMenuHeight = _state.tabMenuHeight;
|
277
|
+
|
278
|
+
var clientHeight = this.memberTab.clientHeight - tabMenuHeight;
|
279
|
+
if (clientHeight !== memberTabHeight) {
|
280
|
+
this.setState({ memberTabHeight: clientHeight });
|
281
|
+
}
|
282
|
+
}
|
283
|
+
}, {
|
284
|
+
key: 'componentWillUnmount',
|
285
|
+
value: function componentWillUnmount() {
|
286
|
+
this.willUnmount = true;
|
287
|
+
window.removeEventListener('resize', this.windowOnresize);
|
288
|
+
// swiperSelectObserver.disconnect();
|
289
|
+
$.off(this.hotKeyListener);
|
290
|
+
}
|
291
|
+
|
292
|
+
// 获取储值卡信息
|
293
|
+
|
294
|
+
|
295
|
+
// 设置当前被选中的卡信息
|
296
|
+
|
297
|
+
}, {
|
298
|
+
key: 'render',
|
299
|
+
value: function render() {
|
300
|
+
var _this2 = this;
|
301
|
+
|
302
|
+
var isUserAndroidKey = !!window.android_setKeyBoard;
|
303
|
+
var _state2 = this.state,
|
304
|
+
searchValue = _state2.searchValue,
|
305
|
+
_state2$memberTabHeig = _state2.memberTabHeight,
|
306
|
+
memberTabHeight = _state2$memberTabHeig === undefined ? 0 : _state2$memberTabHeig,
|
307
|
+
initEmpty = _state2.initEmpty,
|
308
|
+
loadingBtn = _state2.loadingBtn,
|
309
|
+
selected = _state2.selected,
|
310
|
+
isAllAuthority = _state2.isAllAuthority,
|
311
|
+
cardList = _state2.cardList,
|
312
|
+
cardInfo = _state2.cardInfo;
|
313
|
+
var _props = this.props,
|
314
|
+
status = _props.status,
|
315
|
+
showModal = _props.showModal,
|
316
|
+
titleModal = _props.titleModal,
|
317
|
+
type = _props.type,
|
318
|
+
defaultActiveKey = _props.defaultActiveKey,
|
319
|
+
onCancel = _props.onCancel,
|
320
|
+
authProcess = _props.authProcess,
|
321
|
+
mode = _props.mode,
|
322
|
+
title = _props.title,
|
323
|
+
storeKey = _props.storeKey;
|
324
|
+
|
325
|
+
var showSearch = ['会员查询'].includes(type);
|
326
|
+
var noList = !cardList.length;
|
327
|
+
var showSelectBtn = type === '会员查询' || !!status;
|
328
|
+
//是否正常开单
|
329
|
+
var voucherStateType = mode !== 'practice';
|
330
|
+
var searchClassName = _tplusComponentsTouch.hotKey.hotKeyNotFilter('search-input');
|
331
|
+
var memberTabClassName = _tplusComponentsTouch.hotKey.hotKeyBindClass('10', 'member-shop-content');
|
332
|
+
|
333
|
+
return _react2.default.createElement(
|
334
|
+
'div',
|
335
|
+
{ className: 'memberShopContainer' },
|
336
|
+
showSearch && _react2.default.createElement(
|
337
|
+
'div',
|
338
|
+
{ className: 'search-container' },
|
339
|
+
_react2.default.createElement(_tplusComponentsTouch.Input, {
|
340
|
+
tplusInput: true,
|
341
|
+
placeholder: '\u5361\u53F7/\u624B\u673A\u53F7',
|
342
|
+
prefix: 'sousuo',
|
343
|
+
className: searchClassName + ' android_focus_keyboard',
|
344
|
+
value: searchValue,
|
345
|
+
type: 'native',
|
346
|
+
onChange: function onChange(_ref3) {
|
347
|
+
var searchValue = _ref3.target.value;
|
348
|
+
return _this2.setState({ searchValue: searchValue });
|
349
|
+
},
|
350
|
+
inputRef: function inputRef(ref) {
|
351
|
+
return _this2.searchRef = ref;
|
352
|
+
},
|
353
|
+
onClear: function onClear() {
|
354
|
+
return _this2.onClear('searchValue', _this2.searchRef);
|
355
|
+
},
|
356
|
+
onFocus: function onFocus(_ref4) {
|
357
|
+
var target = _ref4.target;
|
358
|
+
|
359
|
+
if (!isUserAndroidKey) {
|
360
|
+
_this2.focusInputName = 'searchValue';
|
361
|
+
_this2.inputTarget = target;
|
362
|
+
_tplusComponentsTouch.Keyboard.open(function (v) {
|
363
|
+
var key = _this2.focusInputName;
|
364
|
+
var value = _tplusComponentsTouch.Keyboard.getNewValue(_this2.inputTarget, _this2.inputTarget.value, v);
|
365
|
+
_this2.setState((0, _defineProperty3.default)({}, key, value));
|
366
|
+
}, _this2.keyboardOnOk, _this2.keyboardOnClose)();
|
367
|
+
}
|
368
|
+
},
|
369
|
+
onBlur: _tplusComponentsTouch.Keyboard.close,
|
370
|
+
onKeyDown: this.onKeyPressed
|
371
|
+
}),
|
372
|
+
_react2.default.createElement(
|
373
|
+
_button2.default,
|
374
|
+
{ className: 'primary-btn', onClick: this.handleSearchClick },
|
375
|
+
'\u641C\u7D22'
|
376
|
+
)
|
377
|
+
),
|
378
|
+
_react2.default.createElement(
|
379
|
+
'div',
|
380
|
+
{
|
381
|
+
ref: function ref(_ref5) {
|
382
|
+
return _this2.memberTab = _ref5;
|
383
|
+
},
|
384
|
+
className: '' + memberTabClassName
|
385
|
+
},
|
386
|
+
noList && _react2.default.createElement('div', { className: 'empty-data-img storage-empty-data-img' }),
|
387
|
+
_react2.default.createElement(_MemberCardList2.default, {
|
388
|
+
ref: function ref(list) {
|
389
|
+
return _this2.memberCardList = list;
|
390
|
+
},
|
391
|
+
title: title,
|
392
|
+
storeKey: storeKey,
|
393
|
+
selected: selected,
|
394
|
+
cardList: cardList,
|
395
|
+
setCardInfo: this.setCardInfo
|
396
|
+
}),
|
397
|
+
_react2.default.createElement(
|
398
|
+
'div',
|
399
|
+
{ className: 'member-content-tab content', style: { display: noList ? 'none' : 'flex' } },
|
400
|
+
voucherStateType && !isAllAuthority && _react2.default.createElement(
|
401
|
+
'div',
|
402
|
+
null,
|
403
|
+
_react2.default.createElement(
|
404
|
+
'div',
|
405
|
+
{ className: 'menu' },
|
406
|
+
_react2.default.createElement(_index4.default, {
|
407
|
+
storeKey: storeKey,
|
408
|
+
authProcess: authProcess,
|
409
|
+
loadingBtn: loadingBtn,
|
410
|
+
selected: selected,
|
411
|
+
cardList: cardList,
|
412
|
+
loadUserInfo: this.loadUserInfo,
|
413
|
+
getCardList: this.getCardList,
|
414
|
+
handleChange: this.MemberMenuChange })
|
415
|
+
),
|
416
|
+
_react2.default.createElement('div', { className: 'line' })
|
417
|
+
),
|
418
|
+
_react2.default.createElement(_index2.default, {
|
419
|
+
defaultActiveKey: defaultActiveKey,
|
420
|
+
showModal: showModal,
|
421
|
+
title: title,
|
422
|
+
titleModal: titleModal,
|
423
|
+
storeKey: storeKey,
|
424
|
+
selected: selected,
|
425
|
+
memberTabHeight: memberTabHeight,
|
426
|
+
initEmpty: initEmpty,
|
427
|
+
cardList: cardList
|
428
|
+
})
|
429
|
+
)
|
430
|
+
),
|
431
|
+
_react2.default.createElement(
|
432
|
+
'div',
|
433
|
+
{ className: 'member-footer' },
|
434
|
+
_react2.default.createElement(
|
435
|
+
_button2.default,
|
436
|
+
{ onClick: onCancel },
|
437
|
+
'\u53D6\u6D88'
|
438
|
+
)
|
439
|
+
)
|
440
|
+
);
|
441
|
+
}
|
442
|
+
}]);
|
443
|
+
return ShopMemberStorage;
|
444
|
+
}(_react.Component), _class.defaultProps = {
|
445
|
+
onCancel: function onCancel() {}
|
446
|
+
}, _class.contextTypes = {
|
447
|
+
viewModel: _propTypes2.default.object,
|
448
|
+
columnInfo: _propTypes2.default.array
|
449
|
+
}, _temp);
|
450
|
+
exports.default = ShopMemberStorage;
|
451
|
+
//# sourceMappingURL=ShopMemberStorage.js.map
|
@@ -0,0 +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","platform","isNewRetailBCPos","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';\r\nimport PropTypes from 'prop-types';\r\nimport { Button } from 'antd';\r\nimport { ModalWraper, Input, Loading, Message, Ticon, Keyboard, Spin, hotKey } from 'tplus-components-touch';\r\nimport { stores } from 'mutants-microfx';\r\nimport { enumController, platform } from 'mutants-util';\r\nimport memberStore from './api';\r\nimport MemberTab from './memberTab/index.js';\r\nimport './ShopMember.less';\r\nimport { formatPrecision, userInfoFormat, errMessageTip } from '../utils';\r\nimport MemberMenuStorage from './memberMenuStorage/index.js'\r\nimport MemberCardList from './MemberCardList'\r\n\r\n// let swiperSelectObserver;\r\n\r\nexport default class ShopMemberStorage extends Component {\r\n static defaultProps = {\r\n onCancel: () => {}\r\n };\r\n\r\n static contextTypes = {\r\n viewModel: PropTypes.object,\r\n columnInfo: PropTypes.array,\r\n };\r\n constructor(props) {\r\n super(props);\r\n const { mode } = this.props;\r\n let { isNewRetailBCPos } = platform || {};\r\n this.state = {\r\n searchValue: '',\r\n searchStatus: !!this.props.listArr ? true : false,\r\n tabIndex: this.props.defaultActiveKey,\r\n tabMenuHeight: mode !== 'practice' ? 64 : 0, // 64为table上部操作菜单高度\r\n cardList: [], // 储值卡列表\r\n cardInfo: {}, // 当前被选中的卡信息\r\n };\r\n this.ms = memberStore;\r\n }\r\n\r\n currentPage = 1;\r\n cacheUserRetail = {};\r\n\r\n componentDidMount() {\r\n window.addEventListener('resize', this.windowOnresize);\r\n $.on(this.hotKeyListener);\r\n this.ms.searchValue = '';//初始化完成筛选列表清空数据(会员新增成功——封涛)\r\n }\r\n\r\n componentDidUpdate() {\r\n const {memberTabHeight, tabMenuHeight} = this.state;\r\n const clientHeight = this.memberTab.clientHeight - tabMenuHeight;\r\n if (clientHeight !== memberTabHeight) {\r\n this.setState({memberTabHeight: clientHeight});\r\n }\r\n }\r\n\r\n componentWillUnmount() {\r\n this.willUnmount = true;\r\n window.removeEventListener('resize', this.windowOnresize);\r\n // swiperSelectObserver.disconnect();\r\n $.off(this.hotKeyListener);\r\n }\r\n\r\n hotKeyListener = (nodeName, index) => {\r\n if (nodeName && ~nodeName.className.indexOf('slide-selected')) {\r\n this.isHotKeyAction = true;\r\n const activeElement = document.activeElement;\r\n activeElement && activeElement.blur();\r\n }\r\n }\r\n\r\n observerCard = () => {\r\n setTimeout(() => {\r\n const slideSelected = document.querySelector('.slide-selected');\r\n this.prevSlideSelected && swiperSelectObserver.unobserve(this.prevSlideSelected);\r\n this.prevSlideSelected = slideSelected;\r\n slideSelected && swiperSelectObserver.observe(slideSelected);\r\n })\r\n }\r\n windowOnresize = () => {\r\n if (!this.memberTab) {\r\n return window.removeEventListener('resize', this.windowOnresize);\r\n };\r\n const {memberTabHeight} = this.state;\r\n const clientHeight = this.memberTab.clientHeight - this.state.tabMenuHeight;\r\n if (memberTabHeight !== clientHeight) {\r\n this.setState({memberTabHeight: clientHeight});\r\n }\r\n }\r\n\r\n isNotSetState = (Idmember) => {\r\n if (this.willUnmount || Idmember !== this.currentMemberId) return true;\r\n }\r\n\r\n // 获取储值卡信息\r\n getCardList = (cardNo, currentPage = 1, pageSize = 10, key = 0) => {\r\n cardNo = cardNo.replace(/\\s+/g,\"\")\r\n if (cardNo.length === 0) {\r\n Message.error('请输入卡号')\r\n return\r\n }\r\n Loading.show({ target: '.memberShopContainer' });\r\n this.setState({\r\n loadingBtn: true\r\n })\r\n this.ms.getCardInfoByCardNo(cardNo)\r\n .then(ret => {\r\n const {data = []} = ret || {}\r\n if (data.length) {\r\n this.setState({\r\n cardList: data,\r\n selected: 0,\r\n loadingBtn: false\r\n }, () => {\r\n this.setCardInfo(currentPage === 1 ? 0 : key, data[0])\r\n this.memberCardList.resetSlideTop();\r\n })\r\n } else {\r\n this.setCardInfo(key)\r\n }\r\n \r\n Loading.hide();\r\n })\r\n .catch(err => {\r\n const { message } = err\r\n if (message.includes('code 404')) {\r\n ModalWraper.warning({\r\n title: '提示',\r\n content: `请输入卡号!`\r\n })\r\n }\r\n this.setCardInfo(key)\r\n this.setState({\r\n loadingBtn: false\r\n })\r\n Loading.hide()\r\n });\r\n }\r\n\r\n loadUserInfo = (ID) => {\r\n // this.observerCard();\r\n\r\n this.ms.getGetUmemberDTO(ID)\r\n .then(ret => {\r\n stores.selectMemberStore.setCurMemberInfo(ret);\r\n const { memberChange } = this.props;\r\n memberChange && memberChange(ret);\r\n }).catch(err => {\r\n Message.warn('会员信息更新失败!')\r\n });\r\n }\r\n\r\n // 设置当前被选中的卡信息\r\n setCardInfo = (key, cardInfo = {}) => {\r\n this.setState({\r\n selected: key,\r\n cardInfo\r\n })\r\n }\r\n\r\n handleSearchClick = () => {\r\n const { searchValue, selected } = this.state;\r\n this.userSearch = true;\r\n this.currentPage = 1;\r\n // this.setState({ selected: undefined });\r\n this.getCardList(searchValue, this.currentPage, 10, selected)\r\n }\r\n\r\n handleSearchChange = (val) => {\r\n this.setState({searchValue: val});\r\n }\r\n\r\n keyboardOnOk = () => {\r\n this.handleSearchClick();\r\n }\r\n\r\n keyboardOnClose = () => {\r\n this.searchRef && this.searchRef.blur();\r\n }\r\n\r\n onKeyPressed = (e) => {\r\n const { keyCode } = e;\r\n const enterKey = 13;\r\n if (keyCode === enterKey) {\r\n this.handleSearchClick();\r\n this.keyboardOnClose();\r\n }\r\n }\r\n\r\n MemberMenuChange = (dto) => {\r\n const { memberList } = this.state;\r\n userInfoFormat(dto)\r\n let arr = [];\r\n memberList.map(item => {\r\n if (item.ID == dto.ID) {\r\n arr.push(dto)\r\n } else {\r\n arr.push(item)\r\n }\r\n })\r\n this.setState({ member: dto, memberList: arr })\r\n }\r\n\r\n onClear = (key, input) => {\r\n this.setState({[key]: ''});\r\n input.focus();\r\n }\r\n\r\n render() {\r\n const isUserAndroidKey = !! window.android_setKeyBoard;\r\n const { searchValue, memberTabHeight = 0, initEmpty, loadingBtn, selected, isAllAuthority, cardList, cardInfo } = this.state;\r\n const { status, showModal, titleModal, type, defaultActiveKey, onCancel, authProcess, mode, title, storeKey } = this.props;\r\n const showSearch = ['会员查询'].includes(type);\r\n const noList = !cardList.length;\r\n const showSelectBtn = type === '会员查询' || !!status;\r\n //是否正常开单\r\n let voucherStateType = (mode !== 'practice');\r\n const searchClassName = hotKey.hotKeyNotFilter('search-input')\r\n const memberTabClassName = hotKey.hotKeyBindClass('10', 'member-shop-content')\r\n \r\n return (\r\n <div className='memberShopContainer'>\r\n {\r\n showSearch &&\r\n <div className='search-container'>\r\n <Input\r\n tplusInput\r\n placeholder='卡号/手机号'\r\n prefix='sousuo'\r\n className={`${searchClassName} android_focus_keyboard`}\r\n value={searchValue}\r\n type='native'\r\n onChange={\r\n ({ target: { value: searchValue } }) => this.setState({ searchValue })\r\n }\r\n inputRef={ref => this.searchRef = ref}\r\n onClear={() => this.onClear('searchValue', this.searchRef)}\r\n onFocus={({ target }) => {\r\n if(!isUserAndroidKey ){\r\n this.focusInputName = 'searchValue';\r\n this.inputTarget = target;\r\n Keyboard.open(v => {\r\n const key = this.focusInputName;\r\n const value = Keyboard.getNewValue(this.inputTarget, this.inputTarget.value, v);\r\n this.setState({ [key]: value });\r\n }, this.keyboardOnOk, this.keyboardOnClose)();\r\n }\r\n }}\r\n onBlur={Keyboard.close}\r\n onKeyDown={this.onKeyPressed}\r\n />\r\n <Button className='primary-btn' onClick={this.handleSearchClick}>搜索</Button>\r\n </div>\r\n }\r\n <div \r\n ref={ref => this.memberTab = ref} \r\n className={`${memberTabClassName}`}\r\n >\r\n {\r\n noList && <div className='empty-data-img storage-empty-data-img' />\r\n }\r\n <MemberCardList \r\n ref={list => this.memberCardList = list}\r\n title={title}\r\n storeKey={storeKey}\r\n selected={selected}\r\n cardList={cardList}\r\n setCardInfo={this.setCardInfo}\r\n />\r\n \r\n <div className='member-content-tab content' style={{ display: noList ? 'none' : 'flex' }}>\r\n {\r\n (voucherStateType && !isAllAuthority) &&\r\n <div>\r\n <div className='menu'>\r\n <MemberMenuStorage \r\n storeKey={storeKey}\r\n authProcess={authProcess}\r\n loadingBtn={loadingBtn} \r\n selected={selected} \r\n cardList={cardList}\r\n loadUserInfo={this.loadUserInfo}\r\n getCardList={this.getCardList}\r\n handleChange={this.MemberMenuChange} />\r\n </div>\r\n <div className='line'></div>\r\n </div>\r\n }\r\n <MemberTab\r\n defaultActiveKey={defaultActiveKey}\r\n showModal={showModal}\r\n title={title}\r\n titleModal={titleModal}\r\n storeKey={storeKey}\r\n selected={selected}\r\n memberTabHeight={memberTabHeight}\r\n initEmpty={initEmpty}\r\n cardList={cardList}\r\n />\r\n </div>\r\n </div>\r\n <div className='member-footer'>\r\n <Button onClick={onCancel}>取消</Button>\r\n </div>\r\n </div>\r\n )\r\n }\r\n}\r\n"]}
|