tplus-components-touch 1.25.8 → 1.25.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (170) hide show
  1. package/README.md +16 -16
  2. package/dist/components/addLog/AddLogProcessor.js +6 -6
  3. package/dist/components/addLog/AddLogProcessor.js.map +1 -1
  4. package/dist/components/addLog/OperationLogApi.js +3 -3
  5. package/dist/components/addLog/OperationLogApi.js.map +1 -1
  6. package/dist/components/autoComplete/index.js +14 -14
  7. package/dist/components/autoComplete/index.js.map +1 -1
  8. package/dist/components/autoComplete/index.less +89 -89
  9. package/dist/components/autoComplete/option.js.map +1 -1
  10. package/dist/components/autoCompleteWithKeyboard/index.js +14 -14
  11. package/dist/components/autoCompleteWithKeyboard/index.js.map +1 -1
  12. package/dist/components/autoCompleteWithKeyboard/index.less +4 -4
  13. package/dist/components/billSearch/api.js +26 -26
  14. package/dist/components/billSearch/api.js.map +1 -1
  15. package/dist/components/billSearch/index.js +6 -6
  16. package/dist/components/billSearch/index.js.map +1 -1
  17. package/dist/components/billSearch/index.less +573 -573
  18. package/dist/components/cloudPrint/BTPrintFormatUtil.js +17 -17
  19. package/dist/components/cloudPrint/BTPrintFormatUtil.js.map +1 -1
  20. package/dist/components/cloudPrint/api.js.map +1 -1
  21. package/dist/components/cloudPrint/index.js +4 -0
  22. package/dist/components/cloudPrint/index.js.map +1 -1
  23. package/dist/components/cloudPrint/printDispatch.js +20 -21
  24. package/dist/components/cloudPrint/printDispatch.js.map +1 -1
  25. package/dist/components/commonForm/autoComplete/index.js.map +1 -1
  26. package/dist/components/commonForm/autoComplete/style.less +7 -7
  27. package/dist/components/commonForm/datePicker/index.js.map +1 -1
  28. package/dist/components/commonForm/datePicker/style.less +10 -10
  29. package/dist/components/commonForm/formControl/index.js +7 -7
  30. package/dist/components/commonForm/formControl/index.js.map +1 -1
  31. package/dist/components/commonForm/formControl/style.less +7 -7
  32. package/dist/components/commonForm/index.js +4 -4
  33. package/dist/components/commonForm/index.js.map +1 -1
  34. package/dist/components/commonForm/inputNumber/index.js.map +1 -1
  35. package/dist/components/commonForm/inputNumber/style.less +16 -16
  36. package/dist/components/commonForm/radio/index.js.map +1 -1
  37. package/dist/components/commonForm/radio/style.less +10 -10
  38. package/dist/components/commonForm/style.less +11 -11
  39. package/dist/components/deliverySearch/api.js +21 -21
  40. package/dist/components/deliverySearch/api.js.map +1 -1
  41. package/dist/components/deliverySearch/index.js +6 -6
  42. package/dist/components/deliverySearch/index.js.map +1 -1
  43. package/dist/components/deliverySearch/index.less +623 -623
  44. package/dist/components/form/index.js.map +1 -1
  45. package/dist/components/hotKey/config.js +23 -23
  46. package/dist/components/hotKey/config.js.map +1 -1
  47. package/dist/components/hotKey/hotKeyModal.js.map +1 -1
  48. package/dist/components/hotKey/index.js +26 -26
  49. package/dist/components/hotKey/index.js.map +1 -1
  50. package/dist/components/hotKey/localConfig.js.map +1 -1
  51. package/dist/components/hotKey/style.less +99 -99
  52. package/dist/components/hotKey/utils.js.map +1 -1
  53. package/dist/components/input/index.js +6 -6
  54. package/dist/components/input/index.js.map +1 -1
  55. package/dist/components/input/style.less +107 -107
  56. package/dist/components/input/tplusInput/index.js +30 -30
  57. package/dist/components/input/tplusInput/index.js.map +1 -1
  58. package/dist/components/input/tplusInput/inputContent.js.map +1 -1
  59. package/dist/components/input/tplusInput/inputs.js +7 -7
  60. package/dist/components/input/tplusInput/inputs.js.map +1 -1
  61. package/dist/components/input/tplusInput/style.less +194 -194
  62. package/dist/components/input/utils/index.js.map +1 -1
  63. package/dist/components/inventorySearch/api.js +58 -58
  64. package/dist/components/inventorySearch/api.js.map +1 -1
  65. package/dist/components/inventorySearch/index.js +3 -3
  66. package/dist/components/inventorySearch/index.js.map +1 -1
  67. package/dist/components/inventorySearch/index.less +243 -243
  68. package/dist/components/inventorySearch/store.js.map +1 -1
  69. package/dist/components/inventorySearch/tab.js.map +1 -1
  70. package/dist/components/keyboard/index.js.map +1 -1
  71. package/dist/components/keyboard/index.less +555 -555
  72. package/dist/components/keyboard/letterKeyboard.js +2 -2
  73. package/dist/components/keyboard/letterKeyboard.js.map +1 -1
  74. package/dist/components/keyboard/numKeyboard.js +4 -4
  75. package/dist/components/keyboard/numKeyboard.js.map +1 -1
  76. package/dist/components/keyboard/numKeyboardDigit.js +4 -4
  77. package/dist/components/keyboard/numKeyboardDigit.js.map +1 -1
  78. package/dist/components/keyboard/numKeyboardScan.js.map +1 -1
  79. package/dist/components/keyboard/numberButtonInteger.js +5 -5
  80. package/dist/components/keyboard/numberButtonInteger.js.map +1 -1
  81. package/dist/components/keyboard/numberButton_input.js +5 -5
  82. package/dist/components/keyboard/numberButton_input.js.map +1 -1
  83. package/dist/components/keyboard/onlyKeyboard.js +7 -7
  84. package/dist/components/keyboard/onlyKeyboard.js.map +1 -1
  85. package/dist/components/keyboard/onlyLetterButton.js +2 -2
  86. package/dist/components/keyboard/onlyLetterButton.js.map +1 -1
  87. package/dist/components/keyboard/onlyLetterButton2.js +2 -2
  88. package/dist/components/keyboard/onlyLetterButton2.js.map +1 -1
  89. package/dist/components/keyboard/onlyLetterButton2.less +183 -183
  90. package/dist/components/keyboard/onlyNumberButton.js +2 -2
  91. package/dist/components/keyboard/onlyNumberButton.js.map +1 -1
  92. package/dist/components/keyboard/onlyNumberButton2.js +3 -3
  93. package/dist/components/keyboard/onlyNumberButton2.js.map +1 -1
  94. package/dist/components/keyboard/textKeyboard.js.map +1 -1
  95. package/dist/components/layout/hamburger.js.map +1 -1
  96. package/dist/components/layout/index.js +10 -10
  97. package/dist/components/layout/index.js.map +1 -1
  98. package/dist/components/layout/layout.js.map +1 -1
  99. package/dist/components/layout/sider.js +12 -12
  100. package/dist/components/layout/sider.js.map +1 -1
  101. package/dist/components/layout/style.less +83 -83
  102. package/dist/components/loading/index.js +15 -15
  103. package/dist/components/loading/index.js.map +1 -1
  104. package/dist/components/loading/loadingContent.js.map +1 -1
  105. package/dist/components/loading/style.less +51 -51
  106. package/dist/components/loading/utils.js.map +1 -1
  107. package/dist/components/message/index.js +8 -8
  108. package/dist/components/message/index.js.map +1 -1
  109. package/dist/components/message/index.less +150 -150
  110. package/dist/components/modal/index.js.map +1 -1
  111. package/dist/components/modal/index.less +19 -19
  112. package/dist/components/modalVertical/style.less +114 -114
  113. package/dist/components/modalWraper/style.less +363 -363
  114. package/dist/components/modalWraper/utils.js.map +1 -1
  115. package/dist/components/notification/index.js +4 -4
  116. package/dist/components/notification/index.js.map +1 -1
  117. package/dist/components/notification/index.less +57 -57
  118. package/dist/components/overflowTip/index.js +15 -15
  119. package/dist/components/overflowTip/index.js.map +1 -1
  120. package/dist/components/overflowTip/style.less +66 -66
  121. package/dist/components/page/index.js.map +1 -1
  122. package/dist/components/page/index.less +25 -25
  123. package/dist/components/product/detail.js.map +1 -1
  124. package/dist/components/product/getCard.js +5 -5
  125. package/dist/components/product/getCard.js.map +1 -1
  126. package/dist/components/product/index.less +354 -354
  127. package/dist/components/progressState/EmptyAndErrorView.js.map +1 -1
  128. package/dist/components/progressState/ProgressState.js +10 -10
  129. package/dist/components/progressState/ProgressState.js.map +1 -1
  130. package/dist/components/progressState/index.js.map +1 -1
  131. package/dist/components/progressState/style.less +65 -65
  132. package/dist/components/scan/index.js.map +1 -1
  133. package/dist/components/scan/index.less +33 -33
  134. package/dist/components/select/index.js.map +1 -1
  135. package/dist/components/select/index.less +11 -11
  136. package/dist/components/settlement/asyncModal.js.map +1 -1
  137. package/dist/components/settlement/index.js.map +1 -1
  138. package/dist/components/settlement/settlement.js +5 -5
  139. package/dist/components/settlement/settlement.js.map +1 -1
  140. package/dist/components/settlement/settlement.less +1604 -1604
  141. package/dist/components/settlement/settlementStore.js +10 -10
  142. package/dist/components/settlement/settlementStore.js.map +1 -1
  143. package/dist/components/settlement/utils.js.map +1 -1
  144. package/dist/components/socket/index.js +11 -11
  145. package/dist/components/socket/index.js.map +1 -1
  146. package/dist/components/spin/index.js +6 -6
  147. package/dist/components/spin/index.js.map +1 -1
  148. package/dist/components/spin/spin-style.less +436 -436
  149. package/dist/components/test/index.js +3 -3
  150. package/dist/components/test/index.js.map +1 -1
  151. package/dist/components/ticon/iconfont/demo_index.html +4765 -4765
  152. package/dist/components/ticon/iconfont/iconfont.css +811 -811
  153. package/dist/components/ticon/iconfont/iconfont.svg +572 -572
  154. package/dist/components/ticon/index.js.map +1 -1
  155. package/dist/components/touchScroll/index.js +9 -9
  156. package/dist/components/touchScroll/index.js.map +1 -1
  157. package/dist/components/touchTable/AuthProcess.js.map +1 -1
  158. package/dist/components/touchTable/generateWater.js.map +1 -1
  159. package/dist/components/touchTable/index.js +9 -9
  160. package/dist/components/touchTable/index.js.map +1 -1
  161. package/dist/components/touchTable/index.less +189 -189
  162. package/dist/components/touchTable/utils.js.map +1 -1
  163. package/dist/demo/PopOverDemo.js.map +1 -1
  164. package/dist/index.js.map +1 -1
  165. package/dist/util/tools.js.map +1 -1
  166. package/locales/zh/tplus-components-touch.json +1 -1
  167. package/locales/zh-CN/tplus-components-touch.json +1 -1
  168. package/mocks/memberInfo.json +79 -79
  169. package/package.json +38 -38
  170. package/tsconfig.json +26 -26
@@ -144,16 +144,16 @@ function _applyDecoratedDescriptor(target, property, decorators, descriptor, con
144
144
 
145
145
  var t = _mutantsMicrofx.i18n.getFixedT(null, 'newretail');
146
146
 
147
- /*
148
- 1,现金
149
- 93、积分储值卡
150
- 94、储值卡
151
- 99、积分抵现
152
- 995、 扫码收款
153
- 996、代金券
154
- 999、支付宝
155
- 998、微信
156
- 997、转账
147
+ /*
148
+ 1,现金
149
+ 93、积分储值卡
150
+ 94、储值卡
151
+ 99、积分抵现
152
+ 995、 扫码收款
153
+ 996、代金券
154
+ 999、支付宝
155
+ 998、微信
156
+ 997、转账
157
157
  */
158
158
  var PayStyle = exports.PayStyle = {
159
159
  xianjin: "1",
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-components-touch/components/settlement/settlementStore.js"],"names":["t","i18n","getFixedT","PayStyle","xianjin","jfczk","hyczk","jfdx","smzf","djq","zfb","wx","zz","BankNoType","PayIcon","PayIcon2","SettlementStore","paymode","dto","member","brefund","bquick","boriginReturn","newStyle","calculationIsXianJin","mode","bankNoType","undefined","paymentType","PayMode","localStore","get","isCheckDate","event","type","isProject","setPaymodes","updateEvent","context","amounthandler","datasource","storeinfo","amount","data","amountHandler","dataSource","storeInfo","viewModel","global","DealSingleRowAmountSettingProcessorBlock","execute","DealAmountSettingProcessorBlock","Member","setAmount","TotalTaxAmount","OnlinePaymentAmount","clean","JSON","getCellValue","initByOriginReturn","setModes","paymodes","p","thePaymodes","addPay","length","changeValue","paymethodId","RetailPaymentDetails","detail","themode","IdsettleStyle","newmode","genNewMode","Amount","authCode","PaymentCode","steadCashIntegral","SteadCashIntegral","overchargesAmount","OverchargesAmount","currentMode","RetailCouponDetails","addDjq","CouponCode","CouponTitle","ReductionAmount","EnableAmount","LastTS","push","RetailStorageDetails","StoragePaymentAmount","Password","balance","BalanceStorage","calcReserved","key","currentFocus","index","m","splice","addPayDirectly","IntegralSteadCashParams","Idmember","id","BalanceTaxAmount","value","then","result","Integral","v","errinfo","IdStore","storeID","StoreCode","storeCode","SearchParams","Key","IsSingleMember","parse","Data","ID","receivable","Math","max","message","CheckMemberStorageProcessorBlock","String","isNullOrEmpty","checkReceived","nextInput","document","querySelector","focus","sn","djqs","map","doorsill","obj","RetailDetails","forEach","item","Inventory","TaxAmount","request","Uid","uid","SN","Idstore","Inventories","d","Quantity","IsPresent","IdInventory","singleTotalAmount","IdUnit","Idunit","Code","FreeItem0","FreeItem1","FreeItem2","FreeItem3","FreeItem4","FreeItem5","FreeItem6","FreeItem7","FreeItem8","FreeItem9","InventoryClassCodes","InventoryClass","Receivable","maxamount","code","Message","info","IsRepelWithPoints","error","Title","ReduceAmount","StartAmount","UMemberID","name","checked","calcDjqValue","append","afterSetCurrentMode","parseFloat","setExchangable","MaxAmount","notwithm","counter","exchangeRate","calDirection","value2","value3","order","setMaxAmount","console","log","sum","q","Add","Minus","getViewItem","availableAmount","shouldSetValue","cashChange","giveChangeForStorage","blur","storage","change","istoChange","isNaN","pay","pos","wipechange","resolve","idmember","idStore","timeout_skip","ExpirationDate","stores","memberProjectStore","getLoginInfo","loginInfo","bTest","saveByPost","resp","IsSucceed","saveMember","save","DoNameList","DO_STORAGE_PRINT","DO_PROJECT_STORAGE_PRINT","StorageMutiSettleDetails","giveChange","abs","ExternalCode","Date","toArray","join","floor","random","StorageAmount","GiveChange","idSettleStyle","IdbankAccount","idBankAccount","DynamicPropertyKeys","DynamicPropertyValues","DataSource","Id","getMemberRetailDetail","ret","Storages","memberStore","setStoragesData","handleProjectStoragePrint","ModalWraper","warning","title","content","ErrorMsg","okText","okType","handlePrint","czkSum","IsOrigReturn","GiveChangeForStorageAmount","OrigAmount","GiveChangeForStorage","Idcurrency","idCurrency","ExchangeRate","IdMember","cut","setDtoID","RetailCode","Flag","pwd","Success","action","_counter","onlineamount","settle","hotKey","a","o","received","q1","calcReservedDjq","min","rawbalance","settleStyleType","modes","SettleStyles","Name","isDefault","IsDefaultSettleStyle","isQuick","QuickSettleStyles","orderBy","IdSettleStyle","IdBankAccount","Currency","CalDirection","observable","MemberType","cardNo","CardCode","needPwd","IsNeedPwd","NeedModifyPassword","bonusPoints","BalanceIntegral","exchangable"],"mappings":"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","file":"settlementStore.js","sourcesContent":["import { observable, computed, action, autorun, runInAction } from 'mobx'\r\nimport {stores,i18n,localStore} from 'mutants-microfx';\r\nimport _find from 'lodash/find';\r\nimport _remove from 'lodash/remove';\r\nimport _each from 'lodash/each';\r\nimport _map from 'lodash/map';\r\nimport _join from 'lodash/join';\r\nimport _trim from 'lodash/trim';\r\nimport _filter from 'lodash/filter';\r\nimport _findIndex from 'lodash/findIndex';\r\nimport _findLastIndex from 'lodash/findLastIndex';\r\nimport _findKey from 'lodash/findKey';\r\nimport { getFixedNumber } from './utils'\r\nimport {tApi} from 'tplus-api';\r\nimport Message from '../message';\r\nimport { platform,env } from 'mutants-util';\r\nimport { ModalWraper,printDispatch,DoNameList} from 'tplus-components-touch'\r\nconst t = i18n.getFixedT(null, 'newretail');\r\nimport { PosInitData } from 'tplus-poslogin';\r\n/*\r\n 1,现金\r\n 93、积分储值卡\r\n 94、储值卡\r\n 99、积分抵现\r\n 995、 扫码收款\r\n 996、代金券\r\n 999、支付宝\r\n 998、微信\r\n 997、转账\r\n */\r\nexport const PayStyle = {\r\n xianjin:\"1\",\r\n jfczk:\"93\",\r\n hyczk:\"94\",\r\n jfdx:\"99\",\r\n smzf:'995',\r\n djq:\"996\",//996\r\n zfb:\"999\",\r\n wx:\"998\",\r\n zz:\"997\",\r\n}\r\n\r\nexport const BankNoType = {\r\n xianjin:309\r\n}\r\n\r\nexport const PayIcon = {\r\n \"1\":\"xianjin2\",\r\n \"93\":\"chuzhiqia\",\r\n \"94\":\"chuzhiqia\",\r\n \"99\":\"jifendixian\",\r\n \"995\":\"saomashoukuan\",\r\n \"996\":\"daijinquan\",\r\n \"999\":\"zhifubao\",\r\n \"998\":\"weixin\",\r\n //\"997\":\"zhifubao\",\r\n \"gengduo\":\"gengduo2\",\r\n \"default\":\"moban1\"\r\n}\r\nexport const PayIcon2 = {\r\n \"1\":\"xianjinfanbai\",\r\n \"998\":\"weixinfanbai\",\r\n \"999\":\"zhifubaofanbai\",\r\n \"995\":\"saomafanbai\",\r\n \"chenggong\":\"zhifuchenggong\",\r\n \"94\":\"chuzhikakuai\",\r\n \"default\":\"mobanfanbai\"\r\n}\r\n\r\nexport default class SettlementStore {\r\n paymode = null\r\n dto=null\r\n member=null\r\n brefund=false\r\n context\r\n bquick=false;\r\n amountHandler\r\n dataSource\r\n storeInfo\r\n updateEvent\r\n\ttype\r\n boriginReturn=false\r\n newStyle=true//type==2\r\n cashChange\r\n giveChangeForStorage\r\n constructor(){\r\n this.paymode= new PayMode()\r\n this.newStyle=localStore && localStore.get('voucherDefaultPosMode')=='voucher';\r\n this.isCheckDate = true;\r\n }\r\n\r\n initPaymodes(event,type,isProject){\r\n this.paymode.setPaymodes(type);\r\n this.updateEvent=event;\r\n this.isProject= isProject;\r\n }\r\n\r\n init(context,amounthandler,datasource,storeinfo,bquick,amount,type,data){\r\n this.type=type;\r\n if(context){\r\n this.context=context;\r\n this.amountHandler=amounthandler;\r\n this.dataSource=datasource;\r\n this.storeInfo=storeinfo;\r\n this.dto=context.viewModel.data;\r\n runInAction(()=>{\r\n // 单品金额抹零\r\n if (global.DealSingleRowAmountSettingProcessorBlock) {\r\n global.DealSingleRowAmountSettingProcessorBlock.execute(this.dto);\r\n }\r\n // 成交金额抹零\r\n if (global.DealAmountSettingProcessorBlock) {\r\n global.DealAmountSettingProcessorBlock.execute(this.dto);\r\n }\r\n });\r\n\r\n // this.member=context.stores && context.stores.memberStore && context.stores.memberStore.member;\r\n this.member=this.dto.Member;//stores.selectMemberStore.selectMemberInfo;\r\n this.brefund=this.paymode.setAmount( this.dto.TotalTaxAmount ,this.dto.OnlinePaymentAmount );\r\n }else{\r\n this.brefund=this.paymode.setAmount( amount ,0 );\r\n this.dto=data;\r\n }\r\n this.paymode.clean();\r\n \r\n //this.dto.TotalTaxAmount<0;\r\n this.bquick=!!bquick;\r\n this.boriginReturn=JSON.getCellValue(this.dto, \"IsOriginalReturn\");\r\n if(this.boriginReturn){\r\n this.initByOriginReturn();\r\n }\r\n if(this.newStyle){\r\n this.setModes();\r\n }\r\n }\r\n\r\n setModes(){\r\n _each(this.paymode.paymodes,(p)=>{\r\n if(_findIndex(this.paymode.thePaymodes,(mode)=>{return p.paymentType==mode.paymentType})==-1){\r\n this.addPay(p.paymentType);\r\n }\r\n });\r\n if(!this.boriginReturn && this.paymode.thePaymodes.length>0){\r\n this.changeValue(this.paymode.thePaymodes[0].paymethodId,0,true);\r\n }\r\n }\r\n\r\n amountChanged(amount){\r\n if(this.type==1){\r\n this.brefund=this.paymode.setAmount( amount ,0 );\r\n }\r\n\r\n }\r\n\r\n @action\r\n initByOriginReturn(){\r\n _each(this.dto.RetailPaymentDetails,(detail)=>{\r\n let themode=_find(this.paymode.paymodes,{'idSettleStyle':detail.IdsettleStyle});\r\n if(themode.paymentType!=PayStyle.hyczk){\r\n let newmode={\r\n ...this.genNewMode(themode.paymentType,false,detail.Amount),\r\n authCode:detail.PaymentCode,\r\n steadCashIntegral:detail.SteadCashIntegral,\r\n overchargesAmount:detail.OverchargesAmount,\r\n boriginReturn:true\r\n };\r\n this.paymode.currentMode=newmode;\r\n if(themode.paymentType==PayStyle.djq){\r\n _each(this.dto.RetailCouponDetails,(djq)=>{\r\n this.addDjq(djq.CouponCode,djq.CouponTitle,djq.ReductionAmount,djq.EnableAmount,djq.LastTS,true,false);\r\n })\r\n }\r\n this.paymode.thePaymodes.push(newmode)\r\n }\r\n })\r\n _each(this.dto.RetailStorageDetails,(detail)=>{\r\n let newmode={\r\n ...this.genNewMode(PayStyle.hyczk,false,detail.StoragePaymentAmount),\r\n member:new Member(detail.Member),\r\n authCode:detail.Password,\r\n balance:detail.BalanceStorage,\r\n boriginReturn:true\r\n };\r\n this.paymode.thePaymodes.push(newmode)\r\n })\r\n this.paymode.calcReserved();\r\n }\r\n\r\n clean(){\r\n this.bquick=false;\r\n this.paymode.clean();\r\n }\r\n\r\n @action quickSettle(key){\r\n this.addPay(key);\r\n }\r\n\r\n //outer call\r\n //(type===PayStyle.hyczk || type===PayStyle.jfczk || type===PayStyle.jfdx || type===PayStyle.djq)\r\n @action changeFocusAndAddPay(type){\r\n this.paymode.currentFocus=type;\r\n if(this.paymode.currentMode){\r\n if(type==PayStyle.jfdx){\r\n if(this.newStyle){\r\n let index=_findIndex(this.paymode.thePaymodes,(m)=>{return m.paymentType==PayStyle.jfdx});\r\n this.paymode.thePaymodes.splice(index,1,this.paymode.currentMode);\r\n this.paymode.calcReserved();\r\n }else{\r\n this.addPayDirectly(this.paymode.currentMode);\r\n }\r\n \r\n //抵现积分\r\n tApi({IntegralSteadCashParams:{\r\n Idmember:this.paymode.currentMode.member.id,\r\n TotalTaxAmount:this.paymode.amount,\r\n BalanceTaxAmount: this.paymode.currentMode.value,\r\n }}, 'AA.DR.newRetailMember.CalculdateIntegralSteadCash', false, false).then((result)=>{\r\n this.paymode.currentMode.steadCashIntegral=result.Integral;\r\n this.paymode.currentMode.overchargesAmount=result.Amount-this.paymode.currentMode.value;\r\n });\r\n }else{\r\n this.addPayDirectly(this.paymode.currentMode);\r\n }\r\n }else{\r\n this.addPay(type);\r\n }\r\n }\r\n\r\n loadCzk(v){\r\n if(_trim(v)===\"\"){\r\n runInAction(()=>{\r\n this.paymode.currentMode.member = new Member( null );\r\n this.paymode.currentMode.errinfo=\"请输入储值卡\";\r\n });\r\n return;\r\n }\r\n const IdStore=this.storeInfo.storeID;\r\n const StoreCode=this.storeInfo.storeCode;//_find(this.storeInfo.storeInfos,(store)=>{return store.ID==IdStore;}).Code;\r\n return tApi({SearchParams:{Key:v,IsSingleMember:true,IdStore,StoreCode}}, 'AA.DR.newRetailMember.SearchMember', false, false)\r\n .then((result)=>{\r\n let data=JSON.parse(result.Data);\r\n let m=data && data.length>0 && data[0];\r\n if(!m || !m.ID){\r\n runInAction(()=>{this.paymode.currentMode.errinfo=\"无效的会员卡号\";});\r\n }\r\n else{\r\n runInAction(()=>{\r\n this.paymode.currentMode.errinfo=\"\";\r\n this.paymode.currentMode.member = new Member( m )\r\n this.paymode.currentMode.value=getFixedNumber(this.brefund?this.paymode.receivable:Math.max(this.paymode.receivable,0));\r\n this.updateEvent();\r\n let message='';\r\n if (global.CheckMemberStorageProcessorBlock ) {\r\n message= CheckMemberStorageProcessorBlock.execute(data[0]);\r\n }\r\n if (!String.isNullOrEmpty(message)) {\r\n this.paymode.currentMode.errinfo=message;\r\n }\r\n else if(this.checkReceived(this.paymode.currentMode,\"balance\")){\r\n this.paymode.currentMode.errinfo=\"余额不足\";\r\n }else if(this.paymode.amount>0 && this.paymode.currentMode.value==0){\r\n this.paymode.currentMode.errinfo=\"实收金额必须录入\";\r\n } else {\r\n // 查询成功后将焦点移入下一个输入框\r\n const nextInput = document.querySelector('.czk .received .input');\r\n nextInput && nextInput.focus();\r\n }\r\n });\r\n }\r\n })\r\n }\r\n checkCoupon(sn){\r\n let receivable = 0\r\n let djqs = this.paymode.currentMode.djqs\r\n djqs && djqs.map((value) => {\r\n receivable += value.doorsill\r\n })\r\n let obj = {};\r\n this.dto.RetailDetails.forEach((item) => {\r\n if(obj[item.Inventory.ID]){\r\n obj[item.Inventory.ID] += item.TaxAmount;\r\n }else{\r\n obj[item.Inventory.ID] = item.TaxAmount;\r\n }\r\n })\r\n return tApi({request:{\r\n Uid:this.paymode.currentMode.member.uid || '',\r\n SN:sn,\r\n StoreCode:this.dto.Idstore,\r\n Inventories:_map(_filter(this.dto.RetailDetails,(d)=>{return d.Quantity>0 && !d.IsPresent}),(detail)=>{return {\r\n IdInventory:detail.Inventory.ID,\r\n singleTotalAmount: obj[detail.Inventory.ID],\r\n IdUnit:detail.Idunit,\r\n Code:detail.Inventory.Code,\r\n FreeItem0:JSON.getCellValue(detail,\"freeitem0\"),\r\n FreeItem1:JSON.getCellValue(detail,\"freeitem1\"),\r\n FreeItem2:JSON.getCellValue(detail,\"freeitem2\"),\r\n FreeItem3:JSON.getCellValue(detail,\"freeitem3\"),\r\n FreeItem4:JSON.getCellValue(detail,\"freeitem4\"),\r\n FreeItem5:JSON.getCellValue(detail,\"freeitem5\"),\r\n FreeItem6:JSON.getCellValue(detail,\"freeitem6\"),\r\n FreeItem7:JSON.getCellValue(detail,\"freeitem7\"),\r\n FreeItem8:JSON.getCellValue(detail,\"freeitem8\"),\r\n FreeItem9:JSON.getCellValue(detail,\"freeitem9\"),\r\n }}),\r\n // inventoryCodes:_join(_map(this.dto.RetailDetails,(detail)=>{return detail.Inventory.Code;}),','),\r\n InventoryClassCodes:_join(_map(_filter(this.dto.RetailDetails,(d)=>{return d.Quantity>0}),(detail)=>{return (detail.Inventory.InventoryClass||{Code:''}).Code;}),','),\r\n Amount:this.paymode.amount,\r\n Receivable: this.paymode.currentMode.maxamount - receivable\r\n }}, 'chanjet.AA.DR.coupon.CheckCoupon', false, false)\r\n .then((result)=>{\r\n if(_find(this.paymode.currentMode.djqs,(djq)=>{return djq.code==result.SN})){\r\n Message.info('代金券已添加');\r\n }else if(result.IsRepelWithPoints && _find(this.paymode.thePaymodes,(themode)=>{return themode.paymentType==PayStyle.jfdx;})){\r\n Message.error(`代金券(${result.SN})不可与积分一起使用`);\r\n }\r\n else{\r\n this.addDjq(result.SN,result.Title,result.ReduceAmount,result.StartAmount,result.LastTS,false,!result.IsRepelWithPoints,result.UMemberID)\r\n }\r\n })\r\n }\r\n @action addDjq(code,name,amount,doorsill,LastTS,checked,IsRepelWithPoints,UMemberID){\r\n let djq={\r\n code,\r\n name,\r\n amount,\r\n doorsill,//:\"无门槛\"\r\n LastTS,\r\n checked,\r\n IsRepelWithPoints,\r\n UMemberID\r\n };\r\n this.paymode.currentMode.djqs.push(\r\n djq\r\n );\r\n !this.boriginReturn && this.paymode.calcDjqValue(djq);\r\n }\r\n\r\n setCurrentMode(id,type,append){\r\n const mode=_find(this.paymode.thePaymodes,{paymethodId:id});\r\n if(mode){\r\n this.paymode.currentMode=mode;\r\n if(this.newStyle){\r\n this.afterSetCurrentMode(type);\r\n }\r\n }else{\r\n this.paymode.currentMode=this.genNewMode(type,append);\r\n this.afterSetCurrentMode(type);\r\n }\r\n }\r\n afterSetCurrentMode(type){\r\n if(type==PayStyle.djq){\r\n this.paymode.calcDjqValue();\r\n }else if(type==PayStyle.jfdx){\r\n //获取可兑换的金额\r\n if(this.newStyle){\r\n const themode=_find(this.paymode.thePaymodes,{paymentType:PayStyle.jfdx});\r\n if(themode && parseFloat(themode.value||0)!=0){\r\n this.paymode.currentMode.value=themode.value;\r\n }\r\n }\r\n \r\n tApi({IntegralSteadCashParams:{\r\n Idmember:this.paymode.currentMode.member.id,\r\n TotalTaxAmount:this.paymode.amount,\r\n BalanceTaxAmount:this.paymode.amount,\r\n }}, 'AA.DR.newRetailMember.CalculdateIntegralSteadCash', false, false).then((result)=>{\r\n this.paymode.currentMode.member.setExchangable(result.MaxAmount);\r\n this.updateEvent();\r\n if(this.checkReceived(this.paymode.currentMode,\"exchangable\")){\r\n runInAction(()=>{this.paymode.currentMode.errinfo='余额不足'})\r\n }\r\n });\r\n\r\n }\r\n }\r\n\r\n\r\n checkReceived(mode,name){\r\n return !this.brefund && parseFloat(mode.value)>parseFloat(mode.maxamount || mode.member[name]||0);\r\n }\r\n\r\n genNewMode(type,notwithm,v){\r\n let value=getFixedNumber(v || (this.brefund?this.paymode.receivable:Math.max(this.paymode.receivable,0)));\r\n let themode=_find(this.paymode.paymodes,{'paymentType':type});\r\n const mode = observable({\r\n paymethodId:this.paymode.counter,\r\n name:themode.name,\r\n exchangeRate:themode.exchangeRate,\r\n calDirection:themode.calDirection,\r\n value,\r\n value2:getFixedNumber(themode.calDirection==\"88\"?value / themode.exchangeRate:(value * themode.exchangeRate)),\r\n value3:value,\r\n order:this.paymode.thePaymodes.length+1,\r\n paymentType:type,\r\n djqs:[],\r\n member:new Member(!notwithm?this.member:null),\r\n authCode:'',\r\n steadCashIntegral:null,\r\n errinfo:'',\r\n maxamount:this.paymode.amount,\r\n bankNoType:themode.bankNoType\r\n });\r\n if(type==PayStyle.hyczk){\r\n if(!mode.member.id ){\r\n runInAction(()=>{mode.errinfo='未录入储值卡'})\r\n }else if(this.checkReceived(mode,\"balance\")){\r\n runInAction(()=>{mode.errinfo='余额不足'})\r\n }\r\n\r\n }\r\n if(type==PayStyle.hyczk || type==PayStyle.jfdx || type==PayStyle.djq){\r\n this.setMaxAmount(type,mode);\r\n }\r\n console.log(mode);\r\n return mode;\r\n }\r\n\r\n setMaxAmount(type,mode){\r\n let sum=0;\r\n if(type==PayStyle.hyczk){\r\n _each(_filter(this.paymode.thePaymodes,(m)=>{return m.paymentType==type;}),(q)=>{\r\n sum=Math.Add(sum,q.value);\r\n });\r\n }else if(type==PayStyle.djq || type==PayStyle.jfdx){\r\n _each(_filter(this.paymode.thePaymodes,(m)=>{return m.paymentType==PayStyle.djq || m.paymentType==PayStyle.jfdx;}),(q)=>{\r\n sum=Math.Add(sum,q.value);\r\n });\r\n }\r\n\r\n this.amountHandler(type).then(()=>{\r\n runInAction(()=>{\r\n mode.maxamount=getFixedNumber(Math.Minus(this.context.viewModel.getViewItem('Voucher').availableAmount,sum));\r\n this.updateEvent();\r\n })\r\n })\r\n }\r\n\r\n @action changeFocusOnly(type){\r\n this.paymode.currentFocus = type;\r\n // 获取焦点时带入剩余的值\r\n let mode = _find(this.paymode.thePaymodes, { 'paymentType': type });\r\n const { value } = mode || {};\r\n if (mode && (value == '0.00' || value == null)) {\r\n const shouldSetValue = getFixedNumber(parseFloat(this.paymode.receivable) + parseFloat(mode.value));\r\n mode.value = shouldSetValue;\r\n mode.value2 = getFixedNumber(mode.calDirection == \"88\" ? shouldSetValue / mode.exchangeRate : (shouldSetValue * mode.exchangeRate));\r\n mode.value3 = shouldSetValue;\r\n this.paymode.calcReserved();\r\n }\r\n }\r\n\r\n @action changeInputStorageValue(cashChange, giveChangeForStorage) {\r\n this.cashChange = cashChange\r\n this.giveChangeForStorage = giveChangeForStorage\r\n }\r\n\r\n @action clearInputStorageData() {\r\n this.cashChange = null\r\n this.giveChangeForStorage = null\r\n }\r\n\r\n @action changeValue(index,value,blur, storage, change, istoChange){\r\n let mode=_find(this.paymode.thePaymodes,{'paymethodId':index});\r\n let v=blur?getFixedNumber(value) : (isNaN(value)&&value!='-'?0.00:value);\r\n if(mode){\r\n if(mode.exchangeRate != 1){\r\n if(getFixedNumber(mode.calDirection==\"88\"?mode.value3 / mode.exchangeRate:(mode.value3 * mode.exchangeRate)) !=v){\r\n mode.value=getFixedNumber(mode.calDirection==\"88\"?v*mode.exchangeRate : (v / mode.exchangeRate));\r\n }\r\n else{\r\n mode.value=mode.value3;\r\n }\r\n if (istoChange) {\r\n mode.value2=change;\r\n } else {\r\n mode.value2=v;\r\n }\r\n }else{\r\n mode.value=v;\r\n if (istoChange) {\r\n mode.value2=change;\r\n } else {\r\n mode.value2=v;\r\n }\r\n }\r\n\r\n this.paymode.calcReserved();\r\n }\r\n }\r\n\r\n @action changeReturnValue(index, change) {\r\n let mode=_find(this.paymode.thePaymodes,{'paymethodId':index});\r\n if(mode){\r\n if(mode.exchangeRate != 1){\r\n mode.value2=change;\r\n }else{\r\n mode.value2=change;\r\n }\r\n }\r\n this.paymode.calcReserved();\r\n }\r\n\r\n @action addPayDirectly(pay){\r\n \r\n if(!_find(this.paymode.thePaymodes,{paymethodId:pay.paymethodId})){\r\n let pos=this.paymode.thePaymodes.length;\r\n if(pay.paymentType==PayStyle.hyczk){\r\n let index=_findLastIndex(this.paymode.thePaymodes,(m)=>{return m.paymethodId!=pay.paymethodId && m.paymentType==PayStyle.hyczk});\r\n pos=index==-1?pos:(index+1);\r\n }\r\n // this.paymode.thePaymodes.push(pay);\r\n this.paymode.thePaymodes.splice(pos,0,pay);\r\n }\r\n this.paymode.calcReserved();\r\n }\r\n\r\n @action addPay(type){\r\n let pos=this.paymode.thePaymodes.length;\r\n if(type==PayStyle.hyczk){\r\n let index=_findLastIndex(this.paymode.thePaymodes,(m)=>{return m.paymentType==PayStyle.hyczk});\r\n pos=index==-1?pos:(index+1);\r\n }\r\n // this.paymode.thePaymodes.push(this.genNewMode(type) );\r\n this.paymode.thePaymodes.splice(pos,0,this.genNewMode(type,this.newStyle && type==PayStyle.hyczk));\r\n this.paymode.calcReserved();\r\n }\r\n\r\n @action delPay(index){\r\n _remove(this.paymode.thePaymodes,(mode)=>{\r\n return mode.paymethodId===index;\r\n });\r\n this.paymode.currentFocus = -1;\r\n this.paymode.calcReserved();\r\n }\r\n\r\n @action changeIsCheckDate(isCheckDate) {\r\n this.isCheckDate = isCheckDate;\r\n }\r\n\r\n\tgetChangeToStorage(wipechange) {\r\n return Promise.resolve(tApi({idmember: this.dto.Idmember,idStore:this.dto.Idstore,wipechange}, 'AA.DR.newRetailMember.GetChangeToStorage', false, false,{timeout_skip:true}));\r\n }\r\n\r\n @action async CheckExpirationDate() {\r\n return tApi({ ExpirationDate: stores.memberProjectStore.data.ExpirationDate }, 'chanjet.ME.IProjectStorage.CheckExpirationDate', false, false);\r\n }\r\n\r\n async getMemberRetailDetail() {\r\n const { IdStore } = this.getLoginInfo();\r\n return tApi({ Idmember:this.dto.Idmember, IdStore }, 'chanjet.AA.DR.INewRetailMember.GetMemberRetailDetail', false, false);\r\n }\r\n\r\n getLoginInfo() {\r\n const { loginInfo = {} } = localStore.get('user') || {};\r\n return loginInfo;\r\n }\r\n\r\n async commit(bTest) {\r\n console.log('settlementStore.commit开始,参数:' + bTest);\r\n if (bTest) {\r\n return Promise.resolve(true);\r\n }\r\n try {\r\n if (this.isProject) {\r\n let resp = await this.saveByPost();\r\n if (resp.IsSucceed) {\r\n return Promise.resolve(true);\r\n }\r\n } else {\r\n this.type == 1 ? await this.saveMember() : await this.save();\r\n return Promise.resolve(true);\r\n }\r\n } catch (err) {\r\n console.error('settlementStore.commit失败,错误信息:' + err);\r\n return Promise.resolve(err);\r\n }\r\n }\r\n\r\n handlePrint(resp) {\r\n // 储值打印\r\n return printDispatch(DoNameList.DO_STORAGE_PRINT,resp.ID,{}) \r\n }\r\n calculationIsXianJin = (mode) => {\r\n return mode.bankNoType != undefined ? (mode.bankNoType == BankNoType.xianjin ) : ( mode.paymentType == PayStyle.xianjin )\r\n } \r\n handleProjectStoragePrint(resp) {\r\n // 项目储值打印\r\n return printDispatch(DoNameList.DO_PROJECT_STORAGE_PRINT,resp.Data.ID,{}) \r\n }\r\n\r\n\r\n saveByPost (){\r\n runInAction(()=>{\r\n this.dto.StorageMutiSettleDetails=[];\r\n const thePaymodes = this.newStyle ?_filter(this.paymode.thePaymodes,(mode)=>{return parseFloat(mode.value)!=0;}):this.paymode.thePaymodes;\r\n _each(thePaymodes,(mode)=>{\r\n const themode=_find(this.paymode.paymodes,{'paymentType':mode.paymentType});\r\n\r\n let value=parseFloat(mode.value);\r\n let giveChange=null;\r\n if(this.calculationIsXianJin(mode) && this.paymode.receivable<0 && value>Math.abs(this.paymode.receivable)){\r\n value=Math.Add(value,this.paymode.receivable);\r\n giveChange=Math.abs(this.paymode.receivable);\r\n }\r\n this.dto.ExternalCode =this.dto.Idmember+\"_\"+PosInitData('posCode')+\"_\"+ new Date().toArray().join(\"_\")+Math.floor((Math.random()*1000)+1)\r\n this.dto.StorageMutiSettleDetails.push({\r\n Code:mode.paymethodId,\r\n StorageAmount:value,\r\n GiveChange:giveChange,\r\n IdsettleStyle:themode.idSettleStyle,\r\n IdbankAccount:themode.idBankAccount,\r\n PaymentCode:mode.authCode,\r\n DynamicPropertyKeys:[],\r\n DynamicPropertyValues:[],\r\n DataSource:{Id:this.dataSource},\r\n })\r\n })\r\n })\r\n return tApi({ dto: this.dto, isCheckDate: this.isCheckDate }, 'chanjet.ME.IProjectStorage.SaveByPost', false, false).then((resp) => {\r\n if (resp.IsSucceed) {\r\n this.getMemberRetailDetail().then((ret) => {\r\n const { Storages } = ret;\r\n stores.memberStore.setStoragesData(Storages);\r\n })\r\n this.handleProjectStoragePrint(resp);//项目储值打印 \r\n return resp;\r\n } else {\r\n // if (resp.ErrorMsg === '当前储值已失效,是否保存?') {\r\n // ModalWraper.confirm({\r\n // title: \"温馨提示\",\r\n // content: resp.ErrorMsg,\r\n // cancelable: false,\r\n // okText: '确定',\r\n // okType: 'warning',\r\n // onOk: async() => {\r\n // this.isCheckDate = false;\r\n // },\r\n // onCancel: () => { \r\n // this.isCheckDate = true;\r\n // }\r\n // })\r\n // } else {\r\n ModalWraper.warning(\r\n {\r\n title: '温馨提示',\r\n content: resp.ErrorMsg,\r\n okText: '确定',\r\n okType: 'warning',\r\n }\r\n );\r\n // }\r\n }\r\n })\r\n }\r\n\r\n saveMember() {\r\n runInAction(() => {\r\n this.dto.StorageMutiSettleDetails = [];\r\n const thePaymodes = this.newStyle ? _filter(this.paymode.thePaymodes, (mode) => { return parseFloat(mode.value) != 0; }) : this.paymode.thePaymodes;\r\n _each(thePaymodes, (mode) => {\r\n const themode = _find(this.paymode.paymodes, { 'paymentType': mode.paymentType });\r\n\r\n let value = parseFloat(mode.value);\r\n let giveChange = null;\r\n if (mode.paymentType == PayStyle.xianjin && this.paymode.receivable < 0 && value > Math.abs(this.paymode.receivable)) {\r\n value = Math.Add(value, this.paymode.receivable);\r\n giveChange = Math.abs(this.paymode.receivable);\r\n }\r\n this.dto.StorageMutiSettleDetails.push({\r\n Code: mode.paymethodId,\r\n StorageAmount: value,\r\n GiveChange: giveChange,\r\n IdsettleStyle: themode.idSettleStyle,\r\n IdbankAccount: themode.idBankAccount,\r\n PaymentCode: mode.authCode,\r\n DynamicPropertyKeys: [],\r\n DynamicPropertyValues: [],\r\n DataSource: { Id: this.dataSource },\r\n })\r\n })\r\n })\r\n return tApi({ dto: this.dto }, 'chanjet.ME.INewRetailMemberStorage.Save', false, false).then((resp) => {\r\n this.handlePrint(resp);\r\n })\r\n }\r\n\r\n save(){\r\n runInAction(()=>{\r\n this.dto.RetailPaymentDetails=[];\r\n this.dto.RetailStorageDetails=[];\r\n this.dto.RetailCouponDetails=[];\r\n let czkSum=0;\r\n let Idmember=this.dto.Idmember;\r\n const thePaymodes = this.newStyle ?_filter(this.paymode.thePaymodes,(mode)=>{return parseFloat(mode.value)!=0;}):this.paymode.thePaymodes;\r\n _each(thePaymodes,(mode)=>{\r\n const themode=_find(this.paymode.paymodes,{'paymentType':mode.paymentType});\r\n if(mode.paymentType==PayStyle.hyczk){\r\n if(!Idmember){\r\n Idmember=mode.member.id;\r\n }\r\n czkSum=Math.Add(czkSum,mode.value);\r\n this.dto.RetailStorageDetails.push({\r\n Code:mode.paymethodId,\r\n StoragePaymentAmount:mode.value,\r\n IsOrigReturn:false,\r\n BalanceStorage:mode.balance,\r\n Idmember:mode.member.id,\r\n DynamicPropertyKeys:[],\r\n DynamicPropertyValues:[],\r\n DataSource:{Id:this.dataSource},\r\n Password:mode.authCode,\r\n })\r\n }else{\r\n let value=parseFloat(mode.value);\r\n let giveChange=null;\r\n if(this.calculationIsXianJin(mode) && this.paymode.receivable<0 && value>Math.abs(this.paymode.receivable)){\r\n value=Math.Add(value,this.paymode.receivable);\r\n giveChange=Math.abs(this.paymode.receivable);\r\n }\r\n let giveChangeForStorage = null;\r\n if (this.giveChangeForStorage > 0 && this.calculationIsXianJin(mode)) {\r\n giveChange = this.cashChange\r\n giveChangeForStorage = this.giveChangeForStorage;\r\n }\r\n this.dto.GiveChangeForStorageAmount = this.giveChangeForStorage;\r\n this.dto.RetailPaymentDetails.push({\r\n Code:mode.paymethodId,\r\n OrigAmount:mode.exchangeRate!=1?mode.value2:value,\r\n Amount:value,\r\n GiveChange:giveChange,\r\n GiveChangeForStorage: giveChangeForStorage,\r\n IdsettleStyle:themode.idSettleStyle,\r\n IdbankAccount:themode.idBankAccount,\r\n Idcurrency:themode.idCurrency,\r\n ExchangeRate:themode.exchangeRate,\r\n PaymentCode:mode.authCode,\r\n SteadCashIntegral:mode.steadCashIntegral,\r\n OverchargesAmount:mode.overchargesAmount,\r\n DynamicPropertyKeys:[],\r\n DynamicPropertyValues:[],\r\n DataSource:{Id:this.dataSource},\r\n })\r\n if(mode.paymentType==PayStyle.djq){\r\n _each(mode.djqs,(djq)=>{\r\n if(djq.checked){\r\n this.dto.RetailCouponDetails.push({\r\n CouponCode:djq.code,\r\n ReductionAmount:djq.amount,\r\n EnableAmount:djq.doorsill,\r\n CouponTitle:djq.name,\r\n IdMember:djq.UMemberID?mode.member.id:null,\r\n LastTS:djq.LastTS,\r\n DataSource:{Id:this.dataSource},\r\n })\r\n }\r\n })\r\n }\r\n }\r\n });\r\n if(this.dto.RetailStorageDetails.length>0){\r\n const themode=_find(this.paymode.paymodes,{'paymentType':PayStyle.hyczk});\r\n this.dto.RetailPaymentDetails.push({\r\n Code:this.paymode.counter,\r\n OrigAmount:czkSum,\r\n Amount:czkSum,\r\n IdsettleStyle:themode.idSettleStyle,\r\n IdbankAccount:themode.idBankAccount,\r\n DynamicPropertyKeys:[],\r\n DynamicPropertyValues:[],\r\n DataSource:{Id:this.dataSource},\r\n })\r\n this.dto.Idmember=Idmember;\r\n }\r\n });\r\n console.log('结算数据:', this.dto);\r\n return tApi({dto:this.dto.cut()}, 'chanjet.RE.newRetail.Settle', false, false,{timeout_skip:true}).then((resp)=>{\r\n this.setDtoID(resp.ID);\r\n // runInAction(()=>{\r\n // this.context.viewModel.data.ID=resp.ID;\r\n // });\r\n });\r\n // return new Promise((resolve,reject)=>{\r\n // setTimeout(()=>{\r\n // if(result){\r\n // resolve(result);\r\n // }else{\r\n // reject(result);\r\n // }\r\n // },3000);//5000\r\n // })\r\n }\r\n\r\n @action setDtoID(id){\r\n this.context.viewModel.data.ID=id;\r\n }\r\n\r\n async querySettleResult(){\r\n try{\r\n return Promise.resolve(await tApi({RetailCode: this.dto.Code}, 'chanjet.RE.newRetail.QuerySettleResult', false, false,{timeout_skip:true}));\r\n }catch(e){\r\n return Promise.resolve({Flag:\"1\"});\r\n }\r\n }\r\n\r\n async validePwd(value){\r\n try{\r\n const result = await tApi({\"CheckoutParams\": {\r\n \"Idmember\": value.id,\r\n \"Password\":value.pwd\r\n }}, 'AA.DR.newRetailMember.CheckoutMemberPassword', false, false);\r\n return Promise.resolve(result.Success?\"\":result.Message);\r\n }catch(e){\r\n return \"failed\";\r\n }\r\n\r\n }\r\n}\r\n\r\nexport class PayMode{\r\n _counter=0\r\n amount=0 //应收\r\n onlineamount=0\r\n maxamount=0;\r\n @observable currentFocus=\"\"\r\n @observable received=0;\r\n @observable receivable=0;\r\n @observable paymodes =[]\r\n @observable thePaymodes=[]\r\n currentMode=null;\r\n updateEvent\r\n settle={\r\n name:\"复合结算\",\r\n hotKey:\"Ctrl+M\",\r\n }\r\n constructor (){\r\n // this.amount=getFixedNumber(amount);\r\n // this.calcReserved();\r\n }\r\n\r\n @action clean(){\r\n this.thePaymodes=[];\r\n this.calcReserved();\r\n }\r\n\r\n setAmount(a,o){\r\n this.amount=getFixedNumber((a || 0)-(o || 0));\r\n this.onlineamount=getFixedNumber(o || 0);\r\n this.calcReserved();\r\n return this.amount<0;\r\n }\r\n\r\n @action calcReserved(){\r\n let sum = 0;\r\n _each(this.thePaymodes, (mode) => {\r\n sum = Math.Add(sum, (mode.value == \"\" ? 0 : mode.value));\r\n });\r\n this.received = getFixedNumber(sum);\r\n this.receivable = getFixedNumber(this.amount - sum);\r\n }\r\n\r\n @action calcReservedDjq() {\r\n let sum = 0;\r\n _each(this.thePaymodes, (mode) => {\r\n if (mode.paymentType != PayStyle.djq || mode.checked) {\r\n sum = Math.Add(sum, (mode.value == \"\" ? 0 : mode.value));\r\n }\r\n });\r\n this.received = getFixedNumber(sum);\r\n this.receivable = getFixedNumber(this.amount - sum);\r\n }\r\n\r\n @action calcDjqValue(q1){\r\n if(!this.currentMode.boriginReturn && parseFloat(this.currentMode.maxamount)<=0){\r\n Message.error(\"本单没有代金券可用金额,该券不可使用。\");\r\n return ;\r\n }\r\n let q=_find(this.currentMode.djqs,(djq)=>{return djq.code==q1.code});\r\n if(q && !q.checked && parseFloat(this.amount)<parseFloat(q.doorsill)){\r\n Message.error(\"本单金额低于使用门槛,该券不可使用。\");\r\n return ;\r\n }\r\n q && (q.checked = !q.checked);\r\n var sum=0;\r\n _each(_filter(this.currentMode.djqs,djq=>djq.checked),(q)=>{\r\n sum=Math.Add(sum,q.amount);\r\n });\r\n if (q && !q.checked) {\r\n this.calcReservedDjq();\r\n };\r\n this.currentMode.value = getFixedNumber(Math.max(0, Math.min(this.receivable, sum, this.currentMode.maxamount)));\r\n this.currentMode.receivable = getFixedNumber(this.receivable - this.currentMode.value);\r\n this.currentMode.overchargesAmount = getFixedNumber(sum - this.currentMode.value);\r\n }\r\n\r\n @action setCurrentModeValue(v,max){\r\n this.currentMode.value=parseFloat(v) || 0;\r\n this.currentMode.errinfo='';\r\n if(this.amount>0 && (v==='' || v==='0.00')){\r\n this.currentMode.errinfo=\"实收金额必须录入\";\r\n }else if(Math.abs(parseFloat(v))>Math.abs(this.amount)){\r\n this.currentMode.errinfo=\"实收不应大于应收\";\r\n }else if(parseFloat(v)>0 && parseFloat(v) > (max || 0) ){\r\n this.currentMode.errinfo=\"余额不足\";\r\n }\r\n }\r\n @action calcMemberBalance(){\r\n this.currentMode.balance = this.currentMode.member.rawbalance - this.currentMode.value;\r\n }\r\n\r\n get charge(){\r\n return Math.abs(this.receivable);\r\n }\r\n\r\n get counter(){\r\n return ++this._counter;\r\n }\r\n\r\n async setPaymodes(type){\r\n const modes = await tApi({settleStyleType:type==1?'63002':'63001'}, 'chanjet.RE.NewPos.GetStoreSettleStyles', false, false);\r\n if(modes){\r\n runInAction(()=>{\r\n _each(modes.SettleStyles, (mode,index)=>{\r\n //产品需求确认会员储值卡结算方式前端展示统一调整为“储值卡\" tuzha by 2020-07-08\r\n if(mode.Code==PayStyle.hyczk)\r\n {\r\n mode.Name='储值卡';\r\n }\r\n this.paymodes.push({\r\n name:mode.Name,\r\n isDefault:mode.IsDefaultSettleStyle,\r\n isQuick:_findIndex(modes.QuickSettleStyles, {'Code':mode.Code})>=0,\r\n orderBy:1,\r\n paymentType:mode.Code,\r\n idSettleStyle:mode.IdSettleStyle,\r\n idBankAccount:mode.IdBankAccount,\r\n exchangeRate:mode.Currency?mode.Currency.ExchangeRate:1,\r\n idCurrency:mode.Currency?mode.Currency.ID:-1,\r\n calDirection:mode.Currency?mode.Currency.CalDirection.Id:\"88\",\r\n bankNoType:mode.BankNoType\r\n })\r\n })\r\n //modes.QuickSettleStyles\r\n })\r\n }\r\n }\r\n}\r\n\r\nexport class Member{\r\n id;\r\n uid;\r\n @observable cardNo;\r\n type;\r\n @observable balance;\r\n rawbalance;\r\n needPwd;\r\n bonusPoints;\r\n @observable exchangable;\r\n constructor(m){\r\n if(m){\r\n this.id=m.ID;\r\n this.uid=m.Uid;\r\n this.type=m.MemberType?m.MemberType.Name:\"普通\";\r\n this.rawbalance=m.BalanceStorage;\r\n let index=_findIndex(m.DynamicPropertyKeys,(key)=>{return key=='canusedbalancestorage';});\r\n runInAction(()=>{\r\n this.cardNo=m.CardCode;\r\n if(index>=0){\r\n this.balance=parseFloat(m.DynamicPropertyValues[index]);\r\n }else{\r\n this.balance=this.rawbalance;\r\n }\r\n });\r\n this.needPwd=m.MemberType?m.MemberType.IsNeedPwd:false;\r\n this.NeedModifyPassword=m.NeedModifyPassword;\r\n this.bonusPoints=m.BalanceIntegral;\r\n }\r\n }\r\n @action setExchangable(v){\r\n this.exchangable=v;\r\n }\r\n @action setCardNo(v){\r\n this.cardNo=v;\r\n this.id=null;\r\n }\r\n}\r\n"]}
1
+ {"version":3,"sources":["tplus-components-touch/components/settlement/settlementStore.js"],"names":["t","i18n","getFixedT","PayStyle","xianjin","jfczk","hyczk","jfdx","smzf","djq","zfb","wx","zz","BankNoType","PayIcon","PayIcon2","SettlementStore","paymode","dto","member","brefund","bquick","boriginReturn","newStyle","calculationIsXianJin","mode","bankNoType","undefined","paymentType","PayMode","localStore","get","isCheckDate","event","type","isProject","setPaymodes","updateEvent","context","amounthandler","datasource","storeinfo","amount","data","amountHandler","dataSource","storeInfo","viewModel","global","DealSingleRowAmountSettingProcessorBlock","execute","DealAmountSettingProcessorBlock","Member","setAmount","TotalTaxAmount","OnlinePaymentAmount","clean","JSON","getCellValue","initByOriginReturn","setModes","paymodes","p","thePaymodes","addPay","length","changeValue","paymethodId","RetailPaymentDetails","detail","themode","IdsettleStyle","newmode","genNewMode","Amount","authCode","PaymentCode","steadCashIntegral","SteadCashIntegral","overchargesAmount","OverchargesAmount","currentMode","RetailCouponDetails","addDjq","CouponCode","CouponTitle","ReductionAmount","EnableAmount","LastTS","push","RetailStorageDetails","StoragePaymentAmount","Password","balance","BalanceStorage","calcReserved","key","currentFocus","index","m","splice","addPayDirectly","IntegralSteadCashParams","Idmember","id","BalanceTaxAmount","value","then","result","Integral","v","errinfo","IdStore","storeID","StoreCode","storeCode","SearchParams","Key","IsSingleMember","parse","Data","ID","receivable","Math","max","message","CheckMemberStorageProcessorBlock","String","isNullOrEmpty","checkReceived","nextInput","document","querySelector","focus","sn","djqs","map","doorsill","obj","RetailDetails","forEach","item","Inventory","TaxAmount","request","Uid","uid","SN","Idstore","Inventories","d","Quantity","IsPresent","IdInventory","singleTotalAmount","IdUnit","Idunit","Code","FreeItem0","FreeItem1","FreeItem2","FreeItem3","FreeItem4","FreeItem5","FreeItem6","FreeItem7","FreeItem8","FreeItem9","InventoryClassCodes","InventoryClass","Receivable","maxamount","code","Message","info","IsRepelWithPoints","error","Title","ReduceAmount","StartAmount","UMemberID","name","checked","calcDjqValue","append","afterSetCurrentMode","parseFloat","setExchangable","MaxAmount","notwithm","counter","exchangeRate","calDirection","value2","value3","order","setMaxAmount","console","log","sum","q","Add","Minus","getViewItem","availableAmount","shouldSetValue","cashChange","giveChangeForStorage","blur","storage","change","istoChange","isNaN","pay","pos","wipechange","resolve","idmember","idStore","timeout_skip","ExpirationDate","stores","memberProjectStore","getLoginInfo","loginInfo","bTest","saveByPost","resp","IsSucceed","saveMember","save","DoNameList","DO_STORAGE_PRINT","DO_PROJECT_STORAGE_PRINT","StorageMutiSettleDetails","giveChange","abs","ExternalCode","Date","toArray","join","floor","random","StorageAmount","GiveChange","idSettleStyle","IdbankAccount","idBankAccount","DynamicPropertyKeys","DynamicPropertyValues","DataSource","Id","getMemberRetailDetail","ret","Storages","memberStore","setStoragesData","handleProjectStoragePrint","ModalWraper","warning","title","content","ErrorMsg","okText","okType","handlePrint","czkSum","IsOrigReturn","GiveChangeForStorageAmount","OrigAmount","GiveChangeForStorage","Idcurrency","idCurrency","ExchangeRate","IdMember","cut","setDtoID","RetailCode","Flag","pwd","Success","action","_counter","onlineamount","settle","hotKey","a","o","received","q1","calcReservedDjq","min","rawbalance","settleStyleType","modes","SettleStyles","Name","isDefault","IsDefaultSettleStyle","isQuick","QuickSettleStyles","orderBy","IdSettleStyle","IdBankAccount","Currency","CalDirection","observable","MemberType","cardNo","CardCode","needPwd","IsNeedPwd","NeedModifyPassword","bonusPoints","BalanceIntegral","exchangable"],"mappings":"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","file":"settlementStore.js","sourcesContent":["import { observable, computed, action, autorun, runInAction } from 'mobx'\nimport {stores,i18n,localStore} from 'mutants-microfx';\nimport _find from 'lodash/find';\nimport _remove from 'lodash/remove';\nimport _each from 'lodash/each';\nimport _map from 'lodash/map';\nimport _join from 'lodash/join';\nimport _trim from 'lodash/trim';\nimport _filter from 'lodash/filter';\nimport _findIndex from 'lodash/findIndex';\nimport _findLastIndex from 'lodash/findLastIndex';\nimport _findKey from 'lodash/findKey';\nimport { getFixedNumber } from './utils'\nimport {tApi} from 'tplus-api';\nimport Message from '../message';\nimport { platform,env } from 'mutants-util';\nimport { ModalWraper,printDispatch,DoNameList} from 'tplus-components-touch'\nconst t = i18n.getFixedT(null, 'newretail');\nimport { PosInitData } from 'tplus-poslogin';\n/*\n 1,现金\n 93、积分储值卡\n 94、储值卡\n 99、积分抵现\n 995、 扫码收款\n 996、代金券\n 999、支付宝\n 998、微信\n 997、转账\n */\nexport const PayStyle = {\n xianjin:\"1\",\n jfczk:\"93\",\n hyczk:\"94\",\n jfdx:\"99\",\n smzf:'995',\n djq:\"996\",//996\n zfb:\"999\",\n wx:\"998\",\n zz:\"997\",\n}\n\nexport const BankNoType = {\n xianjin:309\n}\n\nexport const PayIcon = {\n \"1\":\"xianjin2\",\n \"93\":\"chuzhiqia\",\n \"94\":\"chuzhiqia\",\n \"99\":\"jifendixian\",\n \"995\":\"saomashoukuan\",\n \"996\":\"daijinquan\",\n \"999\":\"zhifubao\",\n \"998\":\"weixin\",\n //\"997\":\"zhifubao\",\n \"gengduo\":\"gengduo2\",\n \"default\":\"moban1\"\n}\nexport const PayIcon2 = {\n \"1\":\"xianjinfanbai\",\n \"998\":\"weixinfanbai\",\n \"999\":\"zhifubaofanbai\",\n \"995\":\"saomafanbai\",\n \"chenggong\":\"zhifuchenggong\",\n \"94\":\"chuzhikakuai\",\n \"default\":\"mobanfanbai\"\n}\n\nexport default class SettlementStore {\n paymode = null\n dto=null\n member=null\n brefund=false\n context\n bquick=false;\n amountHandler\n dataSource\n storeInfo\n updateEvent\n\ttype\n boriginReturn=false\n newStyle=true//type==2\n cashChange\n giveChangeForStorage\n constructor(){\n this.paymode= new PayMode()\n this.newStyle=localStore && localStore.get('voucherDefaultPosMode')=='voucher';\n this.isCheckDate = true;\n }\n\n initPaymodes(event,type,isProject){\n this.paymode.setPaymodes(type);\n this.updateEvent=event;\n this.isProject= isProject;\n }\n\n init(context,amounthandler,datasource,storeinfo,bquick,amount,type,data){\n this.type=type;\n if(context){\n this.context=context;\n this.amountHandler=amounthandler;\n this.dataSource=datasource;\n this.storeInfo=storeinfo;\n this.dto=context.viewModel.data;\n runInAction(()=>{\n // 单品金额抹零\n if (global.DealSingleRowAmountSettingProcessorBlock) {\n global.DealSingleRowAmountSettingProcessorBlock.execute(this.dto);\n }\n // 成交金额抹零\n if (global.DealAmountSettingProcessorBlock) {\n global.DealAmountSettingProcessorBlock.execute(this.dto);\n }\n });\n\n // this.member=context.stores && context.stores.memberStore && context.stores.memberStore.member;\n this.member=this.dto.Member;//stores.selectMemberStore.selectMemberInfo;\n this.brefund=this.paymode.setAmount( this.dto.TotalTaxAmount ,this.dto.OnlinePaymentAmount );\n }else{\n this.brefund=this.paymode.setAmount( amount ,0 );\n this.dto=data;\n }\n this.paymode.clean();\n \n //this.dto.TotalTaxAmount<0;\n this.bquick=!!bquick;\n this.boriginReturn=JSON.getCellValue(this.dto, \"IsOriginalReturn\");\n if(this.boriginReturn){\n this.initByOriginReturn();\n }\n if(this.newStyle){\n this.setModes();\n }\n }\n\n setModes(){\n _each(this.paymode.paymodes,(p)=>{\n if(_findIndex(this.paymode.thePaymodes,(mode)=>{return p.paymentType==mode.paymentType})==-1){\n this.addPay(p.paymentType);\n }\n });\n if(!this.boriginReturn && this.paymode.thePaymodes.length>0){\n this.changeValue(this.paymode.thePaymodes[0].paymethodId,0,true);\n }\n }\n\n amountChanged(amount){\n if(this.type==1){\n this.brefund=this.paymode.setAmount( amount ,0 );\n }\n\n }\n\n @action\n initByOriginReturn(){\n _each(this.dto.RetailPaymentDetails,(detail)=>{\n let themode=_find(this.paymode.paymodes,{'idSettleStyle':detail.IdsettleStyle});\n if(themode.paymentType!=PayStyle.hyczk){\n let newmode={\n ...this.genNewMode(themode.paymentType,false,detail.Amount),\n authCode:detail.PaymentCode,\n steadCashIntegral:detail.SteadCashIntegral,\n overchargesAmount:detail.OverchargesAmount,\n boriginReturn:true\n };\n this.paymode.currentMode=newmode;\n if(themode.paymentType==PayStyle.djq){\n _each(this.dto.RetailCouponDetails,(djq)=>{\n this.addDjq(djq.CouponCode,djq.CouponTitle,djq.ReductionAmount,djq.EnableAmount,djq.LastTS,true,false);\n })\n }\n this.paymode.thePaymodes.push(newmode)\n }\n })\n _each(this.dto.RetailStorageDetails,(detail)=>{\n let newmode={\n ...this.genNewMode(PayStyle.hyczk,false,detail.StoragePaymentAmount),\n member:new Member(detail.Member),\n authCode:detail.Password,\n balance:detail.BalanceStorage,\n boriginReturn:true\n };\n this.paymode.thePaymodes.push(newmode)\n })\n this.paymode.calcReserved();\n }\n\n clean(){\n this.bquick=false;\n this.paymode.clean();\n }\n\n @action quickSettle(key){\n this.addPay(key);\n }\n\n //outer call\n //(type===PayStyle.hyczk || type===PayStyle.jfczk || type===PayStyle.jfdx || type===PayStyle.djq)\n @action changeFocusAndAddPay(type){\n this.paymode.currentFocus=type;\n if(this.paymode.currentMode){\n if(type==PayStyle.jfdx){\n if(this.newStyle){\n let index=_findIndex(this.paymode.thePaymodes,(m)=>{return m.paymentType==PayStyle.jfdx});\n this.paymode.thePaymodes.splice(index,1,this.paymode.currentMode);\n this.paymode.calcReserved();\n }else{\n this.addPayDirectly(this.paymode.currentMode);\n }\n \n //抵现积分\n tApi({IntegralSteadCashParams:{\n Idmember:this.paymode.currentMode.member.id,\n TotalTaxAmount:this.paymode.amount,\n BalanceTaxAmount: this.paymode.currentMode.value,\n }}, 'AA.DR.newRetailMember.CalculdateIntegralSteadCash', false, false).then((result)=>{\n this.paymode.currentMode.steadCashIntegral=result.Integral;\n this.paymode.currentMode.overchargesAmount=result.Amount-this.paymode.currentMode.value;\n });\n }else{\n this.addPayDirectly(this.paymode.currentMode);\n }\n }else{\n this.addPay(type);\n }\n }\n\n loadCzk(v){\n if(_trim(v)===\"\"){\n runInAction(()=>{\n this.paymode.currentMode.member = new Member( null );\n this.paymode.currentMode.errinfo=\"请输入储值卡\";\n });\n return;\n }\n const IdStore=this.storeInfo.storeID;\n const StoreCode=this.storeInfo.storeCode;//_find(this.storeInfo.storeInfos,(store)=>{return store.ID==IdStore;}).Code;\n return tApi({SearchParams:{Key:v,IsSingleMember:true,IdStore,StoreCode}}, 'AA.DR.newRetailMember.SearchMember', false, false)\n .then((result)=>{\n let data=JSON.parse(result.Data);\n let m=data && data.length>0 && data[0];\n if(!m || !m.ID){\n runInAction(()=>{this.paymode.currentMode.errinfo=\"无效的会员卡号\";});\n }\n else{\n runInAction(()=>{\n this.paymode.currentMode.errinfo=\"\";\n this.paymode.currentMode.member = new Member( m )\n this.paymode.currentMode.value=getFixedNumber(this.brefund?this.paymode.receivable:Math.max(this.paymode.receivable,0));\n this.updateEvent();\n let message='';\n if (global.CheckMemberStorageProcessorBlock ) {\n message= CheckMemberStorageProcessorBlock.execute(data[0]);\n }\n if (!String.isNullOrEmpty(message)) {\n this.paymode.currentMode.errinfo=message;\n }\n else if(this.checkReceived(this.paymode.currentMode,\"balance\")){\n this.paymode.currentMode.errinfo=\"余额不足\";\n }else if(this.paymode.amount>0 && this.paymode.currentMode.value==0){\n this.paymode.currentMode.errinfo=\"实收金额必须录入\";\n } else {\n // 查询成功后将焦点移入下一个输入框\n const nextInput = document.querySelector('.czk .received .input');\n nextInput && nextInput.focus();\n }\n });\n }\n })\n }\n checkCoupon(sn){\n let receivable = 0\n let djqs = this.paymode.currentMode.djqs\n djqs && djqs.map((value) => {\n receivable += value.doorsill\n })\n let obj = {};\n this.dto.RetailDetails.forEach((item) => {\n if(obj[item.Inventory.ID]){\n obj[item.Inventory.ID] += item.TaxAmount;\n }else{\n obj[item.Inventory.ID] = item.TaxAmount;\n }\n })\n return tApi({request:{\n Uid:this.paymode.currentMode.member.uid || '',\n SN:sn,\n StoreCode:this.dto.Idstore,\n Inventories:_map(_filter(this.dto.RetailDetails,(d)=>{return d.Quantity>0 && !d.IsPresent}),(detail)=>{return {\n IdInventory:detail.Inventory.ID,\n singleTotalAmount: obj[detail.Inventory.ID],\n IdUnit:detail.Idunit,\n Code:detail.Inventory.Code,\n FreeItem0:JSON.getCellValue(detail,\"freeitem0\"),\n FreeItem1:JSON.getCellValue(detail,\"freeitem1\"),\n FreeItem2:JSON.getCellValue(detail,\"freeitem2\"),\n FreeItem3:JSON.getCellValue(detail,\"freeitem3\"),\n FreeItem4:JSON.getCellValue(detail,\"freeitem4\"),\n FreeItem5:JSON.getCellValue(detail,\"freeitem5\"),\n FreeItem6:JSON.getCellValue(detail,\"freeitem6\"),\n FreeItem7:JSON.getCellValue(detail,\"freeitem7\"),\n FreeItem8:JSON.getCellValue(detail,\"freeitem8\"),\n FreeItem9:JSON.getCellValue(detail,\"freeitem9\"),\n }}),\n // inventoryCodes:_join(_map(this.dto.RetailDetails,(detail)=>{return detail.Inventory.Code;}),','),\n InventoryClassCodes:_join(_map(_filter(this.dto.RetailDetails,(d)=>{return d.Quantity>0}),(detail)=>{return (detail.Inventory.InventoryClass||{Code:''}).Code;}),','),\n Amount:this.paymode.amount,\n Receivable: this.paymode.currentMode.maxamount - receivable\n }}, 'chanjet.AA.DR.coupon.CheckCoupon', false, false)\n .then((result)=>{\n if(_find(this.paymode.currentMode.djqs,(djq)=>{return djq.code==result.SN})){\n Message.info('代金券已添加');\n }else if(result.IsRepelWithPoints && _find(this.paymode.thePaymodes,(themode)=>{return themode.paymentType==PayStyle.jfdx;})){\n Message.error(`代金券(${result.SN})不可与积分一起使用`);\n }\n else{\n this.addDjq(result.SN,result.Title,result.ReduceAmount,result.StartAmount,result.LastTS,false,!result.IsRepelWithPoints,result.UMemberID)\n }\n })\n }\n @action addDjq(code,name,amount,doorsill,LastTS,checked,IsRepelWithPoints,UMemberID){\n let djq={\n code,\n name,\n amount,\n doorsill,//:\"无门槛\"\n LastTS,\n checked,\n IsRepelWithPoints,\n UMemberID\n };\n this.paymode.currentMode.djqs.push(\n djq\n );\n !this.boriginReturn && this.paymode.calcDjqValue(djq);\n }\n\n setCurrentMode(id,type,append){\n const mode=_find(this.paymode.thePaymodes,{paymethodId:id});\n if(mode){\n this.paymode.currentMode=mode;\n if(this.newStyle){\n this.afterSetCurrentMode(type);\n }\n }else{\n this.paymode.currentMode=this.genNewMode(type,append);\n this.afterSetCurrentMode(type);\n }\n }\n afterSetCurrentMode(type){\n if(type==PayStyle.djq){\n this.paymode.calcDjqValue();\n }else if(type==PayStyle.jfdx){\n //获取可兑换的金额\n if(this.newStyle){\n const themode=_find(this.paymode.thePaymodes,{paymentType:PayStyle.jfdx});\n if(themode && parseFloat(themode.value||0)!=0){\n this.paymode.currentMode.value=themode.value;\n }\n }\n \n tApi({IntegralSteadCashParams:{\n Idmember:this.paymode.currentMode.member.id,\n TotalTaxAmount:this.paymode.amount,\n BalanceTaxAmount:this.paymode.amount,\n }}, 'AA.DR.newRetailMember.CalculdateIntegralSteadCash', false, false).then((result)=>{\n this.paymode.currentMode.member.setExchangable(result.MaxAmount);\n this.updateEvent();\n if(this.checkReceived(this.paymode.currentMode,\"exchangable\")){\n runInAction(()=>{this.paymode.currentMode.errinfo='余额不足'})\n }\n });\n\n }\n }\n\n\n checkReceived(mode,name){\n return !this.brefund && parseFloat(mode.value)>parseFloat(mode.maxamount || mode.member[name]||0);\n }\n\n genNewMode(type,notwithm,v){\n let value=getFixedNumber(v || (this.brefund?this.paymode.receivable:Math.max(this.paymode.receivable,0)));\n let themode=_find(this.paymode.paymodes,{'paymentType':type});\n const mode = observable({\n paymethodId:this.paymode.counter,\n name:themode.name,\n exchangeRate:themode.exchangeRate,\n calDirection:themode.calDirection,\n value,\n value2:getFixedNumber(themode.calDirection==\"88\"?value / themode.exchangeRate:(value * themode.exchangeRate)),\n value3:value,\n order:this.paymode.thePaymodes.length+1,\n paymentType:type,\n djqs:[],\n member:new Member(!notwithm?this.member:null),\n authCode:'',\n steadCashIntegral:null,\n errinfo:'',\n maxamount:this.paymode.amount,\n bankNoType:themode.bankNoType\n });\n if(type==PayStyle.hyczk){\n if(!mode.member.id ){\n runInAction(()=>{mode.errinfo='未录入储值卡'})\n }else if(this.checkReceived(mode,\"balance\")){\n runInAction(()=>{mode.errinfo='余额不足'})\n }\n\n }\n if(type==PayStyle.hyczk || type==PayStyle.jfdx || type==PayStyle.djq){\n this.setMaxAmount(type,mode);\n }\n console.log(mode);\n return mode;\n }\n\n setMaxAmount(type,mode){\n let sum=0;\n if(type==PayStyle.hyczk){\n _each(_filter(this.paymode.thePaymodes,(m)=>{return m.paymentType==type;}),(q)=>{\n sum=Math.Add(sum,q.value);\n });\n }else if(type==PayStyle.djq || type==PayStyle.jfdx){\n _each(_filter(this.paymode.thePaymodes,(m)=>{return m.paymentType==PayStyle.djq || m.paymentType==PayStyle.jfdx;}),(q)=>{\n sum=Math.Add(sum,q.value);\n });\n }\n\n this.amountHandler(type).then(()=>{\n runInAction(()=>{\n mode.maxamount=getFixedNumber(Math.Minus(this.context.viewModel.getViewItem('Voucher').availableAmount,sum));\n this.updateEvent();\n })\n })\n }\n\n @action changeFocusOnly(type){\n this.paymode.currentFocus = type;\n // 获取焦点时带入剩余的值\n let mode = _find(this.paymode.thePaymodes, { 'paymentType': type });\n const { value } = mode || {};\n if (mode && (value == '0.00' || value == null)) {\n const shouldSetValue = getFixedNumber(parseFloat(this.paymode.receivable) + parseFloat(mode.value));\n mode.value = shouldSetValue;\n mode.value2 = getFixedNumber(mode.calDirection == \"88\" ? shouldSetValue / mode.exchangeRate : (shouldSetValue * mode.exchangeRate));\n mode.value3 = shouldSetValue;\n this.paymode.calcReserved();\n }\n }\n\n @action changeInputStorageValue(cashChange, giveChangeForStorage) {\n this.cashChange = cashChange\n this.giveChangeForStorage = giveChangeForStorage\n }\n\n @action clearInputStorageData() {\n this.cashChange = null\n this.giveChangeForStorage = null\n }\n\n @action changeValue(index,value,blur, storage, change, istoChange){\n let mode=_find(this.paymode.thePaymodes,{'paymethodId':index});\n let v=blur?getFixedNumber(value) : (isNaN(value)&&value!='-'?0.00:value);\n if(mode){\n if(mode.exchangeRate != 1){\n if(getFixedNumber(mode.calDirection==\"88\"?mode.value3 / mode.exchangeRate:(mode.value3 * mode.exchangeRate)) !=v){\n mode.value=getFixedNumber(mode.calDirection==\"88\"?v*mode.exchangeRate : (v / mode.exchangeRate));\n }\n else{\n mode.value=mode.value3;\n }\n if (istoChange) {\n mode.value2=change;\n } else {\n mode.value2=v;\n }\n }else{\n mode.value=v;\n if (istoChange) {\n mode.value2=change;\n } else {\n mode.value2=v;\n }\n }\n\n this.paymode.calcReserved();\n }\n }\n\n @action changeReturnValue(index, change) {\n let mode=_find(this.paymode.thePaymodes,{'paymethodId':index});\n if(mode){\n if(mode.exchangeRate != 1){\n mode.value2=change;\n }else{\n mode.value2=change;\n }\n }\n this.paymode.calcReserved();\n }\n\n @action addPayDirectly(pay){\n \n if(!_find(this.paymode.thePaymodes,{paymethodId:pay.paymethodId})){\n let pos=this.paymode.thePaymodes.length;\n if(pay.paymentType==PayStyle.hyczk){\n let index=_findLastIndex(this.paymode.thePaymodes,(m)=>{return m.paymethodId!=pay.paymethodId && m.paymentType==PayStyle.hyczk});\n pos=index==-1?pos:(index+1);\n }\n // this.paymode.thePaymodes.push(pay);\n this.paymode.thePaymodes.splice(pos,0,pay);\n }\n this.paymode.calcReserved();\n }\n\n @action addPay(type){\n let pos=this.paymode.thePaymodes.length;\n if(type==PayStyle.hyczk){\n let index=_findLastIndex(this.paymode.thePaymodes,(m)=>{return m.paymentType==PayStyle.hyczk});\n pos=index==-1?pos:(index+1);\n }\n // this.paymode.thePaymodes.push(this.genNewMode(type) );\n this.paymode.thePaymodes.splice(pos,0,this.genNewMode(type,this.newStyle && type==PayStyle.hyczk));\n this.paymode.calcReserved();\n }\n\n @action delPay(index){\n _remove(this.paymode.thePaymodes,(mode)=>{\n return mode.paymethodId===index;\n });\n this.paymode.currentFocus = -1;\n this.paymode.calcReserved();\n }\n\n @action changeIsCheckDate(isCheckDate) {\n this.isCheckDate = isCheckDate;\n }\n\n\tgetChangeToStorage(wipechange) {\n return Promise.resolve(tApi({idmember: this.dto.Idmember,idStore:this.dto.Idstore,wipechange}, 'AA.DR.newRetailMember.GetChangeToStorage', false, false,{timeout_skip:true}));\n }\n\n @action async CheckExpirationDate() {\n return tApi({ ExpirationDate: stores.memberProjectStore.data.ExpirationDate }, 'chanjet.ME.IProjectStorage.CheckExpirationDate', false, false);\n }\n\n async getMemberRetailDetail() {\n const { IdStore } = this.getLoginInfo();\n return tApi({ Idmember:this.dto.Idmember, IdStore }, 'chanjet.AA.DR.INewRetailMember.GetMemberRetailDetail', false, false);\n }\n\n getLoginInfo() {\n const { loginInfo = {} } = localStore.get('user') || {};\n return loginInfo;\n }\n\n async commit(bTest) {\n console.log('settlementStore.commit开始,参数:' + bTest);\n if (bTest) {\n return Promise.resolve(true);\n }\n try {\n if (this.isProject) {\n let resp = await this.saveByPost();\n if (resp.IsSucceed) {\n return Promise.resolve(true);\n }\n } else {\n this.type == 1 ? await this.saveMember() : await this.save();\n return Promise.resolve(true);\n }\n } catch (err) {\n console.error('settlementStore.commit失败,错误信息:' + err);\n return Promise.resolve(err);\n }\n }\n\n handlePrint(resp) {\n // 储值打印\n return printDispatch(DoNameList.DO_STORAGE_PRINT,resp.ID,{}) \n }\n calculationIsXianJin = (mode) => {\n return mode.bankNoType != undefined ? (mode.bankNoType == BankNoType.xianjin ) : ( mode.paymentType == PayStyle.xianjin )\n } \n handleProjectStoragePrint(resp) {\n // 项目储值打印\n return printDispatch(DoNameList.DO_PROJECT_STORAGE_PRINT,resp.Data.ID,{}) \n }\n\n\n saveByPost (){\n runInAction(()=>{\n this.dto.StorageMutiSettleDetails=[];\n const thePaymodes = this.newStyle ?_filter(this.paymode.thePaymodes,(mode)=>{return parseFloat(mode.value)!=0;}):this.paymode.thePaymodes;\n _each(thePaymodes,(mode)=>{\n const themode=_find(this.paymode.paymodes,{'paymentType':mode.paymentType});\n\n let value=parseFloat(mode.value);\n let giveChange=null;\n if(this.calculationIsXianJin(mode) && this.paymode.receivable<0 && value>Math.abs(this.paymode.receivable)){\n value=Math.Add(value,this.paymode.receivable);\n giveChange=Math.abs(this.paymode.receivable);\n }\n this.dto.ExternalCode =this.dto.Idmember+\"_\"+PosInitData('posCode')+\"_\"+ new Date().toArray().join(\"_\")+Math.floor((Math.random()*1000)+1)\n this.dto.StorageMutiSettleDetails.push({\n Code:mode.paymethodId,\n StorageAmount:value,\n GiveChange:giveChange,\n IdsettleStyle:themode.idSettleStyle,\n IdbankAccount:themode.idBankAccount,\n PaymentCode:mode.authCode,\n DynamicPropertyKeys:[],\n DynamicPropertyValues:[],\n DataSource:{Id:this.dataSource},\n })\n })\n })\n return tApi({ dto: this.dto, isCheckDate: this.isCheckDate }, 'chanjet.ME.IProjectStorage.SaveByPost', false, false).then((resp) => {\n if (resp.IsSucceed) {\n this.getMemberRetailDetail().then((ret) => {\n const { Storages } = ret;\n stores.memberStore.setStoragesData(Storages);\n })\n this.handleProjectStoragePrint(resp);//项目储值打印 \n return resp;\n } else {\n // if (resp.ErrorMsg === '当前储值已失效,是否保存?') {\n // ModalWraper.confirm({\n // title: \"温馨提示\",\n // content: resp.ErrorMsg,\n // cancelable: false,\n // okText: '确定',\n // okType: 'warning',\n // onOk: async() => {\n // this.isCheckDate = false;\n // },\n // onCancel: () => { \n // this.isCheckDate = true;\n // }\n // })\n // } else {\n ModalWraper.warning(\n {\n title: '温馨提示',\n content: resp.ErrorMsg,\n okText: '确定',\n okType: 'warning',\n }\n );\n // }\n }\n })\n }\n\n saveMember() {\n runInAction(() => {\n this.dto.StorageMutiSettleDetails = [];\n const thePaymodes = this.newStyle ? _filter(this.paymode.thePaymodes, (mode) => { return parseFloat(mode.value) != 0; }) : this.paymode.thePaymodes;\n _each(thePaymodes, (mode) => {\n const themode = _find(this.paymode.paymodes, { 'paymentType': mode.paymentType });\n\n let value = parseFloat(mode.value);\n let giveChange = null;\n if (mode.paymentType == PayStyle.xianjin && this.paymode.receivable < 0 && value > Math.abs(this.paymode.receivable)) {\n value = Math.Add(value, this.paymode.receivable);\n giveChange = Math.abs(this.paymode.receivable);\n }\n this.dto.StorageMutiSettleDetails.push({\n Code: mode.paymethodId,\n StorageAmount: value,\n GiveChange: giveChange,\n IdsettleStyle: themode.idSettleStyle,\n IdbankAccount: themode.idBankAccount,\n PaymentCode: mode.authCode,\n DynamicPropertyKeys: [],\n DynamicPropertyValues: [],\n DataSource: { Id: this.dataSource },\n })\n })\n })\n return tApi({ dto: this.dto }, 'chanjet.ME.INewRetailMemberStorage.Save', false, false).then((resp) => {\n this.handlePrint(resp);\n })\n }\n\n save(){\n runInAction(()=>{\n this.dto.RetailPaymentDetails=[];\n this.dto.RetailStorageDetails=[];\n this.dto.RetailCouponDetails=[];\n let czkSum=0;\n let Idmember=this.dto.Idmember;\n const thePaymodes = this.newStyle ?_filter(this.paymode.thePaymodes,(mode)=>{return parseFloat(mode.value)!=0;}):this.paymode.thePaymodes;\n _each(thePaymodes,(mode)=>{\n const themode=_find(this.paymode.paymodes,{'paymentType':mode.paymentType});\n if(mode.paymentType==PayStyle.hyczk){\n if(!Idmember){\n Idmember=mode.member.id;\n }\n czkSum=Math.Add(czkSum,mode.value);\n this.dto.RetailStorageDetails.push({\n Code:mode.paymethodId,\n StoragePaymentAmount:mode.value,\n IsOrigReturn:false,\n BalanceStorage:mode.balance,\n Idmember:mode.member.id,\n DynamicPropertyKeys:[],\n DynamicPropertyValues:[],\n DataSource:{Id:this.dataSource},\n Password:mode.authCode,\n })\n }else{\n let value=parseFloat(mode.value);\n let giveChange=null;\n if(this.calculationIsXianJin(mode) && this.paymode.receivable<0 && value>Math.abs(this.paymode.receivable)){\n value=Math.Add(value,this.paymode.receivable);\n giveChange=Math.abs(this.paymode.receivable);\n }\n let giveChangeForStorage = null;\n if (this.giveChangeForStorage > 0 && this.calculationIsXianJin(mode)) {\n giveChange = this.cashChange\n giveChangeForStorage = this.giveChangeForStorage;\n }\n this.dto.GiveChangeForStorageAmount = this.giveChangeForStorage;\n this.dto.RetailPaymentDetails.push({\n Code:mode.paymethodId,\n OrigAmount:mode.exchangeRate!=1?mode.value2:value,\n Amount:value,\n GiveChange:giveChange,\n GiveChangeForStorage: giveChangeForStorage,\n IdsettleStyle:themode.idSettleStyle,\n IdbankAccount:themode.idBankAccount,\n Idcurrency:themode.idCurrency,\n ExchangeRate:themode.exchangeRate,\n PaymentCode:mode.authCode,\n SteadCashIntegral:mode.steadCashIntegral,\n OverchargesAmount:mode.overchargesAmount,\n DynamicPropertyKeys:[],\n DynamicPropertyValues:[],\n DataSource:{Id:this.dataSource},\n })\n if(mode.paymentType==PayStyle.djq){\n _each(mode.djqs,(djq)=>{\n if(djq.checked){\n this.dto.RetailCouponDetails.push({\n CouponCode:djq.code,\n ReductionAmount:djq.amount,\n EnableAmount:djq.doorsill,\n CouponTitle:djq.name,\n IdMember:djq.UMemberID?mode.member.id:null,\n LastTS:djq.LastTS,\n DataSource:{Id:this.dataSource},\n })\n }\n })\n }\n }\n });\n if(this.dto.RetailStorageDetails.length>0){\n const themode=_find(this.paymode.paymodes,{'paymentType':PayStyle.hyczk});\n this.dto.RetailPaymentDetails.push({\n Code:this.paymode.counter,\n OrigAmount:czkSum,\n Amount:czkSum,\n IdsettleStyle:themode.idSettleStyle,\n IdbankAccount:themode.idBankAccount,\n DynamicPropertyKeys:[],\n DynamicPropertyValues:[],\n DataSource:{Id:this.dataSource},\n })\n this.dto.Idmember=Idmember;\n }\n });\n console.log('结算数据:', this.dto);\n return tApi({dto:this.dto.cut()}, 'chanjet.RE.newRetail.Settle', false, false,{timeout_skip:true}).then((resp)=>{\n this.setDtoID(resp.ID);\n // runInAction(()=>{\n // this.context.viewModel.data.ID=resp.ID;\n // });\n });\n // return new Promise((resolve,reject)=>{\n // setTimeout(()=>{\n // if(result){\n // resolve(result);\n // }else{\n // reject(result);\n // }\n // },3000);//5000\n // })\n }\n\n @action setDtoID(id){\n this.context.viewModel.data.ID=id;\n }\n\n async querySettleResult(){\n try{\n return Promise.resolve(await tApi({RetailCode: this.dto.Code}, 'chanjet.RE.newRetail.QuerySettleResult', false, false,{timeout_skip:true}));\n }catch(e){\n return Promise.resolve({Flag:\"1\"});\n }\n }\n\n async validePwd(value){\n try{\n const result = await tApi({\"CheckoutParams\": {\n \"Idmember\": value.id,\n \"Password\":value.pwd\n }}, 'AA.DR.newRetailMember.CheckoutMemberPassword', false, false);\n return Promise.resolve(result.Success?\"\":result.Message);\n }catch(e){\n return \"failed\";\n }\n\n }\n}\n\nexport class PayMode{\n _counter=0\n amount=0 //应收\n onlineamount=0\n maxamount=0;\n @observable currentFocus=\"\"\n @observable received=0;\n @observable receivable=0;\n @observable paymodes =[]\n @observable thePaymodes=[]\n currentMode=null;\n updateEvent\n settle={\n name:\"复合结算\",\n hotKey:\"Ctrl+M\",\n }\n constructor (){\n // this.amount=getFixedNumber(amount);\n // this.calcReserved();\n }\n\n @action clean(){\n this.thePaymodes=[];\n this.calcReserved();\n }\n\n setAmount(a,o){\n this.amount=getFixedNumber((a || 0)-(o || 0));\n this.onlineamount=getFixedNumber(o || 0);\n this.calcReserved();\n return this.amount<0;\n }\n\n @action calcReserved(){\n let sum = 0;\n _each(this.thePaymodes, (mode) => {\n sum = Math.Add(sum, (mode.value == \"\" ? 0 : mode.value));\n });\n this.received = getFixedNumber(sum);\n this.receivable = getFixedNumber(this.amount - sum);\n }\n\n @action calcReservedDjq() {\n let sum = 0;\n _each(this.thePaymodes, (mode) => {\n if (mode.paymentType != PayStyle.djq || mode.checked) {\n sum = Math.Add(sum, (mode.value == \"\" ? 0 : mode.value));\n }\n });\n this.received = getFixedNumber(sum);\n this.receivable = getFixedNumber(this.amount - sum);\n }\n\n @action calcDjqValue(q1){\n if(!this.currentMode.boriginReturn && parseFloat(this.currentMode.maxamount)<=0){\n Message.error(\"本单没有代金券可用金额,该券不可使用。\");\n return ;\n }\n let q=_find(this.currentMode.djqs,(djq)=>{return djq.code==q1.code});\n if(q && !q.checked && parseFloat(this.amount)<parseFloat(q.doorsill)){\n Message.error(\"本单金额低于使用门槛,该券不可使用。\");\n return ;\n }\n q && (q.checked = !q.checked);\n var sum=0;\n _each(_filter(this.currentMode.djqs,djq=>djq.checked),(q)=>{\n sum=Math.Add(sum,q.amount);\n });\n if (q && !q.checked) {\n this.calcReservedDjq();\n };\n this.currentMode.value = getFixedNumber(Math.max(0, Math.min(this.receivable, sum, this.currentMode.maxamount)));\n this.currentMode.receivable = getFixedNumber(this.receivable - this.currentMode.value);\n this.currentMode.overchargesAmount = getFixedNumber(sum - this.currentMode.value);\n }\n\n @action setCurrentModeValue(v,max){\n this.currentMode.value=parseFloat(v) || 0;\n this.currentMode.errinfo='';\n if(this.amount>0 && (v==='' || v==='0.00')){\n this.currentMode.errinfo=\"实收金额必须录入\";\n }else if(Math.abs(parseFloat(v))>Math.abs(this.amount)){\n this.currentMode.errinfo=\"实收不应大于应收\";\n }else if(parseFloat(v)>0 && parseFloat(v) > (max || 0) ){\n this.currentMode.errinfo=\"余额不足\";\n }\n }\n @action calcMemberBalance(){\n this.currentMode.balance = this.currentMode.member.rawbalance - this.currentMode.value;\n }\n\n get charge(){\n return Math.abs(this.receivable);\n }\n\n get counter(){\n return ++this._counter;\n }\n\n async setPaymodes(type){\n const modes = await tApi({settleStyleType:type==1?'63002':'63001'}, 'chanjet.RE.NewPos.GetStoreSettleStyles', false, false);\n if(modes){\n runInAction(()=>{\n _each(modes.SettleStyles, (mode,index)=>{\n //产品需求确认会员储值卡结算方式前端展示统一调整为“储值卡\" tuzha by 2020-07-08\n if(mode.Code==PayStyle.hyczk)\n {\n mode.Name='储值卡';\n }\n this.paymodes.push({\n name:mode.Name,\n isDefault:mode.IsDefaultSettleStyle,\n isQuick:_findIndex(modes.QuickSettleStyles, {'Code':mode.Code})>=0,\n orderBy:1,\n paymentType:mode.Code,\n idSettleStyle:mode.IdSettleStyle,\n idBankAccount:mode.IdBankAccount,\n exchangeRate:mode.Currency?mode.Currency.ExchangeRate:1,\n idCurrency:mode.Currency?mode.Currency.ID:-1,\n calDirection:mode.Currency?mode.Currency.CalDirection.Id:\"88\",\n bankNoType:mode.BankNoType\n })\n })\n //modes.QuickSettleStyles\n })\n }\n }\n}\n\nexport class Member{\n id;\n uid;\n @observable cardNo;\n type;\n @observable balance;\n rawbalance;\n needPwd;\n bonusPoints;\n @observable exchangable;\n constructor(m){\n if(m){\n this.id=m.ID;\n this.uid=m.Uid;\n this.type=m.MemberType?m.MemberType.Name:\"普通\";\n this.rawbalance=m.BalanceStorage;\n let index=_findIndex(m.DynamicPropertyKeys,(key)=>{return key=='canusedbalancestorage';});\n runInAction(()=>{\n this.cardNo=m.CardCode;\n if(index>=0){\n this.balance=parseFloat(m.DynamicPropertyValues[index]);\n }else{\n this.balance=this.rawbalance;\n }\n });\n this.needPwd=m.MemberType?m.MemberType.IsNeedPwd:false;\n this.NeedModifyPassword=m.NeedModifyPassword;\n this.bonusPoints=m.BalanceIntegral;\n }\n }\n @action setExchangable(v){\n this.exchangable=v;\n }\n @action setCardNo(v){\n this.cardNo=v;\n this.id=null;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-components-touch/components/settlement/utils.js"],"names":["getFixedNumber","value","name","precision","isNaN","getRoundValue","decimal","pow","Math","returnValue","round","abs","toFixed","preventDefault","nativeEvent","stopPropagation","cancelBubble","openLoadingModal","maskClosable","closable","width","content","openQueryingModal","showSuccessModal","amount","received","charge","fn","isXianjin","cb","isShowChangeTurn","changeToStorageData","changeToStorgeValue","isDelayModal","isChangeToStorage","IsCanToStorage","modal","onClose","inputChangeStorage","inputTarget2","setTimeout","destroy","openAwaitModal","tip","manually","tips","className"],"mappings":"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","file":"utils.js","sourcesContent":["import React from 'react'\r\nimport _bind from 'lodash/bind'\r\nimport _get from 'lodash/get'\r\nimport Ticon from '../ticon'\r\nimport asyncModal from './asyncModal'\r\nimport Button from 'bee-button';\r\nimport { PosInitData } from 'tplus-poslogin';\r\n\r\nexport const getFixedNumber = _bind(function (value, name) {\r\n name = name || 'money'\r\n const precision = _get(this, `${name}.value`)\r\n value = isNaN(value) ? 0 : value\r\n // 参数错误的时候, 返回原值\r\n if (isNaN(precision)) {\r\n return value\r\n }\r\n return getRoundValue(value, precision)\r\n}, {\"money\": { \"value\": 2, \"caption\": \"金额小数位\" },})\r\n\r\nexport const getRoundValue = (value, decimal) => {\r\n if(!decimal) return value\r\n const pow = Math.pow(10, decimal);\r\n let returnValue = Math.round(Math.abs(value) * pow) / pow;\r\n if (value < 0)\r\n returnValue = -returnValue;\r\n return returnValue.toFixed(decimal);\r\n}\r\n\r\nexport const preventDefault = function (nativeEvent) {\r\n if (!nativeEvent) {\r\n return\r\n }\r\n if (nativeEvent.preventDefault) {\r\n nativeEvent.preventDefault()\r\n } else if (typeof nativeEvent.returnValue !== 'unknown') {\r\n nativeEvent.returnValue = false\r\n }\r\n}\r\n\r\nexport const stopPropagation = function (nativeEvent) {\r\n if (!nativeEvent) {\r\n return\r\n }\r\n if (nativeEvent.stopPropagation) {\r\n nativeEvent.stopPropagation()\r\n } else if (typeof nativeEvent.cancelBubble !== 'unknown') {\r\n // The ChangeEventPlugin registers a \"propertychange\" event for\r\n // IE. This event does not support bubbling or cancelling, and\r\n // any references to cancelBubble throw \"Member not found\". A\r\n // typeof check of \"unknown\" circumvents this issue (and is also\r\n // IE specific).\r\n nativeEvent.cancelBubble = true\r\n }\r\n}\r\n\r\nexport const openLoadingModal = function () {\r\n\r\n return asyncModal({\r\n maskClosable: false,\r\n closable: false,\r\n width: '200px',\r\n content: <div className='billingSettling'>\r\n <div>\r\n <div className=\"ant-spin ant-spin-lg ant-spin-spinning\"><span\r\n className=\"ant-spin-dot ant-spin-dot-spin\"><i/><i/><i/><i/></span></div>\r\n </div>\r\n <div>结算中...</div>\r\n </div>\r\n })\r\n}\r\n\r\nexport const openQueryingModal = function () {\r\n\r\n return asyncModal({\r\n maskClosable: false,\r\n closable: false,\r\n width: '200px',\r\n content: <div className='billingSettling'>\r\n <div>\r\n <div className=\"ant-spin ant-spin-lg ant-spin-spinning\"><span\r\n className=\"ant-spin-dot ant-spin-dot-spin\"><i/><i/><i/><i/></span></div>\r\n </div>\r\n <div>正在查询中,请稍候~</div>\r\n </div>\r\n })\r\n}\r\n\r\n\r\nexport const showSuccessModal = function (amount, received, charge, fn, isXianjin, cb,isShowChangeTurn, changeToStorageData, changeToStorgeValue) {\r\n let isDelayModal;\r\n if (!isXianjin) {\r\n isDelayModal = false\r\n } else {\r\n isDelayModal = PosInitData('GiveChangeSupportManualClose');\r\n }\r\n let isChangeToStorage = isXianjin && isShowChangeTurn && changeToStorageData && changeToStorageData.IsCanToStorage;\r\n const modal = asyncModal({\r\n width:'400px',\r\n closable:false,\r\n maskClosable:true,\r\n onClose: () => { typeof fn == 'function' && fn() },\r\n content: <div className=\"paySuccess\">\r\n <div className={`${isDelayModal ? 'icon1' : ''} icon`}><Ticon type=\"zhifuchenggong\" /></div>\r\n <div className={`${isDelayModal ? 'text1' : ''} text`}>支付成功</div>\r\n <div className={`${isDelayModal ? 'tipStyle1' : ''} tipStyle`}><span className=\"fl\">应收金额</span><span className=\"fr\">{amount}</span></div>\r\n <div className={`${isDelayModal ? 'tipStyle1' : ''} tipStyle`}><span className=\"fl\">实收金额</span><span className=\"fr\">{received}</span></div>\r\n {\r\n isChangeToStorage &&\r\n <div className={`${isDelayModal ? 'tipStyle2' : ''} tipStyle`}><span className=\"fl\">找零转储值</span><span className=\"fr\">{getFixedNumber(changeToStorgeValue.inputChangeStorage)}</span></div>\r\n }\r\n <div className={`${isDelayModal ? 'tipStyle3' : ''} tipStyle`}><span className=\"fl\">找零</span><span className=\"fr\">{isChangeToStorage ? getFixedNumber(changeToStorgeValue.inputTarget2) : getFixedNumber(charge)}</span></div>\r\n {\r\n isDelayModal ?\r\n <div className=\"tipStyle\">\r\n <Button onClick={() => {\r\n setTimeout(() => { modal.destroy(); cb && cb(); }, 0)\r\n }} className=\"paymentSuccessBtn\" colors=\"warning\">确定</Button>\r\n </div>\r\n :\r\n null\r\n }\r\n </div>\r\n })\r\n if (!isDelayModal) {\r\n setTimeout(() => { modal.destroy(); cb && cb(); }, 1500)\r\n }\r\n return modal;\r\n}\r\n\r\nexport const openAwaitModal = function (tip, manually) {\r\n let tips = tip ? tip : '取会员价中'\r\n\r\n return asyncModal({\r\n className: 'billing-onsettle-ModalLight',\r\n maskClosable: false,\r\n closable: false,\r\n width: '200px',\r\n content: <div className='billing-onsettle-ModalLight-content'>\r\n\r\n <div>\r\n <div className=\"ant-spin ant-spin-lg ant-spin-spinning\"><span\r\n className=\"ant-spin-dot ant-spin-dot-spin\"><i/><i/><i/><i/></span></div>\r\n </div>\r\n <div className='billing-onsettle-ModalLight-text'>{`${tips}...`}</div>\r\n </div>\r\n }, manually)\r\n}\r\n"]}
1
+ {"version":3,"sources":["tplus-components-touch/components/settlement/utils.js"],"names":["getFixedNumber","value","name","precision","isNaN","getRoundValue","decimal","pow","Math","returnValue","round","abs","toFixed","preventDefault","nativeEvent","stopPropagation","cancelBubble","openLoadingModal","maskClosable","closable","width","content","openQueryingModal","showSuccessModal","amount","received","charge","fn","isXianjin","cb","isShowChangeTurn","changeToStorageData","changeToStorgeValue","isDelayModal","isChangeToStorage","IsCanToStorage","modal","onClose","inputChangeStorage","inputTarget2","setTimeout","destroy","openAwaitModal","tip","manually","tips","className"],"mappings":"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","file":"utils.js","sourcesContent":["import React from 'react'\nimport _bind from 'lodash/bind'\nimport _get from 'lodash/get'\nimport Ticon from '../ticon'\nimport asyncModal from './asyncModal'\nimport Button from 'bee-button';\nimport { PosInitData } from 'tplus-poslogin';\n\nexport const getFixedNumber = _bind(function (value, name) {\n name = name || 'money'\n const precision = _get(this, `${name}.value`)\n value = isNaN(value) ? 0 : value\n // 参数错误的时候, 返回原值\n if (isNaN(precision)) {\n return value\n }\n return getRoundValue(value, precision)\n}, {\"money\": { \"value\": 2, \"caption\": \"金额小数位\" },})\n\nexport const getRoundValue = (value, decimal) => {\n if(!decimal) return value\n const pow = Math.pow(10, decimal);\n let returnValue = Math.round(Math.abs(value) * pow) / pow;\n if (value < 0)\n returnValue = -returnValue;\n return returnValue.toFixed(decimal);\n}\n\nexport const preventDefault = function (nativeEvent) {\n if (!nativeEvent) {\n return\n }\n if (nativeEvent.preventDefault) {\n nativeEvent.preventDefault()\n } else if (typeof nativeEvent.returnValue !== 'unknown') {\n nativeEvent.returnValue = false\n }\n}\n\nexport const stopPropagation = function (nativeEvent) {\n if (!nativeEvent) {\n return\n }\n if (nativeEvent.stopPropagation) {\n nativeEvent.stopPropagation()\n } else if (typeof nativeEvent.cancelBubble !== 'unknown') {\n // The ChangeEventPlugin registers a \"propertychange\" event for\n // IE. This event does not support bubbling or cancelling, and\n // any references to cancelBubble throw \"Member not found\". A\n // typeof check of \"unknown\" circumvents this issue (and is also\n // IE specific).\n nativeEvent.cancelBubble = true\n }\n}\n\nexport const openLoadingModal = function () {\n\n return asyncModal({\n maskClosable: false,\n closable: false,\n width: '200px',\n content: <div className='billingSettling'>\n <div>\n <div className=\"ant-spin ant-spin-lg ant-spin-spinning\"><span\n className=\"ant-spin-dot ant-spin-dot-spin\"><i/><i/><i/><i/></span></div>\n </div>\n <div>结算中...</div>\n </div>\n })\n}\n\nexport const openQueryingModal = function () {\n\n return asyncModal({\n maskClosable: false,\n closable: false,\n width: '200px',\n content: <div className='billingSettling'>\n <div>\n <div className=\"ant-spin ant-spin-lg ant-spin-spinning\"><span\n className=\"ant-spin-dot ant-spin-dot-spin\"><i/><i/><i/><i/></span></div>\n </div>\n <div>正在查询中,请稍候~</div>\n </div>\n })\n}\n\n\nexport const showSuccessModal = function (amount, received, charge, fn, isXianjin, cb,isShowChangeTurn, changeToStorageData, changeToStorgeValue) {\n let isDelayModal;\n if (!isXianjin) {\n isDelayModal = false\n } else {\n isDelayModal = PosInitData('GiveChangeSupportManualClose');\n }\n let isChangeToStorage = isXianjin && isShowChangeTurn && changeToStorageData && changeToStorageData.IsCanToStorage;\n const modal = asyncModal({\n width:'400px',\n closable:false,\n maskClosable:true,\n onClose: () => { typeof fn == 'function' && fn() },\n content: <div className=\"paySuccess\">\n <div className={`${isDelayModal ? 'icon1' : ''} icon`}><Ticon type=\"zhifuchenggong\" /></div>\n <div className={`${isDelayModal ? 'text1' : ''} text`}>支付成功</div>\n <div className={`${isDelayModal ? 'tipStyle1' : ''} tipStyle`}><span className=\"fl\">应收金额</span><span className=\"fr\">{amount}</span></div>\n <div className={`${isDelayModal ? 'tipStyle1' : ''} tipStyle`}><span className=\"fl\">实收金额</span><span className=\"fr\">{received}</span></div>\n {\n isChangeToStorage &&\n <div className={`${isDelayModal ? 'tipStyle2' : ''} tipStyle`}><span className=\"fl\">找零转储值</span><span className=\"fr\">{getFixedNumber(changeToStorgeValue.inputChangeStorage)}</span></div>\n }\n <div className={`${isDelayModal ? 'tipStyle3' : ''} tipStyle`}><span className=\"fl\">找零</span><span className=\"fr\">{isChangeToStorage ? getFixedNumber(changeToStorgeValue.inputTarget2) : getFixedNumber(charge)}</span></div>\n {\n isDelayModal ?\n <div className=\"tipStyle\">\n <Button onClick={() => {\n setTimeout(() => { modal.destroy(); cb && cb(); }, 0)\n }} className=\"paymentSuccessBtn\" colors=\"warning\">确定</Button>\n </div>\n :\n null\n }\n </div>\n })\n if (!isDelayModal) {\n setTimeout(() => { modal.destroy(); cb && cb(); }, 1500)\n }\n return modal;\n}\n\nexport const openAwaitModal = function (tip, manually) {\n let tips = tip ? tip : '取会员价中'\n\n return asyncModal({\n className: 'billing-onsettle-ModalLight',\n maskClosable: false,\n closable: false,\n width: '200px',\n content: <div className='billing-onsettle-ModalLight-content'>\n\n <div>\n <div className=\"ant-spin ant-spin-lg ant-spin-spinning\"><span\n className=\"ant-spin-dot ant-spin-dot-spin\"><i/><i/><i/><i/></span></div>\n </div>\n <div className='billing-onsettle-ModalLight-text'>{`${tips}...`}</div>\n </div>\n }, manually)\n}\n"]}
@@ -202,17 +202,17 @@ var Socket = function () {
202
202
  }]);
203
203
  return Socket;
204
204
  }(); // cloud server消息推送接口单独使用 不走统一配置
205
- /**
206
- * host 主机
207
- * path 地址
208
- * connected 连接成功后的回调
209
- * error 错误信息的回调
210
- * reconnect 触发重连的钩子
211
- * updateConfig 触发重连时候 需要在实例化时的reconnect钩子调用该方法,参数 options 为设置新的参数 reInit 为是否重新初始化连接
212
- * send 发送消息
213
- * on 监听推送消息
214
- * stop 停止连接
215
- *
205
+ /**
206
+ * host 主机
207
+ * path 地址
208
+ * connected 连接成功后的回调
209
+ * error 错误信息的回调
210
+ * reconnect 触发重连的钩子
211
+ * updateConfig 触发重连时候 需要在实例化时的reconnect钩子调用该方法,参数 options 为设置新的参数 reInit 为是否重新初始化连接
212
+ * send 发送消息
213
+ * on 监听推送消息
214
+ * stop 停止连接
215
+ *
216
216
  **/
217
217
 
218
218
 
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-components-touch/components/socket/index.js"],"names":["signalR","Socket","host","path","connected","error","reconnect","token","connection","_init","on","stop","throttle","HubConnectionBuilder","withUrl","accessTokenFactory","configureLogging","LogLevel","Information","build","start","then","catch","_error","err","onclose","console","options","reInit","forEach","key","type","func","params","invoke","stoped","fn","gapTime","_lastTime","_nowTime","Date","localStore","get","orgId","loginInfo","SignalRServerHost","CiaToken","accountId","enterpriseUniqId","SignalRToken","PosId","storeID","appKey","CloudServerAppKey","axios"],"mappings":"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","file":"index.js","sourcesContent":["/**\r\n * host 主机\r\n * path 地址\r\n * connected 连接成功后的回调\r\n * error 错误信息的回调\r\n * reconnect 触发重连的钩子\r\n * updateConfig 触发重连时候 需要在实例化时的reconnect钩子调用该方法,参数 options 为设置新的参数 reInit 为是否重新初始化连接\r\n * send 发送消息\r\n * on 监听推送消息\r\n * stop 停止连接\r\n *\r\n**/\r\nimport * as signalR from '@aspnet/signalr';\r\nimport axios from 'axios'; // cloud server消息推送接口单独使用 不走统一配置\r\nimport { localStore } from 'mutants-microfx';\r\n\r\nexport default class Socket {\r\n constructor({ host, path, connected, error, reconnect, token }) {\r\n this.host = host;\r\n this.path = path;\r\n this.token = token;\r\n this.connected = connected || (() => { });\r\n this.reconnect = reconnect || (() => { });\r\n this.error = error || (() => { });\r\n this.connection = this._init();\r\n this.on = this.on;\r\n this.stop = this.stop;\r\n this.throttle = this.throttle;\r\n }\r\n\r\n _init() {\r\n const connection = new signalR.HubConnectionBuilder()\r\n .withUrl(`${this.host}${this.path}`, {\r\n accessTokenFactory: () => this.token\r\n })\r\n .configureLogging(signalR.LogLevel.Information)\r\n .build();\r\n\r\n connection.start().then(() => this.connected(connection)).catch(err => this._error(err));\r\n connection.onclose(() => this.reconnect(connection));\r\n\r\n return connection;\r\n }\r\n\r\n _error(err) {\r\n console.error('signalR:', err);\r\n this.error(err);\r\n this.throttle(() => {\r\n this.reconnect(this.connection);\r\n }, 3000);\r\n }\r\n\r\n updateConfig(options, reInit) {\r\n if (options && typeof options === 'object') {\r\n Object.keys(options).forEach(key => this[key] = options[key]);\r\n }\r\n if (reInit) {\r\n this.stop(() => {\r\n this.connection = this._init();\r\n });\r\n } else {\r\n this.connection.start().then(() => this.connected(this.connection)).catch(err => this._error(err));\r\n }\r\n }\r\n\r\n on(type, func) {\r\n this.connection.on(type, (...argument) => func(...argument));\r\n }\r\n\r\n send(type, params = [], error) {\r\n this.connection.invoke(type, ...params).catch(err => error && error(err));\r\n }\r\n\r\n stop(func) {\r\n const stoped = () => {\r\n this.connection = null;\r\n func && func();\r\n }\r\n this.connection.stop().then(stoped).catch(stoped);\r\n }\r\n\r\n throttle(fn, gapTime) {\r\n let _lastTime = null;\r\n return function () {\r\n const _nowTime = +new Date();\r\n if (_nowTime - _lastTime > gapTime || !_lastTime) {\r\n fn();\r\n _lastTime = _nowTime;\r\n }\r\n }\r\n }\r\n\r\n static async socketAuth() {\r\n const { orgId, loginInfo = {} } = localStore.get('user') || {};\r\n const { SignalRServerHost, CiaToken, enterpriseUniqId: accountId, SignalRToken: token, PosId, storeID, CloudServerAppKey: appKey } = loginInfo;\r\n const params = { accountId, token, PosId, storeID, orgId, appKey, CiaToken };\r\n return await axios.get(`${SignalRServerHost}/api/auth/GetAccessToken`, { params });\r\n }\r\n}\r\n"]}
1
+ {"version":3,"sources":["tplus-components-touch/components/socket/index.js"],"names":["signalR","Socket","host","path","connected","error","reconnect","token","connection","_init","on","stop","throttle","HubConnectionBuilder","withUrl","accessTokenFactory","configureLogging","LogLevel","Information","build","start","then","catch","_error","err","onclose","console","options","reInit","forEach","key","type","func","params","invoke","stoped","fn","gapTime","_lastTime","_nowTime","Date","localStore","get","orgId","loginInfo","SignalRServerHost","CiaToken","accountId","enterpriseUniqId","SignalRToken","PosId","storeID","appKey","CloudServerAppKey","axios"],"mappings":"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","file":"index.js","sourcesContent":["/**\n * host 主机\n * path 地址\n * connected 连接成功后的回调\n * error 错误信息的回调\n * reconnect 触发重连的钩子\n * updateConfig 触发重连时候 需要在实例化时的reconnect钩子调用该方法,参数 options 为设置新的参数 reInit 为是否重新初始化连接\n * send 发送消息\n * on 监听推送消息\n * stop 停止连接\n *\n**/\nimport * as signalR from '@aspnet/signalr';\nimport axios from 'axios'; // cloud server消息推送接口单独使用 不走统一配置\nimport { localStore } from 'mutants-microfx';\n\nexport default class Socket {\n constructor({ host, path, connected, error, reconnect, token }) {\n this.host = host;\n this.path = path;\n this.token = token;\n this.connected = connected || (() => { });\n this.reconnect = reconnect || (() => { });\n this.error = error || (() => { });\n this.connection = this._init();\n this.on = this.on;\n this.stop = this.stop;\n this.throttle = this.throttle;\n }\n\n _init() {\n const connection = new signalR.HubConnectionBuilder()\n .withUrl(`${this.host}${this.path}`, {\n accessTokenFactory: () => this.token\n })\n .configureLogging(signalR.LogLevel.Information)\n .build();\n\n connection.start().then(() => this.connected(connection)).catch(err => this._error(err));\n connection.onclose(() => this.reconnect(connection));\n\n return connection;\n }\n\n _error(err) {\n console.error('signalR:', err);\n this.error(err);\n this.throttle(() => {\n this.reconnect(this.connection);\n }, 3000);\n }\n\n updateConfig(options, reInit) {\n if (options && typeof options === 'object') {\n Object.keys(options).forEach(key => this[key] = options[key]);\n }\n if (reInit) {\n this.stop(() => {\n this.connection = this._init();\n });\n } else {\n this.connection.start().then(() => this.connected(this.connection)).catch(err => this._error(err));\n }\n }\n\n on(type, func) {\n this.connection.on(type, (...argument) => func(...argument));\n }\n\n send(type, params = [], error) {\n this.connection.invoke(type, ...params).catch(err => error && error(err));\n }\n\n stop(func) {\n const stoped = () => {\n this.connection = null;\n func && func();\n }\n this.connection.stop().then(stoped).catch(stoped);\n }\n\n throttle(fn, gapTime) {\n let _lastTime = null;\n return function () {\n const _nowTime = +new Date();\n if (_nowTime - _lastTime > gapTime || !_lastTime) {\n fn();\n _lastTime = _nowTime;\n }\n }\n }\n\n static async socketAuth() {\n const { orgId, loginInfo = {} } = localStore.get('user') || {};\n const { SignalRServerHost, CiaToken, enterpriseUniqId: accountId, SignalRToken: token, PosId, storeID, CloudServerAppKey: appKey } = loginInfo;\n const params = { accountId, token, PosId, storeID, orgId, appKey, CiaToken };\n return await axios.get(`${SignalRServerHost}/api/auth/GetAccessToken`, { params });\n }\n}\n"]}
@@ -33,12 +33,12 @@ var rotating = _react2.default.createElement(
33
33
  _react2.default.createElement('div', null),
34
34
  _react2.default.createElement('div', null),
35
35
  _react2.default.createElement('div', null)
36
- ); /**
37
- * @style style
38
- * @className className
39
- * @scale spin缩放比
40
- * @type spin类型 arrow-circle | circle | circle-side | shape
41
- * @visible 是否显示
36
+ ); /**
37
+ * @style style
38
+ * @className className
39
+ * @scale spin缩放比
40
+ * @type spin类型 arrow-circle | circle | circle-side | shape
41
+ * @visible 是否显示
42
42
  */
43
43
 
44
44
 
@@ -1 +1 @@
1
- {"version":3,"sources":["tplus-components-touch/components/spin/index.js"],"names":["Spin","rotating","shapeNode","props","className","style","scale","type","visible","scaleSize","scaleStyle","transform","WebkitTransform","MozTransform","assignStyle","createContent","propTypes","PropTypes","object","string","number","bool"],"mappings":";;;;;;;;;;kBA6BwBA,I;;AAtBxB;;;;AACA;;AACA;;;;;;AAEA,IAAMC,WAAY;AAAA;AAAA,IAAK,SAAM,sCAAX;AAChB,4CADgB;AAEhB,4CAFgB;AAGhB,4CAHgB;AAIhB,4CAJgB;AAKhB,4CALgB;AAMhB,4CANgB;AAOhB,4CAPgB;AAQhB;AARgB,CAAlB,C,CAXA;;;;;;;;;AAsBA,IAAMC,YAAY,SAAZA,SAAY;AAAA,SAAO;AAAA;AAAA,MAAK,WAAU,iBAAf;AACvB,2CAAK,WAAU,eAAf,GADuB;AAEvB,2CAAK,WAAU,eAAf,GAFuB;AAGvB,2CAAK,WAAU,eAAf,GAHuB;AAIvB,2CAAK,WAAU,eAAf;AAJuB,GAAP;AAAA,CAAlB;;AAOe,SAASF,IAAT,CAAcG,KAAd,EAAqB;AAAA,yBACqDA,KADrD,CAC3BC,SAD2B;AAAA,MAC3BA,SAD2B,oCACf,EADe;AAAA,qBACqDD,KADrD,CACXE,KADW;AAAA,MACXA,KADW,gCACH,EADG;AAAA,qBACqDF,KADrD,CACCG,KADD;AAAA,MACCA,KADD,gCACS,CADT;AAAA,oBACqDH,KADrD,CACYI,IADZ;AAAA,MACYA,IADZ,+BACmB,cADnB;AAAA,uBACqDJ,KADrD,CACmCK,OADnC;AAAA,MACmCA,OADnC,kCAC6C,IAD7C;;AAElC,MAAMC,uBAAqBH,KAArB,MAAN;AACA,MAAMI,aAAa;AACjBC,eAAWF,SADM;AAEjBG,qBAAiBH,SAFA;AAGjBI,kBAAcJ;AAHG,GAAnB;AAKA,MAAMK,yCAAkBT,KAAlB,EAA4BK,UAA5B,CAAN;AACA,MAAI,CAACF,OAAL,EAAc,OAAO,IAAP;AACd,MAAMO,gBAAgB,SAAhBA,aAAgB,GAAM;AAC1B,QAAIR,SAAS,OAAb,EAAsB,OAAOL,WAAP;AACtB,QAAIK,SAAS,UAAb,EAAyB,OAAON,QAAP;AACzB,WAAO,uCAAK,WAAWM,IAAhB,GAAP;AACD,GAJD;AAKA,SAAO;AAAA;AAAA,MAAK,2BAAyBH,SAA9B,EAA2C,OAAOU,WAAlD;AACJC;AADI,GAAP;AAGD;;AAGDf,KAAKgB,SAAL,GAAiB;AACfX,SAAOY,oBAAUC,MADF;AAEfd,aAAWa,oBAAUE,MAFN;AAGfZ,QAAMU,oBAAUE,MAHD;AAIfb,SAAOW,oBAAUG,MAJF;AAKfZ,WAASS,oBAAUI;AALJ,CAAjB","file":"index.js","sourcesContent":["/**\r\n * @style style\r\n * @className className\r\n * @scale spin缩放比\r\n * @type spin类型 arrow-circle | circle | circle-side | shape\r\n * @visible 是否显示\r\n */\r\nimport React from 'react';\r\nimport './spin-style.less';\r\nimport PropTypes, {oneOfType} from 'prop-types';\r\n\r\nconst rotating = (<div class=\"la-ball-spin-clockwise-fade-rotating\">\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n <div></div>\r\n</div>)\r\n\r\nconst shapeNode = () => (<div className=\"shape-container\">\r\n <div className=\"shape shape-1\"></div>\r\n <div className=\"shape shape-2\"></div>\r\n <div className=\"shape shape-3\"></div>\r\n <div className=\"shape shape-4\"></div>\r\n</div>)\r\n\r\nexport default function Spin(props) {\r\n const {className = '', style = {}, scale = 1, type = 'arrow-circle', visible = true} = props;\r\n const scaleSize = `scale(${scale})`;\r\n const scaleStyle = {\r\n transform: scaleSize,\r\n WebkitTransform: scaleSize,\r\n MozTransform: scaleSize,\r\n };\r\n const assignStyle = {...style, ...scaleStyle};\r\n if (!visible) return null;\r\n const createContent = () => {\r\n if (type === 'shape') return shapeNode();\r\n if (type === 'rotating') return rotating;\r\n return <div className={type} />;\r\n }\r\n return(<div className={`tplus-spin ${className}`} style={assignStyle}>\r\n {createContent()}\r\n </div>);\r\n}\r\n\r\n\r\nSpin.propTypes = {\r\n style: PropTypes.object,\r\n className: PropTypes.string,\r\n type: PropTypes.string,\r\n scale: PropTypes.number,\r\n visible: PropTypes.bool,\r\n};\r\n"]}
1
+ {"version":3,"sources":["tplus-components-touch/components/spin/index.js"],"names":["Spin","rotating","shapeNode","props","className","style","scale","type","visible","scaleSize","scaleStyle","transform","WebkitTransform","MozTransform","assignStyle","createContent","propTypes","PropTypes","object","string","number","bool"],"mappings":";;;;;;;;;;kBA6BwBA,I;;AAtBxB;;;;AACA;;AACA;;;;;;AAEA,IAAMC,WAAY;AAAA;AAAA,IAAK,SAAM,sCAAX;AAChB,4CADgB;AAEhB,4CAFgB;AAGhB,4CAHgB;AAIhB,4CAJgB;AAKhB,4CALgB;AAMhB,4CANgB;AAOhB,4CAPgB;AAQhB;AARgB,CAAlB,C,CAXA;;;;;;;;;AAsBA,IAAMC,YAAY,SAAZA,SAAY;AAAA,SAAO;AAAA;AAAA,MAAK,WAAU,iBAAf;AACvB,2CAAK,WAAU,eAAf,GADuB;AAEvB,2CAAK,WAAU,eAAf,GAFuB;AAGvB,2CAAK,WAAU,eAAf,GAHuB;AAIvB,2CAAK,WAAU,eAAf;AAJuB,GAAP;AAAA,CAAlB;;AAOe,SAASF,IAAT,CAAcG,KAAd,EAAqB;AAAA,yBACqDA,KADrD,CAC3BC,SAD2B;AAAA,MAC3BA,SAD2B,oCACf,EADe;AAAA,qBACqDD,KADrD,CACXE,KADW;AAAA,MACXA,KADW,gCACH,EADG;AAAA,qBACqDF,KADrD,CACCG,KADD;AAAA,MACCA,KADD,gCACS,CADT;AAAA,oBACqDH,KADrD,CACYI,IADZ;AAAA,MACYA,IADZ,+BACmB,cADnB;AAAA,uBACqDJ,KADrD,CACmCK,OADnC;AAAA,MACmCA,OADnC,kCAC6C,IAD7C;;AAElC,MAAMC,uBAAqBH,KAArB,MAAN;AACA,MAAMI,aAAa;AACjBC,eAAWF,SADM;AAEjBG,qBAAiBH,SAFA;AAGjBI,kBAAcJ;AAHG,GAAnB;AAKA,MAAMK,yCAAkBT,KAAlB,EAA4BK,UAA5B,CAAN;AACA,MAAI,CAACF,OAAL,EAAc,OAAO,IAAP;AACd,MAAMO,gBAAgB,SAAhBA,aAAgB,GAAM;AAC1B,QAAIR,SAAS,OAAb,EAAsB,OAAOL,WAAP;AACtB,QAAIK,SAAS,UAAb,EAAyB,OAAON,QAAP;AACzB,WAAO,uCAAK,WAAWM,IAAhB,GAAP;AACD,GAJD;AAKA,SAAO;AAAA;AAAA,MAAK,2BAAyBH,SAA9B,EAA2C,OAAOU,WAAlD;AACJC;AADI,GAAP;AAGD;;AAGDf,KAAKgB,SAAL,GAAiB;AACfX,SAAOY,oBAAUC,MADF;AAEfd,aAAWa,oBAAUE,MAFN;AAGfZ,QAAMU,oBAAUE,MAHD;AAIfb,SAAOW,oBAAUG,MAJF;AAKfZ,WAASS,oBAAUI;AALJ,CAAjB","file":"index.js","sourcesContent":["/**\n * @style style\n * @className className\n * @scale spin缩放比\n * @type spin类型 arrow-circle | circle | circle-side | shape\n * @visible 是否显示\n */\nimport React from 'react';\nimport './spin-style.less';\nimport PropTypes, {oneOfType} from 'prop-types';\n\nconst rotating = (<div class=\"la-ball-spin-clockwise-fade-rotating\">\n <div></div>\n <div></div>\n <div></div>\n <div></div>\n <div></div>\n <div></div>\n <div></div>\n <div></div>\n</div>)\n\nconst shapeNode = () => (<div className=\"shape-container\">\n <div className=\"shape shape-1\"></div>\n <div className=\"shape shape-2\"></div>\n <div className=\"shape shape-3\"></div>\n <div className=\"shape shape-4\"></div>\n</div>)\n\nexport default function Spin(props) {\n const {className = '', style = {}, scale = 1, type = 'arrow-circle', visible = true} = props;\n const scaleSize = `scale(${scale})`;\n const scaleStyle = {\n transform: scaleSize,\n WebkitTransform: scaleSize,\n MozTransform: scaleSize,\n };\n const assignStyle = {...style, ...scaleStyle};\n if (!visible) return null;\n const createContent = () => {\n if (type === 'shape') return shapeNode();\n if (type === 'rotating') return rotating;\n return <div className={type} />;\n }\n return(<div className={`tplus-spin ${className}`} style={assignStyle}>\n {createContent()}\n </div>);\n}\n\n\nSpin.propTypes = {\n style: PropTypes.object,\n className: PropTypes.string,\n type: PropTypes.string,\n scale: PropTypes.number,\n visible: PropTypes.bool,\n};\n"]}