tangning 2 miesięcy temu
rodzic
commit
bd18d4a382
100 zmienionych plików z 5023 dodań i 0 usunięć
  1. 8 0
      .env
  2. 8 0
      .env.cn-prod
  3. 8 0
      .env.cn-test
  4. 8 0
      .env.intl-prod
  5. 8 0
      .env.intl-test
  6. 24 0
      .gitignore
  7. 3 0
      .vscode/extensions.json
  8. 27 0
      index.html
  9. 22 0
      jsconfig.json
  10. 45 0
      package.json
  11. 2000 0
      pnpm-lock.yaml
  12. 5 0
      postcss.config.js
  13. 1 0
      public/favicon.svg
  14. 24 0
      public/icons.svg
  15. BIN
      public/log.png
  16. 49 0
      src/App.vue
  17. 17 0
      src/api/equity/index.js
  18. 122 0
      src/api/login/index.js
  19. 157 0
      src/api/scene/index.js
  20. 539 0
      src/assets/font/demo.css
  21. 1249 0
      src/assets/font/demo_index.html
  22. 202 0
      src/assets/font/iconfont.css
  23. BIN
      src/assets/font/iconfont.eot
  24. 1 0
      src/assets/font/iconfont.js
  25. 331 0
      src/assets/font/iconfont.json
  26. 111 0
      src/assets/font/iconfont.svg
  27. BIN
      src/assets/font/iconfont.ttf
  28. BIN
      src/assets/font/iconfont.woff
  29. BIN
      src/assets/font/iconfont.woff2
  30. BIN
      src/assets/hero.png
  31. BIN
      src/assets/image/baicon.png
  32. BIN
      src/assets/image/down.png
  33. BIN
      src/assets/image/empty.png
  34. BIN
      src/assets/image/equity.png
  35. BIN
      src/assets/image/home/account-icon.png
  36. BIN
      src/assets/image/home/ai.png
  37. BIN
      src/assets/image/home/down.png
  38. BIN
      src/assets/image/home/downloads.png
  39. BIN
      src/assets/image/home/equity.png
  40. BIN
      src/assets/image/home/new.png
  41. BIN
      src/assets/image/home/qjkk.png
  42. BIN
      src/assets/image/home/update.png
  43. BIN
      src/assets/image/home/vr.png
  44. BIN
      src/assets/image/lang/France.jpg
  45. BIN
      src/assets/image/lang/France@2x.jpg
  46. BIN
      src/assets/image/lang/Germany.jpg
  47. BIN
      src/assets/image/lang/Germany@2x.jpg
  48. BIN
      src/assets/image/lang/USA.jpg
  49. BIN
      src/assets/image/lang/USA@2x.jpg
  50. BIN
      src/assets/image/lang/china.png
  51. BIN
      src/assets/image/lang/china@2x.png
  52. BIN
      src/assets/image/login/bg-4dkk.jpg
  53. BIN
      src/assets/image/login/bg.jpg
  54. 3 0
      src/assets/image/login/login_account.svg
  55. 14 0
      src/assets/image/login/login_code.svg
  56. BIN
      src/assets/image/logo/log.png
  57. BIN
      src/assets/image/logo/logo-cn.png
  58. BIN
      src/assets/image/logo/logo-en.png
  59. BIN
      src/assets/image/logo/logo-new-cn.png
  60. BIN
      src/assets/image/logo/logo-new-en.png
  61. BIN
      src/assets/image/mall/aiTraining.png
  62. BIN
      src/assets/image/mall/ali-icon.png
  63. BIN
      src/assets/image/mall/ali-pay.png
  64. BIN
      src/assets/image/mall/battery-0 1@2x.png
  65. BIN
      src/assets/image/mall/battery.png
  66. BIN
      src/assets/image/mall/card-normal.png
  67. BIN
      src/assets/image/mall/card-pro.png
  68. BIN
      src/assets/image/mall/card-vip.png
  69. BIN
      src/assets/image/mall/download.png
  70. BIN
      src/assets/image/mall/mallbg.png
  71. BIN
      src/assets/image/mall/store_benefit_ai@2x.png
  72. BIN
      src/assets/image/mall/store_benefit_download@2x.png
  73. BIN
      src/assets/image/mall/store_benefit_panorama@2x.png
  74. BIN
      src/assets/image/mall/swqj.png
  75. BIN
      src/assets/image/mall/tripod-set.png
  76. BIN
      src/assets/image/mall/usb.png
  77. BIN
      src/assets/image/mall/vip.png
  78. BIN
      src/assets/image/mall/wechat-icon.png
  79. BIN
      src/assets/image/mall/wechat-pay.png
  80. BIN
      src/assets/image/mall/zhijia-left (1)@2x.png
  81. BIN
      src/assets/image/mall/zhijia-left.png
  82. BIN
      src/assets/image/menu/device-active.png
  83. BIN
      src/assets/image/menu/device.png
  84. BIN
      src/assets/image/menu/equity-active.png
  85. BIN
      src/assets/image/menu/equity.png
  86. BIN
      src/assets/image/menu/home-active.png
  87. BIN
      src/assets/image/menu/home.png
  88. BIN
      src/assets/image/menu/logo.png
  89. BIN
      src/assets/image/menu/mesh-active.png
  90. BIN
      src/assets/image/menu/mesh.png
  91. BIN
      src/assets/image/menu/obj-active.png
  92. BIN
      src/assets/image/menu/obj.png
  93. BIN
      src/assets/image/menu/order-active.png
  94. BIN
      src/assets/image/menu/order.png
  95. BIN
      src/assets/image/menu/qjkk-active.png
  96. BIN
      src/assets/image/menu/qjkk.png
  97. BIN
      src/assets/image/order/infoBg.png
  98. 17 0
      src/assets/image/refactor/footer/dy.svg
  99. 20 0
      src/assets/image/refactor/footer/wb.svg
  100. 0 0
      src/assets/image/refactor/footer/wechat.svg

+ 8 - 0
.env

@@ -0,0 +1,8 @@
+# cdn
+VITE_CDN = https://4dscene.4dage.com/new4dkk/
+VITE_PATH = https://test.4dkankan.com/
+# spa-title
+VITE_GLOB_APP_TITLE = 四维时代
+
+# spa shortname
+VITE_GLOB_APP_SHORT_NAME = 4DAGE

+ 8 - 0
.env.cn-prod

@@ -0,0 +1,8 @@
+# cdn
+VITE_CDN = https://4dscene.4dage.com/new4dkk/
+
+# spa-title
+VITE_GLOB_APP_TITLE = 四维时代管理后台
+
+# spa shortname
+VITE_GLOB_APP_SHORT_NAME = 4DAGE

+ 8 - 0
.env.cn-test

@@ -0,0 +1,8 @@
+# cdn
+VITE_CDN = https://4dscene.4dage.com/new4dkk/
+
+# spa-title
+VITE_GLOB_APP_TITLE = 四维时代管理后台
+
+# spa shortname
+VITE_GLOB_APP_SHORT_NAME = 4DAGE

+ 8 - 0
.env.intl-prod

@@ -0,0 +1,8 @@
+# port
+VITE_PORT = 3100
+
+# spa-title
+VITE_GLOB_APP_TITLE = 四维时代管理后台
+
+# spa shortname
+VITE_GLOB_APP_SHORT_NAME = 4DAGE

+ 8 - 0
.env.intl-test

@@ -0,0 +1,8 @@
+# port
+VITE_PORT = 3100
+
+# spa-title
+VITE_GLOB_APP_TITLE = 四维时代管理后台
+
+# spa shortname
+VITE_GLOB_APP_SHORT_NAME = 4DAGE

+ 24 - 0
.gitignore

@@ -0,0 +1,24 @@
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+pnpm-debug.log*
+lerna-debug.log*
+
+node_modules
+dist
+dist-ssr
+*.local
+
+# Editor directories and files
+.vscode/*
+!.vscode/extensions.json
+.idea
+.DS_Store
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?

+ 3 - 0
.vscode/extensions.json

@@ -0,0 +1,3 @@
+{
+  "recommendations": ["Vue.volar"]
+}

+ 27 - 0
index.html

@@ -0,0 +1,27 @@
+<!doctype html>
+<html lang="en">
+  <head>
+    <meta charset="UTF-8">
+    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+    <meta name="viewport" content="width=device-width,initial-scale=1.0">
+    <meta http-equiv="Cache-Control" content="max-age=7200" />
+    <meta content="telephone=no" name="format-detection">
+    <meta http-equiv="X-UA-Compatible" content="ie=edge">
+    <meta name="apple-mobile-web-app-capable" content="yes">
+    <meta name="browsermode" content="application">
+    <meta name="full-screen" content="yes">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="description" content="实景三维空间采集相机四维看看(4DKanKan)。技术核心三要素:易操作;自动化;高精度。主要应用领域为数字文博、数字地产、数字电商、数字餐饮、数字家居等。">
+    <link rel="shortcut icon" href="//4dkk.4dage.com/FDKKIMG/icon/kankan_icon.ico">
+    <link rel="icon" type="image/png" href="//4dkk.4dage.com/FDKKIMG/icon/kankan_icon192.png" sizes="192x192">
+    <!-- <link rel="stylesheet" href="//at.alicdn.com/t/font_941679_bna8gs2m1ph.css"> -->
+    <link rel="stylesheet" href="//at.alicdn.com/t/c/font_941679_r9tc9okryv.css">
+    <link rel="apple-touch-icon" sizes="180x180" href="//4dkk.4dage.com/FDKKIMG/icon/kankan_icon180.png">
+    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/font-alibabapuhuiti@1.0.0/css/font-alibabapuhuiti.min.css">
+    <title>四维看看</title>
+  </head>
+  <body>
+    <div id="app"></div>
+    <script type="module" src="/src/main.js"></script>
+  </body>
+</html>

+ 22 - 0
jsconfig.json

@@ -0,0 +1,22 @@
+{
+  "compilerOptions": {
+    "baseUrl": ".",
+    "paths": {
+      "@/*": ["src/*"]
+    },
+    "target": "ES2020",
+    "module": "ESNext",
+    "moduleResolution": "node",
+    "jsx": "preserve",
+    "resolveJsonModule": true,
+    "allowSyntheticDefaultImports": true,
+    "esModuleInterop": true
+  },
+  "include": [
+    "src/**/*"
+  ],
+  "exclude": [
+    "node_modules",
+    "dist"
+  ]
+}

+ 45 - 0
package.json

@@ -0,0 +1,45 @@
+{
+  "name": "vite-project",
+  "private": true,
+  "version": "0.0.0",
+  "type": "module",
+  "scripts": {
+    "dev": "vite --mode cn-test",
+    "dev:cn-test": "vite --mode cn-test",
+    "dev:cn-prod": "vite --mode cn-prod",
+    "dev:intl-test": "vite --mode intl-test",
+    "dev:intl-prod": "vite --mode intl-prod",
+    "build": "vite build --mode cn-test",
+    "build:cn-test": "vite build --mode cn-test",
+    "build:cn-prod": "vite build --mode cn-prod",
+    "build:intl-test": "vite build --mode intl-test",
+    "build:intl-prod": "vite build --mode intl-prod",
+    "preview": "vite preview"
+  },
+  "dependencies": {
+    "ali-oss": "^6.23.0",
+    "ant-design-vue": "^4.2.6",
+    "axios": "^1.17.0",
+    "element-china-area-data": "^6.1.0",
+    "leaflet": "^1.9.4",
+    "leaflet.markercluster": "^1.5.3",
+    "lodash-es": "^4.18.1",
+    "pinia": "^3.0.4",
+    "pinia-plugin-persistedstate": "^4.7.1",
+    "qrcode": "^1.5.4",
+    "qrcode.vue": "^3.9.1",
+    "vue": "^3.5.34",
+    "vue-i18n": "^11.4.4",
+    "vue-router": "4"
+  },
+  "devDependencies": {
+    "@tailwindcss/postcss": "^4.3.0",
+    "@vitejs/plugin-vue": "^6.0.6",
+    "autoprefixer": "^10.5.0",
+    "less": "^4.6.4",
+    "less-loader": "^12.3.3",
+    "postcss": "^8.5.15",
+    "tailwindcss": "^4.3.0",
+    "vite": "^8.0.12"
+  }
+}

Plik diff jest za duży
+ 2000 - 0
pnpm-lock.yaml


+ 5 - 0
postcss.config.js

@@ -0,0 +1,5 @@
+export default {
+  plugins: {
+    '@tailwindcss/postcss': {}
+  }
+}

Plik diff jest za duży
+ 1 - 0
public/favicon.svg


Plik diff jest za duży
+ 24 - 0
public/icons.svg


BIN
public/log.png


+ 49 - 0
src/App.vue

@@ -0,0 +1,49 @@
+<script setup>
+import miancontent from "@/layouts/main.vue";
+import { computed, ref } from "vue";
+import { useRoute } from "vue-router";
+import { useI18n } from "vue-i18n";
+// 引入你的左侧菜单组件(示例)
+import zhCN from "ant-design-vue/es/locale/zh_CN";
+import enUS from "ant-design-vue/es/locale/en_US";
+import { useUserStore, useCartStore } from "@/stores";
+// 获取当前路由信息
+const route = useRoute();
+const { locale } = useI18n();
+const userStore = useUserStore();
+const cartStore = useCartStore();
+// 推导是否显示左侧菜单(优先取路由meta,默认显示)
+const keepAlive = computed(() => {
+  return route.meta.keepAlive ?? true;
+});
+userStore.getInfo();
+cartStore.updataCart();
+const theme = ref({
+  token: {
+    colorPrimary: "#3275FF", //主色
+  },
+});
+const localeobj = ref({
+  zh: zhCN,
+  en: enUS,
+});
+</script>
+
+<template>
+  <!-- 外层可以放布局 -->
+  <div id="app">
+    <a-config-provider :theme="theme" :locale="localeobj[locale]">
+      <!-- 不缓存的页面 -->
+      <router-view v-slot="{ Component, route }">
+        <keep-alive v-if="keepAlive">
+          <component  :is="Component" :key="route.fullPath" />
+        </keep-alive>
+        <component v-else :is="Component" :key="route.fullPath" />
+      </router-view>
+    </a-config-provider>
+  </div>
+</template>
+
+<style lang="less">
+@import "./style.css";
+</style>

+ 17 - 0
src/api/equity/index.js

@@ -0,0 +1,17 @@
+import request from '@/utils/http.js';
+
+const Api = {
+  incrementList: '/ucenter/user/increment/findIncrementList',
+}
+
+/**
+ * @description: Get sample list value
+ */
+
+export const incrementList = (params) =>
+  request.post(Api.incrementList, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });

+ 122 - 0
src/api/login/index.js

@@ -0,0 +1,122 @@
+import request from '@/utils/http.js';
+
+const Api = {
+  login: '/ucenter/sso/user/login',
+  quickLogin: '/ucenter/sso/user/quickLogin',
+  logout: '/ucenter/sso/user/logout',
+  getUserInfo: '/ucenter/user/getUserInfo',
+  checkUser: '/ucenter/sso/user/checkUser',
+  getMsgAuthCode: '/ucenter/sso/user/getMsgAuthCode',
+  sendUserInfo: '/ucenter/sso/user/sendUserInfo',
+  createLoginQrCode: '/ucenter/sso/user/createLoginQrCode',
+  cartlist: '/ucenter/user/cart/list',
+  receiverInfo: '/ucenter/user/getReceiverInfo',
+  updateAddress: '/ucenter/user/updateAddress',
+  cartAdd: '/ucenter/user/cart/add',
+  mapSceneList: '/ucenter/szy/indexSceneList',
+  cameraDetail: '/ucenter/user/camera/detail',
+}
+
+/**
+ * @description: Get sample list value
+ */
+
+export const userlogin = (params) =>
+  request.post(Api.login, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  }); export const quickLogin = (params) =>
+    request.post(Api.quickLogin, params, {
+      headers: {
+        // @ts-ignore
+        ignoreCancelToken: true,
+      },
+    });
+export const userlogout = (params) =>
+  request.post(Api.logout, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const getUserInfo = (params) =>
+  request.post(Api.getUserInfo, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const sendUserInfo = (params) =>
+  request.post(Api.sendUserInfo, params, {
+    isReturnNativeResponse: true,
+    allowLoading: false,
+
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+//权益详情
+export const userDetail = (params) =>
+  request.get({
+    url: Api.userDetail,
+    params: params,
+    // data: params,
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const cartlist = (params) =>
+  request.post(Api.cartlist, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const getReceiverInfo = (params) =>
+  request.post(Api.receiverInfo, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+
+export const updateAddress = (params) =>
+  request.post(params.id ? Api.updateAddress : Api.insertAddress, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const cartAdd = (params) =>
+  request.post(Api.cartAdd, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+  export const mapSceneList = (params) =>
+  request.post(Api.mapSceneList, params, {
+    allowLoading: false,
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+
+  export const cameraDetail = (childName) =>
+  request.post(Api.cameraDetail, {childName: childName}, {
+    allowLoading: false,
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+
+//权益详情
+export const createLoginQrCode = (params) =>
+  request.get(Api.createLoginQrCode, { params, isReturnNativeResponse: false, allowLoading: false })
+

+ 157 - 0
src/api/scene/index.js

@@ -0,0 +1,157 @@
+import request from '@/utils/http.js';
+
+const Api = {
+  sceneList: '/ucenter/szy/sceneList',
+  folderList: 'ucenter/szy/folder/findListTree',
+  folderSave: 'ucenter/szy/folder/save',
+  folderMove: 'ucenter/szy/folder/move',
+  folderDelete: 'ucenter/szy/folder/delete',
+  findListTree: 'ucenter/szy/folder/findListTree',
+  findListByName: 'ucenter/szy/folder/findListByName',
+  updateFolder: 'ucenter/szy/folder/update',
+  checkDownLoadE57: 'ucenter/user/scene/checkDownLoadE57',
+  downSceneE57: '/user/scene/downSceneE57',
+  downloadProcessE57: '/user/scene/downloadProcessE57',
+  getUploadUrl: 'ucenter/user/scene/getUploadUrl',
+  getStsSignature: 'ucenter/user/scene/getStsSignature',
+  assumeRole: 'cloud-acl/sts/assumeRole',
+  copyScene: 'ucenter/user/scene/copyScene',
+  sceneDetail: 'ucenter/szy/sceneDetail',
+  buildObj: 'ucenter/szy/buildObj',
+  sceneResourceList: 'ucenter/user/scene/cooperation/sceneResourceList',
+  saveBatch: 'ucenter/user/scene/cooperation/saveBatch',
+  saveCamera: 'ucenter/user/scene/cooperation/saveCamera',
+  cooperation: 'ucenter/product/getByKey/cooperation',
+  saveCamera: 'ucenter/product/getFreeCount/',
+
+}
+
+/**
+ * @description: Get sample list value
+ */
+
+export const sceneList = (params) =>
+  request.post(Api.sceneList, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  })
+export const folderList = (params) =>
+  request.post(Api.folderList, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+
+export const findListByName = (params) =>
+  request.post(Api.findListByName, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const folderSave = (params) =>
+  request.post(Api.folderSave, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const folderMove = (params) =>
+  request.post(Api.folderMove, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const folderDelete = (params) =>
+  request.post(Api.folderDelete, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const findListTree = (params) =>
+  request.post(Api.findListTree, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const updateFolder = (params) =>
+  request.post(Api.updateFolder, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const getUploadUrl = (params) =>
+  request.post(Api.getUploadUrl, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+      'Content-Type': 'application/x-www-form-urlencoded'
+    },
+  });
+/**
+ * 上传E57文件
+ *
+ * @param {Object} data - 上传数据对象
+ * @param {File} data.file - 要上传的E57文件
+ * @param {string} data.url - 上传URL
+ * @param {Function} onUploadProgress - 上传进度回调函数
+ * @returns {Promise<Object>} 返回上传结果的Promise
+ */
+export const uploadE57 = async (data, onUploadProgress) => {
+  return request.put(data.url, data.file, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+    onUploadProgress: onUploadProgress
+  });
+}
+export const copyScene = (params) =>
+  request.post(Api.copyScene, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const sceneDetail = (params) =>
+  request.post(Api.sceneDetail, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const buildSceneObj = (params) =>
+  request.post(Api.buildObj, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });
+export const getStsSignature = (params) =>
+  request.get(Api.getStsSignature, { params, isReturnNativeResponse: false, allowLoading: false });
+export const assumeRole = (params) =>
+  request.get(Api.assumeRole, { params, isReturnNativeResponse: false, allowLoading: false });
+export const cooperation = (params) =>
+  request.get(Api.cooperation, { params });
+export const saveCamera = (params) =>
+  request.get(Api.saveCamera + ``, { params });
+export const checkDownLoadE57 = (params) =>
+  request.get(Api.checkDownLoadE57, { params });
+export const downSceneE57 = (params) =>
+  request.get(Api.downSceneE57, { params });
+export const downloadProcessE57 = (params) =>
+  request.get(Api.downloadProcessE57, { params });
+export const saveBatch = (params) =>
+  request.post(Api.saveBatch, params, {
+    headers: {
+      // @ts-ignore
+      ignoreCancelToken: true,
+    },
+  });

+ 539 - 0
src/assets/font/demo.css

@@ -0,0 +1,539 @@
+/* Logo 字体 */
+@font-face {
+  font-family: "iconfont logo";
+  src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834');
+  src: url('https://at.alicdn.com/t/font_985780_km7mi63cihi.eot?t=1545807318834#iefix') format('embedded-opentype'),
+    url('https://at.alicdn.com/t/font_985780_km7mi63cihi.woff?t=1545807318834') format('woff'),
+    url('https://at.alicdn.com/t/font_985780_km7mi63cihi.ttf?t=1545807318834') format('truetype'),
+    url('https://at.alicdn.com/t/font_985780_km7mi63cihi.svg?t=1545807318834#iconfont') format('svg');
+}
+
+.logo {
+  font-family: "iconfont logo";
+  font-size: 160px;
+  font-style: normal;
+  -webkit-font-smoothing: antialiased;
+  -moz-osx-font-smoothing: grayscale;
+}
+
+/* tabs */
+.nav-tabs {
+  position: relative;
+}
+
+.nav-tabs .nav-more {
+  position: absolute;
+  right: 0;
+  bottom: 0;
+  height: 42px;
+  line-height: 42px;
+  color: #666;
+}
+
+#tabs {
+  border-bottom: 1px solid #eee;
+}
+
+#tabs li {
+  cursor: pointer;
+  width: 100px;
+  height: 40px;
+  line-height: 40px;
+  text-align: center;
+  font-size: 16px;
+  border-bottom: 2px solid transparent;
+  position: relative;
+  z-index: 1;
+  margin-bottom: -1px;
+  color: #666;
+}
+
+
+#tabs .active {
+  border-bottom-color: #f00;
+  color: #222;
+}
+
+.tab-container .content {
+  display: none;
+}
+
+/* 页面布局 */
+.main {
+  padding: 30px 100px;
+  width: 960px;
+  margin: 0 auto;
+}
+
+.main .logo {
+  color: #333;
+  text-align: left;
+  margin-bottom: 30px;
+  line-height: 1;
+  height: 110px;
+  margin-top: -50px;
+  overflow: hidden;
+  *zoom: 1;
+}
+
+.main .logo a {
+  font-size: 160px;
+  color: #333;
+}
+
+.helps {
+  margin-top: 40px;
+}
+
+.helps pre {
+  padding: 20px;
+  margin: 10px 0;
+  border: solid 1px #e7e1cd;
+  background-color: #fffdef;
+  overflow: auto;
+}
+
+.icon_lists {
+  width: 100% !important;
+  overflow: hidden;
+  *zoom: 1;
+}
+
+.icon_lists li {
+  width: 100px;
+  margin-bottom: 10px;
+  margin-right: 20px;
+  text-align: center;
+  list-style: none !important;
+  cursor: default;
+}
+
+.icon_lists li .code-name {
+  line-height: 1.2;
+}
+
+.icon_lists .icon {
+  display: block;
+  height: 100px;
+  line-height: 100px;
+  font-size: 42px;
+  margin: 10px auto;
+  color: #333;
+  -webkit-transition: font-size 0.25s linear, width 0.25s linear;
+  -moz-transition: font-size 0.25s linear, width 0.25s linear;
+  transition: font-size 0.25s linear, width 0.25s linear;
+}
+
+.icon_lists .icon:hover {
+  font-size: 100px;
+}
+
+.icon_lists .svg-icon {
+  /* 通过设置 font-size 来改变图标大小 */
+  width: 1em;
+  /* 图标和文字相邻时,垂直对齐 */
+  vertical-align: -0.15em;
+  /* 通过设置 color 来改变 SVG 的颜色/fill */
+  fill: currentColor;
+  /* path 和 stroke 溢出 viewBox 部分在 IE 下会显示
+      normalize.css 中也包含这行 */
+  overflow: hidden;
+}
+
+.icon_lists li .name,
+.icon_lists li .code-name {
+  color: #666;
+}
+
+/* markdown 样式 */
+.markdown {
+  color: #666;
+  font-size: 14px;
+  line-height: 1.8;
+}
+
+.highlight {
+  line-height: 1.5;
+}
+
+.markdown img {
+  vertical-align: middle;
+  max-width: 100%;
+}
+
+.markdown h1 {
+  color: #404040;
+  font-weight: 500;
+  line-height: 40px;
+  margin-bottom: 24px;
+}
+
+.markdown h2,
+.markdown h3,
+.markdown h4,
+.markdown h5,
+.markdown h6 {
+  color: #404040;
+  margin: 1.6em 0 0.6em 0;
+  font-weight: 500;
+  clear: both;
+}
+
+.markdown h1 {
+  font-size: 28px;
+}
+
+.markdown h2 {
+  font-size: 22px;
+}
+
+.markdown h3 {
+  font-size: 16px;
+}
+
+.markdown h4 {
+  font-size: 14px;
+}
+
+.markdown h5 {
+  font-size: 12px;
+}
+
+.markdown h6 {
+  font-size: 12px;
+}
+
+.markdown hr {
+  height: 1px;
+  border: 0;
+  background: #e9e9e9;
+  margin: 16px 0;
+  clear: both;
+}
+
+.markdown p {
+  margin: 1em 0;
+}
+
+.markdown>p,
+.markdown>blockquote,
+.markdown>.highlight,
+.markdown>ol,
+.markdown>ul {
+  width: 80%;
+}
+
+.markdown ul>li {
+  list-style: circle;
+}
+
+.markdown>ul li,
+.markdown blockquote ul>li {
+  margin-left: 20px;
+  padding-left: 4px;
+}
+
+.markdown>ul li p,
+.markdown>ol li p {
+  margin: 0.6em 0;
+}
+
+.markdown ol>li {
+  list-style: decimal;
+}
+
+.markdown>ol li,
+.markdown blockquote ol>li {
+  margin-left: 20px;
+  padding-left: 4px;
+}
+
+.markdown code {
+  margin: 0 3px;
+  padding: 0 5px;
+  background: #eee;
+  border-radius: 3px;
+}
+
+.markdown strong,
+.markdown b {
+  font-weight: 600;
+}
+
+.markdown>table {
+  border-collapse: collapse;
+  border-spacing: 0px;
+  empty-cells: show;
+  border: 1px solid #e9e9e9;
+  width: 95%;
+  margin-bottom: 24px;
+}
+
+.markdown>table th {
+  white-space: nowrap;
+  color: #333;
+  font-weight: 600;
+}
+
+.markdown>table th,
+.markdown>table td {
+  border: 1px solid #e9e9e9;
+  padding: 8px 16px;
+  text-align: left;
+}
+
+.markdown>table th {
+  background: #F7F7F7;
+}
+
+.markdown blockquote {
+  font-size: 90%;
+  color: #999;
+  border-left: 4px solid #e9e9e9;
+  padding-left: 0.8em;
+  margin: 1em 0;
+}
+
+.markdown blockquote p {
+  margin: 0;
+}
+
+.markdown .anchor {
+  opacity: 0;
+  transition: opacity 0.3s ease;
+  margin-left: 8px;
+}
+
+.markdown .waiting {
+  color: #ccc;
+}
+
+.markdown h1:hover .anchor,
+.markdown h2:hover .anchor,
+.markdown h3:hover .anchor,
+.markdown h4:hover .anchor,
+.markdown h5:hover .anchor,
+.markdown h6:hover .anchor {
+  opacity: 1;
+  display: inline-block;
+}
+
+.markdown>br,
+.markdown>p>br {
+  clear: both;
+}
+
+
+.hljs {
+  display: block;
+  background: white;
+  padding: 0.5em;
+  color: #333333;
+  overflow-x: auto;
+}
+
+.hljs-comment,
+.hljs-meta {
+  color: #969896;
+}
+
+.hljs-string,
+.hljs-variable,
+.hljs-template-variable,
+.hljs-strong,
+.hljs-emphasis,
+.hljs-quote {
+  color: #df5000;
+}
+
+.hljs-keyword,
+.hljs-selector-tag,
+.hljs-type {
+  color: #a71d5d;
+}
+
+.hljs-literal,
+.hljs-symbol,
+.hljs-bullet,
+.hljs-attribute {
+  color: #0086b3;
+}
+
+.hljs-section,
+.hljs-name {
+  color: #63a35c;
+}
+
+.hljs-tag {
+  color: #333333;
+}
+
+.hljs-title,
+.hljs-attr,
+.hljs-selector-id,
+.hljs-selector-class,
+.hljs-selector-attr,
+.hljs-selector-pseudo {
+  color: #795da3;
+}
+
+.hljs-addition {
+  color: #55a532;
+  background-color: #eaffea;
+}
+
+.hljs-deletion {
+  color: #bd2c00;
+  background-color: #ffecec;
+}
+
+.hljs-link {
+  text-decoration: underline;
+}
+
+/* 代码高亮 */
+/* PrismJS 1.15.0
+https://prismjs.com/download.html#themes=prism&languages=markup+css+clike+javascript */
+/**
+ * prism.js default theme for JavaScript, CSS and HTML
+ * Based on dabblet (http://dabblet.com)
+ * @author Lea Verou
+ */
+code[class*="language-"],
+pre[class*="language-"] {
+  color: black;
+  background: none;
+  text-shadow: 0 1px white;
+  font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
+  text-align: left;
+  white-space: pre;
+  word-spacing: normal;
+  word-break: normal;
+  word-wrap: normal;
+  line-height: 1.5;
+
+  -moz-tab-size: 4;
+  -o-tab-size: 4;
+  tab-size: 4;
+
+  -webkit-hyphens: none;
+  -moz-hyphens: none;
+  -ms-hyphens: none;
+  hyphens: none;
+}
+
+pre[class*="language-"]::-moz-selection,
+pre[class*="language-"] ::-moz-selection,
+code[class*="language-"]::-moz-selection,
+code[class*="language-"] ::-moz-selection {
+  text-shadow: none;
+  background: #b3d4fc;
+}
+
+pre[class*="language-"]::selection,
+pre[class*="language-"] ::selection,
+code[class*="language-"]::selection,
+code[class*="language-"] ::selection {
+  text-shadow: none;
+  background: #b3d4fc;
+}
+
+@media print {
+
+  code[class*="language-"],
+  pre[class*="language-"] {
+    text-shadow: none;
+  }
+}
+
+/* Code blocks */
+pre[class*="language-"] {
+  padding: 1em;
+  margin: .5em 0;
+  overflow: auto;
+}
+
+:not(pre)>code[class*="language-"],
+pre[class*="language-"] {
+  background: #f5f2f0;
+}
+
+/* Inline code */
+:not(pre)>code[class*="language-"] {
+  padding: .1em;
+  border-radius: .3em;
+  white-space: normal;
+}
+
+.token.comment,
+.token.prolog,
+.token.doctype,
+.token.cdata {
+  color: slategray;
+}
+
+.token.punctuation {
+  color: #999;
+}
+
+.namespace {
+  opacity: .7;
+}
+
+.token.property,
+.token.tag,
+.token.boolean,
+.token.number,
+.token.constant,
+.token.symbol,
+.token.deleted {
+  color: #905;
+}
+
+.token.selector,
+.token.attr-name,
+.token.string,
+.token.char,
+.token.builtin,
+.token.inserted {
+  color: #690;
+}
+
+.token.operator,
+.token.entity,
+.token.url,
+.language-css .token.string,
+.style .token.string {
+  color: #9a6e3a;
+  background: hsla(0, 0%, 100%, .5);
+}
+
+.token.atrule,
+.token.attr-value,
+.token.keyword {
+  color: #07a;
+}
+
+.token.function,
+.token.class-name {
+  color: #DD4A68;
+}
+
+.token.regex,
+.token.important,
+.token.variable {
+  color: #e90;
+}
+
+.token.important,
+.token.bold {
+  font-weight: bold;
+}
+
+.token.italic {
+  font-style: italic;
+}
+
+.token.entity {
+  cursor: help;
+}

Plik diff jest za duży
+ 1249 - 0
src/assets/font/demo_index.html


Plik diff jest za duży
+ 202 - 0
src/assets/font/iconfont.css


BIN
src/assets/font/iconfont.eot


Plik diff jest za duży
+ 1 - 0
src/assets/font/iconfont.js


+ 331 - 0
src/assets/font/iconfont.json

@@ -0,0 +1,331 @@
+{
+  "id": "5197080",
+  "name": "深智云",
+  "font_family": "iconfont",
+  "css_prefix_text": "icon-",
+  "description": "",
+  "glyphs": [
+    {
+      "icon_id": "47876058",
+      "name": "common_toolbar_calculating",
+      "font_class": "common_toolbar_calculating",
+      "unicode": "e7a4",
+      "unicode_decimal": 59300
+    },
+    {
+      "icon_id": "47876061",
+      "name": "home_value_added_mini_program",
+      "font_class": "home_value_added_mini_program",
+      "unicode": "e786",
+      "unicode_decimal": 59270
+    },
+    {
+      "icon_id": "47876060",
+      "name": "home_value_added_panorama",
+      "font_class": "home_value_added_panorama",
+      "unicode": "e78c",
+      "unicode_decimal": 59276
+    },
+    {
+      "icon_id": "47876059",
+      "name": "home_value_added_download",
+      "font_class": "home_value_added_download",
+      "unicode": "e79b",
+      "unicode_decimal": 59291
+    },
+    {
+      "icon_id": "47876057",
+      "name": "common_input_clear",
+      "font_class": "common_input_clear",
+      "unicode": "e7a3",
+      "unicode_decimal": 59299
+    },
+    {
+      "icon_id": "47875891",
+      "name": "common_dialog_cancel",
+      "font_class": "common_dialog_cancel",
+      "unicode": "e777",
+      "unicode_decimal": 59255
+    },
+    {
+      "icon_id": "47875892",
+      "name": "common_dialog_close",
+      "font_class": "common_dialog_close",
+      "unicode": "e778",
+      "unicode_decimal": 59256
+    },
+    {
+      "icon_id": "47875893",
+      "name": "common_dialog_delete_02",
+      "font_class": "common_dialog_delete_02",
+      "unicode": "e779",
+      "unicode_decimal": 59257
+    },
+    {
+      "icon_id": "47875894",
+      "name": "common_dialog_info",
+      "font_class": "common_dialog_info",
+      "unicode": "e77a",
+      "unicode_decimal": 59258
+    },
+    {
+      "icon_id": "47875895",
+      "name": "common_dialog_file_dropdown",
+      "font_class": "common_dialog_file_dropdown",
+      "unicode": "e77b",
+      "unicode_decimal": 59259
+    },
+    {
+      "icon_id": "47875896",
+      "name": "common_dialog_indeterminate_checkbox",
+      "font_class": "common_dialog_indeterminate_checkbox",
+      "unicode": "e77c",
+      "unicode_decimal": 59260
+    },
+    {
+      "icon_id": "47875897",
+      "name": "common_dialog_delete",
+      "font_class": "common_dialog_delete",
+      "unicode": "e77d",
+      "unicode_decimal": 59261
+    },
+    {
+      "icon_id": "47875898",
+      "name": "common_dialog_done",
+      "font_class": "common_dialog_done",
+      "unicode": "e77e",
+      "unicode_decimal": 59262
+    },
+    {
+      "icon_id": "47875899",
+      "name": "common_dialog_select",
+      "font_class": "common_dialog_select",
+      "unicode": "e77f",
+      "unicode_decimal": 59263
+    },
+    {
+      "icon_id": "47875900",
+      "name": "common_toolbar_arrow",
+      "font_class": "common_toolbar_arrow",
+      "unicode": "e780",
+      "unicode_decimal": 59264
+    },
+    {
+      "icon_id": "47875901",
+      "name": "common_input_search",
+      "font_class": "common_input_search",
+      "unicode": "e781",
+      "unicode_decimal": 59265
+    },
+    {
+      "icon_id": "47875902",
+      "name": "common_dialog_checked_box",
+      "font_class": "common_dialog_checked_box",
+      "unicode": "e782",
+      "unicode_decimal": 59266
+    },
+    {
+      "icon_id": "47875903",
+      "name": "common_toolbar_cancel",
+      "font_class": "common_toolbar_cancel",
+      "unicode": "e783",
+      "unicode_decimal": 59267
+    },
+    {
+      "icon_id": "47875904",
+      "name": "common_input_search_dropdown",
+      "font_class": "common_input_search_dropdown",
+      "unicode": "e784",
+      "unicode_decimal": 59268
+    },
+    {
+      "icon_id": "47875905",
+      "name": "common_toolbar_edit",
+      "font_class": "common_toolbar_edit",
+      "unicode": "e785",
+      "unicode_decimal": 59269
+    },
+    {
+      "icon_id": "47875907",
+      "name": "common_dialog_rename",
+      "font_class": "common_dialog_rename",
+      "unicode": "e787",
+      "unicode_decimal": 59271
+    },
+    {
+      "icon_id": "47875908",
+      "name": "common_sidebar_chevron_down",
+      "font_class": "common_sidebar_chevron_down",
+      "unicode": "e788",
+      "unicode_decimal": 59272
+    },
+    {
+      "icon_id": "47875909",
+      "name": "common_toolbar_delete",
+      "font_class": "common_toolbar_delete",
+      "unicode": "e789",
+      "unicode_decimal": 59273
+    },
+    {
+      "icon_id": "47875910",
+      "name": "common_toolbar_authorize",
+      "font_class": "common_toolbar_authorize",
+      "unicode": "e78a",
+      "unicode_decimal": 59274
+    },
+    {
+      "icon_id": "47875911",
+      "name": "common_toolbar_bind",
+      "font_class": "common_toolbar_bind",
+      "unicode": "e78b",
+      "unicode_decimal": 59275
+    },
+    {
+      "icon_id": "47875913",
+      "name": "common_toolbar_more_obj",
+      "font_class": "common_toolbar_more_obj",
+      "unicode": "e78d",
+      "unicode_decimal": 59277
+    },
+    {
+      "icon_id": "47875914",
+      "name": "common_sidebar_legacy",
+      "font_class": "common_sidebar_legacy",
+      "unicode": "e78e",
+      "unicode_decimal": 59278
+    },
+    {
+      "icon_id": "47875915",
+      "name": "common_toolbar_more_copy",
+      "font_class": "common_toolbar_more_copy",
+      "unicode": "e78f",
+      "unicode_decimal": 59279
+    },
+    {
+      "icon_id": "47875916",
+      "name": "common_toolbar_more",
+      "font_class": "common_toolbar_more",
+      "unicode": "e790",
+      "unicode_decimal": 59280
+    },
+    {
+      "icon_id": "47875917",
+      "name": "common_toolbar_model_download",
+      "font_class": "common_toolbar_model_download",
+      "unicode": "e791",
+      "unicode_decimal": 59281
+    },
+    {
+      "icon_id": "47875918",
+      "name": "common_toolbar_collaboration",
+      "font_class": "common_toolbar_collaboration",
+      "unicode": "e792",
+      "unicode_decimal": 59282
+    },
+    {
+      "icon_id": "47875919",
+      "name": "common_toolbar_details",
+      "font_class": "common_toolbar_details",
+      "unicode": "e793",
+      "unicode_decimal": 59283
+    },
+    {
+      "icon_id": "47875920",
+      "name": "store_benefit_download",
+      "font_class": "store_benefit_download",
+      "unicode": "e794",
+      "unicode_decimal": 59284
+    },
+    {
+      "icon_id": "47875921",
+      "name": "common_toolbar_move",
+      "font_class": "common_toolbar_move",
+      "unicode": "e795",
+      "unicode_decimal": 59285
+    },
+    {
+      "icon_id": "47875922",
+      "name": "common_toolbar_more_more",
+      "font_class": "common_toolbar_more_more",
+      "unicode": "e796",
+      "unicode_decimal": 59286
+    },
+    {
+      "icon_id": "47875923",
+      "name": "common_toolbar_invoice",
+      "font_class": "common_toolbar_invoice",
+      "unicode": "e797",
+      "unicode_decimal": 59287
+    },
+    {
+      "icon_id": "47875924",
+      "name": "store_benefit_panorama",
+      "font_class": "store_benefit_panorama",
+      "unicode": "e798",
+      "unicode_decimal": 59288
+    },
+    {
+      "icon_id": "47875925",
+      "name": "common_toolbar_unbind",
+      "font_class": "common_toolbar_unbind",
+      "unicode": "e799",
+      "unicode_decimal": 59289
+    },
+    {
+      "icon_id": "47875926",
+      "name": "store_benefit_ai",
+      "font_class": "store_benefit_ai",
+      "unicode": "e79a",
+      "unicode_decimal": 59290
+    },
+    {
+      "icon_id": "47875928",
+      "name": "common_toolbar_generate_model",
+      "font_class": "common_toolbar_generate_model",
+      "unicode": "e79c",
+      "unicode_decimal": 59292
+    },
+    {
+      "icon_id": "47875929",
+      "name": "common_toolbar_release",
+      "font_class": "common_toolbar_release",
+      "unicode": "e79d",
+      "unicode_decimal": 59293
+    },
+    {
+      "icon_id": "47875930",
+      "name": "common_toolbar_more_download",
+      "font_class": "common_toolbar_more_download",
+      "unicode": "e79e",
+      "unicode_decimal": 59294
+    },
+    {
+      "icon_id": "47875931",
+      "name": "common_toolbar_more_guided_viewing",
+      "font_class": "common_toolbar_more_guided_viewing",
+      "unicode": "e79f",
+      "unicode_decimal": 59295
+    },
+    {
+      "icon_id": "47875932",
+      "name": "home_value_added_ai",
+      "font_class": "home_value_added_ai",
+      "unicode": "e7a0",
+      "unicode_decimal": 59296
+    },
+    {
+      "icon_id": "47875933",
+      "name": "common_toolbar_renew",
+      "font_class": "common_toolbar_renew",
+      "unicode": "e7a1",
+      "unicode_decimal": 59297
+    },
+    {
+      "icon_id": "47875934",
+      "name": "settings_add",
+      "font_class": "settings_add",
+      "unicode": "e7a2",
+      "unicode_decimal": 59298
+    }
+  ]
+}

Plik diff jest za duży
+ 111 - 0
src/assets/font/iconfont.svg


BIN
src/assets/font/iconfont.ttf


BIN
src/assets/font/iconfont.woff


BIN
src/assets/font/iconfont.woff2


BIN
src/assets/hero.png


BIN
src/assets/image/baicon.png


BIN
src/assets/image/down.png


BIN
src/assets/image/empty.png


BIN
src/assets/image/equity.png


BIN
src/assets/image/home/account-icon.png


BIN
src/assets/image/home/ai.png


BIN
src/assets/image/home/down.png


BIN
src/assets/image/home/downloads.png


BIN
src/assets/image/home/equity.png


BIN
src/assets/image/home/new.png


BIN
src/assets/image/home/qjkk.png


BIN
src/assets/image/home/update.png


BIN
src/assets/image/home/vr.png


BIN
src/assets/image/lang/France.jpg


BIN
src/assets/image/lang/France@2x.jpg


BIN
src/assets/image/lang/Germany.jpg


BIN
src/assets/image/lang/Germany@2x.jpg


BIN
src/assets/image/lang/USA.jpg


BIN
src/assets/image/lang/USA@2x.jpg


BIN
src/assets/image/lang/china.png


BIN
src/assets/image/lang/china@2x.png


BIN
src/assets/image/login/bg-4dkk.jpg


BIN
src/assets/image/login/bg.jpg


+ 3 - 0
src/assets/image/login/login_account.svg

@@ -0,0 +1,3 @@
+<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M28.2041 2.01074C29.2128 2.11301 30 2.96435 30 4V22C30 23.0357 29.2128 23.887 28.2041 23.9893L28 24H17V28H22C22.5523 28 23 28.4477 23 29C23 29.5523 22.5523 30 22 30H10C9.44772 30 9 29.5523 9 29C9 28.4477 9.44772 28 10 28H15V24H4C2.96435 24 2.113 23.2128 2.01074 22.2041L2 22V4C2 2.89543 2.89543 2 4 2H28L28.2041 2.01074ZM4 22H28V4H4V22Z" fill="white"/>
+</svg>

+ 14 - 0
src/assets/image/login/login_code.svg

@@ -0,0 +1,14 @@
+<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M10 26H6V22H10V26Z" fill="white"/>
+<path d="M12.2041 18.0107C13.2128 18.113 14 18.9643 14 20V28L13.9893 28.2041C13.8938 29.1457 13.1457 29.8938 12.2041 29.9893L12 30H4C2.96435 30 2.113 29.2128 2.01074 28.2041L2 28V20C2 18.8954 2.89543 18 4 18H12L12.2041 18.0107ZM4 28H12V20H4V28Z" fill="white"/>
+<path d="M19 23C19.5523 23 20 23.4477 20 24V29C20 29.5523 19.5523 30 19 30C18.4477 30 18 29.5523 18 29V24C18 23.4477 18.4477 23 19 23Z" fill="white"/>
+<path d="M24.001 26.5C24.5531 26.5002 25.001 26.9479 25.001 27.5L25 29C24.9998 29.5522 24.5521 30 24 30C23.4478 29.9998 23 29.5521 23 29L23.001 27.5C23.0012 26.9477 23.4487 26.4998 24.001 26.5Z" fill="white"/>
+<path d="M29 23C29.5523 23 30 23.4477 30 24V29C30 29.5523 29.5523 30 29 30C28.4477 30 28 29.5523 28 29V24C28 23.4477 28.4477 23 29 23Z" fill="white"/>
+<path d="M24 18C24.5523 18 25 18.4477 25 19V24C25 24.5523 24.5523 25 24 25C23.4477 25 23 24.5523 23 24V19C23 18.4477 23.4477 18 24 18Z" fill="white"/>
+<path d="M19 18C19.5521 18 19.9998 18.4478 20 19L20.001 20.5C20.001 21.0521 19.5531 21.4998 19.001 21.5C18.4487 21.5002 18.0012 21.0523 18.001 20.5L18 19C18 18.4479 18.4478 18.0002 19 18Z" fill="white"/>
+<path d="M29 18C29.5521 18 29.9998 18.4478 30 19L30.001 20.5C30.001 21.0521 29.5531 21.4998 29.001 21.5C28.4487 21.5002 28.0012 21.0523 28.001 20.5L28 19C28 18.4479 28.4478 18.0002 29 18Z" fill="white"/>
+<path d="M10 10H6V6H10V10Z" fill="white"/>
+<path d="M12.2041 2.01074C13.2128 2.113 14 2.96435 14 4V12L13.9893 12.2041C13.8938 13.1457 13.1457 13.8938 12.2041 13.9893L12 14H4C2.96435 14 2.113 13.2128 2.01074 12.2041L2 12V4C2 2.89543 2.89543 2 4 2H12L12.2041 2.01074ZM4 12H12V4H4V12Z" fill="white"/>
+<path d="M26 10H22V6H26V10Z" fill="white"/>
+<path d="M28.2041 2.01074C29.2128 2.113 30 2.96435 30 4V12L29.9893 12.2041C29.8938 13.1457 29.1457 13.8938 28.2041 13.9893L28 14H20C18.9643 14 18.113 13.2128 18.0107 12.2041L18 12V4C18 2.89543 18.8954 2 20 2H28L28.2041 2.01074ZM20 12H28V4H20V12Z" fill="white"/>
+</svg>

BIN
src/assets/image/logo/log.png


BIN
src/assets/image/logo/logo-cn.png


BIN
src/assets/image/logo/logo-en.png


BIN
src/assets/image/logo/logo-new-cn.png


BIN
src/assets/image/logo/logo-new-en.png


BIN
src/assets/image/mall/aiTraining.png


BIN
src/assets/image/mall/ali-icon.png


BIN
src/assets/image/mall/ali-pay.png


BIN
src/assets/image/mall/battery-0 1@2x.png


BIN
src/assets/image/mall/battery.png


BIN
src/assets/image/mall/card-normal.png


BIN
src/assets/image/mall/card-pro.png


BIN
src/assets/image/mall/card-vip.png


BIN
src/assets/image/mall/download.png


BIN
src/assets/image/mall/mallbg.png


BIN
src/assets/image/mall/store_benefit_ai@2x.png


BIN
src/assets/image/mall/store_benefit_download@2x.png


BIN
src/assets/image/mall/store_benefit_panorama@2x.png


BIN
src/assets/image/mall/swqj.png


BIN
src/assets/image/mall/tripod-set.png


BIN
src/assets/image/mall/usb.png


BIN
src/assets/image/mall/vip.png


BIN
src/assets/image/mall/wechat-icon.png


BIN
src/assets/image/mall/wechat-pay.png


BIN
src/assets/image/mall/zhijia-left (1)@2x.png


BIN
src/assets/image/mall/zhijia-left.png


BIN
src/assets/image/menu/device-active.png


BIN
src/assets/image/menu/device.png


BIN
src/assets/image/menu/equity-active.png


BIN
src/assets/image/menu/equity.png


BIN
src/assets/image/menu/home-active.png


BIN
src/assets/image/menu/home.png


BIN
src/assets/image/menu/logo.png


BIN
src/assets/image/menu/mesh-active.png


BIN
src/assets/image/menu/mesh.png


BIN
src/assets/image/menu/obj-active.png


BIN
src/assets/image/menu/obj.png


BIN
src/assets/image/menu/order-active.png


BIN
src/assets/image/menu/order.png


BIN
src/assets/image/menu/qjkk-active.png


BIN
src/assets/image/menu/qjkk.png


BIN
src/assets/image/order/infoBg.png


+ 17 - 0
src/assets/image/refactor/footer/dy.svg

@@ -0,0 +1,17 @@
+<svg id="WKND-button-standard" xmlns="http://www.w3.org/2000/svg" width="48" height="48" viewBox="0 0 48 48">
+  <defs>
+    <style>
+      .cls-1 {
+        fill: #ebebeb;
+      }
+
+      .cls-2 {
+        fill: #323233;
+      }
+    </style>
+  </defs>
+  <rect id="background" class="cls-1" width="48" height="48"/>
+  <g id="douyin" transform="translate(14.969 14.22)">
+    <path id="路径_3717" data-name="路径 3717" class="cls-2" d="M892.085,39.21a4.8,4.8,0,0,1-2.179-4H886.47l0,13.767a2.887,2.887,0,1,1-2.884-3,2.766,2.766,0,0,1,.853.136V42.606a6.117,6.117,0,0,0-.853-.061,6.323,6.323,0,1,0,6.323,6.323v-6.98a8.169,8.169,0,0,0,4.778,1.536V39.989a4.767,4.767,0,0,1-2.6-.779Z" transform="translate(-877.259 -35.206)"/>
+  </g>
+</svg>

Plik diff jest za duży
+ 20 - 0
src/assets/image/refactor/footer/wb.svg


+ 0 - 0
src/assets/image/refactor/footer/wechat.svg


Niektóre pliki nie zostały wyświetlone z powodu dużej ilości zmienionych plików