tplus-portaltouch 3.55.3 → 3.56.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -477,7 +477,7 @@ function RetailUpload() {
477
477
  _react2.default.createElement(
478
478
  'span',
479
479
  { className: 'fast-upload-btn' },
480
- '\u4E0A\u4F20\u96F6\u552E\u5355'
480
+ '\u4E0A\u4F20'
481
481
  )
482
482
  )
483
483
  ),
@@ -506,7 +506,7 @@ function RetailDownload() {
506
506
  isDownload = _useState8[0],
507
507
  setIsDownload = _useState8[1];
508
508
 
509
- var _useState9 = (0, _react.useState)('下载数据'),
509
+ var _useState9 = (0, _react.useState)('下载'),
510
510
  _useState10 = (0, _slicedToArray3.default)(_useState9, 2),
511
511
  downStr = _useState10[0],
512
512
  setDownStr = _useState10[1];
@@ -563,7 +563,7 @@ function RetailDownload() {
563
563
  _tplusComponentsTouch.Message.error('数据下载失败');
564
564
 
565
565
  case 19:
566
- setDownStr('下载数据');
566
+ setDownStr('下载');
567
567
  setIsDownload(false);
568
568
 
569
569
  case 21:
@@ -590,12 +590,36 @@ var DownloadBtn = (0, _mobxReact.observer)(function (props) {
590
590
  isDownload = props.isDownload,
591
591
  handleDownLoad = props.handleDownLoad;
592
592
 
593
+ var content = _react2.default.createElement(
594
+ 'div',
595
+ { className: 'popover-head-download-content' },
596
+ _react2.default.createElement(
597
+ 'div',
598
+ { className: 'item online-status-bg first', onClick: handleDownLoad },
599
+ _react2.default.createElement(_tplusComponentsTouch.Ticon, { icon: 'xiazaishuju' }),
600
+ _react2.default.createElement(
601
+ 'span',
602
+ null,
603
+ '\u589E\u91CF\u4E0B\u8F7D'
604
+ )
605
+ ),
606
+ _react2.default.createElement(
607
+ 'div',
608
+ { className: 'item online-status-bg second' },
609
+ _react2.default.createElement(_tplusComponentsTouch.Ticon, { icon: 'xiadan1' }),
610
+ _react2.default.createElement(
611
+ 'span',
612
+ null,
613
+ '\u5168\u91CF\u4E0B\u8F7D'
614
+ )
615
+ )
616
+ );
593
617
  return _react2.default.createElement(
594
618
  'div',
595
- { className: 'status-square online-status-bg c-pointer ' + (getIsOffNetWork() ? 'is-grey' : ''), onClick: handleDownLoad },
619
+ { className: 'status-square online-status-bg c-pointer ' + (getIsOffNetWork() ? 'is-grey' : '') },
596
620
  _react2.default.createElement(
597
621
  'span',
598
- { className: 'status-tog-btn' },
622
+ { className: 'status-tog-btn', onClick: handleDownLoad },
599
623
  _react2.default.createElement(
600
624
  'span',
601
625
  { className: '' + (isDownload ? 'isRetailDownLoading' : '') },
@@ -606,6 +630,15 @@ var DownloadBtn = (0, _mobxReact.observer)(function (props) {
606
630
  { className: 'fast-upload-btn' },
607
631
  downStr
608
632
  )
633
+ ),
634
+ _react2.default.createElement(
635
+ 'span',
636
+ { className: 'status-tog-btn-right' },
637
+ _react2.default.createElement(
638
+ _antd.Popover,
639
+ { placement: 'bottom', content: content, trigger: 'click' },
640
+ _react2.default.createElement(_tplusComponentsTouch.Ticon, { icon: 'xialaqietu3' })
641
+ )
609
642
  )
610
643
  );
611
644
  });
@@ -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","WEAK_STANDARD_NUM","weakRemindNum","hasRouterListenInit","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","setStatusByRouter","route","listen","menuProps","menus","map","item","i","key","icon","controlConfig","type","beforeEvent","Loading","show","node","delay","actionHook","actionChange","User","logout","clearEndExe","console","log","clear","localStore","remove","_eType","closeNativeWindow","_event","nativeMs","doWindow","destroyWindow","wb","CommonLib","remote","electron","win","getCurrentWindow","destroy","splitUser","value","regEmail","RegExp","isEmail","test","setInventoryFocus","isHorizontalPad","doms","getElementsByClassName","input","getElementById","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';\nimport { Ticon, ModalWraper, Loading, Spin, Message } from 'tplus-components-touch';\nimport { Tooltip, Menu, Dropdown, Switch, Popover } from 'antd';\nimport PropTypes from 'prop-types';\nimport { formatDate } from '../../utils';\nimport { env, nativeMs, localStore, i18n } from 'mutants-microfx';\nimport { PosInitData } from 'tplus-poslogin';\nimport { User } from 'tplus-api';\nimport { verticalHeadTime, verticalHeadContent } from './vertical-touch';\nimport { platform } from 'mutants-util';\nimport ThemeModal from \"./themeModal\";\nimport UploadOrder from \"./uploadList\";\nimport {stores} from 'mutants-microfx';\nimport {observer} from 'mobx-react';\nimport {OFFLINE_POINT_DESC} from './offlinePointDesc';\nconst { Item } = Menu;\nconst defaultFromat = 'yyyy-MM-dd hh:mm:ss';\nconst t = i18n.getFixedT(null, 'newretail');\nconst UPLOAD_BASE_PATH = '/login';\nconst NETWORK_THEME_PATH = \"/\";\nconst PLACE_ORDER_PATH = \"/RE/RE01\";\nconst WEAK_STANDARD_NUM = 3; // 弱网提示的次数上限\nlet weakRemindNum = 0;// 弱网提示初始值\nlet hasRouterListenInit = false;// 路由监听判断flag\n//头部时间\nfunction HeadTime(props) {\n const { time, dateFormat } = props;\n let unMount = false;\n const timeStr = typeof time === 'number' ? formatDate(time, dateFormat) : time;\n const [currentTime, setCurrentTime] = useState(formatDate(Date.now(), dateFormat));\n let timeout;\n function refreshDate() {\n if (time) return;\n !unMount && setCurrentTime(formatDate(Date.now(), dateFormat));\n timeout = setTimeout(refreshDate, 1000);\n }\n useEffect(() => {\n refreshDate();\n return () => {\n unMount = true;\n clearTimeout(timeout);\n };\n }, [currentTime]);\n const [date_YMD, date_HMS] = currentTime.split(' ') || [];\n\n if (platform.isVerticalTouch) return verticalHeadTime({ date_HMS });\n return (\n <div className='time'>\n {timeStr ?\n <div>{timeStr}</div> :\n <div>\n {date_YMD}\n <span>{date_HMS}</span>\n </div>\n }\n </div>\n );\n}\n\n//头部联网状态\nconst OnLineStatus = observer((props)=>{\n const { networkStatus } = props;\n const { networkCheckStore } = stores;\n const networkState = networkCheckStore.networkState;\n let networkOn = true;\n let iconName = 'WiFi';\n switch (networkState) {\n case '联网':\n iconName = 'WiFi';\n break;\n case '弱网':\n iconName = 'ruowifi';\n break;\n case '离线':\n networkOn = false;\n iconName = 'wuwangluo';\n break;\n default:\n break;\n }\n const switchNetwork = (checked ,event)=>{\n networkCheckStore.switchOnLine(checked);\n }\n const lineIcon = <Ticon\n icon={iconName}\n className=\"network-state-icon\"\n />\n return (\n <div><span className='network-status' style={{marginRight:'10px'}}>{networkStatus || lineIcon}</span><span><Switch checkedChildren=\"开启\" unCheckedChildren=\"关闭\" defaultChecked checked={networkOn} onChange={switchNetwork}/></span></div>\n );\n});\nfunction getIsOffNetWork() {\n const { networkCheckStore } = stores;\n return networkCheckStore.networkState === '离线';\n}\n//头部联网状态\nconst OnLineStatusToggle = observer(props => {\n const { isShowUploadBtnsByRouter, isResetNetWorkTheme, isOfflineCash, isPlaceOrderPage } = props;\n const { networkCheckStore, offlineSys, voucherStore } = stores;\n const networkState = networkCheckStore.networkState;\n let isOnLine = networkCheckStore.isOnLine;\n const hasUseOffline = isOfflineCash && !platform.otherOfflineStatus; //是否允许离线\n const { isHorizontalSunMi } = platform || {};\n let iconName = 'WiFi';\n if (hasUseOffline) {\n switch (networkState) {\n case '联网':\n iconName = 'WiFi';\n break;\n case '弱网':\n iconName = 'ruowifi';\n break;\n case '离线':\n iconName = 'wuwangluo';\n break;\n default:\n break;\n }\n if (networkState === '离线' && isOnLine && !document.querySelector('.tplus-off-line-modal')) {\n ModalWraper.confirm({\n className: 'tplus-off-line-modal',\n title: t('提示'),\n content: t('网络已断,是否切换到离线收银模式?'),\n onOk: () => {\n setOffLine(true);\n }\n });\n }\n function weakConfirm() {\n if (!isOnLine) { return; }// 离线不提示\n if (document.querySelector('.tplus-weak-network-modal')) { return; }// 不重复弹窗\n if (networkState !== '弱网') { return; } // 非弱网状态不提示\n if (weakRemindNum >= WEAK_STANDARD_NUM) { return; } // 提示大于三次不再提示\n if (!offlineSys.getDataIsOffline) { return; }// 数据未下载完不提示\n if (document.querySelector('.isRetailUpLoading')) { return; }// 上传中不提示\n if (document.querySelector('.isRetailDownLoading')) { return; }// 下载中不提示\n if (document.querySelector('.tplus-loading')) { return; }// 全屏loading不提示\n weakRemindNum ++;\n ModalWraper.confirm({\n className: 'tplus-weak-network-modal',\n title: t('提示'),\n content: t('当前网络不好,是否切换到离线?'),\n onOk: () => {\n setOffLine(true);\n }\n });\n }\n weakConfirm();\n }\n function switchStatus() {\n if (networkState === '离线' && !isOnLine) {\n Message.tip('当前无网络,无法切换为在线状态');\n return;\n }\n ModalWraper.confirm({\n title: t('提示'),\n content: t(`确定要切换为${isOnLine ? '离' : '在'}线环境吗?`),\n onOk: () => {\n setOffLine(isOnLine);\n }\n });\n }\n\n function getVoucherDataStatus() {\n let data = voucherStore.getVoucherData();\n const { Idmember, RetailDetails } = data || {};\n if (!!Idmember || (RetailDetails && RetailDetails.length > 0)) {\n return true;\n }\n return false;\n }\n\n function setOffLine(status) {\n if (isPlaceOrderPage && getVoucherDataStatus()) {\n ModalWraper.confirm({\n title: t('提示'),\n content: t(`当前为开单界面,切换到${status ? '离' : '在'}线会清除当前数据,确定要切换吗?`),\n onOk: () => {\n playStatus(status);\n }\n });\n } else {\n playStatus(status);\n }\n }\n\n function playStatus(status) {\n // status 为 true 是在线切离线\n if (status) {\n if (!offlineSys.getDataIsOffline() || document.querySelector('.isRetailDownLoading')) {\n Message.tip('数据还未下载完,无法切换为离线');\n return;\n }\n }\n offlineSys.setIsOffline(status);\n if (isPlaceOrderPage) {\n voucherStore.clearVoucherData();\n }\n }\n return (\n <div className='on-off-wrap'>\n <div className='status-square'>\n <span className=\"status-tog-btn\" style={{color: `${isResetNetWorkTheme ? '#fff' : ''}`}}>{<Ticon icon={iconName}/>}</span>\n </div>\n {\n hasUseOffline && isShowUploadBtnsByRouter && <div className={`status-square c-pointer online-status-bg ${isOnLine || isResetNetWorkTheme ? '' : 'off-line'}`}>\n <span className=\"status-tog-btn\" onClick={switchStatus}>\n <span>{isOnLine ? '在线' : '离线'}</span>\n <span>{<Ticon icon=\"zaixianlixian\" className=\"ts-14\" />}</span>\n </span>\n <Popover placement=\"bottom\" overlayClassName={'offline-popver'} content={<pre>{OFFLINE_POINT_DESC}</pre>} trigger={isHorizontalSunMi?'click':'hover'}>\n <span className=\"status-tog-btn\">{<Ticon icon=\"tanhao1\" />}</span>\n </Popover>\n </div>\n }\n </div>\n );\n});\n\n//零售单上传\nfunction RetailUpload() {\n const [isModalVisible, setIsModalVisible] = useState(false);\n const [isUpLoading, setIsUpLoading] = useState(false);\n const refModal = useRef(null);\n const showModal = async () => {\n refModal && refModal.current.fetch();\n setIsModalVisible(true);\n };\n\n const handleOk = async (isUpLoad = false) => {\n setIsModalVisible(false);\n if (getIsOffNetWork()) {\n Message.tip('已断网,不可以上传单据');\n return;\n }\n if (!isUpLoad) {\n Message.tip('暂无可以上传的单据');\n return;\n }\n if (isUpLoading) {\n Message.tip('零售单正在上传……');\n return;\n }\n setIsUpLoading(true);\n try {\n await stores.offlineSys.uploadRetail();\n // Message.success('零售单上传成功');\n } catch (err) {\n Message.error('上传失败');\n }\n setIsUpLoading(false);\n };\n\n const handleCancel = () => {\n setIsModalVisible(false);\n };\n return (\n <div className='upload-retail'>\n <div className=\"status-square online-status-bg c-pointer\" onClick={showModal}>\n <span className=\"status-tog-btn\">\n <span className={`${isUpLoading ? 'isRetailUpLoading' : ''}`}>{<Ticon icon=\"shangchuan\"/>}</span>\n <span className=\"fast-upload-btn\">上传零售单</span>\n </span>\n </div>\n <UnLoadNum/>\n <UploadOrder ref={refModal} visible={isModalVisible} handleOk={handleOk} handleCancel={handleCancel}/>\n </div>\n );\n}\n// 零售单未上传的数量\nconst UnLoadNum = observer(() => {\n const {offlineSys: {retailNotUploadNumber} } = stores;\n return <span style={{display: retailNotUploadNumber > 0 ? 'inherit' : 'none'}} className=\"up-count-btn\">{retailNotUploadNumber > 99 ? '99+' : retailNotUploadNumber}</span>\n});\n//零售单下载\nfunction RetailDownload() {\n const {offlineSys} = stores;\n const [isDownload, setIsDownload] = useState(false);\n const [downStr, setDownStr] = useState('下载数据');\n const handleDownLoad = async () => {\n if (getIsOffNetWork()) {\n Message.tip('已断网,不可以下载单据');\n return;\n }\n if (isDownload) {\n Message.tip('下载中');\n return;\n }\n setDownStr('0 %');\n setIsDownload(true);\n Message.tip('下载中');\n try {\n let result = await offlineSys.downloadCatcherData(e => {\n setDownStr(e.percent + ' %');\n });\n if (result) {\n Message.success(`数据下载成功`);\n } else {\n Message.error(`数据下载失败`);\n }\n } catch(err){\n Message.error('数据下载失败');\n }\n setDownStr('下载数据');\n setIsDownload(false);\n };\n return (\n <div className='download-retail'>\n <DownloadBtn handleDownLoad={handleDownLoad} isDownload={isDownload} downStr={downStr}/>\n </div>\n );\n};\n// 下载按钮\nconst DownloadBtn = observer((props) => {\n const { downStr, isDownload, handleDownLoad} = props;\n return (\n <div className={`status-square online-status-bg c-pointer ${getIsOffNetWork() ? 'is-grey' : ''}`} onClick={handleDownLoad}>\n <span className=\"status-tog-btn\">\n <span className={`${isDownload ? 'isRetailDownLoading' : ''}`}>{<Ticon icon=\"xiazaishuju\"/>}</span>\n <span className=\"fast-upload-btn\">{downStr}</span>\n </span>\n </div>\n )\n});\nlet releaseDate, releaseVersion;\ntry {\n releaseDate = __RELEASESDATE__;\n releaseVersion = __BUILDVERSION__;\n} catch (error) {\n releaseDate = '';\n releaseVersion = '';\n}\nexport default function HeadContent(props, context) {\n const isElectron = (env || {}).platform === 'electron';\n const {businessName = '', storeName = '', posCode, logo, networkStatus, style = {}, history,\n dateFormat = defaultFromat, solt, time, isPortal, isLogin, menu = [], onClick, location} = props;\n const [themeVisible, setThemeVisible] = useState(false);\n const [isShowUploadBtnsByRouter, setIsShowUploadBtnsByRouter] = useState(window.location.href.indexOf(UPLOAD_BASE_PATH) < 0);\n const [isResetNetWorkTheme, setIsResetNetWorkTheme] = useState(window.location.pathname === NETWORK_THEME_PATH);\n const [isPlaceOrderPage, setIsPlaceOrderPage] = useState(window.location.href.indexOf(PLACE_ORDER_PATH) > 0);\n HeadContent.setStatusByRouter = function(route) {\n setIsResetNetWorkTheme(route.pathname === NETWORK_THEME_PATH);\n setIsShowUploadBtnsByRouter(route.pathname.indexOf(UPLOAD_BASE_PATH) < 0);\n setIsPlaceOrderPage(route.pathname.indexOf(PLACE_ORDER_PATH) > -1)\n }\n // 加一个标识,否则每次render都会新增一个路由监听\n if (!hasRouterListenInit) {\n props.history.listen(route => {\n // 提取到一个全局里面,否则每次触发的set方法都是第一次的\n HeadContent.setStatusByRouter(route);\n });\n }\n hasRouterListenInit = true;\n const hasUseOffline = (PosInitData('IsOfflineCash') === \"1\") && !platform.otherOfflineStatus; //是否允许离线\n const menuProps = {onClick};\n const menus = (\n <Menu {...menuProps}>\n {menu.map((item, i) =>\n <Item key={item.key || i}>\n {item.icon && <Ticon icon={item.icon}/>}\n <span>{item.title}</span>\n </Item>)\n }\n </Menu>\n );\n\n const controlConfig = [\n {type: 'suoxiao', event: 'min'},\n {\n type: 'guanbixiao',\n event: 'close',\n beforeEvent: (item) => {\n return ModalWraper.confirm({\n className: 'tplus-confirm-modal',\n title: '关闭提示',\n content: '您确定要关闭应用吗?',\n async onOk() {\n Loading.show({\n className: 'close-app-loading',\n node: <div className='close-app-spin'>\n <Spin scale={1.2} type='shape' visible />\n <h1>应用关闭中...</h1>\n </div>,\n delay: false\n });\n context.actionHook.actionChange('close-app');\n try {\n await User.logout(() => {// logout 内部一个方法缺少await,所以采用传入回调函数的方法,而不是写在 finally\n // 需要为500ms 时间短可能会不能正常注销清理\n clearEndExe(item.event);\n });\n } catch (err) {\n console.log(err, 'User.logout()');\n User.clear(); localStore.remove('user');\n clearEndExe(item.event);\n }\n }\n })\n }\n },\n ];\n const clearEndExe = (_eType) => {\n setTimeout(() => { closeNativeWindow(_eType) }, 1000);\n }\n\n //执行关闭客户端\n const closeNativeWindow = (_event) => {\n try {\n nativeMs.doWindow(_event);\n } catch (e) {\n console.log('执行关闭客户端失败,强制执行destroyWindow', e);\n } finally {\n destroyWindow();\n }\n }\n //强制关闭客户端\n const destroyWindow = () => {\n try {\n let wb = window.CommonLib;\n if (wb) {\n const { remote } = wb.electron;\n let win = remote && remote.getCurrentWindow();\n win && win.destroy();\n console.log(wb, win, 'win.destroy');\n }\n } catch (e) {\n console.log('强制关闭客户端失败', e);\n }\n }\n const splitUser = (value) => {\n const regEmail = new RegExp('^[A-Za-zd0-9]+([-_.][A-Za-zd0-9]+)*@([A-Za-zd0-9]+[-.])+[A-Za-zd]{2,5}$');\n const isEmail = regEmail.test(value);\n\n if (isEmail) {\n return value.split('@')[0];\n }\n return value;\n }\n\n const setInventoryFocus = () => {\n const { isHorizontalPad } = platform || {};\n if (!!isHorizontalPad) return;\n let doms = document.getElementsByClassName('app hot-key-focus-container');\n let input = document.getElementById('productPoint');\n if (input) setTimeout(() => { if (doms && doms.length > 0) { console.log('headContent--商品焦点==Focus==');input.focus() } }, 300)\n }\n\n const clickTheme = (isShow) => {\n setThemeVisible(isShow)\n }\n\n const userName = PosInitData('UserName');\n const overlayClassName = `_portal-header-dropdown ${!isPortal ? 'inside-header' : ''}`;\n const moreInfoNode = <div className='pos-more-info-container'>\n <h1 className='business-name'>{businessName}</h1>\n <h1 className='store-code'>{posCode}</h1>\n </div>\n\n const headControlNode = <div className=\"head-content-control\">\n {controlConfig.map(v => <Ticon\n type={v.type}\n key={v.type}\n onClick={() => {\n if (nativeMs) {\n const {beforeEvent} = v;\n if (beforeEvent) {\n return beforeEvent(v);\n }\n nativeMs.doWindow(v.event)\n if (typeof setInventoryFocus == 'function') {\n setInventoryFocus()\n }\n }\n }}\n />)}\n </div>\n\n if (platform.isVerticalTouch) return verticalHeadContent({ style, releaseVersion, releaseDate,\n time, dateFormat, logo, HeadTime, headControlNode, location, history, clickTheme, themeVisible, isPortal, isLogin });\n\n return (<div style={{display: 'inline-block', width: '100%', height: '100%', ...style}} className='head-content' data-release={`${releaseVersion} ${releaseDate}`}>\n <div className=\"head-content-left\">\n {!!logo && <div className='business-logo' onClick={()=>{history.replace('/')}}>{logo}</div>}\n {!!storeName && <Tooltip trigger=\"click\" placement=\"bottomRight\" title={moreInfoNode} color={'#fff'} overlayClassName='head-business-tip'>\n <div className='store-name'>{storeName}<i className='header-triangle-down' /></div>\n </Tooltip>}\n {/* <OnLineStatus networkStatus={networkStatus}/> */}\n <OnLineStatusToggle isShowUploadBtnsByRouter={isShowUploadBtnsByRouter} isResetNetWorkTheme={isResetNetWorkTheme} isOfflineCash={hasUseOffline} isPlaceOrderPage={isPlaceOrderPage}/>\n {hasUseOffline && isShowUploadBtnsByRouter && <RetailUpload />}\n {hasUseOffline && isShowUploadBtnsByRouter && <RetailDownload />}\n </div>\n {isElectron && headControlNode}\n <div className=\"head-content-right\">\n {!isLogin && <Ticon icon=\"huanfu\" className={`theme-icon ${!isPortal ? 'pos-page' : ''}` } onClick={() => {clickTheme(true)}}/>}\n {!isLogin && !!userName && <Dropdown\n overlayClassName={overlayClassName}\n trigger={['click']}\n overlay={menus}\n placement=\"bottomRight\"\n arrow\n >\n <div className='header-info-render-content' onClick={e => e.preventDefault()}>\n <div className='store-info-item'>\n <p className='biller'>开单员:<span>{splitUser(userName)}</span></p>\n </div>\n <i className='header-triangle-down'/>\n </div>\n </Dropdown>}\n {!isLogin && <div className='store-info-item'>{solt}</div>}\n <HeadTime time={time} dateFormat={dateFormat}/>\n </div>\n <ThemeModal\n visible={themeVisible}\n isVertical={platform.isVerticalTouch}\n isPortal={isPortal}\n closeFn={(isShow) => clickTheme(isShow)}\n />\n </div>);\n}\n\nHeadContent.contextTypes = {\n actionHook: PropTypes.object,\n}\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","WEAK_STANDARD_NUM","weakRemindNum","hasRouterListenInit","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","setStatusByRouter","route","listen","menuProps","menus","map","item","i","key","icon","controlConfig","type","beforeEvent","Loading","show","node","delay","actionHook","actionChange","User","logout","clearEndExe","console","log","clear","localStore","remove","_eType","closeNativeWindow","_event","nativeMs","doWindow","destroyWindow","wb","CommonLib","remote","electron","win","getCurrentWindow","destroy","splitUser","value","regEmail","RegExp","isEmail","test","setInventoryFocus","isHorizontalPad","doms","getElementsByClassName","input","getElementById","focus","clickTheme","isShow","userName","overlayClassName","moreInfoNode","headControlNode","v","width","height","replace","preventDefault","contextTypes","PropTypes","object"],"mappings":";;;;;;;;;;;;;;;;;;;;;;kBA4VwBA,W;;AA5VxB;;;;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,IAAMC,oBAAoB,CAA1B,C,CAA6B;AAC7B,IAAIC,gBAAgB,CAApB,C,CAAsB;AACtB,IAAIC,sBAAsB,KAA1B,C,CAAgC;AAChC;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;;AAL1B,cAMbzB,yBAAY,EANC;AAAA,MAMnC0B,iBANmC,SAMnCA,iBANmC;;AAO3C,MAAIlB,WAAW,MAAf;AACA,MAAIgB,aAAJ,EAAmB;AAAA,QAwBRG,WAxBQ,GAwBjB,SAASA,WAAT,GAAuB;AACrB,UAAI,CAACJ,QAAL,EAAe;AAAE;AAAS,OADL,CACK;AAC1B,UAAIK,SAASC,aAAT,CAAuB,2BAAvB,CAAJ,EAAyD;AAAE;AAAS,OAF/C,CAE+C;AACpE,UAAIvB,iBAAiB,IAArB,EAA2B;AAAE;AAAS,OAHjB,CAGkB;AACvC,UAAIzB,iBAAiBD,iBAArB,EAAwC;AAAE;AAAS,OAJ9B,CAI+B;AACpD,UAAI,CAACyC,WAAWS,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;AACzDhD;AACAkD,wCAAYC,OAAZ,CAAoB;AAClBC,mBAAW,0BADO;AAElBC,eAAO5D,EAAE,IAAF,CAFW;AAGlB6D,iBAAS7D,EAAE,iBAAF,CAHS;AAIlB8D,cAAM,gBAAM;AACVC,qBAAW,IAAX;AACD;AANiB,OAApB;AAQD,KA1CgB;;AACjB,YAAQ/B,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,CAACK,SAASC,aAAT,CAAuB,uBAAvB,CAA1C,EAA2F;AACzFE,wCAAYC,OAAZ,CAAoB;AAClBC,mBAAW,sBADO;AAElBC,eAAO5D,EAAE,IAAF,CAFW;AAGlB6D,iBAAS7D,EAAE,mBAAF,CAHS;AAIlB8D,cAAM,gBAAM;AACVC,qBAAW,IAAX;AACD;AANiB,OAApB;AAQD;;AAoBDV;AACD;AACD,WAASW,YAAT,GAAwB;AACtB,QAAIhC,iBAAiB,IAAjB,IAAyB,CAACiB,QAA9B,EAAwC;AACtCgB,oCAAQC,GAAR,CAAY,iBAAZ;AACA;AACD;AACDT,sCAAYC,OAAZ,CAAoB;AAChBE,aAAO5D,EAAE,IAAF,CADS;AAEhB6D,eAAS7D,4CAAWiD,WAAW,GAAX,GAAiB,GAA5B,qCAFO;AAGhBa,YAAM,gBAAM;AACVC,mBAAWd,QAAX;AACD;AALe,KAApB;AAOD;;AAED,WAASkB,oBAAT,GAAgC;AAC9B,QAAIC,OAAOpB,aAAaqB,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,QAAI3B,oBAAoBqB,sBAAxB,EAAgD;AAC9CV,wCAAYC,OAAZ,CAAoB;AAClBE,eAAO5D,EAAE,IAAF,CADW;AAElB6D,iBAAS7D,0EAAgByE,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,CAAC1B,WAAWS,gBAAX,EAAD,IAAkCF,SAASC,aAAT,CAAuB,sBAAvB,CAAtC,EAAsF;AACpFU,sCAAQC,GAAR,CAAY,iBAAZ;AACA;AACD;AACF;AACDnB,eAAW4B,YAAX,CAAwBF,MAAxB;AACA,QAAI3B,gBAAJ,EAAsB;AACpBE,mBAAa4B,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,aAAUjC,sBAAsB,MAAtB,GAA+B,EAAzC,CAAD,EAAxC;AAA0F,sCAAC,2BAAD,IAAO,MAAMV,QAAb;AAA1F;AADF,KADF;AAKKgB,qBAAiBP,wBAAjB,IAA6C;AAAA;AAAA,QAAK,0DAAuDM,YAAYL,mBAAZ,GAAkC,EAAlC,GAAuC,UAA9F,CAAL;AAC5C;AAAA;AAAA,UAAM,WAAU,gBAAhB,EAAiC,SAASoB,YAA1C;AACE;AAAA;AAAA;AAAOf,qBAAW,IAAX,GAAkB;AAAzB,SADF;AAEE;AAAA;AAAA;AAAO,wCAAC,2BAAD,IAAO,MAAK,eAAZ,EAA4B,WAAU,OAAtC;AAAP;AAFF,OAD4C;AAK5C;AAAC,qBAAD;AAAA,UAAS,WAAU,QAAnB,EAA4B,kBAAkB,gBAA9C,EAAgE,SAAS;AAAA;AAAA;AAAM6B;AAAN,WAAzE,EAA0G,SAAS1B,oBAAkB,OAAlB,GAA0B,OAA7I;AACE;AAAA;AAAA,YAAM,WAAU,gBAAhB;AAAkC,wCAAC,2BAAD,IAAO,MAAK,SAAZ;AAAlC;AADF;AAL4C;AALlD,GADF;AAkBD,CAzH0B,CAA3B;;AA2HA;AACA,SAAS2B,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,mBAEXxC,iBAFW;AAAA;AAAA;AAAA;;AAGbwB,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,qBAgBPpD,uBAAOgB,UAAP,CAAkB2C,YAAlB,EAhBO;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAkBbzB,4CAAQ0B,KAAR,CAAc,MAAd;;AAlBa;AAoBfR,6BAAe,KAAf;;AApBe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAAX;;AAAA;AAAA;AAAA;AAAA,KAAN;;AAuBA,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,GACgB/D,sBADhB,CACxBgB,UADwB,CACX+C,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,MACjBjD,UADiB,GACHhB,sBADG,CACjBgB,UADiB;;AAAA,mBAEY,qBAAS,KAAT,CAFZ;AAAA;AAAA,MAEjBkD,UAFiB;AAAA,MAELC,aAFK;;AAAA,mBAGM,qBAAS,IAAT,CAHN;AAAA;AAAA,MAGjBC,OAHiB;AAAA,MAGRC,UAHQ;;AAIxB,MAAMC;AAAA,yFAAiB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBACjB5D,iBADiB;AAAA;AAAA;AAAA;;AAEnBwB,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,qBAaAnB,WAAWuD,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,IAAX;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,UAACjG,KAAD,EAAW;AAAA,MAC9ByF,OAD8B,GACSzF,KADT,CAC9ByF,OAD8B;AAAA,MACrBF,UADqB,GACSvF,KADT,CACrBuF,UADqB;AAAA,MACTI,cADS,GACS3F,KADT,CACT2F,cADS;;AAEtC,MAAMxC,UACJ;AAAA;AAAA,MAAK,WAAU,+BAAf;AACE;AAAA;AAAA,QAAK,WAAU,6BAAf,EAA6C,SAASwC,cAAtD;AACE,oCAAC,2BAAD,IAAO,MAAK,aAAZ,GADF;AAEE;AAAA;AAAA;AAAA;AAAA;AAFF,KADF;AAKE;AAAA;AAAA,QAAK,WAAU,8BAAf;AACE,oCAAC,2BAAD,IAAO,MAAK,SAAZ,GADF;AAEE;AAAA;AAAA;AAAA;AAAA;AAFF;AALF,GADF;AAYA,SACE;AAAA;AAAA,MAAK,0DAAuD5D,oBAAoB,SAApB,GAAgC,EAAvF,CAAL;AACE;AAAA;AAAA,QAAM,WAAU,gBAAhB,EAAiC,SAAS4D,cAA1C;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,KADF;AAKE;AAAA;AAAA,QAAM,WAAU,sBAAhB;AACE;AAAC,qBAAD;AAAA,UAAS,WAAU,QAAnB,EAA4B,SAAStC,OAArC,EAA8C,SAAQ,OAAtD;AACE,sCAAC,2BAAD,IAAO,MAAK,aAAZ;AADF;AADF;AALF,GADF;AAaD,CA3BmB,CAApB;AA4BA,IAAI+C,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,SAASjH,WAAT,CAAqBc,KAArB,EAA4BsG,OAA5B,EAAqC;AAClD,MAAMC,aAAa,CAACC,uBAAO,EAAR,EAAYxF,QAAZ,KAAyB,UAA5C;AADkD,4BAG2ChB,KAH3C,CAE3CyG,YAF2C;AAAA,MAE3CA,YAF2C,uCAE5B,EAF4B;AAAA,yBAG2CzG,KAH3C,CAExB0G,SAFwB;AAAA,MAExBA,SAFwB,oCAEZ,EAFY;AAAA,MAERC,OAFQ,GAG2C3G,KAH3C,CAER2G,OAFQ;AAAA,MAECC,IAFD,GAG2C5G,KAH3C,CAEC4G,IAFD;AAAA,MAEOzF,aAFP,GAG2CnB,KAH3C,CAEOmB,aAFP;AAAA,qBAG2CnB,KAH3C,CAEsB6G,KAFtB;AAAA,MAEsBA,KAFtB,gCAE8B,EAF9B;AAAA,MAEkCC,OAFlC,GAG2C9G,KAH3C,CAEkC8G,OAFlC;AAAA,0BAG2C9G,KAH3C,CAGhDE,UAHgD;AAAA,MAGhDA,UAHgD,qCAGnCb,aAHmC;AAAA,MAGpB0H,IAHoB,GAG2C/G,KAH3C,CAGpB+G,IAHoB;AAAA,MAGd9G,IAHc,GAG2CD,KAH3C,CAGdC,IAHc;AAAA,MAGR+G,QAHQ,GAG2ChH,KAH3C,CAGRgH,QAHQ;AAAA,MAGEC,OAHF,GAG2CjH,KAH3C,CAGEiH,OAHF;AAAA,oBAG2CjH,KAH3C,CAGWkH,IAHX;AAAA,MAGWA,IAHX,+BAGkB,EAHlB;AAAA,MAGsBC,OAHtB,GAG2CnH,KAH3C,CAGsBmH,OAHtB;AAAA,MAG+BC,QAH/B,GAG2CpH,KAH3C,CAG+BoH,QAH/B;;AAAA,oBAIV,qBAAS,KAAT,CAJU;AAAA;AAAA,MAI3CC,YAJ2C;AAAA,MAI7BC,eAJ6B;;AAAA,oBAKc,qBAASC,OAAOH,QAAP,CAAgBI,IAAhB,CAAqBC,OAArB,CAA6BhI,gBAA7B,IAAiD,CAA1D,CALd;AAAA;AAAA,MAK3CwC,wBAL2C;AAAA,MAKjByF,2BALiB;;AAAA,oBAMI,qBAASH,OAAOH,QAAP,CAAgBO,QAAhB,KAA6BjI,kBAAtC,CANJ;AAAA;AAAA,MAM3CwC,mBAN2C;AAAA,MAMtB0F,sBANsB;;AAAA,oBAOF,qBAASL,OAAOH,QAAP,CAAgBI,IAAhB,CAAqBC,OAArB,CAA6B9H,gBAA7B,IAAiD,CAA1D,CAPE;AAAA;AAAA,MAO3CyC,gBAP2C;AAAA,MAOzByF,mBAPyB;;AAQlD3I,cAAY4I,iBAAZ,GAAgC,UAASC,KAAT,EAAgB;AAC9CH,2BAAuBG,MAAMJ,QAAN,KAAmBjI,kBAA1C;AACAgI,gCAA4BK,MAAMJ,QAAN,CAAeF,OAAf,CAAuBhI,gBAAvB,IAA2C,CAAvE;AACAoI,wBAAoBE,MAAMJ,QAAN,CAAeF,OAAf,CAAuB9H,gBAAvB,IAA2C,CAAC,CAAhE;AACD,GAJD;AAKA;AACA,MAAI,CAACG,mBAAL,EAA0B;AACxBE,UAAM8G,OAAN,CAAckB,MAAd,CAAqB,iBAAS;AAC5B;AACA9I,kBAAY4I,iBAAZ,CAA8BC,KAA9B;AACD,KAHD;AAID;AACDjI,wBAAsB,IAAtB;AACA,MAAM0C,gBAAiB,gCAAY,eAAZ,MAAiC,GAAlC,IAA0C,CAACxB,sBAASyB,kBAA1E,CArBkD,CAqB4C;AAC9F,MAAMwF,YAAY,EAACd,gBAAD,EAAlB;AACA,MAAMe,QACJ;AAAC,cAAD;AAAUD,aAAV;AACGf,SAAKiB,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,eAAKlF;AAAZ;AAFF,OADQ;AAAA,KAAT;AADH,GADF;;AAWA,MAAMsF,gBAAgB,CACpB,EAACC,MAAM,SAAP,EAAkB9G,OAAO,KAAzB,EADoB,EAEpB;AACE8G,UAAM,YADR;AAEE9G,WAAO,OAFT;AAGE+G,iBAAa,qBAACN,IAAD,EAAU;AACrB,aAAOrF,kCAAYC,OAAZ,CAAoB;AACzBC,mBAAW,qBADc;AAEzBC,eAAO,MAFkB;AAGzBC,iBAAS,YAHgB;AAInBC,YAJmB,kBAIZ;AAAA;;AAAA;AAAA;AAAA;AAAA;AAAA;AACXuF,kDAAQC,IAAR,CAAa;AACX3F,iCAAW,mBADA;AAEX4F,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;AAQAxC,4BAAQyC,UAAR,CAAmBC,YAAnB,CAAgC,WAAhC;AATW;AAAA;AAAA,2BAWHC,eAAKC,MAAL,CAAY,YAAM;AAAC;AACvB;AACAC,kCAAYf,KAAKzG,KAAjB;AACD,qBAHK,CAXG;;AAAA;AAAA;AAAA;;AAAA;AAAA;AAAA;;AAgBTyH,4BAAQC,GAAR,eAAiB,eAAjB;AACAJ,mCAAKK,KAAL,GAAcC,2BAAWC,MAAX,CAAkB,MAAlB;AACdL,gCAAYf,KAAKzG,KAAjB;;AAlBS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAoBZ;AAxBwB,OAApB,CAAP;AA0BD;AA9BH,GAFoB,CAAtB;AAmCA,MAAMwH,cAAc,SAAdA,WAAc,CAACM,MAAD,EAAY;AAC9B9I,eAAW,YAAM;AAAE+I,wBAAkBD,MAAlB;AAA2B,KAA9C,EAAgD,IAAhD;AACD,GAFD;;AAIA;AACA,MAAMC,oBAAoB,SAApBA,iBAAoB,CAACC,MAAD,EAAY;AACpC,QAAI;AACFC,+BAASC,QAAT,CAAkBF,MAAlB;AACD,KAFD,CAEE,OAAO9D,CAAP,EAAU;AACVuD,cAAQC,GAAR,CAAY,6BAAZ,EAA2CxD,CAA3C;AACD,KAJD,SAIU;AACRiE;AACD;AACF,GARD;AASA;AACA,MAAMA,gBAAgB,SAAhBA,aAAgB,GAAM;AAC1B,QAAI;AACF,UAAIC,KAAKxC,OAAOyC,SAAhB;AACA,UAAID,EAAJ,EAAQ;AAAA,YACEE,MADF,GACaF,GAAGG,QADhB,CACED,MADF;;AAEN,YAAIE,MAAMF,UAAUA,OAAOG,gBAAP,EAApB;AACAD,eAAOA,IAAIE,OAAJ,EAAP;AACAjB,gBAAQC,GAAR,CAAYU,EAAZ,EAAgBI,GAAhB,EAAqB,aAArB;AACD;AACF,KARD,CAQE,OAAOtE,CAAP,EAAU;AACVuD,cAAQC,GAAR,CAAY,WAAZ,EAAyBxD,CAAzB;AACD;AACF,GAZD;AAaA,MAAMyE,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,MAAM1J,KAAN,CAAY,GAAZ,EAAiB,CAAjB,CAAP;AACD;AACD,WAAO0J,KAAP;AACD,GARD;;AAUA,MAAMK,oBAAoB,SAApBA,iBAAoB,GAAM;AAAA,gBACF5J,yBAAY,EADV;AAAA,QACtB6J,eADsB,SACtBA,eADsB;;AAE9B,QAAI,CAAC,CAACA,eAAN,EAAuB;AACvB,QAAIC,OAAOlI,SAASmI,sBAAT,CAAgC,6BAAhC,CAAX;AACA,QAAIC,QAAQpI,SAASqI,cAAT,CAAwB,cAAxB,CAAZ;AACA,QAAID,KAAJ,EAAWrK,WAAW,YAAM;AAAE,UAAImK,QAAQA,KAAKhH,MAAL,GAAc,CAA1B,EAA6B;AAAEsF,gBAAQC,GAAR,CAAY,4BAAZ,EAA0C2B,MAAME,KAAN;AAAe;AAAE,KAA7G,EAA+G,GAA/G;AACZ,GAND;;AAQA,MAAMC,aAAa,SAAbA,UAAa,CAACC,MAAD,EAAY;AAC7B9D,oBAAgB8D,MAAhB;AACD,GAFD;;AAIA,MAAMC,WAAW,gCAAY,UAAZ,CAAjB;AACA,MAAMC,iDAA8C,CAACtE,QAAD,GAAY,eAAZ,GAA8B,EAA5E,CAAN;AACA,MAAMuE,eAAe;AAAA;AAAA,MAAK,WAAU,yBAAf;AACnB;AAAA;AAAA,QAAI,WAAU,eAAd;AAA+B9E;AAA/B,KADmB;AAEnB;AAAA;AAAA,QAAI,WAAU,YAAd;AAA4BE;AAA5B;AAFmB,GAArB;;AAKA,MAAM6E,kBAAkB;AAAA;AAAA,MAAK,WAAU,sBAAf;AACrBhD,kBAAcL,GAAd,CAAkB;AAAA,aAAK,8BAAC,2BAAD;AACtB,cAAMsD,EAAEhD,IADc;AAEtB,aAAKgD,EAAEhD,IAFe;AAGtB,iBAAS,mBAAM;AACb,cAAImB,wBAAJ,EAAc;AAAA,gBACLlB,WADK,GACU+C,CADV,CACL/C,WADK;;AAEZ,gBAAIA,WAAJ,EAAiB;AACf,qBAAOA,YAAY+C,CAAZ,CAAP;AACD;AACD7B,qCAASC,QAAT,CAAkB4B,EAAE9J,KAApB;AACA,gBAAI,OAAOiJ,iBAAP,IAA4B,UAAhC,EAA4C;AAC1CA;AACD;AACF;AACF;AAdqB,QAAL;AAAA,KAAlB;AADqB,GAAxB;;AAmBA,MAAI5J,sBAASC,eAAb,EAA8B,OAAO,wCAAoB,EAAE4F,YAAF,EAASV,8BAAT,EAAyBD,wBAAzB;AACvDjG,cADuD,EACjDC,sBADiD,EACrC0G,UADqC,EAC/B7G,kBAD+B,EACrByL,gCADqB,EACJpE,kBADI,EACMN,gBADN,EACeqE,sBADf,EAC2B9D,0BAD3B,EACyCL,kBADzC,EACmDC,gBADnD,EAApB,CAAP;;AAG9B,SAAQ;AAAA;AAAA,MAAK,gCAAQ5B,SAAS,cAAjB,EAAiCqG,OAAO,MAAxC,EAAgDC,QAAQ,MAAxD,IAAmE9E,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,oBAAQ8E,OAAR,CAAgB,GAAhB;AAAqB,WAAlE;AAAqEhF;AAArE,OADb;AAEG,OAAC,CAACF,SAAF,IAAe;AAAC,qBAAD;AAAA,UAAS,SAAQ,OAAjB,EAAyB,WAAU,aAAnC,EAAiD,OAAO6E,YAAxD,EAAsE,OAAO,MAA7E,EAAqF,kBAAiB,mBAAtG;AACd;AAAA;AAAA,YAAK,WAAU,YAAf;AAA6B7E,mBAA7B;AAAuC,+CAAG,WAAU,sBAAb;AAAvC;AADc,OAFlB;AAME,oCAAC,kBAAD,IAAoB,0BAA0BzE,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;AAWLsE,kBAAciF,eAXT;AAYN;AAAA;AAAA,QAAK,WAAU,oBAAf;AACG,OAACvE,OAAD,IAAY,8BAAC,2BAAD,IAAO,MAAK,QAAZ,EAAqB,4BAAyB,CAACD,QAAD,GAAY,UAAZ,GAAyB,EAAlD,CAArB,EAA8E,SAAS,mBAAM;AAACmE,qBAAW,IAAX;AAAiB,SAA/G,GADf;AAEG,OAAClE,OAAD,IAAY,CAAC,CAACoE,QAAd,IAA0B;AAAC,sBAAD;AAAA;AACzB,4BAAkBC,gBADO;AAEzB,mBAAS,CAAC,OAAD,CAFgB;AAGzB,mBAASpD,KAHgB;AAIzB,qBAAU,aAJe;AAKzB;AALyB;AAOzB;AAAA;AAAA,YAAK,WAAU,4BAAf,EAA4C,SAAS;AAAA,qBAAKrC,EAAEgG,cAAF,EAAL;AAAA,aAArD;AACE;AAAA;AAAA,cAAK,WAAU,iBAAf;AACE;AAAA;AAAA,gBAAG,WAAU,QAAb;AAAA;AAA0B;AAAA;AAAA;AAAOvB,0BAAUe,QAAV;AAAP;AAA1B;AADF,WADF;AAIE,+CAAG,WAAU,sBAAb;AAJF;AAPyB,OAF7B;AAgBG,OAACpE,OAAD,IAAY;AAAA;AAAA,UAAK,WAAU,iBAAf;AAAkCF;AAAlC,OAhBf;AAiBE,oCAAC,QAAD,IAAU,MAAM9G,IAAhB,EAAsB,YAAYC,UAAlC;AAjBF,KAZM;AA+BN,kCAAC,oBAAD;AACI,eAASmH,YADb;AAEI,kBAAYrG,sBAASC,eAFzB;AAGI,gBAAU+F,QAHd;AAII,eAAS,iBAACoE,MAAD;AAAA,eAAYD,WAAWC,MAAX,CAAZ;AAAA;AAJb;AA/BM,GAAR;AAsCD;;AAEDlM,YAAY4M,YAAZ,GAA2B;AACzB/C,cAAYgD,oBAAUC;AADG,CAA3B","file":"headContent.js","sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\nimport { Ticon, ModalWraper, Loading, Spin, Message } from 'tplus-components-touch';\nimport { Tooltip, Menu, Dropdown, Switch, Popover } from 'antd';\nimport PropTypes from 'prop-types';\nimport { formatDate } from '../../utils';\nimport { env, nativeMs, localStore, i18n } from 'mutants-microfx';\nimport { PosInitData } from 'tplus-poslogin';\nimport { User } from 'tplus-api';\nimport { verticalHeadTime, verticalHeadContent } from './vertical-touch';\nimport { platform } from 'mutants-util';\nimport ThemeModal from \"./themeModal\";\nimport UploadOrder from \"./uploadList\";\nimport {stores} from 'mutants-microfx';\nimport {observer} from 'mobx-react';\nimport {OFFLINE_POINT_DESC} from './offlinePointDesc';\nconst { Item } = Menu;\nconst defaultFromat = 'yyyy-MM-dd hh:mm:ss';\nconst t = i18n.getFixedT(null, 'newretail');\nconst UPLOAD_BASE_PATH = '/login';\nconst NETWORK_THEME_PATH = \"/\";\nconst PLACE_ORDER_PATH = \"/RE/RE01\";\nconst WEAK_STANDARD_NUM = 3; // 弱网提示的次数上限\nlet weakRemindNum = 0;// 弱网提示初始值\nlet hasRouterListenInit = false;// 路由监听判断flag\n//头部时间\nfunction HeadTime(props) {\n const { time, dateFormat } = props;\n let unMount = false;\n const timeStr = typeof time === 'number' ? formatDate(time, dateFormat) : time;\n const [currentTime, setCurrentTime] = useState(formatDate(Date.now(), dateFormat));\n let timeout;\n function refreshDate() {\n if (time) return;\n !unMount && setCurrentTime(formatDate(Date.now(), dateFormat));\n timeout = setTimeout(refreshDate, 1000);\n }\n useEffect(() => {\n refreshDate();\n return () => {\n unMount = true;\n clearTimeout(timeout);\n };\n }, [currentTime]);\n const [date_YMD, date_HMS] = currentTime.split(' ') || [];\n\n if (platform.isVerticalTouch) return verticalHeadTime({ date_HMS });\n return (\n <div className='time'>\n {timeStr ?\n <div>{timeStr}</div> :\n <div>\n {date_YMD}\n <span>{date_HMS}</span>\n </div>\n }\n </div>\n );\n}\n\n//头部联网状态\nconst OnLineStatus = observer((props)=>{\n const { networkStatus } = props;\n const { networkCheckStore } = stores;\n const networkState = networkCheckStore.networkState;\n let networkOn = true;\n let iconName = 'WiFi';\n switch (networkState) {\n case '联网':\n iconName = 'WiFi';\n break;\n case '弱网':\n iconName = 'ruowifi';\n break;\n case '离线':\n networkOn = false;\n iconName = 'wuwangluo';\n break;\n default:\n break;\n }\n const switchNetwork = (checked ,event)=>{\n networkCheckStore.switchOnLine(checked);\n }\n const lineIcon = <Ticon\n icon={iconName}\n className=\"network-state-icon\"\n />\n return (\n <div><span className='network-status' style={{marginRight:'10px'}}>{networkStatus || lineIcon}</span><span><Switch checkedChildren=\"开启\" unCheckedChildren=\"关闭\" defaultChecked checked={networkOn} onChange={switchNetwork}/></span></div>\n );\n});\nfunction getIsOffNetWork() {\n const { networkCheckStore } = stores;\n return networkCheckStore.networkState === '离线';\n}\n//头部联网状态\nconst OnLineStatusToggle = observer(props => {\n const { isShowUploadBtnsByRouter, isResetNetWorkTheme, isOfflineCash, isPlaceOrderPage } = props;\n const { networkCheckStore, offlineSys, voucherStore } = stores;\n const networkState = networkCheckStore.networkState;\n let isOnLine = networkCheckStore.isOnLine;\n const hasUseOffline = isOfflineCash && !platform.otherOfflineStatus; //是否允许离线\n const { isHorizontalSunMi } = platform || {};\n let iconName = 'WiFi';\n if (hasUseOffline) {\n switch (networkState) {\n case '联网':\n iconName = 'WiFi';\n break;\n case '弱网':\n iconName = 'ruowifi';\n break;\n case '离线':\n iconName = 'wuwangluo';\n break;\n default:\n break;\n }\n if (networkState === '离线' && isOnLine && !document.querySelector('.tplus-off-line-modal')) {\n ModalWraper.confirm({\n className: 'tplus-off-line-modal',\n title: t('提示'),\n content: t('网络已断,是否切换到离线收银模式?'),\n onOk: () => {\n setOffLine(true);\n }\n });\n }\n function weakConfirm() {\n if (!isOnLine) { return; }// 离线不提示\n if (document.querySelector('.tplus-weak-network-modal')) { return; }// 不重复弹窗\n if (networkState !== '弱网') { return; } // 非弱网状态不提示\n if (weakRemindNum >= WEAK_STANDARD_NUM) { return; } // 提示大于三次不再提示\n if (!offlineSys.getDataIsOffline) { return; }// 数据未下载完不提示\n if (document.querySelector('.isRetailUpLoading')) { return; }// 上传中不提示\n if (document.querySelector('.isRetailDownLoading')) { return; }// 下载中不提示\n if (document.querySelector('.tplus-loading')) { return; }// 全屏loading不提示\n weakRemindNum ++;\n ModalWraper.confirm({\n className: 'tplus-weak-network-modal',\n title: t('提示'),\n content: t('当前网络不好,是否切换到离线?'),\n onOk: () => {\n setOffLine(true);\n }\n });\n }\n weakConfirm();\n }\n function switchStatus() {\n if (networkState === '离线' && !isOnLine) {\n Message.tip('当前无网络,无法切换为在线状态');\n return;\n }\n ModalWraper.confirm({\n title: t('提示'),\n content: t(`确定要切换为${isOnLine ? '离' : '在'}线环境吗?`),\n onOk: () => {\n setOffLine(isOnLine);\n }\n });\n }\n\n function getVoucherDataStatus() {\n let data = voucherStore.getVoucherData();\n const { Idmember, RetailDetails } = data || {};\n if (!!Idmember || (RetailDetails && RetailDetails.length > 0)) {\n return true;\n }\n return false;\n }\n\n function setOffLine(status) {\n if (isPlaceOrderPage && getVoucherDataStatus()) {\n ModalWraper.confirm({\n title: t('提示'),\n content: t(`当前为开单界面,切换到${status ? '离' : '在'}线会清除当前数据,确定要切换吗?`),\n onOk: () => {\n playStatus(status);\n }\n });\n } else {\n playStatus(status);\n }\n }\n\n function playStatus(status) {\n // status 为 true 是在线切离线\n if (status) {\n if (!offlineSys.getDataIsOffline() || document.querySelector('.isRetailDownLoading')) {\n Message.tip('数据还未下载完,无法切换为离线');\n return;\n }\n }\n offlineSys.setIsOffline(status);\n if (isPlaceOrderPage) {\n voucherStore.clearVoucherData();\n }\n }\n return (\n <div className='on-off-wrap'>\n <div className='status-square'>\n <span className=\"status-tog-btn\" style={{color: `${isResetNetWorkTheme ? '#fff' : ''}`}}>{<Ticon icon={iconName}/>}</span>\n </div>\n {\n hasUseOffline && isShowUploadBtnsByRouter && <div className={`status-square c-pointer online-status-bg ${isOnLine || isResetNetWorkTheme ? '' : 'off-line'}`}>\n <span className=\"status-tog-btn\" onClick={switchStatus}>\n <span>{isOnLine ? '在线' : '离线'}</span>\n <span>{<Ticon icon=\"zaixianlixian\" className=\"ts-14\" />}</span>\n </span>\n <Popover placement=\"bottom\" overlayClassName={'offline-popver'} content={<pre>{OFFLINE_POINT_DESC}</pre>} trigger={isHorizontalSunMi?'click':'hover'}>\n <span className=\"status-tog-btn\">{<Ticon icon=\"tanhao1\" />}</span>\n </Popover>\n </div>\n }\n </div>\n );\n});\n\n//零售单上传\nfunction RetailUpload() {\n const [isModalVisible, setIsModalVisible] = useState(false);\n const [isUpLoading, setIsUpLoading] = useState(false);\n const refModal = useRef(null);\n const showModal = async () => {\n refModal && refModal.current.fetch();\n setIsModalVisible(true);\n };\n\n const handleOk = async (isUpLoad = false) => {\n setIsModalVisible(false);\n if (getIsOffNetWork()) {\n Message.tip('已断网,不可以上传单据');\n return;\n }\n if (!isUpLoad) {\n Message.tip('暂无可以上传的单据');\n return;\n }\n if (isUpLoading) {\n Message.tip('零售单正在上传……');\n return;\n }\n setIsUpLoading(true);\n try {\n await stores.offlineSys.uploadRetail();\n } catch (err) {\n Message.error('上传失败');\n }\n setIsUpLoading(false);\n };\n\n const handleCancel = () => {\n setIsModalVisible(false);\n };\n return (\n <div className='upload-retail'>\n <div className=\"status-square online-status-bg c-pointer\" onClick={showModal}>\n <span className=\"status-tog-btn\">\n <span className={`${isUpLoading ? 'isRetailUpLoading' : ''}`}>{<Ticon icon=\"shangchuan\"/>}</span>\n <span className=\"fast-upload-btn\">上传</span>\n </span>\n </div>\n <UnLoadNum/>\n <UploadOrder ref={refModal} visible={isModalVisible} handleOk={handleOk} handleCancel={handleCancel}/>\n </div>\n );\n}\n// 零售单未上传的数量\nconst UnLoadNum = observer(() => {\n const {offlineSys: {retailNotUploadNumber} } = stores;\n return <span style={{display: retailNotUploadNumber > 0 ? 'inherit' : 'none'}} className=\"up-count-btn\">{retailNotUploadNumber > 99 ? '99+' : retailNotUploadNumber}</span>\n});\n//零售单下载\nfunction RetailDownload() {\n const {offlineSys} = stores;\n const [isDownload, setIsDownload] = useState(false);\n const [downStr, setDownStr] = useState('下载');\n const handleDownLoad = async () => {\n if (getIsOffNetWork()) {\n Message.tip('已断网,不可以下载单据');\n return;\n }\n if (isDownload) {\n Message.tip('下载中');\n return;\n }\n setDownStr('0 %');\n setIsDownload(true);\n Message.tip('下载中');\n try {\n let result = await offlineSys.downloadCatcherData(e => {\n setDownStr(e.percent + ' %');\n });\n if (result) {\n Message.success(`数据下载成功`);\n } else {\n Message.error(`数据下载失败`);\n }\n } catch(err){\n Message.error('数据下载失败');\n }\n setDownStr('下载');\n setIsDownload(false);\n };\n return (\n <div className='download-retail'>\n <DownloadBtn handleDownLoad={handleDownLoad} isDownload={isDownload} downStr={downStr}/>\n </div>\n );\n};\n// 下载按钮\nconst DownloadBtn = observer((props) => {\n const { downStr, isDownload, handleDownLoad} = props;\n const content = (\n <div className='popover-head-download-content'>\n <div className='item online-status-bg first' onClick={handleDownLoad}>\n <Ticon icon=\"xiazaishuju\" />\n <span>增量下载</span>\n </div>\n <div className='item online-status-bg second'>\n <Ticon icon=\"xiadan1\" />\n <span>全量下载</span>\n </div>\n </div>\n );\n return (\n <div className={`status-square online-status-bg c-pointer ${getIsOffNetWork() ? 'is-grey' : ''}`}>\n <span className=\"status-tog-btn\" onClick={handleDownLoad}>\n <span className={`${isDownload ? 'isRetailDownLoading' : ''}`}>{<Ticon icon=\"xiazaishuju\" />}</span>\n <span className=\"fast-upload-btn\">{downStr}</span>\n </span>\n <span className='status-tog-btn-right'>\n <Popover placement=\"bottom\" content={content} trigger=\"click\">\n <Ticon icon=\"xialaqietu3\" />\n </Popover>\n </span>\n </div>\n )\n});\nlet releaseDate, releaseVersion;\ntry {\n releaseDate = __RELEASESDATE__;\n releaseVersion = __BUILDVERSION__;\n} catch (error) {\n releaseDate = '';\n releaseVersion = '';\n}\nexport default function HeadContent(props, context) {\n const isElectron = (env || {}).platform === 'electron';\n const {businessName = '', storeName = '', posCode, logo, networkStatus, style = {}, history,\n dateFormat = defaultFromat, solt, time, isPortal, isLogin, menu = [], onClick, location} = props;\n const [themeVisible, setThemeVisible] = useState(false);\n const [isShowUploadBtnsByRouter, setIsShowUploadBtnsByRouter] = useState(window.location.href.indexOf(UPLOAD_BASE_PATH) < 0);\n const [isResetNetWorkTheme, setIsResetNetWorkTheme] = useState(window.location.pathname === NETWORK_THEME_PATH);\n const [isPlaceOrderPage, setIsPlaceOrderPage] = useState(window.location.href.indexOf(PLACE_ORDER_PATH) > 0);\n HeadContent.setStatusByRouter = function(route) {\n setIsResetNetWorkTheme(route.pathname === NETWORK_THEME_PATH);\n setIsShowUploadBtnsByRouter(route.pathname.indexOf(UPLOAD_BASE_PATH) < 0);\n setIsPlaceOrderPage(route.pathname.indexOf(PLACE_ORDER_PATH) > -1)\n }\n // 加一个标识,否则每次render都会新增一个路由监听\n if (!hasRouterListenInit) {\n props.history.listen(route => {\n // 提取到一个全局里面,否则每次触发的set方法都是第一次的\n HeadContent.setStatusByRouter(route);\n });\n }\n hasRouterListenInit = true;\n const hasUseOffline = (PosInitData('IsOfflineCash') === \"1\") && !platform.otherOfflineStatus; //是否允许离线\n const menuProps = {onClick};\n const menus = (\n <Menu {...menuProps}>\n {menu.map((item, i) =>\n <Item key={item.key || i}>\n {item.icon && <Ticon icon={item.icon}/>}\n <span>{item.title}</span>\n </Item>)\n }\n </Menu>\n );\n\n const controlConfig = [\n {type: 'suoxiao', event: 'min'},\n {\n type: 'guanbixiao',\n event: 'close',\n beforeEvent: (item) => {\n return ModalWraper.confirm({\n className: 'tplus-confirm-modal',\n title: '关闭提示',\n content: '您确定要关闭应用吗?',\n async onOk() {\n Loading.show({\n className: 'close-app-loading',\n node: <div className='close-app-spin'>\n <Spin scale={1.2} type='shape' visible />\n <h1>应用关闭中...</h1>\n </div>,\n delay: false\n });\n context.actionHook.actionChange('close-app');\n try {\n await User.logout(() => {// logout 内部一个方法缺少await,所以采用传入回调函数的方法,而不是写在 finally\n // 需要为500ms 时间短可能会不能正常注销清理\n clearEndExe(item.event);\n });\n } catch (err) {\n console.log(err, 'User.logout()');\n User.clear(); localStore.remove('user');\n clearEndExe(item.event);\n }\n }\n })\n }\n },\n ];\n const clearEndExe = (_eType) => {\n setTimeout(() => { closeNativeWindow(_eType) }, 1000);\n }\n\n //执行关闭客户端\n const closeNativeWindow = (_event) => {\n try {\n nativeMs.doWindow(_event);\n } catch (e) {\n console.log('执行关闭客户端失败,强制执行destroyWindow', e);\n } finally {\n destroyWindow();\n }\n }\n //强制关闭客户端\n const destroyWindow = () => {\n try {\n let wb = window.CommonLib;\n if (wb) {\n const { remote } = wb.electron;\n let win = remote && remote.getCurrentWindow();\n win && win.destroy();\n console.log(wb, win, 'win.destroy');\n }\n } catch (e) {\n console.log('强制关闭客户端失败', e);\n }\n }\n const splitUser = (value) => {\n const regEmail = new RegExp('^[A-Za-zd0-9]+([-_.][A-Za-zd0-9]+)*@([A-Za-zd0-9]+[-.])+[A-Za-zd]{2,5}$');\n const isEmail = regEmail.test(value);\n\n if (isEmail) {\n return value.split('@')[0];\n }\n return value;\n }\n\n const setInventoryFocus = () => {\n const { isHorizontalPad } = platform || {};\n if (!!isHorizontalPad) return;\n let doms = document.getElementsByClassName('app hot-key-focus-container');\n let input = document.getElementById('productPoint');\n if (input) setTimeout(() => { if (doms && doms.length > 0) { console.log('headContent--商品焦点==Focus==');input.focus() } }, 300)\n }\n\n const clickTheme = (isShow) => {\n setThemeVisible(isShow)\n }\n\n const userName = PosInitData('UserName');\n const overlayClassName = `_portal-header-dropdown ${!isPortal ? 'inside-header' : ''}`;\n const moreInfoNode = <div className='pos-more-info-container'>\n <h1 className='business-name'>{businessName}</h1>\n <h1 className='store-code'>{posCode}</h1>\n </div>\n\n const headControlNode = <div className=\"head-content-control\">\n {controlConfig.map(v => <Ticon\n type={v.type}\n key={v.type}\n onClick={() => {\n if (nativeMs) {\n const {beforeEvent} = v;\n if (beforeEvent) {\n return beforeEvent(v);\n }\n nativeMs.doWindow(v.event)\n if (typeof setInventoryFocus == 'function') {\n setInventoryFocus()\n }\n }\n }}\n />)}\n </div>\n\n if (platform.isVerticalTouch) return verticalHeadContent({ style, releaseVersion, releaseDate,\n time, dateFormat, logo, HeadTime, headControlNode, location, history, clickTheme, themeVisible, isPortal, isLogin });\n\n return (<div style={{display: 'inline-block', width: '100%', height: '100%', ...style}} className='head-content' data-release={`${releaseVersion} ${releaseDate}`}>\n <div className=\"head-content-left\">\n {!!logo && <div className='business-logo' onClick={()=>{history.replace('/')}}>{logo}</div>}\n {!!storeName && <Tooltip trigger=\"click\" placement=\"bottomRight\" title={moreInfoNode} color={'#fff'} overlayClassName='head-business-tip'>\n <div className='store-name'>{storeName}<i className='header-triangle-down' /></div>\n </Tooltip>}\n {/* <OnLineStatus networkStatus={networkStatus}/> */}\n <OnLineStatusToggle isShowUploadBtnsByRouter={isShowUploadBtnsByRouter} isResetNetWorkTheme={isResetNetWorkTheme} isOfflineCash={hasUseOffline} isPlaceOrderPage={isPlaceOrderPage}/>\n {hasUseOffline && isShowUploadBtnsByRouter && <RetailUpload />}\n {hasUseOffline && isShowUploadBtnsByRouter && <RetailDownload />}\n </div>\n {isElectron && headControlNode}\n <div className=\"head-content-right\">\n {!isLogin && <Ticon icon=\"huanfu\" className={`theme-icon ${!isPortal ? 'pos-page' : ''}` } onClick={() => {clickTheme(true)}}/>}\n {!isLogin && !!userName && <Dropdown\n overlayClassName={overlayClassName}\n trigger={['click']}\n overlay={menus}\n placement=\"bottomRight\"\n arrow\n >\n <div className='header-info-render-content' onClick={e => e.preventDefault()}>\n <div className='store-info-item'>\n <p className='biller'>开单员:<span>{splitUser(userName)}</span></p>\n </div>\n <i className='header-triangle-down'/>\n </div>\n </Dropdown>}\n {!isLogin && <div className='store-info-item'>{solt}</div>}\n <HeadTime time={time} dateFormat={dateFormat}/>\n </div>\n <ThemeModal\n visible={themeVisible}\n isVertical={platform.isVerticalTouch}\n isPortal={isPortal}\n closeFn={(isShow) => clickTheme(isShow)}\n />\n </div>);\n}\n\nHeadContent.contextTypes = {\n actionHook: PropTypes.object,\n}\n"]}
@@ -159,25 +159,24 @@
159
159
  .status-square{
160
160
  overflow: hidden;
161
161
  display: inline-block;
162
- line-height: 20px;
162
+ line-height: 28px;
163
163
  border-radius: 2px;
164
164
  padding: 0 6px;
165
165
  .fast-upload-btn {
166
166
  display: inline-block;
167
167
  text-align: center;
168
- min-width: 48px;
169
- }
170
- span {
171
- font-size: 12px;
168
+ padding-left: 5px;
169
+ min-width: 30px;
172
170
  }
173
171
  &.off-line, &.is-grey {
174
172
  background-color: #EAEBED !important;
175
173
  color: #666 !important;
176
174
  }
177
175
  .status-tog-btn {
176
+ display: inline-block;
178
177
  position: relative;
179
178
  .iconfont {
180
- font-size: 12px;
179
+ font-size: 13px;
181
180
  display: inline-block;
182
181
  &.ts-14 {
183
182
  transform: scale(1.4);
@@ -187,6 +186,16 @@
187
186
  .status-space {
188
187
  margin-right: 4px;
189
188
  }
189
+ span{
190
+ font-size: 13px;
191
+ }
192
+ }
193
+ .status-tog-btn-right i{
194
+ display: inline-block;
195
+ font-size: 15px;
196
+ padding-left: 8px;
197
+ width: 26px;
198
+ text-align: center;
190
199
  }
191
200
  }
192
201
  }
@@ -455,4 +464,27 @@
455
464
  .progressState .text {
456
465
  margin-top: 0;
457
466
  }
467
+ }
468
+ // 增量下载&全量下载
469
+ .popover-head-download-content {
470
+ .item {
471
+ cursor: pointer;
472
+ font-size: 14px;
473
+ height: 20px;
474
+ span {
475
+ padding-left: 10px;
476
+ }
477
+ i {
478
+ font-size: 14px;
479
+ }
480
+ padding-right: 10px;
481
+ background-color: #FFF !important;
482
+ }
483
+
484
+ .first {
485
+ margin-bottom: 15px;
486
+ }
487
+ .second {
488
+ margin-top: 15px;
489
+ }
458
490
  }
@@ -219,7 +219,7 @@ var Aset = function (_React$Component) {
219
219
  }
220
220
  return _react2.default.createElement(
221
221
  _antd.Modal,
222
- { title: '\u5355\u636E\u4E0A\u4F20',
222
+ { title: '\u96F6\u552E\u5355\u4E0A\u4F20',
223
223
  centered: true,
224
224
  maskClosable: false,
225
225
  closable: false,
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-portaltouch/components/header/uploadList.js"],"names":["TabPane","Tabs","TAB_KEYS","NOT","ERR","DEFAULT_COLUMNS","title","dataIndex","render","val","str","toFixed","intSum","substring","indexOf","replace","dot","length","ERR_COLUMN","COLUMNS","concat","Aset","props","context","columns","currentKey","response","pageSize","state","data","currentIndex","upLoad","handleOk","previous","setState","next","change","key","getEmptyText","buttonVisible","stores","offlineSys","getRetailNotUpload","console","warn","visible","handleCancel","notUpload","errUpload","dataSource","slice","totalPage","Math","ceil","tabLeftText","tabRightText","emptyText","r","i","toString","React","Component"],"mappings":"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","file":"uploadList.js","sourcesContent":["/*\n * @Descripttion: 零售单未上传和上传失败操作\n * @version: \n * @Author: zhanghuix\n * @LastEditors: chenlongad\n * @LastEditTime: 2021-11-02 10:57:55\n */\n\nimport React from 'react';\nimport { Table, Tabs, Modal, Button } from 'antd';\nimport { stores } from 'mutants-microfx';\nimport { Page, ProgressState } from 'tplus-components-touch';\nconst { TabPane } = Tabs;\n// 待上传和上传失败tab\nconst TAB_KEYS = {\n NOT: 'not',\n ERR: 'err'\n};\nconst DEFAULT_COLUMNS = [\n {\n title: '单据日期',\n dataIndex: 'VoucherDate'\n },\n {\n title: '单据号',\n dataIndex: 'Code',\n },\n {\n title: '金额',\n dataIndex: 'TotalRetailAmount',\n render: function (val) {\n let str = (val || 0).toFixed(2) + '';\n let intSum = str.substring(0, str.indexOf(\".\")).replace(/\\B(?=(?:\\d{3})+$)/g, ',');//整数部分\n let dot = str.substring(str.length, str.indexOf(\".\"))//小数部分\n return intSum + dot;\n }\n }\n];\nconst ERR_COLUMN = [{\n title: '原因',\n dataIndex: 'errMsg'\n}];\n// 上传失败要显示失败原因所以多一列\nconst COLUMNS = {\n [TAB_KEYS.NOT]: DEFAULT_COLUMNS,\n [TAB_KEYS.ERR]: DEFAULT_COLUMNS.concat(ERR_COLUMN)\n};\nexport default class Aset extends React.Component {\n constructor(props, context) {\n super(props, context)\n }\n columns = COLUMNS[TAB_KEYS.NOT]\n currentKey = TAB_KEYS.NOT\n response = {}\n pageSize = 5\n state = {\n data: [],\n currentIndex: 1\n }\n async fetch() {\n try {\n this.response = await stores.offlineSys.getRetailNotUpload();\n } catch (e) {\n console.warn(e);\n }\n this.setState({\n data: this.response[`${this.currentKey}Upload`] || []\n });\n }\n upLoad = async () => {\n this.props.handleOk(this.state.data.length > 0);\n }\n previous = () => {\n this.setState({\n currentIndex: this.state.currentIndex - 1\n })\n }\n next = () => {\n this.setState({\n currentIndex: this.state.currentIndex + 1\n })\n }\n change = (key) => {\n this.currentKey = key;\n this.columns = COLUMNS[key];\n this.setState({\n data: this.response[`${key}Upload`] || [],\n currentIndex: 1\n });\n };\n getEmptyText = () => {\n\t\treturn <ProgressState\n\t\t\tstate={\"empty\"}\n stateCommonStyle={{ 'marginTop': \"36px\" }}\n\t\t\tempty={{ buttonVisible: false }} />;\n\t}\n render() {\n const { visible, handleCancel } = this.props;\n const { notUpload, errUpload } = this.response;\n const { data, currentIndex } = this.state;\n const pageSize = this.pageSize;\n const dataSource = data.slice((currentIndex - 1) * pageSize, currentIndex * pageSize);\n const totalPage = Math.ceil(data.length / pageSize);\n let tabLeftText = '待上传', tabRightText = '上传失败';\n if (notUpload && notUpload.length) {\n tabLeftText += `(${notUpload.length})`;\n }\n if (errUpload && errUpload.length) {\n tabRightText += `(${errUpload.length})`;\n }\n return <Modal title=\"单据上传\"\n centered={true}\n maskClosable={false}\n closable={false}\n wrapClassName={`retail-upload-mask-wrap ${totalPage > 1 ? 'hasPage' : ''} ${data.length === 0 ? 'isReNull' : ''}`}\n visible={visible} width={800} height={468}\n footer={[\n <Page\n key=\"retail-list-page\"\n total={totalPage}\n currentIndex={currentIndex}\n previous={this.previous}\n next={this.next}\n className='retail-upload-page'\n />,\n <div key=\"footBtns\">\n <Button\n onClick={handleCancel}\n >\n 关闭\n </Button>\n <Button type=\"primary\" onClick={this.upLoad}>\n 上传\n </Button>\n </div>\n ]}>\n <Tabs onChange={this.change}>\n <TabPane tab={tabLeftText} key={TAB_KEYS.NOT}>\n </TabPane>\n <TabPane tab={tabRightText} key={TAB_KEYS.ERR}>\n </TabPane>\n </Tabs>\n <Table \n\t\t\t locale={{emptyText: this.getEmptyText()}}\n pagination={false}\n rowKey={(r, i) => i.toString()}\n columns={this.columns} dataSource={dataSource} />\n </Modal>\n }\n}"]}
1
+ {"version":3,"sources":["tplus-portaltouch/components/header/uploadList.js"],"names":["TabPane","Tabs","TAB_KEYS","NOT","ERR","DEFAULT_COLUMNS","title","dataIndex","render","val","str","toFixed","intSum","substring","indexOf","replace","dot","length","ERR_COLUMN","COLUMNS","concat","Aset","props","context","columns","currentKey","response","pageSize","state","data","currentIndex","upLoad","handleOk","previous","setState","next","change","key","getEmptyText","buttonVisible","stores","offlineSys","getRetailNotUpload","console","warn","visible","handleCancel","notUpload","errUpload","dataSource","slice","totalPage","Math","ceil","tabLeftText","tabRightText","emptyText","r","i","toString","React","Component"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAAA;;;;;;;;AAQA;;;;AACA;;AACA;;AACA;;;;IACQA,O,GAAYC,U,CAAZD,O;AACR;;AACA,IAAME,WAAW;AACfC,OAAK,KADU;AAEfC,OAAK;AAFU,CAAjB;AAIA,IAAMC,kBAAkB,CACtB;AACEC,SAAO,MADT;AAEEC,aAAW;AAFb,CADsB,EAKtB;AACED,SAAO,KADT;AAEEC,aAAW;AAFb,CALsB,EAStB;AACED,SAAO,IADT;AAEEC,aAAW,mBAFb;AAGEC,UAAQ,gBAAUC,GAAV,EAAe;AACrB,QAAIC,MAAM,CAACD,OAAO,CAAR,EAAWE,OAAX,CAAmB,CAAnB,IAAwB,EAAlC;AACA,QAAIC,SAASF,IAAIG,SAAJ,CAAc,CAAd,EAAiBH,IAAII,OAAJ,CAAY,GAAZ,CAAjB,EAAmCC,OAAnC,CAA2C,oBAA3C,EAAiE,GAAjE,CAAb,CAFqB,CAE8D;AACnF,QAAIC,MAAMN,IAAIG,SAAJ,CAAcH,IAAIO,MAAlB,EAA0BP,IAAII,OAAJ,CAAY,GAAZ,CAA1B,CAAV,CAHqB,CAGgC;AACrD,WAAOF,SAASI,GAAhB;AACD;AARH,CATsB,CAAxB;AAoBA,IAAME,aAAa,CAAC;AAClBZ,SAAO,IADW;AAElBC,aAAW;AAFO,CAAD,CAAnB;AAIA;AACA,IAAMY,kEACHjB,SAASC,GADN,EACYE,eADZ,2CAEHH,SAASE,GAFN,EAEYC,gBAAgBe,MAAhB,CAAuBF,UAAvB,CAFZ,YAAN;;IAIqBG,I;;;AACnB,gBAAYC,KAAZ,EAAmBC,OAAnB,EAA4B;AAAA;;AAAA;;AAAA,kIACpBD,KADoB,EACbC,OADa;;AAAA,UAG5BC,OAH4B,GAGlBL,QAAQjB,SAASC,GAAjB,CAHkB;AAAA,UAI5BsB,UAJ4B,GAIfvB,SAASC,GAJM;AAAA,UAK5BuB,QAL4B,GAKjB,EALiB;AAAA,UAM5BC,QAN4B,GAMjB,CANiB;AAAA,UAO5BC,KAP4B,GAOpB;AACNC,YAAM,EADA;AAENC,oBAAc;AAFR,KAPoB;AAAA,UAqB5BC,MArB4B,4EAqBnB;AAAA;AAAA;AAAA;AAAA;AACP,oBAAKT,KAAL,CAAWU,QAAX,CAAoB,MAAKJ,KAAL,CAAWC,IAAX,CAAgBZ,MAAhB,GAAyB,CAA7C;;AADO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KArBmB;;AAAA,UAwB5BgB,QAxB4B,GAwBjB,YAAM;AACf,YAAKC,QAAL,CAAc;AACZJ,sBAAc,MAAKF,KAAL,CAAWE,YAAX,GAA0B;AAD5B,OAAd;AAGD,KA5B2B;;AAAA,UA6B5BK,IA7B4B,GA6BrB,YAAM;AACX,YAAKD,QAAL,CAAc;AACZJ,sBAAc,MAAKF,KAAL,CAAWE,YAAX,GAA0B;AAD5B,OAAd;AAGD,KAjC2B;;AAAA,UAkC5BM,MAlC4B,GAkCnB,UAACC,GAAD,EAAS;AAChB,YAAKZ,UAAL,GAAkBY,GAAlB;AACA,YAAKb,OAAL,GAAeL,QAAQkB,GAAR,CAAf;AACA,YAAKH,QAAL,CAAc;AACZL,cAAM,MAAKH,QAAL,CAAiBW,GAAjB,gBAAiC,EAD3B;AAEZP,sBAAc;AAFF,OAAd;AAID,KAzC2B;;AAAA,UA0C5BQ,YA1C4B,GA0Cb,YAAM;AACrB,aAAO,8BAAC,mCAAD;AACN,eAAO,OADD;AAEH,0BAAkB,EAAE,aAAa,MAAf,EAFf;AAGN,eAAO,EAAEC,eAAe,KAAjB,EAHD,GAAP;AAIA,KA/C4B;;AAAA;AAE3B;;;;;;;;;;;;uBAWyBC,uBAAOC,UAAP,CAAkBC,kBAAlB,E;;;AAAtB,qBAAKhB,Q;;;;;;;;AAELiB,wBAAQC,IAAR;;;AAEF,qBAAKV,QAAL,CAAc;AACZL,wBAAM,KAAKH,QAAL,CAAiB,KAAKD,UAAtB,gBAA6C;AADvC,iBAAd;;;;;;;;;;;;;;;;;;6BA+BO;AAAA,mBAC2B,KAAKH,KADhC;AAAA,UACCuB,OADD,UACCA,OADD;AAAA,UACUC,YADV,UACUA,YADV;AAAA,sBAE0B,KAAKpB,QAF/B;AAAA,UAECqB,SAFD,aAECA,SAFD;AAAA,UAEYC,SAFZ,aAEYA,SAFZ;AAAA,mBAGwB,KAAKpB,KAH7B;AAAA,UAGCC,IAHD,UAGCA,IAHD;AAAA,UAGOC,YAHP,UAGOA,YAHP;;AAIP,UAAMH,WAAW,KAAKA,QAAtB;AACA,UAAMsB,aAAapB,KAAKqB,KAAL,CAAW,CAACpB,eAAe,CAAhB,IAAqBH,QAAhC,EAA0CG,eAAeH,QAAzD,CAAnB;AACA,UAAMwB,YAAYC,KAAKC,IAAL,CAAUxB,KAAKZ,MAAL,GAAcU,QAAxB,CAAlB;AACA,UAAI2B,cAAc,KAAlB;AAAA,UAAyBC,eAAe,MAAxC;AACA,UAAIR,aAAaA,UAAU9B,MAA3B,EAAmC;AACjCqC,kCAAmBP,UAAU9B,MAA7B;AACD;AACD,UAAI+B,aAAaA,UAAU/B,MAA3B,EAAmC;AACjCsC,mCAAoBP,UAAU/B,MAA9B;AACD;AACD,aAAO;AAAC,mBAAD;AAAA,UAAO,OAAM,gCAAb;AACL,oBAAU,IADL;AAEL,wBAAc,KAFT;AAGL,oBAAU,KAHL;AAIL,uDAA0CkC,YAAY,CAAZ,GAAgB,SAAhB,GAA4B,EAAtE,WAA4EtB,KAAKZ,MAAL,KAAgB,CAAhB,GAAoB,UAApB,GAAiC,EAA7G,CAJK;AAKL,mBAAS4B,OALJ,EAKa,OAAO,GALpB,EAKyB,QAAQ,GALjC;AAML,kBAAQ,CACN,8BAAC,0BAAD;AACE,iBAAI,kBADN;AAEE,mBAAOM,SAFT;AAGE,0BAAcrB,YAHhB;AAIE,sBAAU,KAAKG,QAJjB;AAKE,kBAAM,KAAKE,IALb;AAME,uBAAU;AANZ,YADM,EASN;AAAA;AAAA,cAAK,KAAI,UAAT;AACE;AAAC,0BAAD;AAAA;AACE,yBAASW;AADX;AAAA;AAAA,aADF;AAME;AAAC,0BAAD;AAAA,gBAAQ,MAAK,SAAb,EAAuB,SAAS,KAAKf,MAArC;AAAA;AAAA;AANF,WATM,CANH;AA0BL;AAAC,oBAAD;AAAA,YAAM,UAAU,KAAKK,MAArB;AACE,wCAAC,OAAD,IAAS,KAAKkB,WAAd,EAA2B,KAAKpD,SAASC,GAAzC,GADF;AAGE,wCAAC,OAAD,IAAS,KAAKoD,YAAd,EAA4B,KAAKrD,SAASE,GAA1C;AAHF,SA1BK;AAgCL,sCAAC,WAAD;AACD,kBAAQ,EAACoD,WAAW,KAAKlB,YAAL,EAAZ,EADP;AAEE,sBAAY,KAFd;AAGE,kBAAQ,gBAACmB,CAAD,EAAIC,CAAJ;AAAA,mBAAUA,EAAEC,QAAF,EAAV;AAAA,WAHV;AAIE,mBAAS,KAAKnC,OAJhB,EAIyB,YAAYyB,UAJrC;AAhCK,OAAP;AAsCD;;;EArG+BW,gBAAMC,S;;kBAAnBxC,I","file":"uploadList.js","sourcesContent":["/*\n * @Descripttion: 零售单未上传和上传失败操作\n * @version: \n * @Author: zhanghuix\n * @LastEditors: chenlongad\n * @LastEditTime: 2021-11-02 10:57:55\n */\n\nimport React from 'react';\nimport { Table, Tabs, Modal, Button } from 'antd';\nimport { stores } from 'mutants-microfx';\nimport { Page, ProgressState } from 'tplus-components-touch';\nconst { TabPane } = Tabs;\n// 待上传和上传失败tab\nconst TAB_KEYS = {\n NOT: 'not',\n ERR: 'err'\n};\nconst DEFAULT_COLUMNS = [\n {\n title: '单据日期',\n dataIndex: 'VoucherDate'\n },\n {\n title: '单据号',\n dataIndex: 'Code',\n },\n {\n title: '金额',\n dataIndex: 'TotalRetailAmount',\n render: function (val) {\n let str = (val || 0).toFixed(2) + '';\n let intSum = str.substring(0, str.indexOf(\".\")).replace(/\\B(?=(?:\\d{3})+$)/g, ',');//整数部分\n let dot = str.substring(str.length, str.indexOf(\".\"))//小数部分\n return intSum + dot;\n }\n }\n];\nconst ERR_COLUMN = [{\n title: '原因',\n dataIndex: 'errMsg'\n}];\n// 上传失败要显示失败原因所以多一列\nconst COLUMNS = {\n [TAB_KEYS.NOT]: DEFAULT_COLUMNS,\n [TAB_KEYS.ERR]: DEFAULT_COLUMNS.concat(ERR_COLUMN)\n};\nexport default class Aset extends React.Component {\n constructor(props, context) {\n super(props, context)\n }\n columns = COLUMNS[TAB_KEYS.NOT]\n currentKey = TAB_KEYS.NOT\n response = {}\n pageSize = 5\n state = {\n data: [],\n currentIndex: 1\n }\n async fetch() {\n try {\n this.response = await stores.offlineSys.getRetailNotUpload();\n } catch (e) {\n console.warn(e);\n }\n this.setState({\n data: this.response[`${this.currentKey}Upload`] || []\n });\n }\n upLoad = async () => {\n this.props.handleOk(this.state.data.length > 0);\n }\n previous = () => {\n this.setState({\n currentIndex: this.state.currentIndex - 1\n })\n }\n next = () => {\n this.setState({\n currentIndex: this.state.currentIndex + 1\n })\n }\n change = (key) => {\n this.currentKey = key;\n this.columns = COLUMNS[key];\n this.setState({\n data: this.response[`${key}Upload`] || [],\n currentIndex: 1\n });\n };\n getEmptyText = () => {\n\t\treturn <ProgressState\n\t\t\tstate={\"empty\"}\n stateCommonStyle={{ 'marginTop': \"36px\" }}\n\t\t\tempty={{ buttonVisible: false }} />;\n\t}\n render() {\n const { visible, handleCancel } = this.props;\n const { notUpload, errUpload } = this.response;\n const { data, currentIndex } = this.state;\n const pageSize = this.pageSize;\n const dataSource = data.slice((currentIndex - 1) * pageSize, currentIndex * pageSize);\n const totalPage = Math.ceil(data.length / pageSize);\n let tabLeftText = '待上传', tabRightText = '上传失败';\n if (notUpload && notUpload.length) {\n tabLeftText += `(${notUpload.length})`;\n }\n if (errUpload && errUpload.length) {\n tabRightText += `(${errUpload.length})`;\n }\n return <Modal title=\"零售单上传\"\n centered={true}\n maskClosable={false}\n closable={false}\n wrapClassName={`retail-upload-mask-wrap ${totalPage > 1 ? 'hasPage' : ''} ${data.length === 0 ? 'isReNull' : ''}`}\n visible={visible} width={800} height={468}\n footer={[\n <Page\n key=\"retail-list-page\"\n total={totalPage}\n currentIndex={currentIndex}\n previous={this.previous}\n next={this.next}\n className='retail-upload-page'\n />,\n <div key=\"footBtns\">\n <Button\n onClick={handleCancel}\n >\n 关闭\n </Button>\n <Button type=\"primary\" onClick={this.upLoad}>\n 上传\n </Button>\n </div>\n ]}>\n <Tabs onChange={this.change}>\n <TabPane tab={tabLeftText} key={TAB_KEYS.NOT}>\n </TabPane>\n <TabPane tab={tabRightText} key={TAB_KEYS.ERR}>\n </TabPane>\n </Tabs>\n <Table \n\t\t\t locale={{emptyText: this.getEmptyText()}}\n pagination={false}\n rowKey={(r, i) => i.toString()}\n columns={this.columns} dataSource={dataSource} />\n </Modal>\n }\n}"]}
@@ -1391,7 +1391,12 @@ var _default = (0, _mobxReact.observer)(_class = (_temp = _class2 = function (_C
1391
1391
  console.log('start create iframe-hsyPage');
1392
1392
  var hsyPageLoadIsFinish = _mutantsMicrofx.localStore && _mutantsMicrofx.localStore.get('hsyPageLoadIsFinish');
1393
1393
  var _hsyPage = document.getElementById(CC_FRAME_CONF.id);
1394
- if (hsyPageLoadIsFinish == 'true' && _hsyPage) return;
1394
+ if (hsyPageLoadIsFinish == 'true') {
1395
+ return;
1396
+ }
1397
+ if (_hsyPage) {
1398
+ _hsyPage.parentNode.removeChild(_hsyPage);
1399
+ }
1395
1400
  var theme = _mutantsMicrofx.stores.portalStore.themeStore;
1396
1401
  var color = '#FF8C25';
1397
1402
  switch (theme) {
@@ -1 +1 @@
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","ccFrameStore","catchOfflineData","offlineSys","context","stores","isLoginAfter","localStore","get","downloadCatcherDay","dataIsOffline","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","loadARMSConfig","nrsp","newRetailStaticParams","arms","bl","appName","userType","orgType","User","restore","domainName","bookCode","userId","username","setConfig","uid","setUsername","loadHsyPage","isHsyIframeInclude","initHsyBasicPageInfo","initHsyFrameWin","options","storeName","enumController","getEnumOj","RE_POSParamType","DUAL_SCREEN_SETTING","filterResult","filter","settingItem","ParamType","sunMi_PresentationManager","sharedPreferencesSet","sendMessageToSecondScreen","step","getTcBasicInfoInit","userStore","sid","tplusUrl","tplusSiteUrl","msg","ModalWraper","warning","title","content","okText","okType","substring","length","ossjumpUrl","postMsgUrl","loginInfo","UserCode","AccountNum","posCode","TplusStoreId","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","ciaToken","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","sendMessage","extStateParams","_ident_only_","_hsyPage","top","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","hsyPageLoadIsFinish","now","modalURL","isVerticalTouch","isHorizontalPad","FuPingIsLoaded","getWebEntry","isOfflineCash","getMenuByPosition","position","Menus","leftMenuTC","rightMenuTC","centerLeftMenuMobileCC","centerLeftMenuMobileTC","centerRightMenuMobileCC","centerRightMenuMobileTC","rightMenuMobileTC","rightMenuMobileCC","getMenuByEnvironment","ccMenu","tcMenu","tcMobilMenu","ccMobilMenu","_this","IframeStore","e","instance","theme","themeStore","color","_height","body","clientHeight","createElement","height","setAttribute","src","appendChild","destroy","removeClass","setIpcRendererMethod","screenHeight","screen","availHeight","htmlContent","paddingLeft","paddingRight","Component","propTypes","routes","PropTypes","array","contextTypes","object","infoRender","func"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * @Description:\n * @Date: 2019-08-13 08:42:18\n * @LastEditTime: 2022-05-17 20:45:11\n * @LastEditors: chenlongad\n * @modify:修改跳转到T+的查询方案方式\n */\nimport React, { Component } from 'react';\nimport { observer } from 'mobx-react';\nimport { autorun} from 'mobx';\nimport { Row, Col, Modal } from 'antd';\nimport { history, stores, nativeMs, env, localStore } from 'mutants-microfx';\nimport { Ticon, Layout, ModalWraper, Loading, Message } from 'tplus-components-touch';\nimport { User } from 'tplus-api';\nimport { PosSetData, PosInitData } from 'tplus-poslogin';\nimport { platform, enumController } from 'mutants-util';\nimport PropTypes from 'prop-types';\nimport { Request } from '../../api/ModifyPassApi';\nimport Menus from './data';\nimport MiddleWare from '../../middleWare';\nimport VerticalPortal from './verticalPortal';\nimport HorizontalPadPortal from './horizontalPadPortal';\nimport { getCIACode } from 'tplus-api';\nimport './index.less'; \nimport { async } from 'rxjs';\n\nconst hasElectron = (env.platform === env.constant.platform.electron);\nconst { Content } = Layout;\nconst HTTP_PROXY_URL = 'http://tfproxy.chanjet.com/?url=';\nconst CC_FRAME_CONF = { id: 'external-frame-cc', identOnly: '_pos_web_', initConnect: 'initConnect', HsyLoadFinish: 'HsyLoadFinish', HsyRouterClean: 'HsyRouterClean', HsyRouterJump : 'HsyRouterJump' };\n@observer\nexport default class extends Component {\n static propTypes = {\n routes: PropTypes.array,\n };\n static contextTypes = {\n stores: PropTypes.object,\n infoRender: PropTypes.func,\n headHook: PropTypes.object\n };\n ccFrameStore = {};\n constructor(props) {\n super(props);\n this.hasElectron = hasElectron;\n const hsyPageLoadIsFinish = localStore && localStore.get('hsyPageLoadIsFinish');\n this.state = {\n id: Date.now(),\n operations: [],\n showModal: false,\n showMoreModal: false,\n isHsyLoadFinish: !!hsyPageLoadIsFinish,\n loadTcPage: false,\n loadTcURL: '',\n modalURL: '',\n }\n const { isVerticalTouch, isHorizontalPad, isHorizontalSunMi, isNewRetailBCPosTC } = platform || {};\n this.isVerticalTouch = !!isVerticalTouch;\n this.isHorizontalPad = !!isHorizontalPad;\n this.isHorizontalSunMi = !!isHorizontalSunMi;\n this.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi;\n this.FuPingIsLoaded = false;\n this.isNewRetailBCPosTC = !!isNewRetailBCPosTC;\n this.new_retail_app = localStore && localStore.get('newRetailAppType');\n this.hsy_domain = User && User.getWebEntry();\n // 是否嵌套好生意的iframe\n this.isHsyIframeInclude = !this.isVerticalTouch && !this.isMobileEnvironment;\n //获取初始化参数\n this.isEnableMember = !!PosInitData('isEnableMember');//是否开启会员\n this.isEnablePromotion = !!PosInitData('isEnablePromotion');//是否开启促销\n this.isOfflineCash = PosInitData('IsOfflineCash');\n this.tplusSiteUrl = PosInitData(\"TplusSite\") || PosInitData(\"tplusinnersite\");\n this.idWarehouse = PosInitData('IdWarehouse') || '';\n this.warehouseName = PosInitData('WarehouseName') || '';\n this.performanceDistribution = PosInitData('PerformanceDistribution'); \n this.showStorePrice = PosInitData('ShowStorePrice');\n\n //首页布局\n this.leftMenu = this.getMenuByPosition('left');\n this.centerLeftMenu = this.getMenuByPosition('centerLeft');\n this.centerRightMenu = this.getMenuByPosition('centerRight');\n this.rightMenu = this.getMenuByPosition('right');\n this.randomWord = this.randomWord.bind(this);\n }\n\n getMenuByPosition(position) {\n const { leftMenu, centerLeftMenu, centerRightMenu, rightMenu, leftMenuTC, rightMenuTC, centerLeftMenuMobileCC, centerLeftMenuMobileTC, centerRightMenuMobileCC, centerRightMenuMobileTC, rightMenuMobileTC, rightMenuMobileCC } = Menus;\n switch (position) {\n case \"left\":{\n return this.getMenuByEnvironment(leftMenu,leftMenuTC,[],[]);\n }\n case \"centerLeft\":{\n return this.getMenuByEnvironment(centerLeftMenu,centerLeftMenu, centerLeftMenuMobileTC,centerLeftMenuMobileCC)\n }\n case \"centerRight\":{\n return this.getMenuByEnvironment(centerRightMenu,centerRightMenu, centerRightMenuMobileTC,centerRightMenuMobileCC)\n }\n case \"right\":{\n return this.getMenuByEnvironment(rightMenu,rightMenuTC, rightMenuMobileTC,rightMenuMobileCC)\n }\n }\n }\n\n getMenuByEnvironment(ccMenu, tcMenu, tcMobilMenu, ccMobilMenu) {\n if (this.isNewRetailBCPosTC) {\n return tcMenu;\n } else {\n return ccMenu;\n }\n }\n\n catchOfflineData = async () => {\n const { offlineSys } = this.context.stores;\n const isLoginAfter = localStore.get(\"isLoginAfter\");\n const downloadCatcherDay = localStore.get(\"downloadCatcherDay\");\n const dataIsOffline = localStore.get(\"dataIsOffline\")\n const currentDay = Math.ceil(new Date() / 1000 / 60 / 60 / 24)\n if (isLoginAfter == 1) {\n // 增加每天第一次登陆下载数据\n if (!downloadCatcherDay || currentDay > downloadCatcherDay) {\n try {\n Loading.show({\n text: '离线数据下载中,请稍等...',\n delay: 0,\n showProgress: true\n });\n function downProgress(params) {\n Loading.transfer(params)\n }\n let result = await offlineSys.downloadCatcherData(downProgress,!dataIsOffline);\n if (result) localStore.set(\"downloadCatcherDay\", currentDay);\n Loading.hide();\n } catch (ex) {\n console.log('downloadCatcherData下载离线数据', ex);\n Loading.hide();\n } finally {\n Loading.hide();\n }\n }\n localStore.set(\"isLoginAfter\", 0)\n }\n }\n\n getOperation = () => {\n return new Promise((resolve, reject) => {\n const { homeOperation, functionData } = Request;\n homeOperation().then(operations => {\n localStore.set('operationsAuth', JSON.stringify(operations));\n this.setState({ operations: operations || [] });\n resolve()\n }).catch((err) => {\n console.log('homeOperation.error======', err);\n Loading.hide();\n resolve()\n })\n functionData().then(data => {\n PosSetData(data);\n })\n })\n }\n\n initPageData = async () => {\n const { stores = {}, headHook: { addClass } = {} } = this.context;\n\n const hasUseOffline = (PosInitData('IsOfflineCash') === \"1\") && !platform.otherOfflineStatus;; //是否允许离线\n // const hasUseOffline = true;\n if (hasUseOffline == true) {\n await this.catchOfflineData(); //离线数据下发\n }\n Loading.show({\n text: '权限加载中,请稍等...',\n delay: 2500\n });\n //权限加载\n try {\n await this.getOperation()\n } catch (err) {\n Loading.hide()\n } finally {\n Loading.hide();\n }\n addClass && addClass(this.state.id, 'portalHead');\n // 初始化参数设置。\n stores.setStore.initSetParams().then(ret => {\n // 在客户端中,如果开启了副屏设置,尝试这打开副屏。\n if (this.getScreenType() === true) {\n if (this.isHorizontalSunMi) {\n this.sunMiPresentationInit(ret);\n return;\n }\n console.log('副屏页面打开之前,user信息', JSON.stringify(stores.user));\n window.open('vicescreen?ts=' + new Date().getTime(), 'screen');\n setTimeout(() => {\n console.log('副屏页面打开之后,user信息', JSON.stringify(stores.user))\n }, 3000);\n }\n })\n }\n\n componentDidMount() {\n this.initPageData();\n //加载好生意界面\n const hsyPageLoadIsFinish = localStore && localStore.get('hsyPageLoadIsFinish');\n if (hsyPageLoadIsFinish == 'true') {\n this.loadHsyPage();\n } else {\n setTimeout(() => { this.loadHsyPage() }, 1000)\n }\n this.loadARMSConfig();\n }\n\n //加载arms系统相关企业参数\n loadARMSConfig = () => {\n let nrsp = window.newRetailStaticParams;\n if (nrsp && nrsp.arms) {\n const { bl, appName, userType, orgType } = nrsp.arms || {}\n if (bl && appName) {\n const user = User.restore();\n const { domainName = '', bookCode = '', userId = '', username = '' } = user || {};\n if (orgType === false) {\n bl.setConfig({ uid: `pos-${appName}-${domainName}-${bookCode}` });\n nrsp.arms.orgType = true;\n }\n if (userType === false) {\n bl.setConfig({ setUsername: function () { return `${username || 's'}-${userId || '00000000000'}`; } });\n nrsp.arms.userType = true;\n }\n }\n }\n }\n\n // 初始化加载hsy\n loadHsyPage = () => {\n if(this.isHsyIframeInclude){\n this.initHsyBasicPageInfo();\n this.initHsyFrameWin();\n }\n }\n\n // 初始化好生意iframe\n initHsyFrameWin() {\n let _this = this;\n this.ccFrameStore = new stores.IframeStore(document.getElementById(CC_FRAME_CONF.id), this.hsy_domain, function (e, instance) {\n console.log(e, instance, 'cciframe 接收消息');\n if (e.data && e.data.type === CC_FRAME_CONF.HsyLoadFinish) {\n //记录好生意界面是否加载完成\n const hsyPageLoadIsFinish = localStore && localStore.get('hsyPageLoadIsFinish');\n if (!(hsyPageLoadIsFinish == 'true')) {\n localStore && localStore.set('hsyPageLoadIsFinish', true);\n _this.setState({ isHsyLoadFinish: true });\n }\n }\n }, function (e, instance) {\n console.log(\"ccFrameWin 加载成功========>\", e, instance);\n instance.sendMessage({ type: CC_FRAME_CONF.initConnect, _ident_only_: CC_FRAME_CONF.identOnly });\n }, CC_FRAME_CONF.identOnly);\n }\n // 初始化商米副屏\n sunMiPresentationInit = (result) => {\n //SunMi初始化参数设置。\n //副屏幕交互。硬件改动20200428 需要在商米页面加载成功后才能发送 初始化命令\n // 进行主副屏数据交互 初始化\n console.log(result);\n const { storeName = '' } = stores.user.options.get('store') || {};\n const { RE_POSParamType } = enumController.getEnumOj();\n const { DUAL_SCREEN_SETTING } = RE_POSParamType;\n const filterResult = result && result.filter?result.filter((settingItem)=>{return settingItem.ParamType === DUAL_SCREEN_SETTING}):[];\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.sharedPreferencesSet(\"setting_setData\",filterResult).then(()=>{\n console.log(\"缓存数据成功\")\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.sendMessageToSecondScreen({ step: 0,storeName});\n });\n }\n\n // 初始化模块信息\n initHsyBasicPageInfo() {\n console.log('start create iframe-hsyPage');\n const hsyPageLoadIsFinish = localStore && localStore.get('hsyPageLoadIsFinish');\n const _hsyPage = document.getElementById(CC_FRAME_CONF.id);\n if (hsyPageLoadIsFinish == 'true' && _hsyPage) return;\n const theme = stores.portalStore.themeStore;\n let color = '#FF8C25';\n switch (theme) {\n case 'orange':\n color = \"#FF8C25\";\n break;\n case 'blue':\n color = \"#3491FF\";\n break;\n case 'dark':\n color = \"#26A0DE\";\n break;\n case 'pink':\n color = \"#FF6B8C\";\n break;\n }\n const _height = document.body.clientHeight;\n const { PosId = '' } = localStore && localStore.get('StoreKey') || {};\n const cc_url = `${this.hsy_domain.replace('#/', '')}?fromApp=nretail&posid=${PosId}&content_only=true&bar_bg=${encodeURIComponent('#FFFFFF')}&bar_active_bg=${encodeURIComponent(color)}`;\n let iframe = document.createElement('iframe');\n iframe.width = '100%';\n iframe.height = `${_height - 60}px`;\n iframe.setAttribute(\"scrolling\", \"yes\");\n iframe.setAttribute(\"frameborder\", 0);\n iframe.style.position = 'absolute';\n iframe.src = cc_url;\n iframe.id = CC_FRAME_CONF.id;\n document.body.appendChild(iframe);\n console.log('finish create iframe-hsyPage succeed.');\n }\n\n //初始化tc、tcyzj、tczsy信息\n getTcBasicInfoInit = () => {\n let userStore = User.restore();\n let sid = userStore.sid;\n let tplusUrl = this.tplusSiteUrl;\n if (!tplusUrl) {\n let msg = \"请用admin登录,在服务器配置–地址配置处,设置“内部或外部网络访问T+服务器的地址”!\";\n ModalWraper.warning(\n {\n title: '温馨提示',\n content: msg,\n okText: '确定',\n okType: 'primary',\n }\n )\n return false;\n }\n if (tplusUrl.substring(tplusUrl.length - 1) !== '/') {\n tplusUrl += '/';\n }\n let ossjumpUrl = `${tplusUrl}view/portal/portal.html?t=${new Date().getTime()}`\n if (sid) {\n ossjumpUrl = `${tplusUrl}view/ossjump.html?t=${new Date().getTime()}&sid=${sid}`\n }\n let postMsgUrl = ossjumpUrl;\n let { user } = this.context.stores;\n let loginInfo = user.options.get('loginInfo');\n const { UserCode, AccountNum, posCode, TplusStoreId } = loginInfo || {};\n const uid = this.tplusEncode(UserCode);\n const pwd = this.tplusEncode(user.options.get(\"password\"));\n const accNum = this.tplusEncode(AccountNum || '');\n const code = this.tplusEncode(posCode);\n const store = this.tplusEncode(TplusStoreId + '');\n ossjumpUrl += `&fromApp=nretail&way=inframe&user=${uid}&pwd=${pwd}&accNum=${accNum}&posCode=${code}&storeID=${store}`;\n return { ossjumpUrl, postMessageUrl: postMsgUrl };\n }\n\n componentWillUnmount() {\n if (this.isHsyIframeInclude && typeof this.ccFrameStore.destroy == 'function') {\n this.ccFrameStore.destroy();\n }\n const { headHook: { removeClass } = {} } = this.context\n removeClass && removeClass(this.state.id, 'portalHead');\n }\n\n componentWillReceiveProps() {\n if (this.getScreenType() === true) {\n if (this.isHorizontalSunMi && this.FuPingIsLoaded) {\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.sendMessageToSecondScreen({ step: 1 });\n } else {\n nativeMs && nativeMs.setIpcRendererMethod('ReplyScreen', { step: 1 })\n }\n }\n }\n\n // 获取副屏的状态\n getScreenType = () => {\n let flag = false;\n if (this.hasElectron === true || this.isHorizontalSunMi) {\n let data = localStore.get('setting_setData') || [];\n data = data.filter(item => item.Name === 'EnableDoubleScreen');\n data = data && data.length > 0 ? data.shift() : null;\n if (data && data.Value === '1') {\n flag = true;\n }\n }\n return flag;\n }\n\n menuClick(item, e) {\n history.push(item.path);\n }\n saveLog = (name) => {\n const { saveLogo } = Request;\n name = \"进入模块:\" + name;\n saveLogo('进入模块', undefined, name);\n }\n\n handelClick = (values = {}) => {\n const { key: type, isModal, iframe, app, title, Name, style, search, tmenuCode } = values;\n const { operations, isHsyLoadFinish } = this.state;\n const controllable = operations.find(vv => vv.Name === Name);\n const { Visibility, HoldFunctionAuth, Title, MenuCode } = controllable || {};\n let errorTip;\n\n // 离线模式\n if (!stores.offlineSys.shouldOpenHomeOperation(Name)) {\n Message.warn(\"离线模式下此操作不可用\", { duration: 3 })\n return;\n }\n\n // 会员拉新\n if (type == 'memberRecruitment' && (this.isEnablePromotion == false || this.isEnableMember == false)) {\n Message.warn(\"您还未开通会员/促销管理,请立即开通\", { duration: 3 })\n return;\n }\n\n // 会员消费查询\n if (type == 'memberConsumDetail' && this.isEnableMember == false) {\n Message.warn(\"您还未开通会员管理,请立即开通\", { duration: 3 })\n return;\n }\n\n // 更多\n if (type == 'more') {\n return this.setState({ showMoreModal: true })\n }\n\n if (!Title) {\n return ModalWraper.warning({\n title: '提示',\n content: '您的权限配置请求失败,请重新登录',\n onOk() {\n User.logout();\n },\n okType: 'primary',\n })\n }\n\n if (!Visibility) {\n errorTip = `您的 ${Title} 模块没有启用`;\n } else if (!HoldFunctionAuth) {\n errorTip = `您没有操作 ${Title} 的权限`;\n }\n const { portalStore } = this.context.stores;\n if (errorTip) {\n return Message.warn(errorTip);\n }\n if (isModal) {\n return stores.modalRouter.show({ url: `/${type}`, width: 800, title });\n }\n // 支持页面内打开,减少再次加载页面的时间。\n if (iframe === true) return this.toFramePage({ type, app, title, style, search, MenuCode, tmenuCode, isHsyLoadFinish });\n switch (type) {\n case 'cashier':\n portalStore.checkDuty().then((onDutyMessage) => {\n if (!!onDutyMessage) {\n const { Code, IdShiftVoucher, Shift, IdDailyVoucher, DailyCode } = onDutyMessage;\n PosSetData({ ShiftCode: Code, IdShiftVoucher, Shift, IdDailyVoucher, DailyCode });\n console.log('onDutyMessage======', onDutyMessage);\n this.saveLog(title);\n history.push('/RE/RE01');\n }\n }).catch((data) => {\n console.log(\"进入前台收银检查是否当班返回错误\", data);\n });\n break;\n case 'onDuty':\n portalStore.onDuty().then((onDutyMessage) => {\n if (onDutyMessage && onDutyMessage.shift) {\n MiddleWare.execute('onDuty')\n }\n });\n break;\n case 'offDuty':\n history.push('/offDuty?type=offDuty');\n break;\n case 'settleDialy':\n if (portalStore.bPosDaily()) {\n history.push('/offDuty?type=settleDaily');\n } else {\n portalStore.onMakerDaily();\n }\n break;\n default:\n history.push(`/${type}`);\n break;\n }\n }\n\n //跳转其他页面,以内嵌形式打开\n toFramePage = (params) => {\n const { app, title, style, search, tmenuCode, MenuCode, isHsyLoadFinish } = params || {}\n switch (app) {\n case 'cc':\n let sh = '';\n if (!isHsyLoadFinish && !this.isMobileEnvironment) {\n return Message.warn('正在加载资源中,请稍后。');\n }\n if (!search) {\n return Message.warn('正在紧急研发中...');\n } else if (search && search.length > 0) {\n sh = (search.length > 1 && MenuCode) ? search.find(v => v.menu === MenuCode) : search[0];\n sh = sh || search[0];\n }\n if (!sh) {\n return Message.warn('传递参数有误,请查证。');\n }\n this.toHsyPage({ ...style, ...sh });\n break;\n case 'tc':\n if (tmenuCode || MenuCode) {\n this.saveLog(title);\n if (MenuCode) {\n this.toTplusPage(MenuCode, search);\n } else {\n this.toTplusPage(tmenuCode, search);\n }\n }\n break;\n }\n }\n\n getTplusUrlFromCloudServer = () => {//获取T+服务器配置地址。\n let userStore = User.restore();\n let data = 'accesstoken=' + `${userStore.accessToken}` + '&cloudOrgId=' + `${userStore.orgId}`;\n let url = `${HTTP_PROXY_URL}` + encodeURIComponent('http://mns.chanapp.chanjet.com/web/WebServer/get?' + `${data}`);\n console.log(url);\n let fetchHeader = {\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n };\n return new Promise((resolve, reject) => {\n fetch(url, fetchHeader)\n .then(function (response) {\n return response.json();\n }).then(json => {\n console.log(json);\n resolve(json);\n }).catch(ex => {\n console.log(ex);\n reject(err);\n })\n })\n }\n\n //跳转到T+\n toTplusPage = async (tmenuCode, search) => {\n let ret = this.getTcBasicInfoInit();\n if (ret === false) return;\n let { ossjumpUrl, postMessageUrl } = ret || {};\n let dsearchPlanID = '';\n if (search && search.id) {\n const { portalStore } = this.context.stores;\n dsearchPlanID = await portalStore.getSearchPlanId(search);\n }\n let menu = this.tplusEncode(tmenuCode);\n ossjumpUrl += `&menu=${menu}&fromUrl=${this.tplusEncode(location.origin)}`;\n if (dsearchPlanID) {\n ossjumpUrl += `&searchPlanID=${this.tplusEncode(dsearchPlanID)}`;\n }\n\n // 添加CiaToken\n try {\n let ciaToken = await getCIACode();\n ciaToken = this.tplusEncode(ciaToken);\n ossjumpUrl += `&ciaToken=${ciaToken}`\n } catch (error) {\n console.log(\"获取CiaToken失败\",error)\n }\n \n if (this.isHorizontalSunMi) {\n window.android_CommonFun.openWebUrlByOutBrowser(ossjumpUrl);\n } else {\n //对于专属云、云主机,如果配置的http,存在跨域问题,暂时解决不了,只能通过打开默认浏览器打开。\n //目前T+页面有很多进一步操作的界面,无法得到解决,特针对跳转T+页面的,都使用默认浏览器打开。2021-10-27\n if (this.new_retail_app == 'tc' || this.new_retail_app == 'tczsy' || this.new_retail_app == 'tcyzj') {\n nativeMs.useDefaultBrowser(ossjumpUrl);\n return;\n }\n let external_frame_tc = document.getElementById('external-frame-tc');\n let win = external_frame_tc.contentWindow;\n const { loadTcURL } = this.state;\n if (loadTcURL) {\n win && win.postMessage({ doType: 'openMenuFromPos', tmenuCode, ossjumpUrl, dsearchPlanID }, postMessageUrl);\n this.setState({ loadTcPage: true });\n } else {\n this.setState({ loadTcURL: ossjumpUrl, loadTcPage: true });\n }\n rx$.changeHsy.next({\n back: true, fn: () => {\n win && win.postMessage({ doType: 'closeCurrentMenuFromPos' }, postMessageUrl);\n this.setState({ loadTcPage: false });\n rx$.changeHsy.next({ back: false });\n }\n })\n }\n }\n\n //跳转CC\n toHsyPage = async (params) => {\n let {\n content_only, //只加载内容区域\n bar_bg, //页签栏颜色\n bar_active_bg, //激活态的标签背景颜色\n menu,\n secondRouter,\n activePrompt,\n closePrompt,\n closeable,\n leavePrompt,\n lock,\n pageId,\n pageParams,\n path,\n tabId,\n tabLabel,\n pageType,\n _k\n } = params;\n\n let filter = {};\n //对仓库参数的处理\n const IdWarehouse = this.idWarehouse;\n const WarehouseName = this.warehouseName;\n const IsPerformanceDistribution = this.performanceDistribution === 'SHIPPER_STORE' || false;\n const { IdStore = '', PosId = '' } = stores.user.options.get('loginInfo') || {};\n const { storeName = '' } = stores.user.options.get('store') || {};\n\n switch (pageType) {\n case 'voucher':\n filter = {\n defaultValue: {\n storeId: {\n id: IdStore,\n storeName\n },\n warehouseId: {\n id: IdWarehouse,\n name: WarehouseName\n }\n }\n }\n //要货单特殊处理\n if (menu == 'require-goods-new') {\n filter = {\n defaultValue: {\n storeId: {\n id: IdStore,\n storeName\n },\n requireWarehouseId: {\n id: IdWarehouse,\n name: WarehouseName\n }\n }\n }\n }\n if (menu == 'pre-sell'){\n filter = {\n storeId: [{id: IdStore, storeName}],\n orderStatusEnum: 'WAIT_DELIVERY',\n }\n }\n break;\n case 'report':\n filter = {\n filterValue: {\n storeId: {\n value: {\n id: IdStore,\n storeName\n }\n },\n warehouseId: {\n value: [{\n id: IdWarehouse,\n name: WarehouseName\n }]\n }\n }\n }\n // 收银统计表\n if (IsPerformanceDistribution && menu == 'retail-cash-report') {\n filter = {\n filterValue: {\n deliveryStoreId: {\n value: {\n id: IdStore,\n storeName\n }\n },\n warehouseId: {\n value: [{\n id: IdWarehouse,\n name: WarehouseName\n }]\n }\n }\n }\n }\n // 售后、配送\n if (menu == 'return-order' || menu == 'order-manage') {\n filter = {\n filterValue: {\n storeId: {\n value: {\n id: IdStore,\n storeName\n }\n },\n deliveryWarehouseId: {\n value: [{\n id: IdWarehouse,\n name: WarehouseName\n }]\n }\n }\n }\n }\n break;\n }\n bar_bg = encodeURIComponent(bar_bg);\n bar_active_bg = encodeURIComponent(bar_active_bg);\n menu = secondRouter ? `${menu}/${this.randomWord(true, 13)}` : menu;\n pageId = menu;\n pageParams = Object.assign(pageParams, filter);\n path = encodeURIComponent(path);\n _k = this.randomWord(false, 6);\n\n const commonArgs = `?posid=${PosId}&content_only=${content_only}&bar_bg=${bar_bg}&bar_active_bg=${bar_active_bg}`;\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}`;\n let cc_url = this.hsy_domain.replace('#/', '') + commonArgs + actionUrl;\n console.log('web_hsy_url:', cc_url);\n if(this.isHorizontalSunMi){\n const CC_WEB_URL = await User.getLoginCCMidWebUrl(cc_url)\n console.log('CC_WEB_URL:', CC_WEB_URL);\n window.android_CommonFun.openWebUrlByOutBrowser(CC_WEB_URL);\n }else{\n this.ccFrameStore && this.ccFrameStore.sendMessage({type: CC_FRAME_CONF.HsyRouterJump, pageId, pageParams, extStateParams: { closeable, tabLabel }, _ident_only_: CC_FRAME_CONF.identOnly })\n if (this.state.showMoreModal === true) {\n this.setState({ showMoreModal: false });\n }\n const _hsyPage = document.getElementById(CC_FRAME_CONF.id);\n if(_hsyPage) _hsyPage.style.top = '60px';\n rx$.changeHsy.next({\n back: true, fn: () => {\n if(_hsyPage) _hsyPage.style.top = '-100%';\n rx$.changeHsy.next({ back: false });\n // 在打开页签之前,关闭之前的,返回键的回调函数\n this.ccFrameStore && this.ccFrameStore.sendMessage({ type: CC_FRAME_CONF.HsyRouterClean, _ident_only_: CC_FRAME_CONF.identOnly });\n }\n })\n }\n }\n\n randomWord = (only, digits) => {\n let str = \"\";\n const number = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];\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']\n let arr = only ? [...number] : [...number, ...letter];\n for (let i = 0; i < digits; i++) {\n let pos = Math.round(Math.random() * (arr.length - 1));\n str += arr[pos];\n }\n return str;\n }\n\n closeFrameModal = () => {\n this.setState({ showModal: false })\n }\n\n closeMoreModal = () => {\n this.setState({ showMoreModal: false })\n }\n\n tplusEncode = (code) => {\n let c = String.fromCharCode(code.charCodeAt(0) + code.length);\n for (let i = 1; i < code.length; i++) {\n c += String.fromCharCode(code.charCodeAt(i) + code.charCodeAt(i - 1));\n }\n let ret = this.TplusBase64Encode(c);\n return ret;\n }\n\n TplusBase64Encode = (input) => {\n const _keyStr = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n let output = \"\";\n let chr1, chr2, chr3, enc1, enc2, enc3, enc4;\n let i = 0;\n input = this._utf8_encode(input);\n while (i < input.length) {\n chr1 = input.charCodeAt(i++);\n chr2 = input.charCodeAt(i++);\n chr3 = input.charCodeAt(i++);\n enc1 = chr1 >> 2;\n enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\n enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\n enc4 = chr3 & 63;\n if (isNaN(chr2)) {\n enc3 = enc4 = 64;\n } else if (isNaN(chr3)) {\n enc4 = 64;\n }\n output = output +\n _keyStr.charAt(enc1) + _keyStr.charAt(enc2) +\n _keyStr.charAt(enc3) + _keyStr.charAt(enc4);\n }\n return output;\n }\n _utf8_encode = (string) => {\n string = string.replace(/\\r\\n/g, \"\\n\");\n let utftext = \"\";\n for (let n = 0; n < string.length; n++) {\n let c = string.charCodeAt(n);\n if (c < 128) {\n utftext += String.fromCharCode(c);\n } else if ((c > 127) && (c < 2048)) {\n utftext += String.fromCharCode((c >> 6) | 192);\n utftext += String.fromCharCode((c & 63) | 128);\n } else {\n utftext += String.fromCharCode((c >> 12) | 224);\n utftext += String.fromCharCode(((c >> 6) & 63) | 128);\n utftext += String.fromCharCode((c & 63) | 128);\n }\n }\n return utftext;\n }\n\n operationControl = (menu = []) => {\n const { operations } = this.state;\n menu.forEach(v => {\n if (v.sub) {\n return this.operationControl(v.sub);\n }\n const controllable = operations.find(vv => vv.Name === v.Name);\n const { Visibility, HoldFunctionAuth, Title } = controllable || {};\n let errorTip;\n if (!Visibility) {\n errorTip = `您的 ${Title} 模块没有启用`;\n } else if (!HoldFunctionAuth) {\n errorTip = `您没有操作 ${Title} 的权限`;\n }\n v.errorTip = errorTip;\n });\n return menu;\n }\n\n createLeftNode = () => {\n const menu = this.leftMenu;\n let width = menu.length == 0 ? this.isMobileEnvironment & !this.isNewRetailBCPosTC ? 5 : 4 : 7;\n if(menu.length == 0) {\n return (<Col xl={width} md={width} className='portal-left-col' key='left'>\n <div className='portal-left-content'></div>\n </Col>);\n }\n\n const menuNode = menu.map(v => {\n return (v.container ?\n <div style={v.container.style} className={v.container.className} key={v.container.className}>\n {\n v.sub.map(vv => {\n let item = vv;\n if (vv.maybe === true) {\n item = this.showStorePrice ? vv : vv.second;\n }\n return (<div\n className={`member-item ${item.className} ${item.disabled ? 'menu-item-disabled' : ''}`}\n key={item.className}\n onClick={this.handelClick.bind(this, item)}\n >\n {!!item.title && <h1>{item.title}</h1>}\n {!!item.label && <p>{item.label}</p>}\n {!!item.icon && <Ticon icon={item.icon} />}\n </div>)\n })\n }\n </div>\n :\n <div\n className={`member-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\n key={v.className}\n onClick={this.handelClick.bind(this, v)}\n >\n {v.title && <h1>{v.title}</h1>}\n {v.label && <p>{v.label}</p>}\n {v.icon && <Ticon icon={v.icon} />}\n </div>\n )\n })\n return (<Col xl={7} md={7} className='portal-left-col' key='left'>\n <div className='portal-left-content'>{menuNode}</div>\n </Col>);\n }\n createCenterNode = () => {\n const menuLeftNode = this.centerLeftMenu.map(v => {\n return (<div\n className={`worktop-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\n style={v.style}\n key={v.className}\n onClick={this.handelClick.bind(this, v)}\n >\n {v.title && <h1>{v.title}</h1>}\n {v.label && <p>{v.label}</p>}\n {v.icon && <Ticon icon={v.icon} />}\n {v.disabled && <div className='item-disabled-placeholder' />}\n </div>)\n });\n const menuRightNode = this.centerRightMenu.map(v => {\n return (v.container ?\n <div style={v.container.style} className={v.container.className} key={v.container.className}>\n {\n v.sub.map(vv => {\n return (<div\n className={`worktop-item ${vv.className} ${vv.disabled ? 'menu-item-disabled' : ''}`}\n key={vv.className}\n onClick={this.handelClick.bind(this, vv)}\n >\n {vv.title && <h1>{vv.title}</h1>}\n {vv.label && <p>{vv.label}</p>}\n {vv.icon && <Ticon icon={vv.icon} />}\n </div>)\n })\n }\n </div>\n :\n <div\n className={`worktop-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\n key={v.className}\n onClick={this.handelClick.bind(this, v)}\n >\n {v.title && <h1>{v.title}</h1>}\n {v.label && <p>{v.label}</p>}\n {v.icon && <Ticon icon={v.icon} />}\n </div>)\n });\n return <div><div className='worktop-container-left'>{menuLeftNode}</div><div className='worktop-container-right'>{menuRightNode}</div></div>;\n }\n createRightNode = () => {\n var width = this.leftMenu.length == 0 ? this.isMobileEnvironment & !this.isNewRetailBCPosTC ? 9 : 10 : 7;\n const node = this.rightMenu.map(v => {\n return (v.container ?\n <div style={v.container.style} className={v.container.className} key={v.container.className}>\n {\n v.sub.map(vv => {\n return (<div\n className={`stock-item ${vv.className} ${vv.disabled ? 'menu-item-disabled' : ''}`}\n key={vv.className}\n onClick={this.handelClick.bind(this, vv)}\n >\n {vv.title && <h1>{vv.title}</h1>}\n {vv.label && <p>{vv.label}</p>}\n {vv.icon && <Ticon icon={vv.icon} />}\n </div>)\n })\n }\n </div>\n :\n <div\n className={`stock-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\n style={v.style}\n key={v.className}\n onClick={this.handelClick.bind(this, v)}\n >\n {!!v.title && <h1>{v.title}</h1>}\n {!!v.icon && <Ticon icon={v.icon} />}\n </div>)\n });\n return <Col xl={width} md={width} className='portal-right-col' key='right'>\n <div className='portal-right-content'>{node}</div>\n </Col>\n }\n\n createMoreNode = () => {\n const arrs = this.getMoreNodeInfo();\n const items = this.isNewRetailBCPosTC ? arrs.sub_tc : arrs.sub_cc || [];\n const node = items.length > 0 && items.map(v => {\n return (\n <div\n className={`modal-quick ${v.className}`}\n style={v.style}\n key={v.className}\n onClick={this.handelClick.bind(this, v)}\n >\n {!!v.icon && <div className='quick'><Ticon icon={v.icon} /></div>}\n {!!v.title && <h1>{v.title}</h1>}\n </div>\n )\n })\n return node;\n }\n\n getMoreNodeInfo = () => {\n if (this.isNewRetailBCPosTC) {\n return this.centerRightMenu.find(v => v.sub && v.sub.find(vv => vv.key == 'more')).sub[1] || {};\n } else {\n return this.centerRightMenu.find(v => v.sub && v.sub.find(vv => vv.key == 'more')).sub[1] || {};\n }\n }\n\n render() {\n const { showModal, showMoreModal, modalURL, loadTcPage, loadTcURL } = this.state;\n const screenHeight = window.screen.availHeight - 100;\n let htmlContent = null;\n if (this.isVerticalTouch) {\n htmlContent = <VerticalPortal handelClick={this.handelClick} />\n }\n else {\n htmlContent = (<Layout style={{ height: '100%' }} className='portal-content'>\n <Content style={{ paddingLeft: '50px', paddingRight: '50px' }} className='portal-container portal-container-center'>\n <Row className=\"portal-content-row\">\n {this.createLeftNode()}\n <Col xl={10} md={10} className='portal-center-col' key='center'>\n <div className='portal-center-content'>\n {this.createCenterNode()}\n </div>\n </Col>\n {this.createRightNode()}\n </Row>\n </Content>\n {\n <div className={loadTcPage ? 'portal-hsy-tc-container' : 'portal-hsy-tc-container portal-hsy-tc-container-hide'}>\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>\n </div>\n }\n {\n this.isMobileEnvironment &&\n <Modal\n visible={showModal}\n onCancel={this.closeFrameModal}\n width={'99%'}\n height={'99%'}\n footer={null}\n >\n <iframe src={modalURL} width='100%' height={screenHeight} frameborder=\"no\" border=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"yes\" allowtransparency=\"true\"></iframe>\n </Modal>\n }\n {\n <Modal\n title={'更多'}\n className={'portal-container-modal-more'}\n visible={showMoreModal}\n onCancel={this.closeMoreModal}\n width={800}\n height={375}\n footer={null}\n centered\n maskClosable={false}\n keyboard={false}\n >\n {\n this.createMoreNode()\n }\n </Modal>\n }\n </Layout>)\n }\n return htmlContent;\n }\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","ccFrameStore","catchOfflineData","offlineSys","context","stores","isLoginAfter","localStore","get","downloadCatcherDay","dataIsOffline","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","loadARMSConfig","nrsp","newRetailStaticParams","arms","bl","appName","userType","orgType","User","restore","domainName","bookCode","userId","username","setConfig","uid","setUsername","loadHsyPage","isHsyIframeInclude","initHsyBasicPageInfo","initHsyFrameWin","options","storeName","enumController","getEnumOj","RE_POSParamType","DUAL_SCREEN_SETTING","filterResult","filter","settingItem","ParamType","sunMi_PresentationManager","sharedPreferencesSet","sendMessageToSecondScreen","step","getTcBasicInfoInit","userStore","sid","tplusUrl","tplusSiteUrl","msg","ModalWraper","warning","title","content","okText","okType","substring","length","ossjumpUrl","postMsgUrl","loginInfo","UserCode","AccountNum","posCode","TplusStoreId","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","ciaToken","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","sendMessage","extStateParams","_ident_only_","_hsyPage","top","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","hsyPageLoadIsFinish","now","modalURL","isVerticalTouch","isHorizontalPad","FuPingIsLoaded","getWebEntry","isOfflineCash","getMenuByPosition","position","Menus","leftMenuTC","rightMenuTC","centerLeftMenuMobileCC","centerLeftMenuMobileTC","centerRightMenuMobileCC","centerRightMenuMobileTC","rightMenuMobileTC","rightMenuMobileCC","getMenuByEnvironment","ccMenu","tcMenu","tcMobilMenu","ccMobilMenu","_this","IframeStore","e","instance","parentNode","removeChild","theme","themeStore","color","_height","body","clientHeight","createElement","height","setAttribute","src","appendChild","destroy","removeClass","setIpcRendererMethod","screenHeight","screen","availHeight","htmlContent","paddingLeft","paddingRight","Component","propTypes","routes","PropTypes","array","contextTypes","object","infoRender","func"],"mappings":"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","file":"index.js","sourcesContent":["/*\n * @Description:\n * @Date: 2019-08-13 08:42:18\n * @LastEditTime: 2022-05-17 20:45:11\n * @LastEditors: chenlongad\n * @modify:修改跳转到T+的查询方案方式\n */\nimport React, { Component } from 'react';\nimport { observer } from 'mobx-react';\nimport { autorun} from 'mobx';\nimport { Row, Col, Modal } from 'antd';\nimport { history, stores, nativeMs, env, localStore } from 'mutants-microfx';\nimport { Ticon, Layout, ModalWraper, Loading, Message } from 'tplus-components-touch';\nimport { User } from 'tplus-api';\nimport { PosSetData, PosInitData } from 'tplus-poslogin';\nimport { platform, enumController } from 'mutants-util';\nimport PropTypes from 'prop-types';\nimport { Request } from '../../api/ModifyPassApi';\nimport Menus from './data';\nimport MiddleWare from '../../middleWare';\nimport VerticalPortal from './verticalPortal';\nimport HorizontalPadPortal from './horizontalPadPortal';\nimport { getCIACode } from 'tplus-api';\nimport './index.less'; \nimport { async } from 'rxjs';\n\nconst hasElectron = (env.platform === env.constant.platform.electron);\nconst { Content } = Layout;\nconst HTTP_PROXY_URL = 'http://tfproxy.chanjet.com/?url=';\nconst CC_FRAME_CONF = { id: 'external-frame-cc', identOnly: '_pos_web_', initConnect: 'initConnect', HsyLoadFinish: 'HsyLoadFinish', HsyRouterClean: 'HsyRouterClean', HsyRouterJump : 'HsyRouterJump' };\n@observer\nexport default class extends Component {\n static propTypes = {\n routes: PropTypes.array,\n };\n static contextTypes = {\n stores: PropTypes.object,\n infoRender: PropTypes.func,\n headHook: PropTypes.object\n };\n ccFrameStore = {};\n constructor(props) {\n super(props);\n this.hasElectron = hasElectron;\n const hsyPageLoadIsFinish = localStore && localStore.get('hsyPageLoadIsFinish');\n this.state = {\n id: Date.now(),\n operations: [],\n showModal: false,\n showMoreModal: false,\n isHsyLoadFinish: !!hsyPageLoadIsFinish,\n loadTcPage: false,\n loadTcURL: '',\n modalURL: '',\n }\n const { isVerticalTouch, isHorizontalPad, isHorizontalSunMi, isNewRetailBCPosTC } = platform || {};\n this.isVerticalTouch = !!isVerticalTouch;\n this.isHorizontalPad = !!isHorizontalPad;\n this.isHorizontalSunMi = !!isHorizontalSunMi;\n this.isMobileEnvironment = !!isHorizontalPad || !!isHorizontalSunMi;\n this.FuPingIsLoaded = false;\n this.isNewRetailBCPosTC = !!isNewRetailBCPosTC;\n this.new_retail_app = localStore && localStore.get('newRetailAppType');\n this.hsy_domain = User && User.getWebEntry();\n // 是否嵌套好生意的iframe\n this.isHsyIframeInclude = !this.isVerticalTouch && !this.isMobileEnvironment;\n //获取初始化参数\n this.isEnableMember = !!PosInitData('isEnableMember');//是否开启会员\n this.isEnablePromotion = !!PosInitData('isEnablePromotion');//是否开启促销\n this.isOfflineCash = PosInitData('IsOfflineCash');\n this.tplusSiteUrl = PosInitData(\"TplusSite\") || PosInitData(\"tplusinnersite\");\n this.idWarehouse = PosInitData('IdWarehouse') || '';\n this.warehouseName = PosInitData('WarehouseName') || '';\n this.performanceDistribution = PosInitData('PerformanceDistribution'); \n this.showStorePrice = PosInitData('ShowStorePrice');\n\n //首页布局\n this.leftMenu = this.getMenuByPosition('left');\n this.centerLeftMenu = this.getMenuByPosition('centerLeft');\n this.centerRightMenu = this.getMenuByPosition('centerRight');\n this.rightMenu = this.getMenuByPosition('right');\n this.randomWord = this.randomWord.bind(this);\n }\n\n getMenuByPosition(position) {\n const { leftMenu, centerLeftMenu, centerRightMenu, rightMenu, leftMenuTC, rightMenuTC, centerLeftMenuMobileCC, centerLeftMenuMobileTC, centerRightMenuMobileCC, centerRightMenuMobileTC, rightMenuMobileTC, rightMenuMobileCC } = Menus;\n switch (position) {\n case \"left\":{\n return this.getMenuByEnvironment(leftMenu,leftMenuTC,[],[]);\n }\n case \"centerLeft\":{\n return this.getMenuByEnvironment(centerLeftMenu,centerLeftMenu, centerLeftMenuMobileTC,centerLeftMenuMobileCC)\n }\n case \"centerRight\":{\n return this.getMenuByEnvironment(centerRightMenu,centerRightMenu, centerRightMenuMobileTC,centerRightMenuMobileCC)\n }\n case \"right\":{\n return this.getMenuByEnvironment(rightMenu,rightMenuTC, rightMenuMobileTC,rightMenuMobileCC)\n }\n }\n }\n\n getMenuByEnvironment(ccMenu, tcMenu, tcMobilMenu, ccMobilMenu) {\n if (this.isNewRetailBCPosTC) {\n return tcMenu;\n } else {\n return ccMenu;\n }\n }\n\n catchOfflineData = async () => {\n const { offlineSys } = this.context.stores;\n const isLoginAfter = localStore.get(\"isLoginAfter\");\n const downloadCatcherDay = localStore.get(\"downloadCatcherDay\");\n const dataIsOffline = localStore.get(\"dataIsOffline\")\n const currentDay = Math.ceil(new Date() / 1000 / 60 / 60 / 24)\n if (isLoginAfter == 1) {\n // 增加每天第一次登陆下载数据\n if (!downloadCatcherDay || currentDay > downloadCatcherDay) {\n try {\n Loading.show({\n text: '离线数据下载中,请稍等...',\n delay: 0,\n showProgress: true\n });\n function downProgress(params) {\n Loading.transfer(params)\n }\n let result = await offlineSys.downloadCatcherData(downProgress,!dataIsOffline);\n if (result) localStore.set(\"downloadCatcherDay\", currentDay);\n Loading.hide();\n } catch (ex) {\n console.log('downloadCatcherData下载离线数据', ex);\n Loading.hide();\n } finally {\n Loading.hide();\n }\n }\n localStore.set(\"isLoginAfter\", 0)\n }\n }\n\n getOperation = () => {\n return new Promise((resolve, reject) => {\n const { homeOperation, functionData } = Request;\n homeOperation().then(operations => {\n localStore.set('operationsAuth', JSON.stringify(operations));\n this.setState({ operations: operations || [] });\n resolve()\n }).catch((err) => {\n console.log('homeOperation.error======', err);\n Loading.hide();\n resolve()\n })\n functionData().then(data => {\n PosSetData(data);\n })\n })\n }\n\n initPageData = async () => {\n const { stores = {}, headHook: { addClass } = {} } = this.context;\n\n const hasUseOffline = (PosInitData('IsOfflineCash') === \"1\") && !platform.otherOfflineStatus;; //是否允许离线\n // const hasUseOffline = true;\n if (hasUseOffline == true) {\n await this.catchOfflineData(); //离线数据下发\n }\n Loading.show({\n text: '权限加载中,请稍等...',\n delay: 2500\n });\n //权限加载\n try {\n await this.getOperation()\n } catch (err) {\n Loading.hide()\n } finally {\n Loading.hide();\n }\n addClass && addClass(this.state.id, 'portalHead');\n // 初始化参数设置。\n stores.setStore.initSetParams().then(ret => {\n // 在客户端中,如果开启了副屏设置,尝试这打开副屏。\n if (this.getScreenType() === true) {\n if (this.isHorizontalSunMi) {\n this.sunMiPresentationInit(ret);\n return;\n }\n console.log('副屏页面打开之前,user信息', JSON.stringify(stores.user));\n window.open('vicescreen?ts=' + new Date().getTime(), 'screen');\n setTimeout(() => {\n console.log('副屏页面打开之后,user信息', JSON.stringify(stores.user))\n }, 3000);\n }\n })\n }\n\n componentDidMount() {\n this.initPageData();\n //加载好生意界面\n const hsyPageLoadIsFinish = localStore && localStore.get('hsyPageLoadIsFinish');\n if (hsyPageLoadIsFinish == 'true') {\n this.loadHsyPage();\n } else {\n setTimeout(() => { this.loadHsyPage() }, 1000)\n }\n this.loadARMSConfig();\n }\n\n //加载arms系统相关企业参数\n loadARMSConfig = () => {\n let nrsp = window.newRetailStaticParams;\n if (nrsp && nrsp.arms) {\n const { bl, appName, userType, orgType } = nrsp.arms || {}\n if (bl && appName) {\n const user = User.restore();\n const { domainName = '', bookCode = '', userId = '', username = '' } = user || {};\n if (orgType === false) {\n bl.setConfig({ uid: `pos-${appName}-${domainName}-${bookCode}` });\n nrsp.arms.orgType = true;\n }\n if (userType === false) {\n bl.setConfig({ setUsername: function () { return `${username || 's'}-${userId || '00000000000'}`; } });\n nrsp.arms.userType = true;\n }\n }\n }\n }\n\n // 初始化加载hsy\n loadHsyPage = () => {\n if(this.isHsyIframeInclude){\n this.initHsyBasicPageInfo();\n this.initHsyFrameWin();\n }\n }\n\n // 初始化好生意iframe\n initHsyFrameWin() {\n let _this = this;\n this.ccFrameStore = new stores.IframeStore(document.getElementById(CC_FRAME_CONF.id), this.hsy_domain, function (e, instance) {\n console.log(e, instance, 'cciframe 接收消息');\n if (e.data && e.data.type === CC_FRAME_CONF.HsyLoadFinish) {\n //记录好生意界面是否加载完成\n const hsyPageLoadIsFinish = localStore && localStore.get('hsyPageLoadIsFinish');\n if (!(hsyPageLoadIsFinish == 'true')) {\n localStore && localStore.set('hsyPageLoadIsFinish', true);\n _this.setState({ isHsyLoadFinish: true });\n }\n }\n }, function (e, instance) {\n console.log(\"ccFrameWin 加载成功========>\", e, instance);\n instance.sendMessage({ type: CC_FRAME_CONF.initConnect, _ident_only_: CC_FRAME_CONF.identOnly });\n }, CC_FRAME_CONF.identOnly);\n }\n // 初始化商米副屏\n sunMiPresentationInit = (result) => {\n //SunMi初始化参数设置。\n //副屏幕交互。硬件改动20200428 需要在商米页面加载成功后才能发送 初始化命令\n // 进行主副屏数据交互 初始化\n console.log(result);\n const { storeName = '' } = stores.user.options.get('store') || {};\n const { RE_POSParamType } = enumController.getEnumOj();\n const { DUAL_SCREEN_SETTING } = RE_POSParamType;\n const filterResult = result && result.filter?result.filter((settingItem)=>{return settingItem.ParamType === DUAL_SCREEN_SETTING}):[];\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.sharedPreferencesSet(\"setting_setData\",filterResult).then(()=>{\n console.log(\"缓存数据成功\")\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.sendMessageToSecondScreen({ step: 0,storeName});\n });\n }\n\n // 初始化模块信息\n initHsyBasicPageInfo() {\n console.log('start create iframe-hsyPage');\n const hsyPageLoadIsFinish = localStore && localStore.get('hsyPageLoadIsFinish');\n const _hsyPage = document.getElementById(CC_FRAME_CONF.id);\n if (hsyPageLoadIsFinish == 'true') {\n return;\n }\n if (_hsyPage) {\n _hsyPage.parentNode.removeChild(_hsyPage);\n }\n const theme = stores.portalStore.themeStore;\n let color = '#FF8C25';\n switch (theme) {\n case 'orange':\n color = \"#FF8C25\";\n break;\n case 'blue':\n color = \"#3491FF\";\n break;\n case 'dark':\n color = \"#26A0DE\";\n break;\n case 'pink':\n color = \"#FF6B8C\";\n break;\n }\n const _height = document.body.clientHeight;\n const { PosId = '' } = localStore && localStore.get('StoreKey') || {};\n const cc_url = `${this.hsy_domain.replace('#/', '')}?fromApp=nretail&posid=${PosId}&content_only=true&bar_bg=${encodeURIComponent('#FFFFFF')}&bar_active_bg=${encodeURIComponent(color)}`;\n let iframe = document.createElement('iframe');\n iframe.width = '100%';\n iframe.height = `${_height - 60}px`;\n iframe.setAttribute(\"scrolling\", \"yes\");\n iframe.setAttribute(\"frameborder\", 0);\n iframe.style.position = 'absolute';\n iframe.src = cc_url;\n iframe.id = CC_FRAME_CONF.id;\n document.body.appendChild(iframe);\n console.log('finish create iframe-hsyPage succeed.');\n }\n\n //初始化tc、tcyzj、tczsy信息\n getTcBasicInfoInit = () => {\n let userStore = User.restore();\n let sid = userStore.sid;\n let tplusUrl = this.tplusSiteUrl;\n if (!tplusUrl) {\n let msg = \"请用admin登录,在服务器配置–地址配置处,设置“内部或外部网络访问T+服务器的地址”!\";\n ModalWraper.warning(\n {\n title: '温馨提示',\n content: msg,\n okText: '确定',\n okType: 'primary',\n }\n )\n return false;\n }\n if (tplusUrl.substring(tplusUrl.length - 1) !== '/') {\n tplusUrl += '/';\n }\n let ossjumpUrl = `${tplusUrl}view/portal/portal.html?t=${new Date().getTime()}`\n if (sid) {\n ossjumpUrl = `${tplusUrl}view/ossjump.html?t=${new Date().getTime()}&sid=${sid}`\n }\n let postMsgUrl = ossjumpUrl;\n let { user } = this.context.stores;\n let loginInfo = user.options.get('loginInfo');\n const { UserCode, AccountNum, posCode, TplusStoreId } = loginInfo || {};\n const uid = this.tplusEncode(UserCode);\n const pwd = this.tplusEncode(user.options.get(\"password\"));\n const accNum = this.tplusEncode(AccountNum || '');\n const code = this.tplusEncode(posCode);\n const store = this.tplusEncode(TplusStoreId + '');\n ossjumpUrl += `&fromApp=nretail&way=inframe&user=${uid}&pwd=${pwd}&accNum=${accNum}&posCode=${code}&storeID=${store}`;\n return { ossjumpUrl, postMessageUrl: postMsgUrl };\n }\n\n componentWillUnmount() {\n if (this.isHsyIframeInclude && typeof this.ccFrameStore.destroy == 'function') {\n this.ccFrameStore.destroy();\n }\n const { headHook: { removeClass } = {} } = this.context\n removeClass && removeClass(this.state.id, 'portalHead');\n }\n\n componentWillReceiveProps() {\n if (this.getScreenType() === true) {\n if (this.isHorizontalSunMi && this.FuPingIsLoaded) {\n window.sunMi_PresentationManager && window.sunMi_PresentationManager.sendMessageToSecondScreen({ step: 1 });\n } else {\n nativeMs && nativeMs.setIpcRendererMethod('ReplyScreen', { step: 1 })\n }\n }\n }\n\n // 获取副屏的状态\n getScreenType = () => {\n let flag = false;\n if (this.hasElectron === true || this.isHorizontalSunMi) {\n let data = localStore.get('setting_setData') || [];\n data = data.filter(item => item.Name === 'EnableDoubleScreen');\n data = data && data.length > 0 ? data.shift() : null;\n if (data && data.Value === '1') {\n flag = true;\n }\n }\n return flag;\n }\n\n menuClick(item, e) {\n history.push(item.path);\n }\n saveLog = (name) => {\n const { saveLogo } = Request;\n name = \"进入模块:\" + name;\n saveLogo('进入模块', undefined, name);\n }\n\n handelClick = (values = {}) => {\n const { key: type, isModal, iframe, app, title, Name, style, search, tmenuCode } = values;\n const { operations, isHsyLoadFinish } = this.state;\n const controllable = operations.find(vv => vv.Name === Name);\n const { Visibility, HoldFunctionAuth, Title, MenuCode } = controllable || {};\n let errorTip;\n\n // 离线模式\n if (!stores.offlineSys.shouldOpenHomeOperation(Name)) {\n Message.warn(\"离线模式下此操作不可用\", { duration: 3 })\n return;\n }\n\n // 会员拉新\n if (type == 'memberRecruitment' && (this.isEnablePromotion == false || this.isEnableMember == false)) {\n Message.warn(\"您还未开通会员/促销管理,请立即开通\", { duration: 3 })\n return;\n }\n\n // 会员消费查询\n if (type == 'memberConsumDetail' && this.isEnableMember == false) {\n Message.warn(\"您还未开通会员管理,请立即开通\", { duration: 3 })\n return;\n }\n\n // 更多\n if (type == 'more') {\n return this.setState({ showMoreModal: true })\n }\n\n if (!Title) {\n return ModalWraper.warning({\n title: '提示',\n content: '您的权限配置请求失败,请重新登录',\n onOk() {\n User.logout();\n },\n okType: 'primary',\n })\n }\n\n if (!Visibility) {\n errorTip = `您的 ${Title} 模块没有启用`;\n } else if (!HoldFunctionAuth) {\n errorTip = `您没有操作 ${Title} 的权限`;\n }\n const { portalStore } = this.context.stores;\n if (errorTip) {\n return Message.warn(errorTip);\n }\n if (isModal) {\n return stores.modalRouter.show({ url: `/${type}`, width: 800, title });\n }\n // 支持页面内打开,减少再次加载页面的时间。\n if (iframe === true) return this.toFramePage({ type, app, title, style, search, MenuCode, tmenuCode, isHsyLoadFinish });\n switch (type) {\n case 'cashier':\n portalStore.checkDuty().then((onDutyMessage) => {\n if (!!onDutyMessage) {\n const { Code, IdShiftVoucher, Shift, IdDailyVoucher, DailyCode } = onDutyMessage;\n PosSetData({ ShiftCode: Code, IdShiftVoucher, Shift, IdDailyVoucher, DailyCode });\n console.log('onDutyMessage======', onDutyMessage);\n this.saveLog(title);\n history.push('/RE/RE01');\n }\n }).catch((data) => {\n console.log(\"进入前台收银检查是否当班返回错误\", data);\n });\n break;\n case 'onDuty':\n portalStore.onDuty().then((onDutyMessage) => {\n if (onDutyMessage && onDutyMessage.shift) {\n MiddleWare.execute('onDuty')\n }\n });\n break;\n case 'offDuty':\n history.push('/offDuty?type=offDuty');\n break;\n case 'settleDialy':\n if (portalStore.bPosDaily()) {\n history.push('/offDuty?type=settleDaily');\n } else {\n portalStore.onMakerDaily();\n }\n break;\n default:\n history.push(`/${type}`);\n break;\n }\n }\n\n //跳转其他页面,以内嵌形式打开\n toFramePage = (params) => {\n const { app, title, style, search, tmenuCode, MenuCode, isHsyLoadFinish } = params || {}\n switch (app) {\n case 'cc':\n let sh = '';\n if (!isHsyLoadFinish && !this.isMobileEnvironment) {\n return Message.warn('正在加载资源中,请稍后。');\n }\n if (!search) {\n return Message.warn('正在紧急研发中...');\n } else if (search && search.length > 0) {\n sh = (search.length > 1 && MenuCode) ? search.find(v => v.menu === MenuCode) : search[0];\n sh = sh || search[0];\n }\n if (!sh) {\n return Message.warn('传递参数有误,请查证。');\n }\n this.toHsyPage({ ...style, ...sh });\n break;\n case 'tc':\n if (tmenuCode || MenuCode) {\n this.saveLog(title);\n if (MenuCode) {\n this.toTplusPage(MenuCode, search);\n } else {\n this.toTplusPage(tmenuCode, search);\n }\n }\n break;\n }\n }\n\n getTplusUrlFromCloudServer = () => {//获取T+服务器配置地址。\n let userStore = User.restore();\n let data = 'accesstoken=' + `${userStore.accessToken}` + '&cloudOrgId=' + `${userStore.orgId}`;\n let url = `${HTTP_PROXY_URL}` + encodeURIComponent('http://mns.chanapp.chanjet.com/web/WebServer/get?' + `${data}`);\n console.log(url);\n let fetchHeader = {\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded'\n }\n };\n return new Promise((resolve, reject) => {\n fetch(url, fetchHeader)\n .then(function (response) {\n return response.json();\n }).then(json => {\n console.log(json);\n resolve(json);\n }).catch(ex => {\n console.log(ex);\n reject(err);\n })\n })\n }\n\n //跳转到T+\n toTplusPage = async (tmenuCode, search) => {\n let ret = this.getTcBasicInfoInit();\n if (ret === false) return;\n let { ossjumpUrl, postMessageUrl } = ret || {};\n let dsearchPlanID = '';\n if (search && search.id) {\n const { portalStore } = this.context.stores;\n dsearchPlanID = await portalStore.getSearchPlanId(search);\n }\n let menu = this.tplusEncode(tmenuCode);\n ossjumpUrl += `&menu=${menu}&fromUrl=${this.tplusEncode(location.origin)}`;\n if (dsearchPlanID) {\n ossjumpUrl += `&searchPlanID=${this.tplusEncode(dsearchPlanID)}`;\n }\n\n // 添加CiaToken\n try {\n let ciaToken = await getCIACode();\n ciaToken = this.tplusEncode(ciaToken);\n ossjumpUrl += `&ciaToken=${ciaToken}`\n } catch (error) {\n console.log(\"获取CiaToken失败\",error)\n }\n \n if (this.isHorizontalSunMi) {\n window.android_CommonFun.openWebUrlByOutBrowser(ossjumpUrl);\n } else {\n //对于专属云、云主机,如果配置的http,存在跨域问题,暂时解决不了,只能通过打开默认浏览器打开。\n //目前T+页面有很多进一步操作的界面,无法得到解决,特针对跳转T+页面的,都使用默认浏览器打开。2021-10-27\n if (this.new_retail_app == 'tc' || this.new_retail_app == 'tczsy' || this.new_retail_app == 'tcyzj') {\n nativeMs.useDefaultBrowser(ossjumpUrl);\n return;\n }\n let external_frame_tc = document.getElementById('external-frame-tc');\n let win = external_frame_tc.contentWindow;\n const { loadTcURL } = this.state;\n if (loadTcURL) {\n win && win.postMessage({ doType: 'openMenuFromPos', tmenuCode, ossjumpUrl, dsearchPlanID }, postMessageUrl);\n this.setState({ loadTcPage: true });\n } else {\n this.setState({ loadTcURL: ossjumpUrl, loadTcPage: true });\n }\n rx$.changeHsy.next({\n back: true, fn: () => {\n win && win.postMessage({ doType: 'closeCurrentMenuFromPos' }, postMessageUrl);\n this.setState({ loadTcPage: false });\n rx$.changeHsy.next({ back: false });\n }\n })\n }\n }\n\n //跳转CC\n toHsyPage = async (params) => {\n let {\n content_only, //只加载内容区域\n bar_bg, //页签栏颜色\n bar_active_bg, //激活态的标签背景颜色\n menu,\n secondRouter,\n activePrompt,\n closePrompt,\n closeable,\n leavePrompt,\n lock,\n pageId,\n pageParams,\n path,\n tabId,\n tabLabel,\n pageType,\n _k\n } = params;\n\n let filter = {};\n //对仓库参数的处理\n const IdWarehouse = this.idWarehouse;\n const WarehouseName = this.warehouseName;\n const IsPerformanceDistribution = this.performanceDistribution === 'SHIPPER_STORE' || false;\n const { IdStore = '', PosId = '' } = stores.user.options.get('loginInfo') || {};\n const { storeName = '' } = stores.user.options.get('store') || {};\n\n switch (pageType) {\n case 'voucher':\n filter = {\n defaultValue: {\n storeId: {\n id: IdStore,\n storeName\n },\n warehouseId: {\n id: IdWarehouse,\n name: WarehouseName\n }\n }\n }\n //要货单特殊处理\n if (menu == 'require-goods-new') {\n filter = {\n defaultValue: {\n storeId: {\n id: IdStore,\n storeName\n },\n requireWarehouseId: {\n id: IdWarehouse,\n name: WarehouseName\n }\n }\n }\n }\n if (menu == 'pre-sell'){\n filter = {\n storeId: [{id: IdStore, storeName}],\n orderStatusEnum: 'WAIT_DELIVERY',\n }\n }\n break;\n case 'report':\n filter = {\n filterValue: {\n storeId: {\n value: {\n id: IdStore,\n storeName\n }\n },\n warehouseId: {\n value: [{\n id: IdWarehouse,\n name: WarehouseName\n }]\n }\n }\n }\n // 收银统计表\n if (IsPerformanceDistribution && menu == 'retail-cash-report') {\n filter = {\n filterValue: {\n deliveryStoreId: {\n value: {\n id: IdStore,\n storeName\n }\n },\n warehouseId: {\n value: [{\n id: IdWarehouse,\n name: WarehouseName\n }]\n }\n }\n }\n }\n // 售后、配送\n if (menu == 'return-order' || menu == 'order-manage') {\n filter = {\n filterValue: {\n storeId: {\n value: {\n id: IdStore,\n storeName\n }\n },\n deliveryWarehouseId: {\n value: [{\n id: IdWarehouse,\n name: WarehouseName\n }]\n }\n }\n }\n }\n break;\n }\n bar_bg = encodeURIComponent(bar_bg);\n bar_active_bg = encodeURIComponent(bar_active_bg);\n menu = secondRouter ? `${menu}/${this.randomWord(true, 13)}` : menu;\n pageId = menu;\n pageParams = Object.assign(pageParams, filter);\n path = encodeURIComponent(path);\n _k = this.randomWord(false, 6);\n\n const commonArgs = `?posid=${PosId}&content_only=${content_only}&bar_bg=${bar_bg}&bar_active_bg=${bar_active_bg}`;\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}`;\n let cc_url = this.hsy_domain.replace('#/', '') + commonArgs + actionUrl;\n console.log('web_hsy_url:', cc_url);\n if(this.isHorizontalSunMi){\n const CC_WEB_URL = await User.getLoginCCMidWebUrl(cc_url)\n console.log('CC_WEB_URL:', CC_WEB_URL);\n window.android_CommonFun.openWebUrlByOutBrowser(CC_WEB_URL);\n }else{\n this.ccFrameStore && this.ccFrameStore.sendMessage({type: CC_FRAME_CONF.HsyRouterJump, pageId, pageParams, extStateParams: { closeable, tabLabel }, _ident_only_: CC_FRAME_CONF.identOnly })\n if (this.state.showMoreModal === true) {\n this.setState({ showMoreModal: false });\n }\n const _hsyPage = document.getElementById(CC_FRAME_CONF.id);\n if(_hsyPage) _hsyPage.style.top = '60px';\n rx$.changeHsy.next({\n back: true, fn: () => {\n if(_hsyPage) _hsyPage.style.top = '-100%';\n rx$.changeHsy.next({ back: false });\n // 在打开页签之前,关闭之前的,返回键的回调函数\n this.ccFrameStore && this.ccFrameStore.sendMessage({ type: CC_FRAME_CONF.HsyRouterClean, _ident_only_: CC_FRAME_CONF.identOnly });\n }\n })\n }\n }\n\n randomWord = (only, digits) => {\n let str = \"\";\n const number = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];\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']\n let arr = only ? [...number] : [...number, ...letter];\n for (let i = 0; i < digits; i++) {\n let pos = Math.round(Math.random() * (arr.length - 1));\n str += arr[pos];\n }\n return str;\n }\n\n closeFrameModal = () => {\n this.setState({ showModal: false })\n }\n\n closeMoreModal = () => {\n this.setState({ showMoreModal: false })\n }\n\n tplusEncode = (code) => {\n let c = String.fromCharCode(code.charCodeAt(0) + code.length);\n for (let i = 1; i < code.length; i++) {\n c += String.fromCharCode(code.charCodeAt(i) + code.charCodeAt(i - 1));\n }\n let ret = this.TplusBase64Encode(c);\n return ret;\n }\n\n TplusBase64Encode = (input) => {\n const _keyStr = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n let output = \"\";\n let chr1, chr2, chr3, enc1, enc2, enc3, enc4;\n let i = 0;\n input = this._utf8_encode(input);\n while (i < input.length) {\n chr1 = input.charCodeAt(i++);\n chr2 = input.charCodeAt(i++);\n chr3 = input.charCodeAt(i++);\n enc1 = chr1 >> 2;\n enc2 = ((chr1 & 3) << 4) | (chr2 >> 4);\n enc3 = ((chr2 & 15) << 2) | (chr3 >> 6);\n enc4 = chr3 & 63;\n if (isNaN(chr2)) {\n enc3 = enc4 = 64;\n } else if (isNaN(chr3)) {\n enc4 = 64;\n }\n output = output +\n _keyStr.charAt(enc1) + _keyStr.charAt(enc2) +\n _keyStr.charAt(enc3) + _keyStr.charAt(enc4);\n }\n return output;\n }\n _utf8_encode = (string) => {\n string = string.replace(/\\r\\n/g, \"\\n\");\n let utftext = \"\";\n for (let n = 0; n < string.length; n++) {\n let c = string.charCodeAt(n);\n if (c < 128) {\n utftext += String.fromCharCode(c);\n } else if ((c > 127) && (c < 2048)) {\n utftext += String.fromCharCode((c >> 6) | 192);\n utftext += String.fromCharCode((c & 63) | 128);\n } else {\n utftext += String.fromCharCode((c >> 12) | 224);\n utftext += String.fromCharCode(((c >> 6) & 63) | 128);\n utftext += String.fromCharCode((c & 63) | 128);\n }\n }\n return utftext;\n }\n\n operationControl = (menu = []) => {\n const { operations } = this.state;\n menu.forEach(v => {\n if (v.sub) {\n return this.operationControl(v.sub);\n }\n const controllable = operations.find(vv => vv.Name === v.Name);\n const { Visibility, HoldFunctionAuth, Title } = controllable || {};\n let errorTip;\n if (!Visibility) {\n errorTip = `您的 ${Title} 模块没有启用`;\n } else if (!HoldFunctionAuth) {\n errorTip = `您没有操作 ${Title} 的权限`;\n }\n v.errorTip = errorTip;\n });\n return menu;\n }\n\n createLeftNode = () => {\n const menu = this.leftMenu;\n let width = menu.length == 0 ? this.isMobileEnvironment & !this.isNewRetailBCPosTC ? 5 : 4 : 7;\n if(menu.length == 0) {\n return (<Col xl={width} md={width} className='portal-left-col' key='left'>\n <div className='portal-left-content'></div>\n </Col>);\n }\n\n const menuNode = menu.map(v => {\n return (v.container ?\n <div style={v.container.style} className={v.container.className} key={v.container.className}>\n {\n v.sub.map(vv => {\n let item = vv;\n if (vv.maybe === true) {\n item = this.showStorePrice ? vv : vv.second;\n }\n return (<div\n className={`member-item ${item.className} ${item.disabled ? 'menu-item-disabled' : ''}`}\n key={item.className}\n onClick={this.handelClick.bind(this, item)}\n >\n {!!item.title && <h1>{item.title}</h1>}\n {!!item.label && <p>{item.label}</p>}\n {!!item.icon && <Ticon icon={item.icon} />}\n </div>)\n })\n }\n </div>\n :\n <div\n className={`member-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\n key={v.className}\n onClick={this.handelClick.bind(this, v)}\n >\n {v.title && <h1>{v.title}</h1>}\n {v.label && <p>{v.label}</p>}\n {v.icon && <Ticon icon={v.icon} />}\n </div>\n )\n })\n return (<Col xl={7} md={7} className='portal-left-col' key='left'>\n <div className='portal-left-content'>{menuNode}</div>\n </Col>);\n }\n createCenterNode = () => {\n const menuLeftNode = this.centerLeftMenu.map(v => {\n return (<div\n className={`worktop-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\n style={v.style}\n key={v.className}\n onClick={this.handelClick.bind(this, v)}\n >\n {v.title && <h1>{v.title}</h1>}\n {v.label && <p>{v.label}</p>}\n {v.icon && <Ticon icon={v.icon} />}\n {v.disabled && <div className='item-disabled-placeholder' />}\n </div>)\n });\n const menuRightNode = this.centerRightMenu.map(v => {\n return (v.container ?\n <div style={v.container.style} className={v.container.className} key={v.container.className}>\n {\n v.sub.map(vv => {\n return (<div\n className={`worktop-item ${vv.className} ${vv.disabled ? 'menu-item-disabled' : ''}`}\n key={vv.className}\n onClick={this.handelClick.bind(this, vv)}\n >\n {vv.title && <h1>{vv.title}</h1>}\n {vv.label && <p>{vv.label}</p>}\n {vv.icon && <Ticon icon={vv.icon} />}\n </div>)\n })\n }\n </div>\n :\n <div\n className={`worktop-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\n key={v.className}\n onClick={this.handelClick.bind(this, v)}\n >\n {v.title && <h1>{v.title}</h1>}\n {v.label && <p>{v.label}</p>}\n {v.icon && <Ticon icon={v.icon} />}\n </div>)\n });\n return <div><div className='worktop-container-left'>{menuLeftNode}</div><div className='worktop-container-right'>{menuRightNode}</div></div>;\n }\n createRightNode = () => {\n var width = this.leftMenu.length == 0 ? this.isMobileEnvironment & !this.isNewRetailBCPosTC ? 9 : 10 : 7;\n const node = this.rightMenu.map(v => {\n return (v.container ?\n <div style={v.container.style} className={v.container.className} key={v.container.className}>\n {\n v.sub.map(vv => {\n return (<div\n className={`stock-item ${vv.className} ${vv.disabled ? 'menu-item-disabled' : ''}`}\n key={vv.className}\n onClick={this.handelClick.bind(this, vv)}\n >\n {vv.title && <h1>{vv.title}</h1>}\n {vv.label && <p>{vv.label}</p>}\n {vv.icon && <Ticon icon={vv.icon} />}\n </div>)\n })\n }\n </div>\n :\n <div\n className={`stock-item ${v.className} ${v.disabled ? 'menu-item-disabled' : ''}`}\n style={v.style}\n key={v.className}\n onClick={this.handelClick.bind(this, v)}\n >\n {!!v.title && <h1>{v.title}</h1>}\n {!!v.icon && <Ticon icon={v.icon} />}\n </div>)\n });\n return <Col xl={width} md={width} className='portal-right-col' key='right'>\n <div className='portal-right-content'>{node}</div>\n </Col>\n }\n\n createMoreNode = () => {\n const arrs = this.getMoreNodeInfo();\n const items = this.isNewRetailBCPosTC ? arrs.sub_tc : arrs.sub_cc || [];\n const node = items.length > 0 && items.map(v => {\n return (\n <div\n className={`modal-quick ${v.className}`}\n style={v.style}\n key={v.className}\n onClick={this.handelClick.bind(this, v)}\n >\n {!!v.icon && <div className='quick'><Ticon icon={v.icon} /></div>}\n {!!v.title && <h1>{v.title}</h1>}\n </div>\n )\n })\n return node;\n }\n\n getMoreNodeInfo = () => {\n if (this.isNewRetailBCPosTC) {\n return this.centerRightMenu.find(v => v.sub && v.sub.find(vv => vv.key == 'more')).sub[1] || {};\n } else {\n return this.centerRightMenu.find(v => v.sub && v.sub.find(vv => vv.key == 'more')).sub[1] || {};\n }\n }\n\n render() {\n const { showModal, showMoreModal, modalURL, loadTcPage, loadTcURL } = this.state;\n const screenHeight = window.screen.availHeight - 100;\n let htmlContent = null;\n if (this.isVerticalTouch) {\n htmlContent = <VerticalPortal handelClick={this.handelClick} />\n }\n else {\n htmlContent = (<Layout style={{ height: '100%' }} className='portal-content'>\n <Content style={{ paddingLeft: '50px', paddingRight: '50px' }} className='portal-container portal-container-center'>\n <Row className=\"portal-content-row\">\n {this.createLeftNode()}\n <Col xl={10} md={10} className='portal-center-col' key='center'>\n <div className='portal-center-content'>\n {this.createCenterNode()}\n </div>\n </Col>\n {this.createRightNode()}\n </Row>\n </Content>\n {\n <div className={loadTcPage ? 'portal-hsy-tc-container' : 'portal-hsy-tc-container portal-hsy-tc-container-hide'}>\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>\n </div>\n }\n {\n this.isMobileEnvironment &&\n <Modal\n visible={showModal}\n onCancel={this.closeFrameModal}\n width={'99%'}\n height={'99%'}\n footer={null}\n >\n <iframe src={modalURL} width='100%' height={screenHeight} frameborder=\"no\" border=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"yes\" allowtransparency=\"true\"></iframe>\n </Modal>\n }\n {\n <Modal\n title={'更多'}\n className={'portal-container-modal-more'}\n visible={showMoreModal}\n onCancel={this.closeMoreModal}\n width={800}\n height={375}\n footer={null}\n centered\n maskClosable={false}\n keyboard={false}\n >\n {\n this.createMoreNode()\n }\n </Modal>\n }\n </Layout>)\n }\n return htmlContent;\n }\n}"]}
@@ -157,7 +157,7 @@ var ModifyPassStore = (_class = function () {
157
157
  _context.t0 = _context['catch'](5);
158
158
 
159
159
  _tplusComponentsTouch.Loading.hide();
160
- console.log('err======modifyPassWord>>>>>>', _context.t0);
160
+ console.error('modifyPassWord失败,错误信息:' + _context.t0);
161
161
 
162
162
  case 19:
163
163
  case 'end':
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-portaltouch/stores/ModifyPassStore.js"],"names":["ModifyPassStore","oldPass","newPass","newPassConfirm","Message","warn","top","Loading","show","target","text","User","updatePwd","data","result","success","stores","modalRouter","hide","logout","errorCode","Keyboard","close","console","log","observable","action","key","value"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,qBAAU,IAAV;IACqBA,e;;;;;;;;;;;;;;;;;;;;;;;wBAW0B,QAAQ,E,EAA5CC,O,SAAAA,O,EAASC,O,SAAAA,O,EAASC,c,SAAAA,c;;sBACrB,CAACF,OAAD,IAAY,CAACC,OAAb,IAAwB,CAACC,c;;;;;iDACpBC,8BAAQC,IAAR,CAAa,SAAb,EAAwB,EAACC,KAAK,EAAN,EAAxB,C;;;sBAELJ,YAAYC,c;;;;;iDACPC,8BAAQC,IAAR,CAAa,aAAb,EAA4B,EAACC,KAAK,EAAN,EAA5B,C;;;;;AAGPC,8CAAQC,IAAR,CAAa;AACXC,0BAAQ,iBADG;AAEXC,wBAAM;AAFK,iBAAb;;uBAImBC,eAAKC,SAAL,CAAeX,OAAf,EAAwBC,OAAxB,C;;;AAAbW,oB;;AACN,oBAAIA,KAAKC,MAAT,EAAiB;AACfV,gDAAQW,OAAR,CAAgB,UAAhB,EAA4B,EAAET,KAAK,EAAP,EAA5B;AACAU,yCAAOC,WAAP,CAAmBC,IAAnB,CAAwB,aAAxB;AACAP,iCAAKQ,MAAL;AACD,iBAJD,MAIO,IAAI,CAAC,CAACN,KAAKO,SAAX,EAAsB;AAC3B,sBAAIP,KAAKO,SAAL,KAAmB,OAAvB,EAAgC;AAC9BhB,kDAAQC,IAAR,CAAa,UAAb,EAAyB,EAAEC,KAAK,EAAP,EAAzB;AACD;AACF;AACDC,8CAAQW,IAAR;AACAG,+CAASC,KAAT;;;;;;;;AAEAf,8CAAQW,IAAR;AACAK,wBAAQC,GAAR,CAAY,+BAAZ;;;;;;;;;;;;;;;;;;kCAIkB;AACpB,WAAKvB,OAAL,GAAe,EAAf;AACA,WAAKC,OAAL,GAAe,EAAf;AACA,WAAKC,cAAL,GAAsB,EAAtB;AACD;;;4EA3CAsB,gB;;;WAAqB,E;;2EACrBA,gB;;;WAAqB,E;;kFACrBA,gB;;;WAA4B,E;;+EAE5BC,Y;;;;;WAAqB,UAACC,GAAD,EAAMC,KAAN,EAAgB;AACpC,YAAKD,GAAL,IAAYC,KAAZ;AACD,K;;mEAEAF,Y,+JA+BAA,Y;kBAzCkB1B,e","file":"ModifyPassStore.js","sourcesContent":["import { observable, action, useStrict } from 'mobx';\nimport { Message, Loading, Keyboard } from 'tplus-components-touch';\nimport { stores, runInAction } from 'mutants-microfx';\nimport { User } from 'tplus-api';\n\nuseStrict(true);\nexport default class ModifyPassStore {\n\n @observable oldPass = '';\n @observable newPass = '';\n @observable newPassConfirm = '';\n\n @action watchChange = (key, value) => {\n this[key] = value;\n }\n\n @action async modifyPassWord() {\n const {oldPass, newPass, newPassConfirm} = this || {};\n if (!oldPass || !newPass || !newPassConfirm) {\n return Message.warn('您还有未填写项', {top: 30});\n }\n if (newPass !== newPassConfirm) {\n return Message.warn('您两次输入的密码不一致', {top: 30});\n }\n try {\n Loading.show({\n target: 'modify-password',\n text: '信息提交中,请稍等...'\n })\n const data = await User.updatePwd(oldPass, newPass);\n if (data.result) {\n Message.success('您的密码修改成功', { top: 30 });\n stores.modalRouter.hide('/modifypass');\n User.logout();\n } else if (!!data.errorCode) {\n if (data.errorCode === '20109') {\n Message.warn('旧密码录入有误!', { top: 30 });\n }\n }\n Loading.hide();\n Keyboard.close();\n } catch (err) {\n Loading.hide();\n console.log('err======modifyPassWord>>>>>>', err);\n }\n }\n\n @action cleanStores() {\n this.oldPass = '';\n this.newPass = '';\n this.newPassConfirm = '';\n }\n\n}\n"]}
1
+ {"version":3,"sources":["tplus-portaltouch/stores/ModifyPassStore.js"],"names":["ModifyPassStore","oldPass","newPass","newPassConfirm","Message","warn","top","Loading","show","target","text","User","updatePwd","data","result","success","stores","modalRouter","hide","logout","errorCode","Keyboard","close","console","error","observable","action","key","value"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;AACA;;AACA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,qBAAU,IAAV;IACqBA,e;;;;;;;;;;;;;;;;;;;;;;;wBAW0B,QAAQ,E,EAA5CC,O,SAAAA,O,EAASC,O,SAAAA,O,EAASC,c,SAAAA,c;;sBACrB,CAACF,OAAD,IAAY,CAACC,OAAb,IAAwB,CAACC,c;;;;;iDACpBC,8BAAQC,IAAR,CAAa,SAAb,EAAwB,EAACC,KAAK,EAAN,EAAxB,C;;;sBAELJ,YAAYC,c;;;;;iDACPC,8BAAQC,IAAR,CAAa,aAAb,EAA4B,EAACC,KAAK,EAAN,EAA5B,C;;;;;AAGPC,8CAAQC,IAAR,CAAa;AACXC,0BAAQ,iBADG;AAEXC,wBAAM;AAFK,iBAAb;;uBAImBC,eAAKC,SAAL,CAAeX,OAAf,EAAwBC,OAAxB,C;;;AAAbW,oB;;AACN,oBAAIA,KAAKC,MAAT,EAAiB;AACfV,gDAAQW,OAAR,CAAgB,UAAhB,EAA4B,EAAET,KAAK,EAAP,EAA5B;AACAU,yCAAOC,WAAP,CAAmBC,IAAnB,CAAwB,aAAxB;AACAP,iCAAKQ,MAAL;AACD,iBAJD,MAIO,IAAI,CAAC,CAACN,KAAKO,SAAX,EAAsB;AAC3B,sBAAIP,KAAKO,SAAL,KAAmB,OAAvB,EAAgC;AAC9BhB,kDAAQC,IAAR,CAAa,UAAb,EAAyB,EAAEC,KAAK,EAAP,EAAzB;AACD;AACF;AACDC,8CAAQW,IAAR;AACAG,+CAASC,KAAT;;;;;;;;AAEAf,8CAAQW,IAAR;AACAK,wBAAQC,KAAR,CAAc,sCAAd;;;;;;;;;;;;;;;;;;kCAIkB;AACpB,WAAKvB,OAAL,GAAe,EAAf;AACA,WAAKC,OAAL,GAAe,EAAf;AACA,WAAKC,cAAL,GAAsB,EAAtB;AACD;;;4EA3CAsB,gB;;;WAAqB,E;;2EACrBA,gB;;;WAAqB,E;;kFACrBA,gB;;;WAA4B,E;;+EAE5BC,Y;;;;;WAAqB,UAACC,GAAD,EAAMC,KAAN,EAAgB;AACpC,YAAKD,GAAL,IAAYC,KAAZ;AACD,K;;mEAEAF,Y,+JA+BAA,Y;kBAzCkB1B,e","file":"ModifyPassStore.js","sourcesContent":["import { observable, action, useStrict } from 'mobx';\nimport { Message, Loading, Keyboard } from 'tplus-components-touch';\nimport { stores, runInAction } from 'mutants-microfx';\nimport { User } from 'tplus-api';\n\nuseStrict(true);\nexport default class ModifyPassStore {\n\n @observable oldPass = '';\n @observable newPass = '';\n @observable newPassConfirm = '';\n\n @action watchChange = (key, value) => {\n this[key] = value;\n }\n\n @action async modifyPassWord() {\n const {oldPass, newPass, newPassConfirm} = this || {};\n if (!oldPass || !newPass || !newPassConfirm) {\n return Message.warn('您还有未填写项', {top: 30});\n }\n if (newPass !== newPassConfirm) {\n return Message.warn('您两次输入的密码不一致', {top: 30});\n }\n try {\n Loading.show({\n target: 'modify-password',\n text: '信息提交中,请稍等...'\n })\n const data = await User.updatePwd(oldPass, newPass);\n if (data.result) {\n Message.success('您的密码修改成功', { top: 30 });\n stores.modalRouter.hide('/modifypass');\n User.logout();\n } else if (!!data.errorCode) {\n if (data.errorCode === '20109') {\n Message.warn('旧密码录入有误!', { top: 30 });\n }\n }\n Loading.hide();\n Keyboard.close();\n } catch (err) {\n Loading.hide();\n console.error('modifyPassWord失败,错误信息:' + err);\n }\n }\n\n @action cleanStores() {\n this.oldPass = '';\n this.newPass = '';\n this.newPassConfirm = '';\n }\n\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tplus-portaltouch",
3
- "version": "3.55.3",
3
+ "version": "3.56.3",
4
4
  "description": "touch protal",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -30,8 +30,8 @@
30
30
  "mutants-devtools": "^1.0.0",
31
31
  "mutants-microfx": "^1.0.0",
32
32
  "tplus-api": "~5.0.1",
33
- "tplus-components": "~3.55.1",
34
- "tplus-components-touch": "~3.55.1",
35
- "tplus-poslogin": "~3.55.1"
33
+ "tplus-components": "~3.56.1",
34
+ "tplus-components-touch": "~3.56.1",
35
+ "tplus-poslogin": "~3.56.1"
36
36
  }
37
37
  }