tplus-portaltouch 3.44.2 → 3.44.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -34,8 +34,8 @@ var _inherits2 = require('babel-runtime/helpers/inherits');
34
34
  var _inherits3 = _interopRequireDefault(_inherits2);
35
35
 
36
36
  var _class; /*
37
- * @Descripttion:
38
- * @version:
37
+ * @Descripttion:
38
+ * @version:
39
39
  * @Author: chenlongad
40
40
  * @Date: 2021-05-12 14:40:27
41
41
  * @LastEditors: chenlongad
@@ -175,7 +175,8 @@ var _default = (0, _mobxReact.observer)(_class = function (_Component) {
175
175
  _react2.default.createElement(_antd.DatePicker, {
176
176
  format: _dutyService.DateFormat2,
177
177
  onChange: this.onChange,
178
- value: this.state.date
178
+ value: this.state.date,
179
+ allowClear: false
179
180
  })
180
181
  ),
181
182
  _react2.default.createElement(
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-portaltouch/components/dutyandsettle/dutysettlehistory.js"],"names":["observer","props","onChange","date","dataString","setTimeout","store","getVouchers","format","DateFormat","type","setState","onCancel","onAfterPrint","onPrint","id","curIndex","vouchers","ID","isShift","console","log","DoNameList","DO_DUTY_PRINT","DO_DIALY_PRINT","then","BillHistoryStore","state","platform","isHorizontalPad","isHorizontalSunMi","isMobileEnvironment","map","voucher","index","setCurIndex","Code","getVoucher","voucherInfo","Component"],"mappings":"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","file":"dutysettlehistory.js","sourcesContent":["/*\r\n * @Descripttion: \r\n * @version: \r\n * @Author: chenlongad\r\n * @Date: 2021-05-12 14:40:27\r\n * @LastEditors: chenlongad\r\n * @LastEditTime: 2021-11-15 11:13:39\r\n */\r\nimport React, { Component } from 'react';\r\nimport { DatePicker, Button } from 'antd';\r\nimport { observer } from 'mobx-react';\r\nimport moment from \"moment\";\r\nimport classnames from 'classnames'\r\nimport DutySettleBill from './dutysettlebill';\r\nimport { Ticon, printDispatch,DoNameList } from 'tplus-components-touch';\r\nimport { platform } from 'mutants-util';\r\nimport BillHistoryStore from '../../stores/billHistoryStore';\r\nimport { DateFormat2 as DateFormat } from '../../dutyService';\r\n/**打印 */\r\nimport { PrintProcess } from '../../utils/PrintProcess';\r\n\r\n@observer\r\nexport default class extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.store = new BillHistoryStore();\r\n\t\tthis.state = { date: moment() };\r\n\t\tconst { isHorizontalPad, isHorizontalSunMi } = platform || {};\r\n\t\tthis.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi;\r\n\t\tthis.isHorizontalPad = !!isHorizontalPad;\r\n\t}\r\n\tcomponentDidMount(){\r\n\t\tthis.onChange(moment());\r\n\t}\r\n\tonChange = (date, dataString) => {\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.store.getVouchers(date && date.format ? date.format(DateFormat) : \"\", this.props.type);\r\n\t\t\tif(dataString) this.setState({ date: date })\r\n\t\t}, 100);\r\n\t}\r\n\r\n\tonCancel = ()=>{\r\n\t\tthis.props.onAfterPrint && this.props.onAfterPrint();\r\n\t}\r\n\r\n\tonPrint = async ()=>{\r\n\t\t// 马坚 Add start\r\n\t\tlet id=null;\r\n\t\tlet curIndex=this.store.curIndex;\r\n\t\tif (this.store.vouchers && curIndex>=0) {\r\n\t\t\tid=this.store.vouchers[curIndex].ID;\r\n\t\t}\r\n\t\tlet isShift= this.props.type=='offDuty';\r\n\t\t// 打印\r\n\t\tconsole.log(\"打印开始:ID:\"+id);\r\n\t\tprintDispatch(isShift ? DoNameList.DO_DUTY_PRINT : DoNameList.DO_DIALY_PRINT, id).then(() => {\r\n\t\t\tthis.props.onAfterPrint && this.props.onAfterPrint();\r\n\t\t});\r\n\t}\r\n\r\n\r\n\trender() {\r\n\t\tconst vouchers = (this.store.curIndex>-1?this.store.vouchers:[]).map((voucher,index)=>{\r\n\t\t\treturn <div className={classnames({'selected':index==this.store.curIndex})} key={index+''} onClick={()=>{this.store.setCurIndex(index)}}>{voucher.Code}</div>\r\n\t\t});\r\n\t\treturn (\r\n\t\t<div className=\"history\">\r\n\t\t\t<div className='historybody'>\r\n\t\t\t\t<div className=\"historyleft\">\r\n\t\t\t\t\t\t<div className=\"datepicker\">\r\n\t\t\t\t\t\t\t<DatePicker\r\n\t\t\t\t\t\t\t\tformat={DateFormat}\r\n\t\t\t\t\t\t\t\tonChange={this.onChange}\r\n\t\t\t\t\t\t\t\tvalue={this.state.date}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t<div className=\"vouchers\">{vouchers}</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div className=\"historyright\">\r\n\t\t\t\t\t{this.store.curIndex==-1 &&<div className={classnames({\"emptydata\":true, \"historyempty\":true})}>暂无数据</div>}\r\n\t\t\t\t\t{this.store.curIndex>-1 &&<DutySettleBill type={this.props.type} bhistory={true} bill={this.store.getVoucher(this.store.curIndex)} voucherInfo={this.store.voucherInfo} />}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div className='historyfooter'>\r\n\t\t\t\t<Button onClick={ this.onCancel } >取消</Button>\r\n\t\t\t\t<Button type='primary' onClick={this.onPrint}>打印</Button>\r\n\t\t\t</div>\r\n\t\t</div>);\r\n\t}\r\n}\r\n"]}
1
+ {"version":3,"sources":["tplus-portaltouch/components/dutyandsettle/dutysettlehistory.js"],"names":["observer","props","onChange","date","dataString","setTimeout","store","getVouchers","format","DateFormat","type","setState","onCancel","onAfterPrint","onPrint","id","curIndex","vouchers","ID","isShift","console","log","DoNameList","DO_DUTY_PRINT","DO_DIALY_PRINT","then","BillHistoryStore","state","platform","isHorizontalPad","isHorizontalSunMi","isMobileEnvironment","map","voucher","index","setCurIndex","Code","getVoucher","voucherInfo","Component"],"mappings":"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","file":"dutysettlehistory.js","sourcesContent":["/*\r\n * @Descripttion:\r\n * @version:\r\n * @Author: chenlongad\r\n * @Date: 2021-05-12 14:40:27\r\n * @LastEditors: chenlongad\r\n * @LastEditTime: 2021-11-15 11:13:39\r\n */\r\nimport React, { Component } from 'react';\r\nimport { DatePicker, Button } from 'antd';\r\nimport { observer } from 'mobx-react';\r\nimport moment from \"moment\";\r\nimport classnames from 'classnames'\r\nimport DutySettleBill from './dutysettlebill';\r\nimport { Ticon, printDispatch,DoNameList } from 'tplus-components-touch';\r\nimport { platform } from 'mutants-util';\r\nimport BillHistoryStore from '../../stores/billHistoryStore';\r\nimport { DateFormat2 as DateFormat } from '../../dutyService';\r\n/**打印 */\r\nimport { PrintProcess } from '../../utils/PrintProcess';\r\n\r\n@observer\r\nexport default class extends Component {\r\n\tconstructor(props) {\r\n\t\tsuper(props);\r\n\t\tthis.store = new BillHistoryStore();\r\n\t\tthis.state = { date: moment() };\r\n\t\tconst { isHorizontalPad, isHorizontalSunMi } = platform || {};\r\n\t\tthis.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi;\r\n\t\tthis.isHorizontalPad = !!isHorizontalPad;\r\n\t}\r\n\tcomponentDidMount(){\r\n\t\tthis.onChange(moment());\r\n\t}\r\n\tonChange = (date, dataString) => {\r\n\t\tsetTimeout(() => {\r\n\t\t\tthis.store.getVouchers(date && date.format ? date.format(DateFormat) : \"\", this.props.type);\r\n\t\t\tif(dataString) this.setState({ date: date })\r\n\t\t}, 100);\r\n\t}\r\n\r\n\tonCancel = ()=>{\r\n\t\tthis.props.onAfterPrint && this.props.onAfterPrint();\r\n\t}\r\n\r\n\tonPrint = async ()=>{\r\n\t\t// 马坚 Add start\r\n\t\tlet id=null;\r\n\t\tlet curIndex=this.store.curIndex;\r\n\t\tif (this.store.vouchers && curIndex>=0) {\r\n\t\t\tid=this.store.vouchers[curIndex].ID;\r\n\t\t}\r\n\t\tlet isShift= this.props.type=='offDuty';\r\n\t\t// 打印\r\n\t\tconsole.log(\"打印开始:ID:\"+id);\r\n\t\tprintDispatch(isShift ? DoNameList.DO_DUTY_PRINT : DoNameList.DO_DIALY_PRINT, id).then(() => {\r\n\t\t\tthis.props.onAfterPrint && this.props.onAfterPrint();\r\n\t\t});\r\n\t}\r\n\r\n\r\n\trender() {\r\n\t\tconst vouchers = (this.store.curIndex>-1?this.store.vouchers:[]).map((voucher,index)=>{\r\n\t\t\treturn <div className={classnames({'selected':index==this.store.curIndex})} key={index+''} onClick={()=>{this.store.setCurIndex(index)}}>{voucher.Code}</div>\r\n\t\t});\r\n\t\treturn (\r\n\t\t<div className=\"history\">\r\n\t\t\t<div className='historybody'>\r\n\t\t\t\t<div className=\"historyleft\">\r\n\t\t\t\t\t\t<div className=\"datepicker\">\r\n\t\t\t\t\t\t\t<DatePicker\r\n\t\t\t\t\t\t\t\tformat={DateFormat}\r\n\t\t\t\t\t\t\t\tonChange={this.onChange}\r\n\t\t\t\t\t\t\t\tvalue={this.state.date}\r\n\t\t\t\t\t\t\t\tallowClear={false}\r\n\t\t\t\t\t\t\t/>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t<div className=\"vouchers\">{vouchers}</div>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div className=\"historyright\">\r\n\t\t\t\t\t{this.store.curIndex==-1 &&<div className={classnames({\"emptydata\":true, \"historyempty\":true})}>暂无数据</div>}\r\n\t\t\t\t\t{this.store.curIndex>-1 &&<DutySettleBill type={this.props.type} bhistory={true} bill={this.store.getVoucher(this.store.curIndex)} voucherInfo={this.store.voucherInfo} />}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<div className='historyfooter'>\r\n\t\t\t\t<Button onClick={ this.onCancel } >取消</Button>\r\n\t\t\t\t<Button type='primary' onClick={this.onPrint}>打印</Button>\r\n\t\t\t</div>\r\n\t\t</div>);\r\n\t}\r\n}\r\n"]}
@@ -185,6 +185,10 @@ var OnLineStatusToggle = (0, _mobxReact.observer)(function (props) {
185
185
  var networkState = networkCheckStore.networkState;
186
186
  var isOnLine = networkCheckStore.isOnLine;
187
187
  var hasUseOffline = isOfflineCash && !_mutantsUtil.platform.otherOfflineStatus; //是否允许离线
188
+
189
+ var _ref3 = _mutantsUtil.platform || {},
190
+ isHorizontalSunMi = _ref3.isHorizontalSunMi;
191
+
188
192
  var iconName = 'WiFi';
189
193
  if (hasUseOffline) {
190
194
  var weakConfirm = function weakConfirm() {
@@ -266,9 +270,9 @@ var OnLineStatusToggle = (0, _mobxReact.observer)(function (props) {
266
270
  function getVoucherDataStatus() {
267
271
  var data = voucherStore.getVoucherData();
268
272
 
269
- var _ref3 = data || {},
270
- Idmember = _ref3.Idmember,
271
- RetailDetails = _ref3.RetailDetails;
273
+ var _ref4 = data || {},
274
+ Idmember = _ref4.Idmember,
275
+ RetailDetails = _ref4.RetailDetails;
272
276
 
273
277
  if (!!Idmember || RetailDetails && RetailDetails.length > 0) {
274
278
  return true;
@@ -338,7 +342,7 @@ var OnLineStatusToggle = (0, _mobxReact.observer)(function (props) {
338
342
  'pre',
339
343
  null,
340
344
  _offlinePointDesc.OFFLINE_POINT_DESC
341
- ), trigger: 'hover' },
345
+ ), trigger: isHorizontalSunMi ? 'click' : 'hover' },
342
346
  _react2.default.createElement(
343
347
  'span',
344
348
  { className: 'status-tog-btn' },
@@ -365,7 +369,7 @@ function RetailUpload() {
365
369
 
366
370
  var refModal = (0, _react.useRef)(null);
367
371
  var showModal = function () {
368
- var _ref4 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee() {
372
+ var _ref5 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee() {
369
373
  return _regenerator2.default.wrap(function _callee$(_context) {
370
374
  while (1) {
371
375
  switch (_context.prev = _context.next) {
@@ -382,12 +386,12 @@ function RetailUpload() {
382
386
  }));
383
387
 
384
388
  return function showModal() {
385
- return _ref4.apply(this, arguments);
389
+ return _ref5.apply(this, arguments);
386
390
  };
387
391
  }();
388
392
 
389
393
  var handleOk = function () {
390
- var _ref5 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee2() {
394
+ var _ref6 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee2() {
391
395
  var isUpLoad = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
392
396
  return _regenerator2.default.wrap(function _callee2$(_context2) {
393
397
  while (1) {
@@ -449,7 +453,7 @@ function RetailUpload() {
449
453
  }));
450
454
 
451
455
  return function handleOk() {
452
- return _ref5.apply(this, arguments);
456
+ return _ref6.apply(this, arguments);
453
457
  };
454
458
  }();
455
459
 
@@ -508,7 +512,7 @@ function RetailDownload() {
508
512
  setDownStr = _useState10[1];
509
513
 
510
514
  var handleDownLoad = function () {
511
- var _ref6 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee3() {
515
+ var _ref7 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee3() {
512
516
  var result;
513
517
  return _regenerator2.default.wrap(function _callee3$(_context3) {
514
518
  while (1) {
@@ -571,7 +575,7 @@ function RetailDownload() {
571
575
  }));
572
576
 
573
577
  return function handleDownLoad() {
574
- return _ref6.apply(this, arguments);
578
+ return _ref7.apply(this, arguments);
575
579
  };
576
580
  }();
577
581
  return _react2.default.createElement(
@@ -757,8 +761,8 @@ function HeadContent(props, context) {
757
761
  };
758
762
 
759
763
  var setInventoryFocus = function setInventoryFocus() {
760
- var _ref7 = _mutantsUtil.platform || {},
761
- isHorizontalPad = _ref7.isHorizontalPad;
764
+ var _ref8 = _mutantsUtil.platform || {},
765
+ isHorizontalPad = _ref8.isHorizontalPad;
762
766
 
763
767
  if (!!isHorizontalPad) return;
764
768
  var doms = document.getElementsByClassName('app hot-key-focus-container');
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-portaltouch/components/header/headContent.js"],"names":["HeadContent","Item","Menu","defaultFromat","t","i18n","getFixedT","UPLOAD_BASE_PATH","NETWORK_THEME_PATH","PLACE_ORDER_PATH","weakRemindNum","WEAK_STANDARD_NUM","HeadTime","props","time","dateFormat","unMount","timeStr","Date","now","currentTime","setCurrentTime","timeout","refreshDate","setTimeout","clearTimeout","split","date_YMD","date_HMS","platform","isVerticalTouch","OnLineStatus","networkStatus","networkCheckStore","stores","networkState","networkOn","iconName","switchNetwork","checked","event","switchOnLine","lineIcon","marginRight","getIsOffNetWork","OnLineStatusToggle","isShowUploadBtnsByRouter","isResetNetWorkTheme","isOfflineCash","isPlaceOrderPage","offlineSys","voucherStore","isOnLine","hasUseOffline","otherOfflineStatus","weakConfirm","document","querySelector","getDataIsOffline","ModalWraper","confirm","className","title","content","onOk","setOffLine","switchStatus","Message","tip","getVoucherDataStatus","data","getVoucherData","Idmember","RetailDetails","length","status","playStatus","setIsOffline","clearVoucherData","color","OFFLINE_POINT_DESC","RetailUpload","isModalVisible","setIsModalVisible","isUpLoading","setIsUpLoading","refModal","showModal","current","fetch","handleOk","isUpLoad","uploadRetail","error","handleCancel","UnLoadNum","retailNotUploadNumber","display","RetailDownload","isDownload","setIsDownload","downStr","setDownStr","handleDownLoad","downloadCatcherData","e","percent","result","success","DownloadBtn","releaseDate","releaseVersion","__RELEASESDATE__","__BUILDVERSION__","context","isElectron","env","businessName","storeName","posCode","logo","style","history","solt","isPortal","isLogin","menu","onClick","location","themeVisible","setThemeVisible","window","href","indexOf","setIsShowUploadBtnsByRouter","pathname","setIsResetNetWorkTheme","setIsPlaceOrderPage","listen","route","menuProps","menus","map","item","i","key","icon","controlConfig","type","beforeEvent","Loading","show","node","delay","actionHook","actionChange","User","logout","nativeMs","doWindow","clear","localStore","remove","splitUser","value","regEmail","RegExp","isEmail","test","setInventoryFocus","isHorizontalPad","doms","getElementsByClassName","input","getElementById","console","log","focus","clickTheme","isShow","userName","overlayClassName","moreInfoNode","headControlNode","v","width","height","replace","preventDefault","contextTypes","PropTypes","object"],"mappings":";;;;;;;;;;;;;;;;;;;;;;kBA2UwBA,W;;AA3UxB;;;;AACA;;AACA;;AACA;;;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;;;AACA;;;;AAEA;;AACA;;;;IACQC,I,GAASC,U,CAATD,I;;AACR,IAAME,gBAAgB,qBAAtB;AACA,IAAMC,IAAIC,qBAAKC,SAAL,CAAe,IAAf,EAAqB,WAArB,CAAV;AACA,IAAMC,mBAAmB,QAAzB;AACA,IAAMC,qBAAqB,GAA3B;AACA,IAAMC,mBAAmB,UAAzB;AACA,IAAIC,gBAAgB,CAApB,C,CAAsB;AACtB,IAAMC,oBAAoB,CAA1B,C,CAA6B;;AAE7B;AACA,SAASC,QAAT,CAAkBC,KAAlB,EAAyB;AAAA,MACfC,IADe,GACMD,KADN,CACfC,IADe;AAAA,MACTC,UADS,GACMF,KADN,CACTE,UADS;;AAEvB,MAAIC,UAAU,KAAd;AACA,MAAMC,UAAU,OAAOH,IAAP,KAAgB,QAAhB,GAA2B,uBAAWA,IAAX,EAAiBC,UAAjB,CAA3B,GAA0DD,IAA1E;;AAHuB,kBAIe,qBAAS,uBAAWI,KAAKC,GAAL,EAAX,EAAuBJ,UAAvB,CAAT,CAJf;AAAA;AAAA,MAIhBK,WAJgB;AAAA,MAIHC,cAJG;;AAKvB,MAAIC,gBAAJ;AACA,WAASC,WAAT,GAAuB;AACrB,QAAIT,IAAJ,EAAU;AACV,KAACE,OAAD,IAAYK,eAAe,uBAAWH,KAAKC,GAAL,EAAX,EAAuBJ,UAAvB,CAAf,CAAZ;AACAO,cAAUE,WAAWD,WAAX,EAAwB,IAAxB,CAAV;AACD;AACD,wBAAU,YAAM;AACdA;AACA,WAAO,YAAM;AACXP,gBAAU,IAAV;AACAS,mBAAaH,OAAb;AACD,KAHD;AAID,GAND,EAMG,CAACF,WAAD,CANH;;AAXuB,aAkBMA,YAAYM,KAAZ,CAAkB,GAAlB,KAA0B,EAlBhC;AAAA;AAAA,MAkBhBC,QAlBgB;AAAA,MAkBNC,QAlBM;;AAoBvB,MAAIC,sBAASC,eAAb,EAA8B,OAAO,qCAAiB,EAAEF,kBAAF,EAAjB,CAAP;AAC9B,SACE;AAAA;AAAA,MAAK,WAAU,MAAf;AACGX,cACC;AAAA;AAAA;AAAMA;AAAN,KADD,GAEC;AAAA;AAAA;AACGU,cADH;AAEE;AAAA;AAAA;AAAOC;AAAP;AAFF;AAHJ,GADF;AAWD;;AAED;AACA,IAAMG,eAAe,yBAAS,UAAClB,KAAD,EAAS;AAAA,MAC7BmB,aAD6B,GACXnB,KADW,CAC7BmB,aAD6B;AAAA,MAE7BC,iBAF6B,GAEPC,sBAFO,CAE7BD,iBAF6B;;AAGrC,MAAME,eAAeF,kBAAkBE,YAAvC;AACA,MAAIC,YAAY,IAAhB;AACA,MAAIC,WAAW,MAAf;AACA,UAAQF,YAAR;AACE,SAAK,IAAL;AACEE,iBAAW,MAAX;AACA;AACF,SAAK,IAAL;AACEA,iBAAW,SAAX;AACA;AACF,SAAK,IAAL;AACED,kBAAY,KAAZ;AACAC,iBAAW,WAAX;AACA;AACF;AACE;AAZJ;AAcA,MAAMC,gBAAgB,SAAhBA,aAAgB,CAACC,OAAD,EAAUC,KAAV,EAAkB;AACtCP,sBAAkBQ,YAAlB,CAA+BF,OAA/B;AACD,GAFD;AAGA,MAAMG,WAAW,8BAAC,2BAAD;AACf,UAAML,QADS;AAEf,eAAU;AAFK,IAAjB;AAIA,SACE;AAAA;AAAA;AAAK;AAAA;AAAA,QAAM,WAAU,gBAAhB,EAAiC,OAAO,EAACM,aAAY,MAAb,EAAxC;AAA+DX,uBAAiBU;AAAhF,KAAL;AAAqG;AAAA;AAAA;AAAM,oCAAC,YAAD,IAAQ,iBAAgB,cAAxB,EAA6B,mBAAkB,cAA/C,EAAoD,oBAApD,EAAmE,SAASN,SAA5E,EAAuF,UAAUE,aAAjG;AAAN;AAArG,GADF;AAGD,CA9BoB,CAArB;AA+BA,SAASM,eAAT,GAA2B;AAAA,MACjBX,iBADiB,GACKC,sBADL,CACjBD,iBADiB;;AAEzB,SAAOA,kBAAkBE,YAAlB,KAAmC,IAA1C;AACD;AACD;AACA,IAAMU,qBAAqB,yBAAS,iBAAS;AAAA,MACnCC,wBADmC,GACgDjC,KADhD,CACnCiC,wBADmC;AAAA,MACTC,mBADS,GACgDlC,KADhD,CACTkC,mBADS;AAAA,MACYC,aADZ,GACgDnC,KADhD,CACYmC,aADZ;AAAA,MAC2BC,gBAD3B,GACgDpC,KADhD,CAC2BoC,gBAD3B;AAAA,MAEnChB,iBAFmC,GAEaC,sBAFb,CAEnCD,iBAFmC;AAAA,MAEhBiB,UAFgB,GAEahB,sBAFb,CAEhBgB,UAFgB;AAAA,MAEJC,YAFI,GAEajB,sBAFb,CAEJiB,YAFI;;AAG3C,MAAMhB,eAAeF,kBAAkBE,YAAvC;AACA,MAAIiB,WAAWnB,kBAAkBmB,QAAjC;AACA,MAAMC,gBAAgBL,iBAAiB,CAACnB,sBAASyB,kBAAjD,CAL2C,CAK0B;AACrE,MAAIjB,WAAW,MAAf;AACA,MAAIgB,aAAJ,EAAmB;AAAA,QAwBRE,WAxBQ,GAwBjB,SAASA,WAAT,GAAuB;AACrB,UAAI,CAACH,QAAL,EAAe;AAAE;AAAS,OADL,CACK;AAC1B,UAAII,SAASC,aAAT,CAAuB,2BAAvB,CAAJ,EAAyD;AAAE;AAAS,OAF/C,CAE+C;AACpE,UAAItB,iBAAiB,IAArB,EAA2B;AAAE;AAAS,OAHjB,CAGkB;AACvC,UAAIzB,iBAAiBC,iBAArB,EAAwC;AAAE;AAAS,OAJ9B,CAI+B;AACpD,UAAI,CAACuC,WAAWQ,gBAAhB,EAAkC;AAAE;AAAS,OALxB,CAKwB;AAC7C,UAAIF,SAASC,aAAT,CAAuB,oBAAvB,CAAJ,EAAkD;AAAE;AAAS,OANxC,CAMwC;AAC7D,UAAID,SAASC,aAAT,CAAuB,sBAAvB,CAAJ,EAAoD;AAAE;AAAS,OAP1C,CAO0C;AAC/D,UAAID,SAASC,aAAT,CAAuB,gBAAvB,CAAJ,EAA8C;AAAE;AAAS,OARpC,CAQoC;AACzD/C;AACAiD,wCAAYC,OAAZ,CAAoB;AAClBC,mBAAW,0BADO;AAElBC,eAAO1D,EAAE,IAAF,CAFW;AAGlB2D,iBAAS3D,EAAE,iBAAF,CAHS;AAIlB4D,cAAM,gBAAM;AACVC,qBAAW,IAAX;AACD;AANiB,OAApB;AAQD,KA1CgB;;AACjB,YAAQ9B,YAAR;AACE,WAAK,IAAL;AACEE,mBAAW,MAAX;AACA;AACF,WAAK,IAAL;AACEA,mBAAW,SAAX;AACA;AACF,WAAK,IAAL;AACEA,mBAAW,WAAX;AACA;AACF;AACE;AAXJ;AAaA,QAAIF,iBAAiB,IAAjB,IAAyBiB,QAAzB,IAAqC,CAACI,SAASC,aAAT,CAAuB,uBAAvB,CAA1C,EAA2F;AACzFE,wCAAYC,OAAZ,CAAoB;AAClBC,mBAAW,sBADO;AAElBC,eAAO1D,EAAE,IAAF,CAFW;AAGlB2D,iBAAS3D,EAAE,mBAAF,CAHS;AAIlB4D,cAAM,gBAAM;AACVC,qBAAW,IAAX;AACD;AANiB,OAApB;AAQD;;AAoBDV;AACD;AACD,WAASW,YAAT,GAAwB;AACtB,QAAI/B,iBAAiB,IAAjB,IAAyB,CAACiB,QAA9B,EAAwC;AACtCe,oCAAQC,GAAR,CAAY,iBAAZ;AACA;AACD;AACDT,sCAAYC,OAAZ,CAAoB;AAChBE,aAAO1D,EAAE,IAAF,CADS;AAEhB2D,eAAS3D,4CAAWgD,WAAW,GAAX,GAAiB,GAA5B,qCAFO;AAGhBY,YAAM,gBAAM;AACVC,mBAAWb,QAAX;AACD;AALe,KAApB;AAOD;;AAED,WAASiB,oBAAT,GAAgC;AAC9B,QAAIC,OAAOnB,aAAaoB,cAAb,EAAX;;AAD8B,gBAEMD,QAAQ,EAFd;AAAA,QAEtBE,QAFsB,SAEtBA,QAFsB;AAAA,QAEZC,aAFY,SAEZA,aAFY;;AAG9B,QAAI,CAAC,CAACD,QAAF,IAAeC,iBAAiBA,cAAcC,MAAd,GAAuB,CAA3D,EAA+D;AAC7D,aAAO,IAAP;AACD;AACD,WAAO,KAAP;AACD;;AAED,WAAST,UAAT,CAAoBU,MAApB,EAA4B;AAC1B,QAAI1B,oBAAoBoB,sBAAxB,EAAgD;AAC9CV,wCAAYC,OAAZ,CAAoB;AAClBE,eAAO1D,EAAE,IAAF,CADW;AAElB2D,iBAAS3D,0EAAgBuE,SAAS,GAAT,GAAe,GAA/B,uGAFS;AAGlBX,cAAM,gBAAM;AACVY,qBAAWD,MAAX;AACD;AALiB,OAApB;AAOD,KARD,MAQO;AACLC,iBAAWD,MAAX;AACD;AACF;;AAED,WAASC,UAAT,CAAoBD,MAApB,EAA4B;AAC1B;AACA,QAAIA,MAAJ,EAAY;AACV,UAAI,CAACzB,WAAWQ,gBAAX,EAAD,IAAkCF,SAASC,aAAT,CAAuB,sBAAvB,CAAtC,EAAsF;AACpFU,sCAAQC,GAAR,CAAY,iBAAZ;AACA;AACD;AACF;AACDlB,eAAW2B,YAAX,CAAwBF,MAAxB;AACA,QAAI1B,gBAAJ,EAAsB;AACpBE,mBAAa2B,gBAAb;AACD;AACF;AACD,SACE;AAAA;AAAA,MAAK,WAAU,aAAf;AACE;AAAA;AAAA,QAAK,WAAU,eAAf;AACE;AAAA;AAAA,UAAM,WAAU,gBAAhB,EAAiC,OAAO,EAACC,aAAUhC,sBAAsB,MAAtB,GAA+B,EAAzC,CAAD,EAAxC;AAA0F,sCAAC,2BAAD,IAAO,MAAMV,QAAb;AAA1F;AADF,KADF;AAKIgB,qBAAiBP,wBAAjB,IAA6C;AAAA;AAAA,QAAK,0DAAuDM,YAAYL,mBAAZ,GAAkC,EAAlC,GAAuC,UAA9F,CAAL;AAC3C;AAAA;AAAA,UAAM,WAAU,gBAAhB,EAAiC,SAASmB,YAA1C;AACE;AAAA;AAAA;AAAOd,qBAAW,IAAX,GAAkB;AAAzB,SADF;AAEE;AAAA;AAAA;AAAO,wCAAC,2BAAD,IAAO,MAAK,eAAZ,EAA4B,WAAU,OAAtC;AAAP;AAFF,OAD2C;AAK3C;AAAC,qBAAD;AAAA,UAAS,WAAU,QAAnB,EAA4B,kBAAkB,gBAA9C,EAAgE,SAAS;AAAA;AAAA;AAAM4B;AAAN,WAAzE,EAA0G,SAAQ,OAAlH;AACE;AAAA;AAAA,YAAM,WAAU,gBAAhB;AAAkC,wCAAC,2BAAD,IAAO,MAAK,SAAZ;AAAlC;AADF;AAL2C;AALjD,GADF;AAkBD,CAxH0B,CAA3B;;AA0HA;AACA,SAASC,YAAT,GAAwB;AAAA;;AAAA,mBACsB,qBAAS,KAAT,CADtB;AAAA;AAAA,MACfC,cADe;AAAA,MACCC,iBADD;;AAAA,mBAEgB,qBAAS,KAAT,CAFhB;AAAA;AAAA,MAEfC,WAFe;AAAA,MAEFC,cAFE;;AAGtB,MAAMC,WAAW,mBAAO,IAAP,CAAjB;AACA,MAAMC;AAAA,yFAAY;AAAA;AAAA;AAAA;AAAA;AAChBD,0BAAYA,SAASE,OAAT,CAAiBC,KAAjB,EAAZ;AACAN,gCAAkB,IAAlB;;AAFgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAZ;;AAAA;AAAA;AAAA;AAAA,KAAN;;AAKA,MAAMO;AAAA,yFAAW;AAAA,UAAOC,QAAP,uEAAkB,KAAlB;AAAA;AAAA;AAAA;AAAA;AACfR,gCAAkB,KAAlB;;AADe,mBAEXvC,iBAFW;AAAA;AAAA;AAAA;;AAGbuB,4CAAQC,GAAR,CAAY,aAAZ;AAHa;;AAAA;AAAA,kBAMVuB,QANU;AAAA;AAAA;AAAA;;AAObxB,4CAAQC,GAAR,CAAY,WAAZ;AAPa;;AAAA;AAAA,mBAUXgB,WAVW;AAAA;AAAA;AAAA;;AAWbjB,4CAAQC,GAAR,CAAY,WAAZ;AAXa;;AAAA;AAcfiB,6BAAe,IAAf;AAde;AAAA;AAAA,qBAgBPnD,uBAAOgB,UAAP,CAAkB0C,YAAlB,EAhBO;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAmBbzB,4CAAQ0B,KAAR,CAAc,MAAd;;AAnBa;AAqBfR,6BAAe,KAAf;;AArBe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAX;;AAAA;AAAA;AAAA;AAAA,KAAN;;AAwBA,MAAMS,eAAe,SAAfA,YAAe,GAAM;AACzBX,sBAAkB,KAAlB;AACD,GAFD;AAGA,SACE;AAAA;AAAA,MAAK,WAAU,eAAf;AACE;AAAA;AAAA,QAAK,WAAU,0CAAf,EAA0D,SAASI,SAAnE;AACE;AAAA;AAAA,UAAM,WAAU,gBAAhB;AACE;AAAA;AAAA,YAAM,iBAAcH,cAAc,mBAAd,GAAoC,EAAlD,CAAN;AAA+D,wCAAC,2BAAD,IAAO,MAAK,YAAZ;AAA/D,SADF;AAEE;AAAA;AAAA,YAAM,WAAU,iBAAhB;AAAA;AAAA;AAFF;AADF,KADF;AAOE,kCAAC,SAAD,OAPF;AAQE,kCAAC,oBAAD,IAAa,KAAKE,QAAlB,EAA4B,SAASJ,cAArC,EAAqD,UAAUQ,QAA/D,EAAyE,cAAcI,YAAvF;AARF,GADF;AAYD;AACD;AACA,IAAMC,YAAY,yBAAS,YAAM;AAAA,MACXC,qBADW,GACgB9D,sBADhB,CACxBgB,UADwB,CACX8C,qBADW;;AAE/B,SAAO;AAAA;AAAA,MAAM,OAAO,EAACC,SAASD,wBAAwB,CAAxB,GAA4B,SAA5B,GAAwC,MAAlD,EAAb,EAAwE,WAAU,cAAlF;AAAkGA,4BAAwB,EAAxB,GAA6B,KAA7B,GAAqCA;AAAvI,GAAP;AACD,CAHiB,CAAlB;AAIA;AACA,SAASE,cAAT,GAA0B;AAAA;;AAAA,MACjBhD,UADiB,GACHhB,sBADG,CACjBgB,UADiB;;AAAA,mBAEY,qBAAS,KAAT,CAFZ;AAAA;AAAA,MAEjBiD,UAFiB;AAAA,MAELC,aAFK;;AAAA,mBAGM,qBAAS,MAAT,CAHN;AAAA;AAAA,MAGjBC,OAHiB;AAAA,MAGRC,UAHQ;;AAIxB,MAAMC;AAAA,yFAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBACjB3D,iBADiB;AAAA;AAAA;AAAA;;AAEnBuB,4CAAQC,GAAR,CAAY,aAAZ;AAFmB;;AAAA;AAAA,mBAKjB+B,UALiB;AAAA;AAAA;AAAA;;AAMnBhC,4CAAQC,GAAR,CAAY,KAAZ;AANmB;;AAAA;AASrBkC,yBAAW,KAAX;AACAF,4BAAc,IAAd;AACAjC,4CAAQC,GAAR,CAAY,KAAZ;AAXqB;AAAA;AAAA,qBAaAlB,WAAWsD,mBAAX,CAA+B,aAAK;AACrDF,2BAAWG,EAAEC,OAAF,GAAY,IAAvB;AACD,eAFkB,CAbA;;AAAA;AAafC,oBAbe;;AAgBnB,kBAAIA,MAAJ,EAAY;AACVxC,8CAAQyC,OAAR;AACD,eAFD,MAEO;AACLzC,8CAAQ0B,KAAR;AACD;AApBkB;AAAA;;AAAA;AAAA;AAAA;;AAsBnB1B,4CAAQ0B,KAAR,CAAc,QAAd;;AAtBmB;AAwBrBS,yBAAW,MAAX;AACAF,4BAAc,KAAd;;AAzBqB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAjB;;AAAA;AAAA;AAAA;AAAA,KAAN;AA2BA,SACE;AAAA;AAAA,MAAK,WAAU,iBAAf;AACE,kCAAC,WAAD,IAAa,gBAAgBG,cAA7B,EAA6C,YAAYJ,UAAzD,EAAqE,SAASE,OAA9E;AADF,GADF;AAKD;AACD;AACA,IAAMQ,cAAc,yBAAS,UAAChG,KAAD,EAAW;AAAA,MAC9BwF,OAD8B,GACSxF,KADT,CAC9BwF,OAD8B;AAAA,MACrBF,UADqB,GACStF,KADT,CACrBsF,UADqB;AAAA,MACTI,cADS,GACS1F,KADT,CACT0F,cADS;;AAEtC,SACE;AAAA;AAAA,MAAK,0DAAuD3D,oBAAoB,SAApB,GAAgC,EAAvF,CAAL,EAAkG,SAAS2D,cAA3G;AACI;AAAA;AAAA,QAAM,WAAU,gBAAhB;AACE;AAAA;AAAA,UAAM,iBAAcJ,aAAa,qBAAb,GAAqC,EAAnD,CAAN;AAAgE,sCAAC,2BAAD,IAAO,MAAK,aAAZ;AAAhE,OADF;AAEE;AAAA;AAAA,UAAM,WAAU,iBAAhB;AAAmCE;AAAnC;AAFF;AADJ,GADF;AAQD,CAVmB,CAApB;AAWA,IAAIS,oBAAJ;AAAA,IAAiBC,uBAAjB;AACA,IAAI;AACFD,gBAAcE,gBAAd;AACAD,mBAAiBE,gBAAjB;AACD,CAHD,CAGE,OAAOpB,KAAP,EAAc;AACdiB,gBAAc,EAAd;AACAC,mBAAiB,EAAjB;AACD;AACc,SAAS/G,WAAT,CAAqBa,KAArB,EAA4BqG,OAA5B,EAAqC;AAClD,MAAMC,aAAa,CAACC,uBAAO,EAAR,EAAYvF,QAAZ,KAAyB,UAA5C;AADkD,4BAG2ChB,KAH3C,CAE3CwG,YAF2C;AAAA,MAE3CA,YAF2C,uCAE5B,EAF4B;AAAA,yBAG2CxG,KAH3C,CAExByG,SAFwB;AAAA,MAExBA,SAFwB,oCAEZ,EAFY;AAAA,MAERC,OAFQ,GAG2C1G,KAH3C,CAER0G,OAFQ;AAAA,MAECC,IAFD,GAG2C3G,KAH3C,CAEC2G,IAFD;AAAA,MAEOxF,aAFP,GAG2CnB,KAH3C,CAEOmB,aAFP;AAAA,qBAG2CnB,KAH3C,CAEsB4G,KAFtB;AAAA,MAEsBA,KAFtB,gCAE8B,EAF9B;AAAA,MAEkCC,OAFlC,GAG2C7G,KAH3C,CAEkC6G,OAFlC;AAAA,0BAG2C7G,KAH3C,CAGhDE,UAHgD;AAAA,MAGhDA,UAHgD,qCAGnCZ,aAHmC;AAAA,MAGpBwH,IAHoB,GAG2C9G,KAH3C,CAGpB8G,IAHoB;AAAA,MAGd7G,IAHc,GAG2CD,KAH3C,CAGdC,IAHc;AAAA,MAGR8G,QAHQ,GAG2C/G,KAH3C,CAGR+G,QAHQ;AAAA,MAGEC,OAHF,GAG2ChH,KAH3C,CAGEgH,OAHF;AAAA,oBAG2ChH,KAH3C,CAGWiH,IAHX;AAAA,MAGWA,IAHX,+BAGkB,EAHlB;AAAA,MAGsBC,OAHtB,GAG2ClH,KAH3C,CAGsBkH,OAHtB;AAAA,MAG+BC,QAH/B,GAG2CnH,KAH3C,CAG+BmH,QAH/B;;AAAA,oBAIV,qBAAS,KAAT,CAJU;AAAA;AAAA,MAI3CC,YAJ2C;AAAA,MAI7BC,eAJ6B;;AAAA,oBAKc,qBAASC,OAAOH,QAAP,CAAgBI,IAAhB,CAAqBC,OAArB,CAA6B9H,gBAA7B,IAAiD,CAA1D,CALd;AAAA;AAAA,MAK3CuC,wBAL2C;AAAA,MAKjBwF,2BALiB;;AAAA,oBAMI,qBAASH,OAAOH,QAAP,CAAgBO,QAAhB,KAA6B/H,kBAAtC,CANJ;AAAA;AAAA,MAM3CuC,mBAN2C;AAAA,MAMtByF,sBANsB;;AAAA,oBAOF,qBAASL,OAAOH,QAAP,CAAgBI,IAAhB,CAAqBC,OAArB,CAA6B5H,gBAA7B,IAAiD,CAA1D,CAPE;AAAA;AAAA,MAO3CwC,gBAP2C;AAAA,MAOzBwF,mBAPyB;;AAQlD5H,QAAM6G,OAAN,CAAcgB,MAAd,CAAqB,iBAAS;AAC5BF,2BAAuBG,MAAMJ,QAAN,KAAmB/H,kBAA1C;AACA8H,gCAA4BK,MAAMJ,QAAN,CAAeF,OAAf,CAAuB9H,gBAAvB,IAA2C,CAAvE;AACAkI,wBAAoBE,MAAMJ,QAAN,CAAeF,OAAf,CAAuB5H,gBAAvB,IAA2C,CAAC,CAAhE;AACD,GAJD;AAKA,MAAM4C,gBAAiB,gCAAY,eAAZ,MAAiC,GAAlC,IAA0C,CAACxB,sBAASyB,kBAA1E,CAbkD,CAa4C;AAC9F,MAAMsF,YAAY,EAACb,gBAAD,EAAlB;AACA,MAAMc,QACJ;AAAC,cAAD;AAAUD,aAAV;AACGd,SAAKgB,GAAL,CAAS,UAACC,IAAD,EAAOC,CAAP;AAAA,aACR;AAAC,YAAD;AAAA,UAAM,KAAKD,KAAKE,GAAL,IAAYD,CAAvB;AACGD,aAAKG,IAAL,IAAa,8BAAC,2BAAD,IAAO,MAAMH,KAAKG,IAAlB,GADhB;AAEE;AAAA;AAAA;AAAOH,eAAKjF;AAAZ;AAFF,OADQ;AAAA,KAAT;AADH,GADF;;AAWA,MAAMqF,gBAAgB,CACpB,EAACC,MAAM,SAAP,EAAkB5G,OAAO,KAAzB,EADoB,EAEpB;AACE4G,UAAM,YADR;AAEE5G,WAAO,OAFT;AAGE6G,iBAAa,qBAACN,IAAD,EAAU;AACrB,aAAOpF,kCAAYC,OAAZ,CAAoB;AACzBC,mBAAW,qBADc;AAEzBC,eAAO,MAFkB;AAGzBC,iBAAS,YAHgB;AAInBC,YAJmB,kBAIZ;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AACXsF,kDAAQC,IAAR,CAAa;AACX1F,iCAAW,mBADA;AAEX2F,4BAAM;AAAA;AAAA,0BAAK,WAAU,gBAAf;AACJ,sDAAC,0BAAD,IAAM,OAAO,GAAb,EAAkB,MAAK,OAAvB,EAA+B,aAA/B,GADI;AAEJ;AAAA;AAAA;AAAA;AAAA;AAFI,uBAFK;AAMXC,6BAAO;AANI,qBAAb;AAQAvC,4BAAQwC,UAAR,CAAmBC,YAAnB,CAAgC,WAAhC;AATW;AAAA;AAAA,2BAWHC,eAAKC,MAAL,CAAY,YAAM;AACtB;AACArI,iCAAW,YAAM;AAAEsI,iDAASC,QAAT,CAAkBhB,KAAKvG,KAAvB;AAA+B,uBAAlD,EAAoD,GAApD;AACD,qBAHK,CAXG;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAgBToH,mCAAKI,KAAL,GAAcC,2BAAWC,MAAX,CAAkB,MAAlB;AACd1I,+BAAW,YAAM;AAAEsI,+CAASC,QAAT,CAAkBhB,KAAKvG,KAAvB;AAA+B,qBAAlD,EAAoD,GAApD;;AAjBS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAmBZ;AAvBwB,OAApB,CAAP;AAyBD;AA7BH,GAFoB,CAAtB;;AAmCA,MAAM2H,YAAY,SAAZA,SAAY,CAACC,KAAD,EAAW;AAC3B,QAAMC,WAAW,IAAIC,MAAJ,CAAW,yEAAX,CAAjB;AACA,QAAMC,UAAUF,SAASG,IAAT,CAAcJ,KAAd,CAAhB;;AAEA,QAAIG,OAAJ,EAAa;AACX,aAAOH,MAAM1I,KAAN,CAAY,GAAZ,EAAiB,CAAjB,CAAP;AACD;AACD,WAAO0I,KAAP;AACD,GARD;;AAUA,MAAMK,oBAAoB,SAApBA,iBAAoB,GAAM;AAAA,gBACF5I,yBAAY,EADV;AAAA,QACtB6I,eADsB,SACtBA,eADsB;;AAE9B,QAAI,CAAC,CAACA,eAAN,EAAuB;AACvB,QAAIC,OAAOnH,SAASoH,sBAAT,CAAgC,6BAAhC,CAAX;AACA,QAAIC,QAAQrH,SAASsH,cAAT,CAAwB,cAAxB,CAAZ;AACA,QAAID,KAAJ,EAAWrJ,WAAW,YAAM;AAAE,UAAImJ,QAAQA,KAAKjG,MAAL,GAAc,CAA1B,EAA6B;AAAEqG,gBAAQC,GAAR,CAAY,4BAAZ,EAA0CH,MAAMI,KAAN;AAAe;AAAE,KAA7G,EAA+G,GAA/G;AACZ,GAND;;AAQA,MAAMC,aAAa,SAAbA,UAAa,CAACC,MAAD,EAAY;AAC7BjD,oBAAgBiD,MAAhB;AACD,GAFD;;AAIA,MAAMC,WAAW,gCAAY,UAAZ,CAAjB;AACA,MAAMC,iDAA8C,CAACzD,QAAD,GAAY,eAAZ,GAA8B,EAA5E,CAAN;AACA,MAAM0D,eAAe;AAAA;AAAA,MAAK,WAAU,yBAAf;AACnB;AAAA;AAAA,QAAI,WAAU,eAAd;AAA+BjE;AAA/B,KADmB;AAEnB;AAAA;AAAA,QAAI,WAAU,YAAd;AAA4BE;AAA5B;AAFmB,GAArB;;AAKA,MAAMgE,kBAAkB;AAAA;AAAA,MAAK,WAAU,sBAAf;AACrBpC,kBAAcL,GAAd,CAAkB;AAAA,aAAK,8BAAC,2BAAD;AACtB,cAAM0C,EAAEpC,IADc;AAEtB,aAAKoC,EAAEpC,IAFe;AAGtB,iBAAS,mBAAM;AACb,cAAIU,wBAAJ,EAAc;AAAA,gBACLT,WADK,GACUmC,CADV,CACLnC,WADK;;AAEZ,gBAAIA,WAAJ,EAAiB;AACf,qBAAOA,YAAYmC,CAAZ,CAAP;AACD;AACD1B,qCAASC,QAAT,CAAkByB,EAAEhJ,KAApB;AACA,gBAAI,OAAOiI,iBAAP,IAA4B,UAAhC,EAA4C;AAC1CA;AACD;AACF;AACF;AAdqB,QAAL;AAAA,KAAlB;AADqB,GAAxB;;AAmBA,MAAI5I,sBAASC,eAAb,EAA8B,OAAO,wCAAoB,EAAE2F,YAAF,EAASV,8BAAT,EAAyBD,wBAAzB;AACvDhG,cADuD,EACjDC,sBADiD,EACrCyG,UADqC,EAC/B5G,kBAD+B,EACrB2K,gCADqB,EACJvD,kBADI,EACMN,gBADN,EACewD,sBADf,EAC2BjD,0BAD3B,EACyCL,kBADzC,EACmDC,gBADnD,EAApB,CAAP;;AAG9B,SAAQ;AAAA;AAAA,MAAK,gCAAQ5B,SAAS,cAAjB,EAAiCwF,OAAO,MAAxC,EAAgDC,QAAQ,MAAxD,IAAmEjE,KAAnE,CAAL,EAAgF,WAAU,cAA1F,EAAyG,gBAAiBV,cAAjB,SAAmCD,WAA5I;AACN;AAAA;AAAA,QAAK,WAAU,mBAAf;AACG,OAAC,CAACU,IAAF,IAAU;AAAA;AAAA,UAAK,WAAU,eAAf,EAA+B,SAAS,mBAAI;AAACE,oBAAQiE,OAAR,CAAgB,GAAhB;AAAqB,WAAlE;AAAqEnE;AAArE,OADb;AAEG,OAAC,CAACF,SAAF,IAAe;AAAC,qBAAD;AAAA,UAAS,SAAQ,OAAjB,EAAyB,WAAU,aAAnC,EAAiD,OAAOgE,YAAxD,EAAsE,OAAO,MAA7E,EAAqF,kBAAiB,mBAAtG;AACd;AAAA;AAAA,YAAK,WAAU,YAAf;AAA6BhE,mBAA7B;AAAuC,+CAAG,WAAU,sBAAb;AAAvC;AADc,OAFlB;AAME,oCAAC,kBAAD,IAAoB,0BAA0BxE,wBAA9C,EAAwE,qBAAqBC,mBAA7F,EAAkH,eAAeM,aAAjI,EAAgJ,kBAAkBJ,gBAAlK,GANF;AAOGI,uBAAiBP,wBAAjB,IAA6C,8BAAC,YAAD,OAPhD;AAQGO,uBAAiBP,wBAAjB,IAA6C,8BAAC,cAAD;AARhD,KADM;AAWLqE,kBAAcoE,eAXT;AAYN;AAAA;AAAA,QAAK,WAAU,oBAAf;AACG,OAAC1D,OAAD,IAAY,8BAAC,2BAAD,IAAO,MAAK,QAAZ,EAAqB,4BAAyB,CAACD,QAAD,GAAY,UAAZ,GAAyB,EAAlD,CAArB,EAA8E,SAAS,mBAAM;AAACsD,qBAAW,IAAX;AAAiB,SAA/G,GADf;AAEG,OAACrD,OAAD,IAAY,CAAC,CAACuD,QAAd,IAA0B;AAAC,sBAAD;AAAA;AACzB,4BAAkBC,gBADO;AAEzB,mBAAS,CAAC,OAAD,CAFgB;AAGzB,mBAASxC,KAHgB;AAIzB,qBAAU,aAJe;AAKzB;AALyB;AAOzB;AAAA;AAAA,YAAK,WAAU,4BAAf,EAA4C,SAAS;AAAA,qBAAKpC,EAAEmF,cAAF,EAAL;AAAA,aAArD;AACE;AAAA;AAAA,cAAK,WAAU,iBAAf;AACE;AAAA;AAAA,gBAAG,WAAU,QAAb;AAAA;AAA0B;AAAA;AAAA;AAAOzB,0BAAUiB,QAAV;AAAP;AAA1B;AADF,WADF;AAIE,+CAAG,WAAU,sBAAb;AAJF;AAPyB,OAF7B;AAgBG,OAACvD,OAAD,IAAY;AAAA;AAAA,UAAK,WAAU,iBAAf;AAAkCF;AAAlC,OAhBf;AAiBE,oCAAC,QAAD,IAAU,MAAM7G,IAAhB,EAAsB,YAAYC,UAAlC;AAjBF,KAZM;AA+BN,kCAAC,oBAAD;AACI,eAASkH,YADb;AAEI,kBAAYpG,sBAASC,eAFzB;AAGI,gBAAU8F,QAHd;AAII,eAAS,iBAACuD,MAAD;AAAA,eAAYD,WAAWC,MAAX,CAAZ;AAAA;AAJb;AA/BM,GAAR;AAsCD;;AAEDnL,YAAY6L,YAAZ,GAA2B;AACzBnC,cAAYoC,oBAAUC;AADG,CAA3B","file":"headContent.js","sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\r\nimport { Ticon, ModalWraper, Loading, Spin, Message } from 'tplus-components-touch';\r\nimport { Tooltip, Menu, Dropdown, Switch, Popover } from 'antd';\r\nimport PropTypes from 'prop-types';\r\nimport { formatDate } from '../../utils';\r\nimport { env, nativeMs, localStore, i18n } from 'mutants-microfx';\r\nimport { PosInitData } from 'tplus-poslogin';\r\nimport { User } from 'tplus-api';\r\nimport { verticalHeadTime, verticalHeadContent } from './vertical-touch';\r\nimport { platform } from 'mutants-util';\r\nimport ThemeModal from \"./themeModal\";\r\nimport UploadOrder from \"./uploadList\";\r\nimport {stores} from 'mutants-microfx';\r\nimport {observer} from 'mobx-react';\r\nimport {OFFLINE_POINT_DESC} from './offlinePointDesc';\r\nconst { Item } = Menu;\r\nconst defaultFromat = 'yyyy-MM-dd hh:mm:ss';\r\nconst t = i18n.getFixedT(null, 'newretail');\r\nconst UPLOAD_BASE_PATH = '/login';\r\nconst NETWORK_THEME_PATH = \"/\";\r\nconst PLACE_ORDER_PATH = \"/RE/RE01\";\r\nlet weakRemindNum = 0;// 弱网提示初始值\r\nconst WEAK_STANDARD_NUM = 3; // 弱网提示的次数上限\r\n\r\n//头部时间\r\nfunction HeadTime(props) {\r\n const { time, dateFormat } = props;\r\n let unMount = false;\r\n const timeStr = typeof time === 'number' ? formatDate(time, dateFormat) : time;\r\n const [currentTime, setCurrentTime] = useState(formatDate(Date.now(), dateFormat));\r\n let timeout;\r\n function refreshDate() {\r\n if (time) return;\r\n !unMount && setCurrentTime(formatDate(Date.now(), dateFormat));\r\n timeout = setTimeout(refreshDate, 1000);\r\n }\r\n useEffect(() => {\r\n refreshDate();\r\n return () => {\r\n unMount = true;\r\n clearTimeout(timeout);\r\n };\r\n }, [currentTime]);\r\n const [date_YMD, date_HMS] = currentTime.split(' ') || [];\r\n\r\n if (platform.isVerticalTouch) return verticalHeadTime({ date_HMS });\r\n return (\r\n <div className='time'>\r\n {timeStr ?\r\n <div>{timeStr}</div> :\r\n <div>\r\n {date_YMD}\r\n <span>{date_HMS}</span>\r\n </div>\r\n }\r\n </div>\r\n );\r\n}\r\n\r\n//头部联网状态\r\nconst OnLineStatus = observer((props)=>{\r\n const { networkStatus } = props;\r\n const { networkCheckStore } = stores;\r\n const networkState = networkCheckStore.networkState;\r\n let networkOn = true;\r\n let iconName = 'WiFi';\r\n switch (networkState) {\r\n case '联网':\r\n iconName = 'WiFi';\r\n break;\r\n case '弱网':\r\n iconName = 'ruowifi';\r\n break;\r\n case '离线':\r\n networkOn = false;\r\n iconName = 'wuwangluo';\r\n break;\r\n default:\r\n break;\r\n }\r\n const switchNetwork = (checked ,event)=>{\r\n networkCheckStore.switchOnLine(checked);\r\n }\r\n const lineIcon = <Ticon\r\n icon={iconName}\r\n className=\"network-state-icon\"\r\n />\r\n return (\r\n <div><span className='network-status' style={{marginRight:'10px'}}>{networkStatus || lineIcon}</span><span><Switch checkedChildren=\"开启\" unCheckedChildren=\"关闭\" defaultChecked checked={networkOn} onChange={switchNetwork}/></span></div>\r\n );\r\n});\r\nfunction getIsOffNetWork() {\r\n const { networkCheckStore } = stores;\r\n return networkCheckStore.networkState === '离线';\r\n}\r\n//头部联网状态\r\nconst OnLineStatusToggle = observer(props => {\r\n const { isShowUploadBtnsByRouter, isResetNetWorkTheme, isOfflineCash, isPlaceOrderPage } = props;\r\n const { networkCheckStore, offlineSys, voucherStore } = stores;\r\n const networkState = networkCheckStore.networkState;\r\n let isOnLine = networkCheckStore.isOnLine;\r\n const hasUseOffline = isOfflineCash && !platform.otherOfflineStatus; //是否允许离线\r\n let iconName = 'WiFi';\r\n if (hasUseOffline) {\r\n switch (networkState) {\r\n case '联网':\r\n iconName = 'WiFi';\r\n break;\r\n case '弱网':\r\n iconName = 'ruowifi';\r\n break;\r\n case '离线':\r\n iconName = 'wuwangluo';\r\n break;\r\n default:\r\n break;\r\n }\r\n if (networkState === '离线' && isOnLine && !document.querySelector('.tplus-off-line-modal')) {\r\n ModalWraper.confirm({\r\n className: 'tplus-off-line-modal',\r\n title: t('提示'),\r\n content: t('网络已断,是否切换到离线收银模式?'),\r\n onOk: () => {\r\n setOffLine(true);\r\n }\r\n });\r\n }\r\n function weakConfirm() {\r\n if (!isOnLine) { return; }// 离线不提示\r\n if (document.querySelector('.tplus-weak-network-modal')) { return; }// 不重复弹窗\r\n if (networkState !== '弱网') { return; } // 非弱网状态不提示\r\n if (weakRemindNum >= WEAK_STANDARD_NUM) { return; } // 提示大于三次不再提示\r\n if (!offlineSys.getDataIsOffline) { return; }// 数据未下载完不提示\r\n if (document.querySelector('.isRetailUpLoading')) { return; }// 上传中不提示\r\n if (document.querySelector('.isRetailDownLoading')) { return; }// 下载中不提示\r\n if (document.querySelector('.tplus-loading')) { return; }// 全屏loading不提示\r\n weakRemindNum ++;\r\n ModalWraper.confirm({\r\n className: 'tplus-weak-network-modal',\r\n title: t('提示'),\r\n content: t('当前网络不好,是否切换到离线?'),\r\n onOk: () => {\r\n setOffLine(true);\r\n }\r\n });\r\n }\r\n weakConfirm();\r\n }\r\n function switchStatus() {\r\n if (networkState === '离线' && !isOnLine) {\r\n Message.tip('当前无网络,无法切换为在线状态');\r\n return;\r\n }\r\n ModalWraper.confirm({\r\n title: t('提示'),\r\n content: t(`确定要切换为${isOnLine ? '离' : '在'}线环境吗?`),\r\n onOk: () => {\r\n setOffLine(isOnLine);\r\n }\r\n });\r\n }\r\n\r\n function getVoucherDataStatus() {\r\n let data = voucherStore.getVoucherData();\r\n const { Idmember, RetailDetails } = data || {};\r\n if (!!Idmember || (RetailDetails && RetailDetails.length > 0)) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function setOffLine(status) {\r\n if (isPlaceOrderPage && getVoucherDataStatus()) {\r\n ModalWraper.confirm({\r\n title: t('提示'),\r\n content: t(`当前为开单界面,切换到${status ? '离' : '在'}线会清除当前数据,确定要切换吗?`),\r\n onOk: () => {\r\n playStatus(status);\r\n }\r\n });\r\n } else {\r\n playStatus(status);\r\n }\r\n }\r\n\r\n function playStatus(status) {\r\n // status 为 true 是在线切离线\r\n if (status) {\r\n if (!offlineSys.getDataIsOffline() || document.querySelector('.isRetailDownLoading')) {\r\n Message.tip('数据还未下载完,无法切换为离线');\r\n return;\r\n }\r\n }\r\n offlineSys.setIsOffline(status);\r\n if (isPlaceOrderPage) {\r\n voucherStore.clearVoucherData();\r\n }\r\n }\r\n return (\r\n <div className='on-off-wrap'>\r\n <div className='status-square'>\r\n <span className=\"status-tog-btn\" style={{color: `${isResetNetWorkTheme ? '#fff' : ''}`}}>{<Ticon icon={iconName}/>}</span>\r\n </div>\r\n {\r\n hasUseOffline && isShowUploadBtnsByRouter && <div className={`status-square c-pointer online-status-bg ${isOnLine || isResetNetWorkTheme ? '' : 'off-line'}`}>\r\n <span className=\"status-tog-btn\" onClick={switchStatus}>\r\n <span>{isOnLine ? '在线' : '离线'}</span>\r\n <span>{<Ticon icon=\"zaixianlixian\" className=\"ts-14\" />}</span>\r\n </span>\r\n <Popover placement=\"bottom\" overlayClassName={'offline-popver'} content={<pre>{OFFLINE_POINT_DESC}</pre>} trigger=\"hover\">\r\n <span className=\"status-tog-btn\">{<Ticon icon=\"tanhao1\" />}</span>\r\n </Popover>\r\n </div>\r\n }\r\n </div>\r\n );\r\n});\r\n\r\n//零售单上传\r\nfunction RetailUpload() {\r\n const [isModalVisible, setIsModalVisible] = useState(false);\r\n const [isUpLoading, setIsUpLoading] = useState(false);\r\n const refModal = useRef(null);\r\n const showModal = async () => {\r\n refModal && refModal.current.fetch();\r\n setIsModalVisible(true);\r\n };\r\n\r\n const handleOk = async (isUpLoad = false) => {\r\n setIsModalVisible(false);\r\n if (getIsOffNetWork()) {\r\n Message.tip('已断网,不可以上传单据');\r\n return;\r\n }\r\n if (!isUpLoad) {\r\n Message.tip('暂无可以上传的单据');\r\n return;\r\n }\r\n if (isUpLoading) {\r\n Message.tip('零售单正在上传……');\r\n return;\r\n }\r\n setIsUpLoading(true);\r\n try {\r\n await stores.offlineSys.uploadRetail();\r\n // Message.success('零售单上传成功');\r\n } catch (err) {\r\n Message.error('上传失败');\r\n }\r\n setIsUpLoading(false);\r\n };\r\n\r\n const handleCancel = () => {\r\n setIsModalVisible(false);\r\n };\r\n return (\r\n <div className='upload-retail'>\r\n <div className=\"status-square online-status-bg c-pointer\" onClick={showModal}>\r\n <span className=\"status-tog-btn\">\r\n <span className={`${isUpLoading ? 'isRetailUpLoading' : ''}`}>{<Ticon icon=\"shangchuan\"/>}</span>\r\n <span className=\"fast-upload-btn\">上传零售单</span>\r\n </span>\r\n </div>\r\n <UnLoadNum/>\r\n <UploadOrder ref={refModal} visible={isModalVisible} handleOk={handleOk} handleCancel={handleCancel}/>\r\n </div>\r\n );\r\n}\r\n// 零售单未上传的数量\r\nconst UnLoadNum = observer(() => {\r\n const {offlineSys: {retailNotUploadNumber} } = stores;\r\n return <span style={{display: retailNotUploadNumber > 0 ? 'inherit' : 'none'}} className=\"up-count-btn\">{retailNotUploadNumber > 99 ? '99+' : retailNotUploadNumber}</span>\r\n});\r\n//零售单下载\r\nfunction RetailDownload() {\r\n const {offlineSys} = stores;\r\n const [isDownload, setIsDownload] = useState(false);\r\n const [downStr, setDownStr] = useState('下载数据');\r\n const handleDownLoad = async () => {\r\n if (getIsOffNetWork()) {\r\n Message.tip('已断网,不可以下载单据');\r\n return;\r\n }\r\n if (isDownload) {\r\n Message.tip('下载中');\r\n return;\r\n }\r\n setDownStr('0 %');\r\n setIsDownload(true);\r\n Message.tip('下载中');\r\n try {\r\n let result = await offlineSys.downloadCatcherData(e => {\r\n setDownStr(e.percent + ' %');\r\n });\r\n if (result) {\r\n Message.success(`数据下载成功`);\r\n } else {\r\n Message.error(`数据下载失败`);\r\n }\r\n } catch(err){\r\n Message.error('数据下载失败');\r\n }\r\n setDownStr('下载数据');\r\n setIsDownload(false);\r\n };\r\n return (\r\n <div className='download-retail'>\r\n <DownloadBtn handleDownLoad={handleDownLoad} isDownload={isDownload} downStr={downStr}/>\r\n </div>\r\n );\r\n};\r\n// 下载按钮\r\nconst DownloadBtn = observer((props) => {\r\n const { downStr, isDownload, handleDownLoad} = props;\r\n return (\r\n <div className={`status-square online-status-bg c-pointer ${getIsOffNetWork() ? 'is-grey' : ''}`} onClick={handleDownLoad}>\r\n <span className=\"status-tog-btn\">\r\n <span className={`${isDownload ? 'isRetailDownLoading' : ''}`}>{<Ticon icon=\"xiazaishuju\"/>}</span>\r\n <span className=\"fast-upload-btn\">{downStr}</span>\r\n </span>\r\n </div>\r\n )\r\n});\r\nlet releaseDate, releaseVersion;\r\ntry {\r\n releaseDate = __RELEASESDATE__;\r\n releaseVersion = __BUILDVERSION__;\r\n} catch (error) {\r\n releaseDate = '';\r\n releaseVersion = '';\r\n}\r\nexport default function HeadContent(props, context) {\r\n const isElectron = (env || {}).platform === 'electron';\r\n const {businessName = '', storeName = '', posCode, logo, networkStatus, style = {}, history,\r\n dateFormat = defaultFromat, solt, time, isPortal, isLogin, menu = [], onClick, location} = props;\r\n const [themeVisible, setThemeVisible] = useState(false);\r\n const [isShowUploadBtnsByRouter, setIsShowUploadBtnsByRouter] = useState(window.location.href.indexOf(UPLOAD_BASE_PATH) < 0);\r\n const [isResetNetWorkTheme, setIsResetNetWorkTheme] = useState(window.location.pathname === NETWORK_THEME_PATH);\r\n const [isPlaceOrderPage, setIsPlaceOrderPage] = useState(window.location.href.indexOf(PLACE_ORDER_PATH) > 0);\r\n props.history.listen(route => {\r\n setIsResetNetWorkTheme(route.pathname === NETWORK_THEME_PATH);\r\n setIsShowUploadBtnsByRouter(route.pathname.indexOf(UPLOAD_BASE_PATH) < 0);\r\n setIsPlaceOrderPage(route.pathname.indexOf(PLACE_ORDER_PATH) > -1)\r\n });\r\n const hasUseOffline = (PosInitData('IsOfflineCash') === \"1\") && !platform.otherOfflineStatus; //是否允许离线\r\n const menuProps = {onClick};\r\n const menus = (\r\n <Menu {...menuProps}>\r\n {menu.map((item, i) =>\r\n <Item key={item.key || i}>\r\n {item.icon && <Ticon icon={item.icon}/>}\r\n <span>{item.title}</span>\r\n </Item>)\r\n }\r\n </Menu>\r\n );\r\n\r\n const controlConfig = [\r\n {type: 'suoxiao', event: 'min'},\r\n {\r\n type: 'guanbixiao',\r\n event: 'close',\r\n beforeEvent: (item) => {\r\n return ModalWraper.confirm({\r\n className: 'tplus-confirm-modal',\r\n title: '关闭提示',\r\n content: '您确定要关闭应用吗?',\r\n async onOk() {\r\n Loading.show({\r\n className: 'close-app-loading',\r\n node: <div className='close-app-spin'>\r\n <Spin scale={1.2} type='shape' visible />\r\n <h1>应用关闭中...</h1>\r\n </div>,\r\n delay: false\r\n });\r\n context.actionHook.actionChange('close-app');\r\n try {\r\n await User.logout(() => {\r\n // 需要为500ms 时间短可能会不能正常注销清理\r\n setTimeout(() => { nativeMs.doWindow(item.event) }, 500); \r\n });\r\n } catch (err) {\r\n User.clear(); localStore.remove('user');\r\n setTimeout(() => { nativeMs.doWindow(item.event) }, 500);\r\n }\r\n }\r\n })\r\n }\r\n },\r\n ];\r\n\r\n const splitUser = (value) => {\r\n const regEmail = new RegExp('^[A-Za-zd0-9]+([-_.][A-Za-zd0-9]+)*@([A-Za-zd0-9]+[-.])+[A-Za-zd]{2,5}$');\r\n const isEmail = regEmail.test(value);\r\n\r\n if (isEmail) {\r\n return value.split('@')[0];\r\n }\r\n return value;\r\n }\r\n\r\n const setInventoryFocus = () => {\r\n const { isHorizontalPad } = platform || {};\r\n if (!!isHorizontalPad) return;\r\n let doms = document.getElementsByClassName('app hot-key-focus-container');\r\n let input = document.getElementById('productPoint');\r\n if (input) setTimeout(() => { if (doms && doms.length > 0) { console.log('headContent--商品焦点==Focus==');input.focus() } }, 300)\r\n }\r\n\r\n const clickTheme = (isShow) => {\r\n setThemeVisible(isShow)\r\n }\r\n\r\n const userName = PosInitData('UserName');\r\n const overlayClassName = `_portal-header-dropdown ${!isPortal ? 'inside-header' : ''}`;\r\n const moreInfoNode = <div className='pos-more-info-container'>\r\n <h1 className='business-name'>{businessName}</h1>\r\n <h1 className='store-code'>{posCode}</h1>\r\n </div>\r\n\r\n const headControlNode = <div className=\"head-content-control\">\r\n {controlConfig.map(v => <Ticon\r\n type={v.type}\r\n key={v.type}\r\n onClick={() => {\r\n if (nativeMs) {\r\n const {beforeEvent} = v;\r\n if (beforeEvent) {\r\n return beforeEvent(v);\r\n }\r\n nativeMs.doWindow(v.event)\r\n if (typeof setInventoryFocus == 'function') {\r\n setInventoryFocus()\r\n }\r\n }\r\n }}\r\n />)}\r\n </div>\r\n\r\n if (platform.isVerticalTouch) return verticalHeadContent({ style, releaseVersion, releaseDate,\r\n time, dateFormat, logo, HeadTime, headControlNode, location, history, clickTheme, themeVisible, isPortal, isLogin });\r\n\r\n return (<div style={{display: 'inline-block', width: '100%', height: '100%', ...style}} className='head-content' data-release={`${releaseVersion} ${releaseDate}`}>\r\n <div className=\"head-content-left\">\r\n {!!logo && <div className='business-logo' onClick={()=>{history.replace('/')}}>{logo}</div>}\r\n {!!storeName && <Tooltip trigger=\"click\" placement=\"bottomRight\" title={moreInfoNode} color={'#fff'} overlayClassName='head-business-tip'>\r\n <div className='store-name'>{storeName}<i className='header-triangle-down' /></div>\r\n </Tooltip>}\r\n {/* <OnLineStatus networkStatus={networkStatus}/> */}\r\n <OnLineStatusToggle isShowUploadBtnsByRouter={isShowUploadBtnsByRouter} isResetNetWorkTheme={isResetNetWorkTheme} isOfflineCash={hasUseOffline} isPlaceOrderPage={isPlaceOrderPage}/>\r\n {hasUseOffline && isShowUploadBtnsByRouter && <RetailUpload />}\r\n {hasUseOffline && isShowUploadBtnsByRouter && <RetailDownload />}\r\n </div>\r\n {isElectron && headControlNode}\r\n <div className=\"head-content-right\">\r\n {!isLogin && <Ticon icon=\"huanfu\" className={`theme-icon ${!isPortal ? 'pos-page' : ''}` } onClick={() => {clickTheme(true)}}/>}\r\n {!isLogin && !!userName && <Dropdown\r\n overlayClassName={overlayClassName}\r\n trigger={['click']}\r\n overlay={menus}\r\n placement=\"bottomRight\"\r\n arrow\r\n >\r\n <div className='header-info-render-content' onClick={e => e.preventDefault()}>\r\n <div className='store-info-item'>\r\n <p className='biller'>开单员:<span>{splitUser(userName)}</span></p>\r\n </div>\r\n <i className='header-triangle-down'/>\r\n </div>\r\n </Dropdown>}\r\n {!isLogin && <div className='store-info-item'>{solt}</div>}\r\n <HeadTime time={time} dateFormat={dateFormat}/>\r\n </div>\r\n <ThemeModal\r\n visible={themeVisible}\r\n isVertical={platform.isVerticalTouch}\r\n isPortal={isPortal}\r\n closeFn={(isShow) => clickTheme(isShow)}\r\n />\r\n </div>);\r\n}\r\n\r\nHeadContent.contextTypes = {\r\n actionHook: PropTypes.object,\r\n}\r\n"]}
1
+ {"version":3,"sources":["tplus-portaltouch/components/header/headContent.js"],"names":["HeadContent","Item","Menu","defaultFromat","t","i18n","getFixedT","UPLOAD_BASE_PATH","NETWORK_THEME_PATH","PLACE_ORDER_PATH","weakRemindNum","WEAK_STANDARD_NUM","HeadTime","props","time","dateFormat","unMount","timeStr","Date","now","currentTime","setCurrentTime","timeout","refreshDate","setTimeout","clearTimeout","split","date_YMD","date_HMS","platform","isVerticalTouch","OnLineStatus","networkStatus","networkCheckStore","stores","networkState","networkOn","iconName","switchNetwork","checked","event","switchOnLine","lineIcon","marginRight","getIsOffNetWork","OnLineStatusToggle","isShowUploadBtnsByRouter","isResetNetWorkTheme","isOfflineCash","isPlaceOrderPage","offlineSys","voucherStore","isOnLine","hasUseOffline","otherOfflineStatus","isHorizontalSunMi","weakConfirm","document","querySelector","getDataIsOffline","ModalWraper","confirm","className","title","content","onOk","setOffLine","switchStatus","Message","tip","getVoucherDataStatus","data","getVoucherData","Idmember","RetailDetails","length","status","playStatus","setIsOffline","clearVoucherData","color","OFFLINE_POINT_DESC","RetailUpload","isModalVisible","setIsModalVisible","isUpLoading","setIsUpLoading","refModal","showModal","current","fetch","handleOk","isUpLoad","uploadRetail","error","handleCancel","UnLoadNum","retailNotUploadNumber","display","RetailDownload","isDownload","setIsDownload","downStr","setDownStr","handleDownLoad","downloadCatcherData","e","percent","result","success","DownloadBtn","releaseDate","releaseVersion","__RELEASESDATE__","__BUILDVERSION__","context","isElectron","env","businessName","storeName","posCode","logo","style","history","solt","isPortal","isLogin","menu","onClick","location","themeVisible","setThemeVisible","window","href","indexOf","setIsShowUploadBtnsByRouter","pathname","setIsResetNetWorkTheme","setIsPlaceOrderPage","listen","route","menuProps","menus","map","item","i","key","icon","controlConfig","type","beforeEvent","Loading","show","node","delay","actionHook","actionChange","User","logout","nativeMs","doWindow","clear","localStore","remove","splitUser","value","regEmail","RegExp","isEmail","test","setInventoryFocus","isHorizontalPad","doms","getElementsByClassName","input","getElementById","console","log","focus","clickTheme","isShow","userName","overlayClassName","moreInfoNode","headControlNode","v","width","height","replace","preventDefault","contextTypes","PropTypes","object"],"mappings":"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","file":"headContent.js","sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\r\nimport { Ticon, ModalWraper, Loading, Spin, Message } from 'tplus-components-touch';\r\nimport { Tooltip, Menu, Dropdown, Switch, Popover } from 'antd';\r\nimport PropTypes from 'prop-types';\r\nimport { formatDate } from '../../utils';\r\nimport { env, nativeMs, localStore, i18n } from 'mutants-microfx';\r\nimport { PosInitData } from 'tplus-poslogin';\r\nimport { User } from 'tplus-api';\r\nimport { verticalHeadTime, verticalHeadContent } from './vertical-touch';\r\nimport { platform } from 'mutants-util';\r\nimport ThemeModal from \"./themeModal\";\r\nimport UploadOrder from \"./uploadList\";\r\nimport {stores} from 'mutants-microfx';\r\nimport {observer} from 'mobx-react';\r\nimport {OFFLINE_POINT_DESC} from './offlinePointDesc';\r\nconst { Item } = Menu;\r\nconst defaultFromat = 'yyyy-MM-dd hh:mm:ss';\r\nconst t = i18n.getFixedT(null, 'newretail');\r\nconst UPLOAD_BASE_PATH = '/login';\r\nconst NETWORK_THEME_PATH = \"/\";\r\nconst PLACE_ORDER_PATH = \"/RE/RE01\";\r\nlet weakRemindNum = 0;// 弱网提示初始值\r\nconst WEAK_STANDARD_NUM = 3; // 弱网提示的次数上限\r\n\r\n//头部时间\r\nfunction HeadTime(props) {\r\n const { time, dateFormat } = props;\r\n let unMount = false;\r\n const timeStr = typeof time === 'number' ? formatDate(time, dateFormat) : time;\r\n const [currentTime, setCurrentTime] = useState(formatDate(Date.now(), dateFormat));\r\n let timeout;\r\n function refreshDate() {\r\n if (time) return;\r\n !unMount && setCurrentTime(formatDate(Date.now(), dateFormat));\r\n timeout = setTimeout(refreshDate, 1000);\r\n }\r\n useEffect(() => {\r\n refreshDate();\r\n return () => {\r\n unMount = true;\r\n clearTimeout(timeout);\r\n };\r\n }, [currentTime]);\r\n const [date_YMD, date_HMS] = currentTime.split(' ') || [];\r\n\r\n if (platform.isVerticalTouch) return verticalHeadTime({ date_HMS });\r\n return (\r\n <div className='time'>\r\n {timeStr ?\r\n <div>{timeStr}</div> :\r\n <div>\r\n {date_YMD}\r\n <span>{date_HMS}</span>\r\n </div>\r\n }\r\n </div>\r\n );\r\n}\r\n\r\n//头部联网状态\r\nconst OnLineStatus = observer((props)=>{\r\n const { networkStatus } = props;\r\n const { networkCheckStore } = stores;\r\n const networkState = networkCheckStore.networkState;\r\n let networkOn = true;\r\n let iconName = 'WiFi';\r\n switch (networkState) {\r\n case '联网':\r\n iconName = 'WiFi';\r\n break;\r\n case '弱网':\r\n iconName = 'ruowifi';\r\n break;\r\n case '离线':\r\n networkOn = false;\r\n iconName = 'wuwangluo';\r\n break;\r\n default:\r\n break;\r\n }\r\n const switchNetwork = (checked ,event)=>{\r\n networkCheckStore.switchOnLine(checked);\r\n }\r\n const lineIcon = <Ticon\r\n icon={iconName}\r\n className=\"network-state-icon\"\r\n />\r\n return (\r\n <div><span className='network-status' style={{marginRight:'10px'}}>{networkStatus || lineIcon}</span><span><Switch checkedChildren=\"开启\" unCheckedChildren=\"关闭\" defaultChecked checked={networkOn} onChange={switchNetwork}/></span></div>\r\n );\r\n});\r\nfunction getIsOffNetWork() {\r\n const { networkCheckStore } = stores;\r\n return networkCheckStore.networkState === '离线';\r\n}\r\n//头部联网状态\r\nconst OnLineStatusToggle = observer(props => {\r\n const { isShowUploadBtnsByRouter, isResetNetWorkTheme, isOfflineCash, isPlaceOrderPage } = props;\r\n const { networkCheckStore, offlineSys, voucherStore } = stores;\r\n const networkState = networkCheckStore.networkState;\r\n let isOnLine = networkCheckStore.isOnLine;\r\n const hasUseOffline = isOfflineCash && !platform.otherOfflineStatus; //是否允许离线\r\n const { isHorizontalSunMi } = platform || {};\r\n let iconName = 'WiFi';\r\n if (hasUseOffline) {\r\n switch (networkState) {\r\n case '联网':\r\n iconName = 'WiFi';\r\n break;\r\n case '弱网':\r\n iconName = 'ruowifi';\r\n break;\r\n case '离线':\r\n iconName = 'wuwangluo';\r\n break;\r\n default:\r\n break;\r\n }\r\n if (networkState === '离线' && isOnLine && !document.querySelector('.tplus-off-line-modal')) {\r\n ModalWraper.confirm({\r\n className: 'tplus-off-line-modal',\r\n title: t('提示'),\r\n content: t('网络已断,是否切换到离线收银模式?'),\r\n onOk: () => {\r\n setOffLine(true);\r\n }\r\n });\r\n }\r\n function weakConfirm() {\r\n if (!isOnLine) { return; }// 离线不提示\r\n if (document.querySelector('.tplus-weak-network-modal')) { return; }// 不重复弹窗\r\n if (networkState !== '弱网') { return; } // 非弱网状态不提示\r\n if (weakRemindNum >= WEAK_STANDARD_NUM) { return; } // 提示大于三次不再提示\r\n if (!offlineSys.getDataIsOffline) { return; }// 数据未下载完不提示\r\n if (document.querySelector('.isRetailUpLoading')) { return; }// 上传中不提示\r\n if (document.querySelector('.isRetailDownLoading')) { return; }// 下载中不提示\r\n if (document.querySelector('.tplus-loading')) { return; }// 全屏loading不提示\r\n weakRemindNum ++;\r\n ModalWraper.confirm({\r\n className: 'tplus-weak-network-modal',\r\n title: t('提示'),\r\n content: t('当前网络不好,是否切换到离线?'),\r\n onOk: () => {\r\n setOffLine(true);\r\n }\r\n });\r\n }\r\n weakConfirm();\r\n }\r\n function switchStatus() {\r\n if (networkState === '离线' && !isOnLine) {\r\n Message.tip('当前无网络,无法切换为在线状态');\r\n return;\r\n }\r\n ModalWraper.confirm({\r\n title: t('提示'),\r\n content: t(`确定要切换为${isOnLine ? '离' : '在'}线环境吗?`),\r\n onOk: () => {\r\n setOffLine(isOnLine);\r\n }\r\n });\r\n }\r\n\r\n function getVoucherDataStatus() {\r\n let data = voucherStore.getVoucherData();\r\n const { Idmember, RetailDetails } = data || {};\r\n if (!!Idmember || (RetailDetails && RetailDetails.length > 0)) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function setOffLine(status) {\r\n if (isPlaceOrderPage && getVoucherDataStatus()) {\r\n ModalWraper.confirm({\r\n title: t('提示'),\r\n content: t(`当前为开单界面,切换到${status ? '离' : '在'}线会清除当前数据,确定要切换吗?`),\r\n onOk: () => {\r\n playStatus(status);\r\n }\r\n });\r\n } else {\r\n playStatus(status);\r\n }\r\n }\r\n\r\n function playStatus(status) {\r\n // status 为 true 是在线切离线\r\n if (status) {\r\n if (!offlineSys.getDataIsOffline() || document.querySelector('.isRetailDownLoading')) {\r\n Message.tip('数据还未下载完,无法切换为离线');\r\n return;\r\n }\r\n }\r\n offlineSys.setIsOffline(status);\r\n if (isPlaceOrderPage) {\r\n voucherStore.clearVoucherData();\r\n }\r\n }\r\n return (\r\n <div className='on-off-wrap'>\r\n <div className='status-square'>\r\n <span className=\"status-tog-btn\" style={{color: `${isResetNetWorkTheme ? '#fff' : ''}`}}>{<Ticon icon={iconName}/>}</span>\r\n </div>\r\n {\r\n hasUseOffline && isShowUploadBtnsByRouter && <div className={`status-square c-pointer online-status-bg ${isOnLine || isResetNetWorkTheme ? '' : 'off-line'}`}>\r\n <span className=\"status-tog-btn\" onClick={switchStatus}>\r\n <span>{isOnLine ? '在线' : '离线'}</span>\r\n <span>{<Ticon icon=\"zaixianlixian\" className=\"ts-14\" />}</span>\r\n </span>\r\n <Popover placement=\"bottom\" overlayClassName={'offline-popver'} content={<pre>{OFFLINE_POINT_DESC}</pre>} trigger={isHorizontalSunMi?'click':'hover'}>\r\n <span className=\"status-tog-btn\">{<Ticon icon=\"tanhao1\" />}</span>\r\n </Popover>\r\n </div>\r\n }\r\n </div>\r\n );\r\n});\r\n\r\n//零售单上传\r\nfunction RetailUpload() {\r\n const [isModalVisible, setIsModalVisible] = useState(false);\r\n const [isUpLoading, setIsUpLoading] = useState(false);\r\n const refModal = useRef(null);\r\n const showModal = async () => {\r\n refModal && refModal.current.fetch();\r\n setIsModalVisible(true);\r\n };\r\n\r\n const handleOk = async (isUpLoad = false) => {\r\n setIsModalVisible(false);\r\n if (getIsOffNetWork()) {\r\n Message.tip('已断网,不可以上传单据');\r\n return;\r\n }\r\n if (!isUpLoad) {\r\n Message.tip('暂无可以上传的单据');\r\n return;\r\n }\r\n if (isUpLoading) {\r\n Message.tip('零售单正在上传……');\r\n return;\r\n }\r\n setIsUpLoading(true);\r\n try {\r\n await stores.offlineSys.uploadRetail();\r\n // Message.success('零售单上传成功');\r\n } catch (err) {\r\n Message.error('上传失败');\r\n }\r\n setIsUpLoading(false);\r\n };\r\n\r\n const handleCancel = () => {\r\n setIsModalVisible(false);\r\n };\r\n return (\r\n <div className='upload-retail'>\r\n <div className=\"status-square online-status-bg c-pointer\" onClick={showModal}>\r\n <span className=\"status-tog-btn\">\r\n <span className={`${isUpLoading ? 'isRetailUpLoading' : ''}`}>{<Ticon icon=\"shangchuan\"/>}</span>\r\n <span className=\"fast-upload-btn\">上传零售单</span>\r\n </span>\r\n </div>\r\n <UnLoadNum/>\r\n <UploadOrder ref={refModal} visible={isModalVisible} handleOk={handleOk} handleCancel={handleCancel}/>\r\n </div>\r\n );\r\n}\r\n// 零售单未上传的数量\r\nconst UnLoadNum = observer(() => {\r\n const {offlineSys: {retailNotUploadNumber} } = stores;\r\n return <span style={{display: retailNotUploadNumber > 0 ? 'inherit' : 'none'}} className=\"up-count-btn\">{retailNotUploadNumber > 99 ? '99+' : retailNotUploadNumber}</span>\r\n});\r\n//零售单下载\r\nfunction RetailDownload() {\r\n const {offlineSys} = stores;\r\n const [isDownload, setIsDownload] = useState(false);\r\n const [downStr, setDownStr] = useState('下载数据');\r\n const handleDownLoad = async () => {\r\n if (getIsOffNetWork()) {\r\n Message.tip('已断网,不可以下载单据');\r\n return;\r\n }\r\n if (isDownload) {\r\n Message.tip('下载中');\r\n return;\r\n }\r\n setDownStr('0 %');\r\n setIsDownload(true);\r\n Message.tip('下载中');\r\n try {\r\n let result = await offlineSys.downloadCatcherData(e => {\r\n setDownStr(e.percent + ' %');\r\n });\r\n if (result) {\r\n Message.success(`数据下载成功`);\r\n } else {\r\n Message.error(`数据下载失败`);\r\n }\r\n } catch(err){\r\n Message.error('数据下载失败');\r\n }\r\n setDownStr('下载数据');\r\n setIsDownload(false);\r\n };\r\n return (\r\n <div className='download-retail'>\r\n <DownloadBtn handleDownLoad={handleDownLoad} isDownload={isDownload} downStr={downStr}/>\r\n </div>\r\n );\r\n};\r\n// 下载按钮\r\nconst DownloadBtn = observer((props) => {\r\n const { downStr, isDownload, handleDownLoad} = props;\r\n return (\r\n <div className={`status-square online-status-bg c-pointer ${getIsOffNetWork() ? 'is-grey' : ''}`} onClick={handleDownLoad}>\r\n <span className=\"status-tog-btn\">\r\n <span className={`${isDownload ? 'isRetailDownLoading' : ''}`}>{<Ticon icon=\"xiazaishuju\"/>}</span>\r\n <span className=\"fast-upload-btn\">{downStr}</span>\r\n </span>\r\n </div>\r\n )\r\n});\r\nlet releaseDate, releaseVersion;\r\ntry {\r\n releaseDate = __RELEASESDATE__;\r\n releaseVersion = __BUILDVERSION__;\r\n} catch (error) {\r\n releaseDate = '';\r\n releaseVersion = '';\r\n}\r\nexport default function HeadContent(props, context) {\r\n const isElectron = (env || {}).platform === 'electron';\r\n const {businessName = '', storeName = '', posCode, logo, networkStatus, style = {}, history,\r\n dateFormat = defaultFromat, solt, time, isPortal, isLogin, menu = [], onClick, location} = props;\r\n const [themeVisible, setThemeVisible] = useState(false);\r\n const [isShowUploadBtnsByRouter, setIsShowUploadBtnsByRouter] = useState(window.location.href.indexOf(UPLOAD_BASE_PATH) < 0);\r\n const [isResetNetWorkTheme, setIsResetNetWorkTheme] = useState(window.location.pathname === NETWORK_THEME_PATH);\r\n const [isPlaceOrderPage, setIsPlaceOrderPage] = useState(window.location.href.indexOf(PLACE_ORDER_PATH) > 0);\r\n props.history.listen(route => {\r\n setIsResetNetWorkTheme(route.pathname === NETWORK_THEME_PATH);\r\n setIsShowUploadBtnsByRouter(route.pathname.indexOf(UPLOAD_BASE_PATH) < 0);\r\n setIsPlaceOrderPage(route.pathname.indexOf(PLACE_ORDER_PATH) > -1)\r\n });\r\n const hasUseOffline = (PosInitData('IsOfflineCash') === \"1\") && !platform.otherOfflineStatus; //是否允许离线\r\n const menuProps = {onClick};\r\n const menus = (\r\n <Menu {...menuProps}>\r\n {menu.map((item, i) =>\r\n <Item key={item.key || i}>\r\n {item.icon && <Ticon icon={item.icon}/>}\r\n <span>{item.title}</span>\r\n </Item>)\r\n }\r\n </Menu>\r\n );\r\n\r\n const controlConfig = [\r\n {type: 'suoxiao', event: 'min'},\r\n {\r\n type: 'guanbixiao',\r\n event: 'close',\r\n beforeEvent: (item) => {\r\n return ModalWraper.confirm({\r\n className: 'tplus-confirm-modal',\r\n title: '关闭提示',\r\n content: '您确定要关闭应用吗?',\r\n async onOk() {\r\n Loading.show({\r\n className: 'close-app-loading',\r\n node: <div className='close-app-spin'>\r\n <Spin scale={1.2} type='shape' visible />\r\n <h1>应用关闭中...</h1>\r\n </div>,\r\n delay: false\r\n });\r\n context.actionHook.actionChange('close-app');\r\n try {\r\n await User.logout(() => {\r\n // 需要为500ms 时间短可能会不能正常注销清理\r\n setTimeout(() => { nativeMs.doWindow(item.event) }, 500); \r\n });\r\n } catch (err) {\r\n User.clear(); localStore.remove('user');\r\n setTimeout(() => { nativeMs.doWindow(item.event) }, 500);\r\n }\r\n }\r\n })\r\n }\r\n },\r\n ];\r\n\r\n const splitUser = (value) => {\r\n const regEmail = new RegExp('^[A-Za-zd0-9]+([-_.][A-Za-zd0-9]+)*@([A-Za-zd0-9]+[-.])+[A-Za-zd]{2,5}$');\r\n const isEmail = regEmail.test(value);\r\n\r\n if (isEmail) {\r\n return value.split('@')[0];\r\n }\r\n return value;\r\n }\r\n\r\n const setInventoryFocus = () => {\r\n const { isHorizontalPad } = platform || {};\r\n if (!!isHorizontalPad) return;\r\n let doms = document.getElementsByClassName('app hot-key-focus-container');\r\n let input = document.getElementById('productPoint');\r\n if (input) setTimeout(() => { if (doms && doms.length > 0) { console.log('headContent--商品焦点==Focus==');input.focus() } }, 300)\r\n }\r\n\r\n const clickTheme = (isShow) => {\r\n setThemeVisible(isShow)\r\n }\r\n\r\n const userName = PosInitData('UserName');\r\n const overlayClassName = `_portal-header-dropdown ${!isPortal ? 'inside-header' : ''}`;\r\n const moreInfoNode = <div className='pos-more-info-container'>\r\n <h1 className='business-name'>{businessName}</h1>\r\n <h1 className='store-code'>{posCode}</h1>\r\n </div>\r\n\r\n const headControlNode = <div className=\"head-content-control\">\r\n {controlConfig.map(v => <Ticon\r\n type={v.type}\r\n key={v.type}\r\n onClick={() => {\r\n if (nativeMs) {\r\n const {beforeEvent} = v;\r\n if (beforeEvent) {\r\n return beforeEvent(v);\r\n }\r\n nativeMs.doWindow(v.event)\r\n if (typeof setInventoryFocus == 'function') {\r\n setInventoryFocus()\r\n }\r\n }\r\n }}\r\n />)}\r\n </div>\r\n\r\n if (platform.isVerticalTouch) return verticalHeadContent({ style, releaseVersion, releaseDate,\r\n time, dateFormat, logo, HeadTime, headControlNode, location, history, clickTheme, themeVisible, isPortal, isLogin });\r\n\r\n return (<div style={{display: 'inline-block', width: '100%', height: '100%', ...style}} className='head-content' data-release={`${releaseVersion} ${releaseDate}`}>\r\n <div className=\"head-content-left\">\r\n {!!logo && <div className='business-logo' onClick={()=>{history.replace('/')}}>{logo}</div>}\r\n {!!storeName && <Tooltip trigger=\"click\" placement=\"bottomRight\" title={moreInfoNode} color={'#fff'} overlayClassName='head-business-tip'>\r\n <div className='store-name'>{storeName}<i className='header-triangle-down' /></div>\r\n </Tooltip>}\r\n {/* <OnLineStatus networkStatus={networkStatus}/> */}\r\n <OnLineStatusToggle isShowUploadBtnsByRouter={isShowUploadBtnsByRouter} isResetNetWorkTheme={isResetNetWorkTheme} isOfflineCash={hasUseOffline} isPlaceOrderPage={isPlaceOrderPage}/>\r\n {hasUseOffline && isShowUploadBtnsByRouter && <RetailUpload />}\r\n {hasUseOffline && isShowUploadBtnsByRouter && <RetailDownload />}\r\n </div>\r\n {isElectron && headControlNode}\r\n <div className=\"head-content-right\">\r\n {!isLogin && <Ticon icon=\"huanfu\" className={`theme-icon ${!isPortal ? 'pos-page' : ''}` } onClick={() => {clickTheme(true)}}/>}\r\n {!isLogin && !!userName && <Dropdown\r\n overlayClassName={overlayClassName}\r\n trigger={['click']}\r\n overlay={menus}\r\n placement=\"bottomRight\"\r\n arrow\r\n >\r\n <div className='header-info-render-content' onClick={e => e.preventDefault()}>\r\n <div className='store-info-item'>\r\n <p className='biller'>开单员:<span>{splitUser(userName)}</span></p>\r\n </div>\r\n <i className='header-triangle-down'/>\r\n </div>\r\n </Dropdown>}\r\n {!isLogin && <div className='store-info-item'>{solt}</div>}\r\n <HeadTime time={time} dateFormat={dateFormat}/>\r\n </div>\r\n <ThemeModal\r\n visible={themeVisible}\r\n isVertical={platform.isVerticalTouch}\r\n isPortal={isPortal}\r\n closeFn={(isShow) => clickTheme(isShow)}\r\n />\r\n </div>);\r\n}\r\n\r\nHeadContent.contextTypes = {\r\n actionHook: PropTypes.object,\r\n}\r\n"]}
@@ -204,7 +204,7 @@ var MainContainer = (0, _mobxReact.observer)(_class = (_temp = _class2 = functio
204
204
  isVerticalTouch = _ref6.isVerticalTouch;
205
205
 
206
206
  var theme = _mutantsMicrofx.stores.portalStore.themeStore;
207
- var defualtImage = isVerticalTouch === true ? _this.sys_parms.tinified_logo_bc : (!hsy_s && isPortal || theme === 'dark' && !isLogin ? _this.sys_parms.protal_chanjet_logo_bc : _this.sys_parms.chanjet_logo_bc) + '?v=1';
207
+ var defualtImage = isVerticalTouch === true ? _this.sys_parms.tinified_logo_bc : !hsy_s && isPortal || theme === 'dark' && !isLogin ? _this.sys_parms.protal_chanjet_logo_bc : _this.sys_parms.chanjet_logo_bc;
208
208
  if (hsy_s === true) {
209
209
  return _react2.default.createElement(
210
210
  'div',
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-portaltouch/containers/Main/index.js"],"names":["Main","hasElectron","env","platform","constant","electron","window","rx$","MainContainer","observer","props","currentFocus","sys_parms","tinified_logo_bc","ossAliyuncsFileURL","protal_chanjet_logo_bc","chanjet_logo_bc","initWebFrameZoom","webFrame","value","localStore","get","setZoomFactor","parseFloat","doDeeplinkingUrl","ipcRenderer","on","event","ret","params","console","log","stores","user","orgId","userId","param","split","reduce","accumulator","current","key","cloudUserId","User","logout","changeLogoSubject","subject","Subject","changeLogo","subscribe","next","v","setLogo","changeHsySubject","changeHsy","setHsy","addHotKeyChangeLister","document","addEventListener","registerHotKey","removeHotKeyChangeLister","removeEventListener","back","fn","setState","hsy_s","hsy_f","store","logoUrl","logo","logoNode","url","isPortal","isLogin","state","isVerticalTouch","theme","portalStore","themeStore","defualtImage","hotKeyInjectOrEject","type","hotKeyAction","registerKeys","allKeys","hotKey","hotKeyConfig","forEach","keyboard","index","nativeMs","onIpcRendererGlobalShortcut","hotKeyActionHandle","blurButton","target","nodeName","blur","isSetHotKey","hotKeyCreate","observerCallback","observerDom","pressed","clickBefore","activeElement","filter","srcElement","tagName","className","indexOf","undefined","attributes","childList","subtree","attributeFilter","register","operationKeys","esc","enter","modals","querySelectorAll","modal","style","display","drawers","modalsAndDrawers","sort","dom1","dom2","style1","getComputedStyle","style2","zIndex","visibleDom","length","$","clearFocus","setFocus","getFocusId","querySelector","find","handle","toggleKeyCode","message","bind","keys","i","unbind","Message","info","action","handleInfoRender","solt","onCollapse","collapsed","menuOnClick","selectedKeys","handleClose","Keyboard","close","handleOk","count","modifyPassStore","modifyPassWord","headMenuSelect","footer","text","closable","map","btn","loading","modalRouter","hide","offlineSys","shouldInOffline","show","title","width","modalType","onHide","destroyOnClose","history","push","portalStores","posLoginStore","savePosCode","isAutoTest","location","search","isShowFourTab","screen","isHorizontalPad","storeUtil","isHorizontalSunMi","isHorizontalSunMi_FuPing","isMobileEnvironment","infoRender","headHook","addClass","id","removeClass","currentId","actionHook","actionFrom","actionChange","body","classList","add","ModalWraper","confirm","content","cancelable","onOk","onCancel","unsubscribe","portalHead","loginHead","retailOrder","pathname","storeInfo","options","isRetailOrder","headProps","businessName","storeName","dateFormat","menu","icon","onClick","orgName","posCode","posIsLogin","hideAll","classNames","layoutClassName","join","height","match","isExact","routes","Component","childContextTypes","PropTypes","func","object","React","cloneElement"],"mappings":"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","file":"index.js","sourcesContent":["import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { observer } from 'mobx-react';\r\nimport { Button } from 'antd';\r\nimport { history, Switch, stores, env, nativeMs, localStore } from 'mutants-microfx';\r\nimport { Ticon, Layout, Keyboard, ModalWraper, Message, hotKey } from 'tplus-components-touch';\r\nimport { platform, localStore as storeUtil } from 'mutants-util';\r\nimport { User } from 'tplus-api';\r\nimport { Subject } from 'rxjs';\r\nimport { Redirect } from 'react-router';\r\nimport Header from '../../components/header';\r\nimport PortalPageBC from '../../pages/Portalbc';\r\nimport portalStores from '../../stores';\r\nimport { closeWebPage, getQueryString, operationKeys } from '../../utils/index';\r\n\r\nconst hasElectron = (env.platform === env.constant.platform.electron);\r\nwindow.rx$ = {};\r\n\r\n@observer\r\nclass MainContainer extends Component {\r\n\r\n currentFocus = null;\r\n\r\n sys_parms = {\r\n tinified_logo_bc: `${window.ossAliyuncsFileURL}/tinified/logo-bc.png`,\r\n protal_chanjet_logo_bc: `${window.ossAliyuncsFileURL}/protal-chanjet-logo-bc.png`,\r\n chanjet_logo_bc: `${window.ossAliyuncsFileURL}/chanjet-logo-bc.png`,\r\n }\r\n\r\n constructor(props) {\r\n super(props);\r\n this.hasElectron = hasElectron;\r\n this.state = {\r\n hsy_s: false,\r\n hsy_f: null\r\n };\r\n portalStores.posLoginStore.savePosCode();\r\n this.electron = nativeMs && nativeMs.get('electron');\r\n this.isAutoTest = getQueryString(location.search, 'at');\r\n this.isShowFourTab = this.hasElectron && window.screen.width < 1024 ? true : false;\r\n //针对800*600分辨率下,页面显示不全的做一下处理。\r\n if (this.isShowFourTab == true) this.initWebFrameZoom();\r\n\r\n const isHorizontalPad = storeUtil.get('isHorizontalPad')// 是否在PAD\r\n const isHorizontalSunMi = storeUtil.get('isHorizontalSunMi'); //是否在商米(SunMi)\r\n const isHorizontalSunMi_FuPing = storeUtil.get('isHorizontalSunMi_FuPing'); //是否在商米(SunMi)\r\n\r\n this.isHorizontalSunMi_FuPing = !!isHorizontalSunMi_FuPing;\r\n this.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi || !!isHorizontalSunMi_FuPing;\r\n }\r\n static childContextTypes = {\r\n infoRender: PropTypes.func,\r\n headHook: PropTypes.object,\r\n actionHook: PropTypes.object,\r\n }\r\n\r\n initWebFrameZoom = () => {\r\n let webFrame = this.electron ? this.electron.webFrame : null;\r\n let value = localStore.get('webFrameZoomValue') || '0.7';\r\n if (webFrame) webFrame.setZoomFactor(parseFloat(value));\r\n }\r\n getChildContext() {\r\n return {\r\n infoRender: this.handleInfoRender,\r\n headHook: {\r\n addClass: (id, key) => {\r\n this.setState(state => ({\r\n [key]: [...(state[key] || []), id],\r\n }));\r\n },\r\n removeClass: (id, key) => {\r\n this.setState(state => ({\r\n [key]: state[key].filter(currentId => currentId !== id),\r\n }));\r\n }\r\n },\r\n actionHook: {\r\n actionFrom: this.actionFrom,\r\n actionChange: (value) => {\r\n this.actionFrom = value;\r\n }\r\n },\r\n };\r\n }\r\n\r\n // 内置默认\r\n // keys = ['esc', 'enter', 'ctrl+f1', ...Object.keys(hotKey.hotKeyConfig)];\r\n\r\n // 解决从url地址唤醒exe,不同账号的处理问题。\r\n doDeeplinkingUrl = () => {\r\n if (this.hasElectron === false) return;\r\n let { ipcRenderer } = this.electron || {ipcRenderer:null};\r\n ipcRenderer && ipcRenderer.on(\"asynchronous-deeplinkingUrl\", (event, ret, params) => {\r\n if (ret) {\r\n console.log('deeplinkingUrl:' + ret)\r\n const {orgId, userId} = stores.user || {};\r\n if (!orgId || !userId) return;\r\n const param = ret.split('&').reduce((accumulator, current) => {\r\n if (!current) return accumulator;\r\n const [key, value] = current.split('=') || [];\r\n accumulator[key] = value;\r\n return accumulator;\r\n }, {});\r\n console.log(orgId, userId, param)\r\n if (param.orgId !== orgId || param.cloudUserId !== userId) {\r\n User.logout();\r\n }\r\n }\r\n })\r\n }\r\n\r\n componentWillMount() {\r\n this.changeLogoSubject();\r\n this.changeHsySubject();\r\n const { isVerticalTouch } = platform || {};\r\n if (isVerticalTouch === true) {\r\n document.body.classList.add('vertical-touch-platform');\r\n }\r\n }\r\n\r\n changeLogoSubject = () => {\r\n const subject = new Subject();\r\n rx$.changeLogo = subject;\r\n\r\n subject\r\n .subscribe({\r\n next: (v) => this.setLogo(v)\r\n });\r\n }\r\n\r\n changeHsySubject = () => {\r\n const subject = new Subject();\r\n rx$.changeHsy = subject;\r\n\r\n subject\r\n .subscribe({\r\n next: (v) => this.setHsy(v)\r\n });\r\n }\r\n\r\n componentDidMount() {\r\n this.registerHotKey();\r\n this.addHotKeyChangeLister();\r\n rx$.changeLogo.next();\r\n document.body.addEventListener('focus', this.blurButton, true)\r\n this.doDeeplinkingUrl();\r\n\r\n if (this.hasElectron === true) {\r\n document.body.classList.add('electron-env');\r\n } else {\r\n if (this.isAutoTest || this.isMobileEnvironment) return; //自动化测试不弹窗\r\n ModalWraper.confirm({\r\n className: 'tplus-confirm-modal',\r\n title: \"温馨提示\",\r\n content: '智+新零售POS端不允许浏览器直接访问,请从智+产品中下载安装客户端程序使用!',\r\n cancelable:false,\r\n onOk() {\r\n closeWebPage();\r\n },\r\n onCancel(){\r\n closeWebPage();\r\n }\r\n });\r\n }\r\n }\r\n addHotKeyChangeLister = () => {\r\n document.addEventListener(\"RESET_USER_STORE\",this.registerHotKey);\r\n }\r\n removeHotKeyChangeLister = () => {\r\n document.removeEventListener(\"RESET_USER_STORE\",this.registerHotKey);\r\n }\r\n\r\n componentWillUnmount() {\r\n rx$.changeLogo.unsubscribe();\r\n rx$.changeHsy.unsubscribe();\r\n document.body.removeEventListener('focus', this.blurButton, true)\r\n // clearInterval(this.addObserverDomTimer);\r\n }\r\n\r\n setHsy = (v) => {\r\n const { back, fn } = v || {};\r\n if (back === true) {\r\n this.setState({ hsy_s: true, hsy_f: fn })\r\n } else {\r\n this.setState({ hsy_s: false, hsy_f: null })\r\n }\r\n }\r\n\r\n setLogo = (v) => {\r\n const store = localStore.get('StoreKey') || {};\r\n const { logo: logoUrl } = store;\r\n logoUrl && this.setState({ logoUrl });\r\n }\r\n\r\n logoNode = (url, isPortal, isLogin) => {\r\n const { hsy_s, hsy_f } = this.state;\r\n const { isVerticalTouch } = platform || {};\r\n const theme = stores.portalStore.themeStore;\r\n const defualtImage = (isVerticalTouch === true) ? this.sys_parms.tinified_logo_bc : (((!hsy_s && isPortal) || (theme === 'dark' && !isLogin) ? this.sys_parms.protal_chanjet_logo_bc : this.sys_parms.chanjet_logo_bc) + '?v=1');\r\n if (hsy_s === true) {\r\n return (<div className='business-logo-container'>\r\n <Ticon type='zhiPOS-fanhuishouye2' className='back_i' onClick={() => { hsy_f && hsy_f() }} />\r\n <img src={url || defualtImage} className=\"example-logo\" />\r\n </div>);\r\n }\r\n return <img src={url || defualtImage} className=\"example-logo\" />\r\n }\r\n\r\n //未使用?\r\n hotKeyInjectOrEject = (type, hotKeyAction) => {\r\n const registerKeys = ['esc', 'enter'];\r\n const allKeys = [...registerKeys, ...Object.keys(hotKey.hotKeyConfig)];\r\n allKeys.forEach((keyboard, index) => {\r\n nativeMs.onIpcRendererGlobalShortcut({ type, keyboard }, hotKeyActionHandle);\r\n });\r\n }\r\n\r\n blurButton = ({ target }) => { // 焦点为 button 时 移除焦点,防止触发 bee 组件enter快捷键\r\n if (target && target.nodeName === 'BUTTON') {\r\n target.blur();\r\n }\r\n }\r\n\r\n registerHotKey = () => {\r\n this.isSetHotKey = true;\r\n\r\n this.hotKeyCreate = hotKey({\r\n observerCallback: this.observerDom,\r\n log: true,\r\n pressed: this.hotKeyAction,\r\n clickBefore: () => {\r\n const { activeElement } = document;\r\n activeElement && activeElement.blur();\r\n },\r\n filter: event => {\r\n const { tagName, className } = event.target || event.srcElement || {};\r\n\r\n return !(event.key === 'Enter' && tagName === 'INPUT' && !~className.indexOf('hot-key-not-filter'));\r\n }\r\n });\r\n\r\n this.hotKeyCreate.observer(undefined, { attributes: true, childList: true, subtree: true ,attributeFilter: ['class', 'style'], });\r\n this.hotKeyCreate.register('esc')('.hot-key-focus-container')(operationKeys.esc);\r\n this.hotKeyCreate.register('enter')('.hot-key-focus-container')(operationKeys.enter);\r\n }\r\n\r\n observerDom = () => {\r\n\r\n const modals = [...document.querySelectorAll('.ant-modal-wrap')].filter((modal) => modal.style && modal.style.display !== 'none'); //ant-module\r\n const drawers = [...document.querySelectorAll('.ant-drawer-open')] //ant-drawer\r\n let modalsAndDrawers = [...modals, ...drawers].sort((dom1, dom2) => {\r\n let style1 = window.getComputedStyle(dom1);\r\n let style2 = window.getComputedStyle(dom2);\r\n return style2.zIndex - style1.zIndex\r\n });\r\n\r\n let visibleDom = modalsAndDrawers.length > 0 ? modalsAndDrawers[0] : null\r\n\r\n if (visibleDom) {\r\n if (this.currentFocus !== visibleDom) {\r\n $.clearFocus();\r\n this.currentFocus = visibleDom\r\n return $.setFocus(visibleDom);\r\n }\r\n return;\r\n }\r\n\r\n if ($.getFocusId() !== '1') {\r\n if (this.currentFocus !== 'App' || !document.querySelector(\".hot-key-focus-container\")) {\r\n $.clearFocus();\r\n this.currentFocus = 'App';\r\n $.find('.app', true).setFocus();\r\n }\r\n return;\r\n }\r\n }\r\n\r\n hotKeyAction = (event, handle) => {\r\n const { key } = handle || {};\r\n const toggleKeyCode = 'ctrl+f1';\r\n if (key === toggleKeyCode) {\r\n const isSetHotKey = this.isSetHotKey = !this.isSetHotKey;\r\n const message = isSetHotKey ? '设置' : '取消';\r\n if (isSetHotKey) {\r\n $.bind(this.keys.filter(i => i !== toggleKeyCode), this.hotKeyAction);\r\n } else {\r\n $.unbind(this.keys.filter(i => i !== toggleKeyCode));\r\n }\r\n return Message.info(`已${message}快捷键`);\r\n }\r\n\r\n $.action(key);\r\n }\r\n\r\n handleInfoRender = (solt) => {\r\n this.setState({solt})\r\n }\r\n onCollapse = () => {\r\n const {collapsed} = this.state;\r\n this.setState({collapsed: !collapsed});\r\n }\r\n menuOnClick = ({key}) => {\r\n console.log(key)\r\n this.setState({selectedKeys: key});\r\n }\r\n\r\n handleClose = () => {\r\n Keyboard.close();\r\n }\r\n\r\n handleOk = (type, count) => {\r\n stores.modifyPassStore.modifyPassWord();\r\n }\r\n\r\n headMenuSelect = ({key}) => {\r\n var footer = [\r\n {text: '取消', className: 'modifypass-cancal-button', closable: true, action: this.handleClose},\r\n {text: '确定', className: 'modifypass-ok-button', action: this.handleOk, type: 'primary'}\r\n ];\r\n footer = !!footer.length && <div>\r\n {footer.map((btn, i) =>\r\n <Button\r\n className={btn.className || ''}\r\n key={i}\r\n type={btn.type}\r\n loading={btn.loading}\r\n onClick={() => {\r\n const {action} = btn || {};\r\n if (typeof action === 'function') action();\r\n if (btn.closable) {\r\n stores.modalRouter.hide('/modifypass');\r\n }\r\n }}\r\n >\r\n {btn.text}\r\n </Button>)}\r\n </div>\r\n switch (key) {\r\n case 'logout':\r\n User.logout();\r\n break;\r\n case 'modifypass':\r\n {\r\n if(!stores.offlineSys.shouldInOffline()) return;\r\n stores.modalRouter.show({\r\n url: '/modifypass',\r\n title: '修改密码',\r\n className: 'modify-password',\r\n width: 402,\r\n footer,modalType:'mid',\r\n onHide: () => stores.modalRouter.hide('/modifypass'),\r\n destroyOnClose: true,\r\n });\r\n }\r\n break;\r\n default:\r\n history.push(`/${key}`);\r\n break;\r\n }\r\n }\r\n render() {\r\n const { collapsed, selectedKeys, solt, portalHead = [], loginHead = [], retailOrder = [], logoUrl, hsy_s } = this.state;\r\n const pathname = history.location.pathname;\r\n const storeInfo = stores.user.options.get('store');\r\n const isPortal = !!portalHead.length;\r\n const isLogin = !!loginHead.length;\r\n const isRetailOrder = !!retailOrder.length;\r\n const headProps = {\r\n logo: this.logoNode(logoUrl, isPortal, isLogin),\r\n businessName: '',\r\n storeName: '',\r\n dateFormat: 'yyyy年MM月dd日 hh:mm:ss',\r\n menu: [\r\n { title: '注销', key: 'logout', icon: 'zhuxiao' },\r\n { title: '修改密码', key: 'modifypass', icon: 'suoping' }\r\n ],\r\n onClick: this.headMenuSelect\r\n };\r\n if (storeInfo) {\r\n headProps.businessName = storeInfo.orgName;\r\n headProps.storeName = storeInfo.storeName;\r\n headProps.posCode = storeInfo.posCode;\r\n }\r\n\r\n // 如果存在商米副屏则优先加载商米副屏\r\n if (this.isHorizontalSunMi_FuPing) {\r\n return <Redirect to={'/vicescreen'} />\r\n }\r\n console.log('!stores.posLoginStore.posIsLogin=============', !stores.posLoginStore.posIsLogin);\r\n if (!stores.posLoginStore.posIsLogin && !~pathname.indexOf('login')) {\r\n stores.modalRouter.hideAll && stores.modalRouter.hideAll();\r\n return <Redirect to={'/login'} />\r\n }\r\n const classNames = ['isPortal-layout', 'isRetailOrder-layout'];\r\n const layoutClassName = [isPortal, isRetailOrder].map((v, i) => (v ? classNames[i] : '')).join(' ');\r\n return (\r\n <Layout\r\n style={{ height: '100%' }}\r\n className={layoutClassName}\r\n >\r\n <Layout>\r\n <Header\r\n {...headProps}\r\n solt={solt}\r\n isPortal={isPortal}\r\n className={`${(!hsy_s && isPortal) ? 'isPortal-head' : ''} ${isLogin ? 'isLogin-head' : ''}`}\r\n isLogin={isLogin}\r\n location={this.props.location}\r\n history={this.props.history}\r\n />\r\n <Layout.Content>\r\n {this.props.match.isExact ? (<PortalPageBC />) : <Switch>{this.props.routes}</Switch>}\r\n </Layout.Content>\r\n </Layout>\r\n </Layout>\r\n )\r\n }\r\n}\r\n\r\nexport default function Main(props) {\r\n const { routes, modalRouter } = props;\r\n\r\n if (modalRouter) {\r\n return <Switch>{routes}</Switch>;\r\n }\r\n\r\n return React.cloneElement(<MainContainer />, props);\r\n}\r\n"]}
1
+ {"version":3,"sources":["tplus-portaltouch/containers/Main/index.js"],"names":["Main","hasElectron","env","platform","constant","electron","window","rx$","MainContainer","observer","props","currentFocus","sys_parms","tinified_logo_bc","ossAliyuncsFileURL","protal_chanjet_logo_bc","chanjet_logo_bc","initWebFrameZoom","webFrame","value","localStore","get","setZoomFactor","parseFloat","doDeeplinkingUrl","ipcRenderer","on","event","ret","params","console","log","stores","user","orgId","userId","param","split","reduce","accumulator","current","key","cloudUserId","User","logout","changeLogoSubject","subject","Subject","changeLogo","subscribe","next","v","setLogo","changeHsySubject","changeHsy","setHsy","addHotKeyChangeLister","document","addEventListener","registerHotKey","removeHotKeyChangeLister","removeEventListener","back","fn","setState","hsy_s","hsy_f","store","logoUrl","logo","logoNode","url","isPortal","isLogin","state","isVerticalTouch","theme","portalStore","themeStore","defualtImage","hotKeyInjectOrEject","type","hotKeyAction","registerKeys","allKeys","hotKey","hotKeyConfig","forEach","keyboard","index","nativeMs","onIpcRendererGlobalShortcut","hotKeyActionHandle","blurButton","target","nodeName","blur","isSetHotKey","hotKeyCreate","observerCallback","observerDom","pressed","clickBefore","activeElement","filter","srcElement","tagName","className","indexOf","undefined","attributes","childList","subtree","attributeFilter","register","operationKeys","esc","enter","modals","querySelectorAll","modal","style","display","drawers","modalsAndDrawers","sort","dom1","dom2","style1","getComputedStyle","style2","zIndex","visibleDom","length","$","clearFocus","setFocus","getFocusId","querySelector","find","handle","toggleKeyCode","message","bind","keys","i","unbind","Message","info","action","handleInfoRender","solt","onCollapse","collapsed","menuOnClick","selectedKeys","handleClose","Keyboard","close","handleOk","count","modifyPassStore","modifyPassWord","headMenuSelect","footer","text","closable","map","btn","loading","modalRouter","hide","offlineSys","shouldInOffline","show","title","width","modalType","onHide","destroyOnClose","history","push","portalStores","posLoginStore","savePosCode","isAutoTest","location","search","isShowFourTab","screen","isHorizontalPad","storeUtil","isHorizontalSunMi","isHorizontalSunMi_FuPing","isMobileEnvironment","infoRender","headHook","addClass","id","removeClass","currentId","actionHook","actionFrom","actionChange","body","classList","add","ModalWraper","confirm","content","cancelable","onOk","onCancel","unsubscribe","portalHead","loginHead","retailOrder","pathname","storeInfo","options","isRetailOrder","headProps","businessName","storeName","dateFormat","menu","icon","onClick","orgName","posCode","posIsLogin","hideAll","classNames","layoutClassName","join","height","match","isExact","routes","Component","childContextTypes","PropTypes","func","object","React","cloneElement"],"mappings":"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","file":"index.js","sourcesContent":["import React, { Component } from 'react';\r\nimport PropTypes from 'prop-types';\r\nimport { observer } from 'mobx-react';\r\nimport { Button } from 'antd';\r\nimport { history, Switch, stores, env, nativeMs, localStore } from 'mutants-microfx';\r\nimport { Ticon, Layout, Keyboard, ModalWraper, Message, hotKey } from 'tplus-components-touch';\r\nimport { platform, localStore as storeUtil } from 'mutants-util';\r\nimport { User } from 'tplus-api';\r\nimport { Subject } from 'rxjs';\r\nimport { Redirect } from 'react-router';\r\nimport Header from '../../components/header';\r\nimport PortalPageBC from '../../pages/Portalbc';\r\nimport portalStores from '../../stores';\r\nimport { closeWebPage, getQueryString, operationKeys } from '../../utils/index';\r\n\r\nconst hasElectron = (env.platform === env.constant.platform.electron);\r\nwindow.rx$ = {};\r\n\r\n@observer\r\nclass MainContainer extends Component {\r\n\r\n currentFocus = null;\r\n\r\n sys_parms = {\r\n tinified_logo_bc: `${window.ossAliyuncsFileURL}/tinified/logo-bc.png`,\r\n protal_chanjet_logo_bc: `${window.ossAliyuncsFileURL}/protal-chanjet-logo-bc.png`,\r\n chanjet_logo_bc: `${window.ossAliyuncsFileURL}/chanjet-logo-bc.png`,\r\n }\r\n\r\n constructor(props) {\r\n super(props);\r\n this.hasElectron = hasElectron;\r\n this.state = {\r\n hsy_s: false,\r\n hsy_f: null\r\n };\r\n portalStores.posLoginStore.savePosCode();\r\n this.electron = nativeMs && nativeMs.get('electron');\r\n this.isAutoTest = getQueryString(location.search, 'at');\r\n this.isShowFourTab = this.hasElectron && window.screen.width < 1024 ? true : false;\r\n //针对800*600分辨率下,页面显示不全的做一下处理。\r\n if (this.isShowFourTab == true) this.initWebFrameZoom();\r\n\r\n const isHorizontalPad = storeUtil.get('isHorizontalPad')// 是否在PAD\r\n const isHorizontalSunMi = storeUtil.get('isHorizontalSunMi'); //是否在商米(SunMi)\r\n const isHorizontalSunMi_FuPing = storeUtil.get('isHorizontalSunMi_FuPing'); //是否在商米(SunMi)\r\n\r\n this.isHorizontalSunMi_FuPing = !!isHorizontalSunMi_FuPing;\r\n this.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi || !!isHorizontalSunMi_FuPing;\r\n }\r\n static childContextTypes = {\r\n infoRender: PropTypes.func,\r\n headHook: PropTypes.object,\r\n actionHook: PropTypes.object,\r\n }\r\n\r\n initWebFrameZoom = () => {\r\n let webFrame = this.electron ? this.electron.webFrame : null;\r\n let value = localStore.get('webFrameZoomValue') || '0.7';\r\n if (webFrame) webFrame.setZoomFactor(parseFloat(value));\r\n }\r\n getChildContext() {\r\n return {\r\n infoRender: this.handleInfoRender,\r\n headHook: {\r\n addClass: (id, key) => {\r\n this.setState(state => ({\r\n [key]: [...(state[key] || []), id],\r\n }));\r\n },\r\n removeClass: (id, key) => {\r\n this.setState(state => ({\r\n [key]: state[key].filter(currentId => currentId !== id),\r\n }));\r\n }\r\n },\r\n actionHook: {\r\n actionFrom: this.actionFrom,\r\n actionChange: (value) => {\r\n this.actionFrom = value;\r\n }\r\n },\r\n };\r\n }\r\n\r\n // 内置默认\r\n // keys = ['esc', 'enter', 'ctrl+f1', ...Object.keys(hotKey.hotKeyConfig)];\r\n\r\n // 解决从url地址唤醒exe,不同账号的处理问题。\r\n doDeeplinkingUrl = () => {\r\n if (this.hasElectron === false) return;\r\n let { ipcRenderer } = this.electron || {ipcRenderer:null};\r\n ipcRenderer && ipcRenderer.on(\"asynchronous-deeplinkingUrl\", (event, ret, params) => {\r\n if (ret) {\r\n console.log('deeplinkingUrl:' + ret)\r\n const {orgId, userId} = stores.user || {};\r\n if (!orgId || !userId) return;\r\n const param = ret.split('&').reduce((accumulator, current) => {\r\n if (!current) return accumulator;\r\n const [key, value] = current.split('=') || [];\r\n accumulator[key] = value;\r\n return accumulator;\r\n }, {});\r\n console.log(orgId, userId, param)\r\n if (param.orgId !== orgId || param.cloudUserId !== userId) {\r\n User.logout();\r\n }\r\n }\r\n })\r\n }\r\n\r\n componentWillMount() {\r\n this.changeLogoSubject();\r\n this.changeHsySubject();\r\n const { isVerticalTouch } = platform || {};\r\n if (isVerticalTouch === true) {\r\n document.body.classList.add('vertical-touch-platform');\r\n }\r\n }\r\n\r\n changeLogoSubject = () => {\r\n const subject = new Subject();\r\n rx$.changeLogo = subject;\r\n\r\n subject\r\n .subscribe({\r\n next: (v) => this.setLogo(v)\r\n });\r\n }\r\n\r\n changeHsySubject = () => {\r\n const subject = new Subject();\r\n rx$.changeHsy = subject;\r\n\r\n subject\r\n .subscribe({\r\n next: (v) => this.setHsy(v)\r\n });\r\n }\r\n\r\n componentDidMount() {\r\n this.registerHotKey();\r\n this.addHotKeyChangeLister();\r\n rx$.changeLogo.next();\r\n document.body.addEventListener('focus', this.blurButton, true)\r\n this.doDeeplinkingUrl();\r\n\r\n if (this.hasElectron === true) {\r\n document.body.classList.add('electron-env');\r\n } else {\r\n if (this.isAutoTest || this.isMobileEnvironment) return; //自动化测试不弹窗\r\n ModalWraper.confirm({\r\n className: 'tplus-confirm-modal',\r\n title: \"温馨提示\",\r\n content: '智+新零售POS端不允许浏览器直接访问,请从智+产品中下载安装客户端程序使用!',\r\n cancelable:false,\r\n onOk() {\r\n closeWebPage();\r\n },\r\n onCancel(){\r\n closeWebPage();\r\n }\r\n });\r\n }\r\n }\r\n addHotKeyChangeLister = () => {\r\n document.addEventListener(\"RESET_USER_STORE\",this.registerHotKey);\r\n }\r\n removeHotKeyChangeLister = () => {\r\n document.removeEventListener(\"RESET_USER_STORE\",this.registerHotKey);\r\n }\r\n\r\n componentWillUnmount() {\r\n rx$.changeLogo.unsubscribe();\r\n rx$.changeHsy.unsubscribe();\r\n document.body.removeEventListener('focus', this.blurButton, true)\r\n // clearInterval(this.addObserverDomTimer);\r\n }\r\n\r\n setHsy = (v) => {\r\n const { back, fn } = v || {};\r\n if (back === true) {\r\n this.setState({ hsy_s: true, hsy_f: fn })\r\n } else {\r\n this.setState({ hsy_s: false, hsy_f: null })\r\n }\r\n }\r\n\r\n setLogo = (v) => {\r\n const store = localStore.get('StoreKey') || {};\r\n const { logo: logoUrl } = store;\r\n logoUrl && this.setState({ logoUrl });\r\n }\r\n\r\n logoNode = (url, isPortal, isLogin) => {\r\n const { hsy_s, hsy_f } = this.state;\r\n const { isVerticalTouch } = platform || {};\r\n const theme = stores.portalStore.themeStore;\r\n const defualtImage = (isVerticalTouch === true) ? this.sys_parms.tinified_logo_bc : ((!hsy_s && isPortal) || (theme === 'dark' && !isLogin) ? this.sys_parms.protal_chanjet_logo_bc : this.sys_parms.chanjet_logo_bc);\r\n if (hsy_s === true) {\r\n return (<div className='business-logo-container'>\r\n <Ticon type='zhiPOS-fanhuishouye2' className='back_i' onClick={() => { hsy_f && hsy_f() }} />\r\n <img src={url || defualtImage} className=\"example-logo\" />\r\n </div>);\r\n }\r\n return <img src={url || defualtImage} className=\"example-logo\" />\r\n }\r\n\r\n //未使用?\r\n hotKeyInjectOrEject = (type, hotKeyAction) => {\r\n const registerKeys = ['esc', 'enter'];\r\n const allKeys = [...registerKeys, ...Object.keys(hotKey.hotKeyConfig)];\r\n allKeys.forEach((keyboard, index) => {\r\n nativeMs.onIpcRendererGlobalShortcut({ type, keyboard }, hotKeyActionHandle);\r\n });\r\n }\r\n\r\n blurButton = ({ target }) => { // 焦点为 button 时 移除焦点,防止触发 bee 组件enter快捷键\r\n if (target && target.nodeName === 'BUTTON') {\r\n target.blur();\r\n }\r\n }\r\n\r\n registerHotKey = () => {\r\n this.isSetHotKey = true;\r\n\r\n this.hotKeyCreate = hotKey({\r\n observerCallback: this.observerDom,\r\n log: true,\r\n pressed: this.hotKeyAction,\r\n clickBefore: () => {\r\n const { activeElement } = document;\r\n activeElement && activeElement.blur();\r\n },\r\n filter: event => {\r\n const { tagName, className } = event.target || event.srcElement || {};\r\n\r\n return !(event.key === 'Enter' && tagName === 'INPUT' && !~className.indexOf('hot-key-not-filter'));\r\n }\r\n });\r\n\r\n this.hotKeyCreate.observer(undefined, { attributes: true, childList: true, subtree: true ,attributeFilter: ['class', 'style'], });\r\n this.hotKeyCreate.register('esc')('.hot-key-focus-container')(operationKeys.esc);\r\n this.hotKeyCreate.register('enter')('.hot-key-focus-container')(operationKeys.enter);\r\n }\r\n\r\n observerDom = () => {\r\n\r\n const modals = [...document.querySelectorAll('.ant-modal-wrap')].filter((modal) => modal.style && modal.style.display !== 'none'); //ant-module\r\n const drawers = [...document.querySelectorAll('.ant-drawer-open')] //ant-drawer\r\n let modalsAndDrawers = [...modals, ...drawers].sort((dom1, dom2) => {\r\n let style1 = window.getComputedStyle(dom1);\r\n let style2 = window.getComputedStyle(dom2);\r\n return style2.zIndex - style1.zIndex\r\n });\r\n\r\n let visibleDom = modalsAndDrawers.length > 0 ? modalsAndDrawers[0] : null\r\n\r\n if (visibleDom) {\r\n if (this.currentFocus !== visibleDom) {\r\n $.clearFocus();\r\n this.currentFocus = visibleDom\r\n return $.setFocus(visibleDom);\r\n }\r\n return;\r\n }\r\n\r\n if ($.getFocusId() !== '1') {\r\n if (this.currentFocus !== 'App' || !document.querySelector(\".hot-key-focus-container\")) {\r\n $.clearFocus();\r\n this.currentFocus = 'App';\r\n $.find('.app', true).setFocus();\r\n }\r\n return;\r\n }\r\n }\r\n\r\n hotKeyAction = (event, handle) => {\r\n const { key } = handle || {};\r\n const toggleKeyCode = 'ctrl+f1';\r\n if (key === toggleKeyCode) {\r\n const isSetHotKey = this.isSetHotKey = !this.isSetHotKey;\r\n const message = isSetHotKey ? '设置' : '取消';\r\n if (isSetHotKey) {\r\n $.bind(this.keys.filter(i => i !== toggleKeyCode), this.hotKeyAction);\r\n } else {\r\n $.unbind(this.keys.filter(i => i !== toggleKeyCode));\r\n }\r\n return Message.info(`已${message}快捷键`);\r\n }\r\n\r\n $.action(key);\r\n }\r\n\r\n handleInfoRender = (solt) => {\r\n this.setState({solt})\r\n }\r\n onCollapse = () => {\r\n const {collapsed} = this.state;\r\n this.setState({collapsed: !collapsed});\r\n }\r\n menuOnClick = ({key}) => {\r\n console.log(key)\r\n this.setState({selectedKeys: key});\r\n }\r\n\r\n handleClose = () => {\r\n Keyboard.close();\r\n }\r\n\r\n handleOk = (type, count) => {\r\n stores.modifyPassStore.modifyPassWord();\r\n }\r\n\r\n headMenuSelect = ({key}) => {\r\n var footer = [\r\n {text: '取消', className: 'modifypass-cancal-button', closable: true, action: this.handleClose},\r\n {text: '确定', className: 'modifypass-ok-button', action: this.handleOk, type: 'primary'}\r\n ];\r\n footer = !!footer.length && <div>\r\n {footer.map((btn, i) =>\r\n <Button\r\n className={btn.className || ''}\r\n key={i}\r\n type={btn.type}\r\n loading={btn.loading}\r\n onClick={() => {\r\n const {action} = btn || {};\r\n if (typeof action === 'function') action();\r\n if (btn.closable) {\r\n stores.modalRouter.hide('/modifypass');\r\n }\r\n }}\r\n >\r\n {btn.text}\r\n </Button>)}\r\n </div>\r\n switch (key) {\r\n case 'logout':\r\n User.logout();\r\n break;\r\n case 'modifypass':\r\n {\r\n if(!stores.offlineSys.shouldInOffline()) return;\r\n stores.modalRouter.show({\r\n url: '/modifypass',\r\n title: '修改密码',\r\n className: 'modify-password',\r\n width: 402,\r\n footer,modalType:'mid',\r\n onHide: () => stores.modalRouter.hide('/modifypass'),\r\n destroyOnClose: true,\r\n });\r\n }\r\n break;\r\n default:\r\n history.push(`/${key}`);\r\n break;\r\n }\r\n }\r\n render() {\r\n const { collapsed, selectedKeys, solt, portalHead = [], loginHead = [], retailOrder = [], logoUrl, hsy_s } = this.state;\r\n const pathname = history.location.pathname;\r\n const storeInfo = stores.user.options.get('store');\r\n const isPortal = !!portalHead.length;\r\n const isLogin = !!loginHead.length;\r\n const isRetailOrder = !!retailOrder.length;\r\n const headProps = {\r\n logo: this.logoNode(logoUrl, isPortal, isLogin),\r\n businessName: '',\r\n storeName: '',\r\n dateFormat: 'yyyy年MM月dd日 hh:mm:ss',\r\n menu: [\r\n { title: '注销', key: 'logout', icon: 'zhuxiao' },\r\n { title: '修改密码', key: 'modifypass', icon: 'suoping' }\r\n ],\r\n onClick: this.headMenuSelect\r\n };\r\n if (storeInfo) {\r\n headProps.businessName = storeInfo.orgName;\r\n headProps.storeName = storeInfo.storeName;\r\n headProps.posCode = storeInfo.posCode;\r\n }\r\n\r\n // 如果存在商米副屏则优先加载商米副屏\r\n if (this.isHorizontalSunMi_FuPing) {\r\n return <Redirect to={'/vicescreen'} />\r\n }\r\n console.log('!stores.posLoginStore.posIsLogin=============', !stores.posLoginStore.posIsLogin);\r\n if (!stores.posLoginStore.posIsLogin && !~pathname.indexOf('login')) {\r\n stores.modalRouter.hideAll && stores.modalRouter.hideAll();\r\n return <Redirect to={'/login'} />\r\n }\r\n const classNames = ['isPortal-layout', 'isRetailOrder-layout'];\r\n const layoutClassName = [isPortal, isRetailOrder].map((v, i) => (v ? classNames[i] : '')).join(' ');\r\n return (\r\n <Layout\r\n style={{ height: '100%' }}\r\n className={layoutClassName}\r\n >\r\n <Layout>\r\n <Header\r\n {...headProps}\r\n solt={solt}\r\n isPortal={isPortal}\r\n className={`${(!hsy_s && isPortal) ? 'isPortal-head' : ''} ${isLogin ? 'isLogin-head' : ''}`}\r\n isLogin={isLogin}\r\n location={this.props.location}\r\n history={this.props.history}\r\n />\r\n <Layout.Content>\r\n {this.props.match.isExact ? (<PortalPageBC />) : <Switch>{this.props.routes}</Switch>}\r\n </Layout.Content>\r\n </Layout>\r\n </Layout>\r\n )\r\n }\r\n}\r\n\r\nexport default function Main(props) {\r\n const { routes, modalRouter } = props;\r\n\r\n if (modalRouter) {\r\n return <Switch>{routes}</Switch>;\r\n }\r\n\r\n return React.cloneElement(<MainContainer />, props);\r\n}\r\n"]}
@@ -52,7 +52,7 @@ var _inherits3 = _interopRequireDefault(_inherits2);
52
52
  var _class, _class2, _temp; /*
53
53
  * @Description:
54
54
  * @Date: 2019-08-13 08:42:18
55
- * @LastEditTime: 2022-02-25 14:49:22
55
+ * @LastEditTime: 2022-03-22 14:23:09
56
56
  * @LastEditors: chenlongad
57
57
  * @modify:修改跳转到T+的查询方案方式
58
58
  */
@@ -107,10 +107,8 @@ var _rxjs = require('rxjs');
107
107
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
108
108
 
109
109
  var hasElectron = _mutantsMicrofx.env.platform === _mutantsMicrofx.env.constant.platform.electron;
110
- var Content = _tplusComponentsTouch.Layout.Content,
111
- Footer = _tplusComponentsTouch.Layout.Footer;
110
+ var Content = _tplusComponentsTouch.Layout.Content;
112
111
 
113
- var tplusWindow = null;
114
112
  var HTTP_PROXY_URL = 'http://tfproxy.chanjet.com/?url=';
115
113
  var CC_FRAME_CONF = { id: 'external-frame-cc', identOnly: '_pos_web_', initConnect: 'initConnect', HsyLoadFinish: 'HsyLoadFinish', HsyRouterClean: 'HsyRouterClean', HsyRouterJump: 'HsyRouterJump' };
116
114
 
@@ -221,44 +219,45 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
221
219
  _this$context = _this.context, _this$context$stores = _this$context.stores, stores = _this$context$stores === undefined ? {} : _this$context$stores, _this$context$headHoo = _this$context.headHook;
222
220
  _this$context$headHoo = _this$context$headHoo === undefined ? {} : _this$context$headHoo;
223
221
  addClass = _this$context$headHoo.addClass;
224
- hasUseOffline = (0, _tplusPoslogin.PosInitData)('IsOfflineCash') === "1" && !(_this.isVerticalTouch || _this.isMobileEnvironment); //是否允许离线
222
+ hasUseOffline = (0, _tplusPoslogin.PosInitData)('IsOfflineCash') === "1" && !_mutantsUtil.platform.otherOfflineStatus;
223
+ ; //是否允许离线
225
224
  // const hasUseOffline = true;
226
225
 
227
226
  if (!(hasUseOffline == true)) {
228
- _context2.next = 7;
227
+ _context2.next = 8;
229
228
  break;
230
229
  }
231
230
 
232
- _context2.next = 7;
231
+ _context2.next = 8;
233
232
  return _this.catchOfflineData();
234
233
 
235
- case 7:
234
+ case 8:
236
235
  _tplusComponentsTouch.Loading.show({
237
236
  text: '权限加载中,请稍等...',
238
237
  delay: 2500
239
238
  });
240
239
  //权限加载
241
- _context2.prev = 8;
242
- _context2.next = 11;
240
+ _context2.prev = 9;
241
+ _context2.next = 12;
243
242
  return _this.getOperation();
244
243
 
245
- case 11:
246
- _context2.next = 16;
244
+ case 12:
245
+ _context2.next = 17;
247
246
  break;
248
247
 
249
- case 13:
250
- _context2.prev = 13;
251
- _context2.t0 = _context2['catch'](8);
248
+ case 14:
249
+ _context2.prev = 14;
250
+ _context2.t0 = _context2['catch'](9);
252
251
 
253
252
  _tplusComponentsTouch.Loading.hide();
254
253
 
255
- case 16:
256
- _context2.prev = 16;
254
+ case 17:
255
+ _context2.prev = 17;
257
256
 
258
257
  _tplusComponentsTouch.Loading.hide();
259
- return _context2.finish(16);
258
+ return _context2.finish(17);
260
259
 
261
- case 19:
260
+ case 20:
262
261
  addClass && addClass(_this.state.id, 'portalHead');
263
262
  // 初始化参数设置。
264
263
  stores.setStore.initSetParams().then(function (ret) {
@@ -277,12 +276,12 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
277
276
  });
278
277
  _this.hsyBasicInfoInit();
279
278
 
280
- case 22:
279
+ case 23:
281
280
  case 'end':
282
281
  return _context2.stop();
283
282
  }
284
283
  }
285
- }, _callee2, _this2, [[8, 13, 16, 19]]);
284
+ }, _callee2, _this2, [[9, 14, 17, 20]]);
286
285
  }));
287
286
 
288
287
  _this.sunMiPresentationInit = function (result) {
@@ -312,7 +311,7 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
312
311
  _this.getTcBasicInfoInit = function () {
313
312
  var userStore = _tplusApi.User.restore();
314
313
  var sid = userStore.sid;
315
- var tplusUrl = (0, _tplusPoslogin.PosInitData)("TplusSite") || (0, _tplusPoslogin.PosInitData)("tplusinnersite");
314
+ var tplusUrl = _this.tplusSiteUrl;
316
315
  if (!tplusUrl) {
317
316
  var msg = "请用admin登录,在服务器配置–地址配置处,设置“内部或外部网络访问T+服务器的地址”!";
318
317
  _tplusComponentsTouch.ModalWraper.warning({
@@ -399,17 +398,29 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
399
398
 
400
399
  var errorTip = void 0;
401
400
 
401
+ // 离线模式
402
402
  if (!_mutantsMicrofx.stores.offlineSys.shouldOpenHomeOperation(Name)) {
403
- _tplusComponentsTouch.Message.warn("离线模式下此操作不可用");
403
+ _tplusComponentsTouch.Message.warn("离线模式下此操作不可用", { duration: 3 });
404
+ return;
405
+ }
406
+
407
+ // 会员拉新
408
+ if (type == 'memberRecruitment' && (_this.isEnablePromotion == false || _this.isEnableMember == false)) {
409
+ _tplusComponentsTouch.Message.warn("您还未开通会员/促销管理,请立即开通", { duration: 3 });
404
410
  return;
405
411
  }
406
412
 
413
+ // 会员消费查询
414
+ if (type == 'memberConsumDetail' && _this.isEnableMember == false) {
415
+ _tplusComponentsTouch.Message.warn("您还未开通会员管理,请立即开通", { duration: 3 });
416
+ return;
417
+ }
418
+
419
+ // 更多
407
420
  if (type == 'more') {
408
- // if (this.isMobileEnvironment) { //暂时不支持android系统跳转
409
- // return Message.warn('新功能正在研发中,敬请期待。');
410
- // }
411
421
  return _this.setState({ showMoreModal: true });
412
422
  }
423
+
413
424
  if (!Title) {
414
425
  return _tplusComponentsTouch.ModalWraper.warning({
415
426
  title: '提示',
@@ -651,9 +662,9 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
651
662
  filter = {};
652
663
  //对仓库参数的处理
653
664
 
654
- IdWarehouse = (0, _tplusPoslogin.PosInitData)('IdWarehouse') || '';
655
- WarehouseName = (0, _tplusPoslogin.PosInitData)('WarehouseName') || '';
656
- IsPerformanceDistribution = (0, _tplusPoslogin.PosInitData)('PerformanceDistribution') === 'SHIPPER_STORE' || false;
665
+ IdWarehouse = _this.idWarehouse;
666
+ WarehouseName = _this.warehouseName;
667
+ IsPerformanceDistribution = _this.performanceDistribution === 'SHIPPER_STORE' || false;
657
668
  _ref10 = _mutantsMicrofx.stores.user.options.get('loginInfo') || {}, _ref10$IdStore = _ref10.IdStore, IdStore = _ref10$IdStore === undefined ? '' : _ref10$IdStore, _ref10$PosId = _ref10.PosId, PosId = _ref10$PosId === undefined ? '' : _ref10$PosId;
658
669
  _ref11 = _mutantsMicrofx.stores.user.options.get('store') || {}, _ref11$storeName = _ref11.storeName, storeName = _ref11$storeName === undefined ? '' : _ref11$storeName;
659
670
  _context4.t0 = pageType;
@@ -928,8 +939,8 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
928
939
  { xl: width, md: width, className: 'portal-left-col', key: 'left' },
929
940
  _react2.default.createElement('div', { className: 'portal-left-content' })
930
941
  );
931
- // return null;
932
942
  }
943
+
933
944
  var menuNode = menu.map(function (v) {
934
945
  return v.container ? _react2.default.createElement(
935
946
  'div',
@@ -937,8 +948,7 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
937
948
  v.sub.map(function (vv) {
938
949
  var item = vv;
939
950
  if (vv.maybe === true) {
940
- var status = !!(0, _tplusPoslogin.PosInitData)('ShowStorePrice');
941
- item = status ? vv : vv.second;
951
+ item = _this.showStorePrice ? vv : vv.second;
942
952
  }
943
953
  return _react2.default.createElement(
944
954
  'div',
@@ -1211,6 +1221,16 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
1211
1221
  _this.hsy_domain = _tplusApi.User && _tplusApi.User.getWebEntry();
1212
1222
  // 是否嵌套好生意的iframe
1213
1223
  _this.isHsyIframeInclude = !_this.isVerticalTouch && !_this.isMobileEnvironment;
1224
+ //获取初始化参数
1225
+ _this.isEnableMember = !!(0, _tplusPoslogin.PosInitData)('isEnableMember'); //是否开启会员
1226
+ _this.isEnablePromotion = !!(0, _tplusPoslogin.PosInitData)('isEnablePromotion'); //是否开启促销
1227
+ _this.isOfflineCash = (0, _tplusPoslogin.PosInitData)('IsOfflineCash');
1228
+ _this.tplusSiteUrl = (0, _tplusPoslogin.PosInitData)("TplusSite") || (0, _tplusPoslogin.PosInitData)("tplusinnersite");
1229
+ _this.idWarehouse = (0, _tplusPoslogin.PosInitData)('IdWarehouse') || '';
1230
+ _this.warehouseName = (0, _tplusPoslogin.PosInitData)('WarehouseName') || '';
1231
+ _this.performanceDistribution = (0, _tplusPoslogin.PosInitData)('PerformanceDistribution');
1232
+ _this.showStorePrice = (0, _tplusPoslogin.PosInitData)('ShowStorePrice');
1233
+
1214
1234
  //首页布局
1215
1235
  _this.leftMenu = _this.getMenuByPosition('left');
1216
1236
  _this.centerLeftMenu = _this.getMenuByPosition('centerLeft');
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-portaltouch/pages/Portalbc/index.js"],"names":["hasElectron","env","platform","constant","electron","Content","Layout","Footer","tplusWindow","HTTP_PROXY_URL","CC_FRAME_CONF","id","identOnly","initConnect","HsyLoadFinish","HsyRouterClean","HsyRouterJump","observer","props","catchOfflineData","offlineSys","context","stores","isLoginAfter","localStore","get","downloadCatcherDay","currentDay","Math","ceil","Date","downProgress","params","Loading","transfer","show","text","delay","showProgress","downloadCatcherData","result","set","hide","console","log","getOperation","resolve","reject","homeOperation","Request","functionData","then","operations","setState","catch","err","data","initPageData","headHook","addClass","hasUseOffline","isVerticalTouch","isMobileEnvironment","state","setStore","initSetParams","getScreenType","isHorizontalSunMi","sunMiPresentationInit","ret","user","window","open","getTime","setTimeout","hsyBasicInfoInit","options","storeName","enumController","getEnumOj","RE_POSParamType","DUAL_SCREEN_SETTING","filterResult","filter","settingItem","ParamType","sunMi_PresentationManager","sharedPreferencesSet","sendMessageToSecondScreen","step","getTcBasicInfoInit","userStore","User","restore","sid","tplusUrl","msg","ModalWraper","warning","title","content","okText","okType","substring","length","ossjumpUrl","postMsgUrl","loginInfo","UserCode","AccountNum","posCode","TplusStoreId","uid","tplusEncode","pwd","accNum","code","store","postMessageUrl","flag","item","Name","shift","Value","saveLog","name","saveLogo","undefined","handelClick","values","type","key","isModal","iframe","app","style","search","tmenuCode","isHsyLoadFinish","controllable","find","vv","Visibility","HoldFunctionAuth","Title","MenuCode","errorTip","shouldOpenHomeOperation","Message","warn","showMoreModal","onOk","logout","portalStore","modalRouter","url","width","toFramePage","checkDuty","onDutyMessage","Code","IdShiftVoucher","Shift","IdDailyVoucher","DailyCode","ShiftCode","history","push","onDuty","MiddleWare","execute","bPosDaily","onMakerDaily","sh","v","menu","toHsyPage","toTplusPage","getTplusUrlFromCloudServer","accessToken","orgId","encodeURIComponent","fetchHeader","headers","fetch","response","json","ex","dsearchPlanID","getSearchPlanId","location","origin","android_CommonFun","openWebUrlByOutBrowser","new_retail_app","nativeMs","useDefaultBrowser","external_frame_tc","document","getElementById","win","contentWindow","loadTcURL","postMessage","doType","loadTcPage","rx$","changeHsy","next","back","fn","content_only","bar_bg","bar_active_bg","secondRouter","activePrompt","closePrompt","closeable","leavePrompt","lock","pageId","pageParams","path","tabId","tabLabel","pageType","_k","IdWarehouse","WarehouseName","IsPerformanceDistribution","IdStore","PosId","defaultValue","storeId","warehouseId","requireWarehouseId","orderStatusEnum","filterValue","value","deliveryStoreId","deliveryWarehouseId","randomWord","commonArgs","actionUrl","cc_url","hsy_domain","replace","getLoginCCMidWebUrl","CC_WEB_URL","ccFrameStore","sendMessage","extStateParams","_ident_only_","loadHsyPage","only","digits","str","number","letter","arr","i","pos","round","random","closeFrameModal","showModal","closeMoreModal","c","String","fromCharCode","charCodeAt","TplusBase64Encode","input","_keyStr","output","chr1","chr2","chr3","enc1","enc2","enc3","enc4","_utf8_encode","isNaN","charAt","string","utftext","n","operationControl","forEach","sub","createLeftNode","leftMenu","isNewRetailBCPosTC","menuNode","map","container","className","maybe","status","second","disabled","bind","label","icon","createCenterNode","menuLeftNode","centerLeftMenu","menuRightNode","centerRightMenu","createRightNode","node","rightMenu","createMoreNode","arrs","getMoreNodeInfo","items","sub_tc","sub_cc","now","loadHsyURL","modalURL","isHorizontalPad","FuPingIsLoaded","getWebEntry","isHsyIframeInclude","getMenuByPosition","position","Menus","leftMenuTC","rightMenuTC","centerLeftMenuMobileCC","centerLeftMenuMobileTC","centerRightMenuMobileCC","centerRightMenuMobileTC","rightMenuMobileTC","rightMenuMobileCC","getMenuByEnvironment","ccMenu","tcMenu","tcMobilMenu","ccMobilMenu","initCCFrameWin","that","IframeStore","e","instance","theme","themeStore","color","destroy","removeClass","setIpcRendererMethod","screenHeight","screen","availHeight","htmlContent","height","paddingLeft","paddingRight","Component","propTypes","routes","PropTypes","array","contextTypes","object","infoRender","func"],"mappings":"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","file":"index.js","sourcesContent":["/*\r\n * @Description:\r\n * @Date: 2019-08-13 08:42:18\r\n * @LastEditTime: 2022-02-25 14:49:22\r\n * @LastEditors: chenlongad\r\n * @modify:修改跳转到T+的查询方案方式\r\n */\r\nimport React, { Component } from 'react';\r\nimport { observer } from 'mobx-react';\r\nimport { autorun} from 'mobx';\r\nimport { Row, Col, Modal } from 'antd';\r\nimport { history, stores, nativeMs, env, localStore } from 'mutants-microfx';\r\nimport { Ticon, Layout, ModalWraper, Loading, Message } from 'tplus-components-touch';\r\nimport { User } from 'tplus-api';\r\nimport { PosSetData, PosInitData } from 'tplus-poslogin';\r\nimport { platform, enumController } from 'mutants-util';\r\nimport PropTypes from 'prop-types';\r\nimport { Request } from '../../api/ModifyPassApi';\r\nimport Menus from './data';\r\nimport MiddleWare from '../../middleWare';\r\nimport VerticalPortal from './verticalPortal';\r\nimport HorizontalPadPortal from './horizontalPadPortal';\r\nimport './index.less';\r\nimport { async } from 'rxjs';\r\n\r\nconst hasElectron = (env.platform === env.constant.platform.electron);\r\nconst { Content, Footer } = Layout;\r\nlet tplusWindow = null;\r\nconst HTTP_PROXY_URL = 'http://tfproxy.chanjet.com/?url=';\r\nconst CC_FRAME_CONF = { id: 'external-frame-cc', identOnly: '_pos_web_', initConnect: 'initConnect', HsyLoadFinish: 'HsyLoadFinish', HsyRouterClean: 'HsyRouterClean', HsyRouterJump : 'HsyRouterJump' };\r\n@observer\r\nexport default class extends Component {\r\n static propTypes = {\r\n routes: PropTypes.array,\r\n };\r\n static contextTypes = {\r\n stores: PropTypes.object,\r\n infoRender: PropTypes.func,\r\n headHook: PropTypes.object\r\n };\r\n ccFrameStore\r\n constructor(props) {\r\n super(props);\r\n this.hasElectron = hasElectron;\r\n this.state = {\r\n id: Date.now(),\r\n operations: [],\r\n showModal: false,\r\n showMoreModal: false,\r\n loadHsyPage: false,\r\n loadHsyURL: '',\r\n isHsyLoadFinish: false,\r\n loadTcPage: false,\r\n loadTcURL: '',\r\n modalURL: '',\r\n }\r\n const { isVerticalTouch, isHorizontalPad, isHorizontalSunMi, isNewRetailBCPosTC } = platform || {};\r\n this.isVerticalTouch = !!isVerticalTouch;\r\n this.isHorizontalPad = !!isHorizontalPad;\r\n this.isHorizontalSunMi = !!isHorizontalSunMi;\r\n this.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi;\r\n this.FuPingIsLoaded = false;\r\n this.isNewRetailBCPosTC = !!isNewRetailBCPosTC;\r\n this.new_retail_app = localStore && localStore.get('newRetailAppType');\r\n this.hsy_domain = User && User.getWebEntry();\r\n // 是否嵌套好生意的iframe\r\n this.isHsyIframeInclude = !this.isVerticalTouch && !this.isMobileEnvironment;\r\n //首页布局\r\n this.leftMenu = this.getMenuByPosition('left');\r\n this.centerLeftMenu = this.getMenuByPosition('centerLeft');\r\n this.centerRightMenu = this.getMenuByPosition('centerRight');\r\n this.rightMenu = this.getMenuByPosition('right');\r\n this.randomWord = this.randomWord.bind(this);\r\n autorun(() => {\r\n this.hsyBasicInfoInit();\r\n });\r\n }\r\n\r\n getMenuByPosition(position) {\r\n const { leftMenu, centerLeftMenu, centerRightMenu, rightMenu, leftMenuTC, rightMenuTC, centerLeftMenuMobileCC, centerLeftMenuMobileTC, centerRightMenuMobileCC, centerRightMenuMobileTC, rightMenuMobileTC, rightMenuMobileCC } = Menus;\r\n switch (position) {\r\n case \"left\":{\r\n return this.getMenuByEnvironment(leftMenu,leftMenuTC,[],[]);\r\n }\r\n case \"centerLeft\":{\r\n return this.getMenuByEnvironment(centerLeftMenu,centerLeftMenu, centerLeftMenuMobileTC,centerLeftMenuMobileCC)\r\n }\r\n case \"centerRight\":{\r\n return this.getMenuByEnvironment(centerRightMenu,centerRightMenu, centerRightMenuMobileTC,centerRightMenuMobileCC)\r\n }\r\n case \"right\":{\r\n return this.getMenuByEnvironment(rightMenu,rightMenuTC, rightMenuMobileTC,rightMenuMobileCC)\r\n }\r\n }\r\n }\r\n\r\n getMenuByEnvironment(ccMenu,tcMenu,tcMobilMenu,ccMobilMenu){\r\n if(this.isNewRetailBCPosTC){\r\n // if(this.isMobileEnvironment){\r\n // return tcMobilMenu;\r\n // }else{\r\n // return tcMenu;\r\n // }\r\n return tcMenu;\r\n }else{\r\n // if(this.isMobileEnvironment){\r\n // return ccMobilMenu;\r\n // }else{\r\n // return ccMenu;\r\n // }\r\n return ccMenu;\r\n }\r\n }\r\n\r\n\r\n catchOfflineData = async () => {\r\n const { offlineSys } = this.context.stores;\r\n const isLoginAfter = localStore.get(\"isLoginAfter\");\r\n const downloadCatcherDay = localStore.get(\"downloadCatcherDay\");\r\n const currentDay = Math.ceil(new Date() / 1000 / 60 / 60 / 24)\r\n if (isLoginAfter == 1) {\r\n // 增加每天第一次登陆下载数据\r\n if (!downloadCatcherDay || currentDay > downloadCatcherDay) {\r\n try {\r\n Loading.show({\r\n text: '离线数据下载中,请稍等...',\r\n delay: 0,\r\n showProgress: true\r\n });\r\n function downProgress(params) {\r\n Loading.transfer(params)\r\n }\r\n let result = await offlineSys.downloadCatcherData(downProgress);\r\n if (result) localStore.set(\"downloadCatcherDay\", currentDay);\r\n Loading.hide();\r\n } catch (ex) {\r\n console.log('downloadCatcherData下载离线数据', ex);\r\n Loading.hide();\r\n } finally {\r\n Loading.hide();\r\n }\r\n }\r\n localStore.set(\"isLoginAfter\", 0)\r\n }\r\n }\r\n\r\n getOperation = () => {\r\n return new Promise((resolve, reject) => {\r\n const { homeOperation, functionData } = Request;\r\n homeOperation().then(operations => {\r\n localStore.set('operationsAuth', JSON.stringify(operations));\r\n this.setState({ operations: operations || [] });\r\n resolve()\r\n }).catch((err) => {\r\n console.log('homeOperation.error======', err);\r\n Loading.hide();\r\n resolve()\r\n })\r\n functionData().then(data => {\r\n PosSetData(data);\r\n })\r\n })\r\n }\r\n\r\n initPageData = async () => {\r\n const { stores = {}, headHook: { addClass } = {} } = this.context;\r\n const hasUseOffline = (PosInitData('IsOfflineCash') === \"1\") && !(this.isVerticalTouch || this.isMobileEnvironment); //是否允许离线\r\n // const hasUseOffline = true;\r\n if (hasUseOffline == true) {\r\n await this.catchOfflineData(); //离线数据下发\r\n }\r\n Loading.show({\r\n text: '权限加载中,请稍等...',\r\n delay: 2500\r\n });\r\n //权限加载\r\n try {\r\n await this.getOperation()\r\n } catch (err) {\r\n Loading.hide()\r\n } finally {\r\n Loading.hide();\r\n }\r\n addClass && addClass(this.state.id, 'portalHead');\r\n // 初始化参数设置。\r\n stores.setStore.initSetParams().then(ret => {\r\n // 在客户端中,如果开启了副屏设置,尝试这打开副屏。\r\n if (this.getScreenType() === true) {\r\n if (this.isHorizontalSunMi) {\r\n this.sunMiPresentationInit(ret);\r\n return;\r\n }\r\n console.log('副屏页面打开之前,user信息', JSON.stringify(stores.user));\r\n window.open('vicescreen?ts=' + new Date().getTime(), 'screen');\r\n setTimeout(() => {\r\n console.log('副屏页面打开之后,user信息', JSON.stringify(stores.user))\r\n }, 3000);\r\n }\r\n })\r\n this.hsyBasicInfoInit();\r\n }\r\n\r\n componentDidMount() {\r\n this.initPageData();\r\n this.isHsyIframeInclude && this.initCCFrameWin();\r\n }\r\n // 初始化好生意iframe\r\n initCCFrameWin() {\r\n let that = this;\r\n this.ccFrameStore = new stores.IframeStore(document.getElementById(CC_FRAME_CONF.id), this.hsy_domain, function(e, instance) {\r\n console.log(e, instance, 'cciframe 接收消息');\r\n if (e.data && e.data.type === CC_FRAME_CONF.HsyLoadFinish) {\r\n !that.state.isHsyLoadFinish && that.setState({ isHsyLoadFinish: true });\r\n }\r\n }, function(e, instance) {\r\n console.log(\"ccFrameWin 加载成功========>\", e, instance);\r\n instance.sendMessage({ type: CC_FRAME_CONF.initConnect, _ident_only_: CC_FRAME_CONF.identOnly });\r\n }, CC_FRAME_CONF.identOnly);\r\n }\r\n // 初始化商米副屏\r\n sunMiPresentationInit = (result) => {\r\n //SunMi初始化参数设置。\r\n //副屏幕交互。硬件改动20200428 需要在商米页面加载成功后才能发送 初始化命令\r\n // 进行主副屏数据交互 初始化\r\n console.log(result);\r\n const { storeName = '' } = stores.user.options.get('store') || {};\r\n const { RE_POSParamType } = enumController.getEnumOj();\r\n const { DUAL_SCREEN_SETTING } = RE_POSParamType;\r\n const filterResult = result && result.filter?result.filter((settingItem)=>{return settingItem.ParamType === DUAL_SCREEN_SETTING}):[];\r\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.sharedPreferencesSet(\"setting_setData\",filterResult).then(()=>{\r\n console.log(\"缓存数据成功\")\r\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.sendMessageToSecondScreen({ step: 0,storeName});\r\n });\r\n }\r\n\r\n // 初始化智+模块信息\r\n hsyBasicInfoInit() {\r\n const theme = stores.portalStore.themeStore;\r\n let color = '#FF8C25';\r\n switch (theme) {\r\n case 'orange':\r\n color = \"#FF8C25\";\r\n break;\r\n case 'blue':\r\n color = \"#3491FF\";\r\n break;\r\n case 'dark':\r\n color = \"#26A0DE\";\r\n break;\r\n case 'pink':\r\n color = \"#FF6B8C\";\r\n break;\r\n }\r\n const { PosId = '' } = localStore && localStore.get('StoreKey') || {};\r\n const cc_url = `${this.hsy_domain.replace('#/', '')}?fromApp=nretail&posid=${PosId}&content_only=true&bar_bg=${encodeURIComponent('#FFFFFF')}&bar_active_bg=${encodeURIComponent(color)}`;\r\n this.setState({ loadHsyURL: cc_url });\r\n }\r\n\r\n //初始化tc、tcyzj、tczsy信息\r\n getTcBasicInfoInit = () => {\r\n let userStore = User.restore();\r\n let sid = userStore.sid;\r\n let tplusUrl = PosInitData(\"TplusSite\") || PosInitData(\"tplusinnersite\");\r\n if (!tplusUrl) {\r\n let msg = \"请用admin登录,在服务器配置–地址配置处,设置“内部或外部网络访问T+服务器的地址”!\";\r\n ModalWraper.warning(\r\n {\r\n title: '温馨提示',\r\n content: msg,\r\n okText: '确定',\r\n okType: 'primary',\r\n }\r\n )\r\n return false;\r\n }\r\n if (tplusUrl.substring(tplusUrl.length - 1) !== '/') {\r\n tplusUrl += '/';\r\n }\r\n let ossjumpUrl = `${tplusUrl}view/portal/portal.html?t=${new Date().getTime()}`\r\n if (sid) {\r\n ossjumpUrl = `${tplusUrl}view/ossjump.html?t=${new Date().getTime()}&sid=${sid}`\r\n }\r\n let postMsgUrl = ossjumpUrl;\r\n let { user } = this.context.stores;\r\n let loginInfo = user.options.get('loginInfo');\r\n const { UserCode, AccountNum, posCode, TplusStoreId } = loginInfo || {};\r\n const uid = this.tplusEncode(UserCode);\r\n const pwd = this.tplusEncode(user.options.get(\"password\"));\r\n const accNum = this.tplusEncode(AccountNum)\r\n const code = this.tplusEncode(posCode);\r\n const store = this.tplusEncode(TplusStoreId + '');\r\n ossjumpUrl += `&fromApp=nretail&way=inframe&user=${uid}&pwd=${pwd}&accNum=${accNum}&posCode=${code}&storeID=${store}`;\r\n return { ossjumpUrl, postMessageUrl: postMsgUrl };\r\n }\r\n\r\n componentWillUnmount() {\r\n this.ccFrameStore && this.ccFrameStore.destroy();\r\n const { headHook: { removeClass } = {} } = this.context\r\n removeClass && removeClass(this.state.id, 'portalHead');\r\n }\r\n\r\n componentWillReceiveProps() {\r\n if (this.getScreenType() === true) {\r\n if (this.isHorizontalSunMi && this.FuPingIsLoaded) {\r\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.sendMessageToSecondScreen({ step: 1 });\r\n } else {\r\n nativeMs && nativeMs.setIpcRendererMethod('ReplyScreen', { step: 1 })\r\n }\r\n }\r\n }\r\n\r\n // 获取副屏的状态\r\n getScreenType = () => {\r\n let flag = false;\r\n if (this.hasElectron === true || this.isHorizontalSunMi) {\r\n let data = localStore.get('setting_setData') || [];\r\n data = data.filter(item => item.Name === 'EnableDoubleScreen');\r\n data = data && data.length > 0 ? data.shift() : null;\r\n if (data && data.Value === '1') {\r\n flag = true;\r\n }\r\n }\r\n return flag;\r\n }\r\n\r\n menuClick(item, e) {\r\n history.push(item.path);\r\n }\r\n saveLog = (name) => {\r\n const { saveLogo } = Request;\r\n name = \"进入模块:\" + name;\r\n saveLogo('进入模块', undefined, name);\r\n }\r\n\r\n handelClick = (values = {}) => {\r\n const { key: type, isModal, iframe, app, title, Name, style, search, tmenuCode } = values;\r\n const { operations, isHsyLoadFinish } = this.state;\r\n const controllable = operations.find(vv => vv.Name === Name);\r\n const { Visibility, HoldFunctionAuth, Title, MenuCode } = controllable || {};\r\n let errorTip;\r\n\r\n if(!stores.offlineSys.shouldOpenHomeOperation(Name)) {\r\n Message.warn(\"离线模式下此操作不可用\")\r\n return;\r\n }\r\n\r\n if (type == 'more') {\r\n // if (this.isMobileEnvironment) { //暂时不支持android系统跳转\r\n // return Message.warn('新功能正在研发中,敬请期待。');\r\n // }\r\n return this.setState({ showMoreModal: true })\r\n }\r\n if (!Title) {\r\n return ModalWraper.warning({\r\n title: '提示',\r\n content: '您的权限配置请求失败,请重新登录',\r\n onOk() {\r\n User.logout();\r\n },\r\n okType: 'primary',\r\n })\r\n }\r\n\r\n\r\n\r\n if (!Visibility) {\r\n errorTip = `您的 ${Title} 模块没有启用`;\r\n } else if (!HoldFunctionAuth) {\r\n errorTip = `您没有操作 ${Title} 的权限`;\r\n }\r\n const { portalStore } = this.context.stores;\r\n if (errorTip) {\r\n return Message.warn(errorTip);\r\n }\r\n if (isModal) {\r\n return stores.modalRouter.show({ url: `/${type}`, width: 800, title });\r\n }\r\n // 支持页面内打开,减少再次加载页面的时间。\r\n if (iframe === true) return this.toFramePage({ type, app, title, style, search, MenuCode, tmenuCode, isHsyLoadFinish });\r\n switch (type) {\r\n case 'cashier':\r\n portalStore.checkDuty().then((onDutyMessage) => {\r\n if (!!onDutyMessage) {\r\n const { Code, IdShiftVoucher, Shift, IdDailyVoucher, DailyCode } = onDutyMessage;\r\n PosSetData({ ShiftCode: Code, IdShiftVoucher, Shift, IdDailyVoucher, DailyCode });\r\n console.log('onDutyMessage======', onDutyMessage);\r\n this.saveLog(title);\r\n history.push('/RE/RE01');\r\n }\r\n }).catch((data) => {\r\n console.log(\"进入前台收银检查是否当班返回错误\", data);\r\n });\r\n break;\r\n case 'onDuty':\r\n portalStore.onDuty().then((onDutyMessage) => {\r\n if (onDutyMessage && onDutyMessage.shift) {\r\n MiddleWare.execute('onDuty')\r\n }\r\n });\r\n break;\r\n case 'offDuty':\r\n history.push('/offDuty?type=offDuty');\r\n break;\r\n case 'settleDialy':\r\n if (portalStore.bPosDaily()) {\r\n history.push('/offDuty?type=settleDaily');\r\n } else {\r\n portalStore.onMakerDaily();\r\n }\r\n break;\r\n default:\r\n history.push(`/${type}`);\r\n break;\r\n }\r\n };\r\n\r\n //跳转其他页面,以内嵌形式打开\r\n toFramePage = (params) => {\r\n const { app, title, style, search, tmenuCode, MenuCode, isHsyLoadFinish } = params || {}\r\n switch (app) {\r\n case 'cc':\r\n let sh = '';\r\n // if (this.isMobileEnvironment) { //暂时不支持android系统跳转\r\n // return Message.warn('新功能正在研发中,敬请期待。');\r\n // }\r\n if (!isHsyLoadFinish && !this.isMobileEnvironment) {\r\n return Message.warn('正在加载资源中,请稍后。');\r\n }\r\n if (!search) {\r\n return Message.warn('正在紧急研发中...');\r\n } else if (search && search.length > 0) {\r\n sh = (search.length > 1 && MenuCode) ? search.find(v => v.menu === MenuCode) : search[0];\r\n sh = sh || search[0];\r\n }\r\n if (!sh) {\r\n return Message.warn('传递参数有误,请查证。');\r\n }\r\n this.toHsyPage({ ...style, ...sh });\r\n break;\r\n case 'tc':\r\n if (tmenuCode || MenuCode) {\r\n this.saveLog(title);\r\n if (MenuCode) {\r\n this.toTplusPage(MenuCode, search);\r\n } else {\r\n this.toTplusPage(tmenuCode, search);\r\n }\r\n }\r\n break;\r\n }\r\n }\r\n\r\n getTplusUrlFromCloudServer = () => {//获取T+服务器配置地址。\r\n let userStore = User.restore();\r\n let data = 'accesstoken=' + `${userStore.accessToken}` + '&cloudOrgId=' + `${userStore.orgId}`;\r\n let url = `${HTTP_PROXY_URL}` + encodeURIComponent('http://mns.chanapp.chanjet.com/web/WebServer/get?' + `${data}`);\r\n console.log(url);\r\n let fetchHeader = {\r\n headers: {\r\n 'Content-Type': 'application/x-www-form-urlencoded'\r\n }\r\n };\r\n return new Promise((resolve, reject) => {\r\n fetch(url, fetchHeader)\r\n .then(function (response) {\r\n return response.json();\r\n }).then(json => {\r\n console.log(json);\r\n resolve(json);\r\n }).catch(ex => {\r\n console.log(ex);\r\n reject(err);\r\n })\r\n })\r\n }\r\n\r\n //跳转到T+\r\n toTplusPage = async (tmenuCode, search) => {\r\n let ret = this.getTcBasicInfoInit();\r\n if (ret === false) return;\r\n let { ossjumpUrl, postMessageUrl } = ret || {};\r\n let dsearchPlanID = '';\r\n if (search && search.id) {\r\n const { portalStore } = this.context.stores;\r\n dsearchPlanID = await portalStore.getSearchPlanId(search);\r\n }\r\n let menu = this.tplusEncode(tmenuCode);\r\n ossjumpUrl += `&menu=${menu}&fromUrl=${this.tplusEncode(location.origin)}`;\r\n if (dsearchPlanID) {\r\n ossjumpUrl += `&searchPlanID=${this.tplusEncode(dsearchPlanID)}`;\r\n }\r\n if (this.isHorizontalSunMi) {\r\n window.android_CommonFun.openWebUrlByOutBrowser(ossjumpUrl);\r\n } else {\r\n //对于专属云、云主机,如果配置的http,存在跨域问题,暂时解决不了,只能通过打开默认浏览器打开。\r\n //目前T+页面有很多进一步操作的界面,无法得到解决,特针对跳转T+页面的,都使用默认浏览器打开。2021-10-27\r\n if (this.new_retail_app == 'tc' || this.new_retail_app == 'tczsy' || this.new_retail_app == 'tcyzj') {\r\n nativeMs.useDefaultBrowser(ossjumpUrl);\r\n return;\r\n }\r\n let external_frame_tc = document.getElementById('external-frame-tc');\r\n let win = external_frame_tc.contentWindow;\r\n const { loadTcURL } = this.state;\r\n if (loadTcURL) {\r\n win && win.postMessage({ doType: 'openMenuFromPos', tmenuCode, ossjumpUrl, dsearchPlanID }, postMessageUrl);\r\n this.setState({ loadTcPage: true });\r\n } else {\r\n this.setState({ loadTcURL: ossjumpUrl, loadTcPage: true });\r\n }\r\n rx$.changeHsy.next({\r\n back: true, fn: () => {\r\n win && win.postMessage({ doType: 'closeCurrentMenuFromPos' }, postMessageUrl);\r\n this.setState({ loadTcPage: false });\r\n rx$.changeHsy.next({ back: false });\r\n }\r\n })\r\n }\r\n }\r\n\r\n //跳转CC\r\n toHsyPage = async (params) => {\r\n let {\r\n content_only, //只加载内容区域\r\n bar_bg, //页签栏颜色\r\n bar_active_bg, //激活态的标签背景颜色\r\n menu,\r\n secondRouter,\r\n activePrompt,\r\n closePrompt,\r\n closeable,\r\n leavePrompt,\r\n lock,\r\n pageId,\r\n pageParams,\r\n path,\r\n tabId,\r\n tabLabel,\r\n pageType,\r\n _k\r\n } = params;\r\n\r\n let filter = {};\r\n //对仓库参数的处理\r\n const IdWarehouse = PosInitData('IdWarehouse') || '';\r\n const WarehouseName = PosInitData('WarehouseName') || '';\r\n const IsPerformanceDistribution = PosInitData('PerformanceDistribution') === 'SHIPPER_STORE' || false;\r\n const { IdStore = '', PosId = '' } = stores.user.options.get('loginInfo') || {};\r\n const { storeName = '' } = stores.user.options.get('store') || {};\r\n\r\n switch (pageType) {\r\n case 'voucher':\r\n filter = {\r\n defaultValue: {\r\n storeId: {\r\n id: IdStore,\r\n storeName\r\n },\r\n warehouseId: {\r\n id: IdWarehouse,\r\n name: WarehouseName\r\n }\r\n }\r\n }\r\n //要货单特殊处理\r\n if (menu == 'require-goods-new') {\r\n filter = {\r\n defaultValue: {\r\n storeId: {\r\n id: IdStore,\r\n storeName\r\n },\r\n requireWarehouseId: {\r\n id: IdWarehouse,\r\n name: WarehouseName\r\n }\r\n }\r\n }\r\n }\r\n if (menu == 'pre-sell'){\r\n filter = {\r\n storeId: [{id: IdStore, storeName}],\r\n orderStatusEnum: 'WAIT_DELIVERY',\r\n }\r\n }\r\n break;\r\n case 'report':\r\n filter = {\r\n filterValue: {\r\n storeId: {\r\n value: {\r\n id: IdStore,\r\n storeName\r\n }\r\n },\r\n warehouseId: {\r\n value: [{\r\n id: IdWarehouse,\r\n name: WarehouseName\r\n }]\r\n }\r\n }\r\n }\r\n // 收银统计表\r\n if (IsPerformanceDistribution && menu == 'retail-cash-report') {\r\n filter = {\r\n filterValue: {\r\n deliveryStoreId: {\r\n value: {\r\n id: IdStore,\r\n storeName\r\n }\r\n },\r\n warehouseId: {\r\n value: [{\r\n id: IdWarehouse,\r\n name: WarehouseName\r\n }]\r\n }\r\n }\r\n }\r\n }\r\n // 售后、配送\r\n if (menu == 'return-order' || menu == 'order-manage') {\r\n filter = {\r\n filterValue: {\r\n storeId: {\r\n value: {\r\n id: IdStore,\r\n storeName\r\n }\r\n },\r\n deliveryWarehouseId: {\r\n value: [{\r\n id: IdWarehouse,\r\n name: WarehouseName\r\n }]\r\n }\r\n }\r\n }\r\n }\r\n break;\r\n }\r\n bar_bg = encodeURIComponent(bar_bg);\r\n bar_active_bg = encodeURIComponent(bar_active_bg);\r\n menu = secondRouter ? `${menu}/${this.randomWord(true, 13)}` : menu;\r\n pageId = menu;\r\n pageParams = Object.assign(pageParams, filter);\r\n path = encodeURIComponent(path);\r\n _k = this.randomWord(false, 6);\r\n\r\n const commonArgs = `?posid=${PosId}&content_only=${content_only}&bar_bg=${bar_bg}&bar_active_bg=${bar_active_bg}`;\r\n const actionUrl = `#/${menu}?activePrompt=${activePrompt}&closePrompt=${closePrompt}&closeable=${closeable}&leavePrompt=${leavePrompt}&lock=${lock}&pageId=${pageId}&pageParams=${encodeURIComponent(JSON.stringify(pageParams))}&path=${path}&tabId=${tabId}&tabLabel=${encodeURIComponent(tabLabel)}&_k=${_k}`;\r\n let cc_url = this.hsy_domain.replace('#/', '') + commonArgs + actionUrl;\r\n console.log('web_hsy_url:', cc_url);\r\n if(this.isHorizontalSunMi){\r\n const CC_WEB_URL = await User.getLoginCCMidWebUrl(cc_url)\r\n console.log('CC_WEB_URL:', CC_WEB_URL);\r\n window.android_CommonFun.openWebUrlByOutBrowser(CC_WEB_URL);\r\n }else{\r\n // this.ccFrameWin && this.ccFrameWin.HsyRouterJump && this.ccFrameWin.HsyRouterJump(pageId, pageParams, { closeable, tabLabel });\r\n this.ccFrameStore && this.ccFrameStore.sendMessage({type: CC_FRAME_CONF.HsyRouterJump, pageId, pageParams, extStateParams: { closeable, tabLabel }, _ident_only_: CC_FRAME_CONF.identOnly })\r\n if (this.state.showMoreModal === true) {\r\n this.setState({ loadHsyPage: true, showMoreModal: false });\r\n } else {\r\n this.setState({ loadHsyPage: true });\r\n }\r\n rx$.changeHsy.next({\r\n back: true, fn: () => {\r\n this.setState({ loadHsyPage: false });\r\n rx$.changeHsy.next({ back: false });\r\n // 在打开页签之前,关闭之前的,返回键的回调函数\r\n // this.ccFrameWin && this.ccFrameWin.HsyRouterClean && this.ccFrameWin.HsyRouterClean();\r\n this.ccFrameStore && this.ccFrameStore.sendMessage({ type: CC_FRAME_CONF.HsyRouterClean, _ident_only_: CC_FRAME_CONF.identOnly });\r\n }\r\n })\r\n }\r\n }\r\n\r\n randomWord = (only, digits) => {\r\n let str = \"\";\r\n const number = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];\r\n const letter = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']\r\n let arr = only ? [...number] : [...number, ...letter];\r\n for (let i = 0; i < digits; i++) {\r\n let pos = Math.round(Math.random() * (arr.length - 1));\r\n str += arr[pos];\r\n }\r\n return str;\r\n }\r\n\r\n closeFrameModal = () => {\r\n this.setState({ showModal: false })\r\n }\r\n\r\n closeMoreModal = () => {\r\n this.setState({ showMoreModal: false })\r\n }\r\n\r\n tplusEncode = (code) => {\r\n let c = String.fromCharCode(code.charCodeAt(0) + code.length);\r\n for (let i = 1; i < code.length; i++) {\r\n c += String.fromCharCode(code.charCodeAt(i) + code.charCodeAt(i - 1));\r\n }\r\n let ret = this.TplusBase64Encode(c);\r\n return ret;\r\n }\r\n\r\n TplusBase64Encode = (input) => {\r\n const _keyStr = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\r\n let output = \"\";\r\n let chr1, chr2, chr3, enc1, enc2, enc3, enc4;\r\n let i = 0;\r\n input = this._utf8_encode(input);\r\n while (i < input.length) {\r\n chr1 = input.charCodeAt(i++);\r\n chr2 = input.charCodeAt(i++);\r\n chr3 = input.charCodeAt(i++);\r\n enc1 = chr1 >> 2;\r\n enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\r\n enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\r\n enc4 = chr3 & 63;\r\n if (isNaN(chr2)) {\r\n enc3 = enc4 = 64;\r\n } else if (isNaN(chr3)) {\r\n enc4 = 64;\r\n }\r\n output = output +\r\n _keyStr.charAt(enc1) + _keyStr.charAt(enc2) +\r\n _keyStr.charAt(enc3) + _keyStr.charAt(enc4);\r\n }\r\n return output;\r\n }\r\n _utf8_encode = (string) => {\r\n string = string.replace(/\\r\\n/g, \"\\n\");\r\n let utftext = \"\";\r\n for (let n = 0; n < string.length; n++) {\r\n let c = string.charCodeAt(n);\r\n if (c < 128) {\r\n utftext += String.fromCharCode(c);\r\n } else if ((c > 127) && (c < 2048)) {\r\n utftext += String.fromCharCode((c >> 6) | 192);\r\n utftext += String.fromCharCode((c & 63) | 128);\r\n } else {\r\n utftext += String.fromCharCode((c >> 12) | 224);\r\n utftext += String.fromCharCode(((c >> 6) & 63) | 128);\r\n utftext += String.fromCharCode((c & 63) | 128);\r\n }\r\n }\r\n return utftext;\r\n }\r\n\r\n operationControl = (menu = []) => {\r\n const { operations } = this.state;\r\n menu.forEach(v => {\r\n if (v.sub) {\r\n return this.operationControl(v.sub);\r\n }\r\n const controllable = operations.find(vv => vv.Name === v.Name);\r\n const { Visibility, HoldFunctionAuth, Title } = controllable || {};\r\n let errorTip;\r\n if (!Visibility) {\r\n errorTip = `您的 ${Title} 模块没有启用`;\r\n } else if (!HoldFunctionAuth) {\r\n errorTip = `您没有操作 ${Title} 的权限`;\r\n }\r\n v.errorTip = errorTip;\r\n });\r\n return menu;\r\n }\r\n\r\n createLeftNode = () => {\r\n const menu = this.leftMenu;\r\n var width = menu.length == 0 ? this.isMobileEnvironment & !this.isNewRetailBCPosTC ? 5 : 4 : 7;\r\n if(menu.length == 0) {\r\n return (<Col xl={width} md={width} className='portal-left-col' key='left'>\r\n <div className='portal-left-content'></div>\r\n </Col>);\r\n // return null;\r\n }\r\n const menuNode = menu.map(v => {\r\n return (v.container ?\r\n <div style={v.container.style} className={v.container.className} key={v.container.className}>\r\n {\r\n v.sub.map(vv => {\r\n let item = vv;\r\n if (vv.maybe === true) {\r\n let status = !!PosInitData('ShowStorePrice');\r\n item = status ? vv : vv.second;\r\n }\r\n return (<div\r\n className={`member-item ${item.className} ${item.disabled ? 'menu-item-disabled' : ''}`}\r\n key={item.className}\r\n onClick={this.handelClick.bind(this, item)}\r\n >\r\n {!!item.title && <h1>{item.title}</h1>}\r\n {!!item.label && <p>{item.label}</p>}\r\n {!!item.icon && <Ticon icon={item.icon} />}\r\n </div>)\r\n })\r\n }\r\n </div>\r\n :\r\n <div\r\n className={`member-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\r\n key={v.className}\r\n onClick={this.handelClick.bind(this, v)}\r\n >\r\n {v.title && <h1>{v.title}</h1>}\r\n {v.label && <p>{v.label}</p>}\r\n {v.icon && <Ticon icon={v.icon} />}\r\n </div>)\r\n })\r\n return (<Col xl={7} md={7} className='portal-left-col' key='left'>\r\n <div className='portal-left-content'>{menuNode}</div>\r\n </Col>);\r\n }\r\n createCenterNode = () => {\r\n const menuLeftNode = this.centerLeftMenu.map(v => {\r\n return (<div\r\n className={`worktop-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\r\n style={v.style}\r\n key={v.className}\r\n onClick={this.handelClick.bind(this, v)}\r\n >\r\n {v.title && <h1>{v.title}</h1>}\r\n {v.label && <p>{v.label}</p>}\r\n {v.icon && <Ticon icon={v.icon} />}\r\n {v.disabled && <div className='item-disabled-placeholder' />}\r\n </div>)\r\n });\r\n const menuRightNode = this.centerRightMenu.map(v => {\r\n return (v.container ?\r\n <div style={v.container.style} className={v.container.className} key={v.container.className}>\r\n {\r\n v.sub.map(vv => {\r\n return (<div\r\n className={`worktop-item ${vv.className} ${vv.disabled ? 'menu-item-disabled' : ''}`}\r\n key={vv.className}\r\n onClick={this.handelClick.bind(this, vv)}\r\n >\r\n {vv.title && <h1>{vv.title}</h1>}\r\n {vv.label && <p>{vv.label}</p>}\r\n {vv.icon && <Ticon icon={vv.icon} />}\r\n </div>)\r\n })\r\n }\r\n </div>\r\n :\r\n <div\r\n className={`worktop-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\r\n key={v.className}\r\n onClick={this.handelClick.bind(this, v)}\r\n >\r\n {v.title && <h1>{v.title}</h1>}\r\n {v.label && <p>{v.label}</p>}\r\n {v.icon && <Ticon icon={v.icon} />}\r\n </div>)\r\n });\r\n return <div><div className='worktop-container-left'>{menuLeftNode}</div><div className='worktop-container-right'>{menuRightNode}</div></div>;\r\n }\r\n createRightNode = () => {\r\n var width = this.leftMenu.length == 0 ? this.isMobileEnvironment & !this.isNewRetailBCPosTC ? 9 : 10 : 7;\r\n const node = this.rightMenu.map(v => {\r\n return (v.container ?\r\n <div style={v.container.style} className={v.container.className} key={v.container.className}>\r\n {\r\n v.sub.map(vv => {\r\n return (<div\r\n className={`stock-item ${vv.className} ${vv.disabled ? 'menu-item-disabled' : ''}`}\r\n key={vv.className}\r\n onClick={this.handelClick.bind(this, vv)}\r\n >\r\n {vv.title && <h1>{vv.title}</h1>}\r\n {vv.label && <p>{vv.label}</p>}\r\n {vv.icon && <Ticon icon={vv.icon} />}\r\n </div>)\r\n })\r\n }\r\n </div>\r\n :\r\n <div\r\n className={`stock-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\r\n style={v.style}\r\n key={v.className}\r\n onClick={this.handelClick.bind(this, v)}\r\n >\r\n {!!v.title && <h1>{v.title}</h1>}\r\n {!!v.icon && <Ticon icon={v.icon} />}\r\n </div>)\r\n });\r\n return <Col xl={width} md={width} className='portal-right-col' key='right'>\r\n <div className='portal-right-content'>{node}</div>\r\n </Col>\r\n }\r\n\r\n createMoreNode = () => {\r\n const arrs = this.getMoreNodeInfo();\r\n const items = this.isNewRetailBCPosTC ? arrs.sub_tc : arrs.sub_cc || [];\r\n const node = items.length > 0 && items.map(v => {\r\n return (\r\n <div\r\n className={`modal-quick ${v.className}`}\r\n style={v.style}\r\n key={v.className}\r\n onClick={this.handelClick.bind(this, v)}\r\n >\r\n {!!v.icon && <div className='quick'><Ticon icon={v.icon} /></div>}\r\n {!!v.title && <h1>{v.title}</h1>}\r\n </div>\r\n )\r\n })\r\n return node;\r\n }\r\n\r\n getMoreNodeInfo = () => {\r\n if (this.isNewRetailBCPosTC) {\r\n // if (this.isMobileEnvironment) {\r\n // return this.centerRightMenu.find(vv => vv.key == 'more') || {};\r\n // } else {\r\n return this.centerRightMenu.find(v => v.sub && v.sub.find(vv => vv.key == 'more')).sub[1] || {};\r\n // }\r\n } else {\r\n // if (this.isMobileEnvironment) {\r\n // return this.centerRightMenu.find(vv => vv.key == 'more') || {};\r\n // } else {\r\n return this.centerRightMenu.find(v => v.sub && v.sub.find(vv => vv.key == 'more')).sub[1] || {};\r\n // }\r\n }\r\n }\r\n\r\n render() {\r\n const { showModal,showMoreModal, modalURL, loadHsyPage, loadHsyURL, loadTcPage, loadTcURL } = this.state;\r\n const screenHeight = window.screen.availHeight - 100;\r\n let htmlContent = null;\r\n if (this.isVerticalTouch) {\r\n htmlContent = <VerticalPortal handelClick={this.handelClick} />\r\n }\r\n // else if (this.isHorizontalPad) {\r\n // htmlContent = <HorizontalPadPortal handelClick={this.handelClick} />\r\n // }\r\n else {\r\n htmlContent = (<Layout style={{ height: '100%' }} className='portal-content'>\r\n <Content style={{ paddingLeft: '50px', paddingRight: '50px' }} className='portal-container portal-container-center'>\r\n <Row className=\"portal-content-row\">\r\n {this.createLeftNode()}\r\n <Col xl={10} md={10} className='portal-center-col' key='center'>\r\n <div className='portal-center-content'>\r\n {this.createCenterNode()}\r\n </div>\r\n </Col>\r\n {this.createRightNode()}\r\n </Row>\r\n </Content>\r\n {\r\n <div className={loadHsyPage ? 'portal-hsy-tc-container' : 'portal-hsy-tc-container portal-hsy-tc-container-hide'}>\r\n <iframe src={loadHsyURL} width='100%' height='93%' frameborder=\"no\" border=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"yes\" allowtransparency=\"true\" id={CC_FRAME_CONF.id}></iframe>\r\n </div>\r\n }\r\n {\r\n <div className={loadTcPage ? 'portal-hsy-tc-container' : 'portal-hsy-tc-container portal-hsy-tc-container-hide'}>\r\n <iframe src={loadTcURL} width='100%' height='93%' frameborder=\"no\" border=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"yes\" allowtransparency=\"true\" id=\"external-frame-tc\"></iframe>\r\n </div>\r\n }\r\n {\r\n this.isMobileEnvironment &&\r\n <Modal\r\n visible={showModal}\r\n onCancel={this.closeFrameModal}\r\n width={'99%'}\r\n height={'99%'}\r\n footer={null}\r\n >\r\n <iframe src={modalURL} width='100%' height={screenHeight} frameborder=\"no\" border=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"yes\" allowtransparency=\"true\"></iframe>\r\n </Modal>\r\n }\r\n {\r\n <Modal\r\n title={'更多'}\r\n className={'portal-container-modal-more'}\r\n visible={showMoreModal}\r\n onCancel={this.closeMoreModal}\r\n width={800}\r\n height={375}\r\n footer={null}\r\n centered\r\n maskClosable={false}\r\n keyboard={false}\r\n >\r\n {\r\n this.createMoreNode()\r\n }\r\n </Modal>\r\n }\r\n </Layout>)\r\n }\r\n return htmlContent;\r\n }\r\n}"]}
1
+ {"version":3,"sources":["tplus-portaltouch/pages/Portalbc/index.js"],"names":["hasElectron","env","platform","constant","electron","Content","Layout","HTTP_PROXY_URL","CC_FRAME_CONF","id","identOnly","initConnect","HsyLoadFinish","HsyRouterClean","HsyRouterJump","observer","props","catchOfflineData","offlineSys","context","stores","isLoginAfter","localStore","get","downloadCatcherDay","currentDay","Math","ceil","Date","downProgress","params","Loading","transfer","show","text","delay","showProgress","downloadCatcherData","result","set","hide","console","log","getOperation","resolve","reject","homeOperation","Request","functionData","then","operations","setState","catch","err","data","initPageData","headHook","addClass","hasUseOffline","otherOfflineStatus","state","setStore","initSetParams","getScreenType","isHorizontalSunMi","sunMiPresentationInit","ret","user","window","open","getTime","setTimeout","hsyBasicInfoInit","options","storeName","enumController","getEnumOj","RE_POSParamType","DUAL_SCREEN_SETTING","filterResult","filter","settingItem","ParamType","sunMi_PresentationManager","sharedPreferencesSet","sendMessageToSecondScreen","step","getTcBasicInfoInit","userStore","User","restore","sid","tplusUrl","tplusSiteUrl","msg","ModalWraper","warning","title","content","okText","okType","substring","length","ossjumpUrl","postMsgUrl","loginInfo","UserCode","AccountNum","posCode","TplusStoreId","uid","tplusEncode","pwd","accNum","code","store","postMessageUrl","flag","item","Name","shift","Value","saveLog","name","saveLogo","undefined","handelClick","values","type","key","isModal","iframe","app","style","search","tmenuCode","isHsyLoadFinish","controllable","find","vv","Visibility","HoldFunctionAuth","Title","MenuCode","errorTip","shouldOpenHomeOperation","Message","warn","duration","isEnablePromotion","isEnableMember","showMoreModal","onOk","logout","portalStore","modalRouter","url","width","toFramePage","checkDuty","onDutyMessage","Code","IdShiftVoucher","Shift","IdDailyVoucher","DailyCode","ShiftCode","history","push","onDuty","MiddleWare","execute","bPosDaily","onMakerDaily","sh","isMobileEnvironment","v","menu","toHsyPage","toTplusPage","getTplusUrlFromCloudServer","accessToken","orgId","encodeURIComponent","fetchHeader","headers","fetch","response","json","ex","dsearchPlanID","getSearchPlanId","location","origin","android_CommonFun","openWebUrlByOutBrowser","new_retail_app","nativeMs","useDefaultBrowser","external_frame_tc","document","getElementById","win","contentWindow","loadTcURL","postMessage","doType","loadTcPage","rx$","changeHsy","next","back","fn","content_only","bar_bg","bar_active_bg","secondRouter","activePrompt","closePrompt","closeable","leavePrompt","lock","pageId","pageParams","path","tabId","tabLabel","pageType","_k","IdWarehouse","idWarehouse","WarehouseName","warehouseName","IsPerformanceDistribution","performanceDistribution","IdStore","PosId","defaultValue","storeId","warehouseId","requireWarehouseId","orderStatusEnum","filterValue","value","deliveryStoreId","deliveryWarehouseId","randomWord","commonArgs","actionUrl","cc_url","hsy_domain","replace","getLoginCCMidWebUrl","CC_WEB_URL","ccFrameStore","sendMessage","extStateParams","_ident_only_","loadHsyPage","only","digits","str","number","letter","arr","i","pos","round","random","closeFrameModal","showModal","closeMoreModal","c","String","fromCharCode","charCodeAt","TplusBase64Encode","input","_keyStr","output","chr1","chr2","chr3","enc1","enc2","enc3","enc4","_utf8_encode","isNaN","charAt","string","utftext","n","operationControl","forEach","sub","createLeftNode","leftMenu","isNewRetailBCPosTC","menuNode","map","container","className","maybe","showStorePrice","second","disabled","bind","label","icon","createCenterNode","menuLeftNode","centerLeftMenu","menuRightNode","centerRightMenu","createRightNode","node","rightMenu","createMoreNode","arrs","getMoreNodeInfo","items","sub_tc","sub_cc","now","loadHsyURL","modalURL","isVerticalTouch","isHorizontalPad","FuPingIsLoaded","getWebEntry","isHsyIframeInclude","isOfflineCash","getMenuByPosition","position","Menus","leftMenuTC","rightMenuTC","centerLeftMenuMobileCC","centerLeftMenuMobileTC","centerRightMenuMobileCC","centerRightMenuMobileTC","rightMenuMobileTC","rightMenuMobileCC","getMenuByEnvironment","ccMenu","tcMenu","tcMobilMenu","ccMobilMenu","initCCFrameWin","that","IframeStore","e","instance","theme","themeStore","color","destroy","removeClass","setIpcRendererMethod","screenHeight","screen","availHeight","htmlContent","height","paddingLeft","paddingRight","Component","propTypes","routes","PropTypes","array","contextTypes","object","infoRender","func"],"mappings":"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","file":"index.js","sourcesContent":["/*\r\n * @Description:\r\n * @Date: 2019-08-13 08:42:18\r\n * @LastEditTime: 2022-03-22 14:23:09\r\n * @LastEditors: chenlongad\r\n * @modify:修改跳转到T+的查询方案方式\r\n */\r\nimport React, { Component } from 'react';\r\nimport { observer } from 'mobx-react';\r\nimport { autorun} from 'mobx';\r\nimport { Row, Col, Modal } from 'antd';\r\nimport { history, stores, nativeMs, env, localStore } from 'mutants-microfx';\r\nimport { Ticon, Layout, ModalWraper, Loading, Message } from 'tplus-components-touch';\r\nimport { User } from 'tplus-api';\r\nimport { PosSetData, PosInitData } from 'tplus-poslogin';\r\nimport { platform, enumController } from 'mutants-util';\r\nimport PropTypes from 'prop-types';\r\nimport { Request } from '../../api/ModifyPassApi';\r\nimport Menus from './data';\r\nimport MiddleWare from '../../middleWare';\r\nimport VerticalPortal from './verticalPortal';\r\nimport HorizontalPadPortal from './horizontalPadPortal';\r\nimport './index.less';\r\nimport { async } from 'rxjs';\r\n\r\nconst hasElectron = (env.platform === env.constant.platform.electron);\r\nconst { Content } = Layout;\r\nconst HTTP_PROXY_URL = 'http://tfproxy.chanjet.com/?url=';\r\nconst CC_FRAME_CONF = { id: 'external-frame-cc', identOnly: '_pos_web_', initConnect: 'initConnect', HsyLoadFinish: 'HsyLoadFinish', HsyRouterClean: 'HsyRouterClean', HsyRouterJump : 'HsyRouterJump' };\r\n@observer\r\nexport default class extends Component {\r\n static propTypes = {\r\n routes: PropTypes.array,\r\n };\r\n static contextTypes = {\r\n stores: PropTypes.object,\r\n infoRender: PropTypes.func,\r\n headHook: PropTypes.object\r\n };\r\n ccFrameStore\r\n constructor(props) {\r\n super(props);\r\n this.hasElectron = hasElectron;\r\n this.state = {\r\n id: Date.now(),\r\n operations: [],\r\n showModal: false,\r\n showMoreModal: false,\r\n loadHsyPage: false,\r\n loadHsyURL: '',\r\n isHsyLoadFinish: false,\r\n loadTcPage: false,\r\n loadTcURL: '',\r\n modalURL: '',\r\n }\r\n const { isVerticalTouch, isHorizontalPad, isHorizontalSunMi, isNewRetailBCPosTC } = platform || {};\r\n this.isVerticalTouch = !!isVerticalTouch;\r\n this.isHorizontalPad = !!isHorizontalPad;\r\n this.isHorizontalSunMi = !!isHorizontalSunMi;\r\n this.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi;\r\n this.FuPingIsLoaded = false;\r\n this.isNewRetailBCPosTC = !!isNewRetailBCPosTC;\r\n this.new_retail_app = localStore && localStore.get('newRetailAppType');\r\n this.hsy_domain = User && User.getWebEntry();\r\n // 是否嵌套好生意的iframe\r\n this.isHsyIframeInclude = !this.isVerticalTouch && !this.isMobileEnvironment;\r\n //获取初始化参数\r\n this.isEnableMember = !!PosInitData('isEnableMember');//是否开启会员\r\n this.isEnablePromotion = !!PosInitData('isEnablePromotion');//是否开启促销\r\n this.isOfflineCash = PosInitData('IsOfflineCash');\r\n this.tplusSiteUrl = PosInitData(\"TplusSite\") || PosInitData(\"tplusinnersite\");\r\n this.idWarehouse = PosInitData('IdWarehouse') || '';\r\n this.warehouseName = PosInitData('WarehouseName') || '';\r\n this.performanceDistribution = PosInitData('PerformanceDistribution'); \r\n this.showStorePrice = PosInitData('ShowStorePrice');\r\n\r\n //首页布局\r\n this.leftMenu = this.getMenuByPosition('left');\r\n this.centerLeftMenu = this.getMenuByPosition('centerLeft');\r\n this.centerRightMenu = this.getMenuByPosition('centerRight');\r\n this.rightMenu = this.getMenuByPosition('right');\r\n this.randomWord = this.randomWord.bind(this);\r\n autorun(() => {\r\n this.hsyBasicInfoInit();\r\n });\r\n }\r\n\r\n getMenuByPosition(position) {\r\n const { leftMenu, centerLeftMenu, centerRightMenu, rightMenu, leftMenuTC, rightMenuTC, centerLeftMenuMobileCC, centerLeftMenuMobileTC, centerRightMenuMobileCC, centerRightMenuMobileTC, rightMenuMobileTC, rightMenuMobileCC } = Menus;\r\n switch (position) {\r\n case \"left\":{\r\n return this.getMenuByEnvironment(leftMenu,leftMenuTC,[],[]);\r\n }\r\n case \"centerLeft\":{\r\n return this.getMenuByEnvironment(centerLeftMenu,centerLeftMenu, centerLeftMenuMobileTC,centerLeftMenuMobileCC)\r\n }\r\n case \"centerRight\":{\r\n return this.getMenuByEnvironment(centerRightMenu,centerRightMenu, centerRightMenuMobileTC,centerRightMenuMobileCC)\r\n }\r\n case \"right\":{\r\n return this.getMenuByEnvironment(rightMenu,rightMenuTC, rightMenuMobileTC,rightMenuMobileCC)\r\n }\r\n }\r\n }\r\n\r\n getMenuByEnvironment(ccMenu,tcMenu,tcMobilMenu,ccMobilMenu){\r\n if(this.isNewRetailBCPosTC){\r\n // if(this.isMobileEnvironment){\r\n // return tcMobilMenu;\r\n // }else{\r\n // return tcMenu;\r\n // }\r\n return tcMenu;\r\n }else{\r\n // if(this.isMobileEnvironment){\r\n // return ccMobilMenu;\r\n // }else{\r\n // return ccMenu;\r\n // }\r\n return ccMenu;\r\n }\r\n }\r\n\r\n\r\n catchOfflineData = async () => {\r\n const { offlineSys } = this.context.stores;\r\n const isLoginAfter = localStore.get(\"isLoginAfter\");\r\n const downloadCatcherDay = localStore.get(\"downloadCatcherDay\");\r\n const currentDay = Math.ceil(new Date() / 1000 / 60 / 60 / 24)\r\n if (isLoginAfter == 1) {\r\n // 增加每天第一次登陆下载数据\r\n if (!downloadCatcherDay || currentDay > downloadCatcherDay) {\r\n try {\r\n Loading.show({\r\n text: '离线数据下载中,请稍等...',\r\n delay: 0,\r\n showProgress: true\r\n });\r\n function downProgress(params) {\r\n Loading.transfer(params)\r\n }\r\n let result = await offlineSys.downloadCatcherData(downProgress);\r\n if (result) localStore.set(\"downloadCatcherDay\", currentDay);\r\n Loading.hide();\r\n } catch (ex) {\r\n console.log('downloadCatcherData下载离线数据', ex);\r\n Loading.hide();\r\n } finally {\r\n Loading.hide();\r\n }\r\n }\r\n localStore.set(\"isLoginAfter\", 0)\r\n }\r\n }\r\n\r\n getOperation = () => {\r\n return new Promise((resolve, reject) => {\r\n const { homeOperation, functionData } = Request;\r\n homeOperation().then(operations => {\r\n localStore.set('operationsAuth', JSON.stringify(operations));\r\n this.setState({ operations: operations || [] });\r\n resolve()\r\n }).catch((err) => {\r\n console.log('homeOperation.error======', err);\r\n Loading.hide();\r\n resolve()\r\n })\r\n functionData().then(data => {\r\n PosSetData(data);\r\n })\r\n })\r\n }\r\n\r\n initPageData = async () => {\r\n const { stores = {}, headHook: { addClass } = {} } = this.context;\r\n\r\n const hasUseOffline = (PosInitData('IsOfflineCash') === \"1\") && !platform.otherOfflineStatus;; //是否允许离线\r\n // const hasUseOffline = true;\r\n if (hasUseOffline == true) {\r\n await this.catchOfflineData(); //离线数据下发\r\n }\r\n Loading.show({\r\n text: '权限加载中,请稍等...',\r\n delay: 2500\r\n });\r\n //权限加载\r\n try {\r\n await this.getOperation()\r\n } catch (err) {\r\n Loading.hide()\r\n } finally {\r\n Loading.hide();\r\n }\r\n addClass && addClass(this.state.id, 'portalHead');\r\n // 初始化参数设置。\r\n stores.setStore.initSetParams().then(ret => {\r\n // 在客户端中,如果开启了副屏设置,尝试这打开副屏。\r\n if (this.getScreenType() === true) {\r\n if (this.isHorizontalSunMi) {\r\n this.sunMiPresentationInit(ret);\r\n return;\r\n }\r\n console.log('副屏页面打开之前,user信息', JSON.stringify(stores.user));\r\n window.open('vicescreen?ts=' + new Date().getTime(), 'screen');\r\n setTimeout(() => {\r\n console.log('副屏页面打开之后,user信息', JSON.stringify(stores.user))\r\n }, 3000);\r\n }\r\n })\r\n this.hsyBasicInfoInit();\r\n }\r\n\r\n componentDidMount() {\r\n this.initPageData();\r\n this.isHsyIframeInclude && this.initCCFrameWin();\r\n }\r\n // 初始化好生意iframe\r\n initCCFrameWin() {\r\n let that = this;\r\n this.ccFrameStore = new stores.IframeStore(document.getElementById(CC_FRAME_CONF.id), this.hsy_domain, function(e, instance) {\r\n console.log(e, instance, 'cciframe 接收消息');\r\n if (e.data && e.data.type === CC_FRAME_CONF.HsyLoadFinish) {\r\n !that.state.isHsyLoadFinish && that.setState({ isHsyLoadFinish: true });\r\n }\r\n }, function(e, instance) {\r\n console.log(\"ccFrameWin 加载成功========>\", e, instance);\r\n instance.sendMessage({ type: CC_FRAME_CONF.initConnect, _ident_only_: CC_FRAME_CONF.identOnly });\r\n }, CC_FRAME_CONF.identOnly);\r\n }\r\n // 初始化商米副屏\r\n sunMiPresentationInit = (result) => {\r\n //SunMi初始化参数设置。\r\n //副屏幕交互。硬件改动20200428 需要在商米页面加载成功后才能发送 初始化命令\r\n // 进行主副屏数据交互 初始化\r\n console.log(result);\r\n const { storeName = '' } = stores.user.options.get('store') || {};\r\n const { RE_POSParamType } = enumController.getEnumOj();\r\n const { DUAL_SCREEN_SETTING } = RE_POSParamType;\r\n const filterResult = result && result.filter?result.filter((settingItem)=>{return settingItem.ParamType === DUAL_SCREEN_SETTING}):[];\r\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.sharedPreferencesSet(\"setting_setData\",filterResult).then(()=>{\r\n console.log(\"缓存数据成功\")\r\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.sendMessageToSecondScreen({ step: 0,storeName});\r\n });\r\n }\r\n\r\n // 初始化智+模块信息\r\n hsyBasicInfoInit() {\r\n const theme = stores.portalStore.themeStore;\r\n let color = '#FF8C25';\r\n switch (theme) {\r\n case 'orange':\r\n color = \"#FF8C25\";\r\n break;\r\n case 'blue':\r\n color = \"#3491FF\";\r\n break;\r\n case 'dark':\r\n color = \"#26A0DE\";\r\n break;\r\n case 'pink':\r\n color = \"#FF6B8C\";\r\n break;\r\n }\r\n const { PosId = '' } = localStore && localStore.get('StoreKey') || {};\r\n const cc_url = `${this.hsy_domain.replace('#/', '')}?fromApp=nretail&posid=${PosId}&content_only=true&bar_bg=${encodeURIComponent('#FFFFFF')}&bar_active_bg=${encodeURIComponent(color)}`;\r\n this.setState({ loadHsyURL: cc_url });\r\n }\r\n\r\n //初始化tc、tcyzj、tczsy信息\r\n getTcBasicInfoInit = () => {\r\n let userStore = User.restore();\r\n let sid = userStore.sid;\r\n let tplusUrl = this.tplusSiteUrl;\r\n if (!tplusUrl) {\r\n let msg = \"请用admin登录,在服务器配置–地址配置处,设置“内部或外部网络访问T+服务器的地址”!\";\r\n ModalWraper.warning(\r\n {\r\n title: '温馨提示',\r\n content: msg,\r\n okText: '确定',\r\n okType: 'primary',\r\n }\r\n )\r\n return false;\r\n }\r\n if (tplusUrl.substring(tplusUrl.length - 1) !== '/') {\r\n tplusUrl += '/';\r\n }\r\n let ossjumpUrl = `${tplusUrl}view/portal/portal.html?t=${new Date().getTime()}`\r\n if (sid) {\r\n ossjumpUrl = `${tplusUrl}view/ossjump.html?t=${new Date().getTime()}&sid=${sid}`\r\n }\r\n let postMsgUrl = ossjumpUrl;\r\n let { user } = this.context.stores;\r\n let loginInfo = user.options.get('loginInfo');\r\n const { UserCode, AccountNum, posCode, TplusStoreId } = loginInfo || {};\r\n const uid = this.tplusEncode(UserCode);\r\n const pwd = this.tplusEncode(user.options.get(\"password\"));\r\n const accNum = this.tplusEncode(AccountNum)\r\n const code = this.tplusEncode(posCode);\r\n const store = this.tplusEncode(TplusStoreId + '');\r\n ossjumpUrl += `&fromApp=nretail&way=inframe&user=${uid}&pwd=${pwd}&accNum=${accNum}&posCode=${code}&storeID=${store}`;\r\n return { ossjumpUrl, postMessageUrl: postMsgUrl };\r\n }\r\n\r\n componentWillUnmount() {\r\n this.ccFrameStore && this.ccFrameStore.destroy();\r\n const { headHook: { removeClass } = {} } = this.context\r\n removeClass && removeClass(this.state.id, 'portalHead');\r\n }\r\n\r\n componentWillReceiveProps() {\r\n if (this.getScreenType() === true) {\r\n if (this.isHorizontalSunMi && this.FuPingIsLoaded) {\r\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.sendMessageToSecondScreen({ step: 1 });\r\n } else {\r\n nativeMs && nativeMs.setIpcRendererMethod('ReplyScreen', { step: 1 })\r\n }\r\n }\r\n }\r\n\r\n // 获取副屏的状态\r\n getScreenType = () => {\r\n let flag = false;\r\n if (this.hasElectron === true || this.isHorizontalSunMi) {\r\n let data = localStore.get('setting_setData') || [];\r\n data = data.filter(item => item.Name === 'EnableDoubleScreen');\r\n data = data && data.length > 0 ? data.shift() : null;\r\n if (data && data.Value === '1') {\r\n flag = true;\r\n }\r\n }\r\n return flag;\r\n }\r\n\r\n menuClick(item, e) {\r\n history.push(item.path);\r\n }\r\n saveLog = (name) => {\r\n const { saveLogo } = Request;\r\n name = \"进入模块:\" + name;\r\n saveLogo('进入模块', undefined, name);\r\n }\r\n\r\n handelClick = (values = {}) => {\r\n const { key: type, isModal, iframe, app, title, Name, style, search, tmenuCode } = values;\r\n const { operations, isHsyLoadFinish } = this.state;\r\n const controllable = operations.find(vv => vv.Name === Name);\r\n const { Visibility, HoldFunctionAuth, Title, MenuCode } = controllable || {};\r\n let errorTip;\r\n\r\n // 离线模式\r\n if (!stores.offlineSys.shouldOpenHomeOperation(Name)) {\r\n Message.warn(\"离线模式下此操作不可用\", { duration: 3 })\r\n return;\r\n }\r\n\r\n // 会员拉新\r\n if (type == 'memberRecruitment' && (this.isEnablePromotion == false || this.isEnableMember == false)) {\r\n Message.warn(\"您还未开通会员/促销管理,请立即开通\", { duration: 3 })\r\n return;\r\n }\r\n\r\n // 会员消费查询\r\n if (type == 'memberConsumDetail' && this.isEnableMember == false) {\r\n Message.warn(\"您还未开通会员管理,请立即开通\", { duration: 3 })\r\n return;\r\n }\r\n\r\n // 更多\r\n if (type == 'more') {\r\n return this.setState({ showMoreModal: true })\r\n }\r\n\r\n if (!Title) {\r\n return ModalWraper.warning({\r\n title: '提示',\r\n content: '您的权限配置请求失败,请重新登录',\r\n onOk() {\r\n User.logout();\r\n },\r\n okType: 'primary',\r\n })\r\n }\r\n\r\n if (!Visibility) {\r\n errorTip = `您的 ${Title} 模块没有启用`;\r\n } else if (!HoldFunctionAuth) {\r\n errorTip = `您没有操作 ${Title} 的权限`;\r\n }\r\n const { portalStore } = this.context.stores;\r\n if (errorTip) {\r\n return Message.warn(errorTip);\r\n }\r\n if (isModal) {\r\n return stores.modalRouter.show({ url: `/${type}`, width: 800, title });\r\n }\r\n // 支持页面内打开,减少再次加载页面的时间。\r\n if (iframe === true) return this.toFramePage({ type, app, title, style, search, MenuCode, tmenuCode, isHsyLoadFinish });\r\n switch (type) {\r\n case 'cashier':\r\n portalStore.checkDuty().then((onDutyMessage) => {\r\n if (!!onDutyMessage) {\r\n const { Code, IdShiftVoucher, Shift, IdDailyVoucher, DailyCode } = onDutyMessage;\r\n PosSetData({ ShiftCode: Code, IdShiftVoucher, Shift, IdDailyVoucher, DailyCode });\r\n console.log('onDutyMessage======', onDutyMessage);\r\n this.saveLog(title);\r\n history.push('/RE/RE01');\r\n }\r\n }).catch((data) => {\r\n console.log(\"进入前台收银检查是否当班返回错误\", data);\r\n });\r\n break;\r\n case 'onDuty':\r\n portalStore.onDuty().then((onDutyMessage) => {\r\n if (onDutyMessage && onDutyMessage.shift) {\r\n MiddleWare.execute('onDuty')\r\n }\r\n });\r\n break;\r\n case 'offDuty':\r\n history.push('/offDuty?type=offDuty');\r\n break;\r\n case 'settleDialy':\r\n if (portalStore.bPosDaily()) {\r\n history.push('/offDuty?type=settleDaily');\r\n } else {\r\n portalStore.onMakerDaily();\r\n }\r\n break;\r\n default:\r\n history.push(`/${type}`);\r\n break;\r\n }\r\n };\r\n\r\n //跳转其他页面,以内嵌形式打开\r\n toFramePage = (params) => {\r\n const { app, title, style, search, tmenuCode, MenuCode, isHsyLoadFinish } = params || {}\r\n switch (app) {\r\n case 'cc':\r\n let sh = '';\r\n // if (this.isMobileEnvironment) { //暂时不支持android系统跳转\r\n // return Message.warn('新功能正在研发中,敬请期待。');\r\n // }\r\n if (!isHsyLoadFinish && !this.isMobileEnvironment) {\r\n return Message.warn('正在加载资源中,请稍后。');\r\n }\r\n if (!search) {\r\n return Message.warn('正在紧急研发中...');\r\n } else if (search && search.length > 0) {\r\n sh = (search.length > 1 && MenuCode) ? search.find(v => v.menu === MenuCode) : search[0];\r\n sh = sh || search[0];\r\n }\r\n if (!sh) {\r\n return Message.warn('传递参数有误,请查证。');\r\n }\r\n this.toHsyPage({ ...style, ...sh });\r\n break;\r\n case 'tc':\r\n if (tmenuCode || MenuCode) {\r\n this.saveLog(title);\r\n if (MenuCode) {\r\n this.toTplusPage(MenuCode, search);\r\n } else {\r\n this.toTplusPage(tmenuCode, search);\r\n }\r\n }\r\n break;\r\n }\r\n }\r\n\r\n getTplusUrlFromCloudServer = () => {//获取T+服务器配置地址。\r\n let userStore = User.restore();\r\n let data = 'accesstoken=' + `${userStore.accessToken}` + '&cloudOrgId=' + `${userStore.orgId}`;\r\n let url = `${HTTP_PROXY_URL}` + encodeURIComponent('http://mns.chanapp.chanjet.com/web/WebServer/get?' + `${data}`);\r\n console.log(url);\r\n let fetchHeader = {\r\n headers: {\r\n 'Content-Type': 'application/x-www-form-urlencoded'\r\n }\r\n };\r\n return new Promise((resolve, reject) => {\r\n fetch(url, fetchHeader)\r\n .then(function (response) {\r\n return response.json();\r\n }).then(json => {\r\n console.log(json);\r\n resolve(json);\r\n }).catch(ex => {\r\n console.log(ex);\r\n reject(err);\r\n })\r\n })\r\n }\r\n\r\n //跳转到T+\r\n toTplusPage = async (tmenuCode, search) => {\r\n let ret = this.getTcBasicInfoInit();\r\n if (ret === false) return;\r\n let { ossjumpUrl, postMessageUrl } = ret || {};\r\n let dsearchPlanID = '';\r\n if (search && search.id) {\r\n const { portalStore } = this.context.stores;\r\n dsearchPlanID = await portalStore.getSearchPlanId(search);\r\n }\r\n let menu = this.tplusEncode(tmenuCode);\r\n ossjumpUrl += `&menu=${menu}&fromUrl=${this.tplusEncode(location.origin)}`;\r\n if (dsearchPlanID) {\r\n ossjumpUrl += `&searchPlanID=${this.tplusEncode(dsearchPlanID)}`;\r\n }\r\n if (this.isHorizontalSunMi) {\r\n window.android_CommonFun.openWebUrlByOutBrowser(ossjumpUrl);\r\n } else {\r\n //对于专属云、云主机,如果配置的http,存在跨域问题,暂时解决不了,只能通过打开默认浏览器打开。\r\n //目前T+页面有很多进一步操作的界面,无法得到解决,特针对跳转T+页面的,都使用默认浏览器打开。2021-10-27\r\n if (this.new_retail_app == 'tc' || this.new_retail_app == 'tczsy' || this.new_retail_app == 'tcyzj') {\r\n nativeMs.useDefaultBrowser(ossjumpUrl);\r\n return;\r\n }\r\n let external_frame_tc = document.getElementById('external-frame-tc');\r\n let win = external_frame_tc.contentWindow;\r\n const { loadTcURL } = this.state;\r\n if (loadTcURL) {\r\n win && win.postMessage({ doType: 'openMenuFromPos', tmenuCode, ossjumpUrl, dsearchPlanID }, postMessageUrl);\r\n this.setState({ loadTcPage: true });\r\n } else {\r\n this.setState({ loadTcURL: ossjumpUrl, loadTcPage: true });\r\n }\r\n rx$.changeHsy.next({\r\n back: true, fn: () => {\r\n win && win.postMessage({ doType: 'closeCurrentMenuFromPos' }, postMessageUrl);\r\n this.setState({ loadTcPage: false });\r\n rx$.changeHsy.next({ back: false });\r\n }\r\n })\r\n }\r\n }\r\n\r\n //跳转CC\r\n toHsyPage = async (params) => {\r\n let {\r\n content_only, //只加载内容区域\r\n bar_bg, //页签栏颜色\r\n bar_active_bg, //激活态的标签背景颜色\r\n menu,\r\n secondRouter,\r\n activePrompt,\r\n closePrompt,\r\n closeable,\r\n leavePrompt,\r\n lock,\r\n pageId,\r\n pageParams,\r\n path,\r\n tabId,\r\n tabLabel,\r\n pageType,\r\n _k\r\n } = params;\r\n\r\n let filter = {};\r\n //对仓库参数的处理\r\n const IdWarehouse = this.idWarehouse;\r\n const WarehouseName = this.warehouseName;\r\n const IsPerformanceDistribution = this.performanceDistribution === 'SHIPPER_STORE' || false;\r\n const { IdStore = '', PosId = '' } = stores.user.options.get('loginInfo') || {};\r\n const { storeName = '' } = stores.user.options.get('store') || {};\r\n\r\n switch (pageType) {\r\n case 'voucher':\r\n filter = {\r\n defaultValue: {\r\n storeId: {\r\n id: IdStore,\r\n storeName\r\n },\r\n warehouseId: {\r\n id: IdWarehouse,\r\n name: WarehouseName\r\n }\r\n }\r\n }\r\n //要货单特殊处理\r\n if (menu == 'require-goods-new') {\r\n filter = {\r\n defaultValue: {\r\n storeId: {\r\n id: IdStore,\r\n storeName\r\n },\r\n requireWarehouseId: {\r\n id: IdWarehouse,\r\n name: WarehouseName\r\n }\r\n }\r\n }\r\n }\r\n if (menu == 'pre-sell'){\r\n filter = {\r\n storeId: [{id: IdStore, storeName}],\r\n orderStatusEnum: 'WAIT_DELIVERY',\r\n }\r\n }\r\n break;\r\n case 'report':\r\n filter = {\r\n filterValue: {\r\n storeId: {\r\n value: {\r\n id: IdStore,\r\n storeName\r\n }\r\n },\r\n warehouseId: {\r\n value: [{\r\n id: IdWarehouse,\r\n name: WarehouseName\r\n }]\r\n }\r\n }\r\n }\r\n // 收银统计表\r\n if (IsPerformanceDistribution && menu == 'retail-cash-report') {\r\n filter = {\r\n filterValue: {\r\n deliveryStoreId: {\r\n value: {\r\n id: IdStore,\r\n storeName\r\n }\r\n },\r\n warehouseId: {\r\n value: [{\r\n id: IdWarehouse,\r\n name: WarehouseName\r\n }]\r\n }\r\n }\r\n }\r\n }\r\n // 售后、配送\r\n if (menu == 'return-order' || menu == 'order-manage') {\r\n filter = {\r\n filterValue: {\r\n storeId: {\r\n value: {\r\n id: IdStore,\r\n storeName\r\n }\r\n },\r\n deliveryWarehouseId: {\r\n value: [{\r\n id: IdWarehouse,\r\n name: WarehouseName\r\n }]\r\n }\r\n }\r\n }\r\n }\r\n break;\r\n }\r\n bar_bg = encodeURIComponent(bar_bg);\r\n bar_active_bg = encodeURIComponent(bar_active_bg);\r\n menu = secondRouter ? `${menu}/${this.randomWord(true, 13)}` : menu;\r\n pageId = menu;\r\n pageParams = Object.assign(pageParams, filter);\r\n path = encodeURIComponent(path);\r\n _k = this.randomWord(false, 6);\r\n\r\n const commonArgs = `?posid=${PosId}&content_only=${content_only}&bar_bg=${bar_bg}&bar_active_bg=${bar_active_bg}`;\r\n const actionUrl = `#/${menu}?activePrompt=${activePrompt}&closePrompt=${closePrompt}&closeable=${closeable}&leavePrompt=${leavePrompt}&lock=${lock}&pageId=${pageId}&pageParams=${encodeURIComponent(JSON.stringify(pageParams))}&path=${path}&tabId=${tabId}&tabLabel=${encodeURIComponent(tabLabel)}&_k=${_k}`;\r\n let cc_url = this.hsy_domain.replace('#/', '') + commonArgs + actionUrl;\r\n console.log('web_hsy_url:', cc_url);\r\n if(this.isHorizontalSunMi){\r\n const CC_WEB_URL = await User.getLoginCCMidWebUrl(cc_url)\r\n console.log('CC_WEB_URL:', CC_WEB_URL);\r\n window.android_CommonFun.openWebUrlByOutBrowser(CC_WEB_URL);\r\n }else{\r\n // this.ccFrameWin && this.ccFrameWin.HsyRouterJump && this.ccFrameWin.HsyRouterJump(pageId, pageParams, { closeable, tabLabel });\r\n this.ccFrameStore && this.ccFrameStore.sendMessage({type: CC_FRAME_CONF.HsyRouterJump, pageId, pageParams, extStateParams: { closeable, tabLabel }, _ident_only_: CC_FRAME_CONF.identOnly })\r\n if (this.state.showMoreModal === true) {\r\n this.setState({ loadHsyPage: true, showMoreModal: false });\r\n } else {\r\n this.setState({ loadHsyPage: true });\r\n }\r\n rx$.changeHsy.next({\r\n back: true, fn: () => {\r\n this.setState({ loadHsyPage: false });\r\n rx$.changeHsy.next({ back: false });\r\n // 在打开页签之前,关闭之前的,返回键的回调函数\r\n // this.ccFrameWin && this.ccFrameWin.HsyRouterClean && this.ccFrameWin.HsyRouterClean();\r\n this.ccFrameStore && this.ccFrameStore.sendMessage({ type: CC_FRAME_CONF.HsyRouterClean, _ident_only_: CC_FRAME_CONF.identOnly });\r\n }\r\n })\r\n }\r\n }\r\n\r\n randomWord = (only, digits) => {\r\n let str = \"\";\r\n const number = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];\r\n const letter = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']\r\n let arr = only ? [...number] : [...number, ...letter];\r\n for (let i = 0; i < digits; i++) {\r\n let pos = Math.round(Math.random() * (arr.length - 1));\r\n str += arr[pos];\r\n }\r\n return str;\r\n }\r\n\r\n closeFrameModal = () => {\r\n this.setState({ showModal: false })\r\n }\r\n\r\n closeMoreModal = () => {\r\n this.setState({ showMoreModal: false })\r\n }\r\n\r\n tplusEncode = (code) => {\r\n let c = String.fromCharCode(code.charCodeAt(0) + code.length);\r\n for (let i = 1; i < code.length; i++) {\r\n c += String.fromCharCode(code.charCodeAt(i) + code.charCodeAt(i - 1));\r\n }\r\n let ret = this.TplusBase64Encode(c);\r\n return ret;\r\n }\r\n\r\n TplusBase64Encode = (input) => {\r\n const _keyStr = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\r\n let output = \"\";\r\n let chr1, chr2, chr3, enc1, enc2, enc3, enc4;\r\n let i = 0;\r\n input = this._utf8_encode(input);\r\n while (i < input.length) {\r\n chr1 = input.charCodeAt(i++);\r\n chr2 = input.charCodeAt(i++);\r\n chr3 = input.charCodeAt(i++);\r\n enc1 = chr1 >> 2;\r\n enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\r\n enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\r\n enc4 = chr3 & 63;\r\n if (isNaN(chr2)) {\r\n enc3 = enc4 = 64;\r\n } else if (isNaN(chr3)) {\r\n enc4 = 64;\r\n }\r\n output = output +\r\n _keyStr.charAt(enc1) + _keyStr.charAt(enc2) +\r\n _keyStr.charAt(enc3) + _keyStr.charAt(enc4);\r\n }\r\n return output;\r\n }\r\n _utf8_encode = (string) => {\r\n string = string.replace(/\\r\\n/g, \"\\n\");\r\n let utftext = \"\";\r\n for (let n = 0; n < string.length; n++) {\r\n let c = string.charCodeAt(n);\r\n if (c < 128) {\r\n utftext += String.fromCharCode(c);\r\n } else if ((c > 127) && (c < 2048)) {\r\n utftext += String.fromCharCode((c >> 6) | 192);\r\n utftext += String.fromCharCode((c & 63) | 128);\r\n } else {\r\n utftext += String.fromCharCode((c >> 12) | 224);\r\n utftext += String.fromCharCode(((c >> 6) & 63) | 128);\r\n utftext += String.fromCharCode((c & 63) | 128);\r\n }\r\n }\r\n return utftext;\r\n }\r\n\r\n operationControl = (menu = []) => {\r\n const { operations } = this.state;\r\n menu.forEach(v => {\r\n if (v.sub) {\r\n return this.operationControl(v.sub);\r\n }\r\n const controllable = operations.find(vv => vv.Name === v.Name);\r\n const { Visibility, HoldFunctionAuth, Title } = controllable || {};\r\n let errorTip;\r\n if (!Visibility) {\r\n errorTip = `您的 ${Title} 模块没有启用`;\r\n } else if (!HoldFunctionAuth) {\r\n errorTip = `您没有操作 ${Title} 的权限`;\r\n }\r\n v.errorTip = errorTip;\r\n });\r\n return menu;\r\n }\r\n\r\n createLeftNode = () => {\r\n const menu = this.leftMenu;\r\n let width = menu.length == 0 ? this.isMobileEnvironment & !this.isNewRetailBCPosTC ? 5 : 4 : 7;\r\n if(menu.length == 0) {\r\n return (<Col xl={width} md={width} className='portal-left-col' key='left'>\r\n <div className='portal-left-content'></div>\r\n </Col>);\r\n }\r\n\r\n const menuNode = menu.map(v => {\r\n return (v.container ?\r\n <div style={v.container.style} className={v.container.className} key={v.container.className}>\r\n {\r\n v.sub.map(vv => {\r\n let item = vv;\r\n if (vv.maybe === true) {\r\n item = this.showStorePrice ? vv : vv.second;\r\n }\r\n return (<div\r\n className={`member-item ${item.className} ${item.disabled ? 'menu-item-disabled' : ''}`}\r\n key={item.className}\r\n onClick={this.handelClick.bind(this, item)}\r\n >\r\n {!!item.title && <h1>{item.title}</h1>}\r\n {!!item.label && <p>{item.label}</p>}\r\n {!!item.icon && <Ticon icon={item.icon} />}\r\n </div>)\r\n })\r\n }\r\n </div>\r\n :\r\n <div\r\n className={`member-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\r\n key={v.className}\r\n onClick={this.handelClick.bind(this, v)}\r\n >\r\n {v.title && <h1>{v.title}</h1>}\r\n {v.label && <p>{v.label}</p>}\r\n {v.icon && <Ticon icon={v.icon} />}\r\n </div>\r\n )\r\n })\r\n return (<Col xl={7} md={7} className='portal-left-col' key='left'>\r\n <div className='portal-left-content'>{menuNode}</div>\r\n </Col>);\r\n }\r\n createCenterNode = () => {\r\n const menuLeftNode = this.centerLeftMenu.map(v => {\r\n return (<div\r\n className={`worktop-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\r\n style={v.style}\r\n key={v.className}\r\n onClick={this.handelClick.bind(this, v)}\r\n >\r\n {v.title && <h1>{v.title}</h1>}\r\n {v.label && <p>{v.label}</p>}\r\n {v.icon && <Ticon icon={v.icon} />}\r\n {v.disabled && <div className='item-disabled-placeholder' />}\r\n </div>)\r\n });\r\n const menuRightNode = this.centerRightMenu.map(v => {\r\n return (v.container ?\r\n <div style={v.container.style} className={v.container.className} key={v.container.className}>\r\n {\r\n v.sub.map(vv => {\r\n return (<div\r\n className={`worktop-item ${vv.className} ${vv.disabled ? 'menu-item-disabled' : ''}`}\r\n key={vv.className}\r\n onClick={this.handelClick.bind(this, vv)}\r\n >\r\n {vv.title && <h1>{vv.title}</h1>}\r\n {vv.label && <p>{vv.label}</p>}\r\n {vv.icon && <Ticon icon={vv.icon} />}\r\n </div>)\r\n })\r\n }\r\n </div>\r\n :\r\n <div\r\n className={`worktop-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\r\n key={v.className}\r\n onClick={this.handelClick.bind(this, v)}\r\n >\r\n {v.title && <h1>{v.title}</h1>}\r\n {v.label && <p>{v.label}</p>}\r\n {v.icon && <Ticon icon={v.icon} />}\r\n </div>)\r\n });\r\n return <div><div className='worktop-container-left'>{menuLeftNode}</div><div className='worktop-container-right'>{menuRightNode}</div></div>;\r\n }\r\n createRightNode = () => {\r\n var width = this.leftMenu.length == 0 ? this.isMobileEnvironment & !this.isNewRetailBCPosTC ? 9 : 10 : 7;\r\n const node = this.rightMenu.map(v => {\r\n return (v.container ?\r\n <div style={v.container.style} className={v.container.className} key={v.container.className}>\r\n {\r\n v.sub.map(vv => {\r\n return (<div\r\n className={`stock-item ${vv.className} ${vv.disabled ? 'menu-item-disabled' : ''}`}\r\n key={vv.className}\r\n onClick={this.handelClick.bind(this, vv)}\r\n >\r\n {vv.title && <h1>{vv.title}</h1>}\r\n {vv.label && <p>{vv.label}</p>}\r\n {vv.icon && <Ticon icon={vv.icon} />}\r\n </div>)\r\n })\r\n }\r\n </div>\r\n :\r\n <div\r\n className={`stock-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\r\n style={v.style}\r\n key={v.className}\r\n onClick={this.handelClick.bind(this, v)}\r\n >\r\n {!!v.title && <h1>{v.title}</h1>}\r\n {!!v.icon && <Ticon icon={v.icon} />}\r\n </div>)\r\n });\r\n return <Col xl={width} md={width} className='portal-right-col' key='right'>\r\n <div className='portal-right-content'>{node}</div>\r\n </Col>\r\n }\r\n\r\n createMoreNode = () => {\r\n const arrs = this.getMoreNodeInfo();\r\n const items = this.isNewRetailBCPosTC ? arrs.sub_tc : arrs.sub_cc || [];\r\n const node = items.length > 0 && items.map(v => {\r\n return (\r\n <div\r\n className={`modal-quick ${v.className}`}\r\n style={v.style}\r\n key={v.className}\r\n onClick={this.handelClick.bind(this, v)}\r\n >\r\n {!!v.icon && <div className='quick'><Ticon icon={v.icon} /></div>}\r\n {!!v.title && <h1>{v.title}</h1>}\r\n </div>\r\n )\r\n })\r\n return node;\r\n }\r\n\r\n getMoreNodeInfo = () => {\r\n if (this.isNewRetailBCPosTC) {\r\n // if (this.isMobileEnvironment) {\r\n // return this.centerRightMenu.find(vv => vv.key == 'more') || {};\r\n // } else {\r\n return this.centerRightMenu.find(v => v.sub && v.sub.find(vv => vv.key == 'more')).sub[1] || {};\r\n // }\r\n } else {\r\n // if (this.isMobileEnvironment) {\r\n // return this.centerRightMenu.find(vv => vv.key == 'more') || {};\r\n // } else {\r\n return this.centerRightMenu.find(v => v.sub && v.sub.find(vv => vv.key == 'more')).sub[1] || {};\r\n // }\r\n }\r\n }\r\n\r\n render() {\r\n const { showModal,showMoreModal, modalURL, loadHsyPage, loadHsyURL, loadTcPage, loadTcURL } = this.state;\r\n const screenHeight = window.screen.availHeight - 100;\r\n let htmlContent = null;\r\n if (this.isVerticalTouch) {\r\n htmlContent = <VerticalPortal handelClick={this.handelClick} />\r\n }\r\n // else if (this.isHorizontalPad) {\r\n // htmlContent = <HorizontalPadPortal handelClick={this.handelClick} />\r\n // }\r\n else {\r\n htmlContent = (<Layout style={{ height: '100%' }} className='portal-content'>\r\n <Content style={{ paddingLeft: '50px', paddingRight: '50px' }} className='portal-container portal-container-center'>\r\n <Row className=\"portal-content-row\">\r\n {this.createLeftNode()}\r\n <Col xl={10} md={10} className='portal-center-col' key='center'>\r\n <div className='portal-center-content'>\r\n {this.createCenterNode()}\r\n </div>\r\n </Col>\r\n {this.createRightNode()}\r\n </Row>\r\n </Content>\r\n {\r\n <div className={loadHsyPage ? 'portal-hsy-tc-container' : 'portal-hsy-tc-container portal-hsy-tc-container-hide'}>\r\n <iframe src={loadHsyURL} width='100%' height='93%' frameborder=\"no\" border=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"yes\" allowtransparency=\"true\" id={CC_FRAME_CONF.id}></iframe>\r\n </div>\r\n }\r\n {\r\n <div className={loadTcPage ? 'portal-hsy-tc-container' : 'portal-hsy-tc-container portal-hsy-tc-container-hide'}>\r\n <iframe src={loadTcURL} width='100%' height='93%' frameborder=\"no\" border=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"yes\" allowtransparency=\"true\" id=\"external-frame-tc\"></iframe>\r\n </div>\r\n }\r\n {\r\n this.isMobileEnvironment &&\r\n <Modal\r\n visible={showModal}\r\n onCancel={this.closeFrameModal}\r\n width={'99%'}\r\n height={'99%'}\r\n footer={null}\r\n >\r\n <iframe src={modalURL} width='100%' height={screenHeight} frameborder=\"no\" border=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"yes\" allowtransparency=\"true\"></iframe>\r\n </Modal>\r\n }\r\n {\r\n <Modal\r\n title={'更多'}\r\n className={'portal-container-modal-more'}\r\n visible={showMoreModal}\r\n onCancel={this.closeMoreModal}\r\n width={800}\r\n height={375}\r\n footer={null}\r\n centered\r\n maskClosable={false}\r\n keyboard={false}\r\n >\r\n {\r\n this.createMoreNode()\r\n }\r\n </Modal>\r\n }\r\n </Layout>)\r\n }\r\n return htmlContent;\r\n }\r\n}"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tplus-portaltouch",
3
- "version": "3.44.2",
3
+ "version": "3.44.5",
4
4
  "description": "touch protal",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -34,4 +34,4 @@
34
34
  "tplus-components-touch": "~3.44.1",
35
35
  "tplus-poslogin": "~3.44.1"
36
36
  }
37
- }
37
+ }