{"ast":null,"code":"import { Dialog } from 'vant';\nimport protocolContent from \"@/components/protocolContent\";\nimport feeComponent from \"@/components/feeComponent\";\nimport { getFeeTitle, feeList } from '@/utils/common';\nimport { getFee, getCurrentOrder, createOrder } from '@/api/order';\nimport { serverList } from '@/utils/serverMap';\nimport tabBar from \"@/components/tabBar\";\nimport AttentionItem from '@/components/attentionItem';\nimport commonBtn from \"@/components/commonBtn\";\nimport { myMixins } from '@/utils/myMixins.js';\nexport default {\n name: \"rescuePage\",\n mixins: [myMixins],\n data() {\n return {\n map: '',\n activeTab: 0,\n serverList: serverList,\n checked: false,\n feeTitle: '',\n feeListArr: [],\n extraFee: 0,\n show: false,\n protocolShow: false,\n marker: null,\n destMarker: null,\n form: {\n plateNumber: '',\n name: '',\n phone: ''\n }\n };\n },\n components: {\n tabBar,\n AttentionItem,\n commonBtn,\n feeComponent,\n protocolContent\n },\n async mounted() {\n await this.initMap();\n await this.setTab(); // 设置服务\n await this.setMarker();\n await this.getFeeFun();\n this.form.phone = localStorage.getItem('userPhone');\n },\n methods: {\n async ownClickHandler() {\n if (!this.form.plateNumber) {\n this.$toast('请输入车牌号');\n return;\n }\n if (!this.form.name) {\n this.$toast('请输入您的姓名');\n return;\n }\n if (!this.form.phone) {\n this.$toast('请输入您的手机号');\n return;\n }\n if (!/^1[3456789]\\d{9}$/.test(this.form.phone)) {\n this.$toast('请输入正确的手机号');\n return;\n }\n if (!this.checked) {\n this.$toast('请先同意协议');\n return;\n }\n let res = await getCurrentOrder({\n appCode: localStorage.getItem('appCode'),\n userPhone: this.form.phone,\n isPresent: 1,\n plateNumber: this.form.plateNumber\n });\n if (res?.ticketId) {\n // 已存在订单\n Dialog.alert({\n title: '提示',\n message: '您当前已有订单,不能重复下单'\n }).then(async () => {\n await this.goDetail(res);\n /*this.goPage('orderStatus', {\r\n ticketId: res.ticketId,\r\n userPhone: this.form.phone,\r\n plateNumber: this.form.plateNumber\r\n })*/\n });\n } else {\n // 不存在订单,创建订单\n let params = this.getParams();\n let res = await createOrder({\n ...params,\n userPhone: this.form.phone,\n userName: this.form.name,\n plateNumber: this.form.plateNumber,\n channel: localStorage.getItem('channel') || ''\n });\n await this.$store.dispatch('order/setAddress', {});\n await this.$store.dispatch('order/setDestAddress', {});\n await this.$store.dispatch('order/setOrderInfo', {});\n await this.goDetail(res);\n /*if( res.orderStatus == 17 ) { // 代付款页\r\n this.goPage('payPage', {\r\n ticketId: res.ticketId\r\n })\r\n } else { // 订单状态页\r\n this.goPage('orderStatus', {\r\n ticketId: res.ticketId,\r\n userPhone: this.form.phone,\r\n plateNumber: this.form.plateNumber\r\n })\r\n }*/\n }\n },\n\n goDetail(result) {\n if (result.orderStatus == 17) {\n // 代付款页\n this.goPage('payPage', {\n ticketId: result.ticketId,\n lat: result.startLat,\n lng: result.startLng,\n userPhone: this.form.phone,\n plateNumber: this.form.plateNumber\n });\n } else {\n // 订单状态页\n this.goPage('orderStatus', {\n ticketId: result.ticketId,\n userPhone: this.form.phone,\n plateNumber: this.form.plateNumber\n });\n }\n },\n getParams() {\n const address = this.$store.getters.order.address;\n const destAddress = this.$store.getters.order.destAddress;\n const orderInfo = this.$store.getters.order.orderInfo;\n let params = {\n appCode: localStorage.getItem('appCode'),\n serviceId: this.serverList[this.activeTab].serverId,\n startLat: address?.startLat,\n startLng: address?.startLng,\n startPoiAddress: address?.startPoiAddress,\n endLat: destAddress?.endLat || '',\n endLng: destAddress?.endLng || '',\n endPoiAddress: destAddress?.endPoiAddress || '',\n isAppoint: orderInfo?.isAppoint,\n appointTime: orderInfo?.appointTime ? orderInfo?.appointTime + ':00' : '',\n positionEnvironment: parseInt(orderInfo?.positionEnvironment)\n };\n return params;\n },\n async getFeeFun() {\n // 获取费用说明\n let params = this.getParams();\n let res = await getFee(params);\n console.log('feee', res);\n this.extraFee = res?.extraFee;\n this.feeTitle = await getFeeTitle(this.serverList[this.activeTab].serverId, res.finishedPrice, res.trailUndergroundFee, res.finishedLimitedMileage, res.finishedExcessUnitPrice);\n let unitPrice = res?.finishedExcessUnitPrice || 0;\n this.feeListArr = await feeList(unitPrice);\n },\n initMap() {\n this.map = new AMap.Map('mapId', {\n viewMode: '2D',\n // 默认使用 2D 模式\n zoom: 11 //初始化地图层级\n });\n },\n\n setTab() {\n this.activeTab = this.$store.getters.order.orderInfo.activeTab;\n },\n setMarker() {\n this.addMarker();\n if (this.serverList[this.activeTab].serverId == 1041) {\n this.addDestMarker();\n }\n },\n // 事发地 marker\n addMarker() {\n const address = this.$store.getters.order.address;\n if (this.marker) {\n this.map.remove(this.marker);\n }\n let content = '
';\n this.marker = new AMap.Marker({\n position: new AMap.LngLat(address.startLng, address.startLat),\n content: content,\n offset: new AMap.Pixel(-13, -30)\n });\n this.map.add(this.marker);\n },\n // 目的地 marker\n addDestMarker() {\n const destAddress = this.$store.getters.order.destAddress;\n if (this.destMarker) {\n this.map.remove(this.destMarker);\n }\n let content = '
';\n this.destMarker = new AMap.Marker({\n position: new AMap.LngLat(destAddress?.endLng, destAddress?.endLat),\n content: content,\n offset: new AMap.Pixel(-13, -30)\n });\n this.map.add(this.destMarker);\n }\n }\n};","map":{"version":3,"names":["Dialog","protocolContent","feeComponent","getFeeTitle","feeList","getFee","getCurrentOrder","createOrder","serverList","tabBar","AttentionItem","commonBtn","myMixins","name","mixins","data","map","activeTab","checked","feeTitle","feeListArr","extraFee","show","protocolShow","marker","destMarker","form","plateNumber","phone","components","mounted","initMap","setTab","setMarker","getFeeFun","localStorage","getItem","methods","ownClickHandler","$toast","test","res","appCode","userPhone","isPresent","ticketId","alert","title","message","then","goDetail","params","getParams","userName","channel","$store","dispatch","result","orderStatus","goPage","lat","startLat","lng","startLng","address","getters","order","destAddress","orderInfo","serviceId","serverId","startPoiAddress","endLat","endLng","endPoiAddress","isAppoint","appointTime","positionEnvironment","parseInt","console","log","finishedPrice","trailUndergroundFee","finishedLimitedMileage","finishedExcessUnitPrice","unitPrice","AMap","Map","viewMode","zoom","addMarker","addDestMarker","remove","content","Marker","position","LngLat","offset","Pixel","add"],"sources":["src/views/index/rescue.vue"],"sourcesContent":["\r\n\r\n\r\n\r\n\r\n\r\n"],"mappings":"AAwDA,SAAAA,MAAA;AACA,OAAAC,eAAA;AACA,OAAAC,YAAA;AACA,SAAAC,WAAA,EAAAC,OAAA;AACA,SAAAC,MAAA,EAAAC,eAAA,EAAAC,WAAA;AACA,SAAAC,UAAA;AACA,OAAAC,MAAA;AACA,OAAAC,aAAA;AACA,OAAAC,SAAA;AACA,SAAAC,QAAA;AACA;EACAC,IAAA;EACAC,MAAA,GAAAF,QAAA;EACAG,KAAA;IACA;MACAC,GAAA;MACAC,SAAA;MACAT,UAAA,EAAAA,UAAA;MACAU,OAAA;MACAC,QAAA;MACAC,UAAA;MACAC,QAAA;MACAC,IAAA;MACAC,YAAA;MACAC,MAAA;MACAC,UAAA;MACAC,IAAA;QACAC,WAAA;QACAd,IAAA;QACAe,KAAA;MACA;IACA;EACA;EACAC,UAAA;IACApB,MAAA;IACAC,aAAA;IACAC,SAAA;IACAT,YAAA;IACAD;EACA;EACA,MAAA6B,QAAA;IACA,WAAAC,OAAA;IACA,WAAAC,MAAA;IACA,WAAAC,SAAA;IACA,WAAAC,SAAA;IACA,KAAAR,IAAA,CAAAE,KAAA,GAAAO,YAAA,CAAAC,OAAA;EACA;EACAC,OAAA;IACA,MAAAC,gBAAA;MACA,UAAAZ,IAAA,CAAAC,WAAA;QACA,KAAAY,MAAA;QACA;MACA;MACA,UAAAb,IAAA,CAAAb,IAAA;QACA,KAAA0B,MAAA;QACA;MACA;MACA,UAAAb,IAAA,CAAAE,KAAA;QACA,KAAAW,MAAA;QACA;MACA;MACA,yBAAAC,IAAA,MAAAd,IAAA,CAAAE,KAAA;QACA,KAAAW,MAAA;QACA;MACA;MACA,UAAArB,OAAA;QACA,KAAAqB,MAAA;QACA;MACA;MACA,IAAAE,GAAA,SAAAnC,eAAA;QACAoC,OAAA,EAAAP,YAAA,CAAAC,OAAA;QACAO,SAAA,OAAAjB,IAAA,CAAAE,KAAA;QACAgB,SAAA;QACAjB,WAAA,OAAAD,IAAA,CAAAC;MACA;MACA,IAAAc,GAAA,EAAAI,QAAA;QAAA;QACA7C,MAAA,CAAA8C,KAAA;UACAC,KAAA;UACAC,OAAA;QACA,GAAAC,IAAA;UACA,WAAAC,QAAA,CAAAT,GAAA;UACA;AACA;AACA;AACA;AACA;QACA;MACA;QAAA;QACA,IAAAU,MAAA,QAAAC,SAAA;QACA,IAAAX,GAAA,SAAAlC,WAAA;UACA,GAAA4C,MAAA;UACAR,SAAA,OAAAjB,IAAA,CAAAE,KAAA;UACAyB,QAAA,OAAA3B,IAAA,CAAAb,IAAA;UACAc,WAAA,OAAAD,IAAA,CAAAC,WAAA;UACA2B,OAAA,EAAAnB,YAAA,CAAAC,OAAA;QACA;QACA,WAAAmB,MAAA,CAAAC,QAAA;QACA,WAAAD,MAAA,CAAAC,QAAA;QACA,WAAAD,MAAA,CAAAC,QAAA;QACA,WAAAN,QAAA,CAAAT,GAAA;QACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;MACA;IAEA;;IACAS,SAAAO,MAAA;MACA,IAAAA,MAAA,CAAAC,WAAA;QAAA;QACA,KAAAC,MAAA;UACAd,QAAA,EAAAY,MAAA,CAAAZ,QAAA;UACAe,GAAA,EAAAH,MAAA,CAAAI,QAAA;UACAC,GAAA,EAAAL,MAAA,CAAAM,QAAA;UACApB,SAAA,OAAAjB,IAAA,CAAAE,KAAA;UACAD,WAAA,OAAAD,IAAA,CAAAC;QACA;MACA;QAAA;QACA,KAAAgC,MAAA;UACAd,QAAA,EAAAY,MAAA,CAAAZ,QAAA;UACAF,SAAA,OAAAjB,IAAA,CAAAE,KAAA;UACAD,WAAA,OAAAD,IAAA,CAAAC;QACA;MACA;IACA;IACAyB,UAAA;MACA,MAAAY,OAAA,QAAAT,MAAA,CAAAU,OAAA,CAAAC,KAAA,CAAAF,OAAA;MACA,MAAAG,WAAA,QAAAZ,MAAA,CAAAU,OAAA,CAAAC,KAAA,CAAAC,WAAA;MACA,MAAAC,SAAA,QAAAb,MAAA,CAAAU,OAAA,CAAAC,KAAA,CAAAE,SAAA;MACA,IAAAjB,MAAA;QACAT,OAAA,EAAAP,YAAA,CAAAC,OAAA;QACAiC,SAAA,OAAA7D,UAAA,MAAAS,SAAA,EAAAqD,QAAA;QACAT,QAAA,EAAAG,OAAA,EAAAH,QAAA;QACAE,QAAA,EAAAC,OAAA,EAAAD,QAAA;QACAQ,eAAA,EAAAP,OAAA,EAAAO,eAAA;QACAC,MAAA,EAAAL,WAAA,EAAAK,MAAA;QACAC,MAAA,EAAAN,WAAA,EAAAM,MAAA;QACAC,aAAA,EAAAP,WAAA,EAAAO,aAAA;QACAC,SAAA,EAAAP,SAAA,EAAAO,SAAA;QACAC,WAAA,EAAAR,SAAA,EAAAQ,WAAA,GAAAR,SAAA,EAAAQ,WAAA;QACAC,mBAAA,EAAAC,QAAA,CAAAV,SAAA,EAAAS,mBAAA;MACA;MACA,OAAA1B,MAAA;IACA;IACA,MAAAjB,UAAA;MAAA;MACA,IAAAiB,MAAA,QAAAC,SAAA;MACA,IAAAX,GAAA,SAAApC,MAAA,CAAA8C,MAAA;MACA4B,OAAA,CAAAC,GAAA,SAAAvC,GAAA;MACA,KAAApB,QAAA,GAAAoB,GAAA,EAAApB,QAAA;MACA,KAAAF,QAAA,SAAAhB,WAAA,MAAAK,UAAA,MAAAS,SAAA,EAAAqD,QAAA,EAAA7B,GAAA,CAAAwC,aAAA,EAAAxC,GAAA,CAAAyC,mBAAA,EAAAzC,GAAA,CAAA0C,sBAAA,EAAA1C,GAAA,CAAA2C,uBAAA;MACA,IAAAC,SAAA,GAAA5C,GAAA,EAAA2C,uBAAA;MACA,KAAAhE,UAAA,SAAAhB,OAAA,CAAAiF,SAAA;IACA;IACAtD,QAAA;MACA,KAAAf,GAAA,OAAAsE,IAAA,CAAAC,GAAA;QACAC,QAAA;QAAA;QACAC,IAAA;MACA;IACA;;IACAzD,OAAA;MACA,KAAAf,SAAA,QAAAsC,MAAA,CAAAU,OAAA,CAAAC,KAAA,CAAAE,SAAA,CAAAnD,SAAA;IACA;IACAgB,UAAA;MACA,KAAAyD,SAAA;MACA,SAAAlF,UAAA,MAAAS,SAAA,EAAAqD,QAAA;QACA,KAAAqB,aAAA;MACA;IACA;IACA;IACAD,UAAA;MACA,MAAA1B,OAAA,QAAAT,MAAA,CAAAU,OAAA,CAAAC,KAAA,CAAAF,OAAA;MACA,SAAAxC,MAAA;QACA,KAAAR,GAAA,CAAA4E,MAAA,MAAApE,MAAA;MACA;MACA,IAAAqE,OAAA;MACA,KAAArE,MAAA,OAAA8D,IAAA,CAAAQ,MAAA;QACAC,QAAA,MAAAT,IAAA,CAAAU,MAAA,CAAAhC,OAAA,CAAAD,QAAA,EAAAC,OAAA,CAAAH,QAAA;QACAgC,OAAA,EAAAA,OAAA;QACAI,MAAA,MAAAX,IAAA,CAAAY,KAAA;MACA;MACA,KAAAlF,GAAA,CAAAmF,GAAA,MAAA3E,MAAA;IACA;IACA;IACAmE,cAAA;MACA,MAAAxB,WAAA,QAAAZ,MAAA,CAAAU,OAAA,CAAAC,KAAA,CAAAC,WAAA;MACA,SAAA1C,UAAA;QACA,KAAAT,GAAA,CAAA4E,MAAA,MAAAnE,UAAA;MACA;MACA,IAAAoE,OAAA;MACA,KAAApE,UAAA,OAAA6D,IAAA,CAAAQ,MAAA;QACAC,QAAA,MAAAT,IAAA,CAAAU,MAAA,CAAA7B,WAAA,EAAAM,MAAA,EAAAN,WAAA,EAAAK,MAAA;QACAqB,OAAA,EAAAA,OAAA;QACAI,MAAA,MAAAX,IAAA,CAAAY,KAAA;MACA;MACA,KAAAlF,GAAA,CAAAmF,GAAA,MAAA1E,UAAA;IACA;EACA;AACA"},"metadata":{},"sourceType":"module","externalDependencies":[]}