Commit 1b069aa32d5095f506dc017dfeb3bf5ab97ddf66

Authored by 刘淇
1 parent 6a9c5a3d

黄石h5新页面

src/assets/images/perService/car.png 0 → 100644

17 KB

src/assets/images/perService/carActive.png 0 → 100644

18.4 KB

src/assets/images/perService/distance.png 0 → 100644

1.73 KB

src/assets/images/perService/food.png 0 → 100644

16.9 KB

src/assets/images/perService/foodActive.png 0 → 100644

18.5 KB

src/assets/images/perService/insure.png 0 → 100644

17.2 KB

src/assets/images/perService/insureActive.png 0 → 100644

18.8 KB

src/assets/images/perService/navAddress.png 0 → 100644

519 Bytes

src/assets/images/perService/phone-icon.png 0 → 100644

473 Bytes

src/assets/images/perService/phone.png 0 → 100644

1.21 KB

src/assets/images/perService/search-icon.png 0 → 100644

2.17 KB

src/assets/images/perService/star.png 0 → 100644

936 Bytes

src/assets/images/perService/time.png 0 → 100644

1.01 KB

src/assets/images/perService/编组 15.png 0 → 100644

2.7 KB

src/router/index.js
@@ -13,7 +13,7 @@ export default new Router({ @@ -13,7 +13,7 @@ export default new Router({
13 { 13 {
14 path: '/', 14 path: '/',
15 redirect: { 15 redirect: {
16 - name: 'service' 16 + name: 'peripheralService'
17 } 17 }
18 }, 18 },
19 // // { 19 // // {
@@ -257,6 +257,17 @@ export default new Router({ @@ -257,6 +257,17 @@ export default new Router({
257 // } 257 // }
258 // }, 258 // },
259 259
  260 +
  261 +
  262 + {
  263 + path: '/peripheralService',
  264 + name: 'peripheralService',
  265 + component: () => import("@/views/peripheralService/peripheralService.vue"),
  266 + meta:{
  267 + title:'周边服务'
  268 + }
  269 + },
  270 +
260 { 271 {
261 path: '/service', 272 path: '/service',
262 name: 'service', 273 name: 'service',
src/views/peripheralService/peripheralService.vue 0 → 100644
  1 +<template>
  2 + <div>
  3 + <div class="search-wrap">
  4 + <div class="search-main">
  5 + <input type="text" placeholder="请输入相关内容" class="search-text">
  6 + <span class="search-icon"></span>
  7 + </div>
  8 +
  9 + <div class="distance-wrap">
  10 + <!--<popup-picker :data="list2" v-model="value2" @on-show="onShow" @on-hide="onHide"-->
  11 + <!--@on-change="onChange" placeholder="请选择"></popup-picker>-->
  12 +
  13 + <a href="javascript:void(0);" class="largin-btn primary" @click="handleClick">3KM</a>
  14 + </div>
  15 +
  16 +
  17 + <mt-actionsheet
  18 + :actions="actions"
  19 + v-model="sheetVisible"
  20 + :modal="true"
  21 + ></mt-actionsheet>
  22 +
  23 + </div>
  24 +
  25 + <ul class="tab-wrap">
  26 +
  27 + <li v-for="(i, index) of 3" :class="{active:currentIndex==index}" :key="index" @click="tabClick(index)"></li>
  28 +
  29 + </ul>
  30 +
  31 + <ul class="container-wrap" >
  32 + <li class="container-main" v-for="(i,index) in dataList" :key="i.id">
  33 + <div class="container-top">
  34 + <div class="container-top-left" :style="{backgroundImage:'url('+i.logoUrl+')'}"></div>
  35 + <div class="container-top-right">
  36 + <p class="container-top-title">{{i.companyName}}</p>
  37 + <p>
  38 + <span class="container-top-button" v-for="i in serviceButtonList">{{i}}</span>
  39 + </p>
  40 + <p class="special-title ellipsis">{{i.mainBusines}}</p>
  41 + </div>
  42 + </div>
  43 +
  44 + <div class="container-bottom">
  45 + <p class="container-time">营业时间:{{i.workTime}}</p>
  46 + <p class="container-address">位置:{{i.companyAddress}}</p>
  47 + <p class="container-phone">联系电话:{{i.contactTel}} (李美丽)</p>
  48 + <div class="address-phone">
  49 + <span></span>
  50 + <span></span>
  51 + </div>
  52 + </div>
  53 + </li>
  54 + </ul>
  55 + </div>
  56 +
  57 +
  58 +</template>
  59 +
  60 +<script>
  61 +
  62 +import { queryInsuranceCompanyList } from "@/api/service/service.js";
  63 +export default {
  64 + name: "peripheralService",
  65 + data() {
  66 + return {
  67 + currentIndex: 0,
  68 + sheetVisible: false, //控制action sheet显隐
  69 + actions: [
  70 + {
  71 + name: "3KM",
  72 + method: this.getCamera //调用methods中的事件
  73 + },
  74 + {
  75 + name: "10KM",
  76 + method: this.getLibrary //调用methods中的事件
  77 + }
  78 + ],
  79 + serviceButtonList: [
  80 + "洗车", "美容", "音响改装"
  81 + ],
  82 + dataList: []
  83 + };
  84 + },
  85 + mounted() {
  86 + window.toLinkApp = this.toLinkApp;
  87 + window.callPhone = this.callPhone;
  88 + },
  89 + created() {
  90 + this.queryInsuranceCompanyList(this.carNumber);
  91 + },
  92 + methods: {
  93 + queryInsuranceCompanyList() { // 获取停车记录数据
  94 + var salt = this.$utils.myCommonSalt(32);
  95 + var jsondata = {
  96 + app_id: this.$utils.myVarAppid,
  97 + deviceInfo: this.$utils.myDeviceInfo,
  98 + salt: salt,
  99 + sign_type: "md5",
  100 + orgId: this.$utils.myOrgId,
  101 + companyName: "",
  102 + companyNo: "",
  103 + id: "",
  104 + latId: "",
  105 + lonId: "",
  106 + raidus: "",
  107 + servicesType: ""
  108 + };
  109 + jsondata.sign = this.$utils.signObject(jsondata);
  110 + // jsondata.sign = md5sign
  111 + queryInsuranceCompanyList(jsondata).then(response => {
  112 + this.dataList = response.data;
  113 + console.log(this.dataList);
  114 + });
  115 + },
  116 + tabClick(index) {
  117 + this.currentIndex = index;
  118 + },
  119 + handleClick() {
  120 + this.sheetVisible = true;
  121 + },
  122 + getCamera() { //3KM
  123 + console.log("3KM");
  124 + },
  125 + getLibrary() { //10KM
  126 + console.log("10KM");
  127 + }
  128 + }
  129 +};
  130 +</script>
  131 +
  132 +<style lang="scss">
  133 + #app {
  134 + width: 100%;
  135 + height: 100%;
  136 + background: linear-gradient(180deg, rgba(123, 214, 239, 0.3) 0%, rgba(45, 128, 152, 0) 100%);
  137 + }
  138 +
  139 + .search-wrap {
  140 + display: flex;
  141 + padding: 10px 10px 20px;
  142 + }
  143 +
  144 + .search-main {
  145 + flex: 1;
  146 + position: relative;
  147 + padding-right: 20px;
  148 + }
  149 +
  150 + .search-text {
  151 + width: 100%;
  152 + height: 26px;
  153 + line-height: 26px;
  154 + border: 0;
  155 + border-radius: 10px;
  156 + background: #FFFFFF;
  157 + box-shadow: 0px 20px 21px 0px rgba(198, 220, 226, 0.61);
  158 + text-indent: 15px;
  159 + outline: none;
  160 + }
  161 +
  162 + .search-icon {
  163 + width: 24px;
  164 + height: 24px;
  165 + position: absolute;
  166 + right: 30px;
  167 + top: 5px;
  168 + background: url("../../assets/images/perService/search-icon.png") no-repeat;
  169 + background-size: 18px 18px;
  170 +
  171 + }
  172 +
  173 + .distance-wrap {
  174 + width: 92px;
  175 + height: 26px;
  176 + line-height: 26px;
  177 + background: #32859A url("../../assets/images/perService/distance.png") no-repeat 10px center;
  178 + background-size: 12px 16px;
  179 + border-radius: 38px;
  180 + text-align: center;
  181 + }
  182 +
  183 + .tab-wrap {
  184 + display: flex;
  185 + height: 66px;
  186 + > li {
  187 + flex: 1;
  188 +
  189 + }
  190 + :nth-child(1) {
  191 + background: url("../../assets/images/perService/car.png") no-repeat center center;
  192 + background-size: 100% 100%;
  193 + &.active {
  194 + background: url("../../assets/images/perService/carActive.png") no-repeat center center;
  195 + background-size: 100% 100%;
  196 + }
  197 + }
  198 + :nth-child(2) {
  199 + /*margin: 0 5px;*/
  200 + background: url("../../assets/images/perService/insure.png") no-repeat center center;
  201 + background-size: 100% 100%;
  202 + &.active {
  203 + background: url("../../assets/images/perService/insureActive.png") no-repeat center center;
  204 + background-size: 100% 100%;
  205 + }
  206 + }
  207 + :nth-child(3) {
  208 + background: url("../../assets/images/perService/food.png") no-repeat center center;
  209 + background-size: 100% 100%;
  210 + &.active {
  211 + background: url("../../assets/images/perService/foodActive.png") no-repeat center center;
  212 + background-size: 100% 100%;
  213 + }
  214 + }
  215 + }
  216 +
  217 + .container-wrap {
  218 + padding: 20px 10px;
  219 + }
  220 +
  221 + .container-main {
  222 + width: 100%;
  223 + /*height: 196px;*/
  224 + background: #FFFFFF;
  225 + box-shadow: 0px 20px 21px 0px rgba(198, 220, 226, 0.61);
  226 + border-radius: 30px;
  227 + margin-bottom: 20px;
  228 + padding: 10px;
  229 + }
  230 +
  231 + .container-top {
  232 + display: flex;
  233 + margin-bottom: 10px;
  234 + }
  235 +
  236 + .container-top-left {
  237 + width: 84px;
  238 + height: 84px;
  239 + background-size: 100% 100%;
  240 +
  241 + border-radius: 25px;
  242 + margin-right: 15px;
  243 + }
  244 +
  245 + .container-top-right {
  246 + flex: 1;
  247 + overflow: hidden;
  248 + .container-top-title {
  249 + font-size: 16px;
  250 + font-family: PingFangSC-Medium, PingFang SC;
  251 + font-weight: 500;
  252 + color: #000000;
  253 + margin-bottom: 10px;
  254 + }
  255 + }
  256 +
  257 + .container-top-button {
  258 + padding: 2px 10px;
  259 + margin-right: 5px;
  260 + text-align: center;
  261 + height: 38px;
  262 + background: rgba(43, 126, 151, .2);
  263 + border-radius: 7px;
  264 + color: #36889C;
  265 +
  266 + }
  267 +
  268 + .special-title {
  269 + line-height: 16px;
  270 + margin-top: 12px;
  271 + padding-left: 20px;
  272 + font-family: PingFangSC-Regular, PingFang SC;
  273 + font-weight: 400;
  274 + color: #000000;
  275 + background: url("../../assets/images/perService/star.png") 0 center no-repeat;
  276 + background-size: 16px 16px;
  277 + }
  278 +
  279 + .ellipsis {
  280 + overflow: hidden;
  281 + white-space: nowrap;
  282 + text-overflow: ellipsis;
  283 + }
  284 +
  285 + .container-bottom {
  286 + position: relative;
  287 + font-size: 14px;
  288 + color: #333333;
  289 + > p {
  290 + padding-left: 20px;
  291 + }
  292 + }
  293 +
  294 + .container-time {
  295 + background: url("../../assets/images/perService/time.png") 0 center no-repeat;
  296 + background-size: 14px 14px;
  297 + }
  298 +
  299 + .container-address {
  300 + padding: 10px 0;
  301 + background: url("../../assets/images/perService/distance.png") 0 center no-repeat;
  302 + background-size: 14px 14px;
  303 + }
  304 +
  305 + .container-phone {
  306 + background: url("../../assets/images/perService/phone.png") 0 center no-repeat;
  307 + background-size: 14px 14px;
  308 + }
  309 +
  310 + .address-phone {
  311 + position: absolute;
  312 + width: 126px;
  313 + height: 40px;
  314 + background: #32859A;
  315 + border-radius: 43px;
  316 + bottom: 0;
  317 + right: 0;
  318 + display: flex;
  319 + span {
  320 + flex: 1;
  321 + display: inline-block;
  322 + }
  323 + :nth-child(1) {
  324 + background: url("../../assets/images/perService/navAddress.png") center center no-repeat;
  325 + background-size: 20px 20px;
  326 + position: relative;
  327 + &:after {
  328 + content: '';
  329 + width: 1px;
  330 + height: 20px;
  331 + background: #fff;
  332 + position: absolute;
  333 + right: 0;
  334 + top: 10px;
  335 + }
  336 + }
  337 + :nth-child(2) {
  338 + background: url("../../assets/images/perService/phone-icon.png") center center no-repeat;
  339 + background-size: 20px 20px;
  340 + }
  341 + }
  342 +</style>