Explorar el Código

增加 视频帮办 功能

wandequan hace 1 año
padre
commit
d037323d67
Se han modificado 8 ficheros con 369 adiciones y 472 borrados
  1. 30 0
      .postcssrc.js
  2. 260 323
      package-lock.json
  3. 1 8
      package.json
  4. 0 33
      postcss.config.js
  5. 18 3
      public/static/config/config2.js
  6. 6 6
      src/components2/Scene.vue
  7. 54 0
      src/components2/Tool.vue
  8. 0 99
      vue.config-xcx.js

+ 30 - 0
.postcssrc.js

@@ -0,0 +1,30 @@
+module.exports = {
+    plugins: {
+        autoprefixer: {
+            overrideBrowserslist: [
+                "Android 4.1",
+                "iOS 7.1",
+                "Chrome > 31",
+                "ff > 31",
+                // "ie >= 8",
+                "last 10 versions", // 所有主流浏览器最近10版本用
+            ],
+            grid: true
+        }, // 用来给不同的浏览器自动添加相应前缀,如-webkit-,-moz-等等
+        "postcss-px-to-viewport": {
+            unitToConvert: "px", // 要转化的单位
+            viewportWidth: 900, // UI设计稿的宽度
+            unitPrecision: 6, // 转换后的精度,即小数点位数
+            propList: ["*"], // 指定转换的css属性的单位,*代表全部css属性的单位都进行转换
+            viewportUnit: "vw", // 指定需要转换成的视窗单位,默认vw
+            fontViewportUnit: "vw", // 指定字体需要转换成的视窗单位,默认vw
+            selectorBlackList: ["wrap"], // 指定不转换为视窗单位的类名,
+            minPixelValue: 1, // 默认值1,小于或等于1px则不进行转换
+            mediaQuery: true, // 是否在媒体查询的css代码中也进行转换,默认false
+            // exclude: [/node_modules/], // 设置忽略文件,用正则做目录名匹配
+            landscape: false, // 是否处理横屏情况
+            // landscapeUnit: 'vh',
+            // landscapeWidth: 900
+        }
+    }
+};

La diferencia del archivo ha sido suprimido porque es demasiado grande
+ 260 - 323
package-lock.json


+ 1 - 8
package.json

@@ -17,7 +17,6 @@
     "clipboard": "^2.0.11",
     "core-js": "^3.8.3",
     "moment": "^2.29.4",
-    "postcss-px-to-viewport-opt": "^0.0.4",
     "swiper": "^4.5.1",
     "vant": "^3.6.2",
     "videojs-flash": "^2.2.1",
@@ -38,9 +37,6 @@
     "json-loader": "^0.5.7",
     "less": "^4.0.0",
     "less-loader": "^8.0.0",
-    "postcss": "7.0.32",
-    "postcss-import": "^15.1.0",
-    "postcss-loader": "^7.0.2",
     "postcss-px-to-viewport": "^1.1.1",
     "style-resources-loader": "^1.4.1",
     "vue-cli-plugin-electron-builder": "~2.1.1",
@@ -50,8 +46,5 @@
     "> 1%",
     "last 2 versions",
     "not ie 11"
-  ],
-  "resolutions": {
-    "postcss": "7.0.32"
-  }
+  ]
 }

+ 0 - 33
postcss.config.js

@@ -1,33 +0,0 @@
-module.exports = {
-    plugins: {
-        autoprefixer: {
-            overrideBrowserslist: [
-                "Android 4.1",
-                "iOS 7.1",
-                "Chrome > 31",
-                "ff > 31",
-                // "ie >= 8",
-                "last 10 versions", // 所有主流浏览器最近10版本用
-            ],
-            grid: true,
-        },
-        'postcss-import': {},
-        'postcss-px-to-viewport': {
-            'unitToConvert': "px", // 要转化的单位
-            'viewportWidth': 415, // 视窗的宽度,对应的是我们设计稿的宽度
-            // 'viewportHeight': 896, // 视窗的高度
-            'unitPrecision': 5, // 指定`px`转换为视窗单位值的小数位数(很多时候无法整除)
-            'propList': ["*"], // 指定转换的css属性的单位,*代表全部css属性的单位都进行转换
-            'viewportUnit': 'vw', // 指定需要转换成的视窗单位,建议使用vw
-            'fontViewportUnit': "vw", // 指定字体需要转换成的视窗单位,默认vw
-            'selectorBlackList': [], // 指定不转换为视窗单位的类
-            'minPixelValue': 1, // 小于或等于`1px`不转换为视窗单位
-            'mediaQuery': true, // 允许在媒体查询中转换`px`
-            'exclude': /(\/|\\)(node_modules)(\/|\\)/,
-            'include': [],// src/views/webgl/DashBoard.vue'
-            'landscape': true, // 是否处理横屏情况
-            'landscapeUnit': 'vh',
-            'landscapeWidth': 415
-        }
-    }
-}

+ 18 - 3
public/static/config/config2.js

@@ -935,7 +935,7 @@ systemConfig.pointInfo = {
                 lon: 121.12262161165764, lat: 31.153863894518433, h: 1.6564816567440755
             },
             url: "https://yue.sh.gov.cn/#/location",
-            pc_url:"https://yue.sh.gov.cn/pc/serviceCenter.html?placeId=2c90fdc973d65a020173d73a03cd0002&organType=%25E5%258C%25BA%25E7%25BA%25A7%25E8%25A1%258C%25E6%2594%25BF%25E6%259C%258D%25E5%258A%25A1%25E4%25B8%25AD%25E5%25BF%2583&from=null",
+            pc_url: "https://yue.sh.gov.cn/pc/serviceCenter.html?placeId=2c90fdc973d65a020173d73a03cd0002&organType=%25E5%258C%25BA%25E7%25BA%25A7%25E8%25A1%258C%25E6%2594%25BF%25E6%259C%258D%25E5%258A%25A1%25E4%25B8%25AD%25E5%25BF%2583&from=null",
             text: []
         },
         {
@@ -1173,7 +1173,6 @@ systemConfig.pointInfo = {
             camera: {
                 sceneType: 2,
                 lon: 121.12245920267611, lat: 31.153627070507845, h: 5.8, heading: 82, pitch: 0, roll: 0
-
             }
         },
         // type 5 查看可办事项
@@ -1231,7 +1230,23 @@ systemConfig.pointInfo = {
                 lon: 121.12273647863168, lat: 31.153708377447124, h: 9.626361036523261
             },
             json: "./static/json/3FSCFLY.json",
-        }
+        },
+        // type 6 当前页面嵌入iframe展示
+        {
+            name: "视频帮办",
+            type: 6,
+            img: "./static/images/point.png",
+            sizeW: 30,
+            sizeH: 30,
+            param: {
+                lon: 121.12263801839276,
+                lat: 31.153785249294486,
+                h: 2.1
+            }, 
+            url: "https://sso.eshimin.com/login?service=http%3A%2F%2Fapi.eshimin.com%2Foauth%2Fauthorize%3Fclient_id%3D8OwOZabxfw%26response_type%3Dcode%26redirect_uri%3Dhttps%253A%252F%252Fzw.shqp.gov.cn%252Fqpzw%252Fzhengwu-online-hall-mobile-qp%252F%253Fsource%3DSUISHENBAN_APP%26scope%3Dread",
+            pc_url: "",
+            text: []
+        },
 
     ]
 }

+ 6 - 6
src/components2/Scene.vue

@@ -228,10 +228,10 @@ export default {
       width: 100%;
       height: 100%;
       :deep(.van-tabs__wrap) {
-        height: 28px;
-        padding: 0px 20px;
+        height: 3.111111vw;
+        padding: 0px 2.222222vw;
         background: #33333366;
-        transform: translateY(88.5px);
+        transform: translateY(9.833332vw);
         display: -webkit-box;
         display: -ms-flexbox;
         display: flex;
@@ -243,10 +243,10 @@ export default {
           padding: 0 0;
           .van-tab {
             width: fit-content;
-            min-width: 72px;
-            max-width: 120px;
+            min-width: 8vw;
+            max-width: 13.333332vw;
             .van-tab__text {
-              font-size: 10px;
+              font-size: 1.111111vw;
               color: #ffffff;
             }
             .van-tab__text--ellipsis {

+ 54 - 0
src/components2/Tool.vue

@@ -150,6 +150,12 @@
 
     <van-popup v-model:show="tipsShow" class="tips"><van-icon name="warning-o"
         style="color: red; margin-right: 5px" />当前选项暂不支持跳转</van-popup>
+
+    <!-- 视频帮办 -->
+    <van-popup v-model:show="videoHelpShow" class="videoHelp">
+      <iframe :src="videoHelpUrl"></iframe>
+      <div class="close" @click="videoHelpShow = false"></div>
+    </van-popup>
   </div>
 </template>
 
@@ -209,6 +215,8 @@ export default {
       activeNames: "0",
       helpActive: false,
       tipsShow: false,
+      videoHelpShow: false,
+      videoHelpUrl: ""
     };
   },
   mounted() {
@@ -751,6 +759,18 @@ export default {
             that.doThingShow = true;
           });
           break;
+        case 6:
+          // 打开iframe
+
+          // if (this.$store.state.IsPC) {
+          //   let openUrl = item.pc_url ? item.pc_url : item.url;
+          //   window.open(openUrl, "_blank");
+          // } else {
+          //   window.location.href = item.pc_url ? item.pc_url : item.url;
+          // }
+          this.videoHelpUrl = item.url;
+          this.videoHelpShow = true
+          break;
         default:
           break;
       }
@@ -916,6 +936,11 @@ export default {
         }
       },
     },
+    videoHelpShow(newVal, oldVal) {
+      if (!newVal) {
+        this.videoHelpUrl = "";
+      }
+    }
   },
 };
 </script>
@@ -1486,4 +1511,33 @@ export default {
   top: 4vh;
   left: 14vh;
 }
+
+:deep(.videoHelp) {
+  width: 100vw;
+  height: 100vh;
+  top: 0;
+  left: 0;
+  transform: none;
+
+  iframe {
+    width: 100%;
+    height: 100%;
+    position: absolute;
+    top: 0px;
+    right: 0px;
+    z-index: 1;
+  }
+
+  .close {
+    width: 20px;
+    height: 20px;
+    margin: 4px 4px;
+    background: #c5c5c5 url(~@/assets/img/tool/close.png) center center / 60% 60% no-repeat;
+    position: absolute;
+    top: 0px;
+    right: 0px;
+    z-index: 999;
+    border-radius: 20px; 
+  }
+}
 </style>

+ 0 - 99
vue.config-xcx.js

@@ -1,99 +0,0 @@
-const { defineConfig } = require('@vue/cli-service')
-
-const path = require('path')
-const webpack = require('webpack')
-const CompressionWebpackPlugin = require("compression-webpack-plugin");
-
-function resolve(dir) {
-  return path.join(__dirname, dir)
-}
-
-module.exports = defineConfig({
-  transpileDependencies: true,
-  pages: {
-    index: {
-      // page 的入口
-      entry: 'src/main.js',
-      // 模板来源
-      template: 'public/index.html',
-      // 在 dist/index.html 的输出
-      filename: 'index.html',
-      // 当使用 title 选项时,
-      // template 中的 title 标签需要是 <title><%= htmlWebpackPlugin.options.title %></title>
-      title: '青浦政务服务中心',
-      // 在这个页面中包含的块,默认情况下会包含
-      // 提取出来的通用 chunk 和 vendor chunk。
-      chunks: ['chunk-vendors', 'chunk-common', 'index']
-    }
-  },
-  // ...other config
-  configureWebpack: config => {
-    config.performance = {
-      hints: 'warning',
-      //入口起点的最大体积 整数类型(以字节为单位)
-      maxEntrypointSize: 50000000,
-      //生成文件的最大体积 整数类型(以字节为单位 300k)
-      maxAssetSize: 30000000,
-      //只给出 js 文件的性能提示
-      assetFilter: function (assetFilename) {
-        return assetFilename.endsWith('.js')
-      }
-    }
-    const plugins = [];
-    // 同externals一样,我们只想在生产环境下生成gzip即可
-    if (process.env.NODE_ENV === 'production') {
-      plugins.push(
-        new CompressionWebpackPlugin({
-          filename: '[path][base].gz[query]', // 生成的文件名
-          algorithm: 'gzip', // 类型
-          test: new RegExp('\\.(js|css)$'), // 匹配规则
-          threshold: 10240, // 字节数 只处理比这个大的资源
-          minRatio: 0.8, // 压缩率 只有比这个小的才会处理
-          // 是否删除源文件,默认: false
-          deleteOriginalAssets: false
-        })
-      )
-    }
-    config.plugins = [
-      ...config.plugins,
-      ...plugins
-    ]
-    // 增加加载 .geojson 文件的规则
-    let rules = [{
-      test: /\.geojson$/,
-      loader: 'json-loader'
-    }]
-
-    config.module.rules = [
-      ...config.module.rules,
-      ...rules
-    ]
-  },
-  productionSourceMap: false, //打包不生成js.map文件
-  chainWebpack: (config) => {
-    config.resolve.alias
-      .set('@$', resolve('src'))
-      .set('@static', resolve('public/static'))
-  },
-  pluginOptions: {
-    "style-resources-loader": {
-      preProcessor: "less",
-      patterns: [
-        path.resolve(__dirname, 'src/assets/less/variable.less')
-      ]
-    },
-  },
-
-  devServer: {
-    port: 2011,
-    proxy: {
-      '/proxy_oauth/': {
-        target: "https://szlszxdt.qpservice.org.cn",
-        changeOrigin: true,
-        pathRewrite: {
-          '^/proxy_oauth': ''
-        }
-      }
-    }
-  }
-})

Algunos archivos no se mostraron porque demasiados archivos cambiaron en este cambio