New file |
| | |
| | | node_modules/ |
| | | dist/ |
| | | npm-debug.log* |
| | | yarn-debug.log* |
| | | yarn-error.log* |
| | | |
| | | # Editor directories and files |
| | | .idea |
| | | .vscode |
| | | *.suo |
| | | *.ntvs* |
| | | *.njsproj |
| | | *.sln |
New file |
| | |
| | | { |
| | | // 使用 IntelliSense 了解相关属性。 |
| | | // 悬停以查看现有属性的描述。 |
| | | // 欲了解更多信息,请访问: https://go.microsoft.com/fwlink/?linkid=830387 |
| | | "version": "0.2.0", |
| | | "configurations": [] |
| | | } |
New file |
| | |
| | | |
| | | const g = typeof global !== 'undefined' ? global : self; |
| | | g.appXAppJson = { |
| | | "app": { |
| | | "$homepage": "pages/home/home" |
| | | } |
| | | }; |
New file |
| | |
| | | if(!self.Map || !self.Set || !self.Symbol) { |
| | | importScripts('https://gw.alipayobjects.com/as/g/appx_release/deps/1.0.3/es6-set-map-symbol.js'); |
| | | } |
| | | |
New file |
| | |
| | | require('@alipay/appx-compiler/lib/sjsEnvInit'); |
| | | require('./config$'); |
| | | |
| | | require('../../node_modules/mini-ali-ui/es/badge/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/am-icon/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/tabs/index?hash=4a98b35daa3eee1b62960d4d5bbcbf254cbf11e3'); |
| | | require('../../node_modules/mini-ali-ui/es/tabs/tab-content/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/search-bar/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/popup/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/collapse/index?hash=a11fdcdff8ea970c65f185a8731cafe48f67047c'); |
| | | require('../../node_modules/mini-ali-ui/es/collapse/collapse-item/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../components/fitler/fitler?hash=354cb92cdc6053453b91b49e22977b08efde6a61'); |
| | | require('../../node_modules/mini-ali-ui/es/loading/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/list/index?hash=e1617a0257fb9de746f60d50b03404ad924976c9'); |
| | | require('../../node_modules/mini-ali-ui/es/input-item/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/verify-code/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/long-password/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/avatar/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/button/index?hash=e1617a0257fb9de746f60d50b03404ad924976c9'); |
| | | require('../../node_modules/mini-ali-ui/es/modal/index?hash=febd4c40992222524e0db12a74760a28f8f9b339'); |
| | | require('../../node_modules/mini-ali-ui/es/picker-item/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../components/orderTrial/orderTrial?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../components/QRCodeView/QRCodeView?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/am-radio/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/list/auto-size-img/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/list/list-item/index?hash=a5465b8c889360e3f854461d3ac41cf414aec633'); |
| | | require('../../pages/home/home?hash=9676af08f02ab6877f66c88a5599f6228f076a67'); |
| | | require('../../pages/index/index?hash=95bcfeb33689b813cb703b11c35da0864d69d6fc'); |
| | | require('../../pages/paypage/paypage?hash=32d7d2807ed4e666ef03b4b3fe8c38ecf2e34e68'); |
| | | require('../../pages/forgetPassword/forgetPassword?hash=95bcfeb33689b813cb703b11c35da0864d69d6fc'); |
| | | require('../../pages/userCenter/userCenter?hash=c0825856d8ab7db321bdd0ebdd2606fa94d544f0'); |
| | | require('../../pages/businessData/businessData?hash=02e5d22beb4d8b5ce9fe01e2245252aaa9b53562'); |
| | | require('../../pages/hbfqPage/orderInfo/orderInfo?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | require('../../pages/hbfqPage/qrCode/qrCode?hash=14138944b7ae79add9366738dd067287d1b4b5a8'); |
| | | require('../../pages/shskPage/orderInfo/orderInfo?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | require('../../pages/shskPage/qrCode/qrCode?hash=14138944b7ae79add9366738dd067287d1b4b5a8'); |
| | | require('../../pages/changePassword/changePassword?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | require('../../pages/changeUser/changeUser?hash=3930b793bedbb5bce57252b2568d4e1a9ad8ea1b'); |
| | | require('../../pages/order/hbfqOrder/hbfqOrder?hash=b7340e58f6e63dafeccfeef5e60d8e039095703c'); |
| | | require('../../pages/order/shskOrder/shskOrder?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
New file |
| | |
| | | if(!self.__appxInited) { |
| | | self.__appxInited = 1; |
| | | require('@alipay/appx-compiler/lib/sjsEnvInit'); |
| | | |
| | | require('./config$'); |
| | | |
| | | |
| | | if( navigator.userAgent && (navigator.userAgent.indexOf('LyraVM') > 0 || navigator.userAgent.indexOf('AlipayIDE') > 0) ) { |
| | | var AFAppX = self.AFAppX.getAppContext ? self.AFAppX.getAppContext().AFAppX : self.AFAppX; |
| | | } else { |
| | | importScripts('https://appx/af-appx.worker.min.js'); |
| | | var AFAppX = self.AFAppX; |
| | | } |
| | | self.getCurrentPages = AFAppX.getCurrentPages; |
| | | self.getApp = AFAppX.getApp; |
| | | self.Page = AFAppX.Page; |
| | | self.App = AFAppX.App; |
| | | self.my = AFAppX.bridge || AFAppX.abridge; |
| | | self.abridge = self.my; |
| | | self.Component = AFAppX.WorkerComponent || function(){}; |
| | | self.$global = AFAppX.$global; |
| | | self.requirePlugin = AFAppX.requirePlugin; |
| | | |
| | | |
| | | if(AFAppX.registerApp) { |
| | | AFAppX.registerApp({ |
| | | appJSON: appXAppJson, |
| | | }); |
| | | } |
| | | |
| | | if(AFAppX.compilerConfig){ AFAppX.compilerConfig.component2 = true; } |
| | | |
| | | function success() { |
| | | require('../../app'); |
| | | require('../../node_modules/mini-ali-ui/es/badge/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/am-icon/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/tabs/index?hash=4a98b35daa3eee1b62960d4d5bbcbf254cbf11e3'); |
| | | require('../../node_modules/mini-ali-ui/es/tabs/tab-content/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/search-bar/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/popup/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/collapse/index?hash=a11fdcdff8ea970c65f185a8731cafe48f67047c'); |
| | | require('../../node_modules/mini-ali-ui/es/collapse/collapse-item/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../components/fitler/fitler?hash=354cb92cdc6053453b91b49e22977b08efde6a61'); |
| | | require('../../node_modules/mini-ali-ui/es/loading/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/list/index?hash=e1617a0257fb9de746f60d50b03404ad924976c9'); |
| | | require('../../node_modules/mini-ali-ui/es/input-item/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/verify-code/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/long-password/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/avatar/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/button/index?hash=e1617a0257fb9de746f60d50b03404ad924976c9'); |
| | | require('../../node_modules/mini-ali-ui/es/modal/index?hash=febd4c40992222524e0db12a74760a28f8f9b339'); |
| | | require('../../node_modules/mini-ali-ui/es/picker-item/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../components/orderTrial/orderTrial?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../components/QRCodeView/QRCodeView?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/am-radio/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/list/auto-size-img/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/list/list-item/index?hash=a5465b8c889360e3f854461d3ac41cf414aec633'); |
| | | require('../../pages/home/home?hash=9676af08f02ab6877f66c88a5599f6228f076a67'); |
| | | require('../../pages/index/index?hash=95bcfeb33689b813cb703b11c35da0864d69d6fc'); |
| | | require('../../pages/paypage/paypage?hash=32d7d2807ed4e666ef03b4b3fe8c38ecf2e34e68'); |
| | | require('../../pages/forgetPassword/forgetPassword?hash=95bcfeb33689b813cb703b11c35da0864d69d6fc'); |
| | | require('../../pages/userCenter/userCenter?hash=c0825856d8ab7db321bdd0ebdd2606fa94d544f0'); |
| | | require('../../pages/businessData/businessData?hash=02e5d22beb4d8b5ce9fe01e2245252aaa9b53562'); |
| | | require('../../pages/hbfqPage/orderInfo/orderInfo?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | require('../../pages/hbfqPage/qrCode/qrCode?hash=14138944b7ae79add9366738dd067287d1b4b5a8'); |
| | | require('../../pages/shskPage/orderInfo/orderInfo?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | require('../../pages/shskPage/qrCode/qrCode?hash=14138944b7ae79add9366738dd067287d1b4b5a8'); |
| | | require('../../pages/changePassword/changePassword?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | require('../../pages/changeUser/changeUser?hash=3930b793bedbb5bce57252b2568d4e1a9ad8ea1b'); |
| | | require('../../pages/order/hbfqOrder/hbfqOrder?hash=b7340e58f6e63dafeccfeef5e60d8e039095703c'); |
| | | require('../../pages/order/shskOrder/shskOrder?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | } |
| | | self.bootstrapApp ? self.bootstrapApp({ success }) : success(); |
| | | } |
New file |
| | |
| | | |
| | | const g = typeof global !== 'undefined' ? global : self; |
| | | g.appXAppJson = { |
| | | "app": { |
| | | "$homepage": "pages/home/home" |
| | | } |
| | | }; |
New file |
| | |
| | | if(!self.Map || !self.Set || !self.Symbol) { |
| | | importScripts('https://gw.alipayobjects.com/as/g/appx_release/deps/1.0.3/es6-set-map-symbol.js'); |
| | | } |
| | | importScripts(`https://appx/af-appx.worker.min.js`); |
New file |
| | |
| | | require('@alipay/appx-compiler/lib/sjsEnvInit'); |
| | | require('./config$'); |
| | | |
| | | require('../../node_modules/mini-ali-ui/es/badge/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/am-icon/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/tabs/index?hash=4a98b35daa3eee1b62960d4d5bbcbf254cbf11e3'); |
| | | require('../../node_modules/mini-ali-ui/es/tabs/tab-content/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/search-bar/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/popup/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/collapse/index?hash=a11fdcdff8ea970c65f185a8731cafe48f67047c'); |
| | | require('../../node_modules/mini-ali-ui/es/collapse/collapse-item/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../components/fitler/fitler?hash=354cb92cdc6053453b91b49e22977b08efde6a61'); |
| | | require('../../node_modules/mini-ali-ui/es/loading/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/list/index?hash=e1617a0257fb9de746f60d50b03404ad924976c9'); |
| | | require('../../node_modules/mini-ali-ui/es/input-item/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/verify-code/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/long-password/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/avatar/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/button/index?hash=e1617a0257fb9de746f60d50b03404ad924976c9'); |
| | | require('../../node_modules/mini-ali-ui/es/modal/index?hash=febd4c40992222524e0db12a74760a28f8f9b339'); |
| | | require('../../node_modules/mini-ali-ui/es/picker-item/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../components/orderTrial/orderTrial?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../components/QRCodeView/QRCodeView?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/am-radio/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/list/auto-size-img/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/list/list-item/index?hash=a5465b8c889360e3f854461d3ac41cf414aec633'); |
| | | require('../../pages/home/home?hash=9676af08f02ab6877f66c88a5599f6228f076a67'); |
| | | require('../../pages/index/index?hash=95bcfeb33689b813cb703b11c35da0864d69d6fc'); |
| | | require('../../pages/paypage/paypage?hash=32d7d2807ed4e666ef03b4b3fe8c38ecf2e34e68'); |
| | | require('../../pages/forgetPassword/forgetPassword?hash=95bcfeb33689b813cb703b11c35da0864d69d6fc'); |
| | | require('../../pages/userCenter/userCenter?hash=c0825856d8ab7db321bdd0ebdd2606fa94d544f0'); |
| | | require('../../pages/businessData/businessData?hash=02e5d22beb4d8b5ce9fe01e2245252aaa9b53562'); |
| | | require('../../pages/hbfqPage/orderInfo/orderInfo?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | require('../../pages/hbfqPage/qrCode/qrCode?hash=14138944b7ae79add9366738dd067287d1b4b5a8'); |
| | | require('../../pages/shskPage/orderInfo/orderInfo?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | require('../../pages/shskPage/qrCode/qrCode?hash=14138944b7ae79add9366738dd067287d1b4b5a8'); |
| | | require('../../pages/changePassword/changePassword?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | require('../../pages/changeUser/changeUser?hash=3930b793bedbb5bce57252b2568d4e1a9ad8ea1b'); |
| | | require('../../pages/order/hbfqOrder/hbfqOrder?hash=b7340e58f6e63dafeccfeef5e60d8e039095703c'); |
| | | require('../../pages/order/shskOrder/shskOrder?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
New file |
| | |
| | | /**! __BUGME_START__ */ !function(){"use strict";var ERuntimeRemoteObjectType,ERuntimeRemoteObjectSubType;!function(e){e.Object="object",e.Function="function",e.Undefined="undefined",e.String="string",e.Number="number",e.Boolean="boolean",e.Symbol="Symbol",e.Bigint="bigint",e.Wasm="wasm"}(ERuntimeRemoteObjectType||(ERuntimeRemoteObjectType={})),function(e){e.Error="error",e.Array="array",e.Null="null"}(ERuntimeRemoteObjectSubType||(ERuntimeRemoteObjectSubType={}));var appxStackLine=/https:\/\/appx\/af-appx\.worker\.min\.js:\d+:\d+/,nativeScriptLine=/https:\/\/www\.alipay\.com\/?:\d+:\d+|\[native code\]/,pluginWorkerStackLine=/https:\/\/\d+\.hybrid\.\S+\.com\/__plugins__\/(\d+)\/index\.worker\.js:\d+:\d+/,appWorkerStackLine=/https:\/\/\d+\.hybrid\.\S+\.com\/index\.worker\.js:\d+:\d+/;function transformSourceUrl(e){try{return pluginWorkerStackLine.test(e)?e.replace(pluginWorkerStackLine,"Plugin-$1"):e.replace(appWorkerStackLine,"App")}catch(t){return e}}function formatStack(e){var t=e.split("\n"),n=t[0],s=t.slice(1).filter((function(e){return!appxStackLine.test(e)&&!nativeScriptLine.test(e)})).map(transformSourceUrl).map((function(e){return" "===e[0]?e:" "+e}));return s.unshift(n),s.join("\n")}function error2RemoteObject(e){var t=e.name,n=e.message,s=e.stack;"string"!=typeof s&&(s=e.toString()),-1===s.indexOf(t)&&(s=e.toString()+"\n"+s);try{s=formatStack(s)}catch(e){}return{className:t,description:s,preview:{description:s,overflow:!1,properties:[{name:"stack",type:ERuntimeRemoteObjectType.String,value:s},{name:"message",type:ERuntimeRemoteObjectType.String,value:n}],subtype:ERuntimeRemoteObjectSubType.Error,type:ERuntimeRemoteObjectType.Object},subtype:ERuntimeRemoteObjectSubType.Error,type:ERuntimeRemoteObjectType.Object}}function isError(e){try{return"[object Error]"===Object.prototype.toString.call(e)}catch(e){return!1}}function getStartupParams(){if("undefined"!=typeof __appxStartupParams&&__appxStartupParams&&__appxStartupParams.appId)return __appxStartupParams;if("undefined"!=typeof my)try{return my.callSync("getStartupParams")||{}}catch(e){}return{}}var serverConfig={default:{domain:"hpmweb.alipay.com"},1:{domain:"hpmweb.alipay.com"}},ResponseEvent,RequestMethod,BreakStepType,FingerType;function getServerConfig(){var e=getStartupParams().remoteCh;return e&&serverConfig[e]?serverConfig[e]:serverConfig.default}!function(e){e.ById="Tyro.byId",e.Sticky="Tyro.sticky",e.StickyNotSendPaused="Tyro.stickyNotSendPaused",e.StickyAsync="Tyro.stickyAsync",e.ScriptSource="Tyro.scriptSource",e.Resumed="Debugger.resumed",e.ConsoleAPICalled="Runtime.consoleAPICalled"}(ResponseEvent||(ResponseEvent={})),function(e){e.DiscardConsoleEntries="Tyro.discardConsoleEntries",e.Evaluate="Tyro.evaluate",e.EvaluateOnCallFrame="Tyro.evaluateOnCallFrame",e.CallFunctionOn="Tyro.callFunctionOn",e.CompileScript="Tyro.compileScript",e.SetBreakpointsActive="Tyro.setBreakpointsActive",e.SetSkipAllPauses="Tyro.setSkipAllPauses",e.Resume="Tyro.resume",e.StepInto="Tyro.stepInto",e.StepOver="Tyro.stepOver",e.StepOut="Tyro.stepOut",e.Pause="Tyro.pause",e.GetPossibleBreakpoints="Tyro.getPossibleBreakpoints",e.SetBreakpointByUrl="Tyro.setBreakpointByUrl",e.SetBreakpoint="Tyro.setBreakpoint",e.RemoveBreakpoint="Tyro.removeBreakpoint",e.REPL="Tyro.repl",e.GetVariableValue="Tyro.getVariableValue",e.SetPauseOnExceptions="Tyro.setPauseOnExceptions",e.SetAsyncCallStackDepth="Tyro.setAsyncCallStackDepth",e.GetProperties="Tyro.getProperties"}(RequestMethod||(RequestMethod={})),function(e){e[e.Non=0]="Non",e[e.NextSticky=1]="NextSticky",e[e.StepOver=2]="StepOver",e[e.StepOut=3]="StepOut"}(BreakStepType||(BreakStepType={})),function(e){e[e.Entry=0]="Entry",e[e.Exit=1]="Exit"}(FingerType||(FingerType={}));var TyroUtil=function(){function e(){}return e.throwsMessage=function(e){return"[Throws: "+(e?e.message:"?")+"]"},e.safeGetValueFromPropertyOnObject=function(t,n){if(Object.prototype.hasOwnProperty.call(t,n))try{return t[n]}catch(t){return e.throwsMessage(t)}return t[n]},e.ensureProperties=function(t){var n=[];return function t(s){if(null===s||"object"!=typeof s)return s;if(-1!==n.indexOf(s))return"[Circular]";if(n.push(s),"function"==typeof s.toJSON)try{var r=t(s.toJSON());return n.pop(),r}catch(t){return e.throwsMessage(t)}if(Array.isArray(s)){var i=s.map(t);return n.pop(),i}var o=Object.keys(s).reduce((function(n,r){return n[r]=t(e.safeGetValueFromPropertyOnObject(s,r)),n}),{});return n.pop(),o}(t)},e.safeJSONStringify=function(t,n,s){return JSON.stringify(e.ensureProperties(t),n,s)},e.isWebIDE=function(){return!("undefined"==typeof navigator||!navigator)&&(navigator.swuserAgent||navigator.userAgent||"").indexOf("AlipayIDE")>-1},e}(),StickyFinger=function(){function StickyFinger(e,t,n,s){var r=this;this.isWebIDE=!1,this.asyncRequestMethod="tyroRequest",this.host=t,this.contextMap={},this.contextUrlMap={},this.breakpointMap={},this.breakpointIdMap={},this.debuggerMap={},this.objectMap={},this.originConsoleAPI={},this.requestTaskId=0,this.stickyMsgQueue=[],this.wsMsgQueue=[],this.wsIsOpen=!1,this.instrumentId=n,this.stickyFlag=s.stickyFlag,this.fingerFlag=s.fingerFlag,this.hookConsole(),this.stickyFlag&&(setTimeout((function(){r.socketTask=my.connectSocket({url:"wss://"+getServerConfig().domain+"/tyro/agent/"+r.instrumentId,multiple:!0});var e=function(){if(!r.wsIsOpen){r.originConsoleAPI.log("[tyro-agent] WebSocket 连接成功"),r.wsIsOpen=!0;for(var e=0,t=r.wsMsgQueue;e<t.length;e++){var n=t[e];r.socketTask.send({data:n})}r.wsMsgQueue=[]}};r.socketTask.onOpen((function(){e()})),r.socketTask.onClose((function(){r.originConsoleAPI.log("[tyro-agent] WebSocket 连接已关闭")})),r.socketTask.onMessage((function(t){r.wsIsOpen||e(),r.handleStickyAsync(JSON.parse(t.data.data))}))}),2e3),this.breakpointsActive=!0,this.skipAllPauses=!1,this.breakStepType=BreakStepType.Non,this.stackDepth=0,this.pauseOnExceptions="none",this.asyncCallStackDepth=0,this.lastStickyAsyncError=0,this.generateObjectId=0,this.globalExecutionContext=e,this.evaluateOnCallFrameExpression="",this.stickyNotSendPaused=!1,this.sendStickyParams=!1),this.fingerFlag&&(this.fingerId=0,this.fingerCache=[],this.fingerSendInterval=1e3,this.jsapiCallId=0,setInterval((function(){0!==r.fingerCache.length&&(r.sendPerf("Perf.trace",r.fingerCache),r.fingerCache=[])}),this.fingerSendInterval)),this.isWebIDE=TyroUtil.isWebIDE(),this.isWebIDE&&(this.asyncRequestMethod="tyroRequestAsync")}return StickyFinger.rewritePath=function(e){var t=e;return"."===t[0]&&(t=t.replace(".","")),t="app://"+(t=t.replace("tmp/data/build/",""))},StickyFinger.processRawContext=function(e){var t={path:this.rewritePath(e.path),contextId:String(e.contextId),scope:{0:[]},function:{},debuggerLine:e.debuggerLine,stickyLine:e.stickyLine};return e.scope&&Object.keys(e.scope).map((function(n){var s=e.scope[n],r=s.shift(),i=t.scope[r];t.scope[n]=i?i.concat(s.filter((function(e){return i.indexOf(e)<0}))):s})),e.function&&Object.keys(e.function).map((function(n){var s=e.function[n];t.function[n]={name:s[0],line:s[1]}})),t},StickyFinger.prototype.register=function(e,t){var n=String(e.contextId),s=StickyFinger.rewritePath(e.path);this.originConsoleAPI.log("[tyro-agent] register contextId "+n+" path "+s),this.contextMap[n]||this.breakpointMap[n]?this.originConsoleAPI.warn("[tyro-agent] duplicate context register "+n+" "+s):(this.contextMap[n]=StickyFinger.processRawContext(e),this.contextUrlMap[s]=n,this.breakpointMap[n]={},this.debuggerMap[n]=this.contextMap[n].debuggerLine.reduce((function(e,t){return e[t-1]=!0,e}),{}),this.stickyFlag&&this.xhrSend(ResponseEvent.ScriptSource,{scriptSource:t,scriptId:String(n),executionContextId:0,url:s}))},StickyFinger.prototype.sticky=function(e,t,n){if(!this.skipAllPauses&&this.breakpointsActive&&((this.debuggerMap[e]||{})[t]||(this.breakpointMap[e]||{})[t]||this.breakStepType===BreakStepType.NextSticky||this.breakStepType===BreakStepType.StepOver&&(new Error).stack.split("\n").length<=this.stackDepth||this.breakStepType===BreakStepType.StepOut&&(new Error).stack.split("\n").length<this.stackDepth||!0===this.sendStickyParams)){this.originConsoleAPI.log("[tyro-agent] sticky "+e+" "+t),this.breakStepType=BreakStepType.Non;var s={};if(this.stickyNotSendPaused)this.originConsoleAPI.log("[tyro-agent] stickyNotSendPaused");else{if(!this.sendStickyParams){this.originConsoleAPI.log("[tyro-agent] sticky sendStickyParams step 1"),s={callFrames:null,reason:"other",hitBreakpoints:[]};var r=this.breakpointMap[e][t];r&&s.hitBreakpoints.push(r);var i=(new Error).stack.split("\n");return this.stackDepth=i.length,Agent.isPhone?s.callFrames=this.processCallFramesPhone(String(e),t,n,i):s.callFrames=this.processCallFrames(String(e),t,n,i),this.stickyParams=s,this.sendStickyParams=!0,"(() => {\n const localObject = {};\n for (const key of Agent.getScopeVariables()) {\n localObject[key] = (() => {try{return eval(key)}catch(e){return undefined}})();\n }\n Agent.inflateStickyParamsObject(localObject);\n return true;\n })()"}this.originConsoleAPI.log("[tyro-agent] sticky sendStickyParams step 2"),s=this.stickyParams,this.sendStickyParams=!1}this.originConsoleAPI.log("[tyro-agent] sticky params "+TyroUtil.safeJSONStringify(s));var o=JSON.parse(this.xhrSend(ResponseEvent.Sticky,s));return this.handleSticky(o)}},StickyFinger.prototype.fingerEntry=function(e,t){var n=this.contextMap[e].path,s=this.contextMap[e].function[t],r=this.generateFingerId(),i={time:Date.now(),file:n,line:s.line,name:s.name,id:r,type:FingerType.Entry};return this.fingerCache.push(i),r},StickyFinger.prototype.fingerExit=function(e,t,n){var s=this.contextMap[e].path,r=this.contextMap[e].function[t],i={time:Date.now(),file:s,line:r.line,name:r.name,id:n,type:FingerType.Exit};this.fingerCache.push(i)},StickyFinger.prototype.sendPerf=function(e,t){self.bugmeAPI?self.bugmeAPI.send({method:e,params:t}):self.document?self.document.addEventListener("bugmeInjected",(function(){self.bugmeAPI.send({method:e,params:t})})):self.addEventListener&&self.addEventListener("bugmeInjected",(function(){self.bugmeAPI.send({method:e,params:t})}))},StickyFinger.prototype.hookConsole=function(){var e=this;this.originConsoleAPI.log=console.log.bind(console),this.originConsoleAPI.debug=console.debug.bind(console),this.originConsoleAPI.info=console.info.bind(console),this.originConsoleAPI.error=console.error.bind(console),this.originConsoleAPI.warn=console.warn.bind(console),console.log=function(){for(var t,n=[],s=0;s<arguments.length;s++)n[s]=arguments[s];if((t=e.originConsoleAPI).log.apply(t,n),!(n.length>0&&"string"==typeof n[0]&&(n[0].indexOf("[framework]")>=0||n[0].indexOf("dispatchEvent")>=0||n[0].indexOf("onMessage push")>=0))){var r={type:"log",args:n.map((function(t){return e.objectToRemoteObject(t,null,"object"==typeof t)})),executionContextId:0,timestamp:(new Date).getTime()};e.xhrSend(ResponseEvent.ConsoleAPICalled,r,null,!1)}},console.debug=function(){for(var t,n=[],s=0;s<arguments.length;s++)n[s]=arguments[s];if((t=e.originConsoleAPI).debug.apply(t,n),!(n.length>0&&"string"==typeof n[0]&&(n[0].indexOf("[framework]")>=0||n[0].indexOf("dispatchEvent")>=0||n[0].indexOf("onMessage push")>=0))){var r={type:"debug",args:n.map((function(t){return e.objectToRemoteObject(t,null,"object"==typeof t)})),executionContextId:0,timestamp:(new Date).getTime()};e.xhrSend(ResponseEvent.ConsoleAPICalled,r,null,!1)}},console.info=function(){for(var t,n=[],s=0;s<arguments.length;s++)n[s]=arguments[s];if((t=e.originConsoleAPI).info.apply(t,n),!(n.length>0&&"string"==typeof n[0]&&(n[0].indexOf("[framework]")>=0||n[0].indexOf("dispatchEvent")>=0||n[0].indexOf("onMessage push")>=0))){var r={type:"info",args:n.map((function(t){return e.objectToRemoteObject(t,null,"object"==typeof t)})),executionContextId:0,timestamp:(new Date).getTime()};e.xhrSend(ResponseEvent.ConsoleAPICalled,r,null,!1)}},console.error=function(){for(var t,n=[],s=0;s<arguments.length;s++)n[s]=arguments[s];if((t=e.originConsoleAPI).error.apply(t,n),!(n.length>0&&"string"==typeof n[0]&&(n[0].indexOf("[framework]")>=0||n[0].indexOf("dispatchEvent")>=0||n[0].indexOf("onMessage push")>=0))){var r={type:"error",args:n.map((function(t){return e.objectToRemoteObject(t,null,"object"==typeof t)})),executionContextId:0,timestamp:(new Date).getTime()};e.xhrSend(ResponseEvent.ConsoleAPICalled,r,null,!1)}},console.warn=function(){for(var t,n=[],s=0;s<arguments.length;s++)n[s]=arguments[s];if((t=e.originConsoleAPI).warn.apply(t,n),!(n.length>0&&"string"==typeof n[0]&&(n[0].indexOf("[framework]")>=0||n[0].indexOf("dispatchEvent")>=0||n[0].indexOf("onMessage push")>=0))){var r={type:"warning",args:n.map((function(t){return e.objectToRemoteObject(t,null,"object"==typeof t)})),executionContextId:0,timestamp:(new Date).getTime()};e.xhrSend(ResponseEvent.ConsoleAPICalled,r,null,!1)}}},StickyFinger.prototype.inflateStickyParamsObject=function(e){if(0!==this.stickyParams.callFrames.length){this.generateObjectId+=1;var t=String(this.generateObjectId);this.objectMap[t]=e,this.stickyParams.callFrames[0].scopeChain.push({type:"local",name:this.stickyParams.callFrames[0].functionName,object:{className:"Object",description:"Object",objectId:t,type:"object"}})}},StickyFinger.prototype.processCallFrames=function(e,t,n,s){var r=this,i=[],o=s.slice(3,s.length).map((function(e){return e.substr(0,e.lastIndexOf(":")).replace(" at ","").replace(" (",":")})),a=0,c=!0;return o.map((function(t){var s=t.split(":"),o=s[0],p=r.contextMap[e].path,u=Number(s[s.length-1]),l=r.contextUrlMap[p]||"none",y=a+":"+u+":"+p;c&&(r.scopeVariables=void 0!==r.contextMap[e]?r.contextMap[e].scope[n]:[],c=!1);var h={callFrameId:y,functionName:o,location:{scriptId:l,lineNumber:u,columnNumber:0},url:p,scopeChain:[],this:{}};i.push(h),a+=1})),i},StickyFinger.prototype.processCallFramesPhone=function(e,t,n,s){var r=this,i=[],o=s.slice(2,s.length).map((function(e){return e.substr(0,e.lastIndexOf(":")).replace(" at ","").replace(" (",":").replace("@",":")})),a=0,c=!0;return o.map((function(s){var o=s.split(":"),p=o[0],u=r.contextMap[e].path,l=Number(o[o.length-1]),y=r.contextUrlMap[u]||"none",h=a+":"+l+":"+u;c&&(r.scopeVariables=void 0!==r.contextMap[e]?r.contextMap[e].scope[n]:[],r.originConsoleAPI.log("scopeVariables "+TyroUtil.safeJSONStringify(r.scopeVariables)),r.originConsoleAPI.log("scopeVariables "+TyroUtil.safeJSONStringify(r.contextMap[e])+" "+r.contextMap[e].scope+" "+n),c=!1);var d={callFrameId:h,functionName:p,location:{scriptId:y,lineNumber:t,columnNumber:0},url:u,scopeChain:[],this:{}};i.push(d),a+=1})),i},StickyFinger.prototype.stickyAsyncLoop=function(){this.xhrSend(ResponseEvent.StickyAsync,{})},StickyFinger.prototype.xhrSendJSAPI=function(e,t,n,s){var r,i=this;if(e===ResponseEvent.Sticky){var o;this.stickyMsgQueue.length>0?(this.stickyMsgQueue.push({method:this.stickyNotSendPaused?ResponseEvent.StickyNotSendPaused:ResponseEvent.Sticky,params:t}),o=TyroUtil.safeJSONStringify(this.stickyMsgQueue),this.stickyMsgQueue=[]):o=TyroUtil.safeJSONStringify({method:this.stickyNotSendPaused?ResponseEvent.StickyNotSendPaused:ResponseEvent.Sticky,params:t}),my.call("showRemoteDebugMask",{text:" ",buttonTitle:"断点命中",hide:!1}),this.stickyNotSendPaused=!1;var a=Date.now(),c=my.callSync("tyroRequest",{url:this.host+"/tyro/agent",method:"POST",headers:{"Content-Type":"application/json;charset=UTF-8","instrument-id":this.instrumentId},data:o,timeout:6e5,blockTimeout:6e5,dataType:"json",requestTaskId:this.requestTaskId++});return my.call("showRemoteDebugMask",{hide:!0}),c.error||null===c?(null===c?this.originConsoleAPI.error("[tyro-agent] xhrSend error result is "+c):this.originConsoleAPI.error("[tyro-agent] xhrSend error "+c.error+" "+c.errorMessage),Date.now()-a>=5e3?this.xhrSendJSAPI(e,t,n,s):TyroUtil.safeJSONStringify({method:"default"})):200!==c.status?(this.originConsoleAPI.error("[tyro-agent] xhrSend status fail "+e+" "+c.status),TyroUtil.safeJSONStringify({method:"default"})):c.data}if(e===ResponseEvent.StickyAsync){var p=TyroUtil.safeJSONStringify({method:ResponseEvent.StickyAsync,params:t});this.originConsoleAPI.info("[tyro-agent] xhrSend async send "+p),my.call(this.asyncRequestMethod,{url:this.host+"/tyro/agent",method:"POST",headers:{"Content-Type":"application/json;charset=UTF-8","instrument-id":this.instrumentId},data:p,timeout:6e5,dataType:"json",requestTaskId:this.requestTaskId++,success:function(e){i.lastStickyAsyncError=0,i.stickyAsyncLoop(),200===e.status?(i.originConsoleAPI.info("[tyro-agent] xhrSend async success "+e.status+" "+e.data),i.handleStickyAsync(JSON.parse(e.data))):i.originConsoleAPI.error("[tyro-agent] xhrSend async fail "+e.status+" "+e.data)},fail:function(e){i.lastStickyAsyncError>=3?setTimeout((function(){i.stickyAsyncLoop()}),3e3):(i.lastStickyAsyncError+=1,i.stickyAsyncLoop()),i.originConsoleAPI.error("[tyro-agent] xhrSend async error "+TyroUtil.safeJSONStringify(e))}})}switch(e){case ResponseEvent.ById:r={id:n,result:t};break;case ResponseEvent.ScriptSource:r={method:ResponseEvent.ScriptSource,params:t};break;case ResponseEvent.Resumed:r={method:ResponseEvent.Resumed,params:t};break;case ResponseEvent.ConsoleAPICalled:r={method:ResponseEvent.ConsoleAPICalled,params:t};break;default:return}s?this.stickyMsgQueue.push(r):this.wsIsOpen?this.socketTask.send({data:TyroUtil.safeJSONStringify(r)}):this.wsMsgQueue.push(TyroUtil.safeJSONStringify(r))},StickyFinger.prototype.xhrSend=function(e,t,n,s){var r=this;if(Agent.isPhone)return this.xhrSendJSAPI(e,t,n,s);var i,o=new XMLHttpRequest;if(e===ResponseEvent.Sticky){var a;if(o.open("POST",this.host+"/tyro/agent",!1),o.setRequestHeader("Content-Type","application/json;charset=UTF-8"),o.setRequestHeader("instrument-id",this.instrumentId),this.stickyMsgQueue.length>0){this.stickyMsgQueue.push({method:this.stickyNotSendPaused?ResponseEvent.StickyNotSendPaused:ResponseEvent.Sticky,params:t});try{a=TyroUtil.safeJSONStringify(this.stickyMsgQueue)}catch(e){this.originConsoleAPI.error(e),a=TyroUtil.safeJSONStringify({method:this.stickyNotSendPaused?ResponseEvent.StickyNotSendPaused:ResponseEvent.Sticky,params:t})}finally{this.stickyMsgQueue=[]}}else a=TyroUtil.safeJSONStringify({method:this.stickyNotSendPaused?ResponseEvent.StickyNotSendPaused:ResponseEvent.Sticky,params:t});if(this.stickyNotSendPaused=!1,o.send(a),200===o.status)return o.responseText;throw new Error("[sticky-finger] xhrSend error "+e+" "+o.status)}if(e===ResponseEvent.StickyAsync)return o.open("POST",this.host+"/tyro/agent",!0),o.setRequestHeader("Content-Type","application/json;charset=UTF-8"),o.setRequestHeader("instrument-id",this.instrumentId),o.onload=function(){if(r.lastStickyAsyncError=0,r.stickyAsyncLoop(),4!==o.readyState||200!==o.status)throw new Error("[tyro-agent] xhrSend async fail "+e+" "+o.readyState+" "+o.status);r.handleStickyAsync(JSON.parse(o.responseText))},o.onerror=function(){throw r.lastStickyAsyncError>=3?setTimeout((function(){r.stickyAsyncLoop()}),3e3):(r.lastStickyAsyncError+=1,r.stickyAsyncLoop()),new Error("[tyro-agent] xhrSend async error "+e+" "+o.readyState+" "+o.status)},void o.send(TyroUtil.safeJSONStringify({method:ResponseEvent.StickyAsync,params:t}));switch(o.open("POST",this.host+"/tyro/agent",!0),o.setRequestHeader("Content-Type","application/json;charset=UTF-8"),o.setRequestHeader("instrument-id",this.instrumentId),o.onload=function(){if(4!==o.readyState||200!==o.status)throw new Error("[tyro-agent] xhrSend async fail "+e+" "+o.readyState+" "+o.status)},o.onerror=function(){throw new Error("[tyro-agent] xhrSend async error "+e+" "+o.readyState+" "+o.status)},e){case ResponseEvent.ById:i={id:n,result:t};break;case ResponseEvent.ScriptSource:i={method:ResponseEvent.ScriptSource,params:t};break;case ResponseEvent.Resumed:i={method:ResponseEvent.Resumed,params:t};break;case ResponseEvent.ConsoleAPICalled:i={method:ResponseEvent.ConsoleAPICalled,params:t};break;default:return}s?this.stickyMsgQueue.push(i):o.send(TyroUtil.safeJSONStringify(i))},StickyFinger.prototype.handleSticky=function(e){var t=e.id,n=e.method,s=e.params;switch(n){case RequestMethod.DiscardConsoleEntries:return this.stickyNotSendPaused=!0,this.originConsoleAPI.log("[tyro-agent] DiscardConsoleEntries success"),"(()=>{return true})()";case RequestMethod.CallFunctionOn:return this.stickyNotSendPaused=!0,this.originConsoleAPI.log("[tyro-agent] CallFunctionOn TODO sticky"),"(()=>{return true})()";case RequestMethod.CompileScript:return this.stickyNotSendPaused=!0,this.originConsoleAPI.log("[tyro-agent] CompileScript success, "+TyroUtil.safeJSONStringify(s)),"(()=>{return true})()";case RequestMethod.SetBreakpointsActive:return this.stickyNotSendPaused=!0,this.breakpointsActive=s.active,this.originConsoleAPI.log("[tyro-agent] SetBreakpointsActive success, breakpointsActive "+this.breakpointsActive),this.breakStepType=BreakStepType.NextSticky,"(()=>{return true})()";case RequestMethod.SetSkipAllPauses:return this.stickyNotSendPaused=!0,this.skipAllPauses=s.skip,this.originConsoleAPI.log("[tyro-agent] SetSkipAllPauses success, skipAllPauses "+this.skipAllPauses),this.breakStepType=BreakStepType.NextSticky,"(()=>{return true})()";case RequestMethod.Resume:return this.xhrSend(ResponseEvent.Resumed,{}),this.originConsoleAPI.log("[tyro-agent] Resume success"),"(()=>{return false})()";case RequestMethod.StepInto:return this.xhrSend(ResponseEvent.Resumed,{}),this.breakStepType=BreakStepType.NextSticky,this.originConsoleAPI.log("[tyro-agent] StepInto success"),"(()=>{return false})()";case RequestMethod.StepOver:return this.xhrSend(ResponseEvent.Resumed,{}),this.breakStepType=BreakStepType.StepOver,this.originConsoleAPI.log("[tyro-agent] StepOver success"),"(()=>{return false})()";case RequestMethod.StepOut:return this.xhrSend(ResponseEvent.Resumed,{}),this.breakStepType=BreakStepType.StepOut,this.originConsoleAPI.log("[tyro-agent] StepOut success"),"(()=>{return false})()";case RequestMethod.GetPossibleBreakpoints:return this.stickyNotSendPaused=!0,this.getPossibleBreakpoints(t,s,!0),this.breakStepType=BreakStepType.NextSticky,"(()=>{return true})()";case RequestMethod.SetBreakpointByUrl:return this.stickyNotSendPaused=!0,this.setBreakpointByUrl(t,s,!0),this.breakStepType=BreakStepType.NextSticky,"(()=>{return true})()";case RequestMethod.SetBreakpoint:return this.stickyNotSendPaused=!0,this.setBreakpoint(t,s,!0),this.breakStepType=BreakStepType.NextSticky,"(()=>{return true})()";case RequestMethod.RemoveBreakpoint:return this.stickyNotSendPaused=!0,this.removeBreakpoint(t,s),this.breakStepType=BreakStepType.NextSticky,"(()=>{return true})()";case RequestMethod.REPL:return this.stickyNotSendPaused=!0,this.breakStepType=BreakStepType.NextSticky,"(()=>{(()=>{"+s.statement+"})();return true})()";case RequestMethod.GetVariableValue:this.stickyNotSendPaused=!0;var r=e.params;return this.breakStepType=BreakStepType.NextSticky,"(()=>{(()=>{\n Agent.variableValue({"+r.map((function(e){return e+": (() => {try{return "+e+"}catch(e){return undefined}})()"})).join(",")+"})\n })();return true})()";case RequestMethod.SetPauseOnExceptions:return this.stickyNotSendPaused=!0,this.setPauseOnExceptions(t,s),this.breakStepType=BreakStepType.NextSticky,"(()=>{return true})()";case RequestMethod.SetAsyncCallStackDepth:return this.stickyNotSendPaused=!0,this.setAsyncCallStackDepth(t,s),this.breakStepType=BreakStepType.NextSticky,"(()=>{return true})()";case RequestMethod.EvaluateOnCallFrame:return this.stickyNotSendPaused=!0,this.evaluateOnCallFrameExpression=s.expression,this.breakStepType=BreakStepType.NextSticky,"(()=>{\n let tyroRet,tyroErr;\n try{tyroRet=eval(Agent.getEvaluateOnCallFrameExpression())}\n catch(e){tyroErr=e}\n Agent.evaluateOnCallFrame("+t+",tyroRet,tyroErr,"+s.generatePreview+");\n return true;\n })()";case RequestMethod.GetProperties:return this.stickyNotSendPaused=!0,this.getProperties(t,s,!0),this.breakStepType=BreakStepType.NextSticky,"(()=>{return true})()";default:return this.breakStepType=BreakStepType.NextSticky,"(()=>{return true})()"}},StickyFinger.prototype.handleStickyAsync=function(e){var t=e.id,n=e.method,s=e.params;switch(this.originConsoleAPI.log("[tyro-agent] handleStickyAsync "+t+", "+n+", "+s),n){case RequestMethod.DiscardConsoleEntries:this.originConsoleAPI.log("[tyro-agent] DiscardConsoleEntries success");break;case RequestMethod.Evaluate:this.originConsoleAPI.log("[tyro-agent] Evaluate start, expression "+s.expression);var r=this.evaluate(this.globalExecutionContext,t,s);this.originConsoleAPI.log("[tyro-agent] Evaluate success, expression "+s.expression+", result "+TyroUtil.safeJSONStringify(r));break;case RequestMethod.CallFunctionOn:this.originConsoleAPI.log("[tyro-agent] CallFunctionOn TODO stickyAsync");break;case RequestMethod.CompileScript:this.originConsoleAPI.log("[tyro-agent] CompileScript success, params "+TyroUtil.safeJSONStringify(s));break;case RequestMethod.SetBreakpointsActive:this.breakpointsActive=s.active,this.originConsoleAPI.log("[tyro-agent] SetBreakpointsActive success, breakpointsActive "+this.breakpointsActive);break;case RequestMethod.SetSkipAllPauses:this.skipAllPauses=s.skip,this.originConsoleAPI.log("[tyro-agent] SetSkipAllPauses success, skipAllPauses "+this.skipAllPauses);break;case RequestMethod.Pause:this.breakStepType=BreakStepType.NextSticky,this.originConsoleAPI.log("[tyro-agent] Pause success");break;case RequestMethod.GetPossibleBreakpoints:this.getPossibleBreakpoints(t,s);break;case RequestMethod.SetBreakpointByUrl:this.setBreakpointByUrl(t,s);break;case RequestMethod.SetBreakpoint:this.setBreakpoint(t,s);break;case RequestMethod.RemoveBreakpoint:this.removeBreakpoint(t,s);break;case RequestMethod.SetPauseOnExceptions:this.setPauseOnExceptions(t,s);break;case RequestMethod.SetAsyncCallStackDepth:this.setAsyncCallStackDepth(t,s);break;case RequestMethod.GetProperties:this.getProperties(t,s)}},StickyFinger.prototype.objectToRemoteObject=function(e,t,n){var s={};if(isError(e)&&(t=e),t)return error2RemoteObject(t);switch(s.type=typeof e,s.type){case"undefined":break;case"object":if(null===e){s.subtype="null",s.value=null;break}if(void 0!==e.constructor&&(s.className=e.constructor.name),void 0!==e.toString)try{s.description=e.toString()}catch(e){s.description="[object Object]"}else s.description="[object Object]";if(this.generateObjectId+=1,s.objectId=String(this.generateObjectId),this.objectMap[String(this.generateObjectId)]=e,n)for(var r in s.preview={type:"object",description:"Object",overflow:!1,properties:[]},e){var i=typeof e[r];s.preview.properties.push({name:r,type:i,value:"object"===i?"Object":"function"===i?"":e[r]})}break;case"function":s.description=e.toString(),s.className="Function";break;default:s.value=e,s.description=e.toString()}return s},StickyFinger.prototype.evaluateOnCallFrame=function(e,t,n,s){var r=this.objectToRemoteObject(t,n,s);return this.xhrSend(ResponseEvent.ById,{result:r},e,!0),r},StickyFinger.prototype.evaluate=function(executionContext,id,params){var returnValue,error;try{returnValue=function(expression){return"function"==typeof eval?eval(expression):Agent.evalReference(expression)}.call(executionContext,params.expression)}catch(e){error=e}var result=this.objectToRemoteObject(returnValue,error,params.generatePreview);return this.xhrSend(ResponseEvent.ById,{result:result},id),result},StickyFinger.prototype.getPossibleBreakpoints=function(e,t,n){var s=t.scriptId,r=t.startLine,i=t.endLine===t.startLine?t.endLine+1:t.endLine,o={locations:[]};if(this.contextMap[s])for(var a=this.contextMap[s].stickyLine,c=r;c<i;c++)a.includes(c)&&o.locations.push({scriptId:s,lineNumber:c,columnNumber:0});else this.originConsoleAPI.warn("[tyro-agent] getPossibleBreakpoints no scriptId "+s+" in contextMap");this.originConsoleAPI.log("[tyro-agent] getPossibleBreakpoints success, result: "+TyroUtil.safeJSONStringify(o)),this.xhrSend(ResponseEvent.ById,o,e,n)},StickyFinger.prototype.setBreakpointByUrl=function(e,t,n){var s=t.scriptId,r=t.url,i=t.lineNumber;if(this.contextMap[s])if(this.contextMap[s].stickyLine.includes(i)){var o=s+":"+i+":0:"+r,a={breakpointId:o,locations:[{scriptId:s,lineNumber:i,columnNumber:0}]};this.breakpointMap[s][i]=o,this.breakpointIdMap[o]={contextId:s,line:i},this.originConsoleAPI.log("[tyro-agent] setBreakpointByUrl success, scriptId: "+s+", url: "+r+", lineNumber: "+i),this.xhrSend(ResponseEvent.ById,a,e,n)}else this.originConsoleAPI.warn("[tyro-agent] setBreakpointByUrl not sticky line, scriptId: "+s+", url: "+r+", lineNumber: "+i);else this.originConsoleAPI.warn("[tyro-agent] setBreakpointByUrl no contextMap, scriptId: "+s)},StickyFinger.prototype.setBreakpoint=function(e,t,n){var s=t.scriptId,r=t.lineNumber;if(this.contextMap[s])if(this.contextMap[s].stickyLine.includes(r)){var i=s+":"+r+":0",o={breakpointId:i,actualLocation:{scriptId:s,lineNumber:r,columnNumber:0}};this.breakpointMap[s][r]=i,this.breakpointIdMap[i]={contextId:s,line:r},this.originConsoleAPI.log("[tyro-agent] setBreakpoint success, scriptId: "+s+", lineNumber: "+r),this.xhrSend(ResponseEvent.ById,o,e,n)}else this.originConsoleAPI.warn("[tyro-agent] setBreakpoint not sticky line, scriptId: "+s+", lineNumber: "+r);else this.originConsoleAPI.warn("[tyro-agent] setBreakpoint no contextMap, scriptId: "+s)},StickyFinger.prototype.removeBreakpoint=function(e,t){var n=t.breakpointId,s=this.breakpointIdMap[n];s||this.originConsoleAPI.warn("[tyro-agent] removeBreakpoint no breakpointId "+n);var r=s.contextId,i=s.line;delete this.breakpointMap[r][i],this.originConsoleAPI.log("[tyro-agent] removeBreakpoint success, breakpointId: "+n+", scriptId: "+r+", line: "+i)},StickyFinger.prototype.setPauseOnExceptions=function(e,t){t&&["none","uncaught","all"].includes(t.state)?(this.pauseOnExceptions=t.state,this.originConsoleAPI.log("[tyro-agent] setPauseOnExceptions success, pauseOnExceptions state "+this.pauseOnExceptions)):this.originConsoleAPI.warn("[tyro-agent] setPauseOnExceptions state invalid: "+TyroUtil.safeJSONStringify(t))},StickyFinger.prototype.setAsyncCallStackDepth=function(e,t){!t||"number"!=typeof t.maxDepth||t.maxDepth<0?this.originConsoleAPI.warn("[tyro-agent] setAsyncCallStackDepth maxDepth invalid: "+TyroUtil.safeJSONStringify(t)):(this.asyncCallStackDepth=t.maxDepth,this.originConsoleAPI.log("[tyro-agent] setAsyncCallStackDepth success, maxDepth "+this.asyncCallStackDepth))},StickyFinger.prototype.getProperties=function(e,t,n){var s=t.objectId,r=this.objectMap[s],i=[];for(var o in r)i.push({name:o,value:this.objectToRemoteObject(r[o])});this.xhrSend(ResponseEvent.ById,{result:i},e,n)},StickyFinger.prototype.generateFingerId=function(){return this.fingerId+=1,this.fingerId},StickyFinger}(),Agent=function(){function e(t,n){if(e.singleton)return e.singleton;this.host="https://"+getServerConfig().domain,this.stickyFinger=new StickyFinger("undefined"!=typeof window?window:self,this.host,t,n)}return e.getShadowMethod=function(){this.globalReference=self,"function"==typeof eval?this.evalReference=eval:"function"==typeof __eval&&(this.evalReference=__eval)},e.setShadowMethod=function(){this.globalReference.eval=this.evalReference},e.setInstrumentId=function(e){this.instrumentId=e},e.register=function(t,n){if(!e.singleton){if(!this.instrumentId&&"undefined"!=typeof my)try{this.instrumentId=getStartupParams().tyroId}catch(e){}e.instance(this.instrumentId,t)}e.singleton.stickyFinger.register(t,n)},e.sticky=function(t,n,s){return e.singleton.stickyFinger.sticky(t,n,s)},e.getEvaluateOnCallFrameExpression=function(){return e.singleton.stickyFinger.evaluateOnCallFrameExpression},e.evaluateOnCallFrame=function(t,n,s,r){return e.singleton.stickyFinger.evaluateOnCallFrame(t,n,s,r)},e.getScopeVariables=function(){return e.singleton.stickyFinger.scopeVariables},e.inflateStickyParamsObject=function(t){return e.singleton.stickyFinger.inflateStickyParamsObject(t)},e.entry=function(t,n){return e.singleton.stickyFinger.fingerEntry(t,n)},e.exit=function(t,n,s){e.singleton.stickyFinger.fingerExit(t,n,s)},e.instance=function(t,n){e.singleton=new e(t,n)},e.isPhone=!0,e.instrumentId=null,e}();Agent.getShadowMethod();var globalReference="undefined"!=typeof window?window:self;globalReference.Agent||(globalReference.StickyFinger=StickyFinger,globalReference.Agent=Agent)}(); |
| | | |
| | | !function(e){var t={};function n(o){if(t[o])return t[o].exports;var r=t[o]={i:o,l:!1,exports:{}};return e[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var r in e)n.d(o,r,function(t){return e[t]}.bind(null,r));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=43)}({0:function(module,exports,__webpack_require__){"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var originalBridgeCall=self.AlipayJSBridge&&self.AlipayJSBridge.call,originalFetch=self.fetch,originImportScripts=self.importScripts,originEval="function"==typeof self.__eval?self.__eval:self.eval;exports.getUserAgent=function(){return navigator.swuserAgent||navigator.userAgent||""},exports.debug=console.log.bind(console),exports.checkIOS=function(){return/\(i[^;]+;( U;)? CPU.+Mac OS X/.test(exports.getUserAgent())},exports.isLyra=function(){return Boolean(self.__LyraWSWorkerOrigin)},exports.callInternalAPI=function(e,t){var n={data:{method:e,param:t},action:"internalAPI"},o=encodeURIComponent(JSON.stringify(n));originalFetch?originalFetch("https://alipay.kylinBridge/?data="+o,{mode:"no-cors"}).then((function(){})).catch((function(){})):originalBridgeCall&&originalBridgeCall("internalAPI",{method:e,param:t})},exports.getStartupParams=function(){return self.__appxStartupParams&&self.__appxStartupParams.appId?self.__appxStartupParams:self.AFAppX&&self.AFAppX.bridge&&self.AFAppX.bridge.callSync&&self.AFAppX.bridge.callSync("getStartupParams")||{}},exports.getBridge=function(){return self.AFAppX.bridge};var appxImported=!1,appxImportListener=[];exports.runAfterAppx=function(e){if(self.AFAppX)return appxImported=!0,void e();self.importScripts=function(e){originImportScripts(e),!appxImported&&/af-appx\.worker\.min\.js$/.test(e)&&(appxImported=!0,appxImportListener.forEach((function(e){return e()})),appxImportListener=[])},appxImportListener.push(e)},exports.evaluateScript=function(expression){return"function"==typeof eval?eval(expression):"function"==typeof originEval?(self.eval=originEval,eval(expression)):void 0}},11:function(e,t){var n="\\x"+("0"+"~".charCodeAt(0).toString(16)).slice(-2),o="\\"+n,r=new RegExp(n,"g"),s=new RegExp(o,"g"),a=new RegExp("(?:^|([^\\\\]))"+o),i=[].indexOf||function(e){for(var t=this.length;t--&&this[t]!==e;);return t},c=String;function u(e,t,n){return t instanceof Array?function(e,t,n){for(var o=0,r=t.length;o<r;o++)t[o]=u(e,t[o],n);return t}(e,t,n):t instanceof c?t.length?n.hasOwnProperty(t)?n[t]:n[t]=function(e,t){for(var n=0,o=t.length;n<o;e=e[t[n++].replace(s,"~")]);return e}(e,t.split("~")):e:t instanceof Object?function(e,t,n){for(var o in t)t.hasOwnProperty(o)&&(t[o]=u(e,t[o],n));return t}(e,t,n):t}var l={stringify:function(e,t,s,a){return l.parser.stringify(e,function(e,t,s){var a,c,u=!1,l=!!t,p=[],f=[e],d=[e],g=[s?"~":"[Circular]"],m=e,h=1;return l&&(c="object"==typeof t?function(e,n){return""!==e&&t.indexOf(e)<0?void 0:n}:t),function(e,t){return l&&(t=c.call(this,e,t)),u?(m!==this&&(a=h-i.call(f,this)-1,h-=a,f.splice(h,f.length),p.splice(h-1,p.length),m=this),"object"==typeof t&&t?(i.call(f,t)<0&&f.push(m=t),h=f.length,(a=i.call(d,t))<0?(a=d.push(t)-1,s?(p.push((""+e).replace(r,n)),g[a]="~"+p.join("~")):g[a]=g[0]):t=g[a]):"string"==typeof t&&s&&(t=t.replace(n,o).replace("~",n))):u=!0,t}}(e,t,!a),s)},parse:function(e,t){return l.parser.parse(e,function(e){return function(t,r){var s="string"==typeof r;return s&&"~"===r.charAt(0)?new c(r.slice(1)):(""===t&&(r=u(r,r,{})),s&&(r=r.replace(a,"$1~").replace(o,n)),e?e.call(this,t,r):r)}}(t))},parser:JSON};e.exports=l},2:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.Connect="RemoteX.connect",e.Disconnect="RemoteX.disconnect",e.PageChanged="RemoteX.pageChanged",e.DataChanged="RemoteX.dataChanged",e.EvaluteScript="RemoteX.evaluteScript",e.syncStorage="RemoteX.syncStorage",e.requestWillBeSent="RemoteX.requestWillBeSent",e.requestFinished="RemoteX.requestFinished",e.Ping="RemoteX.ping",e.Pong="RemoteX.pong"}(t.RemoteXMethods||(t.RemoteXMethods={}))},43:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(44),r=n(47),s=n(48),a=n(0);a.runAfterAppx((function(){setTimeout((function(){a.debug("[bugme] run after appx"),a.getStartupParams().isRemoteX||a.isLyra()?(a.debug("[bugme] remotex mode"),o.registerRemoteX()):(a.debug("[bugme] preview mode"),s.registerPreview())}),1e3)}));try{r.initAppXHook()}catch(e){console.error(e)}},44:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(6),r=n(0),s=n(45);t.registerRemoteX=function(){if(self.navigator){r.debug("[bugme] start to register remotex"),s.listenEvents(),o.SocketConn.open(),self.bugmeAPI={send:function(e){o.SocketConn.send(e)}};if(self.document&&self.document.dispatchEvent)try{self.document.dispatchEvent("bugmeInjected")}catch(e){self.document.dispatchEvent(new CustomEvent("bugmeInjected"))}else self.dispatchEvent&&self.dispatchEvent(new CustomEvent("bugmeInjected"))}}},45:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(2),r=n(0),s=n(6),a=n(46);function i(e){if(!e||"object"!=typeof e)return{};var t={};return Object.keys(e).forEach((function(n){t[n]=""+e[n]})),t}var c=/^https?:\/\/hpmweb\.alipay\.com/,u=function(e){c.test(e.url)||s.SocketConn.send({method:o.RemoteXMethods.requestWillBeSent,params:{reqId:e.requestId,url:e.url,method:(e.method||"GET").toUpperCase(),body:e.postBody,headers:i(e.headers)}})},l=function(e){c.test(e.url)||s.SocketConn.send({method:o.RemoteXMethods.requestFinished,params:{reqId:e.requestId,url:e.url,status:e.status,body:e.body,headers:i(e.headers)}})},p=function(e){c.test(e.url)||s.SocketConn.send({method:o.RemoteXMethods.requestFinished,params:{reqId:e.requestId,url:e.url,status:null}})},f=function(e){var t={};Object.keys(e.data).forEach((function(n){try{t[n]=JSON.parse(e.data[n]).APDataStorage}catch(e){}})),s.SocketConn.send({method:o.RemoteXMethods.syncStorage,params:{data:t}})};t.listenEvents=function(){var e=r.getBridge();e.on(a.ERiverWorkerEvent.PageResume,(function(){s.SocketConn.send({method:o.RemoteXMethods.PageChanged})})),e.on(a.ERiverWorkerEvent.DebugPanelClick,(function(){s.SocketConn.close()})),r.checkIOS()&&!r.isLyra()?(e.on(a.ERiverDebugEvent.networkRequest,(function(e){var t=e.data;u(t)})),e.on(a.ERiverDebugEvent.networkResponse,(function(e){var t=e.data;l(t)})),e.on(a.ERiverDebugEvent.networkError,(function(e){var t=e.data;p(t)})),e.on(a.ERiverDebugEvent.storageChanged,(function(e){var t=e.data;f(t)}))):e.on(a.ERiverDebugEvent.debugConsole,(function(e){var t,n=e.data,o=n.type,r=n.content;try{t=JSON.parse(r)}catch(e){return}switch(o){case a.ERiverDebugEvent.networkRequest:u(t);break;case a.ERiverDebugEvent.networkResponse:l(t);break;case a.ERiverDebugEvent.networkError:p(t);break;case a.ERiverDebugEvent.storageChanged:f(t)}}))}},46:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),function(e){e.networkRequest="tinyAppRemoteDebug_network_request",e.networkResponse="tinyAppRemoteDebug_network_response",e.networkError="tinyAppRemoteDebug_network_error",e.storageChanged="tinyAppRemoteDebug_storage",e.debugConsole="onTinyDebugConsole",e.vconsoleMessage="onMessageFromVConsole"}(t.ERiverDebugEvent||(t.ERiverDebugEvent={})),function(e){e.PageResume="pageResume",e.DebugPanelClick="tinyRemoteDebugPanelButtonClick"}(t.ERiverWorkerEvent||(t.ERiverWorkerEvent={}))},47:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(6),r=null;t.initAppXHook=function(){var e=self.__APPX_DEVTOOLS_GLOBAL_HOOK__,t={};e&&Object.assign(t,e),t.onSetData=function(t){if(e&&e.onSetData)try{e.onSetData(t)}catch(e){console.error(e)}o.SocketConn.socketTask&&(clearTimeout(r),r=setTimeout((function(){o.SocketConn.send({method:"RemoteX.dataChanged"})}),300))},t.onSetDataCallback=function(t){e&&e.onSetDataCallback&&e.onSetDataCallback(t)},self.__APPX_DEVTOOLS_GLOBAL_HOOK__=t}},48:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(11),r=n(0),s=function(e,t){return void 0===t?"©undefined":null===t?"©null":t===-1/0?"©- Infinity":t===1/0?"©Infinity":"number"==typeof t&&isNaN(t)?"©NaN":"function"==typeof t?"©function":t},a=Function,i=function(e){try{if(e.fromVConsoleToWorker){var t=e.requestId;if("exec"===e.method){try{new a("requestId","sendBack","var res = "+e.script+";console.log(res);")(t,(function(e){return r.callInternalAPI("tinyDebugConsole",{type:"msgFromWorkerToVConsole",content:o.stringify({requestId:t,returnValue:e},s)})}))}catch(e){console.error(e.name+":"+e.message)}}}}catch(e){}};t.registerPreview=function(){setTimeout((function(){self.document?self.document.addEventListener("push",(function(e){try{var t=e.data.param;i(JSON.parse(t.content||t.data.content))}catch(e){}})):self.addEventListener&&self.addEventListener("push",(function(e){try{var t=JSON.parse(JSON.parse(e.data.text()).param.data.content);i(t)}catch(e){}}))}),10),["log","info","error","debug","warn"].forEach((function(e){var t="o"+e;console[t]||(console[t]=console[e],console[e]=function(){for(var n,a=[],i=0;i<arguments.length;i++)a[i]=arguments[i];console[t].apply(console,a);try{n=o.stringify(a.map((function(e){return e instanceof Error?e.name+": "+e.message:e})),s)}catch(e){return void console.error(e.name+": "+e.message)}r.callInternalAPI("tinyDebugConsole",{content:n,type:"console_"+e})})}))}},5:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.wssConfig={default:{openchannel:"openchannel.alipay.com",hpmweb:"hpmweb.alipay.com"},1:{openchannel:"miniprogram.alipay.com",hpmweb:"hpmweb.alipay.com"}}},6:function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var o=n(11),r=n(0),s=n(2),a=n(5),i=function(){r.getBridge().call("showRemoteDebugPanel",{status:"connecting",text:"远程调试准备中",buttonTitle:"退出"})},c=function(){r.getBridge().call("showRemoteDebugPanel",{status:"connected",text:"远程调试已连接",buttonTitle:"退出"})},u=function(){r.getBridge().call("showRemoteDebugPanel",{status:"disconnected",text:"远程调试已断开",buttonTitle:"退出"})};t.SocketConn={messageQueue:[],socketTask:null,send:function(e){var t=this,n="string"==typeof e?e:JSON.stringify(e);n.length>5242880?r.debug("[bugme] socket send failed, size: ",n.length):this.socketTask?(this.messageQueue.length&&(this.messageQueue.forEach((function(e){t.socketTask.send({data:e})})),this.messageQueue=[]),this.socketTask.send({data:n})):this.messageQueue.push(n)},close:function(){this.socketTask?this.socketTask.close():r.getBridge().showToast({content:"请点击右上角关闭按钮退出",duration:1e3})},connect:function(e){var t=this,n=r.getBridge(),o=n.connectSocket({url:e,multiple:!0}),s=function(){t.socketTask||(t.socketTask=o,t.onopen(),r.debug("[bugme] websocket connected"))};o.onOpen((function(){s()})),o.onMessage((function(e){t.socketTask||s(),t.onmessage(e)})),o.onClose((function(){t.onclose()})),o.onError((function(){t.socketTask||(u(),n.showToast({content:"本次真机调试已结束,请重新生成调试版本",duration:2e3}))}))},open:function(){var e=this,t=r.getStartupParams(),n=t.channelId,o=t.channelAuthPair,s=t.remoteCh,c=self.__LyraWSWorkerOrigin;if(n||c){i();var u=a.wssConfig.default.openchannel;s&&a.wssConfig[s]&&a.wssConfig[s].openchannel&&(u=a.wssConfig[s].openchannel);var l=r.getBridge(),p=c?c+"/worker":"wss://"+u+"/group/connect/"+n+"?scene=tinyAppDebug&roleType=TINYAPP&roleId=0";if(o&&(p+="?"+o.key+"="+o.value),r.checkIOS()&&!r.isLyra()){this.connect(p);var f=l.connectSocket;l.connectSocket=function(e){if(e&&e.multiple)return f(e);l.showToast({content:"iOS 真机调试暂不支持 connectSocket JSAPI",duration:1e3})},l.onSocketOpen=l.offSocketOpen=l.onSocketMessage=l.offSocketMessage=l.closeSocket=function(){}}else setTimeout((function(){e.connect(p)}),1200)}else r.debug("[bugme] missing channelId in startup params")},onopen:function(){var e=r.getBridge(),t=e.getSystemInfoSync();this.send({method:s.RemoteXMethods.Connect,params:{userAgent:r.getUserAgent(),sdkVersion:e.SDKVersion,alipayVersion:t.version,model:t.model,system:t.system}}),c()},onmessage:function(e){try{var t=JSON.parse(e.data.data),n=t.method,a=t.id,i=t.params;if(n===s.RemoteXMethods.Disconnect)this.close();else if(n===s.RemoteXMethods.EvaluteScript){if(i&&i.code)try{var c=r.evaluateScript(i.code);this.send({returnId:a,payload:o.stringify(c)})}catch(e){r.debug("[remoteX worker evaluateScript] ",e)}}else n===s.RemoteXMethods.Ping&&this.send({method:s.RemoteXMethods.Pong,params:{returnId:a}})}catch(t){r.debug("RemoteX onSocketMessage error",t,e)}},onclose:function(){this.socketTask=null,this.messageQueue=[],u(),[1,2].forEach((function(e){r.getBridge().call("closeSocket",{socketTaskId:e})}))}}}}); /**! __BUGME_END__ */ |
| | | if(!self.__appxInited) { |
| | | self.__appxInited = 1; |
| | | require('@alipay/appx-compiler/lib/sjsEnvInit'); |
| | | |
| | | require('./config$'); |
| | | require('./importScripts$'); |
| | | |
| | | var AFAppX = self.AFAppX; |
| | | self.getCurrentPages = AFAppX.getCurrentPages; |
| | | self.getApp = AFAppX.getApp; |
| | | self.Page = AFAppX.Page; |
| | | self.App = AFAppX.App; |
| | | self.my = AFAppX.bridge || AFAppX.abridge; |
| | | self.abridge = self.my; |
| | | self.Component = AFAppX.WorkerComponent || function(){}; |
| | | self.$global = AFAppX.$global; |
| | | self.requirePlugin = AFAppX.requirePlugin; |
| | | |
| | | |
| | | if(AFAppX.registerApp) { |
| | | AFAppX.registerApp({ |
| | | appJSON: appXAppJson, |
| | | }); |
| | | } |
| | | |
| | | if(AFAppX.compilerConfig){ AFAppX.compilerConfig.component2 = true; } |
| | | |
| | | function success() { |
| | | require('../../app'); |
| | | require('../../node_modules/mini-ali-ui/es/badge/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/am-icon/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/tabs/index?hash=4a98b35daa3eee1b62960d4d5bbcbf254cbf11e3'); |
| | | require('../../node_modules/mini-ali-ui/es/tabs/tab-content/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/search-bar/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/popup/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/collapse/index?hash=a11fdcdff8ea970c65f185a8731cafe48f67047c'); |
| | | require('../../node_modules/mini-ali-ui/es/collapse/collapse-item/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../components/fitler/fitler?hash=354cb92cdc6053453b91b49e22977b08efde6a61'); |
| | | require('../../node_modules/mini-ali-ui/es/loading/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/list/index?hash=e1617a0257fb9de746f60d50b03404ad924976c9'); |
| | | require('../../node_modules/mini-ali-ui/es/input-item/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/verify-code/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/long-password/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/avatar/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/button/index?hash=e1617a0257fb9de746f60d50b03404ad924976c9'); |
| | | require('../../node_modules/mini-ali-ui/es/modal/index?hash=febd4c40992222524e0db12a74760a28f8f9b339'); |
| | | require('../../node_modules/mini-ali-ui/es/picker-item/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../components/orderTrial/orderTrial?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../components/QRCodeView/QRCodeView?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/am-radio/index?hash=5a0c180d5ccf7c9d483dd4817cdab5489824013c'); |
| | | require('../../node_modules/mini-ali-ui/es/list/auto-size-img/index?hash=05d2a9730dd6009bf9446182f9c985f40f8c0f43'); |
| | | require('../../node_modules/mini-ali-ui/es/list/list-item/index?hash=a5465b8c889360e3f854461d3ac41cf414aec633'); |
| | | require('../../pages/home/home?hash=9676af08f02ab6877f66c88a5599f6228f076a67'); |
| | | require('../../pages/index/index?hash=95bcfeb33689b813cb703b11c35da0864d69d6fc'); |
| | | require('../../pages/paypage/paypage?hash=32d7d2807ed4e666ef03b4b3fe8c38ecf2e34e68'); |
| | | require('../../pages/forgetPassword/forgetPassword?hash=95bcfeb33689b813cb703b11c35da0864d69d6fc'); |
| | | require('../../pages/userCenter/userCenter?hash=c0825856d8ab7db321bdd0ebdd2606fa94d544f0'); |
| | | require('../../pages/businessData/businessData?hash=02e5d22beb4d8b5ce9fe01e2245252aaa9b53562'); |
| | | require('../../pages/hbfqPage/orderInfo/orderInfo?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | require('../../pages/hbfqPage/qrCode/qrCode?hash=14138944b7ae79add9366738dd067287d1b4b5a8'); |
| | | require('../../pages/shskPage/orderInfo/orderInfo?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | require('../../pages/shskPage/qrCode/qrCode?hash=14138944b7ae79add9366738dd067287d1b4b5a8'); |
| | | require('../../pages/changePassword/changePassword?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | require('../../pages/changeUser/changeUser?hash=3930b793bedbb5bce57252b2568d4e1a9ad8ea1b'); |
| | | require('../../pages/order/hbfqOrder/hbfqOrder?hash=b7340e58f6e63dafeccfeef5e60d8e039095703c'); |
| | | require('../../pages/order/shskOrder/shskOrder?hash=ade6a15b5771b52c79e75af0b49fdf71e51fb2b4'); |
| | | } |
| | | self.bootstrapApp ? self.bootstrapApp({ success }) : success(); |
| | | } |
New file |
| | |
| | | |
| | | /* 阿里图标样式*/ |
| | | @import "/static/ali-icon/iconfont.acss"; |
| | | page { |
| | | background: #fff; |
| | | } |
New file |
| | |
| | | let $api = require('./utils/ajaxFn.js'); |
| | | |
| | | App({ |
| | | // 存储全局需要的数据 |
| | | lastLoginMgrId:'',//最后一次登录的mgrId |
| | | sessionId:'', |
| | | userStyle:{ |
| | | backColor:"#F2EBFF",//背景色 |
| | | defaultColor:"#8C48FF",//主题色 |
| | | gradientColor: 'linear-gradient(90deg, #9C33FF, #8C4EF5)', |
| | | logoSrc:"",//logo地址 |
| | | servicePhone:"123456789123"//客服电话 |
| | | },//用户配置样式 |
| | | userInfo:{},//获取到的用户信息 |
| | | userId:"",//获取到的user_id |
| | | |
| | | onLaunch(options) { |
| | | // 第一次打开 |
| | | this.getAuthor() |
| | | }, |
| | | onShow(options) { |
| | | // 从后台被 scheme 重新打开 |
| | | // options.query == {number:1} |
| | | console.log('从后台被 scheme 重新打开',1111) |
| | | }, |
| | | // 进入就获取授权获取uid |
| | | getAuthor() { |
| | | my.getAuthCode({ |
| | | scopes: ['auth_base'], |
| | | // 主动授权:auth_user,静默授权:auth_base。或者其它scope。如需同时获取用户多项授权,可在 scopes 中传入多个 scope 值。 |
| | | success: (res) => { |
| | | console.log(res) |
| | | if (res.authCode) { |
| | | // 认证成功 |
| | | // 调用自己的服务端接口,让服务端进行后端的授权认证,并且利用session,需要解决跨域问题 |
| | | $api.ajax( |
| | | '/sib/xcx/login/userId', |
| | | 'POST', |
| | | (res)=>{ |
| | | this.userId = res.data.body.userId |
| | | this.loginByUserId() |
| | | }, |
| | | (err)=>{ |
| | | |
| | | }, |
| | | false, |
| | | { |
| | | authCode:res.authCode |
| | | } |
| | | ) |
| | | } |
| | | }, |
| | | }); |
| | | }, |
| | | loginByUserId(){ |
| | | $api.ajax( |
| | | '/sib/xcx/login/loginByZfb', |
| | | 'POST', |
| | | (res)=>{ |
| | | if(!res.data.body){ |
| | | my.navigateTo({ |
| | | url: '/pages/index/index' |
| | | }); |
| | | }else{ |
| | | this.sessionId = res.data.body.sessionId |
| | | this.lastLoginMgrId = res.data.body.lastLoginMgrId |
| | | if(res.data.body.sessionId){ |
| | | |
| | | my.setStorageSync({ |
| | | key:'sessionId', |
| | | data:{ |
| | | sessionId:res.data.body.sessionId |
| | | } |
| | | }) |
| | | } |
| | | |
| | | if(res.data.body.lastLoginMgrId){ |
| | | this.getUserInfo() |
| | | }else{ |
| | | my.switchTab({ |
| | | url: '/pages/changeUser/changeUser' |
| | | }); |
| | | } |
| | | } |
| | | }, |
| | | (err)=>{ |
| | | |
| | | }, |
| | | false, |
| | | { |
| | | zfbUserId:this.userId |
| | | } |
| | | ) |
| | | }, |
| | | getUserInfo(){ |
| | | $api.ajax( |
| | | '/sib/xcx/login/mgrLogin', |
| | | 'POST', |
| | | (res)=>{ |
| | | this.userInfo = res.data.body |
| | | my.switchTab({ |
| | | url: '/pages/home/home' |
| | | }); |
| | | }, |
| | | err=>{}, |
| | | true, |
| | | { |
| | | mgrId:this.lastLoginMgrId |
| | | } |
| | | ) |
| | | } |
| | | }); |
New file |
| | |
| | | { |
| | | "pages": [ |
| | | "pages/home/home", |
| | | "pages/index/index", |
| | | "pages/paypage/paypage", |
| | | "pages/forgetPassword/forgetPassword", |
| | | "pages/userCenter/userCenter", |
| | | "pages/businessData/businessData", |
| | | "pages/hbfqPage/orderInfo/orderInfo", |
| | | "pages/hbfqPage/qrCode/qrCode", |
| | | "pages/shskPage/orderInfo/orderInfo", |
| | | "pages/shskPage/qrCode/qrCode", |
| | | "pages/changePassword/changePassword", |
| | | "pages/changeUser/changeUser", |
| | | "pages/order/hbfqOrder/hbfqOrder", |
| | | "pages/order/shskOrder/shskOrder" |
| | | ], |
| | | "window": { |
| | | "defaultTitle": "智享收银台" |
| | | }, |
| | | "tabBar": { |
| | | "textColor": "#666666", |
| | | "selectedColor": "#333333", |
| | | "backgroundColor": "#fff", |
| | | "items": [ |
| | | { |
| | | "pagePath": "pages/home/home", |
| | | "icon": "pages/icon/ywbl.png", |
| | | "activeIcon": "pages/icon/ywbl_h.png", |
| | | "name": "业务办理" |
| | | }, |
| | | { |
| | | "pagePath": "pages/businessData/businessData", |
| | | "icon": "pages/icon/ywsj.png", |
| | | "activeIcon": "pages/icon/ywsj_h.png", |
| | | "name": "业务数据" |
| | | }, |
| | | { |
| | | "pagePath": "pages/userCenter/userCenter", |
| | | "icon": "pages/icon/grzx.png", |
| | | "activeIcon": "pages/icon/grzx_h.png", |
| | | "name": "个人中心" |
| | | } |
| | | ] |
| | | } |
| | | } |
New file |
| | |
| | | .info-view { |
| | | padding: 0 30px; |
| | | box-sizing: border-box; |
| | | width: 686rpx; |
| | | /* min-height: 440px; */ |
| | | background: #FFFFFF; |
| | | box-shadow: 0px 1px 12px 0px rgba(56, 56, 235, 0.08); |
| | | border-radius: 8px; |
| | | position: relative; |
| | | transform: translateY(-50px); |
| | | margin: auto; |
| | | } |
| | | |
| | | .img-view { |
| | | width: 100%; |
| | | text-align: center; |
| | | padding: 36px 0 20px; |
| | | border-bottom: 1px dashed #E6E6E6; |
| | | } |
| | | |
| | | .img { |
| | | width: 200px; |
| | | height: 200px; |
| | | margin-bottom: 12px; |
| | | } |
| | | |
| | | .text { |
| | | font-size: 12px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #333333; |
| | | } |
| | | |
| | | .rate-view { |
| | | box-sizing: border-box; |
| | | padding: 20px 3px 11px; |
| | | } |
| | | |
| | | .rate-item { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | margin-bottom: 16px; |
| | | } |
| | | |
| | | .name { |
| | | font-size: 14px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #8E8D99; |
| | | } |
| | | |
| | | .rate { |
| | | font-size: 14px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #333333; |
| | | } |
New file |
| | |
| | | <view class="info-view"> |
| | | <view class="img-view"> |
| | | <image src="{{imgSrc}}" class="img" mode="aspectFit"/> |
| | | <view class="text">扫码二维码</view> |
| | | </view> |
| | | <view class="rate-view"> |
| | | <view class="rate-item" a:for="{{rateList}}" a:key="{{index}}"> |
| | | <view class="name"> |
| | | {{item.name}} |
| | | </view> |
| | | <view class="rate"> |
| | | {{item.rate}} |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
New file |
| | |
| | | Component({ |
| | | mixins: [], |
| | | data: {}, |
| | | props: { |
| | | imgSrc:'', |
| | | rateList:[] |
| | | }, |
| | | didMount() {}, |
| | | didUpdate() {}, |
| | | didUnmount() {}, |
| | | methods: {}, |
| | | }); |
New file |
| | |
| | | { |
| | | "component": true |
| | | } |
New file |
| | |
| | | .item-content { |
| | | padding: 14px 16px; |
| | | font-size: 17px; |
| | | color: #333; |
| | | line-height: 24px; |
| | | } |
| | | |
| | | .title-class { |
| | | font-size: 102px; |
| | | font-family: PingFang SC; |
| | | color: #333333; |
| | | } |
| | | |
| | | .time-filter { |
| | | display: flex; |
| | | height: 32px; |
| | | background: #F2F2F2; |
| | | border-radius: 16px; |
| | | align-items: center; |
| | | justify-content: space-around; |
| | | } |
| | | |
| | | .begin-time { |
| | | display: flex; |
| | | align-items: center; |
| | | font-size: 12px; |
| | | width: 30%; |
| | | height: 32px; |
| | | justify-content: center; |
| | | } |
| | | |
| | | .end-time { |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | font-size: 12px; |
| | | width: 30%; |
| | | height: 32px; |
| | | } |
| | | .item-box{ |
| | | display: flex; |
| | | flex-wrap: wrap; |
| | | /* justify-content: space-between; */ |
| | | padding: 10px 16px 10px 26px; |
| | | } |
| | | .filter-item { |
| | | display: inline-block; |
| | | min-width: 80px; |
| | | height: 32px; |
| | | line-height: 32px; |
| | | background: #F2F2F2; |
| | | border-radius: 16px; |
| | | font-size: 12px; |
| | | text-align: center; |
| | | margin-right: 8px; |
| | | margin-bottom: 8px; |
| | | } |
| | | |
| | | .active { |
| | | background: rgba(244, 241, 255, 1); |
| | | } |
| | | .btn-box{ |
| | | display: flex; |
| | | width: 640rpx; |
| | | justify-content: space-around; |
| | | position: fixed; |
| | | bottom: 10px; |
| | | } |
| | | .btn-1{ |
| | | width: 280rpx; |
| | | height: 40px; |
| | | line-height: 40px; |
| | | color: #666666; |
| | | border: 1px solid #CCCCCC; |
| | | border-radius: 20px; |
| | | } |
| | | .btn-2{ |
| | | width: 280rpx; |
| | | height: 40px; |
| | | line-height: 40px; |
| | | border-radius: 20px; |
| | | color: #fff; |
| | | border: 0; |
| | | outline: none; |
| | | } |
New file |
| | |
| | | <popup disableScroll="{{false}}" show="{{showRight}}" position="right" onClose="changeData" zIndex="{{100}}"> |
| | | <view style="min-height: 100vh;width:640rpx;box-sizing:border-box;padding:16px 0; background: #fff;position: relative"> |
| | | <scroll-view scroll-y="{{true}}" scroll-with-animation="{{true}}" scroll-top="{{0}}" style="height: 85vh;"> |
| | | <collapse className="demo-collapse" activeKey="{{['item-1']}}"> |
| | | <collapse-item a:if="{{hasTime}}" header="办单时间" titleClass="title-class" itemKey="item-1"> |
| | | <view class="item-content"> |
| | | <view class="time-filter"> |
| | | <text class="iconfont iconcalendar" style="font-size:14px"></text> |
| | | <view class="begin-time" onTap="getBeginTime"> |
| | | <text>{{queryObj.startDay}}</text> |
| | | </view> |
| | | ~ |
| | | <view class="end-time" onTap="getEndTime"> |
| | | <text>{{queryObj.endDay}}</text> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </collapse-item> |
| | | <collapse-item a:if="{{termArr}}" header="分期期数" titleClass="title-class" itemKey="item-2"> |
| | | <view class="item-box"> |
| | | <view a:for="{{termArr}}" class="filter-item" data-code="{{item.code}}" data-type="{{'insTerm'}}" style="{{queryObj.insTerm==item.code?{background:userStyle.backColor,color:userStyle.defaultColor,border:`0.5px solid ${userStyle.defaultColor}`}:''}}" a:key="{{item.code}}" onTap="setCode">{{item.name}}</view> |
| | | </view> |
| | | </collapse-item> |
| | | <collapse-item a:if="{{payTypeArr}}" header="付息方式" titleClass="title-class" itemKey="item-3"> |
| | | <view class="item-box"> |
| | | <view a:for="{{payTypeArr}}" class="filter-item" data-code="{{item.code}}" data-type="{{'prodId'}}" style="{{queryObj.prodId==item.code?{background:userStyle.backColor,color:userStyle.defaultColor,border:`0.5px solid ${userStyle.defaultColor}`}:''}}" a:key="{{item.code}}" onTap="setCode">{{item.name}}</view> |
| | | </view> |
| | | </collapse-item> |
| | | <collapse-item a:if="{{orderStaArr}}" header="订单状态" titleClass="title-class" itemKey="item-4"> |
| | | <view class="item-box"> |
| | | <view a:for="{{orderStaArr}}" class="filter-item" data-code="{{item.code}}" data-type="{{'status'}}" style="{{queryObj.status==item.code?{background:userStyle.backColor,color:userStyle.defaultColor,border:`0.5px solid ${userStyle.defaultColor}`}:''}}" a:key="{{item.code}}" onTap="setCode">{{item.name}}</view> |
| | | </view> |
| | | </collapse-item> |
| | | <collapse-item a:if="{{priceArr}}" header="分期本金" titleClass="title-class" itemKey="item-5"> |
| | | <view class="item-box"> |
| | | <view a:for="{{priceArr}}" class="filter-item" data-code="{{item.code}}" data-type="{{'price'}}" style="{{priceCode==item.code?{background:userStyle.backColor,color:userStyle.defaultColor,border:`0.5px solid ${userStyle.defaultColor}`}:''}}" a:key="{{item.code}}" onTap="setCode">{{item.name}}</view> |
| | | </view> |
| | | </collapse-item> |
| | | <collapse-item a:if="{{doPriceArr}}" header="交易金额" titleClass="title-class" itemKey="item-6"> |
| | | <view class="item-box"> |
| | | <view a:for="{{doPriceArr}}" class="filter-item" data-code="{{item.code}}" data-type="{{'doPrice'}}" style="{{priceCode==item.code?{background:userStyle.backColor,color:userStyle.defaultColor,border:`0.5px solid ${userStyle.defaultColor}`}:''}}" a:key="{{item.code}}" onTap="setCode">{{item.name}}</view> |
| | | </view> |
| | | </collapse-item> |
| | | </collapse> |
| | | </scroll-view> |
| | | <view class="btn-box"> |
| | | <button class="btn-1" onTap="reset"> |
| | | 重置 |
| | | </button> |
| | | <button class="btn-2" style="{{background:userStyle.gradientColor}}" onTap="confirm"> |
| | | 确定 |
| | | </button> |
| | | </view> |
| | | </view> |
| | | </popup> |
New file |
| | |
| | | |
| | | const dateFmt = require('../../utils/date.js'); |
| | | const app = getApp() |
| | | Component({ |
| | | data: { |
| | | priceCode:'', |
| | | userStyle:{}, |
| | | showRightCom:false, |
| | | queryObj:{ |
| | | startDay: dateFmt(new Date(),'YYYY-MM-DD'), |
| | | endDay:dateFmt(new Date(),'YYYY-MM-DD'), |
| | | }, |
| | | }, |
| | | // 设置默认属性 |
| | | props: { |
| | | |
| | | }, |
| | | didMount(){ |
| | | this.setData({ |
| | | userStyle:app.userStyle |
| | | }) |
| | | }, |
| | | didUpdate(){ |
| | | }, |
| | | didUnmount() { |
| | | }, |
| | | methods: { |
| | | changeData(){ |
| | | this.setData({ |
| | | showRightCom:false |
| | | }); |
| | | this.props.onShowage(this.data.showRightCom); |
| | | }, |
| | | getBeginTime(){ |
| | | my.datePicker({ |
| | | startDate: '2010-10-9', |
| | | endDate: '2027-10-9', |
| | | success: (res) => { |
| | | this.setData({ |
| | | 'queryObj.startDay':res.date |
| | | }) |
| | | }, |
| | | }); |
| | | }, |
| | | getEndTime(){ |
| | | my.datePicker({ |
| | | startDate: this.data.queryObj.beginTime, |
| | | endDate: '2027-10-9', |
| | | success: (res) => { |
| | | this.setData({ |
| | | 'queryObj.endDay':res.date |
| | | }) |
| | | }, |
| | | }); |
| | | }, |
| | | setCode(e){ |
| | | console.log(e) |
| | | var startAmt,endAmt |
| | | if(e.target.dataset.type=='price'|| e.target.dataset.type=='doPrice'){ |
| | | switch(e.target.dataset.code){ |
| | | case 1: |
| | | startAmt = 0 |
| | | endAmt = 999 |
| | | break; |
| | | case 2: |
| | | startAmt = 1000 |
| | | endAmt = 1999 |
| | | break; |
| | | case 3: |
| | | startAmt = 2000 |
| | | endAmt = 4999 |
| | | break; |
| | | case 4: |
| | | startAmt = 5000 |
| | | endAmt = 99999 |
| | | break; |
| | | } |
| | | this.setData({ |
| | | 'queryObj.startAmt':startAmt, |
| | | 'queryObj.endAmt':endAmt, |
| | | priceCode:e.target.dataset.code |
| | | }) |
| | | }else{ |
| | | var key = `queryObj.${e.target.dataset.type}` |
| | | this.setData({ |
| | | [key]:e.target.dataset.code |
| | | }) |
| | | } |
| | | |
| | | }, |
| | | // 重置按钮 |
| | | reset(){ |
| | | let obj = this.data.queryObj |
| | | for(let key in obj){ |
| | | obj[key] = '' |
| | | } |
| | | this.setData({ |
| | | queryObj:{}, |
| | | 'queryObj.startDay':dateFmt(new Date(),'YYYY-MM-DD'), |
| | | 'queryObj.endDay':dateFmt(new Date(),'YYYY-MM-DD'), |
| | | }) |
| | | }, |
| | | //确定按钮 |
| | | confirm(){ |
| | | this.props.onGetFilterInfo(this.data.queryObj); |
| | | this.changeData() |
| | | } |
| | | }, |
| | | }); |
New file |
| | |
| | | { |
| | | "component": true, |
| | | "usingComponents": { |
| | | "tabs": "mini-ali-ui/es/tabs/index", |
| | | "tab-content": "mini-ali-ui/es/tabs/tab-content/index", |
| | | "search-bar": "mini-ali-ui/es/search-bar/index", |
| | | "popup": "mini-ali-ui/es/popup/index", |
| | | "collapse": "mini-ali-ui/es/collapse/index", |
| | | "collapse-item": "mini-ali-ui/es/collapse/collapse-item/index" |
| | | } |
| | | } |
New file |
| | |
| | | .order-trial{ |
| | | width: 686rpx; |
| | | min-height: 140px; |
| | | background: #fff; |
| | | padding: 0 12px 12px; |
| | | box-sizing: border-box; |
| | | position: relative; |
| | | transform: translateY(-26px); |
| | | box-shadow: 0px 1px 12px 0px rgba(56, 56, 235, 0.08); |
| | | border-radius: 8px; |
| | | margin: auto; |
| | | } |
| | | .title-view{ |
| | | width: 100%; |
| | | border-bottom:1px solid #EEEEEE; |
| | | } |
| | | .title-order{ |
| | | font-size: 16px; |
| | | font-family: PingFang SC; |
| | | font-weight: bold; |
| | | color: #333333; |
| | | line-height: 50px; |
| | | } |
| | | .mation-view{ |
| | | padding: 0 12px; |
| | | } |
| | | .amt-view{ |
| | | display: flex; |
| | | justify-content: space-around; |
| | | } |
| | | .item-1{ |
| | | font-size: 12px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #666666; |
| | | text-align: center; |
| | | margin-bottom: 10px; |
| | | } |
| | | .text-1{ |
| | | font-size: 14px; |
| | | font-family: PingFang SC; |
| | | font-weight: bold; |
| | | color: #333333; |
| | | text-align: center; |
| | | } |
| | | .text-2{ |
| | | font-size: 20px; |
| | | font-family: PingFang SC; |
| | | font-weight: bold; |
| | | color: #333333; |
| | | text-align: center; |
| | | } |
| | | .amt-item{ |
| | | text-align: center; |
| | | padding: 16px 0; |
| | | position: relative; |
| | | } |
| | | .amt-item::after{ |
| | | content: ''; |
| | | width: 0; |
| | | height: 24px; |
| | | border: 1rpx solid #CCCCCC; |
| | | position: absolute; |
| | | right: 0; |
| | | top: 24px; |
| | | } |
| | | .amt-item:last-child::after{ |
| | | content: ''; |
| | | display: none; |
| | | } |
| | | .rate-item{ |
| | | display: flex; |
| | | justify-content: space-between; |
| | | margin-bottom: 14px; |
| | | } |
| | | .rate-name{ |
| | | font-size: 12px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #666666; |
| | | } |
| | | .rate-number{ |
| | | font-size: 12px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #666666; |
| | | } |
New file |
| | |
| | | <view class="order-trial"> |
| | | <view class="title-view"> |
| | | <text class="title-order">{{title}}</text> |
| | | </view> |
| | | <view class="mation-view"> |
| | | <view class="amt-view"> |
| | | <view a:for="{{amtList}}" a:key="{{index}}" style="{{width:100/amtList.length+'%'}}" class="amt-item"> |
| | | <view class="item-1"> |
| | | {{item.name}} |
| | | </view> |
| | | <view class="item-2"> |
| | | <text class="text-1">¥</text> |
| | | <text class="text-2">{{item.number}}</text> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view class="rate-view"> |
| | | <view class="rate-item" a:for="{{rateList}}" a:key="{{index}}"> |
| | | <view class="rate-name"> |
| | | {{item.name}} |
| | | </view> |
| | | <view class="rate-number"> |
| | | {{item.rate}}% |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
New file |
| | |
| | | Component({ |
| | | mixins: [], |
| | | data: {}, |
| | | props: { |
| | | title:"", |
| | | amtList:[], |
| | | rateList:[], |
| | | isLast:"" |
| | | }, |
| | | didMount() {}, |
| | | didUpdate() {}, |
| | | didUnmount() {}, |
| | | methods: {}, |
| | | }); |
New file |
| | |
| | | { |
| | | "component": true |
| | | } |
New file |
| | |
| | | { |
| | | "component2": true |
| | | } |
New file |
| | |
| | | { |
| | | "requires": true, |
| | | "lockfileVersion": 1, |
| | | "dependencies": { |
| | | "@babel/runtime": { |
| | | "version": "7.12.5", |
| | | "resolved": "https://registry.npm.taobao.org/@babel/runtime/download/@babel/runtime-7.12.5.tgz?cache=0&sync_timestamp=1604441331796&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40babel%2Fruntime%2Fdownload%2F%40babel%2Fruntime-7.12.5.tgz", |
| | | "integrity": "sha1-QQ5+SHRB4bNgwpvnFdhw2bmFiC4=", |
| | | "requires": { |
| | | "regenerator-runtime": "^0.13.4" |
| | | } |
| | | }, |
| | | "ansi-regex": { |
| | | "version": "4.1.0", |
| | | "resolved": "https://registry.npm.taobao.org/ansi-regex/download/ansi-regex-4.1.0.tgz", |
| | | "integrity": "sha1-i5+PCM8ay4Q3Vqg5yox+MWjFGZc=" |
| | | }, |
| | | "ansi-styles": { |
| | | "version": "3.2.1", |
| | | "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-3.2.1.tgz?cache=0&sync_timestamp=1606792382140&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-styles%2Fdownload%2Fansi-styles-3.2.1.tgz", |
| | | "integrity": "sha1-QfuyAkPlCxK+DwS43tvwdSDOhB0=", |
| | | "requires": { |
| | | "color-convert": "^1.9.0" |
| | | } |
| | | }, |
| | | "base64-js": { |
| | | "version": "1.5.1", |
| | | "resolved": "https://registry.npm.taobao.org/base64-js/download/base64-js-1.5.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbase64-js%2Fdownload%2Fbase64-js-1.5.1.tgz", |
| | | "integrity": "sha1-GxtEAWClv3rUC2UPCVljSBkDkwo=" |
| | | }, |
| | | "buffer": { |
| | | "version": "5.7.1", |
| | | "resolved": "https://registry.npm.taobao.org/buffer/download/buffer-5.7.1.tgz?cache=0&sync_timestamp=1606098078312&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fbuffer%2Fdownload%2Fbuffer-5.7.1.tgz", |
| | | "integrity": "sha1-umLnwTEzBTWCGXFghRqPZI6Z7tA=", |
| | | "requires": { |
| | | "base64-js": "^1.3.1", |
| | | "ieee754": "^1.1.13" |
| | | } |
| | | }, |
| | | "buffer-alloc": { |
| | | "version": "1.2.0", |
| | | "resolved": "https://registry.npm.taobao.org/buffer-alloc/download/buffer-alloc-1.2.0.tgz", |
| | | "integrity": "sha1-iQ3ZDZI6hz4I4Q5f1RpX5bfM4Ow=", |
| | | "requires": { |
| | | "buffer-alloc-unsafe": "^1.1.0", |
| | | "buffer-fill": "^1.0.0" |
| | | } |
| | | }, |
| | | "buffer-alloc-unsafe": { |
| | | "version": "1.1.0", |
| | | "resolved": "https://registry.npm.taobao.org/buffer-alloc-unsafe/download/buffer-alloc-unsafe-1.1.0.tgz", |
| | | "integrity": "sha1-vX3CauKXLQ7aJTvgYdupkjScGfA=" |
| | | }, |
| | | "buffer-fill": { |
| | | "version": "1.0.0", |
| | | "resolved": "https://registry.npm.taobao.org/buffer-fill/download/buffer-fill-1.0.0.tgz", |
| | | "integrity": "sha1-+PeLdniYiO858gXNY39o5wISKyw=" |
| | | }, |
| | | "buffer-from": { |
| | | "version": "1.1.1", |
| | | "resolved": "https://registry.npm.taobao.org/buffer-from/download/buffer-from-1.1.1.tgz", |
| | | "integrity": "sha1-MnE7wCj3XAL9txDXx7zsHyxgcO8=" |
| | | }, |
| | | "camelcase": { |
| | | "version": "5.3.1", |
| | | "resolved": "https://registry.npm.taobao.org/camelcase/download/camelcase-5.3.1.tgz?cache=0&sync_timestamp=1603921882890&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcamelcase%2Fdownload%2Fcamelcase-5.3.1.tgz", |
| | | "integrity": "sha1-48mzFWnhBoEd8kL3FXJaH0xJQyA=" |
| | | }, |
| | | "charenc": { |
| | | "version": "0.0.2", |
| | | "resolved": "https://registry.npm.taobao.org/charenc/download/charenc-0.0.2.tgz", |
| | | "integrity": "sha1-wKHS86cJLgN3S/qD8UwPxXkKhmc=" |
| | | }, |
| | | "cliui": { |
| | | "version": "5.0.0", |
| | | "resolved": "https://registry.npm.taobao.org/cliui/download/cliui-5.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcliui%2Fdownload%2Fcliui-5.0.0.tgz", |
| | | "integrity": "sha1-3u/P2y6AB4SqNPRvoI4GhRx7u8U=", |
| | | "requires": { |
| | | "string-width": "^3.1.0", |
| | | "strip-ansi": "^5.2.0", |
| | | "wrap-ansi": "^5.1.0" |
| | | } |
| | | }, |
| | | "color-convert": { |
| | | "version": "1.9.3", |
| | | "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-1.9.3.tgz", |
| | | "integrity": "sha1-u3GFBpDh8TZWfeYp0tVHHe2kweg=", |
| | | "requires": { |
| | | "color-name": "1.1.3" |
| | | } |
| | | }, |
| | | "color-name": { |
| | | "version": "1.1.3", |
| | | "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.3.tgz", |
| | | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" |
| | | }, |
| | | "crypt": { |
| | | "version": "0.0.2", |
| | | "resolved": "https://registry.npm.taobao.org/crypt/download/crypt-0.0.2.tgz", |
| | | "integrity": "sha1-iNf/fsDfuG9xPch7u0LQRNPmxBs=" |
| | | }, |
| | | "decamelize": { |
| | | "version": "1.2.0", |
| | | "resolved": "https://registry.npm.taobao.org/decamelize/download/decamelize-1.2.0.tgz", |
| | | "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=" |
| | | }, |
| | | "dijkstrajs": { |
| | | "version": "1.0.1", |
| | | "resolved": "https://registry.npm.taobao.org/dijkstrajs/download/dijkstrajs-1.0.1.tgz", |
| | | "integrity": "sha1-082BIh4+pAdCz83lVtTpnpjdxxs=" |
| | | }, |
| | | "emoji-regex": { |
| | | "version": "7.0.3", |
| | | "resolved": "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-7.0.3.tgz?cache=0&sync_timestamp=1603212263242&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Femoji-regex%2Fdownload%2Femoji-regex-7.0.3.tgz", |
| | | "integrity": "sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY=" |
| | | }, |
| | | "find-up": { |
| | | "version": "3.0.0", |
| | | "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-3.0.0.tgz", |
| | | "integrity": "sha1-SRafHXmTQwZG2mHsxa41XCHJe3M=", |
| | | "requires": { |
| | | "locate-path": "^3.0.0" |
| | | } |
| | | }, |
| | | "get-caller-file": { |
| | | "version": "2.0.5", |
| | | "resolved": "https://registry.npm.taobao.org/get-caller-file/download/get-caller-file-2.0.5.tgz", |
| | | "integrity": "sha1-T5RBKoLbMvNuOwuXQfipf+sDH34=" |
| | | }, |
| | | "ieee754": { |
| | | "version": "1.2.1", |
| | | "resolved": "https://registry.npm.taobao.org/ieee754/download/ieee754-1.2.1.tgz?cache=0&sync_timestamp=1603838235461&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fieee754%2Fdownload%2Fieee754-1.2.1.tgz", |
| | | "integrity": "sha1-jrehCmP/8l0VpXsAFYbRd9Gw01I=" |
| | | }, |
| | | "is-buffer": { |
| | | "version": "1.1.6", |
| | | "resolved": "https://registry.npm.taobao.org/is-buffer/download/is-buffer-1.1.6.tgz?cache=0&sync_timestamp=1604429876103&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-buffer%2Fdownload%2Fis-buffer-1.1.6.tgz", |
| | | "integrity": "sha1-76ouqdqg16suoTqXsritUf776L4=" |
| | | }, |
| | | "is-fullwidth-code-point": { |
| | | "version": "2.0.0", |
| | | "resolved": "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-2.0.0.tgz", |
| | | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=" |
| | | }, |
| | | "isarray": { |
| | | "version": "2.0.5", |
| | | "resolved": "https://registry.npm.taobao.org/isarray/download/isarray-2.0.5.tgz", |
| | | "integrity": "sha1-ivHkwSISRMxiRZ+vOJQNTmRKVyM=" |
| | | }, |
| | | "locate-path": { |
| | | "version": "3.0.0", |
| | | "resolved": "https://registry.npm.taobao.org/locate-path/download/locate-path-3.0.0.tgz", |
| | | "integrity": "sha1-2+w7OrdZdYBxtY/ln8QYca8hQA4=", |
| | | "requires": { |
| | | "p-locate": "^3.0.0", |
| | | "path-exists": "^3.0.0" |
| | | } |
| | | }, |
| | | "md5": { |
| | | "version": "2.3.0", |
| | | "resolved": "https://registry.npm.taobao.org/md5/download/md5-2.3.0.tgz", |
| | | "integrity": "sha1-w9qaaq46MLRreww0m4exENw72k8=", |
| | | "requires": { |
| | | "charenc": "0.0.2", |
| | | "crypt": "0.0.2", |
| | | "is-buffer": "~1.1.6" |
| | | } |
| | | }, |
| | | "mini-ali-ui": { |
| | | "version": "1.2.1", |
| | | "resolved": "https://registry.npm.taobao.org/mini-ali-ui/download/mini-ali-ui-1.2.1.tgz", |
| | | "integrity": "sha1-8Ky1gYSn7UcNd9GZ/SX2WubYmFk=", |
| | | "requires": { |
| | | "@babel/runtime": "^7.11.2" |
| | | } |
| | | }, |
| | | "p-limit": { |
| | | "version": "2.3.0", |
| | | "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-2.3.0.tgz", |
| | | "integrity": "sha1-PdM8ZHohT9//2DWTPrCG2g3CHbE=", |
| | | "requires": { |
| | | "p-try": "^2.0.0" |
| | | } |
| | | }, |
| | | "p-locate": { |
| | | "version": "3.0.0", |
| | | "resolved": "https://registry.npm.taobao.org/p-locate/download/p-locate-3.0.0.tgz?cache=0&sync_timestamp=1597081605529&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fp-locate%2Fdownload%2Fp-locate-3.0.0.tgz", |
| | | "integrity": "sha1-Mi1poFwCZLJZl9n0DNiokasAZKQ=", |
| | | "requires": { |
| | | "p-limit": "^2.0.0" |
| | | } |
| | | }, |
| | | "p-try": { |
| | | "version": "2.2.0", |
| | | "resolved": "https://registry.npm.taobao.org/p-try/download/p-try-2.2.0.tgz", |
| | | "integrity": "sha1-yyhoVA4xPWHeWPr741zpAE1VQOY=" |
| | | }, |
| | | "path-exists": { |
| | | "version": "3.0.0", |
| | | "resolved": "https://registry.npm.taobao.org/path-exists/download/path-exists-3.0.0.tgz", |
| | | "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=" |
| | | }, |
| | | "pngjs": { |
| | | "version": "3.4.0", |
| | | "resolved": "https://registry.npm.taobao.org/pngjs/download/pngjs-3.4.0.tgz", |
| | | "integrity": "sha1-mcp9clll+2VYFOr2XzjxK72/VV8=" |
| | | }, |
| | | "qrcode": { |
| | | "version": "1.4.4", |
| | | "resolved": "https://registry.npm.taobao.org/qrcode/download/qrcode-1.4.4.tgz", |
| | | "integrity": "sha1-8MQ1aKfnUQpV78O4jZYC9xlj6oM=", |
| | | "requires": { |
| | | "buffer": "^5.4.3", |
| | | "buffer-alloc": "^1.2.0", |
| | | "buffer-from": "^1.1.1", |
| | | "dijkstrajs": "^1.0.1", |
| | | "isarray": "^2.0.1", |
| | | "pngjs": "^3.3.0", |
| | | "yargs": "^13.2.4" |
| | | } |
| | | }, |
| | | "regenerator-runtime": { |
| | | "version": "0.13.7", |
| | | "resolved": "https://registry.npm.taobao.org/regenerator-runtime/download/regenerator-runtime-0.13.7.tgz", |
| | | "integrity": "sha1-ysLazIoepnX+qrrriugziYrkb1U=" |
| | | }, |
| | | "require-directory": { |
| | | "version": "2.1.1", |
| | | "resolved": "https://registry.npm.taobao.org/require-directory/download/require-directory-2.1.1.tgz", |
| | | "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=" |
| | | }, |
| | | "require-main-filename": { |
| | | "version": "2.0.0", |
| | | "resolved": "https://registry.npm.taobao.org/require-main-filename/download/require-main-filename-2.0.0.tgz", |
| | | "integrity": "sha1-0LMp7MfMD2Fkn2IhW+aa9UqomJs=" |
| | | }, |
| | | "set-blocking": { |
| | | "version": "2.0.0", |
| | | "resolved": "https://registry.npm.taobao.org/set-blocking/download/set-blocking-2.0.0.tgz", |
| | | "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" |
| | | }, |
| | | "string-width": { |
| | | "version": "3.1.0", |
| | | "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz", |
| | | "integrity": "sha1-InZ74htirxCBV0MG9prFG2IgOWE=", |
| | | "requires": { |
| | | "emoji-regex": "^7.0.1", |
| | | "is-fullwidth-code-point": "^2.0.0", |
| | | "strip-ansi": "^5.1.0" |
| | | } |
| | | }, |
| | | "strip-ansi": { |
| | | "version": "5.2.0", |
| | | "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-5.2.0.tgz", |
| | | "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=", |
| | | "requires": { |
| | | "ansi-regex": "^4.1.0" |
| | | } |
| | | }, |
| | | "which-module": { |
| | | "version": "2.0.0", |
| | | "resolved": "https://registry.npm.taobao.org/which-module/download/which-module-2.0.0.tgz", |
| | | "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=" |
| | | }, |
| | | "wrap-ansi": { |
| | | "version": "5.1.0", |
| | | "resolved": "https://registry.npm.taobao.org/wrap-ansi/download/wrap-ansi-5.1.0.tgz", |
| | | "integrity": "sha1-H9H2cjXVttD+54EFYAG/tpTAOwk=", |
| | | "requires": { |
| | | "ansi-styles": "^3.2.0", |
| | | "string-width": "^3.0.0", |
| | | "strip-ansi": "^5.0.0" |
| | | } |
| | | }, |
| | | "y18n": { |
| | | "version": "4.0.1", |
| | | "resolved": "https://registry.npm.taobao.org/y18n/download/y18n-4.0.1.tgz?cache=0&sync_timestamp=1606778347159&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fy18n%2Fdownload%2Fy18n-4.0.1.tgz", |
| | | "integrity": "sha1-jbK4PDHF11CZu4kLI/MJSJHiR9Q=" |
| | | }, |
| | | "yargs": { |
| | | "version": "13.3.2", |
| | | "resolved": "https://registry.npm.taobao.org/yargs/download/yargs-13.3.2.tgz?cache=0&sync_timestamp=1607207965285&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs%2Fdownload%2Fyargs-13.3.2.tgz", |
| | | "integrity": "sha1-rX/+/sGqWVZayRX4Lcyzipwxot0=", |
| | | "requires": { |
| | | "cliui": "^5.0.0", |
| | | "find-up": "^3.0.0", |
| | | "get-caller-file": "^2.0.1", |
| | | "require-directory": "^2.1.1", |
| | | "require-main-filename": "^2.0.0", |
| | | "set-blocking": "^2.0.0", |
| | | "string-width": "^3.0.0", |
| | | "which-module": "^2.0.0", |
| | | "y18n": "^4.0.0", |
| | | "yargs-parser": "^13.1.2" |
| | | } |
| | | }, |
| | | "yargs-parser": { |
| | | "version": "13.1.2", |
| | | "resolved": "https://registry.npm.taobao.org/yargs-parser/download/yargs-parser-13.1.2.tgz?cache=0&sync_timestamp=1604886694625&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fyargs-parser%2Fdownload%2Fyargs-parser-13.1.2.tgz", |
| | | "integrity": "sha1-Ew8JcC667vJlDVTObj5XBvek+zg=", |
| | | "requires": { |
| | | "camelcase": "^5.0.0", |
| | | "decamelize": "^1.2.0" |
| | | } |
| | | } |
| | | } |
| | | } |
New file |
| | |
| | | { |
| | | "dependencies": { |
| | | "md5": "^2.3.0", |
| | | "mini-ali-ui": "^1.2.1", |
| | | "qrcode": "^1.4.4" |
| | | } |
| | | } |
New file |
| | |
| | | .order-page { |
| | | min-height: 100vh; |
| | | background-color: #fafafa; |
| | | } |
| | | |
| | | .tab-item { |
| | | box-sizing: border-box; |
| | | width: 686rpx; |
| | | margin: auto; |
| | | background: #fafafa; |
| | | } |
| | | |
| | | .search-box { |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | padding-top: 16px; |
| | | } |
| | | |
| | | .filer { |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | |
| | | .filer-tit { |
| | | font-size: 14px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | text-decoration: underline; |
| | | color: #333333; |
| | | } |
| | | |
| | | .am-search { |
| | | padding-left: 0; |
| | | } |
| | | |
| | | .am-search-input { |
| | | width: 536rpx; |
| | | border-radius: 18px; |
| | | } |
| | | |
| | | .am-tabs-pane-wrap { |
| | | background: #fafafa; |
| | | } |
| | | |
| | | .show-date { |
| | | width: 686rpx; |
| | | height: 80px; |
| | | border-radius: 8px; |
| | | margin-top: 12px; |
| | | display: flex; |
| | | justify-content: space-around; |
| | | align-items: center; |
| | | margin-bottom: 4px; |
| | | } |
| | | |
| | | .data-left, .data-right { |
| | | width: 50%; |
| | | text-align: center; |
| | | color: #fff |
| | | } |
| | | |
| | | .tit { |
| | | font-size: 12px; |
| | | margin-bottom: 10px; |
| | | } |
| | | |
| | | .data-left { |
| | | position: relative; |
| | | } |
| | | |
| | | .data-left::after { |
| | | content: ''; |
| | | width: 0; |
| | | height: 24px; |
| | | border: 1rpx solid #fff; |
| | | position: absolute; |
| | | right: 0; |
| | | top: 15px; |
| | | } |
| | | |
| | | .tab-content { |
| | | width: 686rpx; |
| | | height: 157px; |
| | | background: #FFFFFF; |
| | | box-shadow: 0px 0px 7px 0px rgba(26, 26, 209, 0.02); |
| | | border-radius: 4px; |
| | | margin-top: 8px; |
| | | box-sizing: border-box; |
| | | padding: 0 16px; |
| | | } |
| | | |
| | | .content-top { |
| | | display: flex; |
| | | justify-content: space-around; |
| | | align-items: center; |
| | | box-sizing: border-box; |
| | | padding: 16px 0 13px; |
| | | border-bottom: 1px solid #EEEEEE; |
| | | } |
| | | |
| | | .name-box { |
| | | display: flex; |
| | | align-items: center; |
| | | text-align: left; |
| | | width: 50%; |
| | | } |
| | | |
| | | .status-box { |
| | | text-align: right; |
| | | width: 50%; |
| | | } |
| | | |
| | | .content-bottom { |
| | | padding-top: 16px; |
| | | } |
| | | |
| | | .line-one { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | margin-bottom: 12px; |
| | | } |
| | | |
| | | .tit-cont { |
| | | color: #8E8D99; |
| | | font-size: 14px; |
| | | } |
| | | |
| | | .cont { |
| | | color: #333; |
| | | font-size: 14px; |
| | | } |
| | | |
| | | .tab-content-shsk { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | width: 686rpx; |
| | | height: 65px; |
| | | background: #FFFFFF; |
| | | box-shadow: 0px 0px 7px 0px rgba(26, 26, 209, 0.02); |
| | | border-radius: 4px; |
| | | padding: 0 16px; |
| | | box-sizing: border-box; |
| | | margin-top: 8px; |
| | | } |
| | | |
| | | .time-shsk { |
| | | font-size: 12px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #999999; |
| | | } |
| | | |
| | | .no-data{ |
| | | height: 70vh; |
| | | background:#fafafa; |
| | | text-align: center; |
| | | padding-top: 81px; |
| | | box-sizing: border-box; |
| | | } |
| | | |
| | | .no-data-img{ |
| | | width: 128px; |
| | | height: 118px; |
| | | } |
| | | |
| | | .no-data-text{ |
| | | font-size: 14px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #333333; |
| | | margin-top: 20px; |
| | | } |
New file |
| | |
| | | <view class="order-page"> |
| | | <tabs tabs="{{tabs2}}" tabsName="activeTab2" onChange="test" onTabClick="handleTabClick" activeTab="{{activeTab2}}" capsule="{{false}}" tabBarUnderlineWidth="20px"> |
| | | <block a:for="{{tabs2}}"> |
| | | <tab-content key="{{index}}" tabId="{{index}}" activeTab="{{activeTab2}}" a:if="{{index === 0}}"> |
| | | <view class="tab-item"> |
| | | <view class="search-box"> |
| | | <search-bar value="{{value}}" borderColor="#EDEDF2" onSubmit="searchMation" onInput="onhandInput" focus="{{false}}" maxLength="{{20}}" showCancelButton="{{false}}" placeholder="请输入用户名称" /> |
| | | <view class="filer"> |
| | | <text class="iconfont iconshaixuan" style="font-size:20px"></text> |
| | | <text class="filer-tit" onTap="showFilter">筛选</text> |
| | | </view> |
| | | </view> |
| | | <view class="show-date" style="{{background:userStyle.gradientColor}}"> |
| | | <view class="data-left"> |
| | | <view class="tit"> |
| | | 分期本金 |
| | | </view> |
| | | <view class="number"> |
| | | <text style="font-size:14px">¥</text> |
| | | <text style="font-size:20px">{{amt}}</text> |
| | | </view> |
| | | </view> |
| | | <view class="data-right"> |
| | | <view class="tit"> |
| | | 交易单数 |
| | | </view> |
| | | <view class="number" style="font-size:20px"> |
| | | {{num}} |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <scroll-view a:if="{{list.length > 0}}" scroll-y="{{true}}" scroll-with-animation="{{true}}" style="height: 70vh;background:#fafafa" onScrollToLower="lower" scroll-top="{{0}}"> |
| | | <view class="tab-content" a:for="{{list}}" a:key="{{index}}" onTap="goDetail" data-orderId="{{item.orderId}}"> |
| | | <view class="content-top"> |
| | | <view class="name-box"> |
| | | <text class="iconfont iconkehuxingming" style="{{color:userStyle.defaultColor,'font-size':'20px','margin-right':'8px'}}"></text> |
| | | <view>{{item.userName}}</view> |
| | | </view> |
| | | <view class="status-box"> |
| | | <view style="{{color:item.status==0?'#FF9900':'#999','font-size':'13px','margin-bottom':'8px'}}">{{item.statusStr}}</view> |
| | | <view> |
| | | <text style="font-size:14px">¥</text> |
| | | <text style="font-size:18px">{{item.settAmt}}</text> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view class="content-bottom"> |
| | | <view class="line-one"> |
| | | <view> |
| | | <text class="tit-cont">分期期数:</text> |
| | | <text class="cont">{{item.insTerm}}期</text> |
| | | </view> |
| | | <view> |
| | | <text class="tit-cont">付息方式:</text> |
| | | <text class="cont">{{item.prodName}}</text> |
| | | </view> |
| | | </view> |
| | | <view class="line-two"> |
| | | <view> |
| | | <text class="tit-cont">创建时间:</text> |
| | | <text class="cont">{{item.creTime}}</text> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </scroll-view> |
| | | <view a:else class="no-data"> |
| | | <cover-image src="../../static/nodata.png" class="no-data-img"/> |
| | | <view class="no-data-text">暂无数据</view> |
| | | </view> |
| | | </view> |
| | | </tab-content> |
| | | <tab-content key="{{index}}" tabId="{{index}}" activeTab="{{activeTab2}}" a:elif="{{index === 1}}"> |
| | | <view class="tab-item"> |
| | | <view class="search-box"> |
| | | <search-bar value="{{value}}" borderColor="#EDEDF2" onSubmit="searchMation" onInput="onhandInput" focus="{{false}}" maxLength="{{20}}" showCancelButton="{{false}}" placeholder="请输入用户名称" /> |
| | | <view class="filer"> |
| | | <text class="iconfont iconshaixuan" style="font-size:20px"></text> |
| | | <text class="filer-tit" onTap="showFilter">筛选</text> |
| | | </view> |
| | | </view> |
| | | <view class="show-date" style="{{background:userStyle.gradientColor}}"> |
| | | <view class="data-left"> |
| | | <view class="tit"> |
| | | 分期金额 |
| | | </view> |
| | | <view class="number"> |
| | | <text style="font-size:14px">¥</text> |
| | | <text style="font-size:20px">{{amt}}</text> |
| | | </view> |
| | | </view> |
| | | <view class="data-right"> |
| | | <view class="tit"> |
| | | 交易单数 |
| | | </view> |
| | | <view class="number" style="font-size:20px"> |
| | | {{num}} |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <scroll-view scroll-y="{{true}}" scroll-with-animation="{{true}}" style="height: 70vh;background:#fafafa" onScrollToLower="lower" scroll-top="{{0}}"> |
| | | <view a:if="{{list.length > 0}}"> |
| | | <view class="tab-content-shsk" a:for="{{list}}" a:key="{{index}}" onTap="goDetail" data-orderId="{{item.orderId}}"> |
| | | <view class="left"> |
| | | <view style="{{color:item.status==0?'#FF9900':'#999','font-size':'14px','margin-bottom':'10px'}}"> |
| | | {{item.statusStr}} |
| | | </view> |
| | | <view class="time-shsk"> |
| | | {{item.creTime}} |
| | | </view> |
| | | </view> |
| | | <view class="right"> |
| | | <text style="color:#333;font-size:14px">¥</text> |
| | | <text style="color:#333;font-size:18px">{{item.settAmt}}</text> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | <view a:else class="no-data"> |
| | | <cover-image src="../../static/nodata.png" class="no-data-img"/> |
| | | <view class="no-data-text">暂无数据</view> |
| | | </view> |
| | | </scroll-view> |
| | | </view> |
| | | </tab-content> |
| | | </block> |
| | | </tabs> |
| | | </view> |
| | | <my-filter showRight="{{showRight}}" onGetFilterInfo="onGetFilterInfo" onShowage="onShowage" termArr="{{activeTab2==0?termList:''}}" payTypeArr="{{activeTab2==0?prodList:''}}" orderStaArr="{{statusList}}" priceArr="{{activeTab2==0?priceArr:''}}" doPriceArr="{{activeTab2==0?'':priceArr}}" hasTime="{{true}}"></my-filter> |
New file |
| | |
| | | const app = getApp() |
| | | let $api = require('../../utils/ajaxFn.js') |
| | | const dateFmt = require('../../utils/date.js'); |
| | | Page({ |
| | | data: { |
| | | isNomore: false, |
| | | amt: 0, |
| | | num: 0, |
| | | url: '/sib/xcx/order/hbListInit',//初始化接口地址为花呗 |
| | | queryObj: { |
| | | prodType: 200015,//初始化产品为花呗 |
| | | }, |
| | | activeTab2: 0, |
| | | showRight: false, |
| | | userStyle: {}, |
| | | value: '',//搜索框内容 |
| | | zfbVersionList: [],//通道数组 |
| | | termList: [],//期数数组 |
| | | prodList: [],//付息方式数组 |
| | | statusList: [],//状态数组 |
| | | priceArr: [ |
| | | { |
| | | name: '0~999', |
| | | code: 1 |
| | | }, |
| | | { |
| | | name: '1000~1999', |
| | | code: 2 |
| | | }, |
| | | { |
| | | name: '2000~4999', |
| | | code: 3 |
| | | }, |
| | | { |
| | | name: '5000及以上', |
| | | code: 4 |
| | | } |
| | | ],//金额数组 |
| | | tabs2: [ |
| | | { |
| | | title: '花呗分期', |
| | | subTitle: '描述文案', |
| | | }, |
| | | { |
| | | title: '商户收款', |
| | | subTitle: '描述文案', |
| | | } |
| | | ],//顶部产品数组 |
| | | list: [] |
| | | }, |
| | | onLoad() { |
| | | this.setData({ |
| | | userStyle: app.userStyle, |
| | | }) |
| | | }, |
| | | onShow() { |
| | | this.getFilter() |
| | | this.getList() |
| | | }, |
| | | onHide() { |
| | | // 页面被关闭 |
| | | this.setData({ |
| | | showRight: false, |
| | | activeTab2: 0, |
| | | url: '/sib/xcx/order/hbListInit', |
| | | queryObj: { prodType: 200015 }, |
| | | }) |
| | | }, |
| | | test({ index, tabsName }){ |
| | | console.log(222333) |
| | | this.handleTabClick({ index, tabsName }) |
| | | }, |
| | | handleTabClick({ index, tabsName }) { |
| | | console.log({ index, tabsName }) |
| | | this.setData({ |
| | | [tabsName]: index, |
| | | isNomore: false, |
| | | value:'' |
| | | }); |
| | | if (index == 0) { |
| | | this.setData({ |
| | | queryObj: { prodType: 200015 }, |
| | | url: '/sib/xcx/order/hbListInit', |
| | | list:[] |
| | | }) |
| | | } else if (index == 1) { |
| | | this.setData({ |
| | | queryObj: { prodType: 200008 }, |
| | | url: '/sib/xcx/order/dmfListInit', |
| | | list:[] |
| | | }) |
| | | } |
| | | this.getList() |
| | | this.getFilter() |
| | | }, |
| | | onhandInput(value){ |
| | | this.setData({ |
| | | value:value |
| | | }) |
| | | }, |
| | | // 搜索框事件 |
| | | searchMation(value){ |
| | | console.log(value) |
| | | let obj = this.data.queryObj |
| | | if(value){ |
| | | obj.userName = value |
| | | }else{ |
| | | obj.userName = '' |
| | | delete obj.userName |
| | | } |
| | | delete obj.limitOrderId |
| | | this.setData({ |
| | | list: [], |
| | | isNomore: false, |
| | | queryObj:{ |
| | | ...obj |
| | | }, |
| | | }) |
| | | this.getList() |
| | | }, |
| | | getFilter() { |
| | | $api.ajax( |
| | | this.data.url, |
| | | 'POST', |
| | | (res) => { |
| | | let body = res.data.body |
| | | if (this.data.activeTab2 == 0) { |
| | | this.setData({ |
| | | zfbVersionList: body.zfbVersionList, |
| | | termList: body.termList, |
| | | prodList: body.prodList, |
| | | statusList: body.statusList |
| | | }) |
| | | } |
| | | if (this.data.activeTab2 == 1) { |
| | | this.setData({ |
| | | statusList: body.statusList |
| | | }) |
| | | } |
| | | |
| | | }, |
| | | (err) => { }, |
| | | true |
| | | ) |
| | | }, |
| | | // 获取列表 |
| | | getList() { |
| | | $api.ajax( |
| | | '/sib/xcx/order/list', |
| | | 'POST', |
| | | (res) => { |
| | | this.setData({ |
| | | amt: res.data.body.amt, |
| | | num: res.data.body.num |
| | | }) |
| | | |
| | | if (res.data.body.items.length < 1) { |
| | | this.setData({ |
| | | isNomore: true |
| | | }) |
| | | my.showToast({ |
| | | type: 'none', |
| | | content: '没有更多了', |
| | | duration: 2000, |
| | | }); |
| | | } else { |
| | | res.data.body.items.forEach(e => { |
| | | e.creTime = dateFmt(e.creTime, 'YYYY-MM-DD HH:mm:ss') |
| | | }) |
| | | this.setData({ |
| | | list: [...this.data.list, ...res.data.body.items], |
| | | 'queryObj.limitOrderId': res.data.body.items[res.data.body.items.length - 1].orderId |
| | | }) |
| | | } |
| | | |
| | | |
| | | }, |
| | | (err) => { }, |
| | | true, |
| | | { |
| | | ...this.data.queryObj |
| | | } |
| | | ) |
| | | }, |
| | | // 滑动至底部处理 |
| | | lower() { |
| | | if (!this.data.isNomore) { |
| | | this.getList() |
| | | } |
| | | }, |
| | | // 查看详情 |
| | | goDetail(e) { |
| | | let orderId = e.target.dataset.orderId |
| | | switch (this.data.activeTab2) { |
| | | case 0: |
| | | my.navigateTo({ |
| | | url: `../order/hbfqOrder/hbfqOrder?orderId=${orderId}` |
| | | }); |
| | | break; |
| | | case 1: |
| | | my.navigateTo({ |
| | | url: `../order/shskOrder/shskOrder?orderId=${orderId}` |
| | | }); |
| | | break; |
| | | } |
| | | }, |
| | | // 展示弹出层 |
| | | showFilter() { |
| | | this.setData({ |
| | | showRight: true |
| | | }) |
| | | }, |
| | | // 自定义事件控制弹出层关闭 |
| | | onShowage(data) { |
| | | this.setData({ |
| | | showRight: data |
| | | }); |
| | | }, |
| | | // 自定义筛选事件 |
| | | onGetFilterInfo(data) { |
| | | if(this.data.value){ |
| | | var obj = { ...this.data.queryObj.prodType, ...data ,userName:this.data.value} |
| | | }else{ |
| | | var obj = { ...this.data.queryObj.prodType, ...data } |
| | | } |
| | | this.setData({ |
| | | list: [], |
| | | isNomore: false, |
| | | queryObj: { ...obj } |
| | | }) |
| | | this.getList() |
| | | } |
| | | }); |
New file |
| | |
| | | { |
| | | "defaultTitle": "业务数据", |
| | | "usingComponents": { |
| | | "tabs": "mini-ali-ui/es/tabs/index", |
| | | "tab-content": "mini-ali-ui/es/tabs/tab-content/index", |
| | | "search-bar": "mini-ali-ui/es/search-bar/index", |
| | | "popup": "mini-ali-ui/es/popup/index", |
| | | "collapse": "mini-ali-ui/es/collapse/index", |
| | | "collapse-item": "mini-ali-ui/es/collapse/collapse-item/index", |
| | | "my-filter":"/components/fitler/fitler" |
| | | } |
| | | } |
New file |
| | |
| | | .changePassword-page{ |
| | | min-height: 100vh; |
| | | background: #fafafa; |
| | | padding-top: 12px; |
| | | } |
| | | .mation{ |
| | | width:686rpx; |
| | | height: 150px; |
| | | background: #FFFFFF; |
| | | border-radius: 8px; |
| | | margin: auto; |
| | | } |
| | | .btn{ |
| | | width: 640rpx; |
| | | color: #fff; |
| | | border: 0; |
| | | border-radius: 22px; |
| | | margin: auto; |
| | | margin-top: 60px; |
| | | } |
| | | .ipt-class { |
| | | text-align: right; |
| | | } |
| | | .label-class { |
| | | font-size: 14px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #333333; |
| | | } |
New file |
| | |
| | | <view class="changePassword-page"> |
| | | <view class="mation"> |
| | | <input-item labelCls="label-class" inputCls="ipt-class" onInput="getOld" placeholder="请输入原密码">原密码</input-item> |
| | | <input-item labelCls="label-class" inputCls="ipt-class" onInput="getNem" password="{{true}}" placeholder="请输入新密码">新密码</input-item> |
| | | <input-item last="{{true}}" labelCls="label-class" inputCls="ipt-class" onInput="getNemTwo" password="{{true}}" placeholder="请再次输入新密码">确认密码</input-item> |
| | | </view> |
| | | <button onTap="save" style="{{background:userStyle.gradientColor}}" class="btn"> |
| | | 保存 |
| | | </button> |
| | | </view> |
New file |
| | |
| | | let $api = require('../../utils/ajaxFn.js') |
| | | let md5 = require('../../utils/md5.js') |
| | | const app = getApp() |
| | | Page({ |
| | | data: { |
| | | userStyle:{}, |
| | | newTwo:"", |
| | | info:{ |
| | | newPwd: "", |
| | | oldPwd: "" |
| | | } |
| | | }, |
| | | onLoad() { |
| | | this.setData({ |
| | | userStyle:app.userStyle |
| | | }) |
| | | }, |
| | | getOld(e){ |
| | | this.setData({ |
| | | 'info.oldPwd':md5.hex_md5(e.detail.value) |
| | | }) |
| | | }, |
| | | getNem(e){ |
| | | this.setData({ |
| | | 'info.newPwd':md5.hex_md5(e.detail.value) |
| | | }) |
| | | }, |
| | | getNemTwo(e){ |
| | | console.log(3) |
| | | this.setData({ |
| | | newTwo: md5.hex_md5(e.detail.value) |
| | | }) |
| | | }, |
| | | save(){ |
| | | console.log(this.data.newTwo,this.data.info) |
| | | if(this.data.newTwo != this.data.info.newPwd){ |
| | | my.showToast({ |
| | | content: '两次新密码不一致,请确认', |
| | | duration: 2000, |
| | | }); |
| | | return |
| | | } |
| | | $api.ajax( |
| | | '/sib/user/updatePwd', |
| | | 'POST', |
| | | (res)=>{ |
| | | |
| | | }, |
| | | (err)=>{ |
| | | |
| | | }, |
| | | true, |
| | | { |
| | | ...this.data.info |
| | | } |
| | | ) |
| | | } |
| | | }); |
New file |
| | |
| | | { |
| | | "defaultTitle": "修改密码", |
| | | "usingComponents":{ |
| | | "list": "mini-ali-ui/es/list/index", |
| | | "input-item": "mini-ali-ui/es/input-item/index", |
| | | "am-icon": "mini-ali-ui/es/am-icon/index", |
| | | "verify-code":"mini-ali-ui/es/verify-code/index", |
| | | "long-password": "mini-ali-ui/es/long-password/index", |
| | | "picker-item": "mini-ali-ui/es/picker-item/index", |
| | | "order-trial":"/components/orderTrial/orderTrial" |
| | | } |
| | | } |
New file |
| | |
| | | .change-user-page { |
| | | min-height: 100vh; |
| | | background: #fafafa; |
| | | box-sizing: border-box; |
| | | padding: 24px 0 32px; |
| | | } |
| | | |
| | | .list { |
| | | width: 686rpx; |
| | | margin: auto; |
| | | min-height: 80vh; |
| | | } |
| | | |
| | | .list-item { |
| | | margin-bottom: 20px; |
| | | } |
| | | |
| | | .title { |
| | | font-size: 14px; |
| | | font-family: PingFang SC; |
| | | font-weight: bold; |
| | | color: #999999; |
| | | margin-bottom: 10px; |
| | | } |
| | | |
| | | .store { |
| | | width: 100%; |
| | | background: #fff; |
| | | box-sizing: border-box; |
| | | padding: 0 12px; |
| | | } |
| | | |
| | | .store-item { |
| | | height: 72px; |
| | | width: 100%; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | border-bottom: 1px solid #EEEEEE; |
| | | } |
| | | |
| | | .left-top { |
| | | margin-bottom: 12px; |
| | | } |
| | | |
| | | .name-text { |
| | | font-size: 16px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #333333; |
| | | margin-left: 9px; |
| | | } |
| | | |
| | | .store-item:last-child { |
| | | border: 0; |
| | | } |
| | | |
| | | .radio-box { |
| | | width: 20px; |
| | | height: 20px; |
| | | border-radius: 50%; |
| | | border: 1px #CCCCCC solid; |
| | | } |
| | | |
| | | .active { |
| | | width: 20px; |
| | | height: 20px; |
| | | border-radius: 50%; |
| | | border: 1px #1677FF solid; |
| | | } |
| | | .btn-box{ |
| | | width: 100%; |
| | | text-align: center; |
| | | padding-top: 30px; |
| | | } |
| | | .btn { |
| | | width: 640rpx; |
| | | height: 44px; |
| | | line-height: 44px; |
| | | color: #fff; |
| | | border-radius: 22px; |
| | | border: 0; |
| | | margin: auto; |
| | | } |
New file |
| | |
| | | <view class="change-user-page"> |
| | | <view class="list"> |
| | | <radio-group class="radio-group" name="lib" onChange="radioChange"> |
| | | <view class="list-item" a:for="{{merchantList}}" a:key="{{index}}"> |
| | | <view class="title"> |
| | | {{item.merName}} |
| | | </view> |
| | | <view class="store"> |
| | | <view class="store-item" a:for="{{item.storeList}}" a:key="{{index}}"> |
| | | <view class="left"> |
| | | <view class="left-top"> |
| | | <text class="iconfont iconstore" style="font-size: 16px"></text> |
| | | <text class="name-text">{{item.orgName}}</text> |
| | | </view> |
| | | <view class="left-bottom"> |
| | | <text class="iconfont iconuser" style="font-size: 16px"></text> |
| | | <text class="name-text">{{item.name}}</text> |
| | | </view> |
| | | </view> |
| | | <view class="right"> |
| | | <view class="{{item.id==value?'active':'radio-box'}}"> |
| | | <am-radio value="{{item.id}}" checked="{{item.id==value?true:false}}"/> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </radio-group> |
| | | </view> |
| | | <view class="btn-box"> |
| | | <button class="btn" style="{{background:userStyle.gradientColor}}" onTap="loginUser"> |
| | | 切换 |
| | | </button> |
| | | </view> |
| | | |
| | | </view> |
New file |
| | |
| | | let $api = require('../../utils/ajaxFn.js'); |
| | | const app = getApp() |
| | | Page({ |
| | | data: { |
| | | value: '', |
| | | merchantList: [],//商户列表 |
| | | }, |
| | | onLoad() { |
| | | this.setData({ |
| | | userStyle: app.userStyle |
| | | }) |
| | | $api.ajax( |
| | | '/sib/xcx/login/getUserMgrInfo', |
| | | 'POST', |
| | | (res) => { |
| | | this.setData({ |
| | | merchantList: res.data.body.merchantList |
| | | }) |
| | | this.data.merchantList.forEach(element => { |
| | | element.storeList.forEach(e => { |
| | | if (e.id == app.lastLoginMgrId) { |
| | | this.setData({ |
| | | value: e.id |
| | | }) |
| | | } |
| | | }) |
| | | }); |
| | | }, |
| | | (err) => { |
| | | |
| | | }, |
| | | true |
| | | ) |
| | | |
| | | }, |
| | | radioChange(value) { |
| | | this.setData({ |
| | | value: value.detail.value |
| | | }) |
| | | }, |
| | | loginUser() { |
| | | $api.ajax( |
| | | '/sib/xcx/login/mgrLogin', |
| | | 'POST', |
| | | (res) => { |
| | | app.userInfo = res.data.body |
| | | app.lastLoginMgrId = res.data.body.id |
| | | my.reLaunch ({ |
| | | url: '/pages/home/home' |
| | | }); |
| | | }, |
| | | err => {}, |
| | | true, |
| | | { |
| | | mgrId: this.data.value |
| | | } |
| | | ) |
| | | } |
| | | }); |
New file |
| | |
| | | { |
| | | "defaultTitle": "切换身份", |
| | | "usingComponents": { |
| | | "am-radio": "mini-ali-ui/es/am-radio/index", |
| | | "list": "mini-ali-ui/es/list/index", |
| | | "list-item": "mini-ali-ui/es/list/list-item/index" |
| | | } |
| | | } |
New file |
| | |
| | | .forgetpass-view{ |
| | | width: 90%; |
| | | margin: auto; |
| | | padding-top: 100rpx; |
| | | } |
| | | .iconfont{ |
| | | font-size: 40rpx; |
| | | } |
| | | .label{ |
| | | min-width: 60rpx; |
| | | } |
| | | .login-btn{ |
| | | width: 90%; |
| | | margin: 80rpx 5%; |
| | | border-radius: 50px; |
| | | border: 0; |
| | | outline: none; |
| | | } |
| | | .code-label{ |
| | | display: none; |
| | | } |
| | | .code-ipt{ |
| | | width: 70%; |
| | | } |
New file |
| | |
| | | <view> |
| | | <view class="forgetpass-view"> |
| | | <input-item type="number" labelCls="phone-label label" className="phone-ipt" maxlength="11" data-code="{{1}}" onInput="oninput" placeholder="请输入手机号" clear="{{true}}"> |
| | | </input-item> |
| | | <verify-code maxlength="4" last="{{false}}" label="{{''}}" inputCls="code-ipt" labelCls="code-label" countDown="{{60}}" initActive="{{false}}" onSend="onSend" onInput="inputVerCode" value="{{info.verCode}}"> |
| | | </verify-code> |
| | | <input-item type="text" labelCls="password-label label" className="password-ipt" maxlength="12" data-code="{{2}}" onInput="oninput" password="{{true}}" placeholder="请输入新密码" clear="{{true}}"> |
| | | </input-item> |
| | | <input-item type="text" labelCls="respassword-label label" className="password-ipt" maxlength="12" data-code="{{3}}" onInput="oninput" password="{{true}}" placeholder="请再次输入密码" clear="{{true}}"> |
| | | </input-item> |
| | | </view> |
| | | <button type="primary" onTap="save" class="login-btn" style="{{background:userStyle.gradientColor}}">提交并登录</button> |
| | | </view> |
New file |
| | |
| | | let $api = require('../../utils/ajaxFn.js') |
| | | let md5 = require('../../utils/md5.js') |
| | | Page({ |
| | | data: { |
| | | userStyle:{},//用户样式 |
| | | info:{} |
| | | }, |
| | | onLoad() { |
| | | var app = getApp() |
| | | this.setData({ |
| | | userStyle:app.userStyle |
| | | }) |
| | | }, |
| | | onSend(){ |
| | | if(!this.data.info.mblNo){ |
| | | my.showToast({ |
| | | content: '请输入电话号码', |
| | | duration: 2000 |
| | | }); |
| | | return |
| | | } |
| | | $api.ajax( |
| | | '/sib/user/sendMsg', |
| | | 'POST', |
| | | (res)=>{ |
| | | |
| | | }, |
| | | (err)=>{ |
| | | |
| | | }, |
| | | false, |
| | | { |
| | | mblNo:this.data.info.mblNo, |
| | | verCodeType:0 |
| | | } |
| | | ) |
| | | }, |
| | | inputVerCode(e){ |
| | | console.log(e) |
| | | this.setData({ |
| | | 'info.verCode':e.detail.value |
| | | }) |
| | | }, |
| | | oninput(e){ |
| | | let code = e.target.dataset.code |
| | | if(code == 1){ |
| | | this.setData({ |
| | | 'info.mblNo':e.detail.value |
| | | }) |
| | | }else if(code == 2){ |
| | | this.setData({ |
| | | 'info.newPwd':md5.hex_md5(e.detail.value) |
| | | }) |
| | | }else{ |
| | | this.setData({ |
| | | newPwdTwo: md5.hex_md5(e.detail.value) |
| | | }) |
| | | } |
| | | }, |
| | | save(){ |
| | | if(!this.data.info.mblNo){ |
| | | my.showToast({ |
| | | content: '请输入电话号码', |
| | | duration: 2000 |
| | | }) |
| | | return |
| | | } |
| | | if(!this.data.info.verCode){ |
| | | my.showToast({ |
| | | content: '请输入验证码', |
| | | duration: 2000 |
| | | }) |
| | | return |
| | | } |
| | | if(!this.data.info.newPwd){ |
| | | my.showToast({ |
| | | content: '请输入新密码', |
| | | duration: 2000 |
| | | }) |
| | | return |
| | | } |
| | | if(this.data.info.newPwd != this.data.newPwdTwo){ |
| | | my.showToast({ |
| | | content: '两次密码不一致请确认', |
| | | duration: 2000 |
| | | }) |
| | | return |
| | | } |
| | | $api.ajax( |
| | | '/sib/user/forgetPwd', |
| | | 'POST', |
| | | res=>{ |
| | | my.showToast({ |
| | | content: '修改成功', |
| | | duration: 3000, |
| | | success:()=>{ |
| | | my.navigateTo({ |
| | | url: '/pages/index/index' |
| | | }); |
| | | } |
| | | }) |
| | | }, |
| | | err=>{}, |
| | | false, |
| | | { |
| | | ...this.data.info |
| | | } |
| | | ) |
| | | } |
| | | }); |
New file |
| | |
| | | { |
| | | "defaultTitle": "忘记密码", |
| | | "usingComponents":{ |
| | | "list": "mini-ali-ui/es/list/index", |
| | | "input-item": "mini-ali-ui/es/input-item/index", |
| | | "am-icon": "mini-ali-ui/es/am-icon/index", |
| | | "verify-code":"mini-ali-ui/es/verify-code/index", |
| | | "long-password": "mini-ali-ui/es/long-password/index" |
| | | } |
| | | } |
New file |
| | |
| | | .back-pic { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | |
| | | .order-info-page { |
| | | min-height: 100vh; |
| | | background: #FAFAFC; |
| | | padding-bottom: 26px; |
| | | } |
| | | |
| | | .top { |
| | | width: 100%; |
| | | height: 100px; |
| | | } |
| | | |
| | | .title { |
| | | font-size: 16px; |
| | | font-family: PingFang SC; |
| | | font-weight: bold; |
| | | color: #333333; |
| | | padding-left: 12px; |
| | | line-height: 36px; |
| | | } |
| | | |
| | | .ipt-class { |
| | | text-align: left; |
| | | } |
| | | |
| | | .pick-class { |
| | | text-align: right; |
| | | } |
| | | |
| | | .fenqi-info-view { |
| | | width: 686rpx; |
| | | height: 300px; |
| | | background: #fff; |
| | | padding: 18px 0 0; |
| | | box-sizing: border-box; |
| | | position: relative; |
| | | transform: translateY(-50px); |
| | | box-shadow: 0px 1px 12px 0px rgba(56, 56, 235, 0.08); |
| | | border-radius: 8px; |
| | | margin: auto; |
| | | } |
| | | |
| | | .label-class { |
| | | font-size: 14px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #333333; |
| | | } |
| | | |
| | | .user-info-view { |
| | | width: 686rpx; |
| | | height: 155px; |
| | | background: #fff; |
| | | padding: 18px 0 0; |
| | | box-sizing: border-box; |
| | | position: relative; |
| | | transform: translateY(-38px); |
| | | box-shadow: 0px 1px 12px 0px rgba(56, 56, 235, 0.08); |
| | | border-radius: 8px; |
| | | margin: auto; |
| | | } |
| | | |
| | | .btn-view { |
| | | width: 686rpx; |
| | | margin: auto; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | } |
| | | |
| | | .to-qrcode { |
| | | width: 320rpx; |
| | | height: 44px; |
| | | background: #FFFFFF; |
| | | border: 1px solid #8C4EF5; |
| | | border-radius: 22px; |
| | | line-height: 44px; |
| | | color: #8C4EF5; |
| | | } |
| | | |
| | | .get-qrcode { |
| | | width: 320rpx; |
| | | height: 44px; |
| | | border-radius: 22px; |
| | | border: 0; |
| | | color:#fff; |
| | | line-height: 44px; |
| | | } |
| | | |
| | | |
New file |
| | |
| | | <view class="order-info-page"> |
| | | <view class="top" style="{{background:userStyle.gradientColor}}"> |
| | | <cover-image src="../../static/img/backpic.png" class="back-pic"></cover-image> |
| | | </view> |
| | | <view class="fenqi-info-view"> |
| | | <text class="title">分期信息</text> |
| | | <input-item labelCls="label-class" value="{{info.amt}}" data-code="{{1}}" onInput="confirm" inputCls="ipt-class" placeholder="请输入分期本金">分期本金</input-item> |
| | | <input-item labelCls="label-class" value="{{info.goodsName}}" data-code="{{2}}" onInput="confirm" inputCls="ipt-class" placeholder="请输入商品名称">商品名称</input-item> |
| | | <picker title="选择付息方式" onChange="bindObjPickerChangeProd" value="{{arrIndex}}" range="{{prodsList}}" range-key="name"> |
| | | <view> |
| | | <input-item labelCls="label-class" value="{{prodName}}" disabled="{{true}}" inputCls="ipt-class" placeholder="请选择付息方式"> |
| | | 付息方式 |
| | | <view slot="extra" class="iconfont iconarrow-right" style="font-size:20px;color:#CCCCCC"></view> |
| | | </input-item> |
| | | </view> |
| | | </picker> |
| | | <picker title="选择办单通道" onChange="bindObjPickerChangeVer" value="{{arrIndex}}" range="{{zfbVersionsList}}" range-key="name"> |
| | | <view> |
| | | <input-item labelCls="label-class" value="{{zfbVersionName}}" disabled="{{true}}" inputCls="ipt-class" placeholder="请选择办单通道"> |
| | | 办单通道 |
| | | <view slot="extra" class="iconfont iconarrow-right" style="font-size:20px;color:#CCCCCC"></view> |
| | | </input-item> |
| | | </view> |
| | | </picker> |
| | | <picker title="选择分期期数" onChange="bindObjPickerChangeTerm" value="{{arrIndex}}" range="{{termsList}}" range-key="name"> |
| | | <view> |
| | | <input-item labelCls="label-class" value="{{termName}}" last="{{true}}" disabled="{{true}}" inputCls="ipt-class" placeholder="请选择分期期数"> |
| | | 分期期数 |
| | | <view slot="extra" class="iconfont iconarrow-right" style="font-size:20px;color:#CCCCCC"></view> |
| | | </input-item> |
| | | </view> |
| | | </picker> |
| | | </view> |
| | | <view class="user-info-view"> |
| | | <text class="title">用户信息</text> |
| | | <input-item labelCls="label-class" inputCls="ipt-class" data-code="{{3}}" onInput="confirm" placeholder="请输入客户姓名">客户姓名</input-item> |
| | | <input-item last="{{true}}" labelCls="label-class" inputCls="ipt-class" data-code="{{4}}" onInput="confirm" maxlength="{{11}}" placeholder="请输入客户手机号">客户手机号</input-item> |
| | | </view> |
| | | <!-- 订单试算展示组件 --> |
| | | <order-trial title="订单试算" amtList="{{amtList}}" rateList="{{rateList}}"></order-trial> |
| | | <view class="btn-view"> |
| | | <button size="default" onTap="toQRCode" type="gohost" class="to-qrcode" style="{{color:userStyle.defaultColor,border:`${userStyle.defaultColor} solid 1px`}}">扫描付款码</button> |
| | | <button size="default" onTap="getQRCode" type="primary" class="get-qrcode" style="{{background:userStyle.gradientColor}}">生成二维码</button> |
| | | </view> |
| | | </view> |
New file |
| | |
| | | |
| | | const app = getApp() |
| | | let $api = require('../../../utils/ajaxFn.js') |
| | | Page({ |
| | | data: { |
| | | isBoss: true, |
| | | userStyle: {}, |
| | | prodsList: [], |
| | | prodName: '', |
| | | termName: '', |
| | | verName: '', |
| | | info: { |
| | | prodId: '', |
| | | }, |
| | | amtList: [ |
| | | { name: '商家到账', number: 0 }, |
| | | { name: '客户还款总额', number: 0 }, |
| | | { name: '客户月还款额', number: 0 } |
| | | ], |
| | | rateList: [ |
| | | { name: '智享服务费率', rate: 0 }, |
| | | { name: '花呗利率', rate: 0 }, |
| | | { name: '支付利率', rate: 0 } |
| | | ], |
| | | }, |
| | | onLoad() { |
| | | this.setData({ |
| | | userStyle: app.userStyle |
| | | }) |
| | | this.getList() |
| | | }, |
| | | getList(obj) { |
| | | $api.ajax( |
| | | '/sib/xcx/order/hbCreateInit', |
| | | 'POST', |
| | | (res) => { |
| | | this.setData({ |
| | | prodsList: res.data.body.prods, |
| | | termsList: res.data.body.terms, |
| | | zfbVersionsList: res.data.body.zfbVersions |
| | | }) |
| | | }, |
| | | (err) => { }, |
| | | true, |
| | | { ...obj } |
| | | ) |
| | | }, |
| | | orderhbTrial() { |
| | | $api.ajax( |
| | | '/sib/xcx/order/hbTrial', |
| | | 'POST', |
| | | (res) => { |
| | | let body = res.data.body |
| | | this.setData({ |
| | | amtList: [{ name: '商家到账', number: body.merAmt }, { name: '客户还款总额', number: body.repayAmt }, { name: '客户月还款额', number: body.monthAmt }], |
| | | rateList: [ |
| | | { name: '智享服务费率', rate: body.platRate }, |
| | | { name: '花呗利率', rate: body.zfbRate }, |
| | | { name: '支付利率', rate: body.payRate }] |
| | | }) |
| | | }, |
| | | (err) => { }, |
| | | true, |
| | | { |
| | | amt: this.data.info.amt, |
| | | prodId: this.data.info.prodId, |
| | | term: this.data.info.term, |
| | | zfbVersion: this.data.info.zfbVersion |
| | | } |
| | | ) |
| | | }, |
| | | confirm(e) { |
| | | let code = e.target.dataset.code, |
| | | value = e.detail.value, |
| | | obj = {}; |
| | | if (code == 1) { |
| | | obj.amt = value |
| | | } else if (code == 2) { |
| | | obj.goodsName = value |
| | | } else if (code == 3) { |
| | | obj.userName = value |
| | | } else { |
| | | obj.userMblNo = value |
| | | } |
| | | this.setData({ |
| | | info: { ...this.data.info, ...obj } |
| | | }) |
| | | if (code == 1) { |
| | | if (!this.data.info.amt || !this.data.info.prodId || !this.data.info.term || !this.data.info.zfbVersion) { |
| | | this.setData({ |
| | | isBoss: false |
| | | }) |
| | | } |
| | | if (this.data.isBoss) { |
| | | this.orderhbTrial() |
| | | } |
| | | } |
| | | |
| | | }, |
| | | bindObjPickerChangeProd(e) { |
| | | |
| | | this.setData({ |
| | | prodName: this.data.prodsList[e.detail.value].name, |
| | | 'info.prodId': this.data.prodsList[e.detail.value].code |
| | | }) |
| | | this.getList({ prodId: this.data.info.prodId }) |
| | | console.log(this.data.info.amt, this.data.info.prodId, this.data.info.term, this.data.info.zfbVersion) |
| | | if (!this.data.info.amt || !this.data.info.prodId || !this.data.info.term || !this.data.info.zfbVersion) { |
| | | this.setData({ |
| | | isBoss: false |
| | | }) |
| | | } else { |
| | | this.setData({ |
| | | isBoss: true |
| | | }) |
| | | } |
| | | if (this.data.isBoss) { |
| | | this.orderhbTrial() |
| | | } |
| | | }, |
| | | bindObjPickerChangeTerm(e) { |
| | | this.setData({ |
| | | termName: this.data.termsList[e.detail.value].name, |
| | | 'info.term': this.data.termsList[e.detail.value].code |
| | | }) |
| | | console.log(this.data.info.amt, this.data.info.prodId, this.data.info.term, this.data.info.zfbVersion) |
| | | if (!this.data.info.amt || !this.data.info.prodId || !this.data.info.term || !this.data.info.zfbVersion) { |
| | | this.setData({ |
| | | isBoss: false |
| | | }) |
| | | } else { |
| | | this.setData({ |
| | | isBoss: true |
| | | }) |
| | | } |
| | | if (this.data.isBoss) { |
| | | this.orderhbTrial() |
| | | } |
| | | }, |
| | | bindObjPickerChangeVer(e) { |
| | | this.setData({ |
| | | zfbVersionName: this.data.zfbVersionsList[e.detail.value].name, |
| | | 'info.zfbVersion': this.data.zfbVersionsList[e.detail.value].code |
| | | }) |
| | | console.log(this.data.info.amt, this.data.info.prodId, this.data.info.term, this.data.info.zfbVersion) |
| | | this.getList({ prodId: this.data.info.prodId, zfbVersion: this.data.info.zfbVersion }) |
| | | if (!this.data.info.amt || !this.data.info.prodId || !this.data.info.term || !this.data.info.zfbVersion) { |
| | | this.setData({ |
| | | isBoss: false |
| | | }) |
| | | } else { |
| | | this.setData({ |
| | | isBoss: true |
| | | }) |
| | | } |
| | | if (this.data.isBoss) { |
| | | this.orderhbTrial() |
| | | } |
| | | }, |
| | | toQRCode() { |
| | | this.setData({ |
| | | 'info.payType': 2 |
| | | }) |
| | | my.scan({ |
| | | scanType: ['qrCode', 'barCode'], |
| | | success: (res) => { |
| | | console.log(res) |
| | | $api.ajax( |
| | | '/sib/xcx/order/createHb', |
| | | 'POST', |
| | | (res) => { |
| | | my.reLaunch({ |
| | | url: `/pages/order/hbfqOrder/hbfqOrder?orderId=${res.data.body.orderId}`, |
| | | }) |
| | | }, |
| | | (err) => { }, |
| | | true, |
| | | { |
| | | ...this.data.info, |
| | | authCode: res.resultStr |
| | | } |
| | | ) |
| | | }, |
| | | }); |
| | | }, |
| | | getQRCode() { |
| | | this.setData({ |
| | | 'info.payType': 1 |
| | | }) |
| | | for (let key in this.data.info) { |
| | | if (!this.data.info[key]) { |
| | | my.showToast({ |
| | | type: 'none', |
| | | content: '请完整输入信息', |
| | | duration: 2000, |
| | | }); |
| | | return |
| | | } |
| | | } |
| | | console.log(2) |
| | | let str = JSON.stringify(this.data.info) |
| | | my.navigateTo({ |
| | | url: `../qrCode/qrCode?info=${str}` |
| | | }); |
| | | } |
| | | }); |
New file |
| | |
| | | { |
| | | "defaultTitle": "花呗分期", |
| | | "usingComponents":{ |
| | | "list": "mini-ali-ui/es/list/index", |
| | | "input-item": "mini-ali-ui/es/input-item/index", |
| | | "am-icon": "mini-ali-ui/es/am-icon/index", |
| | | "verify-code":"mini-ali-ui/es/verify-code/index", |
| | | "long-password": "mini-ali-ui/es/long-password/index", |
| | | "picker-item": "mini-ali-ui/es/picker-item/index", |
| | | "order-trial":"/components/orderTrial/orderTrial" |
| | | } |
| | | } |
New file |
| | |
| | | .qrCode-page{ |
| | | min-height: 100vh; |
| | | background: #FAFAFC; |
| | | } |
| | | .top { |
| | | width: 100%; |
| | | height: 100px; |
| | | } |
New file |
| | |
| | | <view class="qrCode-page"> |
| | | <view class="top" style="{{background:userStyle.gradientColor}}"> |
| | | <cover-image src="../../static/img/backpic.png" class="back-pic"/> |
| | | </view> |
| | | <qrcode-view imgSrc="{{imgSrc}}" rateList="{{rateList}}"/> |
| | | </view> |
New file |
| | |
| | | const QRCode = require('qrcode'); |
| | | const app = getApp(); |
| | | let $api = require('../../../utils/ajaxFn.js') |
| | | Page({ |
| | | data: { |
| | | timer:'', |
| | | userStyle: {}, |
| | | imgSrc: '', |
| | | rateList: [ |
| | | { name: '智享服务费率', rate: 0 }, |
| | | { name: '花呗利率', rate: 0 }, |
| | | { name: '支付费率', rate: 0 }, |
| | | { name: '客户还款总额', rate: 0 }, |
| | | { name: '客户月还款额', rate: 0 }, |
| | | { name: '还款期数', rate: 0 } |
| | | ] |
| | | }, |
| | | onLoad(query) { |
| | | let info = JSON.parse(query.info) |
| | | this.setData({ |
| | | userStyle: app.userStyle, |
| | | info: info |
| | | }) |
| | | this.getCode() |
| | | }, |
| | | getCode() { |
| | | let self = this; |
| | | $api.ajax( |
| | | '/sib/xcx/order/createHb', |
| | | 'POST', |
| | | (res) => { |
| | | //根据字符串生成svn格式的二维码 |
| | | QRCode.toString(res.data.body.payQrCodeUrl, { type: 'svg' }, function (err, url) { |
| | | let str = 'data:image/svg+xml;base64,' + Buffer(url).toString('base64'); |
| | | console.log(str) |
| | | self.setData({ |
| | | imgSrc: str, |
| | | orderId:res.data.body.orderId, |
| | | rateList: [ |
| | | { name: '智享服务费率', rate: res.data.body.platRate + '%' }, |
| | | { name: '花呗利率', rate: res.data.body.zfbRate + '%' }, |
| | | { name: '支付费率', rate: res.data.body.payRate + '%' }, |
| | | { name: '客户还款总额', rate: res.data.body.repayAmt }, |
| | | { name: '客户月还款额', rate: res.data.body.monthAmt }, |
| | | { name: '还款期数', rate: res.data.body.term + '期' } |
| | | ], |
| | | timer:setInterval(this.getStatus(),5000) |
| | | }) |
| | | }); |
| | | |
| | | }, |
| | | (err) => { }, |
| | | true, |
| | | { |
| | | ...this.data.info |
| | | } |
| | | ) |
| | | }, |
| | | getStatus(){ |
| | | $api.ajax( |
| | | '/sib/xcx/order/findHbOrderSts', |
| | | 'POST', |
| | | (res)=>{ |
| | | let body = res.data.body.orderStatus |
| | | if(body==1){ |
| | | clearInterval(this.data.timer) |
| | | my.showToast({ |
| | | type: 'none', |
| | | content: '支付成功', |
| | | duration: 3000, |
| | | success: () => { |
| | | my.reLaunch({ |
| | | url: `/pages/order/hbfqOrder/hbfqOrder?orderId=${this.data.orderId}`, |
| | | }) |
| | | }, |
| | | }) |
| | | } |
| | | if(body==2){ |
| | | clearInterval(this.data.timer) |
| | | my.showToast({ |
| | | type: 'none', |
| | | content: '支付超时', |
| | | duration: 3000, |
| | | success: () => { |
| | | my.reLaunch({ |
| | | url: `/pages/order/hbfqOrder/hbfqOrder?orderId=${this.data.orderId}`, |
| | | }) |
| | | }, |
| | | }) |
| | | } |
| | | }, |
| | | (err)=>{ |
| | | |
| | | }, |
| | | true, |
| | | { |
| | | orderId:this.data.orderId |
| | | } |
| | | ) |
| | | } |
| | | }); |
New file |
| | |
| | | { |
| | | "defaultTitle": "花呗分期", |
| | | "usingComponents":{ |
| | | "qrcode-view":"/components/QRCodeView/QRCodeView" |
| | | } |
| | | } |
New file |
| | |
| | | .home-page{ |
| | | background-color: #f5f5f5; |
| | | min-height: 100vh; |
| | | } |
| | | .top{ |
| | | width: 100%; |
| | | height: 120px; |
| | | } |
| | | .back-pic{ |
| | | width: 100%; |
| | | height: 100%; |
| | | z-index: 10; |
| | | } |
| | | .product-view{ |
| | | position: relative; |
| | | transform: translateY(-50px); |
| | | } |
| | | .product-item{ |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | background: #fff; |
| | | width: 686rpx; |
| | | height: 80px; |
| | | margin: auto; |
| | | margin-bottom: 12px; |
| | | background: #FFFFFF; |
| | | box-shadow: 0px 1px 12px 0px rgba(56, 56, 235, 0.08); |
| | | border-radius: 7px; |
| | | padding: 0 23px 0 20px; |
| | | box-sizing: border-box; |
| | | } |
| | | .left{ |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | .pro-img{ |
| | | width: 36px; |
| | | height: 36px; |
| | | margin-right: 12px; |
| | | } |
| | | .pro-text{ |
| | | font-size: 16px; |
| | | font-family: PingFang SC; |
| | | font-weight: bold; |
| | | color: #333333; |
| | | } |
| | | .iconliebiaojiantou{ |
| | | font-size: 40rpx; |
| | | color: #CCCCCC; |
| | | } |
New file |
| | |
| | | <view class="home-page"> |
| | | <view class="top" style="{{background:userStyle.gradientColor}}"> |
| | | <cover-image src="../../static/img/backpic.png" class="back-pic"/> |
| | | </view> |
| | | <view class="product-view"> |
| | | <view a:for="{{prodList}}" a:key="{{index}}" class="product-item" data-openStatus="{{item.openStatus}}" data-prodType="{{item.prodType}}" onTap="goOrderInfo"> |
| | | <view class="left"> |
| | | <cover-image class="pro-img" src="{{item.src}}"/> |
| | | <text class="pro-text">{{item.prodName}}</text> |
| | | </view> |
| | | <text class="iconfont iconliebiaojiantou"></text> |
| | | </view> |
| | | </view> |
| | | </view> |
New file |
| | |
| | | let $api = require('../../utils/ajaxFn.js') |
| | | const app = getApp() |
| | | Page({ |
| | | data: { |
| | | userStyle: {}, |
| | | prodList: [],//产品列表 |
| | | }, |
| | | // 页面加载 |
| | | onLoad(){ |
| | | this.setData({ |
| | | userStyle: app.userStyle |
| | | }) |
| | | // this.init() |
| | | |
| | | }, |
| | | onShow() { |
| | | this.init() |
| | | }, |
| | | init(){ |
| | | $api.ajax( |
| | | '/sib/xcx/order/prodList', |
| | | 'POST', |
| | | (res) => { |
| | | res.data.body.prodList.forEach(e=>{ |
| | | if(e.prodType == 200015){ |
| | | e.src = '../../static/img/hbfq.png' |
| | | } |
| | | if(e.prodType == 200008){ |
| | | e.src = '../../static/img/shsk.png' |
| | | } |
| | | }) |
| | | this.setData({ |
| | | prodList: res.data.body.prodList |
| | | }) |
| | | }, |
| | | (err) => { }, |
| | | true, |
| | | { |
| | | isShowAmt: 0 |
| | | } |
| | | ) |
| | | }, |
| | | // 点击产品 |
| | | goOrderInfo(event) { |
| | | let prodType = event.target.dataset.prodType, |
| | | openStatus = event.target.dataset.openStatus; |
| | | if (openStatus != 2) { |
| | | my.showToast({ |
| | | type: 'exception', |
| | | content: '暂未开通此产品', |
| | | duration: 5000, |
| | | }); |
| | | return |
| | | } |
| | | console.log(prodType) |
| | | switch (prodType) { |
| | | case 200015: |
| | | my.navigateTo({ |
| | | url: '../hbfqPage/orderInfo/orderInfo' |
| | | }); |
| | | break; |
| | | case 200008: |
| | | my.navigateTo({ |
| | | url: '../shskPage/orderInfo/orderInfo' |
| | | }); |
| | | break; |
| | | default: |
| | | break; |
| | | } |
| | | |
| | | } |
| | | }); |
New file |
| | |
| | | { |
| | | "defaultTitle": "业务办理", |
| | | "usingComponents": { |
| | | "my-component":"/components/fitler/fitler" |
| | | } |
| | | } |
New file |
| | |
| | | .index-page{ |
| | | padding: 100rpx 56rpx; |
| | | } |
| | | .logo-view{ |
| | | text-align: left; |
| | | } |
| | | .titText{ |
| | | margin-top: 20rpx; |
| | | display: block; |
| | | font-size: 24px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #333333; |
| | | } |
| | | .modeText{ |
| | | margin-top: 26rpx; |
| | | display: block; |
| | | font-size: 16px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #333333; |
| | | } |
| | | .logo{ |
| | | width: 88rpx; |
| | | height: 88rpx; |
| | | } |
| | | .login-info-view{ |
| | | width: 100%; |
| | | margin: auto; |
| | | margin-top: 40rpx; |
| | | background-color: #fff; |
| | | } |
| | | .phone-ipt{ |
| | | background-color: #fff; |
| | | } |
| | | .phone-label{ |
| | | min-width: 60rpx; |
| | | } |
| | | .password-ipt{ |
| | | background-color: #fff; |
| | | } |
| | | .password-label{ |
| | | min-width: 60rpx; |
| | | } |
| | | .code-label{ |
| | | display: none; |
| | | } |
| | | .code-ipt{ |
| | | width: 70%; |
| | | } |
| | | .icongerenzhongxin,.iconfont{ |
| | | font-size: 40rpx; |
| | | } |
| | | .tip-view{ |
| | | display: flex; |
| | | justify-content: space-between; |
| | | padding-top: 20rpx; |
| | | font-size: 24rpx; |
| | | } |
| | | .login-btn{ |
| | | width: 100%; |
| | | margin: 50px 0 0 0; |
| | | border-radius: 50px; |
| | | border: 0; |
| | | outline: none; |
| | | } |
| | | .tip-view2{ |
| | | padding-top: 20rpx; |
| | | color:#666; |
| | | font-size:12px; |
| | | text-align:center |
| | | } |
| | | .server-number{ |
| | | text-align: center; |
| | | font-size: 12px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #666666; |
| | | position: fixed; |
| | | bottom: 28px; |
| | | left: 35%; |
| | | } |
New file |
| | |
| | | <view class="index-page"> |
| | | <view class="logo-view"> |
| | | <cover-image class="logo" src="../../static/img/logo.png" /> |
| | | <text class="titText">欢迎使用智享收银台</text> |
| | | <text class="modeText">{{modeText}}</text> |
| | | </view> |
| | | <view class="login-info-view"> |
| | | <input-item type="number" onInput="setUserNo" value="{{userNo}}" labelCls="phone-label" className="phone-ipt" maxlength="11" placeholder="请输入手机号" clear="{{true}}"> |
| | | </input-item> |
| | | <input-item a:if="{{!showCode}}" onInput="setPassword" value="{{password}}" type="text" labelCls="password-label" className="password-ipt" maxlength="12" password="{{true}}" placeholder="请输入密码" clear="{{true}}"> |
| | | </input-item> |
| | | <verify-code a:if="{{showCode}}" label="{{''}}" inputCls="code-ipt" labelCls="code-label" maxlength="4" countDown="{{60}}" initActive="{{false}}" onSend="onSend" onInput="inputVerCode" value="{{verCode}}"> |
| | | </verify-code> |
| | | </view> |
| | | <button type="primary" class="login-btn" style="{{background:userStyle.gradientColor}}" onTap="login">登录</button> |
| | | <view class="tip-view" a:if="{{!showCode}}"> |
| | | <view style="{{color:'#666','font-size':'12px'}}" onTap="forgetPass"> |
| | | 忘记密码 |
| | | </view> |
| | | <view style="{{color:'#666','font-size':'12px'}}" onTap="goCodeLogin"> |
| | | {{loginModeText}} |
| | | </view> |
| | | </view> |
| | | <view a:else class="tip-view2" > |
| | | <text onTap="goCodeLogin">{{loginModeText}}</text> |
| | | </view> |
| | | <view class="server-number"> |
| | | <text>客服电话:{{userStyle.servicePhone}}</text> |
| | | </view> |
| | | </view> |
New file |
| | |
| | | let md5 = require('../../utils/md5.js'); |
| | | let $api = require('../../utils/ajaxFn.js'); |
| | | const app = getApp() |
| | | Page({ |
| | | data: { |
| | | password:'', |
| | | userNo:'', |
| | | verCode:'', |
| | | showCode: false,//是否显示验证码框 |
| | | loginModeText:'验证码登录', |
| | | modeText:'密码登录', |
| | | userStyle:{},//用户样式 |
| | | }, |
| | | onLoad(query) { |
| | | // 页面加载 |
| | | console.info(`Page onLoad with query: ${JSON.stringify(query)}`); |
| | | this.setData({ |
| | | userStyle:app.userStyle, |
| | | }) |
| | | }, |
| | | onReady() { |
| | | // 页面加载完成 |
| | | |
| | | }, |
| | | onShow() { |
| | | // 页面显示 |
| | | }, |
| | | onHide() { |
| | | // 页面隐藏 |
| | | }, |
| | | onUnload() { |
| | | // 页面被关闭 |
| | | }, |
| | | onTitleClick() { |
| | | // 标题被点击 |
| | | }, |
| | | onPullDownRefresh() { |
| | | // 页面被下拉 |
| | | }, |
| | | onReachBottom() { |
| | | // 页面被拉到底部 |
| | | }, |
| | | onShareAppMessage() { |
| | | // 返回自定义分享信息 |
| | | return { |
| | | title: 'My App', |
| | | desc: 'My App description', |
| | | path: 'pages/index/index', |
| | | }; |
| | | }, |
| | | // 验证码登录 |
| | | goCodeLogin(){ |
| | | this.setData({ |
| | | showCode:!this.data.showCode, |
| | | loginModeText:this.data.showCode?'验证码登录':'密码登录', |
| | | modeText:this.data.showCode?'密码登录':'验证码登录' |
| | | }) |
| | | }, |
| | | // 忘记密码 |
| | | forgetPass(){ |
| | | my.navigateTo ({url:'../forgetPassword/forgetPassword'}) |
| | | }, |
| | | // 登录 |
| | | login(){ |
| | | let url = '',obj={}; |
| | | if(!this.data.showCode){ |
| | | url = '/sib/xcx/login/login' |
| | | obj.password = md5.hex_md5(this.data.userNo+this.data.password) |
| | | obj.userNo = this.data.userNo |
| | | obj.zfbUserId = app.userId |
| | | }else{ |
| | | url = '/sib/xcx/login/loginByCode' |
| | | obj.mblNo = this.data.userNo |
| | | obj.verCode = this.data.verCode |
| | | obj.zfbUserId = app.userId |
| | | } |
| | | $api.ajax( |
| | | url, |
| | | 'POST', |
| | | (res)=>{ |
| | | app.sessionId = res.data.body.sessionId |
| | | app.lastLoginMgrId = res.data.body.lastLoginMgrId |
| | | if(res.data.body.sessionId){ |
| | | my.setStorage({ |
| | | key:'sessionId', |
| | | data:{ |
| | | sessionId:res.data.body.sessionId |
| | | } |
| | | }) |
| | | } |
| | | if(res.data.body.lastLoginMgrId){ |
| | | this.getUserInfo(res.data.body.lastLoginMgrId) |
| | | }else{ |
| | | my.navigateTo({ |
| | | url: '/pages/changeUser/changeUser' |
| | | }); |
| | | } |
| | | }, |
| | | function(res){ |
| | | console.log(res) |
| | | }, |
| | | false, |
| | | { |
| | | ...obj |
| | | } |
| | | ) |
| | | }, |
| | | getUserInfo(lastLoginMgrId){ |
| | | $api.ajax( |
| | | '/sib/xcx/login/mgrLogin', |
| | | 'POST', |
| | | (res)=>{ |
| | | this.userInfo = res.data.body |
| | | my.reLaunch({ |
| | | url: '/pages/home/home' |
| | | }); |
| | | }, |
| | | err=>{}, |
| | | true, |
| | | { |
| | | mgrId:lastLoginMgrId |
| | | } |
| | | ) |
| | | }, |
| | | setUserNo(e){ |
| | | this.setData({ |
| | | userNo:e.detail.value |
| | | }) |
| | | }, |
| | | setPassword(e){ |
| | | this.setData({ |
| | | password:e.detail.value |
| | | }) |
| | | }, |
| | | inputVerCode(e){ |
| | | this.setData({ |
| | | verCode:e.detail.value |
| | | }) |
| | | |
| | | }, |
| | | onSend(){ |
| | | if(!this.data.userNo){ |
| | | my.showToast({ |
| | | content: '请输入电话号码', |
| | | duration: 2000 |
| | | }); |
| | | return |
| | | } |
| | | $api.ajax( |
| | | '/sib/user/sendMsg', |
| | | 'POST', |
| | | (res)=>{ |
| | | |
| | | }, |
| | | (err)=>{ |
| | | |
| | | }, |
| | | false, |
| | | { |
| | | mblNo:this.data.userNo, |
| | | verCodeType:2 |
| | | } |
| | | ) |
| | | } |
| | | }); |
New file |
| | |
| | | { |
| | | "usingComponents":{ |
| | | "list": "mini-ali-ui/es/list/index", |
| | | "input-item": "mini-ali-ui/es/input-item/index", |
| | | "am-icon": "mini-ali-ui/es/am-icon/index", |
| | | "verify-code":"mini-ali-ui/es/verify-code/index", |
| | | "long-password": "mini-ali-ui/es/long-password/index" |
| | | } |
| | | } |
New file |
| | |
| | | .hbfq-order-detail{ |
| | | min-height: 100vh; |
| | | background: #fafafa; |
| | | padding-top: 12px; |
| | | padding-bottom: 33px; |
| | | } |
| | | .title { |
| | | font-size: 16px; |
| | | font-family: PingFang SC; |
| | | font-weight: bold; |
| | | color: #333333; |
| | | padding-left: 12px; |
| | | line-height: 50px; |
| | | border-bottom: 1px solid #EEEEEE; |
| | | } |
| | | |
| | | .ipt-class { |
| | | text-align: right; |
| | | color: #333; |
| | | } |
| | | |
| | | .pick-class { |
| | | text-align: right; |
| | | } |
| | | |
| | | .fenqi-info-view { |
| | | width: 686rpx; |
| | | background: #fff; |
| | | padding: 0px 0 10px; |
| | | box-sizing: border-box; |
| | | box-shadow: 0px 1px 12px 0px rgba(56, 56, 235, 0.08); |
| | | border-radius: 8px; |
| | | margin: auto; |
| | | } |
| | | |
| | | .label-class { |
| | | font-size: 14px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #333; |
| | | } |
| | | |
| | | .user-info-view { |
| | | width: 686rpx; |
| | | background: #fff; |
| | | padding: 0px 0 10px; |
| | | box-sizing: border-box; |
| | | box-shadow: 0px 1px 12px 0px rgba(56, 56, 235, 0.08); |
| | | border-radius: 8px; |
| | | margin: auto; |
| | | margin-top: 12px; |
| | | } |
| | | |
New file |
| | |
| | | <view class="hbfq-order-detail"> |
| | | <view class="fenqi-info-view"> |
| | | <view class="title">分期信息</view> |
| | | <input-item labelCls="label-class" value="{{info.settAmt}}" disabled="{{true}}" value="{{111}}" inputCls="ipt-class" >分期本金</input-item> |
| | | <input-item labelCls="label-class" value="{{info.insAmt}}" disabled="{{true}}" inputCls="ipt-class" >商户到账金额</input-item> |
| | | <input-item labelCls="label-class" value="{{info.insTerm+'期'}}" disabled="{{true}}" inputCls="ipt-class" >分期期数</input-item> |
| | | <input-item labelCls="label-class" value="{{info.statusStr}}" disabled="{{true}}" inputCls="ipt-class" >订单状态</input-item> |
| | | <input-item labelCls="label-class" value="{{info.creTime}}" disabled="{{true}}" inputCls="ipt-class" >创建时间</input-item> |
| | | <input-item labelCls="label-class" value="{{info.payTypeName}}" disabled="{{true}}" inputCls="ipt-class" >支付方式</input-item> |
| | | <input-item labelCls="label-class" value="{{info.userName}}" disabled="{{true}}" inputCls="ipt-class" >客户姓名</input-item> |
| | | <input-item labelCls="label-class" value="{{info.goodsName}}" disabled="{{true}}" inputCls="ipt-class" last="{{true}}">商品名称</input-item> |
| | | </view> |
| | | <view class="user-info-view"> |
| | | <view class="title">产品信息</view> |
| | | <input-item labelCls="label-class" value="{{info.feeRate+'%'}}" disabled="{{true}}" inputCls="ipt-class">智享服务费率</input-item> |
| | | <input-item labelCls="label-class" value="{{info.zfbRate+'%'}}" disabled="{{true}}" inputCls="ipt-class">花呗利率</input-item> |
| | | <input-item labelCls="label-class" value="{{info.payRate+'%'}}" disabled="{{true}}" inputCls="ipt-class">支付费率</input-item> |
| | | <input-item labelCls="label-class" value="{{info.zfbVersionName}}" disabled="{{true}}" inputCls="ipt-class" last="{{true}}">办单通道</input-item> |
| | | </view> |
| | | </view> |
New file |
| | |
| | | let $api = require('../../../utils/ajaxFn.js') |
| | | let dataFm = require('../../../utils/date.js') |
| | | Page({ |
| | | data: { |
| | | info:{} |
| | | }, |
| | | onLoad(query) { |
| | | $api.ajax( |
| | | '/sib/xcx/order/orderDtl', |
| | | 'POST', |
| | | (res)=>{ |
| | | res.data.body.creTime = dataFm(res.data.body.creTime, 'YYYY-MM-DD HH:mm:ss') |
| | | this.setData({ |
| | | info:res.data.body |
| | | }) |
| | | }, |
| | | (err)=>{ |
| | | |
| | | }, |
| | | true, |
| | | { |
| | | orderId:query.orderId |
| | | } |
| | | ) |
| | | }, |
| | | |
| | | }); |
New file |
| | |
| | | { |
| | | "defaultTitle": "花呗分期-订单详情", |
| | | "usingComponents":{ |
| | | "list": "mini-ali-ui/es/list/index", |
| | | "input-item": "mini-ali-ui/es/input-item/index", |
| | | "am-icon": "mini-ali-ui/es/am-icon/index", |
| | | "verify-code":"mini-ali-ui/es/verify-code/index", |
| | | "long-password": "mini-ali-ui/es/long-password/index", |
| | | "picker-item": "mini-ali-ui/es/picker-item/index", |
| | | "order-trial":"/components/orderTrial/orderTrial", |
| | | "list-item": "mini-ali-ui/es/list/list-item/index" |
| | | } |
| | | } |
New file |
| | |
| | | .hbfq-order-detail{ |
| | | min-height: 100vh; |
| | | background: #fafafa; |
| | | padding-top: 12px; |
| | | padding-bottom: 33px; |
| | | } |
| | | .title { |
| | | font-size: 16px; |
| | | font-family: PingFang SC; |
| | | font-weight: bold; |
| | | color: #333333; |
| | | padding-left: 12px; |
| | | line-height: 50px; |
| | | border-bottom: 1px solid #EEEEEE; |
| | | } |
| | | |
| | | .ipt-class { |
| | | text-align: right; |
| | | color: #333; |
| | | } |
| | | |
| | | .pick-class { |
| | | text-align: right; |
| | | } |
| | | |
| | | .fenqi-info-view { |
| | | width: 686rpx; |
| | | background: #fff; |
| | | padding: 0px 0 10px; |
| | | box-sizing: border-box; |
| | | box-shadow: 0px 1px 12px 0px rgba(56, 56, 235, 0.08); |
| | | border-radius: 8px; |
| | | margin: auto; |
| | | } |
| | | |
| | | .label-class { |
| | | font-size: 14px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #333; |
| | | } |
| | | |
| | | .user-info-view { |
| | | width: 686rpx; |
| | | background: #fff; |
| | | padding: 0px 0 10px; |
| | | box-sizing: border-box; |
| | | box-shadow: 0px 1px 12px 0px rgba(56, 56, 235, 0.08); |
| | | border-radius: 8px; |
| | | margin: auto; |
| | | margin-top: 12px; |
| | | } |
| | | |
New file |
| | |
| | | <view class="hbfq-order-detail"> |
| | | <view class="fenqi-info-view"> |
| | | <view class="title">分期信息</view> |
| | | <input-item labelCls="label-class" value="{{info.settAmt}}" disabled="{{true}}" inputCls="ipt-class" >支付金额</input-item> |
| | | <input-item labelCls="label-class" value="{{info.insAmt}}" disabled="{{true}}" inputCls="ipt-class" >商户到账金额</input-item> |
| | | <input-item labelCls="label-class" value="{{info.statusStr}}" disabled="{{true}}" inputCls="ipt-class" >订单状态</input-item> |
| | | <input-item labelCls="label-class" value="{{info.creTime}}" disabled="{{true}}" inputCls="ipt-class" >创建时间</input-item> |
| | | <input-item labelCls="label-class" value="{{info.payTypeName}}" disabled="{{true}}" inputCls="ipt-class" last="{{true}}">支付方式</input-item> |
| | | </view> |
| | | <view class="user-info-view"> |
| | | <view class="title">产品信息</view> |
| | | <input-item labelCls="label-class" value="{{info.zfbRate+'%'}}" disabled="{{true}}" inputCls="ipt-class" last="{{true}}">支付费率</input-item> |
| | | </view> |
| | | </view> |
New file |
| | |
| | | let $api = require('../../../utils/ajaxFn.js') |
| | | let dataFm = require('../../../utils/date.js') |
| | | Page({ |
| | | data: { |
| | | info:{} |
| | | }, |
| | | onLoad(query) { |
| | | $api.ajax( |
| | | '/sib/xcx/order/orderDtl', |
| | | 'POST', |
| | | (res)=>{ |
| | | res.data.body.creTime = dataFm(res.data.body.creTime, 'YYYY-MM-DD HH:mm:ss') |
| | | this.setData({ |
| | | info:res.data.body |
| | | }) |
| | | }, |
| | | (err)=>{ |
| | | |
| | | }, |
| | | true, |
| | | { |
| | | orderId:query.orderId |
| | | } |
| | | ) |
| | | }, |
| | | |
| | | }); |
New file |
| | |
| | | { |
| | | "defaultTitle": "商户收款-订单详情", |
| | | "usingComponents":{ |
| | | "list": "mini-ali-ui/es/list/index", |
| | | "input-item": "mini-ali-ui/es/input-item/index", |
| | | "am-icon": "mini-ali-ui/es/am-icon/index", |
| | | "verify-code":"mini-ali-ui/es/verify-code/index", |
| | | "long-password": "mini-ali-ui/es/long-password/index", |
| | | "picker-item": "mini-ali-ui/es/picker-item/index", |
| | | "order-trial":"/components/orderTrial/orderTrial" |
| | | } |
| | | } |
New file |
| | |
| | | <view> |
| | | <input placeholder="输入支付金额" /> |
| | | <button type="primary" onTap="pay"> |
| | | 支付 |
| | | </button> |
| | | </view> |
New file |
| | |
| | | Page({ |
| | | data: { |
| | | code: '', |
| | | }, |
| | | onLoad(query) { |
| | | console.log(query) |
| | | this.setData({ |
| | | code: query.code |
| | | }) |
| | | console.log(this.data.code) |
| | | }, |
| | | pay() { |
| | | // my.request({ |
| | | // url: '商户服务端地址',//须加httpRequest域白名单 |
| | | // method: 'POST', |
| | | // data: {//data里的key、value是开发者自定义的 |
| | | // from: '支付宝', |
| | | // order: 'XXXXX',//订单信息 |
| | | // }, |
| | | // dataType: 'json', |
| | | // success: function (res) { |
| | | |
| | | // }, |
| | | // fail: function (res) { |
| | | // my.alert({ content: 'fail' }); |
| | | // }, |
| | | // complete: function (res) { |
| | | // my.hideLoading(); |
| | | // my.alert({ content: 'complete' }); |
| | | // } |
| | | // }); |
| | | my.tradePay({ |
| | | tradeNO: '2020120722001435295752161156', |
| | | success: function (res) { |
| | | my.alert({ |
| | | content: JSON.stringify(res), |
| | | }); |
| | | |
| | | }, |
| | | fail: function (res) { |
| | | my.alert({ |
| | | content: JSON.stringify(res), |
| | | }); |
| | | |
| | | }, |
| | | }); |
| | | } |
| | | }); |
New file |
| | |
| | | .back-pic { |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | |
| | | .order-info-page { |
| | | min-height: 100vh; |
| | | background: #FAFAFC; |
| | | padding-bottom: 26px; |
| | | } |
| | | |
| | | .top { |
| | | width: 100%; |
| | | height: 100px; |
| | | } |
| | | |
| | | .title { |
| | | font-size: 16px; |
| | | font-family: PingFang SC; |
| | | font-weight: bold; |
| | | color: #333333; |
| | | padding-left: 12px; |
| | | line-height: 36px; |
| | | } |
| | | |
| | | .ipt-class { |
| | | text-align: left; |
| | | } |
| | | |
| | | .pick-class { |
| | | text-align: left; |
| | | } |
| | | |
| | | .fenqi-info-view { |
| | | width: 686rpx; |
| | | height: 120px; |
| | | background: #fff; |
| | | padding: 18px 0 20px; |
| | | box-sizing: border-box; |
| | | position: relative; |
| | | transform: translateY(-50px); |
| | | box-shadow: 0px 1px 12px 0px rgba(56, 56, 235, 0.08); |
| | | border-radius: 8px; |
| | | margin: auto; |
| | | margin-bottom:30px; |
| | | } |
| | | |
| | | .label-class { |
| | | font-size: 14px; |
| | | font-family: PingFang SC; |
| | | font-weight: 500; |
| | | color: #333333; |
| | | } |
| | | |
| | | .user-info-view { |
| | | width: 686rpx; |
| | | height: 155px; |
| | | background: #fff; |
| | | padding: 18px 0 0; |
| | | box-sizing: border-box; |
| | | position: relative; |
| | | transform: translateY(-38px); |
| | | box-shadow: 0px 1px 12px 0px rgba(56, 56, 235, 0.08); |
| | | border-radius: 8px; |
| | | margin: auto; |
| | | } |
| | | |
| | | .btn-view { |
| | | width: 686rpx; |
| | | margin: auto; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | } |
| | | |
| | | .to-qrcode { |
| | | width: 320rpx; |
| | | height: 44px; |
| | | background: #FFFFFF; |
| | | border: 1px solid #8C4EF5; |
| | | border-radius: 22px; |
| | | line-height: 44px; |
| | | color: #8C4EF5; |
| | | } |
| | | |
| | | .get-qrcode { |
| | | width: 320rpx; |
| | | height: 44px; |
| | | border-radius: 22px; |
| | | border: 0; |
| | | color:#fff; |
| | | line-height: 44px; |
| | | } |
New file |
| | |
| | | <view class="order-info-page"> |
| | | <view class="top" style="{{background:userStyle.gradientColor}}"> |
| | | <cover-image src="../../static/img/backpic.png" class="back-pic"/> |
| | | </view> |
| | | <view class="fenqi-info-view"> |
| | | <text class="title">分期信息</text> |
| | | <input-item labelCls="label-class" onInput="confirm" data-code="{{1}}" type="number" inputCls="ipt-class" placeholder="请输入商品金额">商品金额</input-item> |
| | | <input-item labelCls="label-class" onInput="confirm" data-code="{{2}}" last="{{true}}" inputCls="ipt-class" placeholder="请输入商品名称">商品名称</input-item> |
| | | </view> |
| | | <!-- <view class="user-info-view"> |
| | | <text class="title">用户信息</text> |
| | | <input-item labelCls="label-class" inputCls="ipt-class" onInput="confirm" data-code="{{2}}" placeholder="请输入客户姓名">客户姓名</input-item> |
| | | <input-item last="{{true}}" labelCls="label-class" inputCls="ipt-class" onInput="confirm" data-code="{{3}}" placeholder="请输入客户手机号">客户手机号</input-item> |
| | | </view> --> |
| | | <!-- 订单试算展示组件 --> |
| | | <order-trial title="订单试算" amtList="{{amtList}}" rateList="{{rateList}}"/> |
| | | <view class="btn-view"> |
| | | <button size="default" onTap="toQRCode" type="gohost" class="to-qrcode" style="{{color:userStyle.defaultColor,border:`${userStyle.defaultColor} solid 1px`}}">扫描付款码</button> |
| | | <button size="default" onTap="getQRCode" type="primary" class="get-qrcode" style="{{background:userStyle.gradientColor}}">生成二维码</button> |
| | | </view> |
| | | </view> |
New file |
| | |
| | | let $api = require('../../../utils/ajaxFn.js') |
| | | Page({ |
| | | data: { |
| | | userStyle: {}, |
| | | info: { |
| | | payAmt: '' |
| | | }, |
| | | amtList: [ |
| | | { name: '商家到账', number: 0 }, |
| | | { name: '用户支付金额', number: 0 } |
| | | ], |
| | | rateList: [ |
| | | { name: '支付费率', rate: 0.38 } |
| | | ] |
| | | }, |
| | | // 页面加载 |
| | | onLoad() { |
| | | var app = getApp() |
| | | this.setData({ |
| | | userStyle: app.userStyle |
| | | }) |
| | | }, |
| | | confirm(e) { |
| | | let code = e.target.dataset.code, |
| | | value = e.detail.value, |
| | | obj = {}; |
| | | if (code == 1) { |
| | | obj.payAmt = value |
| | | } else if (code == 2) { |
| | | obj.goodsName = value |
| | | } |
| | | console.log(obj) |
| | | this.setData({ |
| | | info: { ...this.data.info,...obj } |
| | | }) |
| | | if(code == 1&&this.data.info.payAmt){ |
| | | this.getTaril() |
| | | } |
| | | }, |
| | | getTaril(){ |
| | | $api.ajax( |
| | | '/sib/xcx/order/dmfTrial', |
| | | 'POST', |
| | | res=>{ |
| | | this.setData({ |
| | | amtList:[ |
| | | { name: '商家到账', number: res.data.body.merAmt }, |
| | | { name: '用户支付金额', number: res.data.body.repayAmt } |
| | | ] |
| | | }) |
| | | }, |
| | | err=>{}, |
| | | true, |
| | | { |
| | | amt:this.data.info.payAmt |
| | | } |
| | | ) |
| | | }, |
| | | toQRCode() { |
| | | this.setData({ |
| | | 'info.payType': 2 |
| | | }) |
| | | my.scan({ |
| | | scanType: ['qrCode', 'barCode'], |
| | | success: (res) => { |
| | | console.log(res) |
| | | // authCode: res.resultStr, |
| | | $api.ajax( |
| | | '/sib/xcx/order/createDmf', |
| | | 'POST', |
| | | (res) => { |
| | | my.reLaunch({ |
| | | url: `/pages/order/shskOrder/shskOrder?orderId=${res.data.body.orderId}`, |
| | | }) |
| | | }, |
| | | (err) => { }, |
| | | true, |
| | | { |
| | | ...this.data.info, |
| | | authCode: res.resultStr |
| | | } |
| | | ) |
| | | }, |
| | | }); |
| | | }, |
| | | getQRCode() { |
| | | this.setData({ |
| | | 'info.payType': 1 |
| | | }) |
| | | for (let key in this.data.info) { |
| | | if (!this.data.info[key]) { |
| | | my.showToast({ |
| | | type: 'none', |
| | | content: '请完整输入信息', |
| | | duration: 2000, |
| | | }); |
| | | return |
| | | } |
| | | } |
| | | |
| | | let str = JSON.stringify(this.data.info) |
| | | console.log(this.data.info) |
| | | my.navigateTo({ |
| | | url: `../qrCode/qrCode?info=${str}` |
| | | }); |
| | | } |
| | | }); |
New file |
| | |
| | | { |
| | | "defaultTitle": "商户收款", |
| | | "usingComponents":{ |
| | | "list": "mini-ali-ui/es/list/index", |
| | | "input-item": "mini-ali-ui/es/input-item/index", |
| | | "am-icon": "mini-ali-ui/es/am-icon/index", |
| | | "verify-code":"mini-ali-ui/es/verify-code/index", |
| | | "long-password": "mini-ali-ui/es/long-password/index", |
| | | "picker-item": "mini-ali-ui/es/picker-item/index", |
| | | "order-trial":"/components/orderTrial/orderTrial" |
| | | } |
| | | } |
New file |
| | |
| | | .qrCode-page{ |
| | | min-height: 100vh; |
| | | background: #FAFAFC; |
| | | } |
| | | .top { |
| | | width: 100%; |
| | | height: 100px; |
| | | } |
New file |
| | |
| | | <view class="qrCode-page"> |
| | | <view class="top" style="{{background:userStyle.gradientColor}}"> |
| | | <cover-image src="../../static/img/backpic.png" class="back-pic"/> |
| | | </view> |
| | | <qrcode-view imgSrc="{{imgSrc}}" rateList="{{rateList}}"/> |
| | | </view> |
New file |
| | |
| | | let $api = require('../../../utils/ajaxFn.js') |
| | | const QRCode = require('qrcode'); |
| | | const app = getApp(); |
| | | Page({ |
| | | data: { |
| | | userStyle:{}, |
| | | imgSrc:'', |
| | | rateList:[ |
| | | {name:'付款金额',rate:0.38}, |
| | | ] |
| | | }, |
| | | onLoad(query) { |
| | | let info = JSON.parse(query.info) |
| | | this.setData({ |
| | | userStyle:app.userStyle, |
| | | info:info |
| | | }) |
| | | this.getCode() |
| | | }, |
| | | getCode() { |
| | | let self = this; |
| | | // QRCode.toString('https://qr.alipay.com/bax09171hgnaiptzucxe8034',{type: 'svg'}, function (err, url) { |
| | | // let str = 'data:image/svg+xml;base64,' + Buffer(url).toString('base64'); |
| | | // console.log(str); |
| | | |
| | | // self.setData({ |
| | | // imgSrc: str |
| | | // }) |
| | | // }); |
| | | $api.ajax( |
| | | '/sib/xcx/order/createDmf', |
| | | 'POST', |
| | | (res) => { |
| | | //根据字符串生成svn格式的二维码 |
| | | QRCode.toString(res.data.body.payQrCodeUrl, {type: 'svg'}, function (err, url) { |
| | | let str = 'data:image/svg+xml;base64,' + Buffer(url).toString('base64'); |
| | | console.log(str) |
| | | self.setData({ |
| | | imgSrc: str, |
| | | orderId:res.data.body.orderId, |
| | | rateList: [ |
| | | { name: '支付费率', rate: res.data.body.payRate + '%' } |
| | | ], |
| | | timer:setInterval(this.getStatus(),5000) |
| | | }) |
| | | }); |
| | | |
| | | }, |
| | | (err) => { }, |
| | | true, |
| | | { |
| | | ...this.data.info |
| | | } |
| | | ) |
| | | }, |
| | | getStatus(){ |
| | | $api.ajax( |
| | | '/sib/xcx/order/findDmfOrderSts', |
| | | 'POST', |
| | | (res)=>{ |
| | | let body = res.data.body.orderStatus |
| | | if(body==1){ |
| | | clearInterval(this.data.timer) |
| | | my.showToast({ |
| | | type: 'none', |
| | | content: '支付成功', |
| | | duration: 3000, |
| | | success: () => { |
| | | my.reLaunch({ |
| | | url: `/pages/order/shskOrder/shskOrder?orderId=${this.data.orderId}`, |
| | | }) |
| | | }, |
| | | }) |
| | | } |
| | | if(body==2){ |
| | | clearInterval(this.data.timer) |
| | | my.showToast({ |
| | | type: 'none', |
| | | content: '支付超时', |
| | | duration: 3000, |
| | | success: () => { |
| | | my.reLaunch({ |
| | | url: `/pages/order/shskOrder/shskOrder?orderId=${this.data.orderId}`, |
| | | }) |
| | | }, |
| | | }) |
| | | } |
| | | }, |
| | | (err)=>{ |
| | | |
| | | }, |
| | | true, |
| | | { |
| | | orderId:this.data.orderId |
| | | } |
| | | ) |
| | | } |
| | | }); |
New file |
| | |
| | | { |
| | | "defaultTitle": "商户收款", |
| | | "usingComponents":{ |
| | | "qrcode-view":"/components/QRCodeView/QRCodeView" |
| | | } |
| | | } |
New file |
| | |
| | | .user-center-page{ |
| | | min-height: 100vh; |
| | | background: #fafafa; |
| | | position: relative; |
| | | } |
| | | .top{ |
| | | width: 100%; |
| | | height: 120px; |
| | | margin-bottom: 24px; |
| | | } |
| | | .img{ |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | .userInfo{ |
| | | width: 100%; |
| | | height: 120px; |
| | | position: absolute; |
| | | top: 0; |
| | | left: 0; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | box-sizing: border-box; |
| | | padding: 0 20px; |
| | | } |
| | | .left{ |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | } |
| | | .avatar{ |
| | | width: 60px; |
| | | height: 60px; |
| | | border-radius:50%; |
| | | } |
| | | .info{ |
| | | margin-left:12px; |
| | | color: #FFFFFF; |
| | | } |
| | | .name{ |
| | | margin-bottom: 8px; |
| | | width: 304rpx; |
| | | white-space: nowrap; |
| | | overflow: hidden; |
| | | text-overflow:ellipsis; |
| | | color: #fff; |
| | | } |
| | | .btn{ |
| | | width: 80px; |
| | | height: 24px; |
| | | background: #FFFFFF; |
| | | border-radius: 12px; |
| | | font-size: 12px; |
| | | line-height: 24px; |
| | | float: right; |
| | | } |
| | | .functionList{ |
| | | margin: auto; |
| | | margin-bottom: 12px; |
| | | width: 686rpx; |
| | | height: 60px; |
| | | background: #FFFFFF; |
| | | border-radius: 4px; |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | padding: 0 20px; |
| | | box-sizing: border-box; |
| | | } |
| | | .left-fn{ |
| | | display: flex; |
| | | align-items: center; |
| | | } |
| | | .footer-view{ |
| | | display: flex; |
| | | } |
| | | .mode{ |
| | | width: 560rpx; |
| | | /* height: 150px; */ |
| | | } |
New file |
| | |
| | | <view class="user-center-page"> |
| | | <view class="top" style="{{background:userStyle.gradientColor}}"> |
| | | <cover-image src="../../static/img/backcircl.png" class="img"/> |
| | | </view> |
| | | <view class="userInfo"> |
| | | <view class="left"> |
| | | <image mode="scaleToFill" class="avatar" src="../../static/img/logo.png"/> |
| | | <view class="info"> |
| | | <view style="margin-bottom:6px">{{userInfo.name}}</view> |
| | | <view>{{userInfo.mblNo}}</view> |
| | | </view> |
| | | <!--<avatar className="avatar-class" src="../../static/img/logo.png" size="lg" name="用户名" desc="摘要描述" shape="circle" /> --> |
| | | </view> |
| | | <view class="right"> |
| | | <view class="name" style="text-align:right"> |
| | | {{userInfo.orgName}} |
| | | </view> |
| | | <button class="btn" onTap="changeUser" style="{{color:userStyle.defaultColor}}"> |
| | | 切换身份 |
| | | </button> |
| | | </view> |
| | | </view> |
| | | <view class="functionList" a:for="{{functionList}}" a:key="{{index}}" data-index="{{index}}" onTap="goNext"> |
| | | <view class="left-fn"> |
| | | <text class="iconfont {{item.icon}}" style="{{color:userStyle.defaultColor,'font-size': '20px','margin-right': '12px'}}"></text> |
| | | <text>{{item.name}}</text> |
| | | </view> |
| | | <view class="right-fn"> |
| | | <text class="iconfont iconarrow-right" style="'font-size': '12px'"></text> |
| | | </view> |
| | | </view> |
| | | <modal show="{{modalOpened}}" showClose="{{false}}" className="mode"> |
| | | 确定退出此账号吗? |
| | | <view slot="footer" class="footer-view"> |
| | | <button onTap="onCancel" style="height:50px;line-height:50px;width:50%;border: 0;border-right:1px #EEEEEE solid"> |
| | | 取消 |
| | | </button> |
| | | <button onTap="onDetermine" style="height:50px;line-height:50px;width:50%;border: 0;"> |
| | | 确定 |
| | | </button> |
| | | </view> |
| | | </modal> |
| | | </view> |
New file |
| | |
| | | let $api = require('../../utils/ajaxFn.js') |
| | | const app = getApp() |
| | | Page({ |
| | | data: { |
| | | modalOpened:false, |
| | | userStyle:{}, |
| | | userInfo:{}, |
| | | functionList:[ |
| | | {name:'修改密码',icon:'iconxiugaimima'}, |
| | | {name:'退出登录',icon:'icontuichudenglu'} |
| | | ] |
| | | }, |
| | | onLoad() { |
| | | this.setData({ |
| | | userStyle:app.userStyle, |
| | | userInfo:app.userInfo |
| | | }) |
| | | console.log(app,this.data.userInfo) |
| | | }, |
| | | goNext(event){ |
| | | let index = event.target.dataset.index |
| | | if(index === 0){ |
| | | my.navigateTo({ |
| | | url: '../changePassword/changePassword' |
| | | }); |
| | | } |
| | | if(index === 1){ |
| | | this.setData({ |
| | | modalOpened:true |
| | | }) |
| | | } |
| | | }, |
| | | onCancel(){ |
| | | this.setData({ |
| | | modalOpened:false |
| | | }) |
| | | }, |
| | | onDetermine(){ |
| | | $api.ajax( |
| | | '/sib/xcx/login/logout', |
| | | 'POST', |
| | | res=>{ |
| | | my.removeStorageSync({ |
| | | key: 'sessionId', |
| | | }); |
| | | my.navigateTo({ |
| | | url: '/pages/index/index' |
| | | }); |
| | | }, |
| | | err=>{ |
| | | |
| | | }, |
| | | true |
| | | ) |
| | | }, |
| | | changeUser(){ |
| | | my.navigateTo({ |
| | | url: '../changeUser/changeUser' |
| | | }); |
| | | } |
| | | }); |
New file |
| | |
| | | { |
| | | "defaultTitle": "个人中心", |
| | | "usingComponents": { |
| | | "avatar": "mini-ali-ui/es/avatar/index", |
| | | "modal": "mini-ali-ui/es/modal/index" |
| | | } |
| | | } |
New file |
| | |
| | | @import "/static/ali-icon/stylesheet.acss"; |
| | | @font-face { |
| | | font-family: 'iconfont'; |
| | | src: url('iconfont.eot'); |
| | | src: url('iconfont.eot?#iefix') format('embedded-opentype'), |
| | | url('iconfont.woff') format('woff'), |
| | | url('/static/ali-icon/iconfont.ttf') format('truetype'), /* 使用的ttf,所以这里的路径不能出错了 */ |
| | | url('iconfont.svg#iconfont') format('svg'); |
| | | } |
| | | |
| | | .iconfont{ |
| | | font-family: "iconfont" !important; |
| | | font-size: 12px; |
| | | font-style: normal; |
| | | } |
| | | |
| | | .icon-home:before{content:'\e613';} |
| | | .icon-home1:before{content:'\e7a3';} |
| | | .icon-gouwuche:before{content:'\e60c';} |
New file |
| | |
| | | @font-face {font-family: "iconfont"; |
| | | src: url('iconfont.eot?t=1607396874051'); /* IE9 */ |
| | | src: url('iconfont.eot?t=1607396874051#iefix') format('embedded-opentype'), /* IE6-IE8 */ |
| | | url('data:application/x-font-woff2;charset=utf-8;base64,d09GMgABAAAAAA3MAAsAAAAAGhQAAA1/AAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHEIGVgCFQAqiCJsdATYCJANoCzYABCAFhG0HgmgbqxWjopyxhpP91YIuYXytQ0aoUEWiiVltsdZBtfyocM+mHIizfE15XF6JE/xD936eO6W/t6VVXK8gPRpOBDqVihSQBQvIgIQ/AXAs76OWARyVOHtaVNLaJ56gA5k+beMG6UvVObWNdK3pwMQxtTqVNuUU+y0pJ+vDW0+p287EsLMxPc75Ly2a4qtAMyli7bTFJMW8kKSj82IzL3/8G2VzOlFcivpg6kk7NZgLCRAAsXgMbPXsEdj/b79v9c8K0NZCwQbTmCht5vudd+fvXnzWff4iKgmaNRqH5O/9NX0f80Y0TRAbqeLDfjOfrgIszMLG3L5u92AIFJvKBfqPLq6DMocoYZMVo2RQ9q3iUvIkJULMiGF0SUQKfjGXAPxif1/vCEtg+BDkoe7mDqNg58WkH9I/TJSMhM444WeA02hgwTk46Dy25J2cDefMKXElYQ/pymGbruPjdDBCnX27MK9QkWIlSmWblitPvkwjL4iSrKgaXRzb0H9eFLJxA6gdrSt00BZgno4LsECnBVik8wIs0WUBlukmxAMtFOXRQQH0UAADFMAIBTCBGIAZii5hAeGBFUQANhAR2EEk4ACRgRNEAS4QFbhBNOABIeAFYYAPhAUqIvvHWTVGuIC3Al+H8AjRL6zEsesOdAY9nBgqscw6dgx9EgkyyzNStYpaC7mUYRiLWfSSiGltNCrCskOX0Fqetc79t5X5+jhvVzcXhp2VvMuLs3U/10JYTKHpMSjNGjff2q1mpk2vR/p3rwnMIwH1HNe+lGo0xAWNZd6QfTWFl5HuVLs6yvN8BvVU0zVaQYsmopvEVnW1tZKadqRQ67qMonCSxAqt1Got6RWQPH5H3DeZ8MdX9fkOkkHsYa28jfJlntH4tXhLVXgr6dGvEWplQ+FlSutzPs2aLO2MFUpy6rGIyiybi/5NFFGsnKiBs7GSrCmUVkr0UbNIDdGh9SZYg+TMfr9h7SJmr0e7xo9zmlrGYJ0OZ7PYR1lsWlHNgtxIlNCTWPXOrHwrX9zKnKgVmwUVT+QwoSPMIktLDjPPEqpzcuKAOEyl8oidHYeWMhlMzeKcI9hnIjgUOlTYUcOGcti+8KWEf0x4eIkCLpfFBiVTmByQyylFEFCIcBoEnFwOkwIMgLx7XEMKON7o4twB+WyiXG8kATKuRzujn8h2oSQ3pd2pTJEafDhyLJouJDF7wwRD531H+MvCmJ1wtluRctJZlWtpFsG8hnWp3DUE3ElO7fPUSlnX8QHvZk0a5peW4rOAAWBMBUOM6iGg82EQNsk+BulmDa8woZnKASxj7UjCZXOYD/O7QesI/5Rkv5keHgMM4K9qCFJUD1nRMKMavks76hhDDB4MZCYJGCkCDGaL9snFj5LyldbbY30UQyUlegT4VS1UZSoVRZEeTE4vnO0g5DfQr9FqJdm9jcqmPkbPzawbGbS8QTuTmmNcuoRmSodUrKPUZz4LJFd1OqRCWQ2cXMYKk0WroGp3kCfUrGyVDVU7AoYY2kgyVT0Lh5pIUsOv683u19NsJDWaGdLcBsYiI+xIcX0PJ1BcrxJIHkiC+GhXQyk7KXsjGKEGGrRLbnV+HvMSiZVTZIpKK7trxeQUFNayBmYrsVYyjJQJJC1ZVgMDUtWDRGUdnJWhoq5TAExBNi1A38qRAWVpb2pTZiIoqGedc4rkAYYqNIrq+uIiJuYlaBF0qQkOIiAip6SlwVG++TJyKo4SvSQ8EVbGvl2Hd6c7St09Cj3dDiKdEhIZovYhpSi5D475StMIn5Q0vwwAi9ALhnGYgDFYCmeL8iwYWhRaOmmQMbOhcZTj3SNUOOyYygCwjjEwWkbT1sCAQagF/QK4uJ4958eaUwTwTKnX4UeLi+rsjGrUJaWcWb/EmKiVrQc5+NtQTgWf1dpWaFrXlAgDRpLGoGPLuV1wGdde9t3p7UD+kD1DNYzshXYaXDVo2Yc1jilHINi1pEbAWNb2AczMSvUCbHXu8+xv697SNd4j3ftQafmvHf7sKJ26xD8NY4khELr/gFUA99fO6Zvj9YLfrshdyQxnYfNbLwktpCt07ZNm1ey7YBBGex+ZOFHm8cvv5Q7UPBR52XDn6OIDxsfy6Zcu0fOpkKW+h9vJezO9tpaO+GZFIqY8qfOme6acXXvvyeaDkw9yzf9P82qQtwXgq4WSQKJN3nB1X/5BccYtArWUByc8eKBNUB5g+dYnF/m5+QeSW8Cdn2I1R1HZLbSSCnKRH5t/hgdacJE/uGAoamI8Hj5xaOEAulSBMG7h03JDWx0EqKUkKP6K2H5ReyAen1eb9740C1NFfCDevkid6tX6D0l/YXngLDnv0BGQFL/ObKtc/wd4NRaQALDAZLONeF29GSbK342Hwu4d2+zn+tDkqU42NAM9a2tIT9d4EnosDnJfo4SmqHZh+b15fdef+2VgZeYoXwsd3noY2rJ2K6DEIO5gAndw8OzjblKwFE3Vohq3Xb6xalfvbG9buoGuNQ/S15OmxDU/xfYON0YonqYwv2guMt+IJUN3hOdAbU1SdzenrbfyDsu3miUFrLtNqPOkBNfjKT0+S6aPRkGREBIRNeq4fE7sncpPR0Jnz9bS3TXVws4mAESAOHvxtcCSBcWBt3nCKxbWU16zDwQxIO6M7szbs0S/1kevg1N+rYtZ+sTWjRucjpX1sy6efid2+qfEg0hkq4+NgBt2ILGWpwVf2kZfXWKzWexLYEztiXou4y9zR91bRQiYKJrIV0YBiCh4lI/zM4+gS1FYOpPK9BTFYLCW/oeWo57MBnGZr15dZpNTe3lh+ZofcX4v2mRibjIKxobLRPBQXlNaJ55GgIhal8Hd3e/TNoQ7oyOocybKR7GxZeiyt9oAkDV6FAXj4xWhW7foFVQYUt/DHdR7J62zk7Yz2GXj3eVZHT82fO8/BMtpRIRAsU/v+vIt09wzgmk7Ozt3prnF+iGpjvPuxseLnCYPSOKrjl60n4ekxPnGWu3YNPO/nVZxNlE2wK3dcD0sKiNa9rbWf/Uj/G4xqr42EmthK9R8UtukoAlsi2k/NKaR/gG8b2AMu3jP4njOppEcNGdkCI2nvn07pbS/oxzlRWap+cjeZDVwYEaHzIg1vArdFD2jT3gmOml+LUE/xNU4fgNWvO+6eZl/ubSiVKKxufzsExBC375Bwg80cpBJKjPB+JRjFBlduLAEQUPBbElu+Kyabc/DansDMkCYoXOqRJLKX68KE/j74ylCxRm9tWHfttaEzYrLBdJQBC1ZuHAURYINxbwS1OlrjK0tb8CbwLITc0VcsZ3rghZr5RIIKJ+sdaGrHSK2FXM9nPlK/jtmA9rAxczEYnPX166Q+a7AbzXvyUfRsTMfLWYjF34YnP37OF89/OmYCNzgAXJ4A62okLaBbi17WlX/sbbRScKduoFWWETTXTYUFm7wSYTS0yFpaVm6IpEmoykUWyUq0gGPrgTkSaZ/NgWx+KYgLmkrdgJoAv7xMYYD1NFG/Dx80/gmEAvc2pRLLORWHXS6fERxu3ziBPhiMzp6mc2S4PIkulGoQM1ImHx0TSahBhgTwFdnqicnMNQCdKk/UIOlw6hsEehrdGyJDgJPFRC2gTkH5WzqHLbNkmE+ymcBdJ94sBAR8i9HmcNasB3Iecq4bYqjOB/NxFYrkcwSTKCVbGKZ/kqBEmzzLO2/EvjpCW+M9+RT4BVP48jPxvNjavHPtOMiyINkEMhMRyGaLRUKmc9jLMHURIPHbIqJ6YH3hMa77bZY/q/R12pFWNK3n/oqb4aAcHoC5Gt/Q07pP4yXl/P/3F617j70etn2c6Bm4W8Eyn/Hx48t3/8j6Ih4zn99PezKo//xe3WU/xMH7BnALmffWeaXXvUXZJghP5lNXWquTW5eXSbj8T8CMi7zquDCHC8YyxUUJHNFuitt5XC26RWPdAL2Y7SprOU1dplnYVPXjpHyJ3I/Mnpib9iatNr/G9S/avX/fiuzSDPsc0likkDP0E8KEzaR14V7RgmsvhQpYXZYtIMsG2p0xmq7pDcZUGg9TJCKWc9d0wu5w79t9ILLjWiDW8k+c9nn3KsueJBc8uLM0OjVnC05Cmfg1IXEZdodN0Z/uTXtQUAg+4l7iz55MJ3lxatA/gSrw95U+wikh0hMX4UJ0cXqWl+1Nr0ExVaSN8qm3gKlpl5sjNaD7cfggHgMkj6pTe9jERMm4kh6OLAWxZxwBqEfae/n2+NxHDfoKMQkqLpFgOSNuSPClNflF4WQE1/cq4b+/CWgMEuilH0+lr8FSMpcv1CjUnUOduy4XPvsytbbniibdmQTE9rOBCWEQdkAS1uQsBHf3QwIeSMLJZrmtlXJx5rL64ya18nWuAooyNCrGVk5eQVFJeU/m/9Kaho0akrTmtGs5jSvBS1qScta0arWSF9gOQUTg3s0xQOW7g06L0ZiqpGfpVOWcaJboQcpTxLh85Dn5WlpwUWSapJPMkr7/I5JoDljnIqkswamBZ8hv5sCFWYTaWxh2yNBfYdNqDmCyraoHhhW0iQ0SZa3tTRd8C5uI6eM9WXQ/MIHEk03n/EZLOeRywcMlN5N5RCeOdU8Y1tN69y2MQ8E7k1jao6ryYHsHVsx0bX8wl0ZBA==') format('woff2'), |
| | | url('iconfont.woff?t=1607396874051') format('woff'), |
| | | url('iconfont.ttf?t=1607396874051') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */ |
| | | url('iconfont.svg?t=1607396874051#iconfont') format('svg'); /* iOS 4.1- */ |
| | | } |
| | | |
| | | .iconfont { |
| | | font-family: "iconfont" !important; |
| | | font-size: 16px; |
| | | font-style: normal; |
| | | -webkit-font-smoothing: antialiased; |
| | | -moz-osx-font-smoothing: grayscale; |
| | | } |
| | | |
| | | .iconhuabeifenqi:before { |
| | | content: "\e823"; |
| | | } |
| | | |
| | | .iconxuanze:before { |
| | | content: "\e824"; |
| | | } |
| | | |
| | | .iconxiaoshouwangluo_h:before { |
| | | content: "\e825"; |
| | | } |
| | | |
| | | .iconxiaoshouwangluo:before { |
| | | content: "\e826"; |
| | | } |
| | | |
| | | .iconarrow-up:before { |
| | | content: "\e81b"; |
| | | } |
| | | |
| | | .iconcalendar:before { |
| | | content: "\e81c"; |
| | | } |
| | | |
| | | .iconarrow-right:before { |
| | | content: "\e81d"; |
| | | } |
| | | |
| | | .icontime:before { |
| | | content: "\e81e"; |
| | | } |
| | | |
| | | .icondingdanliebiao:before { |
| | | content: "\e81f"; |
| | | } |
| | | |
| | | .iconuser:before { |
| | | content: "\e820"; |
| | | } |
| | | |
| | | .iconemail:before { |
| | | content: "\e821"; |
| | | } |
| | | |
| | | .iconstore:before { |
| | | content: "\e822"; |
| | | } |
| | | |
| | | .icontuichudenglu:before { |
| | | content: "\e819"; |
| | | } |
| | | |
| | | .iconxiugaimima:before { |
| | | content: "\e81a"; |
| | | } |
| | | |
| | | .iconshaixuan:before { |
| | | content: "\e814"; |
| | | } |
| | | |
| | | .iconsousuo:before { |
| | | content: "\e815"; |
| | | } |
| | | |
| | | .iconkehuxingming:before { |
| | | content: "\e816"; |
| | | } |
| | | |
| | | .iconliebiaojiantou:before { |
| | | content: "\e817"; |
| | | } |
| | | |
| | | .iconxiangxia:before { |
| | | content: "\e818"; |
| | | } |
| | | |
| | | .iconyewushuju:before { |
| | | content: "\e80e"; |
| | | } |
| | | |
| | | .iconyewubanli:before { |
| | | content: "\e80f"; |
| | | } |
| | | |
| | | .icongerenzhongxin:before { |
| | | content: "\e810"; |
| | | } |
| | | |
| | | .iconyewushuju_h:before { |
| | | content: "\e811"; |
| | | } |
| | | |
| | | .icongerenzhongxin_h:before { |
| | | content: "\e812"; |
| | | } |
| | | |
| | | .iconyewubanli_h:before { |
| | | content: "\e813"; |
| | | } |
| | | |
New file |
| | |
| | | const md5 = require('./md5.js') |
| | | const app = getApp() |
| | | const baseUrl = 'https://t.finlean.com' |
| | | /** |
| | | * url请求地址 |
| | | * data 数据对象 |
| | | * method 方法 |
| | | * success成功回调 |
| | | * fail失败回调 |
| | | * **/ |
| | | function $api(url,method,success,fail,needLogin,data){ |
| | | my.showLoading({ |
| | | title: '正在加载...' |
| | | }); |
| | | // 记录发起请求的当前时间 |
| | | let timeStart = Date.now(); |
| | | var str = '' |
| | | for(let key in data){ |
| | | str = str + data[key] |
| | | } |
| | | var params = {...data} |
| | | console.log(needLogin) |
| | | if(needLogin){ |
| | | console.log('验签字符串',str+my.getStorageSync ({ key: 'sessionId' }).data.sessionId) |
| | | let sessionId = my.getStorageSync ({ key: 'sessionId' }).data.sessionId |
| | | // params.sessionId = sessionId |
| | | params.jttechSign = md5.hex_md5(str+sessionId) |
| | | } |
| | | my.request({ |
| | | url: `${baseUrl}${url}`, |
| | | headers: {'content-type':'application/json'}, |
| | | method: method, |
| | | data: { |
| | | ...params |
| | | }, |
| | | timeout: 60000, |
| | | dataType: 'json', |
| | | success: success, |
| | | fail: fail, |
| | | complete:function(res){ |
| | | // console.log(`耗时${Date.now() - timeStart}`, baseUrl + url); |
| | | |
| | | if(res.status == 200){ |
| | | setTimeout(function () { |
| | | my.hideLoading(); |
| | | }, 1000); |
| | | }else{ |
| | | if(res.data.code == 99999){ |
| | | my.hideLoading(); |
| | | //登录超时 |
| | | my.showToast({ |
| | | type: 'none', |
| | | content: res.data.errMsg, |
| | | duration: 3000, |
| | | success: () => { |
| | | my.reLaunch({ |
| | | url: '/pages/index/index', |
| | | }) |
| | | }, |
| | | }); |
| | | } |
| | | if(res.data.errorCode == -999){ |
| | | //接口错误 |
| | | my.hideLoading(); |
| | | my.showToast({ |
| | | type: 'none', |
| | | content: res.data.errMsg, |
| | | }) |
| | | } |
| | | if(res.status == 400 || res.status == 500){ |
| | | //接口错误 |
| | | my.hideLoading(); |
| | | if(res.data.status==90040006){ |
| | | //登录超时 |
| | | my.showToast({ |
| | | type: 'none', |
| | | content: res.data.message, |
| | | duration: 1000, |
| | | success: () => { |
| | | my.reLaunch({ |
| | | url: '/pages/index/index', |
| | | }) |
| | | }, |
| | | }); |
| | | }else{ |
| | | my.hideLoading(); |
| | | my.showToast({ |
| | | type: 'none', |
| | | content: res.data.errMsg, |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | module.exports = { |
| | | ajax: $api, |
| | | } |
New file |
| | |
| | | |
| | | /** |
| | | * 时间格式化函数,如果没有传递格式就返回时间戳 |
| | | * @param date Date 对象 |
| | | * @param fmt 格式规范 |
| | | * @returns {*} |
| | | */ |
| | | export default function(date, fmt) { |
| | | if (!date) { |
| | | return null; |
| | | } |
| | | if (typeof date === 'string') { |
| | | date = new Date(date.replace(/-/g, '/')); |
| | | } |
| | | if (typeof date === 'number') { |
| | | date = new Date(date); |
| | | } |
| | | if (fmt === undefined) { |
| | | return Number(date); |
| | | } else { |
| | | var o = { |
| | | 'M+': date.getMonth() + 1, |
| | | 'D+': date.getDate(), |
| | | 'h+': date.getHours() % 12 === 0 ? 12 : date.getHours() % 12, |
| | | 'H+': date.getHours(), |
| | | 'm+': date.getMinutes(), |
| | | 's+': date.getSeconds(), |
| | | 'q+': Math.floor((date.getMonth() + 3) / 3), |
| | | S: date.getMilliseconds() |
| | | }; |
| | | var week = { |
| | | '0': '\u65e5', |
| | | '1': '\u4e00', |
| | | '2': '\u4e8c', |
| | | '3': '\u4e09', |
| | | '4': '\u56db', |
| | | '5': '\u4e94', |
| | | '6': '\u516d' |
| | | }; |
| | | if (/(Y+)/.test(fmt)) { |
| | | fmt = fmt.replace( |
| | | RegExp.$1, |
| | | (date.getFullYear() + '').substr(4 - RegExp.$1.length) |
| | | ); |
| | | } |
| | | if (/(E+)/.test(fmt)) { |
| | | fmt = fmt.replace( |
| | | RegExp.$1, |
| | | (RegExp.$1.length > 1 |
| | | ? RegExp.$1.length > 2 ? '\u661f\u671f' : '\u5468' |
| | | : '') + week[date.getDay() + ''] |
| | | ); |
| | | } |
| | | for (var k in o) { |
| | | if (new RegExp('(' + k + ')').test(fmt)) { |
| | | fmt = fmt.replace( |
| | | RegExp.$1, |
| | | RegExp.$1.length === 1 |
| | | ? o[k] |
| | | : ('00' + o[k]).substr(('' + o[k]).length) |
| | | ); |
| | | } |
| | | } |
| | | return fmt; |
| | | } |
| | | } |
New file |
| | |
| | | function MD5(sMessage) |
| | | { |
| | | function RotateLeft(lValue, iShiftBits) |
| | | { |
| | | return (lValue<<iShiftBits) | (lValue>>>(32-iShiftBits)); } |
| | | function AddUnsigned(lX,lY) |
| | | { |
| | | var lX4,lY4,lX8,lY8,lResult; |
| | | lX8 = (lX & 0x80000000); |
| | | lY8 = (lY & 0x80000000); |
| | | lX4 = (lX & 0x40000000); |
| | | lY4 = (lY & 0x40000000); |
| | | lResult = (lX & 0x3FFFFFFF)+(lY & 0x3FFFFFFF); |
| | | if (lX4 & lY4) { |
| | | return (lResult ^ 0x80000000 ^ lX8 ^ lY8); |
| | | } |
| | | if (lX4 | lY4) { |
| | | if (lResult & 0x40000000) { |
| | | return (lResult ^ 0xC0000000 ^ lX8 ^ lY8); |
| | | } else { |
| | | return (lResult ^ 0x40000000 ^ lX8 ^ lY8); |
| | | } |
| | | } else { |
| | | return (lResult ^ lX8 ^ lY8); |
| | | } |
| | | } |
| | | function F(x,y,z) |
| | | { |
| | | return (x & y) | ((~x) & z); } |
| | | function G(x,y,z) |
| | | { |
| | | return (x & z) | (y & (~z)); } |
| | | function H(x,y,z) |
| | | { |
| | | return (x ^ y ^ z); } |
| | | function I(x,y,z) |
| | | { |
| | | return (y ^ (x | (~z))); } |
| | | function FF(a,b,c,d,x,s,ac) |
| | | { |
| | | a = AddUnsigned(a, AddUnsigned(AddUnsigned(F(b, c, d), x), ac)); |
| | | return AddUnsigned(RotateLeft(a, s), b); |
| | | } |
| | | function GG(a,b,c,d,x,s,ac) |
| | | { |
| | | a = AddUnsigned(a, AddUnsigned(AddUnsigned(G(b, c, d), x), ac)); |
| | | return AddUnsigned(RotateLeft(a, s), b); |
| | | } |
| | | function HH(a,b,c,d,x,s,ac) |
| | | { |
| | | a = AddUnsigned(a, AddUnsigned(AddUnsigned(H(b, c, d), x), ac)); |
| | | return AddUnsigned(RotateLeft(a, s), b); |
| | | } |
| | | function II(a,b,c,d,x,s,ac) |
| | | { |
| | | a = AddUnsigned(a, AddUnsigned(AddUnsigned(I(b, c, d), x), ac)); |
| | | return AddUnsigned(RotateLeft(a, s), b); |
| | | } |
| | | function ConvertToWordArray(sMessage) |
| | | { |
| | | var lWordCount; |
| | | var lMessageLength = sMessage.length; |
| | | var lNumberOfWords_temp1=lMessageLength + 8; |
| | | var lNumberOfWords_temp2=(lNumberOfWords_temp1-(lNumberOfWords_temp1 % 64))/64; |
| | | var lNumberOfWords = (lNumberOfWords_temp2+1)*16; |
| | | var lWordArray=Array(lNumberOfWords-1); |
| | | var lBytePosition = 0; |
| | | var lByteCount = 0; |
| | | while ( lByteCount < lMessageLength ) { |
| | | lWordCount = (lByteCount-(lByteCount % 4))/4; |
| | | lBytePosition = (lByteCount % 4)*8; |
| | | lWordArray[lWordCount] = (lWordArray[lWordCount] | (sMessage.charCodeAt(lByteCount)<<lBytePosition)); |
| | | lByteCount++; |
| | | } |
| | | lWordCount = (lByteCount-(lByteCount % 4))/4; |
| | | lBytePosition = (lByteCount % 4)*8; |
| | | lWordArray[lWordCount] = lWordArray[lWordCount] | (0x80<<lBytePosition); |
| | | lWordArray[lNumberOfWords-2] = lMessageLength<<3; |
| | | lWordArray[lNumberOfWords-1] = lMessageLength>>>29; |
| | | return lWordArray; |
| | | } |
| | | function WordToHex(lValue) |
| | | { |
| | | var WordToHexValue="",WordToHexValue_temp="",lByte,lCount; |
| | | for (lCount = 0; lCount<=3; lCount++) { |
| | | lByte = (lValue>>>(lCount*8)) & 255; |
| | | WordToHexValue_temp = "0" + lByte.toString(16); |
| | | WordToHexValue = WordToHexValue + WordToHexValue_temp.substr(WordToHexValue_temp.length-2,2); |
| | | } |
| | | return WordToHexValue; |
| | | } |
| | | var x=Array(); |
| | | var k,AA,BB,CC,DD,a,b,c,d |
| | | var S11=7, S12=12, S13=17, S14=22; |
| | | var S21=5, S22=9 , S23=14, S24=20; |
| | | var S31=4, S32=11, S33=16, S34=23; |
| | | var S41=6, S42=10, S43=15, S44=21; |
| | | // Steps 1 and 2. Append padding bits and length and convert to words |
| | | x = ConvertToWordArray(sMessage); |
| | | // Step 3. Initialise |
| | | a = 0x67452301; b = 0xEFCDAB89; c = 0x98BADCFE; d = 0x10325476; |
| | | // Step 4. Process the message in 16-word blocks |
| | | for (k=0; k<x.length; k+=16) { |
| | | AA=a; BB=b; CC=c; DD=d; |
| | | a=FF(a,b,c,d,x[k+0], S11,0xD76AA478); |
| | | d=FF(d,a,b,c,x[k+1], S12,0xE8C7B756); |
| | | c=FF(c,d,a,b,x[k+2], S13,0x242070DB); |
| | | b=FF(b,c,d,a,x[k+3], S14,0xC1BDCEEE); |
| | | a=FF(a,b,c,d,x[k+4], S11,0xF57C0FAF); |
| | | d=FF(d,a,b,c,x[k+5], S12,0x4787C62A); |
| | | c=FF(c,d,a,b,x[k+6], S13,0xA8304613); |
| | | b=FF(b,c,d,a,x[k+7], S14,0xFD469501); |
| | | a=FF(a,b,c,d,x[k+8], S11,0x698098D8); |
| | | d=FF(d,a,b,c,x[k+9], S12,0x8B44F7AF); |
| | | c=FF(c,d,a,b,x[k+10],S13,0xFFFF5BB1); |
| | | b=FF(b,c,d,a,x[k+11],S14,0x895CD7BE); |
| | | a=FF(a,b,c,d,x[k+12],S11,0x6B901122); |
| | | d=FF(d,a,b,c,x[k+13],S12,0xFD987193); |
| | | c=FF(c,d,a,b,x[k+14],S13,0xA679438E); |
| | | b=FF(b,c,d,a,x[k+15],S14,0x49B40821); |
| | | a=GG(a,b,c,d,x[k+1], S21,0xF61E2562); |
| | | d=GG(d,a,b,c,x[k+6], S22,0xC040B340); |
| | | c=GG(c,d,a,b,x[k+11],S23,0x265E5A51); |
| | | b=GG(b,c,d,a,x[k+0], S24,0xE9B6C7AA); |
| | | a=GG(a,b,c,d,x[k+5], S21,0xD62F105D); |
| | | d=GG(d,a,b,c,x[k+10],S22,0x2441453); |
| | | c=GG(c,d,a,b,x[k+15],S23,0xD8A1E681); |
| | | b=GG(b,c,d,a,x[k+4], S24,0xE7D3FBC8); |
| | | a=GG(a,b,c,d,x[k+9], S21,0x21E1CDE6); |
| | | d=GG(d,a,b,c,x[k+14],S22,0xC33707D6); |
| | | c=GG(c,d,a,b,x[k+3], S23,0xF4D50D87); |
| | | b=GG(b,c,d,a,x[k+8], S24,0x455A14ED); |
| | | a=GG(a,b,c,d,x[k+13],S21,0xA9E3E905); |
| | | d=GG(d,a,b,c,x[k+2], S22,0xFCEFA3F8); |
| | | c=GG(c,d,a,b,x[k+7], S23,0x676F02D9); |
| | | b=GG(b,c,d,a,x[k+12],S24,0x8D2A4C8A); |
| | | a=HH(a,b,c,d,x[k+5], S31,0xFFFA3942); |
| | | d=HH(d,a,b,c,x[k+8], S32,0x8771F681); |
| | | c=HH(c,d,a,b,x[k+11],S33,0x6D9D6122); |
| | | b=HH(b,c,d,a,x[k+14],S34,0xFDE5380C); |
| | | a=HH(a,b,c,d,x[k+1], S31,0xA4BEEA44); |
| | | d=HH(d,a,b,c,x[k+4], S32,0x4BDECFA9); |
| | | c=HH(c,d,a,b,x[k+7], S33,0xF6BB4B60); |
| | | b=HH(b,c,d,a,x[k+10],S34,0xBEBFBC70); |
| | | a=HH(a,b,c,d,x[k+13],S31,0x289B7EC6); |
| | | d=HH(d,a,b,c,x[k+0], S32,0xEAA127FA); |
| | | c=HH(c,d,a,b,x[k+3], S33,0xD4EF3085); |
| | | b=HH(b,c,d,a,x[k+6], S34,0x4881D05); |
| | | a=HH(a,b,c,d,x[k+9], S31,0xD9D4D039); |
| | | d=HH(d,a,b,c,x[k+12],S32,0xE6DB99E5); |
| | | c=HH(c,d,a,b,x[k+15],S33,0x1FA27CF8); |
| | | b=HH(b,c,d,a,x[k+2], S34,0xC4AC5665); |
| | | a=II(a,b,c,d,x[k+0], S41,0xF4292244); |
| | | d=II(d,a,b,c,x[k+7], S42,0x432AFF97); |
| | | c=II(c,d,a,b,x[k+14],S43,0xAB9423A7); |
| | | b=II(b,c,d,a,x[k+5], S44,0xFC93A039); |
| | | a=II(a,b,c,d,x[k+12],S41,0x655B59C3); |
| | | d=II(d,a,b,c,x[k+3], S42,0x8F0CCC92); |
| | | c=II(c,d,a,b,x[k+10],S43,0xFFEFF47D); |
| | | b=II(b,c,d,a,x[k+1], S44,0x85845DD1); |
| | | a=II(a,b,c,d,x[k+8], S41,0x6FA87E4F); |
| | | d=II(d,a,b,c,x[k+15],S42,0xFE2CE6E0); |
| | | c=II(c,d,a,b,x[k+6], S43,0xA3014314); |
| | | b=II(b,c,d,a,x[k+13],S44,0x4E0811A1); |
| | | a=II(a,b,c,d,x[k+4], S41,0xF7537E82); |
| | | d=II(d,a,b,c,x[k+11],S42,0xBD3AF235); |
| | | c=II(c,d,a,b,x[k+2], S43,0x2AD7D2BB); |
| | | b=II(b,c,d,a,x[k+9], S44,0xEB86D391); |
| | | a=AddUnsigned(a,AA); b=AddUnsigned(b,BB); c=AddUnsigned(c,CC); d=AddUnsigned(d,DD); |
| | | } |
| | | // Step 5. Output the 128 bit digest |
| | | var temp= WordToHex(a)+WordToHex(b)+WordToHex(c)+WordToHex(d); |
| | | return temp.toLowerCase(); |
| | | } |
| | | |
| | | module.exports = { |
| | | hex_md5: MD5, |
| | | } |
| | | |