From 7514a2e5284447ccf222287938ce9646eea6767d Mon Sep 17 00:00:00 2001 From: DongZeLiang <2746733890@qq.com> Date: Tue, 11 Jun 2024 21:21:15 +0800 Subject: [PATCH] =?UTF-8?q?feat():=20=E4=B8=80=E9=94=AE=E6=93=8D=E4=BD=9C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- db/vehicleSimulationDataBaseFile.mv.db | Bin 286720 -> 270336 bytes .../com/muyu/vehicle/core/LocalContainer.java | 10 ++ .../com/muyu/web/config/LoadServerConfig.java | 4 - .../com/muyu/web/domain/model/TaskModel.java | 38 +++++++- .../impl/VehicleUnifiedServiceImpl.java | 87 +++++++++++++++++- .../static/css/chunk-cd3ab578.5a7a63c7.css | 1 - src/main/resources/static/index.html | 2 +- src/main/resources/static/js/app.a7bceb97.js | 1 - .../static/js/chunk-cd3ab578.ba31bb9e.js | 1 - src/test/java/com/AdminTest.java | 34 ------- 10 files changed, 132 insertions(+), 46 deletions(-) delete mode 100644 src/main/resources/static/css/chunk-cd3ab578.5a7a63c7.css delete mode 100644 src/main/resources/static/js/app.a7bceb97.js delete mode 100644 src/main/resources/static/js/chunk-cd3ab578.ba31bb9e.js delete mode 100644 src/test/java/com/AdminTest.java diff --git a/db/vehicleSimulationDataBaseFile.mv.db b/db/vehicleSimulationDataBaseFile.mv.db index 517716c260f2533244be6480886cba97b8634f7c..b04942b7671a0a4d15ac065dfda9e744896081c7 100644 GIT binary patch delta 21008 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 delta 8613 zcmeHMZEPIH8J^p_T+U}hY?9y*n#2w!7;~82*`3+lQxOhHAfkLEAy8Ck$?ohdB#rGf zBotc2IckL{q!d^u*AJCas(wMgA_As=T34-T)Iy;uYWuTD{nH3Q?CdV~ zB_t-QsKiOW+40`)y!+1kKF{;MJ2l%oHQTp#a}zhh-IMH-O{&K0cYcO9Ez>j`?DqW= z@b5>~Ua*{!M!cKvW4H6YP0PUn_I;;*B>2XX*L3w$J6#+%cJqm*)ff-< zG;K3kwPRJo@)%fQn#7Ep#=f27yy@VGxE^lY$@ku|b8?~ySMQr-O(%AfBbQv2{A5S9 z>rJ${f>y0wGm!jz$2tA8rCJ}Vln#v{Lw>K4-)oXzn46oG(#++h)$)4)q4H5<+CaUi zCLel~MEW3352&RNaPq0(hSoPr$~`2~PY|d_V2#~7@8s76cQvuYh$&}Vg4_5V%|JdK z<}koX3J=!UBTqz)y_1vsnwIOp<5KPimVRK%k2rN2`zQ9_!K3y2ZcHDX@X^c(V1RIf z6>`&VOft5APcXsmZkm?mWj4miDz>5pH!oO&Q(sGKESs8*34Yf;hyrDkqivF#V29Ml z=_Xiyj4_*UQ=FR=E0Zkd7cA;FgQrrb(d4DzqTQxk+79QeY^N)G!W(k?^~yMmB8#Le z%V;2;KhF?qWro0^3=qd^|DGDl>okk?IQSDF#EpNFLm9 zb-L9GbOtK@qv$QPxGG_1aIJ(G2`d0W{cG+)zb@65b^syyyFmd(V?`*E$7>}ZJ$Pb3 z!Wxk54*+RFfV8XtNF9LT+S3aR5`heAC$nrML!RR?oPrvGJTms?A&;FSPsV|#2YJ%? zSICo2Z1=Pyj{unJ{|&A7)CXVL?kdRUb9?o`nJt#Hnyy62V$+qqARssnoLazr90qonOj0*_echIs*Vh|cOYOgGG_Id{dxP<0>HWzDtyEY! zpk$PU!CJy7NOv&FWt9~NQ6?mgr)YSVWrQgq;lD#-*_prs5!l)-L^S@Ns=(a7sBw`D zjSedChgzv}9h4N*&!F}f1yv}OpW~)}v$WroE&{PaGwBC%l%9&;xbj;}i|AwtUDSFv zVbn<%rPoBRsb!7nEKmv!g6=?5poKmrwUF^A0Y^|MytYih5-LCY=#ij(#-jt(3kum> z$i%E3if!UCC*oQ9?|^DamsG{7M#^2H-L1W?<*uK~U6!j*&Zt!ovqT9GoK`ynmGheD zb+ova3Xk)Ka_NyD2@!Js{is^1EkCXZk-t7qNRcb%OA+~>At^|nII$qHwIFdm5F`r{ zBs~Q|QqTz?L{6tpNQH<45;_wi$5p+V5K*x>Plz}f1m(K8nCc5Jfzo^cAp+%0IsuZ+ z>ZXO}y)J<^suHOAn^cJ0@=E)_M&n>IaN+as-%=+B7L7#3&I}8k$ag|hB2lS6^J=C1 zmzjIMu6Gl?t8 zuNE``L??sJBV3}w)iHfd91*3|E%1f~+GAefPJ%3$h^w$Jc8bAdKdue%0AO2!Z*6F4 zh{jQvbzLl<2E{&y3r6l~rnX{==XG6x0HNzbz4#s0@)Mfpfq54~(*;@~ykH??miGf~ zqp#^URCJqqOXI)8=Flxw1b~@U@S2N@UJJ3F7J5N`?loU}jRKPw8$pi=ixxpEj|5PB z^tWK0LLW%=+*0x6X4cKoP*iDwm_)i6V?kZr$(+I_2Fjd}6wSdc!T#y}KwCg|%N;PG zD`G)*s|k?51w9R_A_+hMnj+~0;?2w_flvbJ8PD>dDIzD>3qnz}sLdsI;OTYfRm5=} zagp42LPASG!W1Zht5p*uhGY@lkzJq&j4^}`d`^uI?t*a^4L_xtBg4nG9|`WQNre#V zz0UU{%nJk_W5&!VZ$W&VhyWJx8|(00V32AUfE!BvCjt^`gR5n2FjRj58S75HHn^qz z#r4LyCsQDtUt>55ElzOq+PbZUN}&yv!p}s_a4fAB&Z)FtyvE?=p5K;c$hF3X>e4^< z9Wtst(3!2)>OE)np0(`k743uDjafh@bV1)kjIjkwe&gB49Ip)N%8Gk!9tJ~2Xa^khWP7EkK6cUOAOi@N_U|T|< z?H25Ta#b_M$=H)N!|fm}m}9!%(>{V4=nR>7Zrc27U*{Pg%1rVCAQV+SdZ~|W;UmY4 zXap%H-a^75ITR1swU(Uq)X2-9~hZA*+@rr!^o zgnxki#C`=9E4s&iB6SZGdH_qwuh{w8BQDnd(0fD_6Hqs!DccI2yenU%`T|SQEM`PC z2{zE67%`@MSli$V8x{dJ61RPzzp_@Fa;iF`uy`J@orMLKl%)6oYA#I`ijrC>RhXKS z#P3YUp$s@Fl{%P78d7IqM+6Ot2_+UcJJV1n7LxVoN?@TeWIVG%vQp)WtuILWsob+c zjRFphF(ly-Mu0<@&mz7WK&*@qZ+;%eF~qOD0>&xCZ|((bgZcBSu#LZTSiHD&RJmE1v2fLzM?$BVZhQO^ussBbCacl&9XxcYkJ}9hI;BT>){+gb>g4qN3_B^^mfR(Ts%Ll!Q`E%e-O>Gq0ge%BE03KV?C| zL2jJku6U=`-+s8ivQ)e1lv}9<$SrJ5$KI)g-1IGFWcmQP>UF4iH`>aI{Ej_9iL&rJ zA>!3V@1YkUAs1SJ5^`@+kh|?lsFwj+D^tHzqsVNS%glxmGFw9K`0)J_a>qASB;<~7 weO^NDIDZ%k$Q^%q8b*XBzPjv4u)G9#J6wd%0{&%y8$f|&(%2J#yR}sRFJ|$={Qv*} diff --git a/src/main/java/com/muyu/vehicle/core/LocalContainer.java b/src/main/java/com/muyu/vehicle/core/LocalContainer.java index 80e503a..33b391e 100644 --- a/src/main/java/com/muyu/vehicle/core/LocalContainer.java +++ b/src/main/java/com/muyu/vehicle/core/LocalContainer.java @@ -62,6 +62,16 @@ public class LocalContainer { public static List getOnlineVehicleInstance(){ return vehicleDataMap.values().stream().filter(VehicleInstance::isOnline).toList(); } + /** + * 获取在线车辆 + * @return 在线车辆VIN集合 + */ + public static List getOnlineVehicleVin(){ + return getOnlineVehicleInstance() + .stream() + .map(VehicleInstance::getVin) + .toList(); + } /** * 获取离线车辆 diff --git a/src/main/java/com/muyu/web/config/LoadServerConfig.java b/src/main/java/com/muyu/web/config/LoadServerConfig.java index 49d5a0e..382d242 100644 --- a/src/main/java/com/muyu/web/config/LoadServerConfig.java +++ b/src/main/java/com/muyu/web/config/LoadServerConfig.java @@ -1,12 +1,8 @@ package com.muyu.web.config; import com.muyu.web.config.properties.ServiceConfigProperties; -import com.muyu.web.domain.ServerConfig; import com.muyu.web.domain.model.ServerConfigModel; import com.muyu.web.service.ServerConfigService; -import lombok.AllArgsConstructor; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.context.properties.ConfigurationProperties; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; diff --git a/src/main/java/com/muyu/web/domain/model/TaskModel.java b/src/main/java/com/muyu/web/domain/model/TaskModel.java index aecd250..e0b219c 100644 --- a/src/main/java/com/muyu/web/domain/model/TaskModel.java +++ b/src/main/java/com/muyu/web/domain/model/TaskModel.java @@ -11,6 +11,7 @@ import java.util.concurrent.CountDownLatch; import java.util.concurrent.LinkedBlockingQueue; import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicInteger; +import java.util.function.Consumer; /** * @author DongZeLiang @@ -79,12 +80,28 @@ public class TaskModel { private AtomicInteger taskErrorSum = new AtomicInteger(); + /** + * 判断是否有下个任务 + * @return true 下一个任务可执行 + */ + public boolean hashNext(){ + return !vehicleTaskQueue.isEmpty(); + } + + /** + * 获取下一个任务节点 + * @return 任务VIN + */ + public String next(){ + return vehicleTaskQueue.poll(); + } + /** * 提交当前线程任务 * @param taskName 任务名称 * @param vehicleVinList 提交车辆VIN集合 */ - public void submit(String taskName, List vehicleVinList){ + public void submit(String taskName, List vehicleVinList, Consumer consumer){ if (!this.isExecution()){ throw new RuntimeException("["+this.taskName+"]的任务正在进行中,请等待任务执行完成再次发布一键任务"); } @@ -99,6 +116,25 @@ public class TaskModel { this.taskSuccessSum = new AtomicInteger(); this.taskErrorSum = new AtomicInteger(); this.taskStartTime = System.currentTimeMillis(); + new Thread(() -> { + try { + while (hashNext()){ + Thread.sleep(100); + String vin = next(); + try { + consumer.accept(vin); + incrementSuccess(); + }catch (Exception e){ + log.error("任务:[{}] vin:[{}] 异常:[{}]",taskName,vin,e.getMessage(),e); + incrementError(); + } + } + }catch (Exception e){ + log.error("任务:[{}] 异常:[{}]",taskName,e.getMessage(),e); + }finally { + down(); + } + }).start(); log.info("[{}]任务执行开始", this.taskName); } diff --git a/src/main/java/com/muyu/web/service/impl/VehicleUnifiedServiceImpl.java b/src/main/java/com/muyu/web/service/impl/VehicleUnifiedServiceImpl.java index df6bbfe..9d6b1c8 100644 --- a/src/main/java/com/muyu/web/service/impl/VehicleUnifiedServiceImpl.java +++ b/src/main/java/com/muyu/web/service/impl/VehicleUnifiedServiceImpl.java @@ -1,6 +1,12 @@ package com.muyu.web.service.impl; +import com.alibaba.fastjson2.JSONArray; +import com.muyu.vehicle.VehicleInstance; +import com.muyu.vehicle.core.LocalContainer; +import com.muyu.web.domain.PositionRouteInfo; +import com.muyu.web.domain.model.PositionModel; import com.muyu.web.domain.model.TaskModel; +import com.muyu.web.domain.req.MsgReq; import com.muyu.web.domain.resp.UnifiedTaskResp; import com.muyu.web.service.PositionRouteService; import com.muyu.web.service.VehicleInstanceService; @@ -9,6 +15,9 @@ import lombok.extern.log4j.Log4j2; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.List; +import java.util.Random; + /** * @author DongZeLiang * @version 1.0 @@ -36,7 +45,14 @@ public class VehicleUnifiedServiceImpl implements VehicleUnifiedService { */ @Override public void unifiedOnline () { - + // 获取离线车辆VIN + List vinList = LocalContainer.getOfflineVehicleInstance() + .stream() + .map(VehicleInstance::getVin) + .toList(); + taskModel.submit("一键上线", vinList, (vin) -> { + vehicleInstanceService.vehicleClientInit(vin); + }); } /** @@ -44,7 +60,11 @@ public class VehicleUnifiedServiceImpl implements VehicleUnifiedService { */ @Override public void unifiedOffline () { - + // 获取在线车辆VIN + List vinList = LocalContainer.getOnlineVehicleVin(); + taskModel.submit("一键离线", vinList, (vin) -> { + vehicleInstanceService.vehicleClientClose(vin); + }); } /** @@ -52,7 +72,37 @@ public class VehicleUnifiedServiceImpl implements VehicleUnifiedService { */ @Override public void unifiedSend () { + // 获取在线车辆VIN + List vinList = LocalContainer.getOnlineVehicleVin(); + // 获取到所有路径 + List positionRouteInfoList = positionRouteService.list(); + // 路径长度 + int positionSize = positionRouteInfoList.size(); + // 随机数 + Random random = new Random(); + taskModel.submit("一键上报", vinList, (vin) -> { + // 随机一个路径结果 + int positionIndex = random.nextInt(0, positionSize); + PositionRouteInfo positionRouteInfo = positionRouteInfoList.get(positionIndex); + String positionCode = positionRouteInfo.getName(); + List positionModelList = JSONArray.parseArray(positionRouteInfo.getRouteData(), String.class) + .stream() + .map(PositionModel::strBuild) + .toList(); + VehicleInstance vehicleInstance = LocalContainer.getVehicleInstance(vin); + // 设置车辆路径 + vehicleInstance.settingPosition(positionModelList); + vehicleInstance.setPositionCode(positionCode); + // 设置车辆档位 + vehicleInstance.setGear("D"); + vehicleInstanceService.msg( + MsgReq.builder() + .vin(vin) + .msgCode("上报") + .build() + ); + }); } /** @@ -60,7 +110,29 @@ public class VehicleUnifiedServiceImpl implements VehicleUnifiedService { */ @Override public void unifiedPosition () { + // 获取在线车辆VIN + List vinList = LocalContainer.getOnlineVehicleVin(); + // 获取到所有路径 + List positionRouteInfoList = positionRouteService.list(); + // 路径长度 + int positionSize = positionRouteInfoList.size(); + // 随机数 + Random random = new Random(); + taskModel.submit("一键重置路径", vinList, (vin) -> { + // 随机一个路径结果 + int positionIndex = random.nextInt(0, positionSize); + PositionRouteInfo positionRouteInfo = positionRouteInfoList.get(positionIndex); + String positionCode = positionRouteInfo.getName(); + List positionModelList = JSONArray.parseArray(positionRouteInfo.getRouteData(), String.class) + .stream() + .map(PositionModel::strBuild) + .toList(); + VehicleInstance vehicleInstance = LocalContainer.getVehicleInstance(vin); + // 设置车辆路径 + vehicleInstance.settingPosition(positionModelList); + vehicleInstance.setPositionCode(positionCode); + }); } /** @@ -68,7 +140,16 @@ public class VehicleUnifiedServiceImpl implements VehicleUnifiedService { */ @Override public void unifiedStop () { - +// 获取在线车辆VIN + List vinList = LocalContainer.getOnlineVehicleVin(); + taskModel.submit("一键取消上报", vinList, (vin) -> { + vehicleInstanceService.msg( + MsgReq.builder() + .vin(vin) + .msgCode("停止") + .build() + ); + }); } /** diff --git a/src/main/resources/static/css/chunk-cd3ab578.5a7a63c7.css b/src/main/resources/static/css/chunk-cd3ab578.5a7a63c7.css deleted file mode 100644 index 469a9d8..0000000 --- a/src/main/resources/static/css/chunk-cd3ab578.5a7a63c7.css +++ /dev/null @@ -1 +0,0 @@ -.app-container[data-v-5503ff78]{padding:10px 5px 0 10px;background-color:#f4f4f5}.el-row[data-v-5503ff78]{&:last-child{margin-bottom:0}}.bg-purple[data-v-5503ff78]{background:#f4f4f5}.grid-content[data-v-5503ff78]{border-radius:4px;overflow-x:hidden;overflow-y:auto}.grid-content[data-v-5503ff78]::-webkit-scrollbar{width:4px}.grid-content[data-v-5503ff78]::-webkit-scrollbar-thumb{border-radius:10px;background:rgba(0,0,0,.2)}.grid-content[data-v-5503ff78]::-webkit-scrollbar-track{border-radius:0;background:rgba(0,0,0,.1)}.vehicleDiv[data-v-5503ff78]{height:50px;margin:0 0 10px 0}.contentMain[data-v-5503ff78]{margin-top:10px}.vehicleDataTab[data-v-5503ff78]{width:100%;overflow-y:auto;overflow-x:hidden}.vehicleDataTab[data-v-5503ff78]::-webkit-scrollbar{width:4px}.vehicleDataTab[data-v-5503ff78]::-webkit-scrollbar-thumb{border-radius:10px;background:rgba(0,0,0,.2)}.vehicleDataTab[data-v-5503ff78]::-webkit-scrollbar-track{border-radius:0;background:rgba(0,0,0,.1)}.el-form-item__label[data-v-5503ff78]{padding:0}.el-form-item[data-v-5503ff78]{margin-bottom:5px} \ No newline at end of file diff --git a/src/main/resources/static/index.html b/src/main/resources/static/index.html index de6171b..03b662d 100644 --- a/src/main/resources/static/index.html +++ b/src/main/resources/static/index.html @@ -1 +1 @@ -车辆
\ No newline at end of file +车辆
\ No newline at end of file diff --git a/src/main/resources/static/js/app.a7bceb97.js b/src/main/resources/static/js/app.a7bceb97.js deleted file mode 100644 index 184190d..0000000 --- a/src/main/resources/static/js/app.a7bceb97.js +++ /dev/null @@ -1 +0,0 @@ -(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["app"],{0:function(e,t,n){e.exports=n("56d7")},"0ae2d":function(e,t,n){"use strict";n("cbd7")},"18f0":function(e,t,n){"use strict";n.r(t);var a=n("e017"),i=n.n(a),o=n("21a1"),s=n.n(o),c=new i.a({id:"icon-link",use:"icon-link-usage",viewBox:"0 0 128 128",content:''});s.a.add(c);t["default"]=c},2224:function(e,t,n){"use strict";n("5031")},"279e":function(e,t,n){},"2a3d":function(e,t,n){"use strict";n.r(t);var a=n("e017"),i=n.n(a),o=n("21a1"),s=n.n(o),c=new i.a({id:"icon-password",use:"icon-password-usage",viewBox:"0 0 128 128",content:''});s.a.add(c);t["default"]=c},"2b29":function(e,t,n){"use strict";n("f6c3")},"30c3":function(e,t,n){"use strict";n.r(t);var a=n("e017"),i=n.n(a),o=n("21a1"),s=n.n(o),c=new i.a({id:"icon-example",use:"icon-example-usage",viewBox:"0 0 128 128",content:''});s.a.add(c);t["default"]=c},"3e9a":function(e,t,n){"use strict";n("72e6")},4360:function(e,t,n){"use strict";var a=n("2b0e"),i=n("2f62"),o=(n("b0c0"),{sidebar:function(e){return e.app.sidebar},device:function(e){return e.app.device},token:function(e){return e.user.token},avatar:function(e){return e.user.avatar},name:function(e){return e.user.name}}),s=o,c=n("a78e"),r=n.n(c),u={sidebar:{opened:!r.a.get("sidebarStatus")||!!+r.a.get("sidebarStatus"),withoutAnimation:!1},device:"desktop"},l={TOGGLE_SIDEBAR:function(e){e.sidebar.opened=!e.sidebar.opened,e.sidebar.withoutAnimation=!1,e.sidebar.opened?r.a.set("sidebarStatus",1):r.a.set("sidebarStatus",0)},CLOSE_SIDEBAR:function(e,t){r.a.set("sidebarStatus",0),e.sidebar.opened=!1,e.sidebar.withoutAnimation=t},TOGGLE_DEVICE:function(e,t){e.device=t}},d={toggleSideBar:function(e){var t=e.commit;t("TOGGLE_SIDEBAR")},closeSideBar:function(e,t){var n=e.commit,a=t.withoutAnimation;n("CLOSE_SIDEBAR",a)},toggleDevice:function(e,t){var n=e.commit;n("TOGGLE_DEVICE",t)}},h={namespaced:!0,state:u,mutations:l,actions:d},m=n("83d6"),f=n.n(m),p=f.a.showSettings,v=f.a.fixedHeader,b=f.a.sidebarLogo,g={showSettings:p,fixedHeader:v,sidebarLogo:b},w={CHANGE_SETTING:function(e,t){var n=t.key,a=t.value;e.hasOwnProperty(n)&&(e[n]=a)}},x={changeSetting:function(e,t){var n=e.commit;n("CHANGE_SETTING",t)}},k={namespaced:!0,state:g,mutations:w,actions:x},y=(n("d3b7"),n("5f87")),_=n("a18c"),C=function(){return{token:Object(y["a"])(),name:"",avatar:""}},O=C(),z={RESET_STATE:function(e){Object.assign(e,C())},SET_TOKEN:function(e,t){e.token=t},SET_NAME:function(e,t){e.name=t},SET_AVATAR:function(e,t){e.avatar=t}},E={login:function(e,t){var n=e.commit;return new Promise((function(e,t){n("SET_TOKEN","token"),Object(y["c"])("token"),e()}))},getInfo:function(e){var t=e.commit;e.state;return new Promise((function(e,n){var a={name:"今天你努力了吗",avatar:"https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif"},i=a.name,o=a.avatar;t("SET_NAME",i),t("SET_AVATAR",o),e(a)}))},logout:function(e){var t=e.commit;e.state;return new Promise((function(e,n){Object(y["b"])(),Object(_["b"])(),t("RESET_STATE"),e()}))},resetToken:function(e){var t=e.commit;return new Promise((function(e){Object(y["b"])(),t("RESET_STATE"),e()}))}},S={namespaced:!0,state:O,mutations:z,actions:E};a["default"].use(i["a"]);var H=new i["a"].Store({modules:{app:h,settings:k,user:S},getters:s});t["a"]=H},"47f1":function(e,t,n){"use strict";n.r(t);var a=n("e017"),i=n.n(a),o=n("21a1"),s=n.n(o),c=new i.a({id:"icon-table",use:"icon-table-usage",viewBox:"0 0 128 128",content:''});s.a.add(c);t["default"]=c},"4df5":function(e,t,n){"use strict";n.r(t);var a=n("e017"),i=n.n(a),o=n("21a1"),s=n.n(o),c=new i.a({id:"icon-eye",use:"icon-eye-usage",viewBox:"0 0 128 64",content:''});s.a.add(c);t["default"]=c},5031:function(e,t,n){},"51ff":function(e,t,n){var a={"./dashboard.svg":"f782","./example.svg":"30c3","./eye-open.svg":"d7ec","./eye.svg":"4df5","./form.svg":"eb1b","./link.svg":"18f0","./nested.svg":"dcf8","./password.svg":"2a3d","./table.svg":"47f1","./tree.svg":"93cd","./user.svg":"b3b5"};function i(e){var t=o(e);return n(t)}function o(e){if(!n.o(a,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return a[e]}i.keys=function(){return Object.keys(a)},i.resolve=o,e.exports=i,i.id="51ff"},"56d7":function(e,t,n){"use strict";n.r(t);n("e260"),n("e6cf"),n("cca6"),n("a79d");var a=n("2b0e"),i=(n("f5df1"),n("5c96")),o=n.n(i),s=(n("0fae"),n("f0d9")),c=n.n(s),r=(n("b20f"),function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{attrs:{id:"app"}},[n("router-view")],1)}),u=[],l={name:"App"},d=l,h=n("2877"),m=Object(h["a"])(d,r,u,!1,null,null,null),f=m.exports,p=n("4360"),v=n("a18c"),b=(n("d81d"),n("d3b7"),n("ddb0"),function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.isExternal?n("div",e._g({staticClass:"svg-external-icon svg-icon",style:e.styleExternalIcon},e.$listeners)):n("svg",e._g({class:e.svgClass,attrs:{"aria-hidden":"true"}},e.$listeners),[n("use",{attrs:{"xlink:href":e.iconName}})])}),g=[],w=n("61f7"),x={name:"SvgIcon",props:{iconClass:{type:String,required:!0},className:{type:String,default:""}},computed:{isExternal:function(){return Object(w["a"])(this.iconClass)},iconName:function(){return"#icon-".concat(this.iconClass)},svgClass:function(){return this.className?"svg-icon "+this.className:"svg-icon"},styleExternalIcon:function(){return{mask:"url(".concat(this.iconClass,") no-repeat 50% 50%"),"-webkit-mask":"url(".concat(this.iconClass,") no-repeat 50% 50%")}}}},k=x,y=(n("2b29"),Object(h["a"])(k,b,g,!1,null,"f9f7fefc",null)),_=y.exports;a["default"].component("svg-icon",_);var C=n("51ff"),O=function(e){return e.keys().map(e)};O(C);var z=n("c7eb"),E=n("1da1"),S=(n("b0c0"),n("323e")),H=n.n(S),M=(n("a5d8"),n("5f87")),B=(n("99af"),n("83d6")),T=n.n(B),j=T.a.title||"Vue Admin Template";function A(e){return e?"".concat(e," - ").concat(j):"".concat(j)}H.a.configure({showSpinner:!1});var V=["/login"];v["a"].beforeEach(function(){var e=Object(E["a"])(Object(z["a"])().mark((function e(t,n,a){var o,s;return Object(z["a"])().wrap((function(e){while(1)switch(e.prev=e.next){case 0:if(H.a.start(),document.title=A(t.meta.title),o=Object(M["a"])(),!o){e.next=29;break}if("/login"!==t.path){e.next=9;break}a({path:"/"}),H.a.done(),e.next=27;break;case 9:if(s=p["a"].getters.name,!s){e.next=14;break}a(),e.next=27;break;case 14:return e.prev=14,e.next=17,p["a"].dispatch("user/getInfo");case 17:a(),e.next=27;break;case 20:return e.prev=20,e.t0=e["catch"](14),e.next=24,p["a"].dispatch("user/resetToken");case 24:i["Message"].error(e.t0||"Has Error"),a("/login?redirect=".concat(t.path)),H.a.done();case 27:e.next=30;break;case 29:-1!==V.indexOf(t.path)?a():(a("/login?redirect=".concat(t.path)),H.a.done());case 30:case"end":return e.stop()}}),e,null,[[14,20]])})));return function(t,n,a){return e.apply(this,arguments)}}()),v["a"].afterEach((function(){H.a.done()})),a["default"].use(o.a,{locale:c.a}),a["default"].config.productionTip=!1,new a["default"]({el:"#app",router:v["a"],store:p["a"],render:function(e){return e(f)}})},"5f87":function(e,t,n){"use strict";n.d(t,"a",(function(){return s})),n.d(t,"c",(function(){return c})),n.d(t,"b",(function(){return r}));var a=n("a78e"),i=n.n(a),o="vue_admin_template_token";function s(){return i.a.get(o)}function c(e){return i.a.set(o,e)}function r(){return i.a.remove(o)}},"61f7":function(e,t,n){"use strict";n.d(t,"a",(function(){return a}));n("ac1f"),n("00b4"),n("498a");function a(e){return/^(https?:|mailto:|tel:)/.test(e)}},"6c02":function(e,t,n){},"71a0":function(e,t,n){"use strict";n("6c02")},"72e6":function(e,t,n){},"83d6":function(e,t){e.exports={title:"车辆",fixedHeader:!1,sidebarLogo:!1}},"88a1":function(e,t,n){},"8d0b":function(e,t,n){},"8dd0":function(e,t,n){"use strict";n("c459")},9353:function(e,t,n){"use strict";n("8d0b")},"93cd":function(e,t,n){"use strict";n.r(t);var a=n("e017"),i=n.n(a),o=n("21a1"),s=n.n(o),c=new i.a({id:"icon-tree",use:"icon-tree-usage",viewBox:"0 0 128 128",content:''});s.a.add(c);t["default"]=c},a18c:function(e,t,n){"use strict";n.d(t,"b",(function(){return Te}));n("d3b7"),n("3ca3"),n("ddb0");var a,i,o=n("2b0e"),s=n("8c4f"),c=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"app-wrapper",class:e.classObj},["mobile"===e.device&&e.sidebar.opened?n("div",{staticClass:"drawer-bg",on:{click:e.handleClickOutside}}):e._e(),n("sidebar",{staticClass:"sidebar-container"}),n("div",{staticClass:"main-container"},[n("div",{class:{"fixed-header":e.fixedHeader}},[n("navbar")],1),n("app-main")],1)],1)},r=[],u=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"navbar"},[n("hamburger",{staticClass:"hamburger-container",attrs:{"is-active":e.sidebar.opened},on:{toggleClick:e.toggleSideBar}}),n("breadcrumb",{staticClass:"breadcrumb-container"}),n("div",{staticClass:"right-menu"},[n("el-dropdown",{staticClass:"avatar-container",attrs:{trigger:"click"}},[n("div",{staticClass:"avatar-wrapper"},[n("img",{staticClass:"user-avatar",attrs:{src:e.avatar+"?imageView2/1/w/80/h/80"}}),n("i",{staticClass:"el-icon-caret-bottom"})]),n("el-dropdown-menu",{staticClass:"user-dropdown",attrs:{slot:"dropdown"},slot:"dropdown"},[n("router-link",{attrs:{to:"/"}},[n("el-dropdown-item",[e._v(" Home ")])],1),n("a",{attrs:{target:"_blank",href:"https://github.com/PanJiaChen/vue-admin-template/"}},[n("el-dropdown-item",[e._v("Github")])],1),n("a",{attrs:{target:"_blank",href:"https://panjiachen.github.io/vue-element-admin-site/#/"}},[n("el-dropdown-item",[e._v("Docs")])],1),n("el-dropdown-item",{attrs:{divided:""},nativeOn:{click:function(t){return e.logout(t)}}},[n("span",{staticStyle:{display:"block"}},[e._v("Log Out")])])],1)],1)],1)],1)},l=[],d=n("c7eb"),h=n("1da1"),m=n("5530"),f=n("2f62"),p=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("el-breadcrumb",{staticClass:"app-breadcrumb",attrs:{separator:"/"}},[n("transition-group",{attrs:{name:"breadcrumb"}},e._l(e.levelList,(function(t,a){return n("el-breadcrumb-item",{key:t.path},["noRedirect"===t.redirect||a===e.levelList.length-1?n("span",{staticClass:"no-redirect"},[e._v(e._s(t.meta.title))]):n("a",{on:{click:function(n){return n.preventDefault(),e.handleLink(t)}}},[e._v(e._s(t.meta.title))])])})),1)],1)},v=[],b=(n("4de4"),n("99af"),n("b0c0"),n("498a"),n("bd11")),g=n.n(b),w={data:function(){return{levelList:null}},watch:{$route:function(){this.getBreadcrumb()}},created:function(){this.getBreadcrumb()},methods:{getBreadcrumb:function(){var e=this.$route.matched.filter((function(e){return e.meta&&e.meta.title})),t=e[0];e=this.isDashboard(t)?[{path:"/dashboard",meta:{title:"首页"}}]:[{path:"/dashboard",meta:{title:"首页"}}].concat(e),this.levelList=e.filter((function(e){return e.meta&&e.meta.title&&!1!==e.meta.breadcrumb}))},isDashboard:function(e){var t=e&&e.name;return!!t&&"首页"===t.trim()},pathCompile:function(e){var t=this.$route.params,n=g.a.compile(e);return n(t)},handleLink:function(e){var t=e.redirect,n=e.path;t?this.$router.push(t):this.$router.push(this.pathCompile(n))}}},x=w,k=(n("d633"),n("2877")),y=Object(k["a"])(x,p,v,!1,null,"43342757",null),_=y.exports,C=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticStyle:{padding:"0 15px"},on:{click:e.toggleClick}},[n("svg",{staticClass:"hamburger",class:{"is-active":e.isActive},attrs:{viewBox:"0 0 1024 1024",xmlns:"http://www.w3.org/2000/svg",width:"64",height:"64"}},[n("path",{attrs:{d:"M408 442h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8zm-8 204c0 4.4 3.6 8 8 8h480c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8H408c-4.4 0-8 3.6-8 8v56zm504-486H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 632H120c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM142.4 642.1L298.7 519a8.84 8.84 0 0 0 0-13.9L142.4 381.9c-5.8-4.6-14.4-.5-14.4 6.9v246.3a8.9 8.9 0 0 0 14.4 7z"}})])])},O=[],z={name:"Hamburger",props:{isActive:{type:Boolean,default:!1}},methods:{toggleClick:function(){this.$emit("toggleClick")}}},E=z,S=(n("8dd0"),Object(k["a"])(E,C,O,!1,null,"49e15297",null)),H=S.exports,M={components:{Breadcrumb:_,Hamburger:H},computed:Object(m["a"])({},Object(f["b"])(["sidebar","avatar"])),methods:{toggleSideBar:function(){this.$store.dispatch("app/toggleSideBar")},logout:function(){var e=this;return Object(h["a"])(Object(d["a"])().mark((function t(){return Object(d["a"])().wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.next=2,e.$store.dispatch("user/logout");case 2:e.$router.push("/login?redirect=".concat(e.$route.fullPath));case 3:case"end":return t.stop()}}),t)})))()}}},B=M,T=(n("3e9a"),Object(k["a"])(B,u,l,!1,null,"050d8c75",null)),j=T.exports,A=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{class:{"has-logo":e.showLogo}},[e.showLogo?n("logo",{attrs:{collapse:e.isCollapse}}):e._e(),n("el-scrollbar",{attrs:{"wrap-class":"scrollbar-wrapper"}},[n("el-menu",{attrs:{"default-active":e.activeMenu,collapse:e.isCollapse,"background-color":e.variables.menuBg,"text-color":e.variables.menuText,"unique-opened":!1,"active-text-color":e.variables.menuActiveText,"collapse-transition":!1,mode:"vertical"}},e._l(e.routes,(function(e){return n("sidebar-item",{key:e.path,attrs:{item:e,"base-path":e.path}})})),1)],1)],1)},V=[],$=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",{staticClass:"sidebar-logo-container",class:{collapse:e.collapse}},[n("transition",{attrs:{name:"sidebarLogoFade"}},[e.collapse?n("router-link",{key:"collapse",staticClass:"sidebar-logo-link",attrs:{to:"/"}},[e.logo?n("img",{staticClass:"sidebar-logo",attrs:{src:e.logo}}):n("h1",{staticClass:"sidebar-title"},[e._v(e._s(e.title)+" ")])]):n("router-link",{key:"expand",staticClass:"sidebar-logo-link",attrs:{to:"/"}},[e.logo?n("img",{staticClass:"sidebar-logo",attrs:{src:e.logo}}):e._e(),n("h1",{staticClass:"sidebar-title"},[e._v(e._s(e.title)+" ")])])],1)],1)},L=[],P={name:"SidebarLogo",props:{collapse:{type:Boolean,required:!0}},data:function(){return{title:"Vue Admin Template",logo:"https://wpimg.wallstcn.com/69a1c46c-eb1c-4b46-8bd4-e9e686ef5251.png"}}},I=P,N=(n("71a0"),Object(k["a"])(I,$,L,!1,null,"5bb1c0e2",null)),D=N.exports,q=function(){var e=this,t=e.$createElement,n=e._self._c||t;return e.item.hidden?e._e():n("div",[!e.hasOneShowingChild(e.item.children,e.item)||e.onlyOneChild.children&&!e.onlyOneChild.noShowingChildren||e.item.alwaysShow?n("el-submenu",{ref:"subMenu",attrs:{index:e.resolvePath(e.item.path),"popper-append-to-body":""}},[n("template",{slot:"title"},[e.item.meta?n("item",{attrs:{icon:e.item.meta&&e.item.meta.icon,title:e.item.meta.title}}):e._e()],1),e._l(e.item.children,(function(t){return n("sidebar-item",{key:t.path,staticClass:"nest-menu",attrs:{"is-nest":!0,item:t,"base-path":e.resolvePath(t.path)}})}))],2):[e.onlyOneChild.meta?n("app-link",{attrs:{to:e.resolvePath(e.onlyOneChild.path)}},[n("el-menu-item",{class:{"submenu-title-noDropdown":!e.isNest},attrs:{index:e.resolvePath(e.onlyOneChild.path)}},[n("item",{attrs:{icon:e.onlyOneChild.meta.icon||e.item.meta&&e.item.meta.icon,title:e.onlyOneChild.meta.title}})],1)],1):e._e()]],2)},G=[],R=n("df7c"),J=n.n(R),U=n("61f7"),F=(n("caad"),n("2532"),{name:"MenuItem",functional:!0,props:{icon:{type:String,default:""},title:{type:String,default:""}},render:function(e,t){var n=t.props,a=n.icon,i=n.title,o=[];return a&&(a.includes("el-icon")?o.push(e("i",{class:[a,"sub-el-icon"]})):o.push(e("svg-icon",{attrs:{"icon-class":a}}))),i&&o.push(e("span",{slot:"title"},[i])),o}}),K=F,W=(n("f87e"),Object(k["a"])(K,a,i,!1,null,"18eeea00",null)),Q=W.exports,X=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n(e.type,e._b({tag:"component"},"component",e.linkProps(e.to),!1),[e._t("default")],2)},Y=[],Z={props:{to:{type:String,required:!0}},computed:{isExternal:function(){return Object(U["a"])(this.to)},type:function(){return this.isExternal?"a":"router-link"}},methods:{linkProps:function(e){return this.isExternal?{href:e,target:"_blank",rel:"noopener"}:{to:e}}}},ee=Z,te=Object(k["a"])(ee,X,Y,!1,null,null,null),ne=te.exports,ae={computed:{device:function(){return this.$store.state.app.device}},mounted:function(){this.fixBugIniOS()},methods:{fixBugIniOS:function(){var e=this,t=this.$refs.subMenu;if(t){var n=t.handleMouseleave;t.handleMouseleave=function(t){"mobile"!==e.device&&n(t)}}}}},ie={name:"SidebarItem",components:{Item:Q,AppLink:ne},mixins:[ae],props:{item:{type:Object,required:!0},isNest:{type:Boolean,default:!1},basePath:{type:String,default:""}},data:function(){return this.onlyOneChild=null,{}},methods:{hasOneShowingChild:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],n=arguments.length>1?arguments[1]:void 0,a=t.filter((function(t){return!t.hidden&&(e.onlyOneChild=t,!0)}));return 1===a.length||0===a.length&&(this.onlyOneChild=Object(m["a"])(Object(m["a"])({},n),{},{path:"",noShowingChildren:!0}),!0)},resolvePath:function(e){return Object(U["a"])(e)?e:Object(U["a"])(this.basePath)?this.basePath:J.a.resolve(this.basePath,e)}}},oe=ie,se=Object(k["a"])(oe,q,G,!1,null,null,null),ce=se.exports,re=n("cf1e"),ue=n.n(re),le={components:{SidebarItem:ce,Logo:D},computed:Object(m["a"])(Object(m["a"])({},Object(f["b"])(["sidebar"])),{},{routes:function(){return this.$router.options.routes},activeMenu:function(){var e=this.$route,t=e.meta,n=e.path;return t.activeMenu?t.activeMenu:n},showLogo:function(){return this.$store.state.settings.sidebarLogo},variables:function(){return ue.a},isCollapse:function(){return!this.sidebar.opened}})},de=le,he=Object(k["a"])(de,A,V,!1,null,null,null),me=he.exports,fe=function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("section",{staticClass:"app-main"},[n("transition",{attrs:{name:"fade-transform",mode:"out-in"}},[n("router-view",{key:e.key})],1)],1)},pe=[],ve={name:"AppMain",computed:{key:function(){return this.$route.path}}},be=ve,ge=(n("2224"),n("0ae2d"),Object(k["a"])(be,fe,pe,!1,null,"64cf4d83",null)),we=ge.exports,xe=n("4360"),ke=document,ye=ke.body,_e=992,Ce={watch:{$route:function(e){"mobile"===this.device&&this.sidebar.opened&&xe["a"].dispatch("app/closeSideBar",{withoutAnimation:!1})}},beforeMount:function(){window.addEventListener("resize",this.$_resizeHandler)},beforeDestroy:function(){window.removeEventListener("resize",this.$_resizeHandler)},mounted:function(){var e=this.$_isMobile();e&&(xe["a"].dispatch("app/toggleDevice","mobile"),xe["a"].dispatch("app/closeSideBar",{withoutAnimation:!0}))},methods:{$_isMobile:function(){var e=ye.getBoundingClientRect();return e.width-1<_e},$_resizeHandler:function(){if(!document.hidden){var e=this.$_isMobile();xe["a"].dispatch("app/toggleDevice",e?"mobile":"desktop"),e&&xe["a"].dispatch("app/closeSideBar",{withoutAnimation:!0})}}}},Oe={name:"Layout",components:{Navbar:j,Sidebar:me,AppMain:we},mixins:[Ce],computed:{sidebar:function(){return this.$store.state.app.sidebar},device:function(){return this.$store.state.app.device},fixedHeader:function(){return this.$store.state.settings.fixedHeader},classObj:function(){return{hideSidebar:!this.sidebar.opened,openSidebar:this.sidebar.opened,withoutAnimation:this.sidebar.withoutAnimation,mobile:"mobile"===this.device}}},methods:{handleClickOutside:function(){this.$store.dispatch("app/closeSideBar",{withoutAnimation:!1})}}},ze=Oe,Ee=(n("9353"),Object(k["a"])(ze,c,r,!1,null,"4f739cf0",null)),Se=Ee.exports;o["default"].use(s["a"]);var He=[{path:"/login",component:function(){return n.e("chunk-510f32e7").then(n.bind(null,"9ed6"))},hidden:!0},{path:"/404",component:function(){return n.e("chunk-22cea610").then(n.bind(null,"8cdb"))},hidden:!0},{path:"/",component:Se,redirect:"/dashboard",children:[{path:"dashboard",name:"首页",component:function(){return Promise.all([n.e("chunk-019c66da"),n.e("chunk-6f60c8f1"),n.e("chunk-4a014042")]).then(n.bind(null,"9406"))},meta:{title:"首页",icon:"dashboard"}}]},{path:"/server",component:Se,children:[{path:"config",name:"服务配置",component:function(){return Promise.all([n.e("chunk-019c66da"),n.e("chunk-e4980b30")]).then(n.bind(null,"88aa"))},meta:{title:"服务配置",icon:"example"}}]},{path:"/vehicle",component:Se,children:[{path:"instance",name:"数据模拟",component:function(){return Promise.all([n.e("chunk-019c66da"),n.e("chunk-cd3ab578")]).then(n.bind(null,"ba75"))},meta:{title:"数据模拟",icon:"form"}}]},{path:"*",redirect:"/404",hidden:!0}],Me=function(){return new s["a"]({scrollBehavior:function(){return{y:0}},routes:He})},Be=Me();function Te(){var e=Me();Be.matcher=e.matcher}t["a"]=Be},b20f:function(e,t,n){e.exports={menuText:"#bfcbd9",menuActiveText:"#409eff",subMenuActiveText:"#f4f4f5",menuBg:"#304156",menuHover:"#263445",subMenuBg:"#1f2d3d",subMenuHover:"#001528",sideBarWidth:"210px"}},b3b5:function(e,t,n){"use strict";n.r(t);var a=n("e017"),i=n.n(a),o=n("21a1"),s=n.n(o),c=new i.a({id:"icon-user",use:"icon-user-usage",viewBox:"0 0 130 130",content:''});s.a.add(c);t["default"]=c},c459:function(e,t,n){},cbd7:function(e,t,n){},cf1e:function(e,t,n){e.exports={menuText:"#bfcbd9",menuActiveText:"#409eff",subMenuActiveText:"#f4f4f5",menuBg:"#304156",menuHover:"#263445",subMenuBg:"#1f2d3d",subMenuHover:"#001528",sideBarWidth:"210px"}},d633:function(e,t,n){"use strict";n("88a1")},d7ec:function(e,t,n){"use strict";n.r(t);var a=n("e017"),i=n.n(a),o=n("21a1"),s=n.n(o),c=new i.a({id:"icon-eye-open",use:"icon-eye-open-usage",viewBox:"0 0 1024 1024",content:''});s.a.add(c);t["default"]=c},dcf8:function(e,t,n){"use strict";n.r(t);var a=n("e017"),i=n.n(a),o=n("21a1"),s=n.n(o),c=new i.a({id:"icon-nested",use:"icon-nested-usage",viewBox:"0 0 128 128",content:''});s.a.add(c);t["default"]=c},eb1b:function(e,t,n){"use strict";n.r(t);var a=n("e017"),i=n.n(a),o=n("21a1"),s=n.n(o),c=new i.a({id:"icon-form",use:"icon-form-usage",viewBox:"0 0 128 128",content:''});s.a.add(c);t["default"]=c},f6c3:function(e,t,n){},f782:function(e,t,n){"use strict";n.r(t);var a=n("e017"),i=n.n(a),o=n("21a1"),s=n.n(o),c=new i.a({id:"icon-dashboard",use:"icon-dashboard-usage",viewBox:"0 0 128 100",content:''});s.a.add(c);t["default"]=c},f87e:function(e,t,n){"use strict";n("279e")}},[[0,"runtime","chunk-elementUI","chunk-libs"]]]); \ No newline at end of file diff --git a/src/main/resources/static/js/chunk-cd3ab578.ba31bb9e.js b/src/main/resources/static/js/chunk-cd3ab578.ba31bb9e.js deleted file mode 100644 index 2254f2f..0000000 --- a/src/main/resources/static/js/chunk-cd3ab578.ba31bb9e.js +++ /dev/null @@ -1 +0,0 @@ -(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([["chunk-cd3ab578"],{"0f49":function(e,t,a){"use strict";a("3cd3")},"3cd3":function(e,t,a){},b775:function(e,t,a){"use strict";a("d3b7");var l=a("bc3a"),i=a.n(l),n=a("5c96"),s=a("4360"),r=a("5f87"),o=i.a.create({baseURL:"/",timeout:5e3});o.interceptors.request.use((function(e){return s["a"].getters.token&&(e.headers["X-Token"]=Object(r["a"])()),e}),(function(e){return console.log(e),Promise.reject(e)})),o.interceptors.response.use((function(e){var t=e.data;return 200!==t.code?(Object(n["Message"])({message:t.msg||"Error",type:"error",duration:5e3}),50008!==t.code&&50012!==t.code&&50014!==t.code||n["MessageBox"].confirm("You have been logged out, you can cancel to stay on this page, or log in again","Confirm logout",{confirmButtonText:"Re-Login",cancelButtonText:"Cancel",type:"warning"}).then((function(){s["a"].dispatch("user/resetToken").then((function(){location.reload()}))})),Promise.reject(new Error(t.msg||"Error"))):t}),(function(e){return console.log("err"+e),Object(n["Message"])({message:e.message,type:"error",duration:5e3}),Promise.reject(e)})),t["a"]=o},ba75:function(e,t,a){"use strict";a.r(t);var l=function(){var e=this,t=e.$createElement,a=e._self._c||t;return a("div",{staticClass:"app-container"},[a("el-row",{staticStyle:{"margin-bottom":"10px",padding:"0 10px"},attrs:{gutter:10}},[a("el-col",{attrs:{span:24}},[a("el-button",{on:{click:function(t){e.addVehicleDrawer=!0}}},[e._v("添加车辆")]),a("el-button",{attrs:{type:"primary"},on:{click:function(t){e.genVehicleDialog=!0}}},[e._v("生成车辆")]),a("el-button",{attrs:{type:"success"},on:{click:e.vehicleUnifiedOnline}},[e._v("一键上线")]),a("el-button",{attrs:{type:"success"},on:{click:e.vehicleUnifiedOffline}},[e._v("一键离线")]),a("el-button",{attrs:{type:"primary"},on:{click:e.vehicleUnifiedSend}},[e._v("一键上报")]),a("el-button",{attrs:{type:"primary"},on:{click:e.vehicleUnifiedPosition}},[e._v("一键重置路径")]),a("el-button",{attrs:{type:"warning"},on:{click:e.vehicleUnifiedStop}},[e._v("一键取消上报")]),e.unifiedInfo.unifiedStatus?a("el-popover",{staticStyle:{"margin-left":"15px"},attrs:{placement:"top-start",title:"任务执行状态",width:"200",trigger:"hover"}},[a("el-progress",{attrs:{percentage:(e.unifiedInfo.taskSuccessSum+e.unifiedInfo.taskErrorSum)/e.unifiedInfo.taskExecutionSum*100,color:e.customColors}}),a("div",{staticStyle:{width:"100%",margin:"5px 0"}},[e._v("任务描述:"),a("el-tag",[e._v(e._s(e.unifiedInfo.taskName))])],1),a("div",{staticStyle:{width:"100%",margin:"5px 0"}},[e._v("任务总数:"),a("el-tag",[e._v(e._s(e.unifiedInfo.taskExecutionSum))])],1),a("div",{staticStyle:{width:"100%",margin:"5px 0"}},[e._v("成功总数:"),a("el-tag",[e._v(e._s(e.unifiedInfo.taskSuccessSum))])],1),a("div",{staticStyle:{width:"100%",margin:"5px 0"}},[e._v("失败总数:"),a("el-tag",[e._v(e._s(e.unifiedInfo.taskErrorSum))])],1),a("el-button",{attrs:{slot:"reference"},slot:"reference"},[e._v("有任务在执行")])],1):e._e()],1)],1),a("el-row",{attrs:{gutter:10}},[a("el-col",{attrs:{span:10}},[a("el-row",{staticStyle:{height:"100px"},attrs:{gutter:10}},[a("el-row",{staticStyle:{"margin-bottom":"10px",padding:"0 10px"},attrs:{gutter:10}},[a("el-col",{attrs:{span:6}},[a("el-input",{attrs:{"prefix-icon":"el-icon-search",placeholder:"VIN检索(模糊)"},model:{value:e.queryParams.vin,callback:function(t){e.$set(e.queryParams,"vin",t)},expression:"queryParams.vin"}})],1),a("el-col",{attrs:{span:6}},[a("el-switch",{staticStyle:{margin:"9px 0"},attrs:{"active-color":"#13ce66","inactive-text":"上线优先展示"},model:{value:e.queryParams.online,callback:function(t){e.$set(e.queryParams,"online",t)},expression:"queryParams.online"}})],1)],1),a("el-row",{staticStyle:{"margin-bottom":"10px",padding:"0 10px"},attrs:{gutter:10}},[a("el-pagination",{attrs:{"current-page":e.queryParams.page,"page-sizes":[10,20,30,50,100],"page-size":e.queryParams.pageSize,layout:"total, sizes, prev, pager, next, jumper",total:e.vehiclePage.total},on:{"size-change":e.pageSizeChange,"current-change":e.pageChange}})],1)],1),a("div",{staticClass:"grid-content bg-purple",style:{height:e.contentHeight-150+"px"}},[a("el-row",{attrs:{gutter:10}},e._l(e.vehiclePage.rows,(function(t){return a("el-col",{staticStyle:{margin:"0 0 10px 0"},attrs:{span:12}},[a("el-card",{staticClass:"box-card"},[a("div",{staticClass:"clearfix",attrs:{slot:"header"},slot:"header"},[a("el-tag",{staticStyle:{"padding-left":"0","padding-right":"0"},attrs:{type:t.online?"success":"info"}},[e._v(" "+e._s(t.vin)+" ")]),a("el-button",{staticStyle:{float:"right"},attrs:{type:"danger",size:"mini"},on:{click:function(a){return e.vehicleRemove(t.vin)}}},[e._v("删除")]),a("span",{staticStyle:{float:"right",color:"rgba(255,255,255,0)"}},[e._v("|")]),a("el-button",{staticStyle:{float:"right"},attrs:{type:e.checkVin===t.vin?"success":"",size:"mini",disabled:!t.online},on:{click:function(a){e.checkVin=t.vin}}},[e._v(e._s(e.checkVin===t.vin?"已选择":"选择"))]),a("span",{staticStyle:{float:"right",color:"rgba(255,255,255,0)"}},[e._v("|")]),t.online?e._e():a("el-button",{staticStyle:{float:"right"},attrs:{size:"mini"},on:{click:function(a){return e.clientInit(t.vin)}}},[e._v(" 上线 ")]),t.online?a("el-button",{staticStyle:{float:"right"},attrs:{size:"mini"},on:{click:function(a){return e.clientClose(t.vin)}}},[e._v(" 下线 ")]):e._e()],1),a("el-descriptions",{staticClass:"margin-top",attrs:{column:1,size:"mini",border:""}},[a("el-descriptions-item",[a("template",{slot:"label"},[a("i",{staticClass:"el-icon-discover"}),e._v(" 路线 ")]),a("el-radio-group",{attrs:{size:"mini"},on:{input:function(a){return e.checkPositionCode(t)}},model:{value:t.positionCode,callback:function(a){e.$set(t,"positionCode",a)},expression:"vehicle.positionCode"}},e._l(e.positionCodeList,(function(e){return a("el-radio-button",{attrs:{label:e}})})),1),a("el-tag",{staticStyle:{"margin-left":"15px"},attrs:{type:"success"}},[e._v(e._s(t.positionLength))])],2),a("el-descriptions-item",[a("template",{slot:"label"},[a("i",{staticClass:"el-icon-location-outline"}),e._v(" 档位 ")]),a("el-radio-group",{attrs:{size:"mini"},on:{input:function(a){return e.checkGear(t)}},model:{value:t.gear,callback:function(a){e.$set(t,"gear",a)},expression:"vehicle.gear"}},[a("el-radio-button",{attrs:{label:"P"}}),a("el-radio-button",{attrs:{label:"D"}})],1)],2),a("el-descriptions-item",[a("template",{slot:"label"},[a("i",{staticClass:"el-icon-mobile-phone"}),e._v(" 报文上报 ")]),a("el-radio-group",{attrs:{size:"mini"},on:{input:function(a){return e.checkMsg(t)}},model:{value:t.msgCode,callback:function(a){e.$set(t,"msgCode",a)},expression:"vehicle.msgCode"}},[a("el-radio-button",{attrs:{label:"上报"}}),a("el-radio-button",{attrs:{label:"暂停"}}),a("el-radio-button",{attrs:{label:"停止"}})],1)],2),a("el-descriptions-item",[a("template",{slot:"label"},[a("i",{staticClass:"el-icon-tickets"}),e._v(" 总里程 ")]),a("el-tag",{attrs:{size:"small"}},[e._v(e._s(t.mileage)+"/KM")])],2),a("el-descriptions-item",[a("template",{slot:"label"},[a("i",{staticClass:"el-icon-office-building"}),e._v(" 联系地址 ")]),e._v(" 江苏省苏州市吴中区吴中大道 1188 号 ")],2)],1)],1)],1)})),1)],1)],1),a("el-col",{attrs:{span:14}},[null==e.checkVin?a("el-empty",{attrs:{description:"请在左侧选择需要查看数据的车辆"}}):e._e(),null!=e.checkVin?a("div",{staticClass:"grid-content bg-purple",style:{height:e.contentHeight+"px"}},[a("div",{staticClass:"contentMain",style:{height:e.contentHeight/2-10+"px",width:"100%"}},[a("el-row",{attrs:{gutter:10}},[a("el-form",{ref:"form",attrs:{labelPosition:"top",model:e.vehicleData}},[a("el-col",{attrs:{span:12}},[a("div",{style:{height:e.contentHeight/2-10+"px",width:"100%","background-color":"#FFFFFF"}},[a("el-tabs",{style:{height:e.contentHeight/2-10+"px"},attrs:{"tab-position":"top",type:"border-card"}},[a("el-tab-pane",{attrs:{label:"基本信息"}},[a("div",{staticClass:"vehicleDataTab",style:{height:e.contentHeight/2-80+"px"}},[a("el-row",{attrs:{gutter:10}},[a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"车速"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.speed,callback:function(t){e.$set(e.vehicleData,"speed",t)},expression:"vehicleData.speed"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"总电压"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.voltage,callback:function(t){e.$set(e.vehicleData,"voltage",t)},expression:"vehicleData.voltage"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"总电流"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.current,callback:function(t){e.$set(e.vehicleData,"current",t)},expression:"vehicleData.current"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"绝缘电阻"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.resistance,callback:function(t){e.$set(e.vehicleData,"resistance",t)},expression:"vehicleData.resistance"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"加速踏板行程值"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.accelerationPedal,callback:function(t){e.$set(e.vehicleData,"accelerationPedal",t)},expression:"vehicleData.accelerationPedal"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"制动踏板行程值"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.brakePedal,callback:function(t){e.$set(e.vehicleData,"brakePedal",t)},expression:"vehicleData.brakePedal"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"燃料消耗率"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.fuelConsumptionRate,callback:function(t){e.$set(e.vehicleData,"fuelConsumptionRate",t)},expression:"vehicleData.fuelConsumptionRate"}})],1)],1)],1)],1)]),a("el-tab-pane",{attrs:{label:"电机"}},[a("div",{staticClass:"vehicleDataTab",style:{height:e.contentHeight/2-80+"px"}},[a("el-row",{attrs:{gutter:10}},[a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"电机控制器温度"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.motorControllerTemperature,callback:function(t){e.$set(e.vehicleData,"motorControllerTemperature",t)},expression:"vehicleData.motorControllerTemperature"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"电机转速"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.motorSpeed,callback:function(t){e.$set(e.vehicleData,"motorSpeed",t)},expression:"vehicleData.motorSpeed"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"电机转矩"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.motorTorque,callback:function(t){e.$set(e.vehicleData,"motorTorque",t)},expression:"vehicleData.motorTorque"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"电机温度"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.motorTemperature,callback:function(t){e.$set(e.vehicleData,"motorTemperature",t)},expression:"vehicleData.motorTemperature"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"电机电压"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.motorVoltage,callback:function(t){e.$set(e.vehicleData,"motorVoltage",t)},expression:"vehicleData.motorVoltage"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"电机电流"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.motorCurrent,callback:function(t){e.$set(e.vehicleData,"motorCurrent",t)},expression:"vehicleData.motorCurrent"}})],1)],1)],1)],1)]),a("el-tab-pane",{attrs:{label:"动力电池"}},[a("div",{staticClass:"vehicleDataTab",style:{height:e.contentHeight/2-80+"px"}},[a("el-row",{attrs:{gutter:10}},[a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"动力电池剩余电量SOC"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.remainingBattery,callback:function(t){e.$set(e.vehicleData,"remainingBattery",t)},expression:"vehicleData.remainingBattery"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"电池总容量"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.batteryLevel,callback:function(t){e.$set(e.vehicleData,"batteryLevel",t)},expression:"vehicleData.batteryLevel"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"当前状态允许的最大反馈功率"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.maximumFeedbackPower,callback:function(t){e.$set(e.vehicleData,"maximumFeedbackPower",t)},expression:"vehicleData.maximumFeedbackPower"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"当前状态允许最大放电功率"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.maximumDischargePower,callback:function(t){e.$set(e.vehicleData,"maximumDischargePower",t)},expression:"vehicleData.maximumDischargePower"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"BMS自检计数器"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.selfCheckCounter,callback:function(t){e.$set(e.vehicleData,"selfCheckCounter",t)},expression:"vehicleData.selfCheckCounter"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"动力电池充放电电流"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.totalBatteryCurrent,callback:function(t){e.$set(e.vehicleData,"totalBatteryCurrent",t)},expression:"vehicleData.totalBatteryCurrent"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"动力电池负载端总电压V3"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.totalBatteryVoltage,callback:function(t){e.$set(e.vehicleData,"totalBatteryVoltage",t)},expression:"vehicleData.totalBatteryVoltage"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"单次最大电压"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.singleBatteryMaxVoltage,callback:function(t){e.$set(e.vehicleData,"singleBatteryMaxVoltage",t)},expression:"vehicleData.singleBatteryMaxVoltage"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"单体电池最低电压"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.singleBatteryMinVoltage,callback:function(t){e.$set(e.vehicleData,"singleBatteryMinVoltage",t)},expression:"vehicleData.singleBatteryMinVoltage"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"单体电池最高温度"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.singleBatteryMaxTemperature,callback:function(t){e.$set(e.vehicleData,"singleBatteryMaxTemperature",t)},expression:"vehicleData.singleBatteryMaxTemperature"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"单体电池最低温度"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.singleBatteryMinTemperature,callback:function(t){e.$set(e.vehicleData,"singleBatteryMinTemperature",t)},expression:"vehicleData.singleBatteryMinTemperature"}})],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"动力电池可用容量"}},[a("el-input",{attrs:{disabled:""},model:{value:e.vehicleData.availableBatteryCapacity,callback:function(t){e.$set(e.vehicleData,"availableBatteryCapacity",t)},expression:"vehicleData.availableBatteryCapacity"}})],1)],1)],1)],1)])],1)],1)]),a("el-col",{attrs:{span:12}},[a("div",{style:{height:e.contentHeight/2-10+"px",width:"100%","background-color":"#FFFFFF"}},[a("el-tabs",{style:{height:e.contentHeight/2-10+"px"},attrs:{"tab-position":"top",type:"border-card"}},[a("el-tab-pane",{attrs:{label:"基本状态"}},[a("div",{staticClass:"vehicleDataTab",style:{height:e.contentHeight/2-80+"px"}},[a("el-row",{attrs:{gutter:10}},[a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"车辆状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("vehicleStatus")}},model:{value:e.vehicleData.vehicleStatus,callback:function(t){e.$set(e.vehicleData,"vehicleStatus",t)},expression:"vehicleData.vehicleStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"充电状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("chargingStatus")}},model:{value:e.vehicleData.chargingStatus,callback:function(t){e.$set(e.vehicleData,"chargingStatus",t)},expression:"vehicleData.chargingStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"运行状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("operatingStatus")}},model:{value:e.vehicleData.operatingStatus,callback:function(t){e.$set(e.vehicleData,"operatingStatus",t)},expression:"vehicleData.operatingStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"SOC状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("socStatus")}},model:{value:e.vehicleData.socStatus,callback:function(t){e.$set(e.vehicleData,"socStatus",t)},expression:"vehicleData.socStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"可充电储能装置工作状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("chargingEnergyStorageStatus")}},model:{value:e.vehicleData.chargingEnergyStorageStatus,callback:function(t){e.$set(e.vehicleData,"chargingEnergyStorageStatus",t)},expression:"vehicleData.chargingEnergyStorageStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"驱动电机状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("driveMotorStatus")}},model:{value:e.vehicleData.driveMotorStatus,callback:function(t){e.$set(e.vehicleData,"driveMotorStatus",t)},expression:"vehicleData.driveMotorStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"定位是否有效"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("positionStatus")}},model:{value:e.vehicleData.positionStatus,callback:function(t){e.$set(e.vehicleData,"positionStatus",t)},expression:"vehicleData.positionStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1)],1)],1)]),a("el-tab-pane",{attrs:{label:"组件状态"}},[a("div",{staticClass:"vehicleDataTab",style:{height:e.contentHeight/2-80+"px"}},[a("el-row",{attrs:{gutter:10}},[a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"EAS(汽车防盗系统)状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("easStatus")}},model:{value:e.vehicleData.easStatus,callback:function(t){e.$set(e.vehicleData,"easStatus",t)},expression:"vehicleData.easStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"PTC(电动加热器)状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("ptcStatus")}},model:{value:e.vehicleData.ptcStatus,callback:function(t){e.$set(e.vehicleData,"ptcStatus",t)},expression:"vehicleData.ptcStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"EPS(电动助力系统)状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("epsStatus")}},model:{value:e.vehicleData.epsStatus,callback:function(t){e.$set(e.vehicleData,"epsStatus",t)},expression:"vehicleData.epsStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"ABS(防抱死)状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("vehicleStatus")}},model:{value:e.vehicleData.absStatus,callback:function(t){e.$set(e.vehicleData,"absStatus",t)},expression:"vehicleData.absStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"MCU(电机/逆变器)状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("vehicleStatus")}},model:{value:e.vehicleData.mcuStatus,callback:function(t){e.$set(e.vehicleData,"mcuStatus",t)},expression:"vehicleData.mcuStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1)],1)],1)]),a("el-tab-pane",{attrs:{label:"电池状态"}},[a("div",{staticClass:"vehicleDataTab",style:{height:e.contentHeight/2-80+"px"}},[a("el-row",{attrs:{gutter:10}},[a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"动力电池加热状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("heatingStatus")}},model:{value:e.vehicleData.heatingStatus,callback:function(t){e.$set(e.vehicleData,"heatingStatus",t)},expression:"vehicleData.heatingStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"动力电池当前状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("batteryStatus")}},model:{value:e.vehicleData.batteryStatus,callback:function(t){e.$set(e.vehicleData,"batteryStatus",t)},expression:"vehicleData.batteryStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"动力电池保温状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("batteryInsulationStatus")}},model:{value:e.vehicleData.batteryInsulationStatus,callback:function(t){e.$set(e.vehicleData,"batteryInsulationStatus",t)},expression:"vehicleData.batteryInsulationStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"DCDC(电力交换系统)状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("dcdcStatus")}},model:{value:e.vehicleData.dcdcStatus,callback:function(t){e.$set(e.vehicleData,"dcdcStatus",t)},expression:"vehicleData.dcdcStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1),a("el-col",{attrs:{span:12}},[a("el-form-item",{attrs:{label:"CHG(充电机)状态"}},[a("el-radio-group",{on:{input:function(t){return e.statusChange("chgStatus")}},model:{value:e.vehicleData.chgStatus,callback:function(t){e.$set(e.vehicleData,"chgStatus",t)},expression:"vehicleData.chgStatus"}},[a("el-radio",{attrs:{label:1}},[e._v("正常")]),e._v(" "),a("el-radio",{attrs:{label:0}},[e._v("异常")])],1)],1)],1)],1)],1)])],1)],1)])],1)],1)],1),a("div",{staticClass:"contentMain",style:{height:e.contentHeight/2-10+"px",width:"100%","background-color":"#FFFFFF"}})]):e._e()],1)],1),a("el-drawer",{attrs:{title:"添加车辆",visible:e.addVehicleDrawer,direction:"ltr",size:"50%"},on:{"update:visible":function(t){e.addVehicleDrawer=t}}},[a("el-row",[a("el-col",{attrs:{span:22,offset:1}},[a("h3",{staticStyle:{color:"red"}},[e._v("一行一个VIN,多VIN进行换行")]),a("el-form",{ref:"form",attrs:{model:e.addForm,"label-position":"top","label-width":"80px"}},[a("el-form-item",{attrs:{label:"车辆VIN"}},[a("el-input",{attrs:{type:"textarea",rows:35},model:{value:e.addForm.vinStr,callback:function(t){e.$set(e.addForm,"vinStr",t)},expression:"addForm.vinStr"}})],1),a("el-form-item",[a("el-button",{attrs:{type:"primary"},on:{click:e.vehicleCreate}},[e._v("添加车辆")]),a("el-button",[e._v("取消")])],1)],1)],1)],1)],1),a("el-dialog",{attrs:{title:"生成车辆",visible:e.genVehicleDialog,width:"30%"},on:{"update:visible":function(t){e.genVehicleDialog=t}}},[a("el-row",[a("el-col",{attrs:{offset:1,span:22}},[a("el-form",{ref:"form",attrs:{model:e.genForm,"label-position":"top","label-width":"80px"}},[a("el-form-item",{attrs:{label:"生成车辆数量 最高99999"}},[a("el-input-number",{staticStyle:{width:"100%"},attrs:{"controls-position":"right",min:1,max:99999},model:{value:e.genForm.number,callback:function(t){e.$set(e.genForm,"number",t)},expression:"genForm.number"}})],1)],1)],1)],1),a("span",{staticClass:"dialog-footer",attrs:{slot:"footer"},slot:"footer"},[a("el-button",{on:{click:function(t){e.genVehicleDialog=!1}}},[e._v("取 消")]),a("el-button",{attrs:{type:"primary"},on:{click:e.vehicleGen}},[e._v("确 定")])],1)],1)],1)},i=[],n=(a("99af"),a("b775"));function s(e){return Object(n["a"])({url:"/vehicle/instance/list",method:"post",data:e})}function r(e){return Object(n["a"])({url:"/vehicle/instance/data/".concat(e),method:"GET"})}function o(e,t,a){return Object(n["a"])({url:"/vehicle/instance/status/".concat(e,"/").concat(t,"/").concat(a),method:"PUT"})}function c(e){return Object(n["a"])({url:"/vehicle/instance/client/init/".concat(e),method:"post"})}function u(e){return Object(n["a"])({url:"/vehicle/instance/client/close/".concat(e),method:"post"})}function h(e,t){return Object(n["a"])({url:"/vehicle/instance/position/check",method:"post",data:{vin:e,positionCode:t}})}function v(e,t){return Object(n["a"])({url:"/vehicle/instance/msg",method:"post",data:{vin:e,msgCode:t}})}function d(e,t){return Object(n["a"])({url:"/vehicle/instance/gear",method:"post",data:{vin:e,gear:t}})}function p(){return Object(n["a"])({url:"/vehicle/instance/unified/online",method:"post"})}function m(){return Object(n["a"])({url:"/vehicle/instance/unified/offline",method:"post"})}function g(){return Object(n["a"])({url:"/vehicle/instance/unified/send",method:"post"})}function f(){return Object(n["a"])({url:"/vehicle/instance/unified/position",method:"post"})}function b(){return Object(n["a"])({url:"/vehicle/instance/unified/stop",method:"post"})}function D(){return Object(n["a"])({url:"/vehicle/instance/unified/status",method:"GET"})}function y(){return Object(n["a"])({url:"/vehicle/position/list",method:"get"})}function S(e){return Object(n["a"])({url:"/vehicle/create",method:"post",data:e})}function k(e){return Object(n["a"])({url:"/vehicle/gen/".concat(e),method:"GET"})}function x(e){return Object(n["a"])({url:"/vehicle/".concat(e),method:"DELETE"})}var _={data:function(){return{contentHeight:1024,checkVin:null,positionCodeList:[],vehiclePage:{rows:[],total:0},queryParams:{page:1,pageSize:10,vin:null,online:!0},intervalInstanceList:null,intervalVehicleDataContinued:null,vehicleData:{},addVehicleDrawer:!1,addForm:{vinStr:null},genVehicleDialog:!1,genForm:{number:0},unifiedInfo:{unifiedStatus:!1,taskName:null,taskExecutionSum:null,taskStartTime:null,taskSuccessSum:null,taskErrorSum:null},unifiedInfoInterval:null,customColors:[{color:"#f56c6c",percentage:20},{color:"#e6a23c",percentage:40},{color:"#1989fa",percentage:60},{color:"#6f7ad3",percentage:80},{color:"#5cb87a",percentage:100}]}},created:function(){this.contentHeight=window.innerHeight-60,this.initInstanceList(),this.initPositionList(),this.intervalVehicleDataContinued=setInterval(this.vehicleDataContinued,1e3)},methods:{vehicleUnifiedStatus:function(){var e=this;D().then((function(t){e.unifiedInfo=t.data,e.unifiedInfo.unifiedStatus||clearInterval(e.unifiedInfoInterval)}))},vehicleUnifiedOnline:function(){var e=this;p().then((function(t){e.$notify({title:"操作提示",message:t.msg,type:200===t.code?"success":"error"}),e.unifiedInfoInterval=setInterval(e.vehicleUnifiedStatus,100)}))},vehicleUnifiedOffline:function(){var e=this;m().then((function(t){e.checkVin=null,e.$notify({title:"操作提示",message:t.msg,type:200===t.code?"success":"error"})}))},vehicleUnifiedSend:function(){var e=this;g().then((function(t){e.$notify({title:"操作提示",message:t.msg,type:200===t.code?"success":"error"})}))},vehicleUnifiedPosition:function(){var e=this;f().then((function(t){e.$notify({title:"操作提示",message:t.msg,type:200===t.code?"success":"error"})}))},vehicleUnifiedStop:function(){var e=this;b().then((function(t){e.$notify({title:"操作提示",message:t.msg,type:200===t.code?"success":"error"})}))},pageSizeChange:function(e){this.queryParams.pageSize=e,this.getInstanceList()},pageChange:function(e){this.queryParams.page=e,this.getInstanceList()},vehicleGen:function(){var e=this;k(this.genForm.number).then((function(t){e.genVehicleDialog=!1,e.$notify({title:"操作提示",message:t.msg,type:200===t.code?"success":"error"})}))},vehicleCreate:function(){var e=this;S(this.addForm).then((function(t){e.addVehicleDrawer=!1,e.$notify({title:"操作提示",message:t.msg,type:200===t.code?"success":"error"})}))},vehicleRemove:function(e){var t=this;x(e).then((function(e){t.getInstanceList(),t.$notify({title:"操作提示",message:e.msg,type:200===e.code?"success":"error"})}))},vehicleDataContinued:function(){var e=this;null!=this.checkVin&&r(this.checkVin).then((function(t){e.vehicleData=t.data}))},statusChange:function(e){var t=this;o(this.checkVin,e,this.vehicleData[e]).then((function(e){t.$notify({title:"操作提示",message:e.msg,type:200===e.code?"success":"error"})}))},checkGear:function(e){var t=this;d(e.vin,e.gear).then((function(e){t.getInstanceList(),t.$notify({title:"操作提示",message:e.msg,type:200===e.code?"success":"error"})}))},checkMsg:function(e){var t=this;v(e.vin,e.msgCode).then((function(e){t.getInstanceList(),t.$notify({title:"操作提示",message:e.msg,type:200===e.code?"success":"error"})}))},checkPositionCode:function(e){var t=this;h(e.vin,e.positionCode).then((function(e){t.getInstanceList(),t.$notify({title:"操作提示",message:e.msg,type:200===e.code?"success":"error"})}))},initPositionList:function(){var e=this;y().then((function(t){e.positionCodeList=t.data}))},initInstanceList:function(){this.getInstanceList(),this.intervalInstanceList=setInterval(this.getInstanceList,3e3)},getInstanceList:function(){var e=this;s(this.queryParams).then((function(t){e.vehiclePage=t.data}))},clientInit:function(e){var t=this;c(e).then((function(e){t.getInstanceList(),t.$notify({title:"操作提示",message:e.msg,type:200===e.code?"success":"error"})}))},clientClose:function(e){var t=this;u(e).then((function(a){t.getInstanceList(),e===t.checkVin&&(t.checkVin=null),t.$notify({title:"操作提示",message:a.msg,type:200===a.code?"success":"error"})}))}}},C=_,$=(a("0f49"),a("2877")),w=Object($["a"])(C,l,i,!1,null,"5503ff78",null);t["default"]=w.exports}}]); \ No newline at end of file diff --git a/src/test/java/com/AdminTest.java b/src/test/java/com/AdminTest.java deleted file mode 100644 index b3fb277..0000000 --- a/src/test/java/com/AdminTest.java +++ /dev/null @@ -1,34 +0,0 @@ -package com; - -import com.muyu.VehicleSimulationApplication; -import com.muyu.web.common.Result; -import com.muyu.vehicle.api.ClientAdmin; -import com.muyu.vehicle.api.req.VehicleConnectionReq; -import org.junit.jupiter.api.Test; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.boot.test.context.SpringBootTest; - -/** - * @author DongZl - * @description: - * @Date 2023-11-28 上午 10:36 - */ -@SpringBootTest(classes = VehicleSimulationApplication.class) -public class AdminTest { - - @Autowired - private ClientAdmin clientAdmin; - - @Test - public void vehicleConnTest(){ - Result result = clientAdmin.getVehicleLoadAddr( - serviceConfigProperties, VehicleConnectionReq.builder() - .vin("VIN1234567894") - .timestamp(String.valueOf(System.currentTimeMillis())) - .userName("156841600") - .nonce("134812") - .build() - ); - System.out.println(result); - } -}