浏览代码

updated:隐藏手机号码

xiebaomin 1 年之前
父节点
当前提交
66199af0c7

+ 6 - 0
assets/css/utils.scss

@@ -20,3 +20,9 @@
     border-#{$key}-color: $color;
   }
 }
+
+@mixin flex-column-between {
+  display: flex;
+  flex-direction: column;
+  justify-content: space-between;
+}

+ 123 - 120
nuxt.config.js

@@ -1,120 +1,123 @@
-import path from 'path'
-import fs from 'fs'
-
-console.log(process.env.BASE_URL)
-
-export default {
-  router: {
-    middleware: ['intercept'],
-  },
-
-  // Global page headers: https://go.nuxtjs.dev/config-head
-  head: {
-    title: '认证通',
-    htmlAttrs: {
-      lang: 'zh-cn',
-    },
-    meta: [
-      { charset: 'utf-8' },
-      { name: 'viewport', content: 'width=device-width, initial-scale=1' },
-      { name: 'description', content: '认证通|一款专业的正品认证SaaS软件系统' },
-      { name: 'format-detection', content: 'telephone=no' },
-    ],
-    // link: [{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }],
-    script: [
-      process.env.NODE_ENV === 'production'
-        ? {
-            src: '/baidu.count.js',
-          }
-        : '',
-      {
-        src: '/map.config.js',
-      },
-      {
-        src: 'https://webapi.amap.com/maps?v=2.0&key=eae3be059db26dc1f9cae1d1bee9d4cb',
-      },
-      {
-        src: 'https://api.map.baidu.com/api?v=2.0&&type=webgl&ak=9kNcqnkFxlS0Kv9jEbDgwG2BAMrD6wPb',
-      },
-      {
-        src: 'https://res.wx.qq.com/open/js/jweixin-1.6.0.js',
-      },
-    ],
-  },
-
-  // Global CSS: https://go.nuxtjs.dev/config-css
-  css: [
-    // 'vant/lib/index.css',
-    // 'element-ui/lib/theme-chalk/index.css',
-    '~/assets/css/iconfont.css',
-    'swiper/css/swiper.css',
-    'animate.css/animate.min.css',
-    '~/assets/css/global.css',
-    'three-dots/dist/three-dots.min.css',
-  ],
-
-  // Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins
-  plugins: [
-    '~/plugins/vant',
-    '~/plugins/element-ui',
-    '~/plugins/axios',
-    '~/plugins/vue-filters',
-    '~/plugins/storage',
-    '~/plugins/jssdk',
-    '~/plugins/router',
-  ],
-
-  // Auto import components: https://go.nuxtjs.dev/config-components
-  components: true,
-
-  // Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules
-  buildModules: [
-    '@nuxtjs/style-resources',
-    // https://go.nuxtjs.dev/tailwindcss
-    '@nuxtjs/tailwindcss',
-  ],
-
-  // Modules: https://go.nuxtjs.dev/config-modules
-  modules: [
-    // https://go.nuxtjs.dev/axios
-    '@nuxtjs/axios',
-  ],
-
-  // Axios module configuration: https://go.nuxtjs.dev/config-axios
-  axios: {
-    // Workaround to avoid enforcing hard-coded localhost:3000: https://github.com/nuxt-community/axios-module/issues/308
-    baseURL: process.env.BASE_URL,
-  },
-
-  styleResources: {
-    scss: ['~/assets/css/utils.scss', '~/assets/themes/themeMixin.scss'],
-  },
-
-  // Build Configuration: https://go.nuxtjs.dev/config-build
-  build: {
-    extractCSS: true,
-    filenames: {
-      chunk: ({ isDev }) => (isDev ? '[name].js' : '[id].[contenthash].js'),
-    },
-  },
-
-  // 配置 Nuxt.js 应用是开发模式还是生产模式
-  dev: process.env.NODE_ENV !== 'production',
-
-  // 配置在客户端和服务端共享的环境变量
-  env: {
-    ...process.env,
-  },
-
-  server: {
-    port: process.env.PORT,
-    host: process.env.HOST,
-    https:
-      process.env.HTTPS === 'true'
-        ? {
-            key: fs.readFileSync(path.join(__dirname, 'cert.key')),
-            cert: fs.readFileSync(path.join(__dirname, 'cert.crt')),
-          }
-        : null,
-  },
-}
+import path from 'path'
+import fs from 'fs'
+
+console.log(process.env.BASE_URL)
+
+export default {
+  router: {
+    middleware: ['intercept'],
+  },
+
+  // Global page headers: https://go.nuxtjs.dev/config-head
+  head: {
+    title: '认证通',
+    htmlAttrs: {
+      lang: 'zh-cn',
+    },
+    meta: [
+      { charset: 'utf-8' },
+      { name: 'viewport', content: 'width=device-width, initial-scale=1' },
+      { name: 'description', content: '认证通|一款专业的正品认证SaaS软件系统' },
+      { name: 'format-detection', content: 'telephone=no' },
+    ],
+    // link: [{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }],
+    script: [
+      process.env.NODE_ENV === 'production'
+        ? {
+            src: '/baidu.count.js',
+          }
+        : '',
+      {
+        src: '/map.config.js',
+      },
+      {
+        src: 'https://webapi.amap.com/maps?v=2.0&key=eae3be059db26dc1f9cae1d1bee9d4cb',
+      },
+      {
+        src: 'https://api.map.baidu.com/api?v=2.0&&type=webgl&ak=9kNcqnkFxlS0Kv9jEbDgwG2BAMrD6wPb',
+      },
+      {
+        src: 'https://res.wx.qq.com/open/js/jweixin-1.6.0.js',
+      },
+    ],
+  },
+
+  // Global CSS: https://go.nuxtjs.dev/config-css
+  css: [
+    // 'vant/lib/index.css',
+    // 'element-ui/lib/theme-chalk/index.css',
+    '~/assets/css/iconfont.css',
+    'swiper/css/swiper.css',
+    'animate.css/animate.min.css',
+    '~/assets/css/global.css',
+    'three-dots/dist/three-dots.min.css',
+  ],
+
+  // Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins
+  plugins: [
+    '~/plugins/vant',
+    '~/plugins/element-ui',
+    '~/plugins/axios',
+    '~/plugins/vue-filters',
+    '~/plugins/storage',
+    '~/plugins/jssdk',
+    '~/plugins/router',
+  ],
+
+  // Auto import components: https://go.nuxtjs.dev/config-components
+  components: true,
+
+  // Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules
+  buildModules: [
+    '@nuxtjs/style-resources',
+    // https://go.nuxtjs.dev/tailwindcss
+    '@nuxtjs/tailwindcss',
+  ],
+
+  // Modules: https://go.nuxtjs.dev/config-modules
+  modules: [
+    // https://go.nuxtjs.dev/axios
+    '@nuxtjs/axios',
+  ],
+
+  // Axios module configuration: https://go.nuxtjs.dev/config-axios
+  axios: {
+    // Workaround to avoid enforcing hard-coded localhost:3000: https://github.com/nuxt-community/axios-module/issues/308
+    baseURL: process.env.BASE_URL,
+  },
+
+  styleResources: {
+    scss: ['~/assets/css/utils.scss', '~/assets/themes/themeMixin.scss'],
+  },
+
+  // Build Configuration: https://go.nuxtjs.dev/config-build
+  build: {
+    extractCSS: true,
+    filenames: {
+      chunk: ({ isDev }) => (isDev ? '[name].js' : '[id].[contenthash].js'),
+    },
+  },
+
+  // 配置 Nuxt.js 应用是开发模式还是生产模式
+  dev: process.env.NODE_ENV !== 'production',
+
+  // 配置在客户端和服务端共享的环境变量
+  env: {
+    ...process.env,
+  },
+
+  server: {
+    port: process.env.PORT,
+    host: process.env.HOST,
+    https:
+      process.env.HTTPS === 'true'
+        ? {
+            key: fs.readFileSync(path.join(__dirname, 'cert.key')),
+            cert: fs.readFileSync(path.join(__dirname, 'cert.crt')),
+          }
+        : null,
+  },
+  log: {
+    level: 'debug'
+  }
+}

+ 2 - 2
pages/_template/app/approve/club/detail.vue

@@ -19,9 +19,9 @@
           <div class="section flex justify-between items-center">
             <div class="info">
               <div class="name" v-text="clubInfo.authParty"></div>
-              <div class="mobile" @click="callMobile(clubInfo.mobile)">
+              <!--<div class="mobile" @click="callMobile(clubInfo.mobile)">
                 {{ clubInfo.mobile | formatEmpty }}
-              </div>
+              </div>-->
               <div class="address" v-text="address"></div>
             </div>
             <div class="logo"><img :src="clubInfo.logo" /></div>

+ 4 - 2
pages/_template/app/index.vue

@@ -66,7 +66,7 @@
                 />
                 <div class="info">
                   <div class="name" v-text="item.authParty"></div>
-                  <div class="mobile">{{ item.mobile || '暂无' }}</div>
+                  <!--<div class="mobile">{{ item.mobile || '暂无' }}</div>-->
                   <div class="address">
                     {{ formatAddress(item.area, item.address) }}
                   </div>
@@ -92,7 +92,7 @@
               <img class="cover" :src="item.logo || drawLogo(item.authParty)" />
               <div class="info">
                 <div class="name" v-text="item.authParty"></div>
-                <div class="mobile">{{ item.mobile || '暂无' }}</div>
+                <!--<div class="mobile">{{ item.mobile || '暂无' }}</div>-->
                 <div class="address">
                   {{ formatAddress(item.area, item.address) }}
                 </div>
@@ -407,6 +407,7 @@ export default {
           position: relative;
           margin-left: 12px;
           width: 330px;
+          @include flex-column-between;
           .name {
             width: 200px;
             font-size: 18px;
@@ -584,6 +585,7 @@ export default {
       .info {
         position: relative;
         margin-left: 3.2vw;
+        @include flex-column-between;
         .name {
           width: 48vw;
           font-size: 4vw;

+ 2 - 2
pages/_template/hyt/approve/club/detail.vue

@@ -19,9 +19,9 @@
           <div class="section flex justify-between items-center">
             <div class="info">
               <div class="name" v-text="clubInfo.authParty"></div>
-              <div class="mobile" @click="callMobile(clubInfo.mobile)">
+              <!--<div class="mobile" @click="callMobile(clubInfo.mobile)">
                 {{ clubInfo.mobile | formatEmpty }}
-              </div>
+              </div>-->
               <div class="address" v-text="address"></div>
             </div>
             <div class="logo"><img :src="clubInfo.logo" /></div>

+ 4 - 2
pages/_template/hyt/index.vue

@@ -66,7 +66,7 @@
                 />
                 <div class="info">
                   <div class="name" v-text="item.authParty"></div>
-                  <div class="mobile">{{ item.mobile || '暂无' }}</div>
+                  <!--<div class="mobile">{{ item.mobile || '暂无' }}</div>-->
                   <div class="address">
                     {{ formatAddress(item.area, item.address) }}
                   </div>
@@ -92,7 +92,7 @@
               <img class="cover" :src="item.logo || drawLogo(item.authParty)" />
               <div class="info">
                 <div class="name" v-text="item.authParty"></div>
-                <div class="mobile">{{ item.mobile || '暂无' }}</div>
+                <!--<div class="mobile">{{ item.mobile || '暂无' }}</div>-->
                 <div class="address">
                   {{ formatAddress(item.area, item.address) }}
                 </div>
@@ -408,6 +408,7 @@ export default {
           position: relative;
           margin-left: 12px;
           width: 330px;
+          @include flex-column-between;
           .name {
             width: 200px;
             font-size: 18px;
@@ -585,6 +586,7 @@ export default {
       .info {
         position: relative;
         margin-left: 3.2vw;
+        @include flex-column-between;
         .name {
           width: 48vw;
           font-size: 4vw;

+ 1 - 1
pages/_template/ldm/approve/club/detail.vue

@@ -15,7 +15,7 @@
     <div class="page-content">
       <div class="club-info">
         <div class="address" v-text="address"></div>
-        <div class="mobile">{{ clubInfo.mobile | formatEmpty }}</div>
+        <!--<div class="mobile">{{ clubInfo.mobile | formatEmpty }}</div>-->
         <div class="navigation" @click="onMapNav">导航过去</div>
       </div>
       <template v-if="clubInfo.doctorList && clubInfo.doctorList.length > 0">

+ 1 - 1
pages/_template/ldm/approve/club/index.vue

@@ -42,7 +42,7 @@
             <div class="info">
               <div class="name" v-text="item.authParty"></div>
               <div class="line"></div>
-              <div class="mobile">{{ item.mobile || '暂无' }}</div>
+              <!--<div class="mobile">{{ item.mobile || '暂无' }}</div>-->
               <div class="address">
                 {{ formatAddress(item.area, item.address) }}
               </div>

+ 2 - 2
pages/_template/ph/approve/club/detail.vue

@@ -20,9 +20,9 @@
         <div class="section flex justify-between items-center">
           <div class="info">
             <div class="name" v-text="clubInfo.authParty"></div>
-            <div class="mobile" @click="callMobile(clubInfo.mobile)">
+            <!--<div class="mobile" @click="callMobile(clubInfo.mobile)">
               {{ clubInfo.mobile | formatEmpty }}
-            </div>
+            </div>-->
             <div class="address" v-text="address"></div>
           </div>
           <div class="logo"><img :src="clubInfo.logo" /></div>

+ 4 - 2
pages/_template/ph/approve/club/index.vue

@@ -54,7 +54,7 @@
                 />
                 <div class="info">
                   <div class="name" v-text="item.authParty"></div>
-                  <div class="mobile">{{ item.mobile || '暂无' }}</div>
+                  <!--<div class="mobile">{{ item.mobile || '暂无' }}</div>-->
                   <div class="address">
                     {{ formatAddress(item.area, item.address) }}
                   </div>
@@ -84,7 +84,7 @@
               <img class="cover" :src="item.logo || drawLogo(item.authParty)" />
               <div class="info">
                 <div class="name" v-text="item.authParty"></div>
-                <div class="mobile">{{ item.mobile || '暂无' }}</div>
+                <!--<div class="mobile">{{ item.mobile || '暂无' }}</div>-->
                 <div class="address">
                   {{ formatAddress(item.area, item.address) }}
                 </div>
@@ -261,6 +261,7 @@ export default {
             .info {
               position: relative;
               margin-left: 12px;
+              @include flex-column-between;
               .name {
                 width: 200px;
                 font-size: 16px;
@@ -387,6 +388,7 @@ export default {
             .info {
               position: relative;
               margin-left: 3.2vw;
+              @include flex-column-between;
               .name {
                 width: 48vw;
                 font-size: 4vw;

+ 2 - 2
pages/_template/ross/approve/club/detail.vue

@@ -19,9 +19,9 @@
           <div class="section flex justify-between items-center">
             <div class="info">
               <div class="name" v-text="clubInfo.authParty"></div>
-              <div class="mobile" @click="callMobile(clubInfo.mobile)">
+              <!--<div class="mobile" @click="callMobile(clubInfo.mobile)">
                 {{ clubInfo.mobile | formatEmpty }}
-              </div>
+              </div>-->
               <div class="address" v-text="address"></div>
             </div>
             <div class="logo"><img :src="clubInfo.logo" /></div>

+ 6 - 4
pages/_template/ross/index.vue

@@ -52,7 +52,7 @@
                 <img class="cover" :src="item.logo || drawLogo(item.authParty)" />
                 <div class="info">
                   <div class="name" v-text="item.authParty"></div>
-                  <div class="mobile">{{ item.mobile || '暂无' }}</div>
+                  <!--<div class="mobile">{{ item.mobile || '暂无' }}</div>-->
                   <div class="address">
                     {{ formatAddress(item.area, item.address) }}
                   </div>
@@ -74,7 +74,7 @@
               <img class="cover" :src="item.logo || drawLogo(item.authParty)" />
               <div class="info">
                 <div class="name" v-text="item.authParty"></div>
-                <div class="mobile">{{ item.mobile || '暂无' }}</div>
+                <!--<div class="mobile">{{ item.mobile || '暂无' }}</div>-->
                 <div class="address">
                   {{ formatAddress(item.area, item.address) }}
                 </div>
@@ -105,11 +105,11 @@ export default {
     return {
       scrollTop: 0,
       banner: {},
-      screenWidth: ""
+      screenWidth: ''
     }
   },
   computed: {
-    ...mapGetters(['screenWidth', 'isPc', 'authUserId']),
+    ...mapGetters(['isPc', 'authUserId']),
     offsetTop() {
       if (this.scrollTop <= window.innerHeight / 2) return '10px'
       return 10 + this.scrollTop - window.innerHeight / 2 + 'px'
@@ -401,6 +401,7 @@ export default {
               position: relative;
               margin-left: 12px;
               width: 330px;
+              @include flex-column-between;
               .name {
                 width: 200px;
                 font-size: 18px;
@@ -596,6 +597,7 @@ export default {
           .info {
             position: relative;
             margin-left: 3.2vw;
+            @include flex-column-between;
             .name {
               width: 48vw;
               font-size: 4vw;

+ 16 - 0
pm2.config.js

@@ -0,0 +1,16 @@
+module.exports = {
+  apps: [
+    {
+      name: 'caimei-authentic-www',
+      script: 'npm',
+      args: 'start',
+      log_date_format: 'YYYY-MM-DD HH:mm:ss',
+      error_file: './logs/pm2/my-nuxt-app-error.log',
+      out_file: './logs/pm2/my-nuxt-app-out.log',
+      merge_logs: true,
+      env: {
+        NODE_ENV: 'production'
+      }
+    }
+  ]
+}