panhui 5 ani în urmă
părinte
comite
22090a999a

+ 1 - 1
.env.development

@@ -1,3 +1,3 @@
-VUE_APP_BASE_URL=https://imt.izouma.com
+VUE_APP_BASE_URL=https://www.imttech.cn
 VUE_APP_PHONE=862160797117
 VUE_APP_EMAIL=imttech@itoc.com.cn

+ 1 - 1
.env.production

@@ -1,3 +1,3 @@
-VUE_APP_BASE_URL=https://imt.izouma.com
+VUE_APP_BASE_URL=https://www.imttech.cn
 VUE_APP_PHONE=862160797117
 VUE_APP_EMAIL=imttech@itoc.com.cn

Fișier diff suprimat deoarece este prea mare
+ 413 - 161
package-lock.json


+ 1 - 0
src/App.vue

@@ -25,6 +25,7 @@ export default {
             },
             fail() {}
         });
+        this.$store.dispatch('getSystemInfo');
         this.$store.dispatch('getBarHeight');
         this.$store.dispatch('getArea');
     },

+ 10 - 5
src/components/filter/Application.vue

@@ -1,7 +1,7 @@
 <template>
     <div class="filterInfo filter--big">
         <div class="title" @click="showMore = !showMore">
-            <h3 class="filterInfoTitle">应用领域</h3>
+            <h3 class="filterInfoTitle">{{ $t('ying-yong-ling-yu') }}</h3>
             <van-icon :custom-class="showMore ? 'showMore' : ''" name="arrow-down" color="#CBCFDB" :size="18" />
         </div>
         <div class="list" :class="{ showLess: !showMore }">
@@ -120,12 +120,17 @@ export default {
         &.showLess {
             max-height: 34px;
         }
+
+        .van-button {
+            background: #f5f7fa;
+            --button-border-width: 0px;
+            width: 106px;
+            box-sizing: border-box;
+            height: 34px;
+            margin-bottom: 10px;
+        }
     }
     .van-button {
-        width: 106px;
-        box-sizing: border-box;
-        height: 34px;
-        margin-bottom: 10px;
         &.choose {
             color: #565b66 !important;
         }

+ 14 - 9
src/components/filter/Country.vue

@@ -14,13 +14,20 @@
             />
         </div>
 
-        <van-popup :show="showPopup" round position="bottom" custom-style="height: 300px" @close="showPopup = false">
+        <van-popup
+            :z-index="500"
+            :show="showPopup"
+            round
+            position="bottom"
+            custom-style="height: 348px"
+            @close="showPopup = false"
+        >
             <div class="bar">
                 <div class="left-icon">
-                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="18" name="arrow-left" />
+                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="24" name="arrow-left" />
                 </div>
                 <h3>国家地区</h3>
-                <van-icon color="#5E636D" :size="18" name="cross" @click="showPopup = false" />
+                <van-icon color="#5E636D" :size="24" name="cross" @click="showPopup = false" />
             </div>
             <van-cell-group :border="false">
                 <van-cell
@@ -33,9 +40,8 @@
                     <van-icon
                         v-if="value === headerInfo.value"
                         slot="right-icon"
-                        :size="18"
-                        :color="$colors.warn"
-                        name="success"
+                        :size="24"
+                        name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                     />
                 </van-cell>
                 <block v-for="item in showList" :key="item.value">
@@ -48,9 +54,8 @@
                         <van-icon
                             v-if="value === item.value"
                             slot="right-icon"
-                            :size="18"
-                            :color="$colors.warn"
-                            name="success"
+                            :size="24"
+                            name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                         />
                     </van-cell>
                 </block>

+ 12 - 6
src/components/filter/EnterpriseType.vue

@@ -15,13 +15,20 @@
             />
         </div>
 
-        <van-popup :show="showPopup" round position="bottom" custom-style="height: 300px" @close="showPopup = false">
+        <van-popup
+            :z-index="500"
+            :show="showPopup"
+            round
+            position="bottom"
+            custom-style="height: 348px"
+            @close="showPopup = false"
+        >
             <div class="bar">
                 <div class="left-icon">
-                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="18" name="arrow-left" />
+                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="24" name="arrow-left" />
                 </div>
                 <h3>选择企业类型</h3>
-                <van-icon color="#5E636D" :size="18" name="cross" @click="showPopup = false" />
+                <van-icon color="#5E636D" :size="24" name="cross" @click="showPopup = false" />
             </div>
             <van-cell-group :border="false">
                 <block v-for="item in showList" :key="item.id">
@@ -33,10 +40,9 @@
                         <h3 class="fontNormal" slot="title">{{ $t(item.name) }}</h3>
                         <van-icon
                             slot="right-icon"
-                            :size="18"
-                            :color="$colors.warn"
+                            :size="24"
                             v-if="value === item.id"
-                            name="success"
+                            name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                         />
                     </van-cell>
                 </block>

+ 117 - 0
src/components/filter/OfflineExperience.vue

@@ -0,0 +1,117 @@
+<template>
+    <div class="filterInfo filter--big">
+        <div class="title">
+            <h3 class="filterInfoTitle">{{ $t('imt-zhan-ting-xian-xia-ti-yan') }}</h3>
+        </div>
+        <div class="list">
+            <block v-for="(item, index) in list" :key="index">
+                <van-button
+                    :custom-class="value === item.value ? 'chooseActive' : 'choose'"
+                    type="default"
+                    :color="value === item.value ? '#FFF4E5' : '@bg'"
+                    @click="choose(item.value)"
+                >
+                    {{ $t(item.name) }}
+
+                    <img
+                        v-if="value === item.value"
+                        src="../../static/imgs/icon_list_xuanzhong.png"
+                        class="chooseImg"
+                        alt=""
+                    />
+                </van-button>
+            </block>
+        </div>
+    </div>
+</template>
+<script>
+export default {
+    props: {
+        value: {
+            type: [String, Boolean],
+            default: ''
+        }
+    },
+    data() {
+        return {
+            list: [
+                {
+                    name: 'bu-xian',
+                    value: ''
+                },
+                {
+                    name: 'shi',
+                    value: true
+                },
+                {
+                    name: 'fou',
+                    value: false
+                }
+            ]
+        };
+    },
+    methods: {
+        choose(value) {
+            this.$emit('input', value);
+        }
+    }
+};
+</script>
+<style lang="less">
+.filterInfo {
+    .title {
+        display: flex;
+        align-items: center;
+        justify-content: space-between;
+        // &:active {
+        //     background-color: overlay(#fff, #000);
+        // }
+
+        .van-icon {
+            transition: transform ease-in-out 0.3s;
+            &.showMore {
+                transform: rotate(180deg);
+            }
+        }
+
+        .van-icon.van-icon-cross {
+            padding-right: 16px;
+        }
+    }
+    .list {
+        display: flex;
+        justify-content: space-between;
+        flex-wrap: wrap;
+        overflow: hidden;
+        transition: max-height ease-in-out 0.3s;
+        max-height: 800px;
+        &.showLess {
+            max-height: 34px;
+        }
+        .van-button {
+            background: #f5f7fa;
+            --button-border-width: 0px;
+            width: 106px;
+            box-sizing: border-box;
+            height: 34px;
+            margin-bottom: 10px;
+        }
+    }
+    .van-button {
+        &.choose {
+            color: #565b66 !important;
+        }
+        &.chooseActive {
+            color: @warn!important;
+        }
+
+        .chooseImg {
+            position: absolute;
+            width: 16px;
+            height: 16px;
+            right: 0;
+            bottom: 0;
+        }
+    }
+}
+</style>

+ 13 - 7
src/components/filter/ProductBrand.vue

@@ -14,13 +14,20 @@
             />
         </div>
 
-        <van-popup :show="showPopup" round position="bottom" custom-style="height: 300px" @close="showPopup = false">
+        <van-popup
+            :z-index="500"
+            :show="showPopup"
+            round
+            position="bottom"
+            custom-style="height: 348px"
+            @close="showPopup = false"
+        >
             <div class="bar">
                 <div class="left-icon">
-                    <van-icon color="#5E636D" @click="showPopup = false" :size="18" name="cross" />
+                    <van-icon color="#5E636D" @click="showPopup = false" :size="24" name="arrow-down" />
                 </div>
                 <h3>{{ $t('xuan-ze-pin-pai') }}</h3>
-                <van-button :color="$colors.warn" size="small" plain @click="backChoose">确认</van-button>
+                <van-button :color="$colors.warn" plain @click="backChoose">确定</van-button>
             </div>
             <van-cell-group :border="false">
                 <!-- <van-cell
@@ -35,7 +42,7 @@
                         :size="18"
                         :color="$colors.warn"
                         v-if="chooseId === headerInfo.id"
-                        name="success"
+                        name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                     />
                 </van-cell> -->
                 <block v-for="item in showList" :key="item.id">
@@ -47,10 +54,9 @@
                         <h3 class="fontNormal" slot="title">{{ getName(item) }}</h3>
                         <van-icon
                             slot="right-icon"
-                            :size="18"
-                            :color="$colors.warn"
+                            :size="24"
                             v-if="chooseList.includes(item.chName)"
-                            name="success"
+                            name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                         />
                     </van-cell>
                 </block>

+ 14 - 9
src/components/filter/ProductCategory.vue

@@ -14,13 +14,20 @@
             />
         </div>
 
-        <van-popup :show="showPopup" round position="bottom" custom-style="height: 300px" @close="showPopup = false">
+        <van-popup
+            :z-index="500"
+            :show="showPopup"
+            round
+            position="bottom"
+            custom-style="height: 348px"
+            @close="showPopup = false"
+        >
             <div class="bar">
                 <div class="left-icon">
-                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="18" name="arrow-left" />
+                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="24" name="arrow-left" />
                 </div>
                 <h3>选择类别</h3>
-                <van-icon color="#5E636D" :size="18" name="cross" @click="showPopup = false" />
+                <van-icon color="#5E636D" :size="24" name="cross" @click="showPopup = false" />
             </div>
             <van-cell-group :border="false">
                 <van-cell
@@ -32,10 +39,9 @@
                     <h3 class="fontNormal" slot="title">全部{{ getName(headerInfo) }}类别</h3>
                     <van-icon
                         slot="right-icon"
-                        :size="18"
-                        :color="$colors.warn"
+                        :size="24"
                         v-if="valueId === headerInfo.id"
-                        name="success"
+                        name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                     />
                 </van-cell>
                 <block v-for="item in showList" :key="item.id">
@@ -47,10 +53,9 @@
                         <h3 class="fontNormal" slot="title">{{ getName(item) }}</h3>
                         <van-icon
                             slot="right-icon"
-                            :size="18"
-                            :color="$colors.warn"
+                            :size="24"
                             v-if="valueId === item.id"
-                            name="success"
+                            name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                         />
                     </van-cell>
                 </block>

+ 12 - 6
src/components/filter/ProductCustomCateId.vue

@@ -14,13 +14,20 @@
             />
         </div>
 
-        <van-popup :show="showPopup" round position="bottom" custom-style="height: 300px" @close="showPopup = false">
+        <van-popup
+            :z-index="500"
+            :show="showPopup"
+            round
+            position="bottom"
+            custom-style="height: 348px"
+            @close="showPopup = false"
+        >
             <div class="bar">
                 <div class="left-icon">
-                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="18" name="arrow-left" />
+                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="24" name="arrow-left" />
                 </div>
                 <h3>产品目录</h3>
-                <van-icon color="#5E636D" :size="18" name="cross" @click="showPopup = false" />
+                <van-icon color="#5E636D" :size="24" name="cross" @click="showPopup = false" />
             </div>
             <van-cell-group :border="false">
                 <block v-for="item in showList" :key="item.id">
@@ -32,10 +39,9 @@
                         <h3 class="fontNormal" slot="title">{{ getName(item) }}</h3>
                         <van-icon
                             slot="right-icon"
-                            :size="18"
-                            :color="$colors.warn"
+                            :size="24"
                             v-if="chooseId === item.id"
-                            name="success"
+                            name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                         />
                     </van-cell>
                 </block>

+ 13 - 7
src/components/filter/ProductTags.vue

@@ -14,13 +14,20 @@
             />
         </div>
 
-        <van-popup :show="showPopup" round position="bottom" custom-style="height: 300px" @close="showPopup = false">
+        <van-popup
+            :z-index="500"
+            :show="showPopup"
+            round
+            position="bottom"
+            custom-style="height: 348px"
+            @close="showPopup = false"
+        >
             <div class="bar">
                 <div class="left-icon">
-                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="18" name="arrow-left" />
+                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="24" name="arrow-left" />
                 </div>
                 <h3>选择标签</h3>
-                <van-icon color="#5E636D" :size="18" name="cross" @click="showPopup = false" />
+                <van-icon color="#5E636D" :size="24" name="cross" @click="showPopup = false" />
             </div>
             <van-cell-group :border="false">
                 <!-- <van-cell
@@ -35,7 +42,7 @@
                         :size="18"
                         :color="$colors.warn"
                         v-if="chooseId === headerInfo.id"
-                        name="success"
+                        name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                     />
                 </van-cell> -->
                 <block v-for="item in showList" :key="item.id">
@@ -47,10 +54,9 @@
                         <h3 class="fontNormal" slot="title">{{ getName(item) }}</h3>
                         <van-icon
                             slot="right-icon"
-                            :size="18"
-                            :color="$colors.warn"
+                            :size="24"
                             v-if="chooseId === item.id"
-                            name="success"
+                            name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                         />
                     </van-cell>
                 </block>

+ 12 - 6
src/components/select/Application.vue

@@ -4,13 +4,20 @@
             <h3 class="fontNormal">{{ valueInfo ? valueInfo : '请选择应用领域' }}</h3>
         </div>
 
-        <van-popup :show="showPopup" round position="bottom" custom-style="height: 300px" @close="showPopup = false">
+        <van-popup
+            :z-index="500"
+            :show="showPopup"
+            round
+            position="bottom"
+            custom-style="height: 348px"
+            @close="showPopup = false"
+        >
             <div class="bar">
                 <div class="left-icon">
-                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="18" name="arrow-left" />
+                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="24" name="arrow-left" />
                 </div>
                 <h3>选择应用领域</h3>
-                <van-button :color="$colors.warn" size="small" plain @click="submit">确认</van-button>
+                <van-button :color="$colors.warn" plain @click="submit">确定</van-button>
             </div>
             <van-cell-group :border="false">
                 <block v-for="item in showList" :key="item.id">
@@ -23,10 +30,9 @@
                         <h3 @click.stop="chooseList(item)" class="fontNormal" slot="title">{{ getName(item) }}</h3>
                         <van-icon
                             slot="right-icon"
-                            :size="18"
-                            :color="$colors.warn"
+                            :size="24"
                             v-if="nowChooseList.includes(item.id)"
-                            name="success"
+                            name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                         />
                     </van-cell>
                 </block>

+ 15 - 10
src/components/select/Country.vue

@@ -4,13 +4,20 @@
             <h3 class="fontNormal">{{ valueInfo ? valueInfo : '未选择' }}</h3>
         </div>
 
-        <van-popup :show="showPopup" round position="bottom" custom-style="height: 300px" @close="showPopup = false">
+        <van-popup
+            :show="showPopup"
+            :z-index="500"
+            round
+            position="bottom"
+            custom-style="height: 348px"
+            @close="showPopup = false"
+        >
             <div class="bar">
                 <div class="left-icon">
-                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="18" name="arrow-left" />
+                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="24" name="arrow-left" />
                 </div>
                 <h3>国家地区</h3>
-                <van-icon color="#5E636D" :size="18" name="cross" @click="showPopup = false" />
+                <van-icon color="#5E636D" :size="24" name="cross" @click="showPopup = false" />
             </div>
             <van-cell-group :border="false">
                 <van-cell
@@ -18,15 +25,14 @@
                     v-if="headerInfo"
                     :border="false"
                     :custom-class="chooseId === headerInfo.value ? 'active' : ''"
-                    style="display:none"
+                    style="display: none;"
                 >
                     <h3 class="fontNormal" slot="title">全部{{ $t(headerInfo.label) }}地区</h3>
                     <van-icon
                         v-if="chooseId === headerInfo.value"
                         slot="right-icon"
-                        :size="18"
-                        :color="$colors.warn"
-                        name="success"
+                        :size="24"
+                        name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                     />
                 </van-cell>
                 <block v-for="item in showList" :key="item.value">
@@ -39,9 +45,8 @@
                         <van-icon
                             v-if="chooseId === item.value"
                             slot="right-icon"
-                            :size="18"
-                            :color="$colors.warn"
-                            name="success"
+                            :size="24"
+                            name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                         />
                     </van-cell>
                 </block>

+ 12 - 6
src/components/select/Industry.vue

@@ -4,13 +4,20 @@
             <h3 class="fontNormal">{{ valueInfo ? valueInfo : '未选择' }}</h3>
         </div>
 
-        <van-popup :show="showPopup" round position="bottom" custom-style="height: 300px" @close="showPopup = false">
+        <van-popup
+            :show="showPopup"
+            :z-index="500"
+            round
+            position="bottom"
+            custom-style="height: 348px"
+            @close="showPopup = false"
+        >
             <div class="bar">
                 <div class="left-icon">
-                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="18" name="arrow-left" />
+                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="24" name="arrow-left" />
                 </div>
                 <h3>选择所属行业</h3>
-                <van-button :color="$colors.warn" size="small" plain @click="submit">确认</van-button>
+                <van-button :color="$colors.warn" plain @click="submit">确定</van-button>
             </div>
             <van-cell-group :border="false">
                 <block v-for="item in showList" :key="item.id">
@@ -23,10 +30,9 @@
                         <h3 @click.stop="chooseList(item)" class="fontNormal" slot="title">{{ getName(item) }}</h3>
                         <van-icon
                             slot="right-icon"
-                            :size="18"
-                            :color="$colors.warn"
+                            :size="24"
                             v-if="nowChooseList.includes(item.id)"
-                            name="success"
+                            name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                         />
                     </van-cell>
                 </block>

+ 12 - 6
src/components/select/ProductCategory.vue

@@ -4,13 +4,20 @@
             <h3 class="fontNormal">{{ valueInfo ? valueInfo : '未选择' }}</h3>
         </div>
 
-        <van-popup :show="showPopup" round position="bottom" custom-style="height: 300px" @close="showPopup = false">
+        <van-popup
+            :show="showPopup"
+            :z-index="500"
+            round
+            position="bottom"
+            custom-style="height: 348px"
+            @close="showPopup = false"
+        >
             <div class="bar">
                 <div class="left-icon">
-                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="18" name="arrow-left" />
+                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="24" name="arrow-left" />
                 </div>
                 <h3>选择感兴趣的产品</h3>
-                <van-button :color="$colors.warn" plain size="small" @click="submit">确认</van-button>
+                <van-button :color="$colors.warn" plain @click="submit">确定</van-button>
             </div>
             <van-cell-group :border="false">
                 <block v-for="item in showList" :key="item.id">
@@ -23,10 +30,9 @@
                         <h3 @click.stop="chooseList(item)" class="fontNormal" slot="title">{{ getName(item) }}</h3>
                         <van-icon
                             slot="right-icon"
-                            :size="18"
-                            :color="$colors.warn"
+                            :size="24"
                             v-if="nowChooseList.includes(item.id)"
-                            name="success"
+                            name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                         />
                     </van-cell>
                 </block>

+ 11 - 5
src/components/select/ProductCategoryOnly.vue

@@ -4,10 +4,17 @@
             <h3 class="fontNormal">{{ valueInfo ? valueInfo : '请选择类别' }}</h3>
         </div>
 
-        <van-popup :show="showPopup" round position="bottom" custom-style="height: 300px" @close="showPopup = false">
+        <van-popup
+            :show="showPopup"
+            :z-index="500"
+            round
+            position="bottom"
+            custom-style="height: 348px"
+            @close="showPopup = false"
+        >
             <div class="bar">
                 <div class="left-icon">
-                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="18" name="arrow-left" />
+                    <van-icon v-if="headerInfo" color="#5E636D" @click="back" :size="24" name="arrow-left" />
                 </div>
                 <h3>选择感兴趣的产品</h3>
                 <van-icon
@@ -28,10 +35,9 @@
                         <h3 @click.stop="chooseList(item)" class="fontNormal" slot="title">{{ getName(item) }}</h3>
                         <van-icon
                             slot="right-icon"
-                            :size="18"
-                            :color="$colors.warn"
+                            :size="24"
                             v-if="item.id === chooseId"
-                            name="success"
+                            name="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_oudlined_xuanzhong.png"
                         />
                     </van-cell>
                 </block>

+ 3 - 1
src/locales/zh.json

@@ -148,5 +148,7 @@
   "zhan-ting-fang-ke-ren-shu": "展厅访客人数",
   "xuan-ze-pin-pai": "选择品牌",
   "pin-pai": "品牌",
-  "fa-bu-shi-jian": "发布时间"
+  "fa-bu-shi-jian": "发布时间",
+  "bu-xian": "不限",
+  "imt-zhan-ting-xian-xia-ti-yan": "IMT展厅线下体验"
 }

+ 3 - 1
src/mixins/searchList.js

@@ -23,7 +23,8 @@ export default {
             finish: false,
             searchTop: 0,
             noSearch: false,
-            filterStart: false
+            filterStart: false,
+            offlineExperience: ''
         };
     },
     computed: {
@@ -234,6 +235,7 @@ export default {
                     this.tagIds = this.filterInfo.tagIds;
                     this.applicationField = this.filterInfo.applicationField;
                     this.customCateId = this.filterInfo.customCateId;
+                    this.offlineExperience = this.filterInfo.offlineExperience;
                     this.page = 1;
                     this.getData();
                 }

+ 8 - 3
src/pagesHome/FilterPage.vue

@@ -18,6 +18,7 @@
         <product-tags v-model="tagIds" v-if="pageType === 'product'"></product-tags>
         <enterprise-type v-model="enterpriseType" v-if="pageType === 'vendor'"></enterprise-type>
         <application v-model="applicationField"></application>
+        <offline-experience v-model="offlineExperience" v-if="pageType === 'product'"></offline-experience>
 
         <fixed-button btnList>
             <van-button type="default" block @click="restart">重置</van-button>
@@ -29,7 +30,8 @@
 import ProductCategoryFilter from '../components/filter/ProductCategory';
 import Country from '../components/filter/Country';
 import ProductTags from '../components/filter/ProductTags.vue';
-import Application from '../components/filter/Application';
+import Application from '../components/filter/Application.vue';
+import OfflineExperience from '../components/filter/OfflineExperience.vue';
 import EnterpriseType from '../components/filter/EnterpriseType';
 import ProductBrand from '../components/filter/ProductBrand.vue';
 import ProductCustomCateIdFilter from '../components/filter/ProductCustomCateId.vue';
@@ -48,7 +50,8 @@ export default {
             continent: '',
             vendorInfoId: 0,
             customCateId: 0,
-            customCateList: []
+            customCateList: [],
+            offlineExperience: ''
         };
     },
     onShow() {
@@ -70,6 +73,7 @@ export default {
             this.brand = this.$mp.options.brand;
             this.customCateId = this.$mp.options.customCateId || 0;
             this.vendorInfoId = this.$mp.options.vendorInfoId || 0;
+            this.offlineExperience = this.$mp.options.offlineExperience || '';
 
             if (this.$mp.options.vendorInfoId) {
                 this.$http
@@ -91,7 +95,8 @@ export default {
         EnterpriseType,
         ProductBrand,
         ProductCustomCateIdFilter,
-        FixedButton
+        FixedButton,
+        OfflineExperience
     },
     methods: {
         restart() {

+ 26 - 23
src/pagesHome/Product.vue

@@ -10,28 +10,30 @@
 </config>
 <template>
     <div>
-        <search-bar dark v-model="searchKey" :ratio="1" @search="submitSearch"></search-bar>
-        <div class="top" :style="{ height: `calc(88rpx + ${barHeight}px)` }">
-            <van-sticky :offset-top="barHeight" z-index="100">
-                <div class="tab-content" v-if="firstLevels.length > 0">
-                    <van-tabs
-                        :active="hotActive"
-                        @change="hotActive = $event.detail.index"
-                        :ellipsis="false"
-                        :line-width="24"
-                        :line-height="2"
-                    >
-                        <van-tab :title="getName(item)" v-for="item in firstLevels" :key="item.id"></van-tab>
-                    </van-tabs>
-                </div>
-            </van-sticky>
-        </div>
+        <div id="top">
+            <search-bar dark v-model="searchKey" :ratio="1" @search="submitSearch"></search-bar>
+            <div class="top" :style="{ height: `calc(88rpx + ${barHeight}px)` }">
+                <van-sticky :offset-top="barHeight" z-index="100">
+                    <div class="tab-content" v-if="firstLevels.length > 0">
+                        <van-tabs
+                            :active="hotActive"
+                            @change="hotActive = $event.detail.index"
+                            :ellipsis="false"
+                            :line-width="24"
+                            :line-height="2"
+                        >
+                            <van-tab :title="getName(item)" v-for="item in firstLevels" :key="item.id"></van-tab>
+                        </van-tabs>
+                    </div>
+                </van-sticky>
+            </div>
 
-        <div class="banner-box">
-            <banner :banners="banners" :height="180"></banner>
+            <div class="banner-box">
+                <banner :banners="banners" :height="180"></banner>
+            </div>
         </div>
         <div class="main" id="main">
-            <van-sticky :container="main" :offset-top="44">
+            <van-sticky :container="main" :offset-top="44 + barHeight">
                 <filter-sort-bar
                     :sort="sort"
                     :showType="showType"
@@ -105,7 +107,7 @@ export default {
     },
     mixins: [searchList],
     computed: {
-        ...mapState(['barTop', 'barHeight']),
+        ...mapState(['barTop', 'barHeight', 'rpx']),
         firstLevels() {
             const list = [...this.productCategories];
             return list.filter(item => {
@@ -132,7 +134,8 @@ export default {
                 searchTop: this.searchTop,
                 tagIds: this.tagIds,
                 applicationField: this.applicationField,
-                brand: this.brand
+                brand: this.brand,
+                offlineExperience: this.offlineExperience
             };
         },
         defaultCategoryId() {
@@ -162,10 +165,10 @@ export default {
         });
     },
     onReady() {
-        this.main = wx.createSelectorQuery().select('#main');
+        this.main = wx.createSelectorQuery().select('#top');
         this.main
             .boundingClientRect(rect => {
-                this.searchTop = rect.top - 44;
+                this.searchTop = rect.height - this.barHeight - 44;
             })
             .exec();
     },

+ 52 - 3
src/pagesMine/Enter.vue

@@ -47,7 +47,12 @@
                 </div>
             </div>
         </van-popup>
-        <van-dialog id="van-dialog" />
+        <van-dialog id="van-dialog">
+            <div class="message">
+                <div class="text1">www.imttech.cn</div>
+                <div class="text2">详情咨询:021-60797117</div>
+            </div>
+        </van-dialog>
     </div>
 </template>
 <script>
@@ -142,10 +147,11 @@ export default {
         showDiloag() {
             Dialog.confirm({
                 title: '请在PC端访问',
-                message: '详情咨询:021-60797117',
+                message: 'www.imttech.cn',
                 confirmButtonColor: this.$colors.warn,
                 showCancelButton: false,
-                confirmButtonText: '我知道了'
+                confirmButtonText: '我知道了',
+                useSlot: true
             });
         }
     }
@@ -204,4 +210,47 @@ h3 {
         }
     }
 }
+
+#van-dialog {
+    --dialog-header-font-weight: 400;
+    --dialog-has-title-message-text-color: #000000;
+    --dialog-message-font-size: 22px;
+    --dialog-has-title-message-padding-top: 16px;
+    --dialog-header-padding-top: 56px;
+    --dialog-message-padding: 16px 8px 45px;
+    .van-dialog__header {
+        font-size: 14px;
+
+        color: #353535;
+    }
+    .dialog__message {
+        line-height: 22px;
+        font-weight: bold;
+    }
+
+    .van-button {
+        --button-default-font-size: 15px;
+        font-weight: bold;
+    }
+
+    .message {
+        display: flex;
+        flex-direction: column;
+        align-items: center;
+        padding: 16px 8px 45px;
+
+        .text1 {
+            font-size: 22px;
+            font-weight: bold;
+            color: #000000;
+            line-height: 23px;
+        }
+        .text2 {
+            font-size: 12px;
+            color: #353535;
+            line-height: 23px;
+            margin-top: 10px;
+        }
+    }
+}
 </style>

+ 77 - 1
src/pagesNews/Detail.vue

@@ -41,6 +41,10 @@
             <div class="detail">
                 <h2>{{ isActivity ? '活动' : '新闻' }}详情</h2>
 
+                <div class="introduction" v-if="info.introduction">
+                    {{ info.introduction }}
+                </div>
+
                 <div class="html" v-html="info.content"></div>
             </div>
         </div>
@@ -54,6 +58,15 @@
                 >{{ isEnd ? '报名结束' : activityId ? '查看报名信息' : '立即报名' }}</van-button
             >
         </fixed-button>
+
+        <div class="imgList-btn" v-if="detailImgList.length > 0" @click="showImgs">
+            <van-image
+                :width="20"
+                :height="16"
+                src="http://imttech.oss-cn-hangzhou.aliyuncs.com/micro/icon_chakantupian.png"
+                fit="contain"
+            />
+        </div>
     </div>
 </template>
 <script>
@@ -65,7 +78,8 @@ export default {
         return {
             informationId: 0,
             info: {},
-            activityId: 0
+            activityId: 0,
+            detailImgList: []
         };
     },
     computed: {
@@ -96,6 +110,7 @@ export default {
         this.informationId = options.id;
         this.$http.get('/information/get/' + options.id).then(res => {
             this.info = res;
+            this.getImgList(res.content);
         });
     },
     onShow() {
@@ -133,8 +148,47 @@ export default {
                         this.activityId = 0;
                     }
                 });
+        },
+        getImgList(detailImg) {
+            if (detailImg) {
+                this.detailImgList = detailImg
+                    .split('<img ')
+                    .map(item => {
+                        return item.split('/>')[0];
+                    })
+                    .map(item => {
+                        return item.split('src="').length > 1 ? item.split('src="')[1] : '';
+                    })
+                    .map(item => {
+                        return item.split('"')[0];
+                    })
+                    .filter(item => {
+                        return item && this.checkImg(item);
+                    });
+            } else {
+                this.detailImgList = [];
+            }
+            console.log(this.detailImgList);
+        },
+        checkImg(file) {
+            const imglist = ['png', 'PNG', 'jpg', 'JPG', 'jpeg', 'JPEG', 'bmp', 'BMP', 'gif', 'GIF'];
+            const _info = file.split('.');
+            if (imglist.indexOf(_info[_info.length - 1]) !== -1) {
+                return true;
+            } else {
+                return false;
+            }
+        },
+        showImgs() {
+            if (this.detailImgList.length > 0) {
+                wx.previewImage({
+                    current: this.detailImgList[0], // 当前显示图片的http链接
+                    urls: [...this.detailImgList] // 需要预览的图片http链接列表
+                });
+            }
         }
     },
+
     onPageScroll() {},
     onShareAppMessage(from, target) {
         return {
@@ -197,5 +251,27 @@ export default {
     .html {
         padding-top: 14px;
     }
+
+    .introduction {
+        font-size: 14px;
+        color: #292c33;
+        line-height: 24px;
+        padding: 14px 0 0;
+    }
+}
+
+.imgList-btn {
+    position: fixed;
+    right: 10px;
+    bottom: 15vh;
+    background-color: @bgw;
+    z-index: 200;
+    width: 40px;
+    height: 40px;
+    border-radius: 100%;
+    box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.1);
+    display: flex;
+    align-items: center;
+    justify-content: center;
 }
 </style>

+ 7 - 1
src/pagesProduct/Detail.vue

@@ -78,7 +78,7 @@
                 <div class="vendor" @click="navigateTo('/pagesVendor/Detail?id=' + vendorInfo.id)">
                     <image
                         :src="vendorInfo.logo"
-                        style="width:60px;height:60px;border-radius:4px;border:1px solid #f2f4f5"
+                        style="width: 60px; height: 60px; border-radius: 4px; border: 1px solid #f2f4f5;"
                     />
                     <!-- <van-image class="logo" :radius="4" :src="vendorInfo.logo" :width="60" :height="60" /> -->
                     <div class="vendor-info">
@@ -528,6 +528,12 @@ export default {
         bottom: 10px;
         display: flex;
         align-items: center;
+        .my-icon {
+            height: 24px;
+            .van-icon {
+                display: block;
+            }
+        }
 
         // ._van-icon {
         //     margin-left: 10px;

+ 11 - 0
src/store/index.js

@@ -23,6 +23,7 @@ export default new Vuex.Store({
         emailInfo: {},
         messageList: [],
         barInfo: {},
+        rpx: 2,
         chatForm:
             '{"phone":"13365135976","sex":"male","nickname":"蒋耀忠","position":"总经理","chCompanyName":"NE洛阳新能轴承制造有限公司","email":"11@qq.com.cn","products":[{"chName":"MS22-8多轴数控机床","enName":"MultiLine MS22-8","id":6296,"mainPicture":"https://imt.oss-cn-hangzhou.aliyuncs.com/image/2020-11-26-18-08-34MaKXCzxH.png"}]}'
     },
@@ -83,6 +84,9 @@ export default new Vuex.Store({
         },
         setMessageList(state, messageList) {
             state.messageList = messageList;
+        },
+        updateRpx(state, rpx) {
+            state.rpx = rpx;
         }
     },
     actions: {
@@ -155,6 +159,13 @@ export default new Vuex.Store({
                 context.commit('updateBarInfo', info);
             }
         },
+        getSystemInfo(context) {
+            wx.getSystemInfo({
+                success: res => {
+                    context.commit('updateRpx', Math.ceil((res.windowWidth / 750) * 100) / 100);
+                }
+            });
+        },
         getArea(context) {
             http.http.get('https://imttech.oss-cn-hangzhou.aliyuncs.com/utils/area.json').then(res => {
                 context.commit('updateAreaList', res);

+ 5 - 5
src/utils/appState.js

@@ -49,16 +49,16 @@ const languageModels = new Map([['ch', '中文'], ['en', '英文'], ['both', '
 
 const InformationType = new Map([
     [
-        'NEW_PRODUCT_RELEASE',
+        'INDUSTRY_NEWS',
         {
-            name: 'xin-pin-fa-bu',
-            type: 'bigImg'
+            name: 'hang-ye-xin-wen'
         }
     ],
     [
-        'INDUSTRY_NEWS',
+        'NEW_PRODUCT_RELEASE',
         {
-            name: 'hang-ye-xin-wen'
+            name: 'xin-pin-fa-bu',
+            type: 'bigImg'
         }
     ],
     [

Unele fișiere nu au fost afișate deoarece prea multe fișiere au fost modificate în acest diff