{"version":3,"sources":["webpack:///./src/views/Login/Login.vue?cab8","webpack:///./node_modules/nprogress/nprogress.js","webpack:///./src/api/index.js","webpack:///./src/views/Login/Login.vue","webpack:///./src/views/Login/Login.js","webpack:///./src/views/Login/Login.js?6c18","webpack:///./src/views/Login/Login.vue?cf9b"],"names":["root","factory","this","NProgress","Settings","settings","minimum","easing","positionUsing","speed","trickle","trickleRate","trickleSpeed","showSpinner","barSelector","spinnerSelector","parent","template","clamp","n","min","max","toBarPerc","barPositionCSS","ease","barCSS","transform","transition","configure","options","key","value","undefined","hasOwnProperty","status","set","started","isStarted","progress","render","bar","querySelector","offsetWidth","queue","next","getPositioningCSS","css","opacity","setTimeout","remove","start","work","done","force","inc","Math","random","amount","initial","current","promise","$promise","state","always","fromStart","isRendered","document","getElementById","addClass","documentElement","createElement","id","innerHTML","spinner","perc","removeElement","body","appendChild","removeClass","bodyStyle","style","vendorPrefix","pending","fn","shift","push","length","cssPrefixes","cssProps","camelCase","string","replace","match","letter","toUpperCase","getVendorProp","name","vendorName","i","capName","charAt","slice","getStyleProp","applyCss","element","prop","properties","args","arguments","hasClass","list","classList","indexOf","oldList","newList","className","substring","parentNode","removeChild","l","axios","interceptors","request","use","config","notLoading","Loading","service","error","Promise","reject","response","close","baseUrl","window","API","CancelToken","POST","url","params","o","_ref","showFlag","errAlert","timeout","defaults","post","concat","cancelToken","c","headers","then","data","Message","closeAll","catch","err","isCancel","console","log","message","_vm","_c","_self","_setupProxy","attrs","staticClass","_l","loopImgList","t","class","loopIdx","_v","_m","selectTitleList","_defineProperty","selectTitleActive","_s","model","username","callback","$$v","expression","password","on","$event","type","_k","keyCode","login","apply","sidentify","refreshCode","identifyCode","staticRenderFns","Vue","ElementUI","expiringDate","DEMO_EXPIRING_DATE","Date","getTime","components","SIdentify","show","identifyCodes","verson","VERSON","explain","content","ceil","mounted","makeCode","loop","methods","_this","loopInterval","setInterval","LOOP_INTERVAL","randomNum","floor","_this2","cusername","cpassword","nowTime","demoTime","$message","DEMO_EXPIRING_USER","title","LOGIN_API","resultObject","d","userToken","localStorage","setItem","$store","commit","$router","recordLoginInfo","$axios","action","keyLogin","e","component"],"mappings":"kHAAA,W,uBCAA;;mBAGC,SAAUA,EAAMC,GAGb,IAAc,qEAHjB,CAUEC,GAAM,WACP,IAAIC,EAAY,CAEhB,QAAoB,SAEhBC,EAAWD,EAAUE,SAAW,CAClCC,QAAS,IACTC,OAAQ,OACRC,cAAe,GACfC,MAAO,IACPC,SAAS,EACTC,YAAa,IACbC,aAAc,IACdC,aAAa,EACbC,YAAa,eACbC,gBAAiB,mBACjBC,OAAQ,OACRC,SAAU,uIA6QZ,SAASC,EAAMC,EAAGC,EAAKC,GACrB,OAAIF,EAAIC,EAAYA,EAChBD,EAAIE,EAAYA,EACbF,EAQT,SAASG,EAAUH,GACjB,OAAkB,MAAT,EAAIA,GASf,SAASI,EAAeJ,EAAGV,EAAOe,GAChC,IAAIC,EAYJ,OATEA,EAD6B,gBAA3BrB,EAASI,cACF,CAAEkB,UAAW,eAAeJ,EAAUH,GAAG,UACd,cAA3Bf,EAASI,cACT,CAAEkB,UAAW,aAAaJ,EAAUH,GAAG,QAEvC,CAAE,cAAeG,EAAUH,GAAG,KAGzCM,EAAOE,WAAa,OAAOlB,EAAM,MAAMe,EAEhCC,EArSTtB,EAAUyB,UAAY,SAASC,GAC7B,IAAIC,EAAKC,EACT,IAAKD,KAAOD,EACVE,EAAQF,EAAQC,QACFE,IAAVD,GAAuBF,EAAQI,eAAeH,KAAM1B,EAAS0B,GAAOC,GAG1E,OAAO7B,MAOTC,EAAU+B,OAAS,KASnB/B,EAAUgC,IAAM,SAAShB,GACvB,IAAIiB,EAAUjC,EAAUkC,YAExBlB,EAAID,EAAMC,EAAGf,EAASE,QAAS,GAC/BH,EAAU+B,OAAgB,IAANf,EAAU,KAAOA,EAErC,IAAImB,EAAWnC,EAAUoC,QAAQH,GAC7BI,EAAWF,EAASG,cAAcrC,EAASU,aAC3CL,EAAWL,EAASK,MACpBe,EAAWpB,EAASG,OAkCxB,OAhCA+B,EAASI,YAETC,GAAM,SAASC,GAEkB,KAA3BxC,EAASI,gBAAsBJ,EAASI,cAAgBL,EAAU0C,qBAGtEC,EAAIN,EAAKjB,EAAeJ,EAAGV,EAAOe,IAExB,IAANL,GAEF2B,EAAIR,EAAU,CACZX,WAAY,OACZoB,QAAS,IAEXT,EAASI,YAETM,YAAW,WACTF,EAAIR,EAAU,CACZX,WAAY,OAASlB,EAAQ,YAC7BsC,QAAS,IAEXC,YAAW,WACT7C,EAAU8C,SACVL,MACCnC,KACFA,IAEHuC,WAAWJ,EAAMnC,MAIdP,MAGTC,EAAUkC,UAAY,WACpB,MAAmC,kBAArBlC,EAAU+B,QAU1B/B,EAAU+C,MAAQ,WACX/C,EAAU+B,QAAQ/B,EAAUgC,IAAI,GAErC,IAAIgB,EAAO,WACTH,YAAW,WACJ7C,EAAU+B,SACf/B,EAAUO,UACVyC,OACC/C,EAASQ,eAKd,OAFIR,EAASM,SAASyC,IAEfjD,MAeTC,EAAUiD,KAAO,SAASC,GACxB,OAAKA,GAAUlD,EAAU+B,OAElB/B,EAAUmD,IAAI,GAAM,GAAMC,KAAKC,UAAUrB,IAAI,GAFZjC,MAS1CC,EAAUmD,IAAM,SAASG,GACvB,IAAItC,EAAIhB,EAAU+B,OAElB,OAAKf,GAGmB,kBAAXsC,IACTA,GAAU,EAAItC,GAAKD,EAAMqC,KAAKC,SAAWrC,EAAG,GAAK,MAGnDA,EAAID,EAAMC,EAAIsC,EAAQ,EAAG,MAClBtD,EAAUgC,IAAIhB,IAPdhB,EAAU+C,SAWrB/C,EAAUO,QAAU,WAClB,OAAOP,EAAUmD,IAAIC,KAAKC,SAAWpD,EAASO,cAShD,WACE,IAAI+C,EAAU,EAAGC,EAAU,EAE3BxD,EAAUyD,QAAU,SAASC,GAC3B,OAAKA,GAAiC,aAArBA,EAASC,SAIV,IAAZH,GACFxD,EAAU+C,QAGZQ,IACAC,IAEAE,EAASE,QAAO,WACdJ,IACgB,IAAZA,GACAD,EAAU,EACVvD,EAAUiD,QAEVjD,EAAUgC,KAAKuB,EAAUC,GAAWD,MAInCxD,MApBEA,MALb,GAmCAC,EAAUoC,OAAS,SAASyB,GAC1B,GAAI7D,EAAU8D,aAAc,OAAOC,SAASC,eAAe,aAE3DC,EAASF,SAASG,gBAAiB,kBAEnC,IAAI/B,EAAW4B,SAASI,cAAc,OACtChC,EAASiC,GAAK,YACdjC,EAASkC,UAAYpE,EAASa,SAE9B,IAGIwD,EAHAjC,EAAWF,EAASG,cAAcrC,EAASU,aAC3C4D,EAAWV,EAAY,OAAS1C,EAAUnB,EAAU+B,QAAU,GAC9DlB,EAAWkD,SAASzB,cAAcrC,EAASY,QAkB/C,OAfA8B,EAAIN,EAAK,CACPb,WAAY,eACZD,UAAW,eAAiBgD,EAAO,WAGhCtE,EAASS,cACZ4D,EAAUnC,EAASG,cAAcrC,EAASW,iBAC1C0D,GAAWE,EAAcF,IAGvBzD,GAAUkD,SAASU,MACrBR,EAASpD,EAAQ,2BAGnBA,EAAO6D,YAAYvC,GACZA,GAOTnC,EAAU8C,OAAS,WACjB6B,EAAYZ,SAASG,gBAAiB,kBACtCS,EAAYZ,SAASzB,cAAcrC,EAASY,QAAS,2BACrD,IAAIsB,EAAW4B,SAASC,eAAe,aACvC7B,GAAYqC,EAAcrC,IAO5BnC,EAAU8D,WAAa,WACrB,QAASC,SAASC,eAAe,cAOnChE,EAAU0C,kBAAoB,WAE5B,IAAIkC,EAAYb,SAASU,KAAKI,MAG1BC,EAAgB,oBAAqBF,EAAa,SAClC,iBAAkBA,EAAa,MAC/B,gBAAiBA,EAAa,KAC9B,eAAgBA,EAAa,IAAM,GAEvD,OAAIE,EAAe,gBAAiBF,EAE3B,cACEE,EAAe,cAAeF,EAEhC,YAGA,UAiDX,IAAIpC,EAAQ,WACV,IAAIuC,EAAU,GAEd,SAAStC,IACP,IAAIuC,EAAKD,EAAQE,QACbD,GACFA,EAAGvC,GAIP,OAAO,SAASuC,GACdD,EAAQG,KAAKF,GACS,GAAlBD,EAAQI,QAAa1C,KAZjB,GAwBRE,EAAM,WACR,IAAIyC,EAAc,CAAE,SAAU,IAAK,MAAO,MACtCC,EAAc,GAElB,SAASC,EAAUC,GACjB,OAAOA,EAAOC,QAAQ,QAAS,OAAOA,QAAQ,gBAAgB,SAASC,EAAOC,GAC5E,OAAOA,EAAOC,iBAIlB,SAASC,EAAcC,GACrB,IAAIhB,EAAQd,SAASU,KAAKI,MAC1B,GAAIgB,KAAQhB,EAAO,OAAOgB,EAE1B,IAEIC,EAFAC,EAAIX,EAAYD,OAChBa,EAAUH,EAAKI,OAAO,GAAGN,cAAgBE,EAAKK,MAAM,GAExD,MAAOH,IAEL,GADAD,EAAaV,EAAYW,GAAKC,EAC1BF,KAAcjB,EAAO,OAAOiB,EAGlC,OAAOD,EAGT,SAASM,EAAaN,GAEpB,OADAA,EAAOP,EAAUO,GACVR,EAASQ,KAAUR,EAASQ,GAAQD,EAAcC,IAG3D,SAASO,EAASC,EAASC,EAAM1E,GAC/B0E,EAAOH,EAAaG,GACpBD,EAAQxB,MAAMyB,GAAQ1E,EAGxB,OAAO,SAASyE,EAASE,GACvB,IACID,EACA1E,EAFA4E,EAAOC,UAIX,GAAmB,GAAfD,EAAKrB,OACP,IAAKmB,KAAQC,EACX3E,EAAQ2E,EAAWD,QACLzE,IAAVD,GAAuB2E,EAAWzE,eAAewE,IAAOF,EAASC,EAASC,EAAM1E,QAGtFwE,EAASC,EAASG,EAAK,GAAIA,EAAK,KA9C5B,GAuDV,SAASE,EAASL,EAASR,GACzB,IAAIc,EAAyB,iBAAXN,EAAsBA,EAAUO,EAAUP,GAC5D,OAAOM,EAAKE,QAAQ,IAAMhB,EAAO,MAAQ,EAO3C,SAAS5B,EAASoC,EAASR,GACzB,IAAIiB,EAAUF,EAAUP,GACpBU,EAAUD,EAAUjB,EAEpBa,EAASI,EAASjB,KAGtBQ,EAAQW,UAAYD,EAAQE,UAAU,IAOxC,SAAStC,EAAY0B,EAASR,GAC5B,IACIkB,EADAD,EAAUF,EAAUP,GAGnBK,EAASL,EAASR,KAGvBkB,EAAUD,EAAQtB,QAAQ,IAAMK,EAAO,IAAK,KAG5CQ,EAAQW,UAAYD,EAAQE,UAAU,EAAGF,EAAQ5B,OAAS,IAS5D,SAASyB,EAAUP,GACjB,OAAQ,KAAOA,EAAQW,WAAa,IAAM,KAAKxB,QAAQ,QAAS,KAOlE,SAAShB,EAAc6B,GACrBA,GAAWA,EAAQa,YAAcb,EAAQa,WAAWC,YAAYd,GAGlE,OAAOrG,M,8FCldLoH,E,kEAGJC,IAAMC,aAAaC,QAAQC,KAAI,SAAUC,GAGvC,IAAMC,EAAeD,EAAfC,WAKN,OAHKA,IAAYN,EAAIO,aAAQC,WAE7B5H,IAAU+C,QACH0E,KACN,SAAUI,GAEX,OAAOC,QAAQC,OAAOF,MAIxBR,IAAMC,aAAaU,SAASR,KAAI,SAAUQ,GAMxC,OAHIZ,GAAGA,EAAEa,QACTjI,IAAUiD,OAEH+E,KACN,SAAUH,GAqBX,OApBIT,GAAGA,EAAEa,QAoBFH,QAAQC,OAAOF,MAGxB,IAAIK,EAAUC,OAAOC,IAgBfC,EAAchB,IAAMgB,YAGbC,EAAO,SAACC,EAAKC,EAAQC,GAChC,IAAAC,EAAkDD,GAAK,CAAEE,UAAU,EAAMjB,YAAY,EAAOkB,UAAU,GAAhGD,EAAQD,EAARC,SAAUjB,EAAUgB,EAAVhB,WAAYkB,EAAQF,EAARE,SAAUC,EAAOH,EAAPG,QAOtC,OALAF,GAAwB,IAAbA,EACXjB,EAAaA,IAAc,EAC3BkB,EAAWA,IAAY,EACvBC,EAAUA,GAAWxB,IAAMyB,SAASD,QAE7BxB,IAAM0B,KAAK,GAADC,OACZd,GAAOc,OAAGT,GACbC,EACA,CACES,YAAa,IAAIZ,GAAY,SAAkBa,GAC/BA,KAEhBC,QAAS,CACP,eAAgB,oBAElBzB,aACAmB,YAEDO,MAAK,SAACC,GAEL,OADAC,aAAQC,WACDF,KAENG,OAAM,SAAAC,GACHpC,IAAMqC,SAASD,IACjBE,QAAQC,IAAI,mBAAoBH,EAAII,c,yDCtGxCzH,G,UAAS,WAAkB,IAAI0H,EAAI/J,KAAKgK,EAAGD,EAAIE,MAAMD,GAAUD,EAAIE,MAAMC,YAAY,OAAOF,EAAG,MAAM,CAACG,MAAM,CAAC,GAAK,UAAU,CAACH,EAAG,MAAM,CAACI,YAAY,OAAOD,MAAM,CAAC,IAAM,gBAAgB,IAAM,MAAMH,EAAG,MAAM,CAACI,YAAY,YAAY,CAACJ,EAAG,MAAM,CAACI,YAAY,gBAAgBL,EAAIM,GAAIN,EAAIO,aAAa,SAASC,EAAEvE,GAAG,OAAOgE,EAAG,MAAM,CAACpI,IAAIoE,EAAEoE,YAAY,YAAYI,MAAM,CAAC,OAAUT,EAAIU,SAAWzE,IAAI,CAACgE,EAAG,MAAM,CAACI,YAAY,gBAAgBD,MAAM,CAAC,IAAMI,EAAE,IAAM,WAAU,GAAGP,EAAG,IAAI,CAACI,YAAY,WAAW,CAACL,EAAIW,GAAG,sJAAsJX,EAAIY,GAAG,KAAKX,EAAG,MAAM,CAACI,YAAY,aAAa,CAACL,EAAIY,GAAG,GAAGX,EAAG,MAAM,CAACI,YAAY,kBAAkB,CAACJ,EAAG,MAAM,CAACI,YAAY,gBAAgBL,EAAIM,GAAIN,EAAIa,iBAAiB,SAASL,GAAG,OAAOP,EAAG,MAAM,CAACpI,IAAI2I,EAAElG,GAAG+F,YAAY,cAAcI,MAAKK,8BAAA,GAAGN,EAAEtD,WAAY,GAAI,SAAUsD,EAAElG,IAAM0F,EAAIe,oBAAoB,CAACf,EAAIW,GAAGX,EAAIgB,GAAGR,EAAEzE,YAAW,GAAGkE,EAAG,MAAM,CAACI,YAAY,gBAAgB,CAACJ,EAAG,MAAM,CAACI,YAAY,aAAa,CAACJ,EAAG,MAAM,CAACI,YAAY,SAAS,CAACL,EAAIW,GAAG,SAASV,EAAG,MAAM,CAACI,YAAY,SAAS,CAACJ,EAAG,WAAW,CAACgB,MAAM,CAACnJ,MAAOkI,EAAIkB,SAAUC,SAAS,SAAUC,GAAMpB,EAAIkB,SAASE,GAAKC,WAAW,eAAe,KAAKpB,EAAG,MAAM,CAACI,YAAY,aAAa,CAACJ,EAAG,MAAM,CAACI,YAAY,SAAS,CAACL,EAAIW,GAAG,QAAQV,EAAG,MAAM,CAACI,YAAY,SAAS,CAACJ,EAAG,WAAW,CAACG,MAAM,CAAC,KAAO,YAAYa,MAAM,CAACnJ,MAAOkI,EAAIsB,SAAUH,SAAS,SAAUC,GAAMpB,EAAIsB,SAASF,GAAKC,WAAW,eAAe,KAAKpB,EAAG,MAAM,CAACI,YAAY,aAAa,CAACJ,EAAG,MAAM,CAACI,YAAY,SAAS,CAACL,EAAIW,GAAG,SAASV,EAAG,MAAM,CAACI,YAAY,QAAQkB,GAAG,CAAC,MAAQ,SAASC,GAAQ,OAAIA,EAAOC,KAAK1E,QAAQ,QAAQiD,EAAI0B,GAAGF,EAAOG,QAAQ,QAAQ,GAAGH,EAAO3J,IAAI,SAAgB,KAAYmI,EAAI4B,MAAMC,MAAM,KAAMlF,cAAc,CAACsD,EAAG,WAAW,CAACgB,MAAM,CAACnJ,MAAOkI,EAAI8B,UAAWX,SAAS,SAAUC,GAAMpB,EAAI8B,UAAUV,GAAKC,WAAW,gBAAgB,GAAGpB,EAAG,MAAM,CAACI,YAAY,YAAYkB,GAAG,CAAC,MAAQvB,EAAI+B,cAAc,CAAC9B,EAAG,YAAY,CAACG,MAAM,CAAC,aAAeJ,EAAIgC,cAAcT,GAAG,CAAC,MAAQvB,EAAI+B,gBAAgB,OAAO9B,EAAG,YAAY,CAACI,YAAY,YAAYkB,GAAG,CAAC,MAAQvB,EAAI4B,QAAQ,CAAC5B,EAAIW,GAAG,UAAU,GAAGV,EAAG,MAAM,CAACI,YAAY,sBAAsBJ,EAAG,MAAM,CAACI,YAAY,kBAEhrE4B,EAAkB,CAAC,WAAY,IAAIjC,EAAI/J,KAAKgK,EAAGD,EAAIE,MAAMD,GAAUD,EAAIE,MAAMC,YAAY,OAAOF,EAAG,MAAM,CAACI,YAAY,kBAAkB,CAACJ,EAAG,MAAM,CAACI,YAAY,aAAaJ,EAAG,MAAM,CAACI,YAAY,gBACpM,WAAY,IAAIL,EAAI/J,KAAKgK,EAAGD,EAAIE,MAAMD,GAAUD,EAAIE,MAAMC,YAAY,OAAOF,EAAG,MAAM,CAACI,YAAY,SAAS,CAACJ,EAAG,OAAO,CAACI,YAAY,MAAM,CAACL,EAAIW,GAAG,gBAAgBV,EAAG,OAAO,CAACI,YAAY,MAAM,CAACL,EAAIW,GAAG,kBAAkBV,EAAG,MAAM,CAACI,YAAY,UAAUD,MAAM,CAAC,IAAM,mBAAmB,IAAM,Y,0FCEjS8B,aAAIxE,IAAIyE,KAER,IAAMC,EAAgB/D,OAAOgE,oBAAsB,CACjD,eAAkB,IAAIC,KAAK,cAAcC,UACzC,KAAQ,IAAID,KAAK,cAAcC,WAGlB,GACbxG,KAAM,QACNyG,WAAY,CACVC,kBAEFlD,KAAI,WACF,MAAO,CACLmD,MAAM,EACNC,cAAe,sCACfX,aAAc,GAGdnB,gBAAiB,CACf,CAAE9E,KAAM,MAAOzB,GAAI,IAAK4C,UAAW,SACnC,CAAEnB,KAAM,MAAOzB,GAAI,IAAK4C,UAAW,aAErC6D,kBAAmB,IAEnBG,SAAU,GACVI,SAAU,GACVQ,UAAW,GAEXc,OAAQvE,OAAOwE,OAGftC,YAAa,CACX,kBACA,kBACA,kBACA,mBAYFG,QAAS,EAEToC,QAAS,CACP,CACEC,QAAS,CACP,QACA,uBACA,gGAGJ,CACEA,QAAS,CACPzJ,KAAK0J,MAAMZ,EAAa,SAAU,IAAIE,MAAOC,WAAa,IAAO,KAAO,KAAO,EAAI,WAAcjJ,KAAK0J,MAAMZ,EAAa,SAAU,IAAIE,MAAOC,WAAa,IAAO,KAAO,IAAM,IAAM,cACrL,aACA,qBAMVU,QAAO,WACLhN,KAAK+L,aAAe,GACpB/L,KAAKiN,SAASjN,KAAK0M,cAAe,GAElC1M,KAAKkN,QAEPC,QAAS,CAEPD,KAAI,WAAI,IAAAE,EAAA,KACNpN,KAAKqN,aAAeC,aAAY,WAC9BF,EAAK3C,UACD2C,EAAK3C,SAAW2C,EAAK9C,YAAYlF,SAAQgI,EAAK3C,QAAU,KAE3DrC,OAAOmF,eAAiB,MAE7BC,UAAS,SAACtM,EAAKC,GACb,OAAOkC,KAAKoK,MAAMpK,KAAKC,UAAYnC,EAAMD,GAAOA,IAElD4K,YAAW,WACT9L,KAAK+L,aAAe,GACpB/L,KAAKiN,SAASjN,KAAK0M,cAAe,IAEpCO,SAAQ,SAACvE,EAAGrB,GACV,IAAK,IAAIrB,EAAI,EAAGA,EAAIqB,EAAGrB,IACrBhG,KAAK+L,cAAgB/L,KAAK0M,cACxB1M,KAAKwN,UAAU,EAAGxN,KAAK0M,cAActH,UAI3CuG,MAAK,WAAG,IAAA+B,EAAA,KAEMC,EAER3N,KAFFiL,SACU2C,EACR5N,KADFqL,SAGEwC,GAAU,IAAIxB,MAAOC,UACrBwB,EAAW3B,GAAgB,GAE/B,GAAI0B,GAAWC,EAAS,SAAwB,QAAbH,EACjC3N,KAAK+N,SAAS,CAAEjE,QAAS,UAAW0B,KAAM,gBAD5C,CAMA,IAAA7C,EAA+BP,OAAO4F,oBAAsB,GAApD/C,EAAQtC,EAARsC,SAAUI,EAAQ1C,EAAR0C,SAClB,GACEsC,GAAa1C,GACb2C,GAAavC,EAuBf,GAAIrL,KAAK6L,YAAc7L,KAAK+L,aAC1B/L,KAAK+N,SAAS,CACZE,MAAO,KACPnE,QAAS,kBAGN,GAAiB,IAAb6D,GAAgC,IAAbC,EAC5B5N,KAAK+N,SAAS,CACZE,MAAO,KACPnE,QAAS,mBAEN,GAAiB,IAAb6D,EACT3N,KAAK+N,SAAS,CACZE,MAAO,KACPnE,QAAS,gBAEN,GAAiB,IAAb8D,EACT5N,KAAK+N,SAAS,CACZE,MAAO,KACPnE,QAAS,cAEN,CAEL,IAAIrB,EAAS,CAAEkF,YAAWC,aAG1BtG,IAAM0B,KAAMZ,OAAO8F,UAAY,2BAA2BzF,GAAQY,MAAK,SAAAC,GAErE,IAA+B,GAA3BA,EAAKA,KAAK6E,aACZT,EAAKK,SAAS,CAAEjE,QAAS,QAAS0B,KAAM,iBACnC,IAA+B,GAA3BlC,EAAKA,KAAK6E,aACnBT,EAAKK,SAAS,CAAEjE,QAAS,OAAQ0B,KAAM,gBAClC,CACLkC,EAAKK,SAAS,CAAEjE,QAAS,OAAS0B,KAAM,YAExC,IAAI4C,EAAI9E,EAAKA,KAAK6E,aAGhBE,EAEED,EAFFC,UACAV,EACES,EADFT,UAGFW,aAAaC,QAAQ,mBAAoBF,GAEzCX,EAAKc,OAAOC,OAAO,cAAe,CAAEd,cAEpCD,EAAKgB,QAAQvJ,KAAK,gBAElBuI,EAAKiB,2BApELb,EAAS7C,GAAY4C,GACvBS,aAAaC,QAAQ,mBAAoB,QAEzCvO,KAAKwO,OAAOC,OAAO,cAAe,CAAEd,cAEpC3N,KAAK0O,QAAQvJ,KAAK,iBAKlBnF,KAAK+N,SAAS,CACZvC,KAAM,UACN1B,QAAS,qBA+DjB6E,gBAAe,WACb3O,KAAK4O,OAAO5F,KAAMZ,OAAO8F,UAAY,oCAAqC,CAACW,OAAQ,QAGrFC,SAAQ,SAACC,GACW,KAAdA,EAAErD,SAAiB1L,KAAK2L,WC3MmS,I,wBCQjUqD,EAAY,eACd,EACA,EACAhD,GACA,EACA,KACA,KACA,MAIa,aAAAgD,E","file":"js/chunk-0757f37d.1721352590535.js","sourcesContent":["export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Login.vue?vue&type=style&index=0&id=fb15b098&prod&lang=scss\"","/* NProgress, (c) 2013, 2014 Rico Sta. Cruz - http://ricostacruz.com/nprogress\n * @license MIT */\n\n;(function(root, factory) {\n\n if (typeof define === 'function' && define.amd) {\n define(factory);\n } else if (typeof exports === 'object') {\n module.exports = factory();\n } else {\n root.NProgress = factory();\n }\n\n})(this, function() {\n var NProgress = {};\n\n NProgress.version = '0.2.0';\n\n var Settings = NProgress.settings = {\n minimum: 0.08,\n easing: 'ease',\n positionUsing: '',\n speed: 200,\n trickle: true,\n trickleRate: 0.02,\n trickleSpeed: 800,\n showSpinner: true,\n barSelector: '[role=\"bar\"]',\n spinnerSelector: '[role=\"spinner\"]',\n parent: 'body',\n template: '
'\n };\n\n /**\n * Updates configuration.\n *\n * NProgress.configure({\n * minimum: 0.1\n * });\n */\n NProgress.configure = function(options) {\n var key, value;\n for (key in options) {\n value = options[key];\n if (value !== undefined && options.hasOwnProperty(key)) Settings[key] = value;\n }\n\n return this;\n };\n\n /**\n * Last number.\n */\n\n NProgress.status = null;\n\n /**\n * Sets the progress bar status, where `n` is a number from `0.0` to `1.0`.\n *\n * NProgress.set(0.4);\n * NProgress.set(1.0);\n */\n\n NProgress.set = function(n) {\n var started = NProgress.isStarted();\n\n n = clamp(n, Settings.minimum, 1);\n NProgress.status = (n === 1 ? null : n);\n\n var progress = NProgress.render(!started),\n bar = progress.querySelector(Settings.barSelector),\n speed = Settings.speed,\n ease = Settings.easing;\n\n progress.offsetWidth; /* Repaint */\n\n queue(function(next) {\n // Set positionUsing if it hasn't already been set\n if (Settings.positionUsing === '') Settings.positionUsing = NProgress.getPositioningCSS();\n\n // Add transition\n css(bar, barPositionCSS(n, speed, ease));\n\n if (n === 1) {\n // Fade out\n css(progress, { \n transition: 'none', \n opacity: 1 \n });\n progress.offsetWidth; /* Repaint */\n\n setTimeout(function() {\n css(progress, { \n transition: 'all ' + speed + 'ms linear', \n opacity: 0 \n });\n setTimeout(function() {\n NProgress.remove();\n next();\n }, speed);\n }, speed);\n } else {\n setTimeout(next, speed);\n }\n });\n\n return this;\n };\n\n NProgress.isStarted = function() {\n return typeof NProgress.status === 'number';\n };\n\n /**\n * Shows the progress bar.\n * This is the same as setting the status to 0%, except that it doesn't go backwards.\n *\n * NProgress.start();\n *\n */\n NProgress.start = function() {\n if (!NProgress.status) NProgress.set(0);\n\n var work = function() {\n setTimeout(function() {\n if (!NProgress.status) return;\n NProgress.trickle();\n work();\n }, Settings.trickleSpeed);\n };\n\n if (Settings.trickle) work();\n\n return this;\n };\n\n /**\n * Hides the progress bar.\n * This is the *sort of* the same as setting the status to 100%, with the\n * difference being `done()` makes some placebo effect of some realistic motion.\n *\n * NProgress.done();\n *\n * If `true` is passed, it will show the progress bar even if its hidden.\n *\n * NProgress.done(true);\n */\n\n NProgress.done = function(force) {\n if (!force && !NProgress.status) return this;\n\n return NProgress.inc(0.3 + 0.5 * Math.random()).set(1);\n };\n\n /**\n * Increments by a random amount.\n */\n\n NProgress.inc = function(amount) {\n var n = NProgress.status;\n\n if (!n) {\n return NProgress.start();\n } else {\n if (typeof amount !== 'number') {\n amount = (1 - n) * clamp(Math.random() * n, 0.1, 0.95);\n }\n\n n = clamp(n + amount, 0, 0.994);\n return NProgress.set(n);\n }\n };\n\n NProgress.trickle = function() {\n return NProgress.inc(Math.random() * Settings.trickleRate);\n };\n\n /**\n * Waits for all supplied jQuery promises and\n * increases the progress as the promises resolve.\n *\n * @param $promise jQUery Promise\n */\n (function() {\n var initial = 0, current = 0;\n\n NProgress.promise = function($promise) {\n if (!$promise || $promise.state() === \"resolved\") {\n return this;\n }\n\n if (current === 0) {\n NProgress.start();\n }\n\n initial++;\n current++;\n\n $promise.always(function() {\n current--;\n if (current === 0) {\n initial = 0;\n NProgress.done();\n } else {\n NProgress.set((initial - current) / initial);\n }\n });\n\n return this;\n };\n\n })();\n\n /**\n * (Internal) renders the progress bar markup based on the `template`\n * setting.\n */\n\n NProgress.render = function(fromStart) {\n if (NProgress.isRendered()) return document.getElementById('nprogress');\n\n addClass(document.documentElement, 'nprogress-busy');\n \n var progress = document.createElement('div');\n progress.id = 'nprogress';\n progress.innerHTML = Settings.template;\n\n var bar = progress.querySelector(Settings.barSelector),\n perc = fromStart ? '-100' : toBarPerc(NProgress.status || 0),\n parent = document.querySelector(Settings.parent),\n spinner;\n \n css(bar, {\n transition: 'all 0 linear',\n transform: 'translate3d(' + perc + '%,0,0)'\n });\n\n if (!Settings.showSpinner) {\n spinner = progress.querySelector(Settings.spinnerSelector);\n spinner && removeElement(spinner);\n }\n\n if (parent != document.body) {\n addClass(parent, 'nprogress-custom-parent');\n }\n\n parent.appendChild(progress);\n return progress;\n };\n\n /**\n * Removes the element. Opposite of render().\n */\n\n NProgress.remove = function() {\n removeClass(document.documentElement, 'nprogress-busy');\n removeClass(document.querySelector(Settings.parent), 'nprogress-custom-parent');\n var progress = document.getElementById('nprogress');\n progress && removeElement(progress);\n };\n\n /**\n * Checks if the progress bar is rendered.\n */\n\n NProgress.isRendered = function() {\n return !!document.getElementById('nprogress');\n };\n\n /**\n * Determine which positioning CSS rule to use.\n */\n\n NProgress.getPositioningCSS = function() {\n // Sniff on document.body.style\n var bodyStyle = document.body.style;\n\n // Sniff prefixes\n var vendorPrefix = ('WebkitTransform' in bodyStyle) ? 'Webkit' :\n ('MozTransform' in bodyStyle) ? 'Moz' :\n ('msTransform' in bodyStyle) ? 'ms' :\n ('OTransform' in bodyStyle) ? 'O' : '';\n\n if (vendorPrefix + 'Perspective' in bodyStyle) {\n // Modern browsers with 3D support, e.g. Webkit, IE10\n return 'translate3d';\n } else if (vendorPrefix + 'Transform' in bodyStyle) {\n // Browsers without 3D support, e.g. IE9\n return 'translate';\n } else {\n // Browsers without translate() support, e.g. IE7-8\n return 'margin';\n }\n };\n\n /**\n * Helpers\n */\n\n function clamp(n, min, max) {\n if (n < min) return min;\n if (n > max) return max;\n return n;\n }\n\n /**\n * (Internal) converts a percentage (`0..1`) to a bar translateX\n * percentage (`-100%..0%`).\n */\n\n function toBarPerc(n) {\n return (-1 + n) * 100;\n }\n\n\n /**\n * (Internal) returns the correct CSS for changing the bar's\n * position given an n percentage, and speed and ease from Settings\n */\n\n function barPositionCSS(n, speed, ease) {\n var barCSS;\n\n if (Settings.positionUsing === 'translate3d') {\n barCSS = { transform: 'translate3d('+toBarPerc(n)+'%,0,0)' };\n } else if (Settings.positionUsing === 'translate') {\n barCSS = { transform: 'translate('+toBarPerc(n)+'%,0)' };\n } else {\n barCSS = { 'margin-left': toBarPerc(n)+'%' };\n }\n\n barCSS.transition = 'all '+speed+'ms '+ease;\n\n return barCSS;\n }\n\n /**\n * (Internal) Queues a function to be executed.\n */\n\n var queue = (function() {\n var pending = [];\n \n function next() {\n var fn = pending.shift();\n if (fn) {\n fn(next);\n }\n }\n\n return function(fn) {\n pending.push(fn);\n if (pending.length == 1) next();\n };\n })();\n\n /**\n * (Internal) Applies css properties to an element, similar to the jQuery \n * css method.\n *\n * While this helper does assist with vendor prefixed property names, it \n * does not perform any manipulation of values prior to setting styles.\n */\n\n var css = (function() {\n var cssPrefixes = [ 'Webkit', 'O', 'Moz', 'ms' ],\n cssProps = {};\n\n function camelCase(string) {\n return string.replace(/^-ms-/, 'ms-').replace(/-([\\da-z])/gi, function(match, letter) {\n return letter.toUpperCase();\n });\n }\n\n function getVendorProp(name) {\n var style = document.body.style;\n if (name in style) return name;\n\n var i = cssPrefixes.length,\n capName = name.charAt(0).toUpperCase() + name.slice(1),\n vendorName;\n while (i--) {\n vendorName = cssPrefixes[i] + capName;\n if (vendorName in style) return vendorName;\n }\n\n return name;\n }\n\n function getStyleProp(name) {\n name = camelCase(name);\n return cssProps[name] || (cssProps[name] = getVendorProp(name));\n }\n\n function applyCss(element, prop, value) {\n prop = getStyleProp(prop);\n element.style[prop] = value;\n }\n\n return function(element, properties) {\n var args = arguments,\n prop, \n value;\n\n if (args.length == 2) {\n for (prop in properties) {\n value = properties[prop];\n if (value !== undefined && properties.hasOwnProperty(prop)) applyCss(element, prop, value);\n }\n } else {\n applyCss(element, args[1], args[2]);\n }\n }\n })();\n\n /**\n * (Internal) Determines if an element or space separated list of class names contains a class name.\n */\n\n function hasClass(element, name) {\n var list = typeof element == 'string' ? element : classList(element);\n return list.indexOf(' ' + name + ' ') >= 0;\n }\n\n /**\n * (Internal) Adds a class to an element.\n */\n\n function addClass(element, name) {\n var oldList = classList(element),\n newList = oldList + name;\n\n if (hasClass(oldList, name)) return; \n\n // Trim the opening space.\n element.className = newList.substring(1);\n }\n\n /**\n * (Internal) Removes a class from an element.\n */\n\n function removeClass(element, name) {\n var oldList = classList(element),\n newList;\n\n if (!hasClass(element, name)) return;\n\n // Replace the class name.\n newList = oldList.replace(' ' + name + ' ', ' ');\n\n // Trim the opening and closing spaces.\n element.className = newList.substring(1, newList.length - 1);\n }\n\n /**\n * (Internal) Gets a space separated list of the class names on the element. \n * The list is wrapped with a single space on each end to facilitate finding \n * matches within the list.\n */\n\n function classList(element) {\n return (' ' + (element.className || '') + ' ').replace(/\\s+/gi, ' ');\n }\n\n /**\n * (Internal) Removes an element from the DOM.\n */\n\n function removeElement(element) {\n element && element.parentNode && element.parentNode.removeChild(element);\n }\n\n return NProgress;\n});\n\n","import axios from 'axios';\r\nimport NProgress from 'nprogress'\r\nimport * as vue from '../main.js'\r\n// import router from '../router'\r\nimport { Loading, Message } from 'element-ui'\r\n\r\n\r\nlet l\r\n\r\n// 添加请求拦截器\r\naxios.interceptors.request.use(function (config) {\r\n // 在发送请求之前做些什么;\r\n\r\n let { notLoading } = config\r\n\r\n if (!notLoading) l = Loading.service()\r\n\r\n NProgress.start()\r\n return config;\r\n}, function (error) {\r\n // 对请求错误做些什么\r\n return Promise.reject(error);\r\n});\r\n\r\n// 添加响应拦截器\r\naxios.interceptors.response.use(function (response) {\r\n // 对响应数据做点什么;\r\n\r\n if (l) l.close()\r\n NProgress.done()\r\n\r\n return response;\r\n}, function (error) {\r\n if (l) l.close()\r\n\r\n // 对响应错误做点什么\r\n // if (error && error.response) {\r\n // switch (error.response.status) {\r\n // case 404:\r\n // router.push({name:'404'});\r\n // // error.message = '请求出错(404)'\r\n // break;\r\n\r\n // case 500:\r\n\r\n // router.push({ name:'500'});\r\n // // error.message = '服务器错误(500)';\r\n // break;\r\n\r\n // default: error.message = `连接出错(${error.response.status})!`;\r\n // }\r\n // }\r\n\r\n return Promise.reject(error);\r\n});\r\n\r\nlet baseUrl = window.API\r\n\r\nexport const GET = (url, params) => {\r\n return axios.get(`${baseUrl}${url}`, { params: params }).then((data) => { return data })\r\n}\r\n\r\n// export const POST = (url, params) => {\r\n// return axios.post(`${baseUrl}${url}`, params, {\r\n// headers: {\r\n// \"content-type\": \"application/json\"\r\n// }\r\n// })\r\n// .then((data) => {\r\n// return data\r\n// })\r\n// }\r\nconst CancelToken = axios.CancelToken;\r\n\r\nexport let axiosCancel\r\nexport const POST = (url, params, o) => {\r\n let { showFlag, notLoading, errAlert, timeout } = o || { showFlag: true, notLoading: false, errAlert: false }\r\n\r\n showFlag = showFlag === false ? false : true\r\n notLoading = notLoading || false\r\n errAlert = errAlert || false\r\n timeout = timeout || axios.defaults.timeout\r\n\r\n return axios.post(\r\n `${baseUrl}${url}`,\r\n params,\r\n {\r\n cancelToken: new CancelToken(function executor(c) {\r\n axiosCancel = c;\r\n }),\r\n headers: {\r\n \"content-type\": \"application/json\"\r\n },\r\n notLoading,\r\n timeout,\r\n })\r\n .then((data) => {\r\n Message.closeAll()\r\n return data\r\n\r\n }).catch(err => {\r\n if (axios.isCancel(err)) {\r\n console.log('request canceled', err.message)\r\n }\r\n })\r\n}\r\n\r\nexport const POSTFILE = (url, params) => {\r\n return axios.post(`${baseUrl}${url}`, params,\r\n {\r\n headers: { appToken: localStorage.getItem('appToken'), projectId: localStorage.getItem('projectId'), 'Content-Type': 'multipart/form-data' }\r\n })\r\n .then((data) => { return data })\r\n}\r\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{attrs:{\"id\":\"login\"}},[_c('img',{staticClass:\"logo\",attrs:{\"src\":\"/img/logo.png\",\"alt\":\"\"}}),_c('div',{staticClass:\"loop-box\"},[_c('div',{staticClass:\"loop-box-img\"},_vm._l((_vm.loopImgList),function(t,i){return _c('div',{key:i,staticClass:\"loop-item\",class:{'active': _vm.loopIdx == i}},[_c('img',{staticClass:\"loop-item-img\",attrs:{\"src\":t,\"alt\":\"\"}})])}),0),_c('p',{staticClass:\"explain\"},[_vm._v(\"Simulation®极大程度的还原了能源中心冷冻站房的运行特点,能够在能源站设计、建造或改造、优化过程中,建立多种不同的设备配置,根据不同室外气象参数、不同的负荷需求、得出各个单点工况的系统能耗,并获得全年8760h系统运行数据,从而计算出最佳高效机房运行策略,降低运行过程中的碳排放。\")]),_vm._m(0)]),_c('div',{staticClass:\"login-box\"},[_vm._m(1),_c('div',{staticClass:\"login-box-main\"},[_c('div',{staticClass:\"title-select\"},_vm._l((_vm.selectTitleList),function(t){return _c('div',{key:t.id,staticClass:\"select-item\",class:{[t.className]: true, active: t.id == _vm.selectTitleActive}},[_vm._v(_vm._s(t.name))])}),0),_c('div',{staticClass:\"main-content\"},[_c('div',{staticClass:\"input-box\"},[_c('div',{staticClass:\"label\"},[_vm._v(\"用户名\")]),_c('div',{staticClass:\"value\"},[_c('el-input',{model:{value:(_vm.username),callback:function ($$v) {_vm.username=$$v},expression:\"username\"}})],1)]),_c('div',{staticClass:\"input-box\"},[_c('div',{staticClass:\"label\"},[_vm._v(\"密码\")]),_c('div',{staticClass:\"value\"},[_c('el-input',{attrs:{\"type\":\"password\"},model:{value:(_vm.password),callback:function ($$v) {_vm.password=$$v},expression:\"password\"}})],1)]),_c('div',{staticClass:\"input-box\"},[_c('div',{staticClass:\"label\"},[_vm._v(\"验证码\")]),_c('div',{staticClass:\"value\",on:{\"keyup\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"enter\",13,$event.key,\"Enter\"))return null;return _vm.login.apply(null, arguments)}}},[_c('el-input',{model:{value:(_vm.sidentify),callback:function ($$v) {_vm.sidentify=$$v},expression:\"sidentify\"}})],1),_c('div',{staticClass:\"coderight\",on:{\"click\":_vm.refreshCode}},[_c('SIdentify',{attrs:{\"identifyCode\":_vm.identifyCode},on:{\"click\":_vm.refreshCode}})],1)])]),_c('el-button',{staticClass:\"login-btn\",on:{\"click\":_vm.login}},[_vm._v(\"登 录\")])],1),_c('div',{staticClass:\"login-box-other\"})]),_c('div',{staticClass:\"copyright\"})])\n}\nvar staticRenderFns = [function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"loop-box-other\"},[_c('div',{staticClass:\"bottom-l\"}),_c('div',{staticClass:\"bottom-r\"})])\n},function (){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',{staticClass:\"title\"},[_c('span',{staticClass:\"cn\"},[_vm._v(\"高效机房能耗仿真系统\")]),_c('span',{staticClass:\"en\"},[_vm._v(\" ——Simulation \"),_c('img',{staticClass:\"favicon\",attrs:{\"src\":\"/img/favicon.png\",\"alt\":\"\"}})])])\n}]\n\nexport { render, staticRenderFns }","import SIdentify from \"../../untils/SIdentify/SIdentify\";\r\nimport * as loginUtil from './api/LoginUtil'\r\nimport Vue from 'vue'\r\nimport ElementUI from 'element-ui';\r\nimport axios from 'axios'\r\nVue.use(ElementUI)\r\n\r\nconst expiringDate = window.DEMO_EXPIRING_DATE || { \r\n 'simulation2022': new Date('2024-07-29').getTime(), \r\n 'demo': new Date('2025-07-19').getTime(),\r\n}\r\n\r\nexport default {\r\n name: \"Login\",\r\n components: {\r\n SIdentify\r\n },\r\n data() {\r\n return {\r\n show: true,\r\n identifyCodes: \"1234567890qweasdzxcrtyfghvbnuiojklm\",\r\n identifyCode: \"\",\r\n\r\n /* login */\r\n selectTitleList: [\r\n { name: '登 录', id: '0', className: 'login' },\r\n { name: '注 册', id: '1', className: 'register' },\r\n ],\r\n selectTitleActive: '0',\r\n\r\n username: '',\r\n password: '',\r\n sidentify: '',\r\n\r\n verson: window.VERSON,\r\n\r\n // 轮播图\r\n loopImgList: [\r\n '/img/loop/1.png',\r\n '/img/loop/2.png',\r\n '/img/loop/3.png',\r\n '/img/loop/4.png',\r\n // '/img/loop/5.png',\r\n // '/img/loop/6.png',\r\n // '/img/loop/7.png',\r\n // '/img/loop/8.png',\r\n // '/img/loop/9.png',\r\n // '/img/loop/10.png',\r\n // '/img/loop/11.png',\r\n // '/img/loop/12.png',\r\n // '/img/loop/13.png',\r\n // '/img/loop/14.png',\r\n ],\r\n loopIdx: 0,\r\n\r\n explain: [\r\n {\r\n content: [\r\n '试运行阶段',\r\n '联系方式:陈经理 18068335587',\r\n '公司官网:www.enercomn.com',\r\n ],\r\n },\r\n {\r\n content: [\r\n Math.ceil((expiringDate['demo'] - new Date().getTime()) / 1000 / 3600 / 24) >= 1 ? '试用剩余时间: ' + Math.ceil((expiringDate['demo'] - new Date().getTime()) / 1000 / 3600 / 24) + '天' : '试用剩余时间: 已到期',\r\n '试用账号: demo',\r\n '试用密码: Demo123',\r\n ],\r\n },\r\n ],\r\n };\r\n },\r\n mounted() {\r\n this.identifyCode = \"\";\r\n this.makeCode(this.identifyCodes, 4);\r\n\r\n this.loop()\r\n },\r\n methods: {\r\n\r\n loop () {\r\n this.loopInterval = setInterval(() => {\r\n this.loopIdx ++\r\n if (this.loopIdx >= this.loopImgList.length) this.loopIdx = 0\r\n\r\n }, window.LOOP_INTERVAL || 3000)\r\n },\r\n randomNum(min, max) {\r\n return Math.floor(Math.random() * (max - min) + min);\r\n },\r\n refreshCode() {\r\n this.identifyCode = \"\";\r\n this.makeCode(this.identifyCodes, 4);\r\n },\r\n makeCode(o, l) {\r\n for (let i = 0; i < l; i++) {\r\n this.identifyCode += this.identifyCodes[\r\n this.randomNum(0, this.identifyCodes.length)\r\n ];\r\n }\r\n },\r\n login() {\r\n let {\r\n username: cusername,\r\n password: cpassword,\r\n } = this\r\n\r\n let nowTime = new Date().getTime()\r\n let demoTime = expiringDate || {}\r\n\r\n if (nowTime >= demoTime['demo'] && cusername == 'demo') {\r\n this.$message({ message: '试用账号已到期', type: 'warning' })\r\n return\r\n }\r\n\r\n /* 自定义demo账号 */\r\n const { username, password } = window.DEMO_EXPIRING_USER || {}\r\n if (\r\n cusername == username &&\r\n cpassword == password\r\n ) {\r\n\r\n if (demoTime[username] > nowTime) {\r\n localStorage.setItem(\"enersum-appToken\", 'demo');\r\n\r\n this.$store.commit('setUserInfo', { cusername })\r\n \r\n this.$router.push('/coldStation')\r\n\r\n }\r\n\r\n else {\r\n this.$message({\r\n type: 'warning',\r\n message: \"该用户已过期, 请联系管理员\",\r\n });\r\n }\r\n\r\n return\r\n }\r\n \r\n //客户端先验证验证码是否正确减小对服务器请求的开销\r\n if (this.sidentify !== this.identifyCode) {\r\n this.$message({\r\n title: \"提示\",\r\n message: \"请输入正确验证码\",\r\n });\r\n //判断用户名和密码是否为空\r\n } else if (cusername == \"\" && cpassword == \"\") {\r\n this.$message({\r\n title: \"提示\",\r\n message: \"请输入用户名和密码\",\r\n });\r\n } else if (cusername == \"\") {\r\n this.$message({\r\n title: \"提示\",\r\n message: \"请输入用户名\",\r\n });\r\n } else if (cpassword == \"\") {\r\n this.$message({\r\n title: \"提示\",\r\n message: \"请输入密码\",\r\n });\r\n } else {\r\n\r\n let params = { cusername, cpassword }\r\n //cusername: 是前后端商量好的参数 冒号后面的是变量名\r\n //将请求的参数传给loginPost方法,.then后面的是后台返回的数据\r\n axios.post( window.LOGIN_API + '/A01Login/selectUserInfo',params).then(data => {\r\n \r\n if (data.data.resultObject == -1) {\r\n this.$message({ message: '用户名错误', type: 'warning' })\r\n } else if (data.data.resultObject == -2) {\r\n this.$message({ message: '密码错误', type: 'warning' })\r\n } else {\r\n this.$message({ message: '登录成功', type: 'success' })\r\n\r\n let d = data.data.resultObject\r\n\r\n let {\r\n userToken,\r\n cusername\r\n } = d\r\n\r\n localStorage.setItem(\"enersum-appToken\", userToken);\r\n \r\n this.$store.commit('setUserInfo', { cusername })\r\n\r\n this.$router.push('/coldStation')\r\n\r\n this.recordLoginInfo() // 记录登录\r\n }\r\n\r\n })\r\n }\r\n },\r\n\r\n recordLoginInfo () {\r\n this.$axios.post( window.LOGIN_API + '/A98SpecialAction/recordLoginInfo', {action: '登录'} )\r\n },\r\n\r\n keyLogin(e) {\r\n if( e.keyCode === 13 ) this.login()\r\n }\r\n }\r\n};","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../node_modules/eslint-loader/index.js??ref--14-0!./Login.js?vue&type=script&lang=js&external\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--13-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../node_modules/eslint-loader/index.js??ref--14-0!./Login.js?vue&type=script&lang=js&external\"","import { render, staticRenderFns } from \"./Login.vue?vue&type=template&id=fb15b098\"\nimport script from \"./Login.js?vue&type=script&lang=js&external\"\nexport * from \"./Login.js?vue&type=script&lang=js&external\"\nimport style0 from \"./Login.vue?vue&type=style&index=0&id=fb15b098&prod&lang=scss\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}