tplus-member 3.44.6 → 3.46.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (121) hide show
  1. package/dist/api.js +5 -5
  2. package/dist/api.js.map +1 -1
  3. package/dist/controllers/FeedbackController.js.map +1 -1
  4. package/dist/controllers/MemberOrderController.js +12 -12
  5. package/dist/controllers/MemberOrderController.js.map +1 -1
  6. package/dist/controllers/OpenCardController.js +7 -7
  7. package/dist/controllers/OpenCardController.js.map +1 -1
  8. package/dist/controllers/defaultConfig.js.map +1 -1
  9. package/dist/dataProvider/member.js +7 -7
  10. package/dist/dataProvider/member.js.map +1 -1
  11. package/dist/dataProvider/openCard.js.map +1 -1
  12. package/dist/domain/member/AuthProcess.js.map +1 -1
  13. package/dist/domain/member/CardCodeChangedProcessor.js +2 -2
  14. package/dist/domain/member/CardCodeChangedProcessor.js.map +1 -1
  15. package/dist/domain/member/CheckCardCodeAndCodeProcessor.js +2 -2
  16. package/dist/domain/member/CheckCardCodeAndCodeProcessor.js.map +1 -1
  17. package/dist/domain/member/CheckMobilephoneFormatProcessor.js +2 -2
  18. package/dist/domain/member/CheckMobilephoneFormatProcessor.js.map +1 -1
  19. package/dist/domain/member/CheckPresentAmountProcessor.js +2 -2
  20. package/dist/domain/member/CheckPresentAmountProcessor.js.map +1 -1
  21. package/dist/domain/member/EffectiveDateChangedProcessor.js +2 -2
  22. package/dist/domain/member/EffectiveDateChangedProcessor.js.map +1 -1
  23. package/dist/domain/member/GetThisPresentAmountProcessor.js +2 -2
  24. package/dist/domain/member/GetThisPresentAmountProcessor.js.map +1 -1
  25. package/dist/domain/member/InitDataProcessor.js +123 -123
  26. package/dist/domain/member/InitDataProcessor.js.map +1 -1
  27. package/dist/domain/member/IsMemberEffectiveProcessor.js +2 -2
  28. package/dist/domain/member/IsMemberEffectiveProcessor.js.map +1 -1
  29. package/dist/domain/member/IsMemberEnableProcessor.js +2 -2
  30. package/dist/domain/member/IsMemberEnableProcessor.js.map +1 -1
  31. package/dist/domain/member/IsMemberExpirationProcessor.js +2 -2
  32. package/dist/domain/member/IsMemberExpirationProcessor.js.map +1 -1
  33. package/dist/domain/member/IsMemberPasswordSameProcessor.js +2 -2
  34. package/dist/domain/member/IsMemberPasswordSameProcessor.js.map +1 -1
  35. package/dist/domain/member/IsMemberStorageForStoreProcessor.js +3 -3
  36. package/dist/domain/member/IsMemberStorageForStoreProcessor.js.map +1 -1
  37. package/dist/domain/member/MemberTypeChangedProcessor.js +4 -4
  38. package/dist/domain/member/MemberTypeChangedProcessor.js.map +1 -1
  39. package/dist/domain/member/MobilephoneChangedProcessor.js +4 -4
  40. package/dist/domain/member/MobilephoneChangedProcessor.js.map +1 -1
  41. package/dist/domain/member/PersonProcesser.js.map +1 -1
  42. package/dist/domain/member/PriuserdefChangedProcessor.js +2 -2
  43. package/dist/domain/member/PriuserdefChangedProcessor.js.map +1 -1
  44. package/dist/domain/operationLog/AddLogProcessor.js +6 -6
  45. package/dist/domain/operationLog/AddLogProcessor.js.map +1 -1
  46. package/dist/domain/operationLog/OperationConfig.js.map +1 -1
  47. package/dist/domain/operationLog/OperationLog.js.map +1 -1
  48. package/dist/index.js.map +1 -1
  49. package/dist/member/MemberCardList.js +2 -2
  50. package/dist/member/MemberCardList.js.map +1 -1
  51. package/dist/member/MemberPhoto.js.map +1 -1
  52. package/dist/member/MemberShow.js.map +1 -1
  53. package/dist/member/ShopMember.js +161 -54
  54. package/dist/member/ShopMember.js.map +1 -1
  55. package/dist/member/ShopMember.less +654 -636
  56. package/dist/member/ShopMemberStorage.js +201 -86
  57. package/dist/member/ShopMemberStorage.js.map +1 -1
  58. package/dist/member/api.js.map +1 -1
  59. package/dist/member/color.less +31 -31
  60. package/dist/member/index.js +4 -4
  61. package/dist/member/index.js.map +1 -1
  62. package/dist/member/index.less +571 -571
  63. package/dist/member/memberMenu/bindCard/index.js.map +1 -1
  64. package/dist/member/memberMenu/bindCard/style.less +7 -7
  65. package/dist/member/memberMenu/changeMemberCard/index.js.map +1 -1
  66. package/dist/member/memberMenu/changeMemberCard/style.less +42 -42
  67. package/dist/member/memberMenu/index.js.map +1 -1
  68. package/dist/member/memberMenu/modifyPass/index.js.map +1 -1
  69. package/dist/member/memberMenu/modifyPass/store.js.map +1 -1
  70. package/dist/member/memberMenu/modifyPass/style.less +96 -96
  71. package/dist/member/memberMenu/style.less +136 -136
  72. package/dist/member/memberMenuStorage/bindCard/index.js.map +1 -1
  73. package/dist/member/memberMenuStorage/bindCard/style.less +7 -7
  74. package/dist/member/memberMenuStorage/changeMemberCard/index.js.map +1 -1
  75. package/dist/member/memberMenuStorage/changeMemberCard/style.less +42 -42
  76. package/dist/member/memberMenuStorage/index.js.map +1 -1
  77. package/dist/member/memberMenuStorage/modifyPass/index.js.map +1 -1
  78. package/dist/member/memberMenuStorage/modifyPass/store.js.map +1 -1
  79. package/dist/member/memberMenuStorage/modifyPass/style.less +96 -96
  80. package/dist/member/memberMenuStorage/style.less +138 -138
  81. package/dist/member/memberTab/MemberCardInfo.js.map +1 -1
  82. package/dist/member/memberTab/MemberManager.js.map +1 -1
  83. package/dist/member/memberTab/MemberStorage.js +7 -7
  84. package/dist/member/memberTab/MemberStorage.js.map +1 -1
  85. package/dist/member/memberTab/index.js.map +1 -1
  86. package/dist/member/memberTab.js.map +1 -1
  87. package/dist/socket.js +13 -13
  88. package/dist/socket.js.map +1 -1
  89. package/dist/stores/MemberStore.js.map +1 -1
  90. package/dist/stores/index.js.map +1 -1
  91. package/dist/utils.js.map +1 -1
  92. package/dist/viewController/MemberOrderViewController.js.map +1 -1
  93. package/dist/viewDoMain/CheckMemberProcessorBlock.js +2 -2
  94. package/dist/viewDoMain/CheckMemberProcessorBlock.js.map +1 -1
  95. package/dist/viewDoMain/CheckMemberStorageProcessorBlock.js +2 -2
  96. package/dist/viewDoMain/CheckMemberStorageProcessorBlock.js.map +1 -1
  97. package/dist/viewDoMain/CheckSelectMemberProcessorBlock.js +2 -2
  98. package/dist/viewDoMain/CheckSelectMemberProcessorBlock.js.map +1 -1
  99. package/dist/viewDoMain/CheckUpdatePasswordProcessorBlock.js.map +1 -1
  100. package/dist/viewDoMain/MemberDataChangedProcessorBlock.js +2 -2
  101. package/dist/viewDoMain/MemberDataChangedProcessorBlock.js.map +1 -1
  102. package/dist/viewDoMain/MemberDataPreSaveProcessorBlock.js +2 -2
  103. package/dist/viewDoMain/MemberDataPreSaveProcessorBlock.js.map +1 -1
  104. package/dist/viewDoMain/StorageAmountChangedProcessorBlock.js +2 -2
  105. package/dist/viewDoMain/StorageAmountChangedProcessorBlock.js.map +1 -1
  106. package/dist/viewModels/memberVoucher.js +3 -3
  107. package/dist/viewModels/memberVoucher.js.map +1 -1
  108. package/dist/views/MemberOrderView.js +5 -5
  109. package/dist/views/MemberOrderView.js.map +1 -1
  110. package/dist/views/MemberStore.less +143 -143
  111. package/dist/views/MemberStoreNew.less +228 -228
  112. package/dist/views/MemberStoreNewView.js +1 -1
  113. package/dist/views/MemberStoreNewView.js.map +1 -1
  114. package/dist/views/MemberStoreView.js.map +1 -1
  115. package/dist/views/MemberStoreViewContainer.js.map +1 -1
  116. package/dist/views/PresentDetail.less +118 -118
  117. package/dist/views/PresetDetailView.js.map +1 -1
  118. package/dist/views/memberOrder.less +54 -54
  119. package/locales/zh/tplus-portsetting.json +1 -1
  120. package/locales/zh-CN/tplus-portsetting.json +1 -1
  121. package/package.json +6 -6
@@ -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 _this = (0, _possibleConstructorReturn3.default)(this, (ShopMemberStorage.__proto__ || (0, _getPrototypeOf2.default)(ShopMemberStorage)).call(this, props));
90
+ var _this2 = (0, _possibleConstructorReturn3.default)(this, (ShopMemberStorage.__proto__ || (0, _getPrototypeOf2.default)(ShopMemberStorage)).call(this, props));
85
91
 
86
- _this.currentPage = 1;
87
- _this.cacheUserRetail = {};
92
+ _this2.currentPage = 1;
93
+ _this2.cacheUserRetail = {};
94
+
95
+ _this2.handleReadICard = function () {
96
+ _this2.readRfCard();
97
+ };
88
98
 
89
- _this.hotKeyListener = function (nodeName, index) {
99
+ _this2.changeScanProduct = function () {
100
+ if (_this2.scanObj) _this2.scanObj.startScan();
101
+ };
102
+
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
- _this.isHotKeyAction = true;
115
+ _this2.isHotKeyAction = true;
92
116
  var activeElement = document.activeElement;
93
117
  activeElement && activeElement.blur();
94
118
  }
95
119
  };
96
120
 
97
- _this.observerCard = function () {
121
+ _this2.observerCard = function () {
98
122
  setTimeout(function () {
99
123
  var slideSelected = document.querySelector('.slide-selected');
100
- _this.prevSlideSelected && swiperSelectObserver.unobserve(_this.prevSlideSelected);
101
- _this.prevSlideSelected = slideSelected;
124
+ _this2.prevSlideSelected && swiperSelectObserver.unobserve(_this2.prevSlideSelected);
125
+ _this2.prevSlideSelected = slideSelected;
102
126
  slideSelected && swiperSelectObserver.observe(slideSelected);
103
127
  });
104
128
  };
105
129
 
106
- _this.windowOnresize = function () {
107
- if (!_this.memberTab) {
108
- return window.removeEventListener('resize', _this.windowOnresize);
130
+ _this2.windowOnresize = function () {
131
+ if (!_this2.memberTab) {
132
+ return window.removeEventListener('resize', _this2.windowOnresize);
109
133
  };
110
- var memberTabHeight = _this.state.memberTabHeight;
134
+ var memberTabHeight = _this2.state.memberTabHeight;
111
135
 
112
- var clientHeight = _this.memberTab.clientHeight - _this.state.tabMenuHeight;
136
+ var clientHeight = _this2.memberTab.clientHeight - _this2.state.tabMenuHeight;
113
137
  if (memberTabHeight !== clientHeight) {
114
- _this.setState({ memberTabHeight: clientHeight });
138
+ _this2.setState({ memberTabHeight: clientHeight });
115
139
  }
116
140
  };
117
141
 
118
- _this.isNotSetState = function (Idmember) {
119
- if (_this.willUnmount || Idmember !== _this.currentMemberId) return true;
142
+ _this2.isNotSetState = function (Idmember) {
143
+ if (_this2.willUnmount || Idmember !== _this2.currentMemberId) return true;
120
144
  };
121
145
 
122
- _this.getCardList = function (cardNo) {
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
- _this.setState({
157
+ _this2.setState({
134
158
  loadingBtn: true
135
159
  });
136
- _this.ms.getCardInfoByCardNo(cardNo).then(function (ret) {
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
- _this.setState({
166
+ _this2.setState({
143
167
  cardList: data,
144
168
  selected: 0,
145
169
  loadingBtn: false
146
170
  }, function () {
147
- _this.setCardInfo(currentPage === 1 ? 0 : key, data[0]);
148
- _this.memberCardList.resetSlideTop();
171
+ _this2.setCardInfo(currentPage === 1 ? 0 : key, data[0]);
172
+ _this2.memberCardList.resetSlideTop();
149
173
  });
150
174
  } else {
151
- _this.setCardInfo(key);
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
- _this.setCardInfo(key);
165
- _this.setState({
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
- _this.loadUserInfo = function (ID) {
196
+ _this2.loadUserInfo = function (ID) {
173
197
  // this.observerCard();
174
198
 
175
- _this.ms.getGetUmemberDTO(ID).then(function (ret) {
199
+ _this2.ms.getGetUmemberDTO(ID).then(function (ret) {
176
200
  _mutantsMicrofx.stores.selectMemberStore.setCurMemberInfo(ret);
177
- var memberChange = _this.props.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
- _this.setCardInfo = function (key) {
209
+ _this2.setCardInfo = function (key) {
186
210
  var cardInfo = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
187
211
 
188
- _this.setState({
212
+ _this2.setState({
189
213
  selected: key,
190
214
  cardInfo: cardInfo
191
215
  });
192
216
  };
193
217
 
194
- _this.handleSearchClick = function () {
195
- var _this$state = _this.state,
196
- searchValue = _this$state.searchValue,
197
- selected = _this$state.selected;
218
+ _this2.handleSearchClick = function () {
219
+ var _this2$state = _this2.state,
220
+ searchValue = _this2$state.searchValue,
221
+ selected = _this2$state.selected;
198
222
 
199
- _this.userSearch = true;
200
- _this.currentPage = 1;
223
+ _this2.userSearch = true;
224
+ _this2.currentPage = 1;
201
225
  // this.setState({ selected: undefined });
202
- _this.getCardList(searchValue, _this.currentPage, 10, selected);
226
+ _this2.getCardList(searchValue, _this2.currentPage, 10, selected);
203
227
  };
204
228
 
205
- _this.handleSearchChange = function (val) {
206
- _this.setState({ searchValue: val });
229
+ _this2.handleSearchChange = function (val) {
230
+ _this2.setState({ searchValue: val });
207
231
  };
208
232
 
209
- _this.keyboardOnOk = function () {
210
- _this.handleSearchClick();
233
+ _this2.keyboardOnOk = function () {
234
+ _this2.handleSearchClick();
211
235
  };
212
236
 
213
- _this.keyboardOnClose = function () {
214
- _this.searchRef && _this.searchRef.blur();
237
+ _this2.keyboardOnClose = function () {
238
+ _this2.searchRef && _this2.searchRef.blur();
215
239
  };
216
240
 
217
- _this.onKeyPressed = function (e) {
241
+ _this2.onKeyPressed = function (e) {
218
242
  var keyCode = e.keyCode;
219
243
 
220
244
  var enterKey = 13;
221
245
  if (keyCode === enterKey) {
222
- _this.handleSearchClick();
223
- _this.keyboardOnClose();
246
+ _this2.handleSearchClick();
247
+ _this2.keyboardOnClose();
224
248
  }
225
249
  };
226
250
 
227
- _this.MemberMenuChange = function (dto) {
228
- var memberList = _this.state.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,46 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
236
260
  arr.push(item);
237
261
  }
238
262
  });
239
- _this.setState({ member: dto, memberList: arr });
263
+ _this2.setState({ member: dto, memberList: arr });
240
264
  };
241
265
 
242
- _this.onClear = function (key, input) {
243
- _this.setState((0, _defineProperty3.default)({}, key, ''));
266
+ _this2.onClear = function (key, input) {
267
+ _this2.setState((0, _defineProperty3.default)({}, key, ''));
244
268
  input.focus();
245
269
  };
246
270
 
247
- var mode = _this.props.mode;
271
+ var mode = _this2.props.mode;
272
+
273
+ _this2.hasElectron = hasElectron;
274
+
275
+ var _ref2 = _mutantsMicrofx.stores.user.options.get('loginInfo') || {},
276
+ ICCardServer = _ref2.ICCardServer;
248
277
 
249
- _this.state = {
278
+ _this2.iCCardServer = parseInt(ICCardServer); // 启用IC卡:0为禁用 1为启用
279
+ _this2.state = {
250
280
  searchValue: '',
251
- searchStatus: !!_this.props.listArr ? true : false,
252
- tabIndex: _this.props.defaultActiveKey,
281
+ searchStatus: !!_this2.props.listArr ? true : false,
282
+ tabIndex: _this2.props.defaultActiveKey,
253
283
  tabMenuHeight: mode !== 'practice' ? 64 : 0, // 64为table上部操作菜单高度
254
284
  cardList: [], // 储值卡列表
255
- cardInfo: {} // 当前被选中的卡信息
285
+ cardInfo: {}, // 当前被选中的卡信息
286
+ connectCardStatus: false, //连接IC卡状态
287
+ connectCardError: '' //连接IC卡错误后记录错误信息
256
288
  };
257
- _this.ms = _api2.default;
258
- return _this;
289
+ _this2.ms = _api2.default;
290
+ //移动端环境下,没有读取IC卡的方式。
291
+
292
+ var _ref3 = _mutantsUtil.platform || {},
293
+ isHorizontalPad = _ref3.isHorizontalPad;
294
+
295
+ _this2.isHorizontalPad = !!isHorizontalPad;
296
+ return _this2;
259
297
  }
260
298
 
261
299
  (0, _createClass3.default)(ShopMemberStorage, [{
262
300
  key: 'componentDidMount',
263
301
  value: function componentDidMount() {
302
+ this.connectRfCard();
264
303
  window.addEventListener('resize', this.windowOnresize);
265
304
  $.on(this.hotKeyListener);
266
305
  this.ms.searchValue = ''; //初始化完成筛选列表清空数据(会员新增成功——封涛)
@@ -286,6 +325,75 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
286
325
  $.off(this.hotKeyListener);
287
326
  }
288
327
 
328
+ //IC卡关闭
329
+
330
+ }, {
331
+ key: 'closeRfCard',
332
+ value: function closeRfCard() {
333
+ if (this.hasElectron === true && this.iCCardServer === 1) {
334
+ _mutantsMicrofx.nativeMs.setIpcRendererMethod('CloseRfCard');
335
+ }
336
+ }
337
+ }, {
338
+ key: 'readRfCard',
339
+
340
+ //IC卡读取
341
+ value: function readRfCard() {
342
+ var _this3 = this;
343
+
344
+ //客户端环境下,并开启了启用IC卡。
345
+ if (this.hasElectron === true && this.iCCardServer === 1) {
346
+ var _state2 = this.state,
347
+ connectCardStatus = _state2.connectCardStatus,
348
+ connectCardError = _state2.connectCardError;
349
+
350
+ if (connectCardStatus === false) {
351
+ _tplusComponentsTouch.Message.error(connectCardError ? connectCardError : '读取IC卡失败');
352
+ this.connectRfCard(); //读取失败后,重新连接一下。
353
+ return;
354
+ }
355
+ var params = { cardPsw: this.iCCardPassword, cardSec: 13, cardKm: 0 };
356
+ _mutantsMicrofx.nativeMs.setIpcRendererMethod('ReadRfCard', (0, _extends3.default)({}, params), function (ret) {
357
+ if (ret.status === 0) {
358
+ _tplusComponentsTouch.Message.error(ret.value);
359
+ _this3.connectRfCard(); //读取失败后,重新连接一下。
360
+ return;
361
+ } else if (ret.status === 1) {
362
+ // this.searchMember(ret.value);
363
+ // this.czkInput.input["value"]=ret.value;
364
+ _this3.setState({
365
+ searchValue: ret.value
366
+ });
367
+ _this3.getCardList(ret.value);
368
+ }
369
+ });
370
+ }
371
+ }
372
+
373
+ //IC卡连接
374
+
375
+ }, {
376
+ key: 'connectRfCard',
377
+ value: function connectRfCard() {
378
+ var _this4 = this;
379
+
380
+ //客户端环境下,并开启了启用IC卡。
381
+ if (this.hasElectron === true && this.iCCardServer === 1) {
382
+ _mutantsMicrofx.nativeMs.setIpcRendererMethod('ConnectRfCard', null, function (ret) {
383
+ var result = {};
384
+ if (ret.status === 0) {
385
+ result = { connectCardStatus: false, connectCardError: ret.value };
386
+ } else {
387
+ result = { connectCardStatus: true, connectCardError: '' };
388
+ }
389
+ _this4.setState(result);
390
+ });
391
+ }
392
+ }
393
+
394
+ //移动端:扫描商品
395
+
396
+
289
397
  // 获取储值卡信息
290
398
 
291
399
 
@@ -294,19 +402,19 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
294
402
  }, {
295
403
  key: 'render',
296
404
  value: function render() {
297
- var _this2 = this;
405
+ var _this5 = this;
298
406
 
299
407
  var isUserAndroidKey = !!window.android_setKeyBoard;
300
- var _state2 = this.state,
301
- searchValue = _state2.searchValue,
302
- _state2$memberTabHeig = _state2.memberTabHeight,
303
- memberTabHeight = _state2$memberTabHeig === undefined ? 0 : _state2$memberTabHeig,
304
- initEmpty = _state2.initEmpty,
305
- loadingBtn = _state2.loadingBtn,
306
- selected = _state2.selected,
307
- isAllAuthority = _state2.isAllAuthority,
308
- cardList = _state2.cardList,
309
- cardInfo = _state2.cardInfo;
408
+ var _state3 = this.state,
409
+ searchValue = _state3.searchValue,
410
+ _state3$memberTabHeig = _state3.memberTabHeight,
411
+ memberTabHeight = _state3$memberTabHeig === undefined ? 0 : _state3$memberTabHeig,
412
+ initEmpty = _state3.initEmpty,
413
+ loadingBtn = _state3.loadingBtn,
414
+ selected = _state3.selected,
415
+ isAllAuthority = _state3.isAllAuthority,
416
+ cardList = _state3.cardList,
417
+ cardInfo = _state3.cardInfo;
310
418
  var _props = this.props,
311
419
  status = _props.status,
312
420
  showModal = _props.showModal,
@@ -337,35 +445,42 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
337
445
  tplusInput: true,
338
446
  placeholder: '\u5361\u53F7/\u624B\u673A\u53F7',
339
447
  prefix: 'sousuo',
340
- className: searchClassName + ' android_focus_keyboard',
448
+ className: searchClassName + ' android_focus_keyboard ' + (this.hasElectron === true && this.iCCardServer === 1 || this.isHorizontalPad === true ? 'temp' : ''),
341
449
  value: searchValue,
342
450
  type: 'native',
343
- onChange: function onChange(_ref2) {
344
- var searchValue = _ref2.target.value;
345
- return _this2.setState({ searchValue: searchValue });
451
+ onChange: function onChange(_ref4) {
452
+ var searchValue = _ref4.target.value;
453
+ return _this5.setState({ searchValue: searchValue });
346
454
  },
347
455
  inputRef: function inputRef(ref) {
348
- return _this2.searchRef = ref;
456
+ return _this5.searchRef = ref;
349
457
  },
350
458
  onClear: function onClear() {
351
- return _this2.onClear('searchValue', _this2.searchRef);
459
+ return _this5.onClear('searchValue', _this5.searchRef);
352
460
  },
353
- onFocus: function onFocus(_ref3) {
354
- var target = _ref3.target;
461
+ onFocus: function onFocus(_ref5) {
462
+ var target = _ref5.target;
355
463
 
356
464
  if (!isUserAndroidKey) {
357
- _this2.focusInputName = 'searchValue';
358
- _this2.inputTarget = target;
465
+ _this5.focusInputName = 'searchValue';
466
+ _this5.inputTarget = target;
359
467
  _tplusComponentsTouch.Keyboard.open(function (v) {
360
- var key = _this2.focusInputName;
361
- var value = _tplusComponentsTouch.Keyboard.getNewValue(_this2.inputTarget, _this2.inputTarget.value, v);
362
- _this2.setState((0, _defineProperty3.default)({}, key, value));
363
- }, _this2.keyboardOnOk, _this2.keyboardOnClose)();
468
+ var key = _this5.focusInputName;
469
+ var value = _tplusComponentsTouch.Keyboard.getNewValue(_this5.inputTarget, _this5.inputTarget.value, v);
470
+ _this5.setState((0, _defineProperty3.default)({}, key, value));
471
+ }, _this5.keyboardOnOk, _this5.keyboardOnClose)();
364
472
  }
365
473
  },
366
474
  onBlur: _tplusComponentsTouch.Keyboard.close,
367
475
  onKeyDown: this.onKeyPressed
368
476
  }),
477
+ this.hasElectron === true && this.iCCardServer === 1 && _react2.default.createElement(_tplusComponentsTouch.Ticon, { className: 'icon', onClick: this.handleReadICard, type: 'ICka' }),
478
+ this.isHorizontalPad && _react2.default.createElement(_tplusComponentsTouch.Ticon, { type: 'saomiao1', className: 'icon', onClick: this.changeScanProduct }),
479
+
480
+ /* 扫描组件 */
481
+ this.isHorizontalPad && _react2.default.createElement(Scan, { ref: function ref(scan) {
482
+ return _this5.scanObj = scan;
483
+ }, onChange: this.onScanCzkResult }),
369
484
  _react2.default.createElement(
370
485
  _button2.default,
371
486
  { className: 'primary-btn', onClick: this.handleSearchClick },
@@ -375,15 +490,15 @@ var ShopMemberStorage = (_temp = _class = function (_Component) {
375
490
  _react2.default.createElement(
376
491
  'div',
377
492
  {
378
- ref: function ref(_ref4) {
379
- return _this2.memberTab = _ref4;
493
+ ref: function ref(_ref6) {
494
+ return _this5.memberTab = _ref6;
380
495
  },
381
496
  className: '' + memberTabClassName
382
497
  },
383
498
  noList && _react2.default.createElement('div', { className: 'empty-data-img storage-empty-data-img' }),
384
499
  _react2.default.createElement(_MemberCardList2.default, {
385
500
  ref: function ref(list) {
386
- return _this2.memberCardList = list;
501
+ return _this5.memberCardList = list;
387
502
  },
388
503
  title: title,
389
504
  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","iCCardServer","parseInt","searchStatus","listArr","tabIndex","defaultActiveKey","connectCardStatus","connectCardError","memberStore","isHorizontalPad","connectRfCard","addEventListener","$","on","off","nativeMs","setIpcRendererMethod","params","cardPsw","iCCardPassword","cardSec","cardKm","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';\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, env, nativeMs } 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\nconst hasElectron = (env.platform === env.constant.platform.electron);\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 this.hasElectron = hasElectron;\r\n const { ICCardServer } = stores.user.options.get('loginInfo') || {};\r\n this.iCCardServer = parseInt(ICCardServer); // 启用IC卡:0为禁用 1为启用\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 connectCardStatus: false, //连接IC卡状态\r\n connectCardError: '', //连接IC卡错误后记录错误信息\r\n };\r\n this.ms = memberStore;\r\n //移动端环境下,没有读取IC卡的方式。\r\n const { isHorizontalPad } = platform || {};\r\n this.isHorizontalPad = !!isHorizontalPad;\r\n }\r\n\r\n currentPage = 1;\r\n cacheUserRetail = {};\r\n\r\n componentDidMount() {\r\n this.connectRfCard();\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 //IC卡关闭\r\n closeRfCard(){\r\n if (this.hasElectron === true && this.iCCardServer === 1) {\r\n nativeMs.setIpcRendererMethod('CloseRfCard')\r\n }\r\n }\r\n handleReadICard = () => {\r\n this.readRfCard();\r\n }\r\n //IC卡读取\r\n readRfCard() {\r\n //客户端环境下,并开启了启用IC卡。\r\n if (this.hasElectron === true && this.iCCardServer === 1) {\r\n const { connectCardStatus, connectCardError } = this.state;\r\n if (connectCardStatus === false) {\r\n Message.error(connectCardError ? connectCardError : '读取IC卡失败');\r\n this.connectRfCard(); //读取失败后,重新连接一下。\r\n return;\r\n }\r\n let params = { cardPsw: this.iCCardPassword, cardSec: 13, cardKm: 0 }\r\n nativeMs.setIpcRendererMethod('ReadRfCard', { ...params }, ret => {\r\n if (ret.status === 0) {\r\n Message.error(ret.value);\r\n this.connectRfCard(); //读取失败后,重新连接一下。\r\n return;\r\n } else if (ret.status === 1) {\r\n // this.searchMember(ret.value);\r\n // this.czkInput.input[\"value\"]=ret.value;\r\n this.setState({\r\n searchValue: ret.value\r\n })\r\n this.getCardList(ret.value);\r\n }\r\n })\r\n }\r\n }\r\n\r\n //IC卡连接\r\n connectRfCard() {\r\n //客户端环境下,并开启了启用IC卡。\r\n if (this.hasElectron === true && this.iCCardServer === 1) {\r\n nativeMs.setIpcRendererMethod('ConnectRfCard', null, ret => {\r\n let result = {}\r\n if (ret.status === 0) {\r\n result = { connectCardStatus: false, connectCardError: ret.value }\r\n } else {\r\n result = { connectCardStatus: true, connectCardError: '' };\r\n }\r\n this.setState(result)\r\n })\r\n }\r\n }\r\n\r\n //移动端:扫描商品\r\n changeScanProduct = () => {\r\n if (this.scanObj) this.scanObj.startScan()\r\n }\r\n\r\n onScanCzkResult = (val) => {\r\n let _this = this;\r\n this.setState({\r\n searchValue: val\r\n })\r\n setTimeout(() => { _this.getCardList(val) }, 0)\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 ${(this.hasElectron === true && this.iCCardServer === 1 || this.isHorizontalPad === true) ? 'temp' : ''}`}\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 {\r\n this.hasElectron === true && this.iCCardServer === 1 &&\r\n <Ticon className='icon' onClick={this.handleReadICard} type=\"ICka\" />\r\n }\r\n {\r\n this.isHorizontalPad &&\r\n <Ticon type='saomiao1' className='icon' onClick={this.changeScanProduct} />\r\n }\r\n {\r\n /* 扫描组件 */\r\n this.isHorizontalPad &&\r\n <Scan ref={scan => this.scanObj = scan} onChange={this.onScanCzkResult} />\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"]}