tplus-portaltouch 3.54.2 → 3.54.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -1016,12 +1016,6 @@ var _default = (0, _mobxReact.observer)(_class = function (_Component) {
1016
1016
  },
1017
1017
  onFocus: function onFocus(e) {
1018
1018
  _this2.setState({ showInput: true });
1019
- if (!isHorizontalPad) {
1020
- //针对pad适配
1021
- setTimeout(function () {
1022
- _this2.hiddenDiv.scrollIntoView(true);
1023
- }, 100);
1024
- }
1025
1019
  _tplusComponentsTouch.Keyboard.open(function (v) {
1026
1020
  var value = _tplusComponentsTouch.Keyboard.getNewValue(_this2.inputTarget.input, _this2.inputTarget.input.value, v);
1027
1021
  _this2.onChange(value);
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-portaltouch/components/dutyandsettle/dutysettlebill.js"],"names":["TabPane","Tabs","observer","props","_val","tabClick","key","handleChange","value","setState","plusminus","amountChange","Math","abs","state","onImprestAmountChange","onChange","val","isNaN","parseFloat","change","keyboardOnOk","e","inputTarget","input","blur","Keyboard","close","keyboardOnClose","renderVisibleData","voucherInfo","bsupport","IsEnableUMember","IsCommerce","RetailAmount","OnlineSalesAmount","CreditAmount","PaymentCreditAmount","ReturnAmount","GiveChangeForStorage","StorageAmount","WipeChange","OnlineAmount","CashOutAmount","CouponsDeduct","CouponsAmount","TotalCount","Price","TotalCustom","IntegralExchangeCount","SalesStorageTotalAmount","ReturnIntegralExchangeCount","DepositTotalAmount","PrepaidTotalAmount","DebtTotalAmount","DeliveryTotalAmount","enumController","getEnumOj","Differentiate","localStore","get","presale","PreSellOrBook","loginInfo","divs","item","info","Name","Visible","push","creditSalesEnabled","creditSalesPaymentMethod","isNewRetailBCPosTC","COUPON","length","renderHeadData","type","Code","POSCode","POSName","POS","Maker","showInput","platform","bill","bhistory","isHorizontalPad","cashierCheckAccount","TStore","restore","storeName","bPosDaily","BY_POS","showAmount","WorkingDate","WorkingTime","StartDate","StartTime","ShiftDate","ShiftTime","InitialAmount","ImprestAmount","ShiftVoucherDetails","Memo","DailyDetails","StoragePresentAmount","StorageTotalAmount","timecontent","format","DateFormat2","DateFormat","rdetials","detials","detail","name","SettleStyle","origamount","OrigAmount","amount","Amount","MemberDepositAmount","TotalOrigAmount","TotalAmount","NativeTitle","columns","title","dataIndex","width","fixed","className","data","data1","data2","datas","index","omission","textAlign","sum","checkItemVisible","headers","display","target","ref","setTimeout","hiddenDiv","scrollIntoView","open","v","getNewValue","Component"],"mappings":"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","file":"dutysettlebill.js","sourcesContent":["import React, { Component } from 'react';\nimport classnames from 'classnames'\nimport _map from 'lodash/map';\nimport _each from 'lodash/each';\nimport _reduce from 'lodash/reduce';\nimport _concat from 'lodash/concat';\nimport _find from 'lodash/find';\nimport _slice from 'lodash/slice';\nimport _truncate from 'lodash/truncate';\nimport { Tabs, Table, Input } from 'antd';\nimport { observer } from 'mobx-react';\nimport moment from \"moment\";\nimport { Keyboard } from 'tplus-components-touch';\nimport { DateFormat, DateFormat2, getFixedNumber } from '../../dutyService';\nimport { PosInitData, TStore } from 'tplus-poslogin';\nimport { platform, enumController } from 'mutants-util';\nimport { localStore } from 'mutants-microfx';\n\nconst TabPane = Tabs.TabPane;\n\n@observer\nexport default class extends Component {\n _val=0\n\tconstructor(props) {\n super(props);\n this.state={\n plusminus:\"1\",\n amountChange:0,\n change:0,\n showInput:false,\n };\n const { isNewRetailBCPosTC } = platform || {};\n this.isNewRetailBCPosTC = !!isNewRetailBCPosTC;\n\t}\n\n\n\tcomponentDidMount() {\n\n\t}\n\n tabClick=(key)=>{\n\n }\n\n handleChange=(value)=>{\n this.setState({\n plusminus:value,\n amountChange:Math.abs(this.state.amountChange) * value\n });\n this.props.onImprestAmountChange && this.props.onImprestAmountChange(Math.abs(this.state.amountChange) * value);\n }\n\n onChange=(val)=>{\n let value=val;\n if(isNaN(val) || parseFloat(val)>=100000000000){\n value = this._val;\n }else{\n this._val = val;\n }\n let change=parseFloat(this.state.plusminus) * parseFloat(value||0);\n this.setState({\n change:value,\n amountChange:change\n });\n this.props.onImprestAmountChange && this.props.onImprestAmountChange(change);\n }\n\n keyboardOnOk = (e) => {\n this.inputTarget.input.blur();\n Keyboard.close();\n }\n\n keyboardOnClose = (e) => {\n this.inputTarget.input.blur();\n Keyboard.close();\n }\n\n renderVisibleData =(voucherInfo,bsupport,IsEnableUMember,IsCommerce,RetailAmount, OnlineSalesAmount,CreditAmount, PaymentCreditAmount,ReturnAmount,GiveChangeForStorage,StorageAmount,WipeChange,OnlineAmount,CashOutAmount,CouponsDeduct,CouponsAmount,TotalCount,Price,TotalCustom,IntegralExchangeCount,SalesStorageTotalAmount,ReturnIntegralExchangeCount,DepositTotalAmount, PrepaidTotalAmount, DebtTotalAmount, DeliveryTotalAmount)=>{\n const { Differentiate } = enumController.getEnumOj();\n const { presale, loginInfo: { PreSellOrBook } } = localStore.get('user') || {};\n \n let divs=[];\n let item=_find(voucherInfo,(info)=>{return info.Name==\"RetailAmount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>销售金额</div><div>{getFixedNumber(RetailAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"OnlineSalesAmount\"});\n if((!item || item.Visible)){\n divs.push(<div className=\"content\"><div>线上销售金额</div><div>{getFixedNumber(OnlineSalesAmount)}</div></div>);\n }\n // 开启赊销\n let creditSalesEnabled = PosInitData(\"creditSalesEnabled\");\n // 收款方式为pos端收款\n let creditSalesPaymentMethod = PosInitData(\"creditSalesPaymentMethod\");\n item=_find(voucherInfo,(info)=>{return info.Name==\"CreditAmount\"});\n if((!item || item.Visible) && creditSalesEnabled && this.isNewRetailBCPosTC){\n divs.push(<div className=\"content\"><div>挂账金额</div><div>{getFixedNumber(CreditAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"PaymentCreditAmount\"});\n if((!item || item.Visible) && creditSalesEnabled && creditSalesPaymentMethod === \"BY_CASHIER\" && this.isNewRetailBCPosTC){\n divs.push(<div className=\"content\"><div>挂账收款金额</div><div>{getFixedNumber(PaymentCreditAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"ReturnAmount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>退货金额</div><div>{getFixedNumber(ReturnAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"NetSalesAmount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>净销售金额</div><div>{getFixedNumber(RetailAmount + ReturnAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"GiveChangeForStorage\"});\n if((!item || item.Visible) && bsupport ){\n divs.push(<div className=\"content\"><div>找零转储值</div><div>{getFixedNumber(GiveChangeForStorage)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"WipeChange\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>抹零</div><div>{getFixedNumber(WipeChange)}</div></div>);\n }\n //预订金额\n item=_find(voucherInfo,(info)=>{return info.Name==\"DepositTotalAmount\"});\n if((!item || item.Visible) && (PreSellOrBook != 'DISABLED')){\n divs.push(<div className=\"content\"><div>{presale+'金额'}</div><div>{getFixedNumber(DepositTotalAmount)}</div></div>);\n }\n //订金,启用预售不展示\n item=_find(voucherInfo,(info)=>{return info.Name==\"PrepaidTotalAmount\"});\n if((!item || item.Visible) && PreSellOrBook == 'BOOK'){\n divs.push(<div className=\"content\"><div>订金</div><div>{getFixedNumber(PrepaidTotalAmount)}</div></div>);\n }\n //欠款,启用预售不展示\n item=_find(voucherInfo,(info)=>{return info.Name==\"DebtTotalAmount\"});\n if((!item || item.Visible) && PreSellOrBook == 'BOOK'){\n divs.push(<div className=\"content\"><div>欠款</div><div>{getFixedNumber(DebtTotalAmount)}</div></div>);\n }\n //预订取货金额\n item=_find(voucherInfo,(info)=>{return info.Name==\"DeliveryTotalAmount\"});\n if((!item || item.Visible) && (PreSellOrBook != 'DISABLED')){\n divs.push(<div className=\"content\"><div>{presale+'取货金额'}</div><div>{getFixedNumber(DeliveryTotalAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"OnlineAmount\"});\n if ((!item || item.Visible) && (IsEnableUMember || IsCommerce || true)) {\n divs.push(<div className=\"content\"><div>线上收款金额</div><div>{getFixedNumber(OnlineAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"CashOutAmount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>抵现销售金额</div><div>{getFixedNumber(CashOutAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"SalesStorageTotalAmount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>储值销售金额</div><div>{getFixedNumber(SalesStorageTotalAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"CouponsDeduct\"});\n item=_find(voucherInfo,(info)=>{return info.Name==\"CouponsAmount\"});\n if((!item || item.Visible) && (IsEnableUMember || IsCommerce || true) ){\n divs.push(<div className=\"content\"><div>{Differentiate.COUPON}抵扣</div><div>{getFixedNumber(CouponsAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"TotalCount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>水单总数</div><div>{TotalCount || 0}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"IntegralExchangeCount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>积分兑换笔数</div><div>{IntegralExchangeCount || 0}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"ReturnIntegralExchangeCount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>积分兑换退货笔数</div><div>{ReturnIntegralExchangeCount || 0}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"Price\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>客单价</div><div>{getFixedNumber(Price,PosInitData('PricePrecision'))}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"TotalCustom\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>来客数量</div><div>{TotalCustom || 0}</div></div>);\n }\n if(divs.length % 2 !=0){\n divs.push(<div className=\"content\"><div>{\" \"}</div><div>{\" \"}</div></div>);\n }\n\n return divs;\n }\n\n renderHeadData =(voucherInfo,type,Code,Name,POSCode,POSName,POS,Maker)=>{\n let divs=[];\n let item=_find(voucherInfo,(info)=>{return info.Name==\"Code\"});\n if(!item || item.Visible){\n divs.push(<div className=\"item\"><div className=\"label\">{type=='offDuty'?\"交班单号:\":\"日结单号:\"}</div><div className=\"content\">{Code}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"Store\"});\n if(!item || item.Visible){\n divs.push(<div className=\"item\"><div className=\"label\">门店:</div><div className=\"content\">{Name}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"POSCode\"});\n if(!item || item.Visible){\n divs.push(<div className=\"item\"><div className=\"label\">POS编码:</div><div className=\"content\">{POSCode}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"POSName\"});\n if(!item || item.Visible){\n divs.push(<div className=\"item\"><div className=\"label\">POS名称:</div><div className=\"content\">{POSName || POS}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"Maker\"});\n if(!item || item.Visible){\n divs.push(<div className=\"item\"><div className=\"label\">收银员:</div><div className=\"content\">{Maker}</div></div>);\n }\n return divs;\n }\n\n checkItemVisible(voucherInfo,key){\n let item=_find(voucherInfo,(info)=>{return info.Name==key});\n return (!item || item.Visible);\n }\n\n\trender() {\n let { bill, bhistory,type,voucherInfo } = this.props;\n const {isHorizontalPad} = platform || {};\n const { cashierCheckAccount } = enumController.getEnumOj();\n let Name= TStore.restore().storeName;\n //let UserName=PosInitData('UserName');\n let IsEnableUMember = PosInitData('IsEnableUMember');\n let IsCommerce = PosInitData('ECommerce'); //是否开启电商\n let bPosDaily = PosInitData('POSCheckWays') == cashierCheckAccount.BY_POS;\n let bsupport=false;\n let showAmount= (type=='offDuty' && !bPosDaily) || (type!='offDuty' && bPosDaily);\n // let { Code,POSCode, POSName, Store:{ Name }={},UserName,WorkingDate, WorkingTime,\n let { Maker,Code,POSCode, POSName,POS, WorkingDate, WorkingTime, StartDate, StartTime,ShiftDate,ShiftTime,WipeChange,\n RetailAmount, OnlineSalesAmount ,CreditAmount, PaymentCreditAmount, ReturnAmount, GiveChangeForStorage,StorageAmount,CashOutAmount,CouponsAmount,CouponsDeduct,TotalCount,Price,\n InitialAmount=0,ImprestAmount=0, ShiftVoucherDetails=[],Memo,DailyDetails=[],TotalCustom,OnlineAmount,IntegralExchangeCount,SalesStorageTotalAmount, StoragePresentAmount,StorageTotalAmount,ReturnIntegralExchangeCount,\n DepositTotalAmount, PrepaidTotalAmount, DebtTotalAmount, DeliveryTotalAmount,\n } = bill || {};\n let timecontent= <span><p>{moment(WorkingDate || StartDate).format(DateFormat2) +' '+ (WorkingTime || StartTime) +' 至'}</p><p>{ShiftTime?moment(ShiftDate).format(DateFormat2)+' '+ShiftTime:moment().format(DateFormat)}</p></span>;\n let rdetials=_concat(ShiftVoucherDetails,DailyDetails);\n let detials=[];\n _each(rdetials,(detail)=>{\n detials.push({\n name:detail.SettleStyle.Name,\n origamount:detail.OrigAmount,\n amount:detail.Amount,\n MemberDepositAmount:detail.MemberDepositAmount,\n TotalOrigAmount:detail.TotalOrigAmount,\n TotalAmount:detail.TotalAmount,\n });\n if(detail.NativeTitle){\n detials.push({\n name:detail.NativeTitle,\n origamount:detail.Amount,\n amount:0,\n TotalOrigAmount:detail.TotalAmount,\n TotalAmount:0\n });\n }\n });\n let columns=[{\n title:\"结算方式/收入类型\",\n dataIndex:\"type\",\n key:\"type\",\n width:150,\n fixed: 'left',\n className:\"column\",\n }];\n let data={};\n let data1={};\n let data2={};\n data.type=\"零售收款金额\";\n data1.type=\"会员充值金额(本金)\";\n // data2.type=\"储值总额\";\n // data3.type=\"储值本金\";\n // data4.type=\"储值赠送金\";\n data2.type=\"合计\";\n let datas=[];\n _each(detials,(detail,index)=>{\n columns.push({\n title:detail.name.length>11?(_truncate(detail.name,{length:6,omission:''})+'...'):detail.name,//detail.name,\n dataIndex:\"data\"+index,\n key:\"data\"+index,\n width:150,\n textAlign:'right',\n className:\"column\",\n });\n data[\"data\"+index]=getFixedNumber(detail.origamount);\n data1[\"data\"+index]=getFixedNumber(detail.MemberDepositAmount || 0);\n data2[\"data\"+index]=getFixedNumber(detail.TotalOrigAmount||0);\n })\n columns.push({\n title:\"合计\",\n dataIndex:\"total\",\n key:\"total\",\n width:100,\n textAlign:'right',\n className:\"column\",\n });\n data[\"total\"]=getFixedNumber(_reduce(detials,(sum,detail)=>{\n return sum + parseFloat(detail.amount);\n },0));\n data1[\"total\"]=getFixedNumber(_reduce(detials,(sum,detail)=>{\n return sum + parseFloat(detail.MemberDepositAmount||0);\n },0));\n data2[\"total\"]=getFixedNumber(_reduce(detials,(sum,detail)=>{\n return sum + parseFloat(detail.TotalOrigAmount||0);\n },0));\n\n if(this.checkItemVisible(voucherInfo,\"OrigAmount\")){\n datas.push(data);\n }\n if(this.checkItemVisible(voucherInfo,\"MemberDepositAmount\")){\n datas.push(data1);\n }\n if(this.checkItemVisible(voucherInfo,\"TotalOrigAmount\")){\n datas.push(data2);\n }\n let divs=this.renderVisibleData(voucherInfo,bsupport,IsEnableUMember,IsCommerce,RetailAmount, OnlineSalesAmount,CreditAmount, PaymentCreditAmount,\n ReturnAmount,GiveChangeForStorage,StorageAmount,WipeChange,OnlineAmount,CashOutAmount,CouponsDeduct,CouponsAmount,\n TotalCount,Price,TotalCustom,IntegralExchangeCount,SalesStorageTotalAmount,ReturnIntegralExchangeCount,DepositTotalAmount, PrepaidTotalAmount, DebtTotalAmount, DeliveryTotalAmount);\n let headers=this.renderHeadData(voucherInfo,type,Code,Name,POSCode,POSName,POS,Maker);\n return (<div className=\"offDuty\">\n <div className=\"header\">\n {_map(headers,(item)=>{\n return item;\n })}\n\n <div className=\"item\"><div className=\"label\">时间:</div><div className=\"content\">{!(WorkingDate || StartDate)?'':timecontent}</div></div>\n </div>\n <div className={classnames({\"body\":true,'bodyP':!bhistory})}>\n <Tabs defaultActiveKey=\"1\" onChange={this.tabClick}>\n <TabPane tab=\"收银统计\" key=\"1\">\n <div className={classnames({\"cashstat\":true,\"cashstatP\":!bhistory})}>\n <Table\n columns={columns}\n dataSource={datas}\n pagination={false}/>\n </div>\n </TabPane>\n <TabPane tab=\"销售看板\" key=\"2\">\n <div className={classnames({\"salestat\":true,\"salestatP\":!bhistory})}>\n <div className=\"stat\">\n <div className=\"title\"><div>销售数据</div><div>金额</div></div>\n {_map(_slice(divs,0,divs.length/2 + 1),(item)=>{\n return item;\n })}\n\n\n </div>\n <div className=\"stat\">\n <div className=\"title\"><div>销售数据</div><div>金额</div></div>\n {_map(_slice(divs,divs.length/2 + 1),(item)=>{\n return item;\n })}\n\n </div>\n </div>\n </TabPane>\n </Tabs>\n </div>\n <div className=\"footer\">\n {showAmount && this.checkItemVisible(voucherInfo,\"InitialAmount\") && <div className=\"item\"><div className=\"label paddingtop\">备用金初始金额:</div><div className=\"content paddingtop\">{getFixedNumber(InitialAmount)}</div></div>}\n {showAmount && this.checkItemVisible(voucherInfo,\"ImprestAmount\") && <div className=\"item\" style={{display:bhistory?'none':'inline-block'}}>\n <div className=\"label paddingtop\">备用金:</div>\n <div className=\"content content2\">\n <div className=\"plusminus\">\n <button className={classnames({\"selected\":this.state.plusminus==\"1\"})} onClick={()=>this.handleChange(1)}>增</button>\n <button className={classnames({\"selected\":this.state.plusminus==\"-1\"})} onClick={()=>this.handleChange(-1)}>减</button>\n </div>\n <div className=\"amountchange\">\n <Input\n type='text'\n onChange={(e) => this.onChange(e.target.value)}\n value={this.state.change}\n ref={ref => this.inputTarget = ref}\n onFocus={\n (e)=>{\n this.setState({showInput:true});\n if(!isHorizontalPad){\n //针对pad适配\n setTimeout(()=>{\n this.hiddenDiv.scrollIntoView(true);\n },100);\n }\n Keyboard.open(\n (v)=>{\n const value = Keyboard.getNewValue(this.inputTarget.input, this.inputTarget.input.value, v);\n this.onChange(value);\n },\n this.keyboardOnOk,\n this.keyboardOnClose\n )();\n }\n }\n onBlur={(e)=>{\n this.setState({showInput:false});\n Keyboard.close();\n this.setState({change:getFixedNumber(this.state.change)});\n }}\n />\n </div>\n </div>\n </div>}\n {showAmount && this.checkItemVisible(voucherInfo,\"ImprestBalanceAmount\") && <div className=\"item\"><div className=\"label paddingtop\">备用金金额:</div><div className=\"content paddingtop\">{getFixedNumber(InitialAmount + (!!bhistory?ImprestAmount:parseFloat(getFixedNumber(this.state.amountChange))))}</div></div>}\n {this.checkItemVisible(voucherInfo,\"Memo\") && <div className=\"item\"><div className=\"label paddingtop\">备注:</div><div className=\"content demo paddingtop\">{Memo}</div></div>}\n </div>\n <div className={this.state.showInput?'showgap':'notshowinput'}></div>\n <div ref={ref => this.hiddenDiv = ref} className={this.state.showInput?'showinput':'notshowinput'}></div>\n </div>);\n\t}\n}"]}
1
+ {"version":3,"sources":["tplus-portaltouch/components/dutyandsettle/dutysettlebill.js"],"names":["TabPane","Tabs","observer","props","_val","tabClick","key","handleChange","value","setState","plusminus","amountChange","Math","abs","state","onImprestAmountChange","onChange","val","isNaN","parseFloat","change","keyboardOnOk","e","inputTarget","input","blur","Keyboard","close","keyboardOnClose","renderVisibleData","voucherInfo","bsupport","IsEnableUMember","IsCommerce","RetailAmount","OnlineSalesAmount","CreditAmount","PaymentCreditAmount","ReturnAmount","GiveChangeForStorage","StorageAmount","WipeChange","OnlineAmount","CashOutAmount","CouponsDeduct","CouponsAmount","TotalCount","Price","TotalCustom","IntegralExchangeCount","SalesStorageTotalAmount","ReturnIntegralExchangeCount","DepositTotalAmount","PrepaidTotalAmount","DebtTotalAmount","DeliveryTotalAmount","enumController","getEnumOj","Differentiate","localStore","get","presale","PreSellOrBook","loginInfo","divs","item","info","Name","Visible","push","creditSalesEnabled","creditSalesPaymentMethod","isNewRetailBCPosTC","COUPON","length","renderHeadData","type","Code","POSCode","POSName","POS","Maker","showInput","platform","bill","bhistory","isHorizontalPad","cashierCheckAccount","TStore","restore","storeName","bPosDaily","BY_POS","showAmount","WorkingDate","WorkingTime","StartDate","StartTime","ShiftDate","ShiftTime","InitialAmount","ImprestAmount","ShiftVoucherDetails","Memo","DailyDetails","StoragePresentAmount","StorageTotalAmount","timecontent","format","DateFormat2","DateFormat","rdetials","detials","detail","name","SettleStyle","origamount","OrigAmount","amount","Amount","MemberDepositAmount","TotalOrigAmount","TotalAmount","NativeTitle","columns","title","dataIndex","width","fixed","className","data","data1","data2","datas","index","omission","textAlign","sum","checkItemVisible","headers","display","target","ref","open","v","getNewValue","hiddenDiv","Component"],"mappings":"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","file":"dutysettlebill.js","sourcesContent":["import React, { Component } from 'react';\nimport classnames from 'classnames'\nimport _map from 'lodash/map';\nimport _each from 'lodash/each';\nimport _reduce from 'lodash/reduce';\nimport _concat from 'lodash/concat';\nimport _find from 'lodash/find';\nimport _slice from 'lodash/slice';\nimport _truncate from 'lodash/truncate';\nimport { Tabs, Table, Input } from 'antd';\nimport { observer } from 'mobx-react';\nimport moment from \"moment\";\nimport { Keyboard } from 'tplus-components-touch';\nimport { DateFormat, DateFormat2, getFixedNumber } from '../../dutyService';\nimport { PosInitData, TStore } from 'tplus-poslogin';\nimport { platform, enumController } from 'mutants-util';\nimport { localStore } from 'mutants-microfx';\n\nconst TabPane = Tabs.TabPane;\n\n@observer\nexport default class extends Component {\n _val=0\n\tconstructor(props) {\n super(props);\n this.state={\n plusminus:\"1\",\n amountChange:0,\n change:0,\n showInput:false,\n };\n const { isNewRetailBCPosTC } = platform || {};\n this.isNewRetailBCPosTC = !!isNewRetailBCPosTC;\n\t}\n\n\n\tcomponentDidMount() {\n\n\t}\n\n tabClick=(key)=>{\n\n }\n\n handleChange=(value)=>{\n this.setState({\n plusminus:value,\n amountChange:Math.abs(this.state.amountChange) * value\n });\n this.props.onImprestAmountChange && this.props.onImprestAmountChange(Math.abs(this.state.amountChange) * value);\n }\n\n onChange=(val)=>{\n let value=val;\n if(isNaN(val) || parseFloat(val)>=100000000000){\n value = this._val;\n }else{\n this._val = val;\n }\n let change=parseFloat(this.state.plusminus) * parseFloat(value||0);\n this.setState({\n change:value,\n amountChange:change\n });\n this.props.onImprestAmountChange && this.props.onImprestAmountChange(change);\n }\n\n keyboardOnOk = (e) => {\n this.inputTarget.input.blur();\n Keyboard.close();\n }\n\n keyboardOnClose = (e) => {\n this.inputTarget.input.blur();\n Keyboard.close();\n }\n\n renderVisibleData =(voucherInfo,bsupport,IsEnableUMember,IsCommerce,RetailAmount, OnlineSalesAmount,CreditAmount, PaymentCreditAmount,ReturnAmount,GiveChangeForStorage,StorageAmount,WipeChange,OnlineAmount,CashOutAmount,CouponsDeduct,CouponsAmount,TotalCount,Price,TotalCustom,IntegralExchangeCount,SalesStorageTotalAmount,ReturnIntegralExchangeCount,DepositTotalAmount, PrepaidTotalAmount, DebtTotalAmount, DeliveryTotalAmount)=>{\n const { Differentiate } = enumController.getEnumOj();\n const { presale, loginInfo: { PreSellOrBook } } = localStore.get('user') || {};\n \n let divs=[];\n let item=_find(voucherInfo,(info)=>{return info.Name==\"RetailAmount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>销售金额</div><div>{getFixedNumber(RetailAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"OnlineSalesAmount\"});\n if((!item || item.Visible)){\n divs.push(<div className=\"content\"><div>线上销售金额</div><div>{getFixedNumber(OnlineSalesAmount)}</div></div>);\n }\n // 开启赊销\n let creditSalesEnabled = PosInitData(\"creditSalesEnabled\");\n // 收款方式为pos端收款\n let creditSalesPaymentMethod = PosInitData(\"creditSalesPaymentMethod\");\n item=_find(voucherInfo,(info)=>{return info.Name==\"CreditAmount\"});\n if((!item || item.Visible) && creditSalesEnabled && this.isNewRetailBCPosTC){\n divs.push(<div className=\"content\"><div>挂账金额</div><div>{getFixedNumber(CreditAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"PaymentCreditAmount\"});\n if((!item || item.Visible) && creditSalesEnabled && creditSalesPaymentMethod === \"BY_CASHIER\" && this.isNewRetailBCPosTC){\n divs.push(<div className=\"content\"><div>挂账收款金额</div><div>{getFixedNumber(PaymentCreditAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"ReturnAmount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>退货金额</div><div>{getFixedNumber(ReturnAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"NetSalesAmount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>净销售金额</div><div>{getFixedNumber(RetailAmount + ReturnAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"GiveChangeForStorage\"});\n if((!item || item.Visible) && bsupport ){\n divs.push(<div className=\"content\"><div>找零转储值</div><div>{getFixedNumber(GiveChangeForStorage)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"WipeChange\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>抹零</div><div>{getFixedNumber(WipeChange)}</div></div>);\n }\n //预订金额\n item=_find(voucherInfo,(info)=>{return info.Name==\"DepositTotalAmount\"});\n if((!item || item.Visible) && (PreSellOrBook != 'DISABLED')){\n divs.push(<div className=\"content\"><div>{presale+'金额'}</div><div>{getFixedNumber(DepositTotalAmount)}</div></div>);\n }\n //订金,启用预售不展示\n item=_find(voucherInfo,(info)=>{return info.Name==\"PrepaidTotalAmount\"});\n if((!item || item.Visible) && PreSellOrBook == 'BOOK'){\n divs.push(<div className=\"content\"><div>订金</div><div>{getFixedNumber(PrepaidTotalAmount)}</div></div>);\n }\n //欠款,启用预售不展示\n item=_find(voucherInfo,(info)=>{return info.Name==\"DebtTotalAmount\"});\n if((!item || item.Visible) && PreSellOrBook == 'BOOK'){\n divs.push(<div className=\"content\"><div>欠款</div><div>{getFixedNumber(DebtTotalAmount)}</div></div>);\n }\n //预订取货金额\n item=_find(voucherInfo,(info)=>{return info.Name==\"DeliveryTotalAmount\"});\n if((!item || item.Visible) && (PreSellOrBook != 'DISABLED')){\n divs.push(<div className=\"content\"><div>{presale+'取货金额'}</div><div>{getFixedNumber(DeliveryTotalAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"OnlineAmount\"});\n if ((!item || item.Visible) && (IsEnableUMember || IsCommerce || true)) {\n divs.push(<div className=\"content\"><div>线上收款金额</div><div>{getFixedNumber(OnlineAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"CashOutAmount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>抵现销售金额</div><div>{getFixedNumber(CashOutAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"SalesStorageTotalAmount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>储值销售金额</div><div>{getFixedNumber(SalesStorageTotalAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"CouponsDeduct\"});\n item=_find(voucherInfo,(info)=>{return info.Name==\"CouponsAmount\"});\n if((!item || item.Visible) && (IsEnableUMember || IsCommerce || true) ){\n divs.push(<div className=\"content\"><div>{Differentiate.COUPON}抵扣</div><div>{getFixedNumber(CouponsAmount)}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"TotalCount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>水单总数</div><div>{TotalCount || 0}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"IntegralExchangeCount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>积分兑换笔数</div><div>{IntegralExchangeCount || 0}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"ReturnIntegralExchangeCount\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>积分兑换退货笔数</div><div>{ReturnIntegralExchangeCount || 0}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"Price\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>客单价</div><div>{getFixedNumber(Price,PosInitData('PricePrecision'))}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"TotalCustom\"});\n if(!item || item.Visible){\n divs.push(<div className=\"content\"><div>来客数量</div><div>{TotalCustom || 0}</div></div>);\n }\n if(divs.length % 2 !=0){\n divs.push(<div className=\"content\"><div>{\" \"}</div><div>{\" \"}</div></div>);\n }\n\n return divs;\n }\n\n renderHeadData =(voucherInfo,type,Code,Name,POSCode,POSName,POS,Maker)=>{\n let divs=[];\n let item=_find(voucherInfo,(info)=>{return info.Name==\"Code\"});\n if(!item || item.Visible){\n divs.push(<div className=\"item\"><div className=\"label\">{type=='offDuty'?\"交班单号:\":\"日结单号:\"}</div><div className=\"content\">{Code}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"Store\"});\n if(!item || item.Visible){\n divs.push(<div className=\"item\"><div className=\"label\">门店:</div><div className=\"content\">{Name}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"POSCode\"});\n if(!item || item.Visible){\n divs.push(<div className=\"item\"><div className=\"label\">POS编码:</div><div className=\"content\">{POSCode}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"POSName\"});\n if(!item || item.Visible){\n divs.push(<div className=\"item\"><div className=\"label\">POS名称:</div><div className=\"content\">{POSName || POS}</div></div>);\n }\n item=_find(voucherInfo,(info)=>{return info.Name==\"Maker\"});\n if(!item || item.Visible){\n divs.push(<div className=\"item\"><div className=\"label\">收银员:</div><div className=\"content\">{Maker}</div></div>);\n }\n return divs;\n }\n\n checkItemVisible(voucherInfo,key){\n let item=_find(voucherInfo,(info)=>{return info.Name==key});\n return (!item || item.Visible);\n }\n\n\trender() {\n let { bill, bhistory,type,voucherInfo } = this.props;\n const {isHorizontalPad} = platform || {};\n const { cashierCheckAccount } = enumController.getEnumOj();\n let Name= TStore.restore().storeName;\n //let UserName=PosInitData('UserName');\n let IsEnableUMember = PosInitData('IsEnableUMember');\n let IsCommerce = PosInitData('ECommerce'); //是否开启电商\n let bPosDaily = PosInitData('POSCheckWays') == cashierCheckAccount.BY_POS;\n let bsupport=false;\n let showAmount= (type=='offDuty' && !bPosDaily) || (type!='offDuty' && bPosDaily);\n // let { Code,POSCode, POSName, Store:{ Name }={},UserName,WorkingDate, WorkingTime,\n let { Maker,Code,POSCode, POSName,POS, WorkingDate, WorkingTime, StartDate, StartTime,ShiftDate,ShiftTime,WipeChange,\n RetailAmount, OnlineSalesAmount ,CreditAmount, PaymentCreditAmount, ReturnAmount, GiveChangeForStorage,StorageAmount,CashOutAmount,CouponsAmount,CouponsDeduct,TotalCount,Price,\n InitialAmount=0,ImprestAmount=0, ShiftVoucherDetails=[],Memo,DailyDetails=[],TotalCustom,OnlineAmount,IntegralExchangeCount,SalesStorageTotalAmount, StoragePresentAmount,StorageTotalAmount,ReturnIntegralExchangeCount,\n DepositTotalAmount, PrepaidTotalAmount, DebtTotalAmount, DeliveryTotalAmount,\n } = bill || {};\n let timecontent= <span><p>{moment(WorkingDate || StartDate).format(DateFormat2) +' '+ (WorkingTime || StartTime) +' 至'}</p><p>{ShiftTime?moment(ShiftDate).format(DateFormat2)+' '+ShiftTime:moment().format(DateFormat)}</p></span>;\n let rdetials=_concat(ShiftVoucherDetails,DailyDetails);\n let detials=[];\n _each(rdetials,(detail)=>{\n detials.push({\n name:detail.SettleStyle.Name,\n origamount:detail.OrigAmount,\n amount:detail.Amount,\n MemberDepositAmount:detail.MemberDepositAmount,\n TotalOrigAmount:detail.TotalOrigAmount,\n TotalAmount:detail.TotalAmount,\n });\n if(detail.NativeTitle){\n detials.push({\n name:detail.NativeTitle,\n origamount:detail.Amount,\n amount:0,\n TotalOrigAmount:detail.TotalAmount,\n TotalAmount:0\n });\n }\n });\n let columns=[{\n title:\"结算方式/收入类型\",\n dataIndex:\"type\",\n key:\"type\",\n width:150,\n fixed: 'left',\n className:\"column\",\n }];\n let data={};\n let data1={};\n let data2={};\n data.type=\"零售收款金额\";\n data1.type=\"会员充值金额(本金)\";\n // data2.type=\"储值总额\";\n // data3.type=\"储值本金\";\n // data4.type=\"储值赠送金\";\n data2.type=\"合计\";\n let datas=[];\n _each(detials,(detail,index)=>{\n columns.push({\n title:detail.name.length>11?(_truncate(detail.name,{length:6,omission:''})+'...'):detail.name,//detail.name,\n dataIndex:\"data\"+index,\n key:\"data\"+index,\n width:150,\n textAlign:'right',\n className:\"column\",\n });\n data[\"data\"+index]=getFixedNumber(detail.origamount);\n data1[\"data\"+index]=getFixedNumber(detail.MemberDepositAmount || 0);\n data2[\"data\"+index]=getFixedNumber(detail.TotalOrigAmount||0);\n })\n columns.push({\n title:\"合计\",\n dataIndex:\"total\",\n key:\"total\",\n width:100,\n textAlign:'right',\n className:\"column\",\n });\n data[\"total\"]=getFixedNumber(_reduce(detials,(sum,detail)=>{\n return sum + parseFloat(detail.amount);\n },0));\n data1[\"total\"]=getFixedNumber(_reduce(detials,(sum,detail)=>{\n return sum + parseFloat(detail.MemberDepositAmount||0);\n },0));\n data2[\"total\"]=getFixedNumber(_reduce(detials,(sum,detail)=>{\n return sum + parseFloat(detail.TotalOrigAmount||0);\n },0));\n\n if(this.checkItemVisible(voucherInfo,\"OrigAmount\")){\n datas.push(data);\n }\n if(this.checkItemVisible(voucherInfo,\"MemberDepositAmount\")){\n datas.push(data1);\n }\n if(this.checkItemVisible(voucherInfo,\"TotalOrigAmount\")){\n datas.push(data2);\n }\n let divs=this.renderVisibleData(voucherInfo,bsupport,IsEnableUMember,IsCommerce,RetailAmount, OnlineSalesAmount,CreditAmount, PaymentCreditAmount,\n ReturnAmount,GiveChangeForStorage,StorageAmount,WipeChange,OnlineAmount,CashOutAmount,CouponsDeduct,CouponsAmount,\n TotalCount,Price,TotalCustom,IntegralExchangeCount,SalesStorageTotalAmount,ReturnIntegralExchangeCount,DepositTotalAmount, PrepaidTotalAmount, DebtTotalAmount, DeliveryTotalAmount);\n let headers=this.renderHeadData(voucherInfo,type,Code,Name,POSCode,POSName,POS,Maker);\n return (<div className=\"offDuty\">\n <div className=\"header\">\n {_map(headers,(item)=>{\n return item;\n })}\n\n <div className=\"item\"><div className=\"label\">时间:</div><div className=\"content\">{!(WorkingDate || StartDate)?'':timecontent}</div></div>\n </div>\n <div className={classnames({\"body\":true,'bodyP':!bhistory})}>\n <Tabs defaultActiveKey=\"1\" onChange={this.tabClick}>\n <TabPane tab=\"收银统计\" key=\"1\">\n <div className={classnames({\"cashstat\":true,\"cashstatP\":!bhistory})}>\n <Table\n columns={columns}\n dataSource={datas}\n pagination={false}/>\n </div>\n </TabPane>\n <TabPane tab=\"销售看板\" key=\"2\">\n <div className={classnames({\"salestat\":true,\"salestatP\":!bhistory})}>\n <div className=\"stat\">\n <div className=\"title\"><div>销售数据</div><div>金额</div></div>\n {_map(_slice(divs,0,divs.length/2 + 1),(item)=>{\n return item;\n })}\n\n\n </div>\n <div className=\"stat\">\n <div className=\"title\"><div>销售数据</div><div>金额</div></div>\n {_map(_slice(divs,divs.length/2 + 1),(item)=>{\n return item;\n })}\n\n </div>\n </div>\n </TabPane>\n </Tabs>\n </div>\n <div className=\"footer\">\n {showAmount && this.checkItemVisible(voucherInfo,\"InitialAmount\") && <div className=\"item\"><div className=\"label paddingtop\">备用金初始金额:</div><div className=\"content paddingtop\">{getFixedNumber(InitialAmount)}</div></div>}\n {showAmount && this.checkItemVisible(voucherInfo,\"ImprestAmount\") && <div className=\"item\" style={{display:bhistory?'none':'inline-block'}}>\n <div className=\"label paddingtop\">备用金:</div>\n <div className=\"content content2\">\n <div className=\"plusminus\">\n <button className={classnames({\"selected\":this.state.plusminus==\"1\"})} onClick={()=>this.handleChange(1)}>增</button>\n <button className={classnames({\"selected\":this.state.plusminus==\"-1\"})} onClick={()=>this.handleChange(-1)}>减</button>\n </div>\n <div className=\"amountchange\">\n <Input\n type='text'\n onChange={(e) => this.onChange(e.target.value)}\n value={this.state.change}\n ref={ref => this.inputTarget = ref}\n onFocus={\n (e)=>{\n this.setState({showInput:true});\n Keyboard.open(\n (v)=>{\n const value = Keyboard.getNewValue(this.inputTarget.input, this.inputTarget.input.value, v);\n this.onChange(value);\n },\n this.keyboardOnOk,\n this.keyboardOnClose\n )();\n }\n }\n onBlur={(e)=>{\n this.setState({showInput:false});\n Keyboard.close();\n this.setState({change:getFixedNumber(this.state.change)});\n }}\n />\n </div>\n </div>\n </div>}\n {showAmount && this.checkItemVisible(voucherInfo,\"ImprestBalanceAmount\") && <div className=\"item\"><div className=\"label paddingtop\">备用金金额:</div><div className=\"content paddingtop\">{getFixedNumber(InitialAmount + (!!bhistory?ImprestAmount:parseFloat(getFixedNumber(this.state.amountChange))))}</div></div>}\n {this.checkItemVisible(voucherInfo,\"Memo\") && <div className=\"item\"><div className=\"label paddingtop\">备注:</div><div className=\"content demo paddingtop\">{Memo}</div></div>}\n </div>\n <div className={this.state.showInput?'showgap':'notshowinput'}></div>\n <div ref={ref => this.hiddenDiv = ref} className={this.state.showInput?'showinput':'notshowinput'}></div>\n </div>);\n\t}\n}"]}
@@ -67,9 +67,9 @@ var t = _mutantsMicrofx.i18n.getFixedT(null, 'newretail');
67
67
  var UPLOAD_BASE_PATH = '/login';
68
68
  var NETWORK_THEME_PATH = "/";
69
69
  var PLACE_ORDER_PATH = "/RE/RE01";
70
- var weakRemindNum = 0; // 弱网提示初始值
71
70
  var WEAK_STANDARD_NUM = 3; // 弱网提示的次数上限
72
-
71
+ var weakRemindNum = 0; // 弱网提示初始值
72
+ var hasRouterListenInit = false; // 路由监听判断flag
73
73
  //头部时间
74
74
  function HeadTime(props) {
75
75
  var time = props.time,
@@ -661,11 +661,19 @@ function HeadContent(props, context) {
661
661
  isPlaceOrderPage = _useState18[0],
662
662
  setIsPlaceOrderPage = _useState18[1];
663
663
 
664
- props.history.listen(function (route) {
664
+ HeadContent.setStatusByRouter = function (route) {
665
665
  setIsResetNetWorkTheme(route.pathname === NETWORK_THEME_PATH);
666
666
  setIsShowUploadBtnsByRouter(route.pathname.indexOf(UPLOAD_BASE_PATH) < 0);
667
667
  setIsPlaceOrderPage(route.pathname.indexOf(PLACE_ORDER_PATH) > -1);
668
- });
668
+ };
669
+ // 加一个标识,否则每次render都会新增一个路由监听
670
+ if (!hasRouterListenInit) {
671
+ props.history.listen(function (route) {
672
+ // 提取到一个全局里面,否则每次触发的set方法都是第一次的
673
+ HeadContent.setStatusByRouter(route);
674
+ });
675
+ }
676
+ hasRouterListenInit = true;
669
677
  var hasUseOffline = (0, _tplusPoslogin.PosInitData)('IsOfflineCash') === "1" && !_mutantsUtil.platform.otherOfflineStatus; //是否允许离线
670
678
  var menuProps = { onClick: onClick };
671
679
  var menus = _react2.default.createElement(
@@ -719,26 +727,24 @@ function HeadContent(props, context) {
719
727
  _context4.prev = 2;
720
728
  _context4.next = 5;
721
729
  return _tplusApi.User.logout(function () {
730
+ // logout 内部一个方法缺少await,所以采用传入回调函数的方法,而不是写在 finally
722
731
  // 需要为500ms 时间短可能会不能正常注销清理
723
- setTimeout(function () {
724
- _mutantsMicrofx.nativeMs.doWindow(item.event);
725
- }, 500);
732
+ clearEndExe(item.event);
726
733
  });
727
734
 
728
735
  case 5:
729
- _context4.next = 12;
736
+ _context4.next = 13;
730
737
  break;
731
738
 
732
739
  case 7:
733
740
  _context4.prev = 7;
734
741
  _context4.t0 = _context4['catch'](2);
735
742
 
743
+ console.log(_context4.t0, 'User.logout()');
736
744
  _tplusApi.User.clear();_mutantsMicrofx.localStore.remove('user');
737
- setTimeout(function () {
738
- _mutantsMicrofx.nativeMs.doWindow(item.event);
739
- }, 500);
745
+ clearEndExe(item.event);
740
746
 
741
- case 12:
747
+ case 13:
742
748
  case 'end':
743
749
  return _context4.stop();
744
750
  }
@@ -749,7 +755,37 @@ function HeadContent(props, context) {
749
755
  });
750
756
  }
751
757
  }];
758
+ var clearEndExe = function clearEndExe(_eType) {
759
+ setTimeout(function () {
760
+ closeNativeWindow(_eType);
761
+ }, 1000);
762
+ };
752
763
 
764
+ //执行关闭客户端
765
+ var closeNativeWindow = function closeNativeWindow(_event) {
766
+ try {
767
+ _mutantsMicrofx.nativeMs.doWindow(_event);
768
+ } catch (e) {
769
+ console.log('执行关闭客户端失败,强制执行destroyWindow', e);
770
+ } finally {
771
+ destroyWindow();
772
+ }
773
+ };
774
+ //强制关闭客户端
775
+ var destroyWindow = function destroyWindow() {
776
+ try {
777
+ var wb = window.CommonLib;
778
+ if (wb) {
779
+ var remote = wb.electron.remote;
780
+
781
+ var win = remote && remote.getCurrentWindow();
782
+ win && win.destroy();
783
+ console.log(wb, win, 'win.destroy');
784
+ }
785
+ } catch (e) {
786
+ console.log('强制关闭客户端失败', e);
787
+ }
788
+ };
753
789
  var splitUser = function splitUser(value) {
754
790
  var regEmail = new RegExp('^[A-Za-zd0-9]+([-_.][A-Za-zd0-9]+)*@([A-Za-zd0-9]+[-.])+[A-Za-zd]{2,5}$');
755
791
  var isEmail = regEmail.test(value);
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-portaltouch/components/header/headContent.js"],"names":["HeadContent","Item","Menu","defaultFromat","t","i18n","getFixedT","UPLOAD_BASE_PATH","NETWORK_THEME_PATH","PLACE_ORDER_PATH","weakRemindNum","WEAK_STANDARD_NUM","HeadTime","props","time","dateFormat","unMount","timeStr","Date","now","currentTime","setCurrentTime","timeout","refreshDate","setTimeout","clearTimeout","split","date_YMD","date_HMS","platform","isVerticalTouch","OnLineStatus","networkStatus","networkCheckStore","stores","networkState","networkOn","iconName","switchNetwork","checked","event","switchOnLine","lineIcon","marginRight","getIsOffNetWork","OnLineStatusToggle","isShowUploadBtnsByRouter","isResetNetWorkTheme","isOfflineCash","isPlaceOrderPage","offlineSys","voucherStore","isOnLine","hasUseOffline","otherOfflineStatus","isHorizontalSunMi","weakConfirm","document","querySelector","getDataIsOffline","ModalWraper","confirm","className","title","content","onOk","setOffLine","switchStatus","Message","tip","getVoucherDataStatus","data","getVoucherData","Idmember","RetailDetails","length","status","playStatus","setIsOffline","clearVoucherData","color","OFFLINE_POINT_DESC","RetailUpload","isModalVisible","setIsModalVisible","isUpLoading","setIsUpLoading","refModal","showModal","current","fetch","handleOk","isUpLoad","uploadRetail","error","handleCancel","UnLoadNum","retailNotUploadNumber","display","RetailDownload","isDownload","setIsDownload","downStr","setDownStr","handleDownLoad","downloadCatcherData","e","percent","result","success","DownloadBtn","releaseDate","releaseVersion","__RELEASESDATE__","__BUILDVERSION__","context","isElectron","env","businessName","storeName","posCode","logo","style","history","solt","isPortal","isLogin","menu","onClick","location","themeVisible","setThemeVisible","window","href","indexOf","setIsShowUploadBtnsByRouter","pathname","setIsResetNetWorkTheme","setIsPlaceOrderPage","listen","route","menuProps","menus","map","item","i","key","icon","controlConfig","type","beforeEvent","Loading","show","node","delay","actionHook","actionChange","User","logout","nativeMs","doWindow","clear","localStore","remove","splitUser","value","regEmail","RegExp","isEmail","test","setInventoryFocus","isHorizontalPad","doms","getElementsByClassName","input","getElementById","console","log","focus","clickTheme","isShow","userName","overlayClassName","moreInfoNode","headControlNode","v","width","height","replace","preventDefault","contextTypes","PropTypes","object"],"mappings":"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","file":"headContent.js","sourcesContent":["import React, { useState, useEffect, useRef } from 'react';\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\";\nlet weakRemindNum = 0;// 弱网提示初始值\nconst WEAK_STANDARD_NUM = 3; // 弱网提示的次数上限\n\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 props.history.listen(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 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(() => {\n // 需要为500ms 时间短可能会不能正常注销清理\n setTimeout(() => { nativeMs.doWindow(item.event) }, 500); \n });\n } catch (err) {\n User.clear(); localStore.remove('user');\n setTimeout(() => { nativeMs.doWindow(item.event) }, 500);\n }\n }\n })\n }\n },\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":"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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"]}
@@ -86,6 +86,8 @@ var _stores2 = _interopRequireDefault(_stores);
86
86
 
87
87
  var _index = require('../../utils/index');
88
88
 
89
+ var _tplusPoslogin = require('tplus-poslogin');
90
+
89
91
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
90
92
 
91
93
  var hasElectron = _mutantsMicrofx.env.platform === _mutantsMicrofx.env.constant.platform.electron;
@@ -525,12 +527,16 @@ var MainContainer = (0, _mobxReact.observer)(_class = (_temp = _class2 = functio
525
527
  var isPortal = !!portalHead.length;
526
528
  var isLogin = !!loginHead.length;
527
529
  var isRetailOrder = !!retailOrder.length;
530
+ var headMenus = [{ title: '注销', key: 'logout', icon: 'zhuxiao' }];
531
+ if (_tplusPoslogin.vistorValidate.isNormal()) {
532
+ headMenus.push({ title: '修改密码', key: 'modifypass', icon: 'suoping' });
533
+ }
528
534
  var headProps = {
529
535
  logo: this.logoNode(logoUrl, isPortal, isLogin),
530
536
  businessName: '',
531
537
  storeName: '',
532
538
  dateFormat: 'yyyy年MM月dd日 hh:mm:ss',
533
- menu: [{ title: '注销', key: 'logout', icon: 'zhuxiao' }, { title: '修改密码', key: 'modifypass', icon: 'suoping' }],
539
+ menu: headMenus,
534
540
  onClick: this.headMenuSelect
535
541
  };
536
542
  if (storeInfo) {