tplus-portaltouch 3.22.2 → 3.22.3

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.
@@ -33,7 +33,15 @@ var _inherits2 = require('babel-runtime/helpers/inherits');
33
33
 
34
34
  var _inherits3 = _interopRequireDefault(_inherits2);
35
35
 
36
- var _class;
36
+ var _class; /*
37
+ * @Descripttion:
38
+ * @version:
39
+ * @Author: chenlongad
40
+ * @Date: 2021-05-12 14:40:27
41
+ * @LastEditors: chenlongad
42
+ * @LastEditTime: 2021-06-10 16:37:51
43
+ */
44
+
37
45
  /**打印 */
38
46
 
39
47
 
@@ -92,12 +100,11 @@ var _default = (0, _mobxReact.observer)(_class = function (_Component) {
92
100
  _this.props.onAfterPrint && _this.props.onAfterPrint();
93
101
  };
94
102
 
95
- _this.onPrint = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee() {
96
- var id, curIndex, isShift, _ref2, Open, Key, Sign, Name, Card;
97
-
98
- return _regenerator2.default.wrap(function _callee$(_context) {
103
+ _this.onPrint = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee2() {
104
+ var id, curIndex, isShift;
105
+ return _regenerator2.default.wrap(function _callee2$(_context2) {
99
106
  while (1) {
100
- switch (_context.prev = _context.next) {
107
+ switch (_context2.prev = _context2.next) {
101
108
  case 0:
102
109
  // 马坚 Add start
103
110
  id = null;
@@ -110,71 +117,44 @@ var _default = (0, _mobxReact.observer)(_class = function (_Component) {
110
117
  // 打印
111
118
 
112
119
  console.log("打印开始:ID:" + id);
113
-
114
- _ref2 = _this.cloudPrintArguments || {}, Open = _ref2.Open, Key = _ref2.Key, Sign = _ref2.Sign, Name = _ref2.Name, Card = _ref2.Card;
115
- // 商米或者pad端
116
-
117
- if (!_this.isMobileEnvironment) {
118
- _context.next = 22;
119
- break;
120
- }
121
-
122
- if (!_this.isHorizontalPad) {
123
- _context.next = 11;
124
- break;
125
- }
126
-
127
- if (Open) {
128
- _context.next = 11;
129
- break;
130
- }
131
-
132
- Message.warn(t('云打印未启用,请设置。'));
133
- return _context.abrupt('return');
134
-
135
- case 11:
136
- if (!isShift) {
137
- _context.next = 17;
138
- break;
139
- }
140
-
141
- // 交班打印
142
- console.log("交班历史打印后事件开始执行");
143
- _this.printUtil.doDutyPrint({ Key: Key, Sign: Sign, Name: Name, Card: Card }, id, function () {
144
- console.log("交班历史打印后事件执行结束");
120
+ (0, _tplusComponentsTouch.printDispatch)(isShift ? _tplusComponentsTouch.DoNameList.DO_DUTY_PRINT : _tplusComponentsTouch.DoNameList.DO_DIALY_PRINT, id, {
121
+ electronPrint: function () {
122
+ var _ref2 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee() {
123
+ return _regenerator2.default.wrap(function _callee$(_context) {
124
+ while (1) {
125
+ switch (_context.prev = _context.next) {
126
+ case 0:
127
+ // 桌面端直接打印
128
+ console.log("桌面" + isShift + "历史打印后事件开始执行");
129
+ _context.next = 3;
130
+ return _PrintProcess.PrintProcess.execute(id, isShift);
131
+
132
+ case 3:
133
+ console.log("桌面" + isShift + "历史打印后事件执行结束");
134
+ _this.props.onAfterPrint && _this.props.onAfterPrint();
135
+
136
+ case 5:
137
+ case 'end':
138
+ return _context.stop();
139
+ }
140
+ }
141
+ }, _callee, _this2);
142
+ }));
143
+
144
+ return function electronPrint() {
145
+ return _ref2.apply(this, arguments);
146
+ };
147
+ }()
148
+ }).then(function () {
145
149
  _this.props.onAfterPrint && _this.props.onAfterPrint();
146
150
  });
147
- return _context.abrupt('return');
148
-
149
- case 17:
150
- // 日结打印
151
- console.log("日结历史打印后事件开始执行");
152
- _this.printUtil.doDialyPrint({ Key: Key, Sign: Sign, Name: Name, Card: Card }, id, function () {
153
- console.log("日结历史打印后事件执行结束");
154
- _this.props.onAfterPrint && _this.props.onAfterPrint();
155
- });
156
- return _context.abrupt('return');
157
-
158
- case 20:
159
- _context.next = 27;
160
- break;
161
-
162
- case 22:
163
- // 桌面端直接打印
164
- console.log("桌面" + isShift + "历史打印后事件开始执行");
165
- _context.next = 25;
166
- return _PrintProcess.PrintProcess.execute(id, isShift);
167
-
168
- case 25:
169
- console.log("桌面" + isShift + "历史打印后事件执行结束");
170
- _this.props.onAfterPrint && _this.props.onAfterPrint();
171
151
 
172
- case 27:
152
+ case 6:
173
153
  case 'end':
174
- return _context.stop();
154
+ return _context2.stop();
175
155
  }
176
156
  }
177
- }, _callee, _this2);
157
+ }, _callee2, _this2);
178
158
  }));
179
159
 
180
160
  _this.store = new _billHistoryStore2.default();
@@ -186,7 +166,6 @@ var _default = (0, _mobxReact.observer)(_class = function (_Component) {
186
166
 
187
167
  _this.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi;
188
168
  _this.isHorizontalPad = !!isHorizontalPad;
189
- _this.printUtil = new _tplusComponentsTouch.PrintUtil();
190
169
  return _this;
191
170
  }
192
171
 
@@ -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","cloudPrintArguments","Open","Key","Sign","Name","Card","isMobileEnvironment","isHorizontalPad","Message","warn","t","printUtil","doDutyPrint","doDialyPrint","PrintProcess","execute","BillHistoryStore","state","platform","isHorizontalSunMi","PrintUtil","map","voucher","index","setCurIndex","Code","getVoucher","voucherInfo","Component"],"mappings":"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","file":"dutysettlehistory.js","sourcesContent":["import 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, PrintUtil } 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\tthis.printUtil = new PrintUtil();\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\r\n\t\tlet { Open, Key, Sign, Name, Card } = this.cloudPrintArguments || {};\r\n\t\t// 商米或者pad端\r\n\t\tif(this.isMobileEnvironment){\r\n\t\t\tif(this.isHorizontalPad){\r\n\t\t\t\tif (!Open) {\r\n\t\t\t\t\tMessage.warn(t('云打印未启用,请设置。'))\r\n\t\t\t\t\treturn;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tif(isShift){\r\n\t\t\t\t// 交班打印\r\n\t\t\t\tconsole.log(\"交班历史打印后事件开始执行\");\r\n\t\t\t\tthis.printUtil.doDutyPrint({ Key, Sign, Name, Card },id,()=>{\r\n\t\t\t\t\tconsole.log(\"交班历史打印后事件执行结束\");\r\n\t\t\t\t\tthis.props.onAfterPrint && this.props.onAfterPrint();\r\n\t\t\t\t});\r\n\t\t\t\treturn;\r\n\t\t\t}else{\r\n\t\t\t\t// 日结打印\r\n\t\t\t\tconsole.log(\"日结历史打印后事件开始执行\");\r\n\t\t\t\tthis.printUtil.doDialyPrint({ Key, Sign, Name, Card },id,()=>{\r\n\t\t\t\t\tconsole.log(\"日结历史打印后事件执行结束\");\r\n\t\t\t\t\tthis.props.onAfterPrint && this.props.onAfterPrint();\r\n\t\t\t\t});\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}else{\r\n\t\t\t// 桌面端直接打印\r\n\t\t\tconsole.log(\"桌面\"+isShift+\"历史打印后事件开始执行\");\r\n\t\t\tawait PrintProcess.execute(id,isShift);\r\n\t\t\tconsole.log(\"桌面\"+isShift+\"历史打印后事件执行结束\");\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","electronPrint","PrintProcess","execute","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-06-10 16:37:51\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, {\r\n\t\t\telectronPrint: async () => {\r\n\t\t\t\t// 桌面端直接打印\r\n\t\t\t\tconsole.log(\"桌面\" + isShift + \"历史打印后事件开始执行\");\r\n\t\t\t\tawait PrintProcess.execute(id, isShift);\r\n\t\t\t\tconsole.log(\"桌面\" + isShift + \"历史打印后事件执行结束\");\r\n\t\t\t\tthis.props.onAfterPrint && this.props.onAfterPrint();\r\n\t\t\t}\r\n\t\t}).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"]}
@@ -44,7 +44,7 @@ var _inherits3 = _interopRequireDefault(_inherits2);
44
44
  var _class, _class2, _temp, _initialiseProps; /*
45
45
  * @Description:
46
46
  * @Date: 2019-08-13 08:42:18
47
- * @LastEditTime: 2020-10-22 14:19:17
47
+ * @LastEditTime: 2021-03-18 11:02:04
48
48
  * @LastEditors: chenlongad
49
49
  * @modify:修改跳转到T+的查询方案方式
50
50
  */
@@ -304,53 +304,22 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
304
304
  this.sunMiPresentationInit = function (result) {
305
305
  //SunMi初始化参数设置。
306
306
  //副屏幕交互。硬件改动20200428 需要在商米页面加载成功后才能发送 初始化命令
307
- // 获取是否缓存副屏地址 只在app打开的生命周期缓存 读取 关闭重新缓存
308
-
309
-
310
- var SunMi_fuping_url = sessionStorage.getItem("SunMi_fuping_url");
311
- // 如果存在缓存地址 使用缓存地址 否则使用新hash地址
312
- if (!SunMi_fuping_url) {
313
- var url = location.origin + location.pathname + '?ts=' + new Date().getTime() + '&vt=3&fuping=3';
314
- window.sunMi_PresentationManager && window.sunMi_PresentationManager.secondScreenLoadUrl(url).then(function () {
315
- _this3.FuPingIsLoaded = true;
316
- // 加载副屏页面成功 缓存地址
317
- sessionStorage.setItem("SunMi_fuping_url", url);
318
- setTimeout(function () {
319
- // 进行主副屏数据交互 初始化
320
- var _ref2 = _mutantsMicrofx.localStore.get('user') || {},
321
- _ref2$store = _ref2.store;
322
-
323
- _ref2$store = _ref2$store === undefined ? {} : _ref2$store;
324
- var _ref2$store$storeName = _ref2$store.storeName,
325
- storeName = _ref2$store$storeName === undefined ? '' : _ref2$store$storeName;
326
-
327
- console.log(result);
328
-
329
- var _enumController$getEn = _mutantsUtil.enumController.getEnumOj(),
330
- RE_POSParamType = _enumController$getEn.RE_POSParamType;
331
-
332
- var DUAL_SCREEN_SETTING = RE_POSParamType.DUAL_SCREEN_SETTING;
333
-
334
- var filterResult = result && result.filter ? result.filter(function (settingItem) {
335
- return settingItem.ParamType && (settingItem.ParamType.Id === DUAL_SCREEN_SETTING || settingItem.ParamType === DUAL_SCREEN_SETTING);
336
- }) : [];
337
- window.sunMi_PresentationManager && window.sunMi_PresentationManager.sharedPreferencesSet("setting_setData", filterResult).then(function () {
338
- console.log("缓存数据成功");
339
- window.sunMi_PresentationManager && window.sunMi_PresentationManager.sendMessageToSecondScreen({ step: 0, storeName: storeName });
340
- });
341
- }, 2000);
342
- });
343
- } else {
344
- // 表示已经加载过页面只需要重置状态即可
345
- var _ref3 = _mutantsMicrofx.localStore.get('user') || {},
346
- _ref3$store = _ref3.store;
347
-
348
- _ref3$store = _ref3$store === undefined ? {} : _ref3$store;
349
- var _ref3$store$storeName = _ref3$store.storeName,
350
- storeName = _ref3$store$storeName === undefined ? '' : _ref3$store$storeName;
351
-
307
+ // 进行主副屏数据交互 初始化
308
+ var _ref2 = _mutantsMicrofx.localStore.get('user') || {},
309
+ _ref2$store = _ref2.store;
310
+
311
+ _ref2$store = _ref2$store === undefined ? {} : _ref2$store;
312
+ var _ref2$store$storeName = _ref2$store.storeName,
313
+ storeName = _ref2$store$storeName === undefined ? '' : _ref2$store$storeName;
314
+
315
+ console.log(result);
316
+ var filterResult = result && result.filter ? result.filter(function (settingItem) {
317
+ return settingItem.ParamType.Id === "56181";
318
+ }) : [];
319
+ window.sunMi_PresentationManager && window.sunMi_PresentationManager.sharedPreferencesSet("setting_setData", filterResult).then(function () {
320
+ console.log("缓存数据成功");
352
321
  window.sunMi_PresentationManager && window.sunMi_PresentationManager.sendMessageToSecondScreen({ step: 0, storeName: storeName });
353
- }
322
+ });
354
323
  };
355
324
 
356
325
  this.getScreenType = function () {
@@ -389,11 +358,11 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
389
358
  return vv.Name === Name;
390
359
  });
391
360
 
392
- var _ref4 = controllable || {},
393
- Visibility = _ref4.Visibility,
394
- HoldFunctionAuth = _ref4.HoldFunctionAuth,
395
- Title = _ref4.Title,
396
- MenuCode = _ref4.MenuCode;
361
+ var _ref3 = controllable || {},
362
+ Visibility = _ref3.Visibility,
363
+ HoldFunctionAuth = _ref3.HoldFunctionAuth,
364
+ Title = _ref3.Title,
365
+ MenuCode = _ref3.MenuCode;
397
366
 
398
367
  var errorTip = void 0;
399
368
  if (!Title) {
@@ -498,7 +467,7 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
498
467
  };
499
468
 
500
469
  this.toTplusPage = function () {
501
- var _ref5 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee(type, tmenuCode, search) {
470
+ var _ref4 = (0, _asyncToGenerator3.default)( /*#__PURE__*/_regenerator2.default.mark(function _callee(type, tmenuCode, search) {
502
471
  var userStore, sid, tplusUrl, tplusinnersite, msg, dsearchPlanID, portalStore, baseUrl, ossjumpUrl, user, loginInfo, pwd, userName, accNum, menu, posCode, storeID, fromUrl;
503
472
  return _regenerator2.default.wrap(function _callee$(_context2) {
504
473
  while (1) {
@@ -597,7 +566,7 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
597
566
  }));
598
567
 
599
568
  return function (_x2, _x3, _x4) {
600
- return _ref5.apply(this, arguments);
569
+ return _ref4.apply(this, arguments);
601
570
  };
602
571
  }();
603
572
 
@@ -676,10 +645,10 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
676
645
  return vv.Name === v.Name;
677
646
  });
678
647
 
679
- var _ref6 = controllable || {},
680
- Visibility = _ref6.Visibility,
681
- HoldFunctionAuth = _ref6.HoldFunctionAuth,
682
- Title = _ref6.Title;
648
+ var _ref5 = controllable || {},
649
+ Visibility = _ref5.Visibility,
650
+ HoldFunctionAuth = _ref5.HoldFunctionAuth,
651
+ Title = _ref5.Title;
683
652
 
684
653
  var errorTip = void 0;
685
654
  if (!Visibility) {
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-portaltouch/pages/Portal/index.js"],"names":["hasElectron","env","platform","constant","electron","Content","Layout","Footer","tplusWindow","observer","props","state","id","Date","now","operations","showModal","frameUrl","isVerticalTouch","isHorizontalPad","isHorizontalSunMi","isMobileEnvironment","FuPingIsLoaded","leftMenu","Menus","centerLeftMenu","centerRightMenu","rightMenu","context","stores","portalStore","headHook","addClass","homeOperation","Request","functionData","Loading","show","text","delay","then","localStore","set","setState","hide","catch","err","console","log","data","setStore","initSetParams","getScreenType","sunMiPresentationInit","ret","window","open","getTime","removeClass","sunMi_PresentationManager","sendMessageToSecondScreen","step","nativeMs","setIpcRendererMethod","item","e","history","push","path","screenHeight","screen","availHeight","htmlContent","handelClick","height","paddingLeft","paddingRight","createLeftNode","createCenterNode","createRightNode","closeFrameModal","Component","propTypes","routes","PropTypes","array","contextTypes","object","infoRender","func","result","SunMi_fuping_url","sessionStorage","getItem","url","location","origin","pathname","secondScreenLoadUrl","setItem","setTimeout","get","store","storeName","enumController","getEnumOj","RE_POSParamType","DUAL_SCREEN_SETTING","filterResult","filter","settingItem","ParamType","Id","sharedPreferencesSet","flag","Name","length","shift","Value","saveLog","name","saveLogo","undefined","values","type","key","isModal","title","search","tmenuCode","controllable","find","vv","Visibility","HoldFunctionAuth","Title","MenuCode","errorTip","ModalWraper","warning","content","onOk","User","logout","okType","Message","warn","modalRouter","width","checkDuty","onDutyMessage","Code","IdShiftVoucher","Shift","IdDailyVoucher","DailyCode","ShiftCode","onDuty","MiddleWare","execute","bPosDaily","onMakerDaily","toTplusPage","getTplusUrlFromCloudServer","userStore","restore","cloudUrl","accessToken","orgId","encodeURIComponent","fetchHeader","headers","resolve","reject","fetch","response","json","ex","sid","tplusUrl","tplusinnersite","msg","okText","dsearchPlanID","getSearchPlanId","substring","baseUrl","ossjumpUrl","user","loginInfo","options","pwd","userName","tplusEncode","UserCode","accNum","AccountNum","menu","posCode","storeID","fromUrl","android_CommonFun","openWebUrlByOutBrowser","useDefaultBrowser","closed","postMessage","searchPlanID","code","c","String","fromCharCode","charCodeAt","i","TplusBase64Encode","input","_keyStr","output","chr1","chr2","chr3","enc1","enc2","enc3","enc4","_utf8_encode","isNaN","charAt","string","replace","utftext","n","operationControl","forEach","v","sub","menuNode","map","container","style","className","disabled","bind","label","icon","menuLeftNode","menuRightNode","node"],"mappings":"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","file":"index.js","sourcesContent":["/*\r\n * @Description:\r\n * @Date: 2019-08-13 08:42:18\r\n * @LastEditTime: 2020-10-22 14:19:17\r\n * @LastEditors: chenlongad\r\n * @modify:修改跳转到T+的查询方案方式\r\n */\r\nimport React, { Component } from 'react';\r\nimport { observer } from 'mobx-react';\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\n\r\nconst hasElectron = (env.platform === env.constant.platform.electron);\r\nconst { Content, Footer } = Layout;\r\nlet tplusWindow = null;\r\n\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\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 frameUrl: ''\r\n }\r\n const { isVerticalTouch, isHorizontalPad, isHorizontalSunMi } = 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\r\n //首页布局\r\n const { leftMenu, centerLeftMenu, centerRightMenu, rightMenu } = Menus;\r\n this.leftMenu = leftMenu;\r\n this.centerLeftMenu = centerLeftMenu;\r\n this.centerRightMenu = centerRightMenu;\r\n this.rightMenu = rightMenu;\r\n }\r\n\r\n componentWillMount() {\r\n const { stores: { portalStore } = {}, headHook: { addClass } = {} } = this.context;\r\n const { homeOperation, functionData } = Request;\r\n Loading.show({\r\n text: '首页权限加载中...',\r\n delay: 2500\r\n });\r\n homeOperation().then(operations => {\r\n localStore.set('operationsAuth', JSON.stringify(operations));\r\n this.setState({ operations });\r\n Loading.hide();\r\n }).catch((err) => {\r\n console.log('homeOperation.error======', err);\r\n Loading.hide();\r\n });\r\n functionData().then(data => {\r\n // 加载权限数据 DR-29735 by majian\r\n PosSetData(data);\r\n });\r\n // portalStore && portalStore.getPortalMenu();\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 window.open('vicescreen?ts=' + new Date().getTime(), 'screen');\r\n }\r\n })\r\n }\r\n // 初始化商米副屏\r\n sunMiPresentationInit = (result) =>{\r\n //SunMi初始化参数设置。\r\n //副屏幕交互。硬件改动20200428 需要在商米页面加载成功后才能发送 初始化命令\r\n // 获取是否缓存副屏地址 只在app打开的生命周期缓存 读取 关闭重新缓存\r\n\r\n\r\n const SunMi_fuping_url = sessionStorage.getItem(\"SunMi_fuping_url\");\r\n // 如果存在缓存地址 使用缓存地址 否则使用新hash地址\r\n if(!SunMi_fuping_url){\r\n let url = location.origin+ location.pathname +'?ts='+new Date().getTime()+'&vt=3&fuping=3';\r\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.secondScreenLoadUrl(url).then(()=>{\r\n this.FuPingIsLoaded = true;\r\n // 加载副屏页面成功 缓存地址\r\n sessionStorage.setItem(\"SunMi_fuping_url\",url);\r\n setTimeout(() => {\r\n // 进行主副屏数据交互 初始化\r\n const { store: { storeName = '' } = {} } = localStore.get('user') || {};\r\n console.log(result);\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 && (settingItem.ParamType.Id === DUAL_SCREEN_SETTING || 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 }, 2000);\r\n });\r\n }else{\r\n // 表示已经加载过页面只需要重置状态即可\r\n const { store: { storeName = '' } = {} } = localStore.get('user') || {};\r\n\t\t\t\t\twindow.sunMi_PresentationManager && window.sunMi_PresentationManager.sendMessageToSecondScreen({ step: 0,storeName});\r\n }\r\n }\r\n\r\n componentWillUnmount() {\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 //副屏幕交互。硬件改动20200428\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, title, Name, search } = values;\r\n let { tmenuCode } = values;\r\n const { operations } = 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 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 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 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(\"进入前台收银检查是否当班返回错误\");\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 if (tmenuCode || MenuCode) {\r\n this.saveLog(title);\r\n if (MenuCode) {\r\n this.toTplusPage(type, MenuCode, search);\r\n } else {\r\n this.toTplusPage(type, tmenuCode, search);\r\n }\r\n } else {\r\n history.push(`/${type}`);\r\n }\r\n break;\r\n }\r\n };\r\n getTplusUrlFromCloudServer = () => {//获取T+服务器配置地址。\r\n let userStore = User.restore();\r\n let cloudUrl = 'http://tfproxy.chanjet.com/?url=';\r\n let data = 'accesstoken=' + `${userStore.accessToken}` + '&cloudOrgId=' + `${userStore.orgId}`;\r\n let url = `${cloudUrl}` + 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 //跳转到T+\r\n toTplusPage = async (type, tmenuCode, search) => {\r\n let userStore = User.restore();\r\n let sid = userStore.sid;\r\n let tplusUrl = PosInitData(\"TplusSite\");\r\n let tplusinnersite = PosInitData(\"tplusinnersite\");\r\n tplusUrl = tplusUrl ? tplusUrl : tplusinnersite;\r\n if (!tplusUrl && !sid && this.hasElectron === true) {//软件包,并且electron读取electron配置的地址\r\n tplusUrl = location.origin + \"/tplus\";\r\n }\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;\r\n }\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 if (tplusUrl.substring(tplusUrl.length - 1) !== '/')\r\n tplusUrl += '/';\r\n let baseUrl = tplusUrl;\r\n // if(!isProxy){\r\n // tplusUrl = targetUrl;\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 { user } = this.context.stores;\r\n let loginInfo = user.options.get('loginInfo');\r\n let pwd = user.options.get(\"password\");\r\n let userName = this.tplusEncode(loginInfo.UserCode);\r\n let accNum = this.tplusEncode(loginInfo.AccountNum);\r\n let menu = this.tplusEncode(tmenuCode)\r\n let posCode = this.tplusEncode(loginInfo.posCode);\r\n let storeID = this.tplusEncode(loginInfo.storeID + \"\");\r\n pwd = this.tplusEncode(pwd);\r\n let fromUrl = this.tplusEncode(location.origin);\r\n ossjumpUrl += `&fromApp=nretail&user=${userName}&pwd=${pwd}&accNum=${accNum}&menu=${menu}&posCode=${posCode}&storeID=${storeID}&fromUrl=${fromUrl}`;\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 if (this.hasElectron === true) {\r\n nativeMs.useDefaultBrowser(ossjumpUrl);\r\n }\r\n else if (this.isMobileEnvironment) {\r\n this.setState({ showModal: true, frameUrl: ossjumpUrl })\r\n }\r\n else {\r\n if (!tplusWindow || tplusWindow.closed) {\r\n tplusWindow = window.open(ossjumpUrl, \"tplus\", \"location=no\");\r\n } else {\r\n tplusWindow.postMessage({ tmenuCode, searchPlanID: dsearchPlanID, ossjumpUrl }, baseUrl);\r\n window.open(\"\", \"tplus\", \"location=no\");\r\n }\r\n }\r\n }\r\n\r\n closeFrameModal = () => {\r\n this.setState({ showModal: 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 console.log(operations, 11111)\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 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 return (<div\r\n className={`member-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={`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 menuNode;\r\n }\r\n createCenterNode = () => {\r\n const leftMenu = this.centerLeftMenu;\r\n const rightMenu = this.centerRightMenu;\r\n const menuLeftNode = leftMenu.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 = 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={`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 const menu = this.rightMenu;\r\n const node = menu.map((v, i) => {\r\n return (<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 node;\r\n }\r\n\r\n render() {\r\n const { showModal, frameUrl } = 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 } else if (this.isHorizontalPad) {\r\n htmlContent = <HorizontalPadPortal handelClick={this.handelClick} />\r\n }\r\n // else if (this.isHorizontalSunMi) {\r\n // htmlContent = <HorizontalSunMiPortal 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'>\r\n <Row>\r\n <Col xl={7} md={7} className='portal-left-col' key='left'>\r\n <div className='portal-left-content'>{this.createLeftNode()}</div>\r\n </Col>\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 <Col xl={7} md={7} className='portal-right-col' key='right'>\r\n <div className='portal-right-content'>{this.createRightNode()}</div>\r\n </Col>\r\n </Row>\r\n </Content>\r\n {\r\n this.isMobileEnvironment &&\r\n <Modal 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={frameUrl} width='100%' height={screenHeight} frameborder=\"no\" border=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"yes\" allowtransparency=\"true\"></iframe>\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/Portal/index.js"],"names":["hasElectron","env","platform","constant","electron","Content","Layout","Footer","tplusWindow","observer","props","state","id","Date","now","operations","showModal","frameUrl","isVerticalTouch","isHorizontalPad","isHorizontalSunMi","isMobileEnvironment","FuPingIsLoaded","leftMenu","Menus","centerLeftMenu","centerRightMenu","rightMenu","context","stores","portalStore","headHook","addClass","homeOperation","Request","functionData","Loading","show","text","delay","then","localStore","set","setState","hide","catch","err","console","log","data","setStore","initSetParams","getScreenType","sunMiPresentationInit","ret","window","open","getTime","removeClass","sunMi_PresentationManager","sendMessageToSecondScreen","step","nativeMs","setIpcRendererMethod","item","e","history","push","path","screenHeight","screen","availHeight","htmlContent","handelClick","height","paddingLeft","paddingRight","createLeftNode","createCenterNode","createRightNode","closeFrameModal","Component","propTypes","routes","PropTypes","array","contextTypes","object","infoRender","func","result","get","store","storeName","filterResult","filter","settingItem","ParamType","Id","sharedPreferencesSet","flag","Name","length","shift","Value","saveLog","name","saveLogo","undefined","values","type","key","isModal","title","search","tmenuCode","controllable","find","vv","Visibility","HoldFunctionAuth","Title","MenuCode","errorTip","ModalWraper","warning","content","onOk","User","logout","okType","Message","warn","modalRouter","url","width","checkDuty","onDutyMessage","Code","IdShiftVoucher","Shift","IdDailyVoucher","DailyCode","ShiftCode","onDuty","MiddleWare","execute","bPosDaily","onMakerDaily","toTplusPage","getTplusUrlFromCloudServer","userStore","restore","cloudUrl","accessToken","orgId","encodeURIComponent","fetchHeader","headers","resolve","reject","fetch","response","json","ex","sid","tplusUrl","tplusinnersite","location","origin","msg","okText","dsearchPlanID","getSearchPlanId","substring","baseUrl","ossjumpUrl","user","loginInfo","options","pwd","userName","tplusEncode","UserCode","accNum","AccountNum","menu","posCode","storeID","fromUrl","android_CommonFun","openWebUrlByOutBrowser","useDefaultBrowser","closed","postMessage","searchPlanID","code","c","String","fromCharCode","charCodeAt","i","TplusBase64Encode","input","_keyStr","output","chr1","chr2","chr3","enc1","enc2","enc3","enc4","_utf8_encode","isNaN","charAt","string","replace","utftext","n","operationControl","forEach","v","sub","menuNode","map","container","style","className","disabled","bind","label","icon","menuLeftNode","menuRightNode","node"],"mappings":"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","file":"index.js","sourcesContent":["/*\r\n * @Description:\r\n * @Date: 2019-08-13 08:42:18\r\n * @LastEditTime: 2021-03-18 11:02:04\r\n * @LastEditors: chenlongad\r\n * @modify:修改跳转到T+的查询方案方式\r\n */\r\nimport React, { Component } from 'react';\r\nimport { observer } from 'mobx-react';\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\n\r\nconst hasElectron = (env.platform === env.constant.platform.electron);\r\nconst { Content, Footer } = Layout;\r\nlet tplusWindow = null;\r\n\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\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 frameUrl: ''\r\n }\r\n const { isVerticalTouch, isHorizontalPad, isHorizontalSunMi } = 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\r\n //首页布局\r\n const { leftMenu, centerLeftMenu, centerRightMenu, rightMenu } = Menus;\r\n this.leftMenu = leftMenu;\r\n this.centerLeftMenu = centerLeftMenu;\r\n this.centerRightMenu = centerRightMenu;\r\n this.rightMenu = rightMenu;\r\n }\r\n\r\n componentWillMount() {\r\n const { stores: { portalStore } = {}, headHook: { addClass } = {} } = this.context;\r\n const { homeOperation, functionData } = Request;\r\n Loading.show({\r\n text: '首页权限加载中...',\r\n delay: 2500\r\n });\r\n homeOperation().then(operations => {\r\n localStore.set('operationsAuth', JSON.stringify(operations));\r\n this.setState({ operations });\r\n Loading.hide();\r\n }).catch((err) => {\r\n console.log('homeOperation.error======', err);\r\n Loading.hide();\r\n });\r\n functionData().then(data => {\r\n // 加载权限数据 DR-29735 by majian\r\n PosSetData(data);\r\n });\r\n // portalStore && portalStore.getPortalMenu();\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 window.open('vicescreen?ts=' + new Date().getTime(), 'screen');\r\n }\r\n })\r\n }\r\n // 初始化商米副屏\r\n sunMiPresentationInit = (result) =>{\r\n //SunMi初始化参数设置。\r\n //副屏幕交互。硬件改动20200428 需要在商米页面加载成功后才能发送 初始化命令\r\n // 进行主副屏数据交互 初始化\r\n const { store: { storeName = '' } = {} } = localStore.get('user') || {};\r\n console.log(result);\r\n const filterResult = result && result.filter?result.filter((settingItem)=>{return settingItem.ParamType.Id === \"56181\"}):[];\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 componentWillUnmount() {\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 //副屏幕交互。硬件改动20200428\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, title, Name, search } = values;\r\n let { tmenuCode } = values;\r\n const { operations } = 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 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 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 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(\"进入前台收银检查是否当班返回错误\");\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 if (tmenuCode || MenuCode) {\r\n this.saveLog(title);\r\n if (MenuCode) {\r\n this.toTplusPage(type, MenuCode, search);\r\n } else {\r\n this.toTplusPage(type, tmenuCode, search);\r\n }\r\n } else {\r\n history.push(`/${type}`);\r\n }\r\n break;\r\n }\r\n };\r\n getTplusUrlFromCloudServer = () => {//获取T+服务器配置地址。\r\n let userStore = User.restore();\r\n let cloudUrl = 'http://tfproxy.chanjet.com/?url=';\r\n let data = 'accesstoken=' + `${userStore.accessToken}` + '&cloudOrgId=' + `${userStore.orgId}`;\r\n let url = `${cloudUrl}` + 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 //跳转到T+\r\n toTplusPage = async (type, tmenuCode, search) => {\r\n let userStore = User.restore();\r\n let sid = userStore.sid;\r\n let tplusUrl = PosInitData(\"TplusSite\");\r\n let tplusinnersite = PosInitData(\"tplusinnersite\");\r\n tplusUrl = tplusUrl ? tplusUrl : tplusinnersite;\r\n if (!tplusUrl && !sid && this.hasElectron === true) {//软件包,并且electron读取electron配置的地址\r\n tplusUrl = location.origin + \"/tplus\";\r\n }\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;\r\n }\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 if (tplusUrl.substring(tplusUrl.length - 1) !== '/')\r\n tplusUrl += '/';\r\n let baseUrl = tplusUrl;\r\n // if(!isProxy){\r\n // tplusUrl = targetUrl;\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 { user } = this.context.stores;\r\n let loginInfo = user.options.get('loginInfo');\r\n let pwd = user.options.get(\"password\");\r\n let userName = this.tplusEncode(loginInfo.UserCode);\r\n let accNum = this.tplusEncode(loginInfo.AccountNum);\r\n let menu = this.tplusEncode(tmenuCode)\r\n let posCode = this.tplusEncode(loginInfo.posCode);\r\n let storeID = this.tplusEncode(loginInfo.storeID + \"\");\r\n pwd = this.tplusEncode(pwd);\r\n let fromUrl = this.tplusEncode(location.origin);\r\n ossjumpUrl += `&fromApp=nretail&user=${userName}&pwd=${pwd}&accNum=${accNum}&menu=${menu}&posCode=${posCode}&storeID=${storeID}&fromUrl=${fromUrl}`;\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 if (this.hasElectron === true) {\r\n nativeMs.useDefaultBrowser(ossjumpUrl);\r\n }\r\n else if (this.isMobileEnvironment) {\r\n this.setState({ showModal: true, frameUrl: ossjumpUrl })\r\n }\r\n else {\r\n if (!tplusWindow || tplusWindow.closed) {\r\n tplusWindow = window.open(ossjumpUrl, \"tplus\", \"location=no\");\r\n } else {\r\n tplusWindow.postMessage({ tmenuCode, searchPlanID: dsearchPlanID, ossjumpUrl }, baseUrl);\r\n window.open(\"\", \"tplus\", \"location=no\");\r\n }\r\n }\r\n }\r\n\r\n closeFrameModal = () => {\r\n this.setState({ showModal: 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 console.log(operations, 11111)\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 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 return (<div\r\n className={`member-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={`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 menuNode;\r\n }\r\n createCenterNode = () => {\r\n const leftMenu = this.centerLeftMenu;\r\n const rightMenu = this.centerRightMenu;\r\n const menuLeftNode = leftMenu.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 = 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={`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 const menu = this.rightMenu;\r\n const node = menu.map((v, i) => {\r\n return (<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 node;\r\n }\r\n\r\n render() {\r\n const { showModal, frameUrl } = 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 } else if (this.isHorizontalPad) {\r\n htmlContent = <HorizontalPadPortal handelClick={this.handelClick} />\r\n }\r\n // else if (this.isHorizontalSunMi) {\r\n // htmlContent = <HorizontalSunMiPortal 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'>\r\n <Row>\r\n <Col xl={7} md={7} className='portal-left-col' key='left'>\r\n <div className='portal-left-content'>{this.createLeftNode()}</div>\r\n </Col>\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 <Col xl={7} md={7} className='portal-right-col' key='right'>\r\n <div className='portal-right-content'>{this.createRightNode()}</div>\r\n </Col>\r\n </Row>\r\n </Content>\r\n {\r\n this.isMobileEnvironment &&\r\n <Modal 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={frameUrl} width='100%' height={screenHeight} frameborder=\"no\" border=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"yes\" allowtransparency=\"true\"></iframe>\r\n </Modal>\r\n }\r\n </Layout>)\r\n }\r\n return htmlContent;\r\n }\r\n}"]}
@@ -382,30 +382,59 @@ var centerRightMenu = [{
382
382
  _k: ''
383
383
  }]
384
384
  }, {
385
- title: '导购排名', icon: 'zhiPOS-shouye-daogoupaiming', className: 'worktop-item-guide light-white', key: 'personStatistics', Name: 'PersonStatistics', iframe: true, app: 'cc',
386
- style: {
387
- content_only: true,
388
- bar_bg: '#FFFFFF',
389
- bar_active_bg: '#38D5B0'
390
- },
391
- search: [{
392
- menu: 'retail-order-report-shopping-guide',
393
- activePrompt: false,
394
- closePrompt: false,
395
- closeable: false,
396
- leavePrompt: false,
397
- lock: false,
398
- pageId: 'retail-order-report-shopping-guide',
399
- pageParams: { group: 3405 },
400
- path: 'retail-order-report-shopping-guide',
401
- tabId: 'retail-order-report-shopping-guide',
402
- tabLabel: '导购销售排名',
403
- pageType: 'report',
404
- _k: ''
405
- }]
385
+ container: { className: 'worktop-item-center-right-bottom' },
386
+ sub: [{
387
+ title: '导购排名', icon: 'zhiPOS-shouye-daogoupaiming', className: 'worktop-item-guide light-white', key: 'personStatistics', Name: 'PersonStatistics', iframe: true, app: 'cc',
388
+ style: {
389
+ content_only: true,
390
+ bar_bg: '#FFFFFF',
391
+ bar_active_bg: '#38D5B0'
392
+ },
393
+ search: [{
394
+ menu: 'retail-order-report-shopping-guide',
395
+ activePrompt: false,
396
+ closePrompt: false,
397
+ closeable: false,
398
+ leavePrompt: false,
399
+ lock: false,
400
+ pageId: 'retail-order-report-shopping-guide',
401
+ pageParams: { group: 3405 },
402
+ path: 'retail-order-report-shopping-guide',
403
+ tabId: 'retail-order-report-shopping-guide',
404
+ tabLabel: '导购销售排名',
405
+ pageType: 'report',
406
+ _k: ''
407
+ }]
408
+ }, { title: '参数设置', icon: 'zhiPOS-shouye-canshushezhi', className: 'worktop-item-setting light-white', key: 'set', url: '/set', Name: 'OptionSet' }]
406
409
  }, {
407
410
  container: { className: 'worktop-item-center-right-bottom' },
408
- sub: [{ title: '硬件参数', icon: 'zhiPOS-shouye-yingjiancanshu', className: 'worktop-item-hardware light-white', key: 'portsetting', url: '/portsetting', Name: 'HardwareSetting' }, { title: '参数设置', icon: 'zhiPOS-shouye-canshushezhi', className: 'worktop-item-setting light-white', key: 'set', url: '/set', Name: 'OptionSet' }]
411
+ sub: [{ title: '硬件参数', icon: 'zhiPOS-shouye-yingjiancanshu', className: 'worktop-item-hardware light-white', key: 'portsetting', url: '/portsetting', Name: 'HardwareSetting' }, {
412
+ title: '更多', icon: 'gengduo1', className: 'worktop-item-more light-white', key: 'more', Name: 'More',
413
+ sub_tc: [{ title: '组装拆卸单', icon: 'zuzhuangchaixiedan', className: 'worktop-item-assemblyorder light-white', key: 'AssemblyOrder', tmenuCode: 'ST1034', Name: 'AssemblyOrder', iframe: true, app: 'tc' }, { title: '形态转换单', icon: 'xingtaizhuanhuandan', className: 'worktop-item-shapevoucher light-white', key: 'ShapeVoucher', tmenuCode: 'ST1033', Name: 'ShapeVoucher', iframe: true, app: 'tc' }],
414
+ sub_cc: [{
415
+ title: '组装拆卸单', icon: 'zuzhuangchaixiedan', className: 'worktop-item-assemblyorder light-white', key: 'AssemblyOrder', Name: 'AssemblyOrder', iframe: true, app: 'cc',
416
+ style: {
417
+ content_only: true,
418
+ bar_bg: '#FFFFFF',
419
+ bar_active_bg: '#38D5B0'
420
+ },
421
+ search: [{
422
+ menu: 'voucher-assembly-new',
423
+ activePrompt: false,
424
+ closePrompt: false,
425
+ closeable: false,
426
+ leavePrompt: false,
427
+ lock: false,
428
+ pageId: 'voucher-assembly-new',
429
+ pageParams: {},
430
+ path: 'voucher-assembly-new',
431
+ tabId: 'voucher-assembly-new',
432
+ tabLabel: '组装拆卸单',
433
+ pageType: 'voucher',
434
+ _k: ''
435
+ }]
436
+ }]
437
+ }]
409
438
  }];
410
439
 
411
440
  var rightMenu = [{