apply-clients 3.4.2 → 3.4.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/android.html +23 -23
- package/build/dev-server.js +119 -119
- package/build/webpack.base.conf.js +2 -1
- package/build/webpack.dev.conf.js +12 -0
- package/dingding.html +23 -0
- package/index.html +33 -33
- package/package.json +2 -1
- package/src/AndroidApp.vue +35 -35
- package/src/DingDingApp.vue +51 -0
- package/src/android.js +21 -21
- package/src/apply.js +38 -13
- package/src/applyAndroid.js +46 -32
- package/src/applyDingDing.js +12 -0
- package/src/components/android/AppOnetomany.vue +343 -301
- package/src/components/android/AppServiceView.vue +189 -10
- package/src/components/android/AppSign.vue +19 -7
- package/src/components/android/AppTakePic.vue +143 -143
- package/src/components/android/AreaSelect/AppQrcodeReader.vue +73 -0
- package/src/components/android/AreaSelect/AppResAreaMapGroup.vue +148 -0
- package/src/components/android/AreaSelect/AppResAreaSelect.vue +108 -0
- package/src/components/android/AreaSelect/AppResAreaSelectGroup.vue +142 -0
- package/src/components/android/Function/AppFunctionServiceControl.vue +344 -0
- package/src/components/android/Function/AppInstallFunction.vue +366 -0
- package/src/components/android/Process/AppExplorationUser.vue +500 -320
- package/src/components/android/Process/AppServiceControl.vue +999 -48
- package/src/components/android/Process/Processes/AppAddMaterialScience.vue +477 -0
- package/src/components/android/Process/Processes/AppBuildSign.vue +46 -0
- package/src/components/android/Process/Processes/AppChargeManagement.vue +637 -0
- package/src/components/android/Process/Processes/AppDevicesManagement.vue +519 -0
- package/src/components/android/Process/Processes/AppInstallationDetails.vue +116 -90
- package/src/components/android/Process/Processes/AppSupplementalAgreement.vue +298 -0
- package/src/components/android/Process/Processes/selectApply.vue +250 -0
- package/src/components/android/Process/Processes/selectUserinfo.vue +182 -0
- package/src/components/android/ProgressReport/ProgressReportDetail.vue +64 -64
- package/src/components/android/Supervisory/AppProcessSupervisory.vue +205 -71
- package/src/components/android/Supervisory/AppSupervisoryCart.vue +69 -34
- package/src/components/android/TaskGraph.vue +125 -125
- package/src/components/common/TabButton.vue +149 -0
- package/src/components/common/Tabs.vue +67 -0
- package/src/components/image/dwg.jpg +0 -0
- package/src/components/image/txt.jpg +0 -0
- package/src/components/image//345/221/250/345/217/243/346/224/266/346/254/276/344/270/223/347/224/250/347/253/240.png +0 -0
- package/src/components/image//350/245/277/345/215/216/346/224/266/346/254/276/344/270/223/347/224/250/347/253/240.png +0 -0
- package/src/components/image//351/203/270/345/237/216/346/224/266/346/254/276/344/270/223/347/224/250/347/253/240.png +0 -0
- package/src/components/image//351/241/271/345/237/216/346/224/266/346/254/276/344/270/223/347/224/250/347/253/240.png +0 -0
- package/src/components/image//351/271/277/351/202/221/346/224/266/346/254/276/344/270/223/347/224/250/347/253/240.png +0 -0
- package/src/components/product/ApplyCharge/ApplyChargeList.vue +272 -53
- package/src/components/product/ApplyCharge/ApplyChargeSearch.vue +3 -3
- package/src/components/product/AreaSelect/MyAreaSelect.vue +423 -0
- package/src/components/product/AreaSelect/ResAreaSelect.vue +106 -0
- package/src/components/product/AreaSelect/ResAreaSelectGroup.vue +150 -0
- package/src/components/product/AreaSelect/utils/EventListener.js +29 -0
- package/src/components/product/AreaSelect/utils/coerceBoolean.js +7 -0
- package/src/components/product/Business/BusinessApply.vue +269 -0
- package/src/components/product/Business/CivilApply.vue +269 -0
- package/src/components/product/Function/InstallFunction.vue +132 -125
- package/src/components/product/Function/InstallInfoSelect.vue +320 -292
- package/src/components/product/Function/Service/FunctionServiceControl.vue +445 -222
- package/src/components/product/GaoDeMapComponents/GaoDeMap.vue +231 -0
- package/src/components/product/GroupByApply/ApplyGroupByList.vue +253 -0
- package/src/components/product/GroupByApply/ApplyGroupByMain.vue +53 -0
- package/src/components/product/GroupByApply/ApplyGroupByPaper.vue +376 -0
- package/src/components/product/Install/InstallProject.vue +194 -0
- package/src/components/product/Material/MaterialDetailed.vue +262 -0
- package/src/components/product/OldApply/Handle/HandleApply.vue +337 -0
- package/src/components/product/OldApply/Monitor/MonitorApply.vue +360 -0
- package/src/components/product/OldApply/OldApply.vue +209 -0
- package/src/components/product/OldApply/OldApplyMessage.vue +420 -0
- package/src/components/product/Onetomany.vue +406 -377
- package/src/components/product/Print/BuildOrder/buildOrderList.vue +339 -0
- package/src/components/product/Print/BuildOrder/printBuildOrder.vue +157 -0
- package/src/components/product/Print/IgnitionBill/IgnitionBill.vue +259 -0
- package/src/components/product/Print/IgnitionBill/printIgnitionBill.vue +168 -0
- package/src/components/product/Process/ExplorationSelect.vue +495 -410
- package/src/components/product/Process/ExplorationUser.vue +189 -138
- package/src/components/product/Process/Processes/InstallationDetails.vue +25 -7
- package/src/components/product/Process/Processes/Print/printCharge.vue +41 -17
- package/src/components/product/Process/Processes/Print/printChargepc.vue +142 -0
- package/src/components/product/Process/Processes/Print/printRefund.vue +196 -0
- package/src/components/product/Process/Processes/addMaterialScience.vue +454 -0
- package/src/components/product/Process/Processes/addressAndUserinfoManagement.vue +211 -207
- package/src/components/product/Process/Processes/chargeManagement.vue +20 -3
- package/src/components/product/Process/Processes/devicesManagement.vue +484 -478
- package/src/components/product/Process/Processes/selectApply.vue +2 -2
- package/src/components/product/Process/Service/ServiceControl.vue +638 -20
- package/src/components/product/Process/Service/ShowBackReason.vue +33 -33
- package/src/components/product/Process/ShowBackReason.vue +33 -0
- package/src/components/product/ServiceView.vue +357 -7
- package/src/components/product/Stop/StopApply.vue +101 -103
- package/src/components/product/Stop/StopApplyList.vue +271 -269
- package/src/components/product/Supervisory/Service/SupervisoryServiceControl.vue +884 -186
- package/src/components/product/Supervisory/SupervisoryControl.vue +137 -100
- package/src/components/product/Supervisory/SupervisoryList.vue +201 -30
- package/src/components/product/Supervisory/SupervisoryhCart.vue +130 -107
- package/src/components/product/VueUtils/ApplyUpload.vue +275 -273
- package/src/components/product/VueUtils/GaoPaiYi/HighMeter.vue +1090 -0
- package/src/components/product/VueUtils/HighMeter.vue +208 -208
- package/src/components/product/VueUtils/ToolsPage.vue +51 -0
- package/src/components/product/VueUtils/Tree.vue +330 -0
- package/src/dingding.js +19 -0
- package/src/expandcssAndroid.less +517 -1034
- package/src/filiale/yuchuan/android/Process/AppServiceControl.vue +735 -731
- package/src/filiale/yuchuan/android/Process/Processes/AppInstallationDetails.vue +824 -824
- package/src/filiale/yuchuan/android/Process/Processes/AppInstallationDetailsCivil.vue +650 -650
- package/src/filiale/yuchuan/android/Sign/AppSignTask.vue +182 -182
- package/src/filiale/yuchuan/android/Sign/BuildSign.vue +50 -50
- package/src/filiale/yuchuan/android/Sign/ConstructSign.vue +50 -50
- package/src/filiale/yuchuan/android/Sign/DesignSign.vue +50 -50
- package/src/filiale/yuchuan/android/Sign/SupervisorSign.vue +50 -50
- package/src/filiale/yuchuan/android/Task/Build/BuildTsak.vue +60 -60
- package/src/filiale/yuchuan/android/Task/Survey/SurveyTsak.vue +60 -60
- package/src/filiale/yuchuan/android.js +14 -14
- package/src/filiale/yuchuan/pc/Order/OrderApply.vue +528 -528
- package/src/filiale/yuchuan/pc/Order/OrderApplyList.vue +343 -343
- package/src/filiale/yuchuan/pc/Print/BuildOrder/buildOrderList.vue +264 -0
- package/src/filiale/yuchuan/pc/Print/BuildOrder/printBuildOrder.vue +152 -0
- package/src/filiale/yuchuan/pc/Process/ExplorationUser.vue +149 -149
- package/src/filiale/yuchuan/pc/Process/Processes/ApplyMapCom.vue +67 -67
- package/src/filiale/yuchuan/pc/Process/Processes/InstallationDetails.vue +809 -809
- package/src/filiale/yuchuan/pc/Process/Processes/InstallationDetailsCivil.vue +595 -595
- package/src/filiale/yuchuan/pc/Process/Processes/Print/printCharge.vue +125 -0
- package/src/filiale/yuchuan/pc/Process/Processes/chargeManagement.vue +621 -470
- package/src/filiale/yuchuan/pc/Process/Service/ServiceControl.vue +1108 -1074
- package/src/filiale/yuchuan/pc/Sign/SignRecord.vue +24 -0
- package/src/filiale/yuchuan/pc/Sign/SignRecordList.vue +174 -0
- package/src/filiale/yuchuan/pc.js +20 -12
- package/src/main.js +4 -1
- package/src/components/product/Function/StopApplyCrrdList.vue +0 -176
- package/src/components/product/Function/functions/ApplyRecordCancel.vue +0 -102
- package/src/components/product/Function/functions/StopInstall.vue +0 -106
|
@@ -1,125 +1,125 @@
|
|
|
1
|
-
<template>
|
|
2
|
-
<div>
|
|
3
|
-
<div :style="'height:' + AmapHeight">
|
|
4
|
-
<AMap-location
|
|
5
|
-
:islocation="true"
|
|
6
|
-
:locationzoomcenter="false"
|
|
7
|
-
:usenative="true"
|
|
8
|
-
:isshowsearch="false"
|
|
9
|
-
:mylocationinfo="false"
|
|
10
|
-
:islocationclearmark="false"
|
|
11
|
-
:isshowmapmodel="false"
|
|
12
|
-
:locationwindow="false"
|
|
13
|
-
mapmodel="dragMarker"
|
|
14
|
-
:labelmarksarray="labelmarksarray"
|
|
15
|
-
@diyspotmouseclick="diyspotmouseclick"
|
|
16
|
-
></AMap-location>
|
|
17
|
-
</div>
|
|
18
|
-
<div class="auto row" v-if="selectdata">
|
|
19
|
-
<div class="col-sm-12 col-xs-12 form-group app-input" style="margin-top: 10px"></div>
|
|
20
|
-
<template v-for="item in fileds">
|
|
21
|
-
<div class="col-sm-12 col-xs-12 form-group app-input">
|
|
22
|
-
<label class="">{{ item.label }}</label>
|
|
23
|
-
<div :class="item.type === 'tel' || item.type === 'map' ? 'col-sm-8 col-xs-8' : 'col-sm-8 col-xs-9'">
|
|
24
|
-
<input style="width: 100%" type="text" placeholder="" v-model="selectdata[item.field]" :value="selectdata[item.field]" readonly>
|
|
25
|
-
<svg v-if="item.type === 'tel'" @click.prevent="dialNumber(selectdata[item.field])" style="width: 25px;height: 25px;position: absolute;bottom: 8px;" t="1628575136009" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2374" width="200" height="200"><path d="M682.25 465.262c0 16.695 11.115 27.811 27.81 27.811s27.812-11.116 27.812-27.811A167.395 167.395 0 0 0 570.96 298.35c-16.695 0-27.811 11.116-27.811 27.811s11.16 27.812 27.811 27.812a111.597 111.597 0 0 1 111.29 111.289z m111.289 0c0 16.695 11.115 27.811 27.81 27.811s27.812-11.116 27.812-27.811c0-152.984-125.217-278.201-278.2-278.201-16.696 0-27.812 11.16-27.812 27.855s11.16 27.811 27.811 27.811c122.405 0 222.579 100.174 222.579 222.535zM417.976 367.9c30.623-30.579 33.391-77.898 5.58-111.289L337.31 148.134c-27.811-36.16-80.666-41.74-116.869-13.928-2.768 2.812-5.536 2.812-5.536 5.58l-75.13 75.13c-72.318 72.318 30.623 267.041 217.042 453.417C543.15 854.708 735.06 954.88 807.378 885.33l75.13-75.13c33.392-33.391 33.392-86.246 0-116.825l-5.536-5.58-108.52-86.246c-33.348-27.81-80.623-25.043-111.246 5.58l-47.275 47.319c-50.087-30.623-94.593-64.014-133.564-102.941-38.927-38.971-72.275-83.478-102.898-133.565l44.507-50.043z m-38.927-75.13c8.348 11.16 8.348 27.855-2.812 36.203l-61.202 63.97a29.569 29.569 0 0 0-5.536 33.392 721.425 721.425 0 0 0 122.405 164.1 721.512 721.512 0 0 0 164.1 122.405 29.569 29.569 0 0 0 33.39-5.58l63.971-63.97c11.16-11.116 25.043-11.116 36.203-2.769l108.477 89.014s2.768 0 2.768 2.768a26.889 26.889 0 0 1 0 38.971l-75.13 75.13c-36.115 36.115-208.606-55.666-372.75-217.042-164.1-161.332-253.114-336.548-216.955-372.75l77.854-77.899c11.16-8.348 30.623-8.348 38.971 5.58l86.246 108.521z" fill="#8A8A8A" p-id="2375"></path></svg>
|
|
26
|
-
<svg v-if="item.type === 'map'" @click="openAmap(selectdata[item.field])" style="width: 25px;height: 25px;position: absolute;bottom: 8px;" t="1628575336648" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3201" width="200" height="200"><path d="M512 956h-1.1c-10.9 0-20.5-6.9-24.7-17L369.9 654.1 85 537.8c-10.1-4.1-16.8-13.7-17.2-24.6-0.4-10.9 5.6-21 15.3-25.9l833-416.5c10.7-5.3 23.6-3.2 32.1 5.2s10.5 21.4 5.2 32.1L536.8 940.9c-4.7 9.4-14.3 15.1-24.8 15.1zM162.7 509.6l239 97.6c6.9 2.8 12.4 8.3 15.2 15.2l97.6 239 351.9-703.8-703.7 352z" fill="#666666" p-id="3202"></path></svg>
|
|
27
|
-
</div>
|
|
28
|
-
</div>
|
|
29
|
-
</template>
|
|
30
|
-
<div class="col-sm-12 col-xs-12 form-group app-btn">
|
|
31
|
-
<button class="btn btn-info" @click.prevent="click()">查看详情</button>
|
|
32
|
-
</div>
|
|
33
|
-
</div>
|
|
34
|
-
</div>
|
|
35
|
-
</template>
|
|
36
|
-
<script>
|
|
37
|
-
import Vue from 'vue'
|
|
38
|
-
export default {
|
|
39
|
-
title: '地图任务点',
|
|
40
|
-
props: {
|
|
41
|
-
data: {
|
|
42
|
-
type: Array,
|
|
43
|
-
default: []
|
|
44
|
-
},
|
|
45
|
-
fileds: {
|
|
46
|
-
type: Array,
|
|
47
|
-
default: []
|
|
48
|
-
}
|
|
49
|
-
},
|
|
50
|
-
data () {
|
|
51
|
-
return {
|
|
52
|
-
labelmarksarray: [],
|
|
53
|
-
selectdata: null,
|
|
54
|
-
AmapHeight: '100%'
|
|
55
|
-
}
|
|
56
|
-
},
|
|
57
|
-
ready () {
|
|
58
|
-
this.getLocatingPoint()
|
|
59
|
-
},
|
|
60
|
-
methods: {
|
|
61
|
-
// 查看详情
|
|
62
|
-
click () {
|
|
63
|
-
let _this = this
|
|
64
|
-
this.$dispatch('gotoson', {
|
|
65
|
-
_this: _this,
|
|
66
|
-
title: _this.selectdata.defname,
|
|
67
|
-
safe: true
|
|
68
|
-
})
|
|
69
|
-
this.$goto('app-service-control', {selectdata: _this.selectdata}, 'self', null)
|
|
70
|
-
},
|
|
71
|
-
// 导航
|
|
72
|
-
openAmap (address) {
|
|
73
|
-
let _this = this
|
|
74
|
-
HostApp.openThirdPartyMap({
|
|
75
|
-
lon: _this.selectdata.f_longitude,
|
|
76
|
-
lat: _this.selectdata.f_dimension,
|
|
77
|
-
address: address
|
|
78
|
-
})
|
|
79
|
-
},
|
|
80
|
-
// 拨打电话
|
|
81
|
-
dialNumber (tel) {
|
|
82
|
-
this.$showMessage(`是否拨打电话:${tel}`, ['confirm']).then((res) => {
|
|
83
|
-
if (res === 'confirm') {
|
|
84
|
-
this.$androidUtil.makeAPhoneCall(tel)
|
|
85
|
-
}
|
|
86
|
-
})
|
|
87
|
-
},
|
|
88
|
-
// 点击定位点回调
|
|
89
|
-
diyspotmouseclick (data) {
|
|
90
|
-
this.AmapHeight = '60%'
|
|
91
|
-
|
|
92
|
-
this.selectdata = data
|
|
93
|
-
},
|
|
94
|
-
// 获取定位点
|
|
95
|
-
getLocatingPoint () {
|
|
96
|
-
this.data.forEach(item => {
|
|
97
|
-
this.labelmarksarray.push({
|
|
98
|
-
data: {
|
|
99
|
-
data: item,
|
|
100
|
-
content: item.f_user_name
|
|
101
|
-
},
|
|
102
|
-
position: [item.f_longitude, item.f_dimension],
|
|
103
|
-
isclearmarker: false,
|
|
104
|
-
islabel: false
|
|
105
|
-
})
|
|
106
|
-
})
|
|
107
|
-
}
|
|
108
|
-
},
|
|
109
|
-
events: {
|
|
110
|
-
},
|
|
111
|
-
watch: {
|
|
112
|
-
'data' () {
|
|
113
|
-
this.getLocatingPoint()
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
</script>
|
|
118
|
-
|
|
119
|
-
<style lang="less">
|
|
120
|
-
.app-input {
|
|
121
|
-
label {
|
|
122
|
-
float: left;
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
</style>
|
|
1
|
+
<template>
|
|
2
|
+
<div>
|
|
3
|
+
<div :style="'height:' + AmapHeight">
|
|
4
|
+
<AMap-location
|
|
5
|
+
:islocation="true"
|
|
6
|
+
:locationzoomcenter="false"
|
|
7
|
+
:usenative="true"
|
|
8
|
+
:isshowsearch="false"
|
|
9
|
+
:mylocationinfo="false"
|
|
10
|
+
:islocationclearmark="false"
|
|
11
|
+
:isshowmapmodel="false"
|
|
12
|
+
:locationwindow="false"
|
|
13
|
+
mapmodel="dragMarker"
|
|
14
|
+
:labelmarksarray="labelmarksarray"
|
|
15
|
+
@diyspotmouseclick="diyspotmouseclick"
|
|
16
|
+
></AMap-location>
|
|
17
|
+
</div>
|
|
18
|
+
<div class="auto row" v-if="selectdata">
|
|
19
|
+
<div class="col-sm-12 col-xs-12 form-group app-input" style="margin-top: 10px"></div>
|
|
20
|
+
<template v-for="item in fileds">
|
|
21
|
+
<div class="col-sm-12 col-xs-12 form-group app-input">
|
|
22
|
+
<label class="">{{ item.label }}</label>
|
|
23
|
+
<div :class="item.type === 'tel' || item.type === 'map' ? 'col-sm-8 col-xs-8' : 'col-sm-8 col-xs-9'">
|
|
24
|
+
<input style="width: 100%" type="text" placeholder="" v-model="selectdata[item.field]" :value="selectdata[item.field]" readonly>
|
|
25
|
+
<svg v-if="item.type === 'tel'" @click.prevent="dialNumber(selectdata[item.field])" style="width: 25px;height: 25px;position: absolute;bottom: 8px;" t="1628575136009" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="2374" width="200" height="200"><path d="M682.25 465.262c0 16.695 11.115 27.811 27.81 27.811s27.812-11.116 27.812-27.811A167.395 167.395 0 0 0 570.96 298.35c-16.695 0-27.811 11.116-27.811 27.811s11.16 27.812 27.811 27.812a111.597 111.597 0 0 1 111.29 111.289z m111.289 0c0 16.695 11.115 27.811 27.81 27.811s27.812-11.116 27.812-27.811c0-152.984-125.217-278.201-278.2-278.201-16.696 0-27.812 11.16-27.812 27.855s11.16 27.811 27.811 27.811c122.405 0 222.579 100.174 222.579 222.535zM417.976 367.9c30.623-30.579 33.391-77.898 5.58-111.289L337.31 148.134c-27.811-36.16-80.666-41.74-116.869-13.928-2.768 2.812-5.536 2.812-5.536 5.58l-75.13 75.13c-72.318 72.318 30.623 267.041 217.042 453.417C543.15 854.708 735.06 954.88 807.378 885.33l75.13-75.13c33.392-33.391 33.392-86.246 0-116.825l-5.536-5.58-108.52-86.246c-33.348-27.81-80.623-25.043-111.246 5.58l-47.275 47.319c-50.087-30.623-94.593-64.014-133.564-102.941-38.927-38.971-72.275-83.478-102.898-133.565l44.507-50.043z m-38.927-75.13c8.348 11.16 8.348 27.855-2.812 36.203l-61.202 63.97a29.569 29.569 0 0 0-5.536 33.392 721.425 721.425 0 0 0 122.405 164.1 721.512 721.512 0 0 0 164.1 122.405 29.569 29.569 0 0 0 33.39-5.58l63.971-63.97c11.16-11.116 25.043-11.116 36.203-2.769l108.477 89.014s2.768 0 2.768 2.768a26.889 26.889 0 0 1 0 38.971l-75.13 75.13c-36.115 36.115-208.606-55.666-372.75-217.042-164.1-161.332-253.114-336.548-216.955-372.75l77.854-77.899c11.16-8.348 30.623-8.348 38.971 5.58l86.246 108.521z" fill="#8A8A8A" p-id="2375"></path></svg>
|
|
26
|
+
<svg v-if="item.type === 'map'" @click="openAmap(selectdata[item.field])" style="width: 25px;height: 25px;position: absolute;bottom: 8px;" t="1628575336648" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3201" width="200" height="200"><path d="M512 956h-1.1c-10.9 0-20.5-6.9-24.7-17L369.9 654.1 85 537.8c-10.1-4.1-16.8-13.7-17.2-24.6-0.4-10.9 5.6-21 15.3-25.9l833-416.5c10.7-5.3 23.6-3.2 32.1 5.2s10.5 21.4 5.2 32.1L536.8 940.9c-4.7 9.4-14.3 15.1-24.8 15.1zM162.7 509.6l239 97.6c6.9 2.8 12.4 8.3 15.2 15.2l97.6 239 351.9-703.8-703.7 352z" fill="#666666" p-id="3202"></path></svg>
|
|
27
|
+
</div>
|
|
28
|
+
</div>
|
|
29
|
+
</template>
|
|
30
|
+
<div class="col-sm-12 col-xs-12 form-group app-btn">
|
|
31
|
+
<button class="btn btn-info" @click.prevent="click()">查看详情</button>
|
|
32
|
+
</div>
|
|
33
|
+
</div>
|
|
34
|
+
</div>
|
|
35
|
+
</template>
|
|
36
|
+
<script>
|
|
37
|
+
import Vue from 'vue'
|
|
38
|
+
export default {
|
|
39
|
+
title: '地图任务点',
|
|
40
|
+
props: {
|
|
41
|
+
data: {
|
|
42
|
+
type: Array,
|
|
43
|
+
default: []
|
|
44
|
+
},
|
|
45
|
+
fileds: {
|
|
46
|
+
type: Array,
|
|
47
|
+
default: []
|
|
48
|
+
}
|
|
49
|
+
},
|
|
50
|
+
data () {
|
|
51
|
+
return {
|
|
52
|
+
labelmarksarray: [],
|
|
53
|
+
selectdata: null,
|
|
54
|
+
AmapHeight: '100%'
|
|
55
|
+
}
|
|
56
|
+
},
|
|
57
|
+
ready () {
|
|
58
|
+
this.getLocatingPoint()
|
|
59
|
+
},
|
|
60
|
+
methods: {
|
|
61
|
+
// 查看详情
|
|
62
|
+
click () {
|
|
63
|
+
let _this = this
|
|
64
|
+
this.$dispatch('gotoson', {
|
|
65
|
+
_this: _this,
|
|
66
|
+
title: _this.selectdata.defname,
|
|
67
|
+
safe: true
|
|
68
|
+
})
|
|
69
|
+
this.$goto('app-service-control', {selectdata: _this.selectdata}, 'self', null)
|
|
70
|
+
},
|
|
71
|
+
// 导航
|
|
72
|
+
openAmap (address) {
|
|
73
|
+
let _this = this
|
|
74
|
+
HostApp.openThirdPartyMap({
|
|
75
|
+
lon: _this.selectdata.f_longitude,
|
|
76
|
+
lat: _this.selectdata.f_dimension,
|
|
77
|
+
address: address
|
|
78
|
+
})
|
|
79
|
+
},
|
|
80
|
+
// 拨打电话
|
|
81
|
+
dialNumber (tel) {
|
|
82
|
+
this.$showMessage(`是否拨打电话:${tel}`, ['confirm']).then((res) => {
|
|
83
|
+
if (res === 'confirm') {
|
|
84
|
+
this.$androidUtil.makeAPhoneCall(tel)
|
|
85
|
+
}
|
|
86
|
+
})
|
|
87
|
+
},
|
|
88
|
+
// 点击定位点回调
|
|
89
|
+
diyspotmouseclick (data) {
|
|
90
|
+
this.AmapHeight = '60%'
|
|
91
|
+
|
|
92
|
+
this.selectdata = data
|
|
93
|
+
},
|
|
94
|
+
// 获取定位点
|
|
95
|
+
getLocatingPoint () {
|
|
96
|
+
this.data.forEach(item => {
|
|
97
|
+
this.labelmarksarray.push({
|
|
98
|
+
data: {
|
|
99
|
+
data: item,
|
|
100
|
+
content: item.f_user_name
|
|
101
|
+
},
|
|
102
|
+
position: [item.f_longitude, item.f_dimension],
|
|
103
|
+
isclearmarker: false,
|
|
104
|
+
islabel: false
|
|
105
|
+
})
|
|
106
|
+
})
|
|
107
|
+
}
|
|
108
|
+
},
|
|
109
|
+
events: {
|
|
110
|
+
},
|
|
111
|
+
watch: {
|
|
112
|
+
'data' () {
|
|
113
|
+
this.getLocatingPoint()
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
</script>
|
|
118
|
+
|
|
119
|
+
<style lang="less">
|
|
120
|
+
.app-input {
|
|
121
|
+
label {
|
|
122
|
+
float: left;
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
</style>
|
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div class='flex foot_tabset1'>
|
|
3
|
+
<!-- Nav tabs -->
|
|
4
|
+
<ul class="nav nav-{{navStyle}}" role="tablist" style="margin-left: 1%">
|
|
5
|
+
<li style="margin-right: 10px"
|
|
6
|
+
:id="'vc-tabset-li-'+attach +'-'+$index"
|
|
7
|
+
v-for="r in renderData"
|
|
8
|
+
@click.prevent="handleTabListClick($index, r)"
|
|
9
|
+
:disabled="r.disabled"
|
|
10
|
+
>
|
|
11
|
+
<button class="button_new" style="width: max-content" v-bind:class="{
|
|
12
|
+
'btn-succ': ($index === active),
|
|
13
|
+
'disabled': r.disabled
|
|
14
|
+
}">
|
|
15
|
+
<slot name="header">
|
|
16
|
+
{{r.header}}
|
|
17
|
+
</slot>
|
|
18
|
+
<!-- 关闭按钮 -->
|
|
19
|
+
<span class="glyphicon glyphicon-remove" style="margin-left: 15px;" @click="deletetTab(r)" v-if="close" :id="'vc-tabset-close-'+attach +'-'+$index"></span>
|
|
20
|
+
</button>
|
|
21
|
+
|
|
22
|
+
</li>
|
|
23
|
+
</ul>
|
|
24
|
+
|
|
25
|
+
<!-- Tab panes -->
|
|
26
|
+
<div class="tab-content span" v-el:tab-content>
|
|
27
|
+
<slot></slot>
|
|
28
|
+
</div>
|
|
29
|
+
</div>
|
|
30
|
+
</template>
|
|
31
|
+
|
|
32
|
+
<script>
|
|
33
|
+
import {remove} from 'vue-client/src/stores/Remove.js'
|
|
34
|
+
|
|
35
|
+
export default {
|
|
36
|
+
props: {
|
|
37
|
+
navStyle: {
|
|
38
|
+
type: String,
|
|
39
|
+
default: 'tabs'
|
|
40
|
+
},
|
|
41
|
+
effect: {
|
|
42
|
+
type: String,
|
|
43
|
+
default: 'fadein'
|
|
44
|
+
},
|
|
45
|
+
active: {
|
|
46
|
+
type: Number,
|
|
47
|
+
default: 0
|
|
48
|
+
},
|
|
49
|
+
close: {
|
|
50
|
+
type: Boolean,
|
|
51
|
+
default: false
|
|
52
|
+
},
|
|
53
|
+
attach: {
|
|
54
|
+
type: String,
|
|
55
|
+
default: 'vuestrap'
|
|
56
|
+
},
|
|
57
|
+
content: {}
|
|
58
|
+
},
|
|
59
|
+
ready () {
|
|
60
|
+
remove.$on('remove', (name) => {
|
|
61
|
+
console.log('tabset收$on 到的名字为:', name)
|
|
62
|
+
this.$removeTab(name)
|
|
63
|
+
})
|
|
64
|
+
},
|
|
65
|
+
data () {
|
|
66
|
+
return {
|
|
67
|
+
// 数据格式:{comp, header,disabled}
|
|
68
|
+
// - comp: 当前页签对应的tab组件
|
|
69
|
+
renderData: []
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
methods: {
|
|
73
|
+
handleTabListClick (index, el) {
|
|
74
|
+
this.$parent.show[index] = true
|
|
75
|
+
if (el.comp._scope && el.comp._scope.tab) {
|
|
76
|
+
this.$dispatch('tab-changed', el.comp._scope.tab.comp.name)
|
|
77
|
+
}
|
|
78
|
+
if (!el.disabled) this.active = index
|
|
79
|
+
},
|
|
80
|
+
// deletetab函数为自己添加
|
|
81
|
+
deletetTab (el) {
|
|
82
|
+
this.$removeTab(el.comp._scope.tab.comp.name)
|
|
83
|
+
remove.$emit('delete', el.comp._scope.tab.comp.name)
|
|
84
|
+
},
|
|
85
|
+
// 根据删除也下标,修改所有页签的下标
|
|
86
|
+
modifyAllIndex (index) {
|
|
87
|
+
let cur = this.active
|
|
88
|
+
this.$nextTick(() => {
|
|
89
|
+
// 关闭页签以后的多有页签的的下标向前挪动一位,之前的页签不动
|
|
90
|
+
for (var i = index; i < this.renderData.length; i++) {
|
|
91
|
+
this.renderData[i].comp.index -= 1
|
|
92
|
+
}
|
|
93
|
+
// 修改激活页
|
|
94
|
+
// 获取当前激活页签下标,关闭在当前激活页之后(包含当前激活页),当前激活页下标不变
|
|
95
|
+
// 当关闭当前激活页之前(激活页向前移动一位)
|
|
96
|
+
if (this.active > index || this.active === this.renderData.length) {
|
|
97
|
+
this.active = cur - 1
|
|
98
|
+
} else if (cur === 0) {
|
|
99
|
+
this.active = 0
|
|
100
|
+
} else {
|
|
101
|
+
this.active = cur
|
|
102
|
+
}
|
|
103
|
+
if (this.active === -1) {
|
|
104
|
+
this.$dispatch('tab-changed', null)
|
|
105
|
+
} else {
|
|
106
|
+
this.$dispatch('tab-changed', this.renderData[this.active].comp._scope.tab.comp.name)
|
|
107
|
+
}
|
|
108
|
+
})
|
|
109
|
+
}
|
|
110
|
+
},
|
|
111
|
+
events: {
|
|
112
|
+
'delete' (index) {
|
|
113
|
+
this.modifyAllIndex(index)
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
</script>
|
|
118
|
+
|
|
119
|
+
<style scoped>
|
|
120
|
+
ul > li > a {
|
|
121
|
+
position: relative;
|
|
122
|
+
}
|
|
123
|
+
ul > li > a > span {
|
|
124
|
+
display: none;
|
|
125
|
+
}
|
|
126
|
+
/*ul > li > a:hover > span {*/
|
|
127
|
+
/*display: initial;*/
|
|
128
|
+
/*position: absolute;*/
|
|
129
|
+
/*right: 0;*/
|
|
130
|
+
/*top: 35%;*/
|
|
131
|
+
/*border: 1px solid #EAEAEA;*/
|
|
132
|
+
/*}*/
|
|
133
|
+
/*ul > li > a:hover > span:hover {*/
|
|
134
|
+
/*border: 1px solid #EAEAEA;*/
|
|
135
|
+
/*color: #5cb95c;*/
|
|
136
|
+
/*}*/
|
|
137
|
+
ul > li > button {
|
|
138
|
+
background-color: #FFFFFF;
|
|
139
|
+
border-radius: 4px;
|
|
140
|
+
color: #999;
|
|
141
|
+
border: 1px solid #5cb95c;
|
|
142
|
+
}
|
|
143
|
+
.btn-succ{
|
|
144
|
+
background-color: #6aa6e2;
|
|
145
|
+
border-radius: 4px;
|
|
146
|
+
color: #fff;
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
</style>
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
<template>
|
|
2
|
+
<div role="tabpanel" class="tab-pane"
|
|
3
|
+
v-bind:class="{hide:!show}"
|
|
4
|
+
v-if="show"
|
|
5
|
+
:transition="transition"
|
|
6
|
+
>
|
|
7
|
+
<slot></slot>
|
|
8
|
+
</div>
|
|
9
|
+
</template>
|
|
10
|
+
|
|
11
|
+
<script>
|
|
12
|
+
import coerceBoolean from 'vue-client/src/vue-strap/src/utils/coerceBoolean.js'
|
|
13
|
+
|
|
14
|
+
export default {
|
|
15
|
+
props: {
|
|
16
|
+
header: {
|
|
17
|
+
type: String
|
|
18
|
+
},
|
|
19
|
+
disabled: {
|
|
20
|
+
type: Boolean,
|
|
21
|
+
coerce: coerceBoolean,
|
|
22
|
+
default: false
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
data () {
|
|
26
|
+
return {
|
|
27
|
+
index: 0,
|
|
28
|
+
show: false
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
watch: {
|
|
32
|
+
'header' (val) {
|
|
33
|
+
// header变化时,通知tabset
|
|
34
|
+
let data = this.$parent.renderData.find((v) => v.comp === this)
|
|
35
|
+
data.header = val
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
computed: {
|
|
39
|
+
show () {
|
|
40
|
+
return (this.$parent.active === this.index)
|
|
41
|
+
},
|
|
42
|
+
transition () {
|
|
43
|
+
return this.$parent.effect
|
|
44
|
+
}
|
|
45
|
+
},
|
|
46
|
+
created () {
|
|
47
|
+
this.$parent.renderData.push({
|
|
48
|
+
comp: this,
|
|
49
|
+
header: this.header,
|
|
50
|
+
disabled: this.disabled
|
|
51
|
+
})
|
|
52
|
+
},
|
|
53
|
+
ready () {
|
|
54
|
+
// 找到当前tab的索引
|
|
55
|
+
this.index = this.$parent.$children.findIndex((v) => v.$el === this.$el)
|
|
56
|
+
},
|
|
57
|
+
beforeDestroy () {
|
|
58
|
+
this.$parent.renderData.splice(this.index, 1)
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
</script>
|
|
62
|
+
|
|
63
|
+
<style scoped>
|
|
64
|
+
.tab-content > .tab-pane {
|
|
65
|
+
display: block;
|
|
66
|
+
}
|
|
67
|
+
</style>
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|