Przeglądaj źródła

Merge branch 'main'

zhangyuhan 1 rok temu
rodzic
commit
5db3fe0a86
100 zmienionych plików z 4305 dodań i 0 usunięć
  1. 5 0
      .editorconfig
  2. 125 0
      .gitignore
  3. 3 0
      .npmrc
  4. 20 0
      .prettierrc.json
  5. 55 0
      README.md
  6. 0 0
      apps/.gitkeep
  7. 3 0
      apps/bigmember_pc/.browserslistrc
  8. 5 0
      apps/bigmember_pc/.editorconfig
  9. 5 0
      apps/bigmember_pc/.env.development
  10. 4 0
      apps/bigmember_pc/.env.production
  11. 4 0
      apps/bigmember_pc/.env.test
  12. 2 0
      apps/bigmember_pc/.eslintignore
  13. 23 0
      apps/bigmember_pc/.eslintrc.js
  14. 28 0
      apps/bigmember_pc/.gitignore
  15. 17 0
      apps/bigmember_pc/.gitlab-ci.yml
  16. 2 0
      apps/bigmember_pc/.npmrc
  17. 15 0
      apps/bigmember_pc/README.md
  18. 14 0
      apps/bigmember_pc/babel.config.js
  19. 24 0
      apps/bigmember_pc/ci-lint/package.json
  20. 17 0
      apps/bigmember_pc/config/cdn.js
  21. 8 0
      apps/bigmember_pc/config/index.js
  22. 142 0
      apps/bigmember_pc/config/proxy.js
  23. 58 0
      apps/bigmember_pc/package.json
  24. 5 0
      apps/bigmember_pc/postcss.config.js
  25. BIN
      apps/bigmember_pc/public/favicon.ico
  26. 71 0
      apps/bigmember_pc/public/index.html
  27. 105 0
      apps/bigmember_pc/src/App.vue
  28. 32 0
      apps/bigmember_pc/src/api/axios.js
  29. 74 0
      apps/bigmember_pc/src/api/index.js
  30. 29 0
      apps/bigmember_pc/src/api/mock.js
  31. 200 0
      apps/bigmember_pc/src/api/mock/commodity$couponInfo.json
  32. 415 0
      apps/bigmember_pc/src/api/mock/commodity$detail.json
  33. 9 0
      apps/bigmember_pc/src/api/mock/commodity$price.json
  34. 27 0
      apps/bigmember_pc/src/api/mock/use$isAdd.json
  35. 99 0
      apps/bigmember_pc/src/api/modules/analysis.js
  36. 18 0
      apps/bigmember_pc/src/api/modules/biService.js
  37. 262 0
      apps/bigmember_pc/src/api/modules/chart.js
  38. 65 0
      apps/bigmember_pc/src/api/modules/coupon.js
  39. 11 0
      apps/bigmember_pc/src/api/modules/course.js
  40. 41 0
      apps/bigmember_pc/src/api/modules/crmApplication.js
  41. 83 0
      apps/bigmember_pc/src/api/modules/customer.js
  42. 114 0
      apps/bigmember_pc/src/api/modules/dataExport.js
  43. 60 0
      apps/bigmember_pc/src/api/modules/entbase.js
  44. 32 0
      apps/bigmember_pc/src/api/modules/entnicheNew.js
  45. 21 0
      apps/bigmember_pc/src/api/modules/file.js
  46. 200 0
      apps/bigmember_pc/src/api/modules/forecast.js
  47. 105 0
      apps/bigmember_pc/src/api/modules/home.js
  48. 29 0
      apps/bigmember_pc/src/api/modules/index.js
  49. 9 0
      apps/bigmember_pc/src/api/modules/jyMerge.js
  50. 23 0
      apps/bigmember_pc/src/api/modules/leadGeneration.js
  51. 44 0
      apps/bigmember_pc/src/api/modules/marketing.js
  52. 71 0
      apps/bigmember_pc/src/api/modules/medical.js
  53. 92 0
      apps/bigmember_pc/src/api/modules/medicalField.js
  54. 75 0
      apps/bigmember_pc/src/api/modules/order.js
  55. 50 0
      apps/bigmember_pc/src/api/modules/pay.js
  56. 30 0
      apps/bigmember_pc/src/api/modules/placeOrder.js
  57. 88 0
      apps/bigmember_pc/src/api/modules/potential.js
  58. 240 0
      apps/bigmember_pc/src/api/modules/project.js
  59. 173 0
      apps/bigmember_pc/src/api/modules/public.js
  60. 92 0
      apps/bigmember_pc/src/api/modules/report.js
  61. 258 0
      apps/bigmember_pc/src/api/modules/subscribe.js
  62. 104 0
      apps/bigmember_pc/src/api/modules/svip.js
  63. 165 0
      apps/bigmember_pc/src/api/modules/user.js
  64. 105 0
      apps/bigmember_pc/src/api/modules/workspace.js
  65. BIN
      apps/bigmember_pc/src/assets/fonts/Fontquan-XinYiGuanHeiTi.ttf
  66. BIN
      apps/bigmember_pc/src/assets/fonts/iconfont.ttf
  67. BIN
      apps/bigmember_pc/src/assets/fonts/iconfont.woff
  68. BIN
      apps/bigmember_pc/src/assets/fonts/iconfont.woff2
  69. BIN
      apps/bigmember_pc/src/assets/images/advanced/dialog-head.png
  70. BIN
      apps/bigmember_pc/src/assets/images/advanced/dialog-qrcode.png
  71. BIN
      apps/bigmember_pc/src/assets/images/analysis-divider-bg.png
  72. BIN
      apps/bigmember_pc/src/assets/images/auto.png
  73. BIN
      apps/bigmember_pc/src/assets/images/bg_1.png
  74. BIN
      apps/bigmember_pc/src/assets/images/big-1.png
  75. BIN
      apps/bigmember_pc/src/assets/images/big-2.png
  76. BIN
      apps/bigmember_pc/src/assets/images/big-3.png
  77. BIN
      apps/bigmember_pc/src/assets/images/big-4.png
  78. BIN
      apps/bigmember_pc/src/assets/images/big-5.png
  79. BIN
      apps/bigmember_pc/src/assets/images/big-6.png
  80. BIN
      apps/bigmember_pc/src/assets/images/big-7.png
  81. BIN
      apps/bigmember_pc/src/assets/images/big/1-big.png
  82. BIN
      apps/bigmember_pc/src/assets/images/big/1-old-big.png
  83. BIN
      apps/bigmember_pc/src/assets/images/big/10-big.png
  84. BIN
      apps/bigmember_pc/src/assets/images/big/11-big.png
  85. BIN
      apps/bigmember_pc/src/assets/images/big/12-big.png
  86. BIN
      apps/bigmember_pc/src/assets/images/big/13-big.png
  87. BIN
      apps/bigmember_pc/src/assets/images/big/14-big.png
  88. BIN
      apps/bigmember_pc/src/assets/images/big/14.1-big.png
  89. BIN
      apps/bigmember_pc/src/assets/images/big/15-big.png
  90. BIN
      apps/bigmember_pc/src/assets/images/big/16-big.png
  91. BIN
      apps/bigmember_pc/src/assets/images/big/17-big.png
  92. BIN
      apps/bigmember_pc/src/assets/images/big/2-big.png
  93. BIN
      apps/bigmember_pc/src/assets/images/big/3-big.png
  94. BIN
      apps/bigmember_pc/src/assets/images/big/4-big.png
  95. BIN
      apps/bigmember_pc/src/assets/images/big/5-big.png
  96. BIN
      apps/bigmember_pc/src/assets/images/big/6-big.png
  97. BIN
      apps/bigmember_pc/src/assets/images/big/7-big.png
  98. BIN
      apps/bigmember_pc/src/assets/images/big/8-big.png
  99. BIN
      apps/bigmember_pc/src/assets/images/big/88-big.png
  100. BIN
      apps/bigmember_pc/src/assets/images/big/9-big.png

+ 5 - 0
.editorconfig

@@ -0,0 +1,5 @@
+[*.{js,jsx,ts,tsx,vue}]
+indent_style = space
+indent_size = 2
+trim_trailing_whitespace = true
+insert_final_newline = true

+ 125 - 0
.gitignore

@@ -0,0 +1,125 @@
+### Intellij+all ###
+# User-specific stuff
+.idea/*
+
+# mpeltonen/sbt-idea plugin
+.idea_modules/
+
+### macOS ###
+# General
+.DS_Store
+.AppleDouble
+.LSOverride
+
+### Node ###
+# Logs
+logs
+*.log
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+lerna-debug.log*
+
+# Dependency directories
+node_modules/
+
+# TypeScript v1 declaration files
+typings/
+
+# TypeScript cache
+*.tsbuildinfo
+
+# Optional npm cache directory
+.npm
+
+# Optional eslint cache
+.eslintcache
+
+# Optional stylelint cache
+.stylelintcache
+
+# Output of 'npm pack'
+*.tgz
+
+# Yarn Integrity file
+.yarn-integrity
+
+# dotenv environment variables file
+.env.test
+.env*.local
+
+# parcel-bundler cache (https://parceljs.org/)
+.cache
+.parcel-cache
+
+# Next.js build output
+.next
+
+# Nuxt.js build / generate output
+.nuxt
+dist
+
+# Gatsby files
+.cache/
+# Comment in the public line in if your project uses Gatsby and not Next.js
+# https://nextjs.org/blog/next-9-1#public-directory-support
+# public
+
+# vuepress build output
+.vuepress/dist
+
+# Serverless directories
+.serverless/
+
+# FuseBox cache
+.fusebox/
+
+# DynamoDB Local files
+.dynamodb/
+
+# TernJS port file
+.tern-port
+
+# Stores VSCode versions used for testing VSCode extensions
+.vscode-test
+
+### vscode ###
+.vscode/*
+!.vscode/settings.json
+!.vscode/tasks.json
+!.vscode/launch.json
+!.vscode/extensions.json
+*.code-workspace
+
+### Vue ###
+# gitignore template for Vue.js projects
+#
+# Recommended template: Node.gitignore
+
+### Windows ###
+# Windows thumbnail cache files
+Thumbs.db
+Thumbs.db:encryptable
+ehthumbs.db
+ehthumbs_vista.db
+
+# Dump file
+*.stackdump
+
+# Folder config file
+[Dd]esktop.ini
+
+# Recycle Bin used on file shares
+$RECYCLE.BIN/
+
+# Windows Installer files
+*.cab
+*.msi
+*.msix
+*.msm
+*.msp
+
+# Windows shortcuts
+*.lnk
+
+# End of https://www.toptal.com/developers/gitignore/api/vue,node,macos,windows,linux,vscode,intellij+all

+ 3 - 0
.npmrc

@@ -0,0 +1,3 @@
+registry=https://registry.npmmirror.com/
+@jianyu:registry=http://192.168.3.71:4873/
+element-ui:registry=http://192.168.3.71:4873/

+ 20 - 0
.prettierrc.json

@@ -0,0 +1,20 @@
+{
+  "semi": false,
+  "singleQuote": true,
+  "trailingComma": "none",
+  "overrides": [
+    {
+      "files": ["*.json5"],
+      "options": {
+        "singleQuote": false,
+        "quoteProps": "preserve"
+      }
+    },
+    {
+      "files": ["*.yml"],
+      "options": {
+        "singleQuote": false
+      }
+    }
+  ]
+}

+ 55 - 0
README.md

@@ -0,0 +1,55 @@
+# web
+> 剑鱼产品整体前端应用,基于 vite、pnpm 构建 monorepo 体系。
+
+该项目目前聚合了:
+
+* `jy-mobile` => `apps/mobile`
+* `page_bigmember_pc` => `apps/bigmember_pc`
+* `page_workDesktop` => `apps/work-bench`
+
+## 目录结构导航
+```
+├── apps
+│   ├── bigmember_pc
+│   ├── mobile
+│   └── work-bench
+├── configs
+├── core
+│   └── emitter
+├── data
+│   ├── api
+│   └── store
+├── docs
+├── packages
+│   ├── mobile-ui
+│   ├── pc-ui
+│   ├── style
+│   ├── util
+│   └── work-bench-frame
+├── plugins
+│   └── login-auth
+└── scripts
+
+```
+
+## 开发
+环境要求:
+1. node v16.20.1 +
+2. pnpm
+
+### 启动
+```
+pnpm run dev:doc
+```
+
+### 编译
+```
+pnpm run build:doc
+```
+
+## 更多
+
+### 从MultiRepo 到MonoRepo
+MonoRepo 其实不是一个新的概念,在软件工程领域,它已经有着十多年的历史了。
+
+概念上很好理解,就是把多个项目放在一个仓库里面,相对立的是传统的 MultiRepo 模式,即每个项目对应一个单独的仓库来分散管理。

+ 0 - 0
apps/.gitkeep


+ 3 - 0
apps/bigmember_pc/.browserslistrc

@@ -0,0 +1,3 @@
+> 1%
+last 2 versions
+ie >= 11

+ 5 - 0
apps/bigmember_pc/.editorconfig

@@ -0,0 +1,5 @@
+[*.{js,jsx,ts,tsx,vue}]
+indent_style = space
+indent_size = 2
+trim_trailing_whitespace = true
+insert_final_newline = true

+ 5 - 0
apps/bigmember_pc/.env.development

@@ -0,0 +1,5 @@
+NODE_ENV=development
+VUE_APP_BASE_API='/bigmember'
+VUE_APP_BASE_URL='/swordfish/page_big_pc'
+VUE_APP_MOCK=false
+VUE_APP_BASE_PUBLIC='/'

+ 4 - 0
apps/bigmember_pc/.env.production

@@ -0,0 +1,4 @@
+NODE_ENV=production
+VUE_APP_BASE_API='/bigmember'
+VUE_APP_BASE_URL='/page_big_pc'
+VUE_APP_BASE_PUBLIC='/page_big_pc/'

+ 4 - 0
apps/bigmember_pc/.env.test

@@ -0,0 +1,4 @@
+NODE_ENV=production
+VUE_APP_BASE_API='/bigmember/'
+VUE_APP_BASE_URL='/swordfish/page_big_pc'
+VUE_APP_BASE_PUBLIC='/page_big_pc/'

+ 2 - 0
apps/bigmember_pc/.eslintignore

@@ -0,0 +1,2 @@
+/src/assets/fonts
+vue.config.js

+ 23 - 0
apps/bigmember_pc/.eslintrc.js

@@ -0,0 +1,23 @@
+module.exports = {
+  root: true,
+  env: {
+    node: true
+  },
+  extends: [
+    'plugin:vue/essential',
+    '@vue/standard'
+  ],
+  globals: {
+    loginflag: true,
+    $: true,
+    vComponentChart: true
+  },
+  parserOptions: {
+    parser: 'babel-eslint'
+  },
+  rules: {
+    'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
+    'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
+    'eqeqeq': 'warn'
+  }
+}

+ 28 - 0
apps/bigmember_pc/.gitignore

@@ -0,0 +1,28 @@
+.DS_Store
+/node_modules
+/dist
+/page_big_pc
+
+# local env files
+.env.local
+.env.*.local
+
+# Log files
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+
+# Editor directories and files
+.idea
+.vscode
+*.suo
+*.ntvs*
+*.njsproj
+*.sln
+*.sw?
+
+# compressed files
+*.rar
+*.zip
+*.7z
+*.tar

+ 17 - 0
apps/bigmember_pc/.gitlab-ci.yml

@@ -0,0 +1,17 @@
+image: node:16.14.2-alpine
+
+stages:          # List of stages for jobs, and their order of execution
+  - lint
+
+install:       # This job runs in the build stage, which runs first.
+  stage: lint
+  script:
+    - cp ./ci-lint/package.json ./package.json
+    - echo "Use yarn management node_modules"
+    -
+      hash yarn 2>/dev/null || { 
+        echo >&2 "Not has yarn, wait install";
+        npm install yarn --prefer-offline --no-audit -g;
+      }
+    - yarn install --pure-lockfile --prefer-offline
+    - yarn run lint

+ 2 - 0
apps/bigmember_pc/.npmrc

@@ -0,0 +1,2 @@
+registry=https://registry.npmmirror.com/
+@jianyu:registry=http://192.168.3.71:4873/

+ 15 - 0
apps/bigmember_pc/README.md

@@ -0,0 +1,15 @@
+## 剑鱼大会员PC端
+##### 无顶部底部开发
+0. ```yarn run serve:alone```
+
+##### 接入顶部开发调试
+
+0. ```yarn run serve```
+
+1. 本机启动剑鱼Web主程序
+
+2. 修改`systemjs-importmap`中app对应的请求地址
+
+    > 文件地址 /src/web/templates/frontRouter/pc/page_big_pc/sess/index.html
+
+T3. 访问`/swordfish/docs/index`

+ 14 - 0
apps/bigmember_pc/babel.config.js

@@ -0,0 +1,14 @@
+module.exports = {
+  presets: [
+    '@vue/cli-plugin-babel/preset'
+  ],
+  plugins: [
+    [
+      'component',
+      {
+        libraryName: 'element-ui',
+        styleLibraryName: 'theme-chalk'
+      }
+    ]
+  ]
+}

+ 24 - 0
apps/bigmember_pc/ci-lint/package.json

@@ -0,0 +1,24 @@
+{
+  "name": "jy-mobile",
+  "version": "0.1.0",
+  "private": true,
+  "scripts": {
+    "lint": "vue-cli-service lint"
+  },
+  "devDependencies": {
+    "@vue/cli-plugin-babel": "^4.1.0",
+    "@vue/cli-plugin-eslint": "~4.5.0",
+    "@vue/cli-plugin-router": "^4.1.0",
+    "@vue/cli-service": "^4.1.2",
+    "@vue/eslint-config-standard": "^5.1.2",
+    "babel-eslint": "^10.1.0",
+    "babel-plugin-component": "^1.1.1",
+    "eslint": "^6.7.2",
+    "eslint-plugin-import": "^2.20.2",
+    "eslint-plugin-node": "^11.1.0",
+    "eslint-plugin-promise": "^4.2.1",
+    "eslint-plugin-standard": "^4.0.0",
+    "eslint-plugin-vue": "^6.2.2",
+    "vue-template-compiler": "^2.6.10"
+  }
+}

+ 17 - 0
apps/bigmember_pc/config/cdn.js

@@ -0,0 +1,17 @@
+exports.cdn = {
+  css: [
+    // '//unpkg.com/element-ui@2.10.1/lib/theme-chalk/index.css'
+    '//cdn-common.jianyu360.com/cdn/lib/v-charts/1.19.0/style.min.css'
+  ],
+  js: [
+    '//cdn-common.jianyu360.com/cdn/lib/vue/2.6.11/vue.min.js',
+    '//cdn-common.jianyu360.com/cdn/lib/vue-router/3.5.4/vue-router.min.js',
+    '//cdn-common.jianyu360.com/cdn/lib/vuex/3.4.0/vuex.min.js',
+    '//cdn-common.jianyu360.com/cdn/lib/axios/0.19.2/axios.min.js',
+    '//cdn-common.jianyu360.com/cdn/lib/lodash/4.17.21/lodash.min.js',
+    '//cdn-common.jianyu360.com/cdn/lib/echarts/4.8.0/echarts.min.js',
+    // '//cdn-common.jianyu360.com/cdn/lib/jquery/3.6.0/jquery.min.js',
+    '//cdn-common.jianyu360.com/cdn/lib/v-charts/1.19.0/index.min.js',
+    '//cdn-common.jianyu360.com/cdn/lib/moment/2.29.1/min/moment.min.js'
+  ]
+}

+ 8 - 0
apps/bigmember_pc/config/index.js

@@ -0,0 +1,8 @@
+const { cdn } = require('./cdn')
+const { getProxyOfDomain, getProxyOfIp } = require('./proxy')
+
+module.exports = {
+  cdn,
+  getProxyOfDomain,
+  getProxyOfIp
+}

+ 142 - 0
apps/bigmember_pc/config/proxy.js

@@ -0,0 +1,142 @@
+exports.getProxyOfDomain = function (domain) {
+  return {
+    // 反爬虫接口代理
+    // '/subVipPortrait/winner': {
+    //   target: domain,
+    //   changeOrigin: true,
+    //   logLevel: 'debug'
+    // },
+    '^/bigmember': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug',
+      pathRewrite: {
+        '^/bigmember': '/bigmember'
+      }
+    },
+    '^/jypay': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/entnicheNew': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/OnlineCourses': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/entbase': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/jyapi': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/publicapply': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/subscribepay': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/salesLeads': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/privatedata': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/leadGeneration': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/jyCoupon': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/front': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/jymessageCenter': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/userCenter': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/jyMerge': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/commonFunctions': {
+      target: domain,
+      changeOrigin: true,
+      logLevel: 'debug'
+    }
+  }
+}
+
+exports.getProxyOfIp = function (ip) {
+  return {
+    // 反爬虫接口代理
+    // '/subVipPortrait/winner': {
+    //   target: ip + ':8800',
+    //   changeOrigin: true,
+    //   logLevel: 'debug'
+    // },
+    '^/bigmember': {
+      target: ip + ':814',
+      changeOrigin: true,
+      logLevel: 'debug',
+      pathRewrite: {
+        '^/bigmember': '/bigmember'
+      }
+    },
+    '^/jypay': {
+      target: ip + ':86',
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/publicapply': {
+      target: ip + ':828',
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/subscribepay': {
+      target: ip + ':86',
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/salesLeads': {
+      target: ip + ':8881',
+      changeOrigin: true,
+      logLevel: 'debug'
+    },
+    '^/privatedata': {
+      target: ip + ':829',
+      changeOrigin: true,
+      logLevel: 'debug'
+    }
+  }
+}

+ 58 - 0
apps/bigmember_pc/package.json

@@ -0,0 +1,58 @@
+{
+  "name": "app",
+  "version": "0.1.0",
+  "private": true,
+  "scripts": {
+    "serve": "vue-cli-service serve --port 8081",
+    "build": "vue-cli-service build --mode production",
+    "build:linux": "rm -rf node_module/.cache && vue-cli-service build",
+    "build:test": "vue-cli-service build --mode test",
+    "lint": "vue-cli-service lint --fix",
+    "analyzer": "use_analyzer=true vue-cli-service build --mode production",
+    "analyze": "cross-env use_analyzer=true vue-cli-service build --mode production"
+  },
+  "dependencies": {
+    "@jianyu/easy-fix-sub-app": "^0.0.1",
+    "@jianyu/easy-inject-qiankun": "^0.1.10",
+    "@jianyu/icon": "^0.1.7",
+    "@jianyu/reset.css": "~0.1.1",
+    "axios": "^0.21.1",
+    "core-js": "^3.4.3",
+    "dayjs": "^1.11.7",
+    "echarts": "4.8.0",
+    "element-ui": "2.15.15-rc",
+    "excellentexport": "^3.8.1",
+    "jquery": "^3.6.0",
+    "js-cookie": "^3.0.1",
+    "lodash": "^4.17.21",
+    "moment": "^2.29.1",
+    "svga": "^2.0.6",
+    "v-charts": "1.19.0",
+    "vue": "^2.6.10",
+    "vue-cookies": "^1.7.4",
+    "vue-meta-info": "^0.1.7",
+    "vue-router": "^3.1.3",
+    "vuex": "^3.6.2"
+  },
+  "devDependencies": {
+    "@vue/cli-plugin-babel": "^4.1.0",
+    "@vue/cli-plugin-eslint": "~4.5.0",
+    "@vue/cli-plugin-router": "^4.1.0",
+    "@vue/cli-service": "^4.1.2",
+    "@vue/eslint-config-standard": "^5.1.2",
+    "babel-eslint": "^10.1.0",
+    "babel-plugin-component": "^1.1.1",
+    "cross-env": "^7.0.3",
+    "eslint": "^6.7.2",
+    "eslint-plugin-import": "^2.20.2",
+    "eslint-plugin-node": "^11.1.0",
+    "eslint-plugin-promise": "^4.2.1",
+    "eslint-plugin-standard": "^4.0.0",
+    "eslint-plugin-vue": "^6.2.2",
+    "sass": "^1.26.5",
+    "sass-loader": "^8.0.2",
+    "vue-cli-plugin-single-spa": "^1.0.1",
+    "vue-template-compiler": "^2.6.10",
+    "webpack-bundle-analyzer": "^4.4.1"
+  }
+}

+ 5 - 0
apps/bigmember_pc/postcss.config.js

@@ -0,0 +1,5 @@
+module.exports = {
+  plugins: {
+    autoprefixer: {}
+  }
+}

BIN
apps/bigmember_pc/public/favicon.ico


+ 71 - 0
apps/bigmember_pc/public/index.html

@@ -0,0 +1,71 @@
+<!DOCTYPE html>
+<html>
+  <head>
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width,initial-scale=1.0">
+    <link rel="icon" href="<%= BASE_URL %>favicon.ico">
+    <title>剑鱼标讯</title>
+    <% if (process.env.NODE_ENV === 'development') { %>
+      <link ignore href="https://jybx2-webtest.jydev.jianyu360.com/css/bootstrap.min.css" rel="stylesheet">
+      <link ignore href="https://jybx2-webtest.jydev.jianyu360.com/css/bootswatch.min.css" rel="stylesheet">
+      <link ignore href="https://jybx2-webtest.jydev.jianyu360.com/css/font.css?v=6302" rel="stylesheet">
+      <link ignore href="https://jybx2-webtest.jydev.jianyu360.com/css/jy.css?v=6302" rel="stylesheet">
+      <link ignore href="https://jybx2-webtest.jydev.jianyu360.com/css/common.css?v=6302" rel="stylesheet">
+      <link ignore href="https://jybx2-webtest.jydev.jianyu360.com/css/animate.css" rel="stylesheet">
+      <link ignore href="https://jybx2-webtest.jydev.jianyu360.com/css/unicorn.main.css" rel="stylesheet" />
+      <link ignore href="https://jybx2-webtest.jydev.jianyu360.com/css/unicorn.grey.css" rel="stylesheet" />
+      <script ignore src="https://jybx2-webtest.jydev.jianyu360.com/js/jquery-3.2.1.min.js?v=6302"></script>
+      <script ignore src="https://jybx2-webtest.jydev.jianyu360.com/js/jquery.cookie.js"></script>
+      <script ignore src="https://jybx2-webtest.jydev.jianyu360.com/js/bootstrap.min.js"></script>
+
+      <link ignore href='https://jybx2-webtest.jydev.jianyu360.com/css/reset.css?v=6302' rel="stylesheet" type="text/css"/>
+      <link ignore href='https://jybx2-webtest.jydev.jianyu360.com/pccss/reset_pc.css' rel="stylesheet" type="text/css"/>
+      <link ignore href='https://jybx2-webtest.jydev.jianyu360.com/css/pc.css?v=6302' rel="stylesheet"/>
+      <link ignore href='https://jybx2-webtest.jydev.jianyu360.com/pccss/public-nav-1200.css?v=6302' rel="stylesheet" type="text/css"/>
+
+      <script src=//cdn-common.jianyu360.com/cdn/lib/jquery/3.6.0/jquery.min.js></script>
+    <% } %>
+
+    <!-- 使用CDN的CSS文件 -->
+    <link rel="stylesheet" href="https://cdn-common.jianyu360.com/cdn/assets/iconfont/pc/23.9.28/iconfont.css">
+    <link rel="stylesheet" href=//cdn-common.jianyu360.com/cdn/lib/v-charts/1.19.0/style.min.css />
+    <% for (var i in htmlWebpackPlugin.options.cdn && htmlWebpackPlugin.options.cdn.css) { %>
+    <link rel="stylesheet" href="<%= htmlWebpackPlugin.options.cdn.css[i] %>" />
+    <% } %>
+    <!-- 使用CDN的JS文件 -->
+    <% for (var i in htmlWebpackPlugin.options.cdn && htmlWebpackPlugin.options.cdn.js) { %>
+    <script type="text/javascript" src="<%= htmlWebpackPlugin.options.cdn.js[i] %>"></script>
+    <% } %>
+    <% if (process.env.NODE_ENV === 'production') { %>
+      <link href='/css/reset.css?v=6302' rel="stylesheet" type="text/css"/>
+      <link href='/pccss/reset_pc.css' rel="stylesheet" type="text/css"/>
+      <script src="/antiRes/js/mainHook.js"></script>
+      <script src="/common-module/chart-module/js/chart-common.js"></script>
+    <% } %>
+    <% if (process.env.NODE_ENV === 'development') { %>
+      <!-- test--- 加载 公共js方法 -->
+      <script src="//cdn-common.jianyu360.com/cdn/lib/lodash/4.17.21/lodash.min.js"></script>
+       <script defer src="/common-module/chart-module/js/chart-common.js"></script>
+       <script src="//cdn-common.jianyu360.com/cdn/lib/vue/2.6.11/vue.min.js"></script>
+       <script src=//cdn-common.jianyu360.com/cdn/lib/echarts/4.8.0/echarts.min.js></script>
+       <script src=//cdn-common.jianyu360.com/cdn/lib/v-charts/1.19.0/index.min.js></script>
+       <link rel="stylesheet" href=//cdn-common.jianyu360.com/cdn/lib/v-charts/1.19.0/style.min.css />
+     <% } %>
+  </head>
+  <style>
+    .big-member-page {
+      margin: 0 auto;
+    }
+    body.big-transparent{
+      background-color: transparent!important;
+    }
+  </style>
+  <body>
+    <noscript>
+      <strong>We're sorry but app1 doesn't work properly without JavaScript enabled. Please enable it to continue.</strong>
+    </noscript>
+    <div id="app"></div>
+    <!-- built files will be auto injected -->
+  </body>
+</html>

+ 105 - 0
apps/bigmember_pc/src/App.vue

@@ -0,0 +1,105 @@
+<template>
+  <div class="big-member-page">
+    <keep-alive :include="cashViews">
+      <router-view :key="$route.fullPath"></router-view>
+    </keep-alive>
+  </div>
+</template>
+
+<script>
+// @ is an alias to /src
+import { getParam } from '@/utils/'
+export default {
+  components: {},
+  data () {
+    return {
+      cashViews: ['list-potential']
+    }
+  },
+  created () {
+    // noIntercept不走登录拦截
+    this.$store.dispatch('user/getNewEnt', { noIntercept: true })
+    this.$store.dispatch('user/getEntInfo', { noIntercept: true })
+  },
+  mounted () {
+    if (getParam('iframe') === 'BidrenewalDialog') {
+      const body = document.querySelector('body')
+      body.classList.add('big-transparent')
+    }
+  },
+
+  methods: {}
+}
+</script>
+<style lang="scss">
+@import "~@/assets/style/common.scss";
+@import "~@/assets/style/reset-ele.scss";
+@import "~@/assets/style/reset-qiankun.scss";
+
+.v-w1200 {
+  width: 1200px;
+  margin: 0 auto;
+}
+
+.bg-white {
+  background-color: #fff;
+}
+
+.page--big-member.bg-white {
+  background-color: #fff;
+
+  .page-container {
+    background-color: #fff;
+  }
+}
+
+.in-app {
+  min-width: 1060px;
+
+  .v-w1200 {
+    width: 100%;
+  }
+
+  // 兼容工作桌面下a链接
+  a:focus,
+  a:hover {
+    text-decoration: underline;
+  }
+
+  a:active,
+  a:hover {
+    outline: 0;
+  }
+}
+
+.big-member-page .el-loading-mask {
+  z-index: 98;
+}
+
+.fixed-nav {
+  width: 100%;
+  position: fixed !important;
+  top: 53px;
+  z-index: 49; // 调整为49,大于49会遮挡工作桌面消息提示浮标
+}
+
+.visited {
+
+  .visited-hd,
+  td {
+    color: #999 !important;
+  }
+
+  .hover:hover {
+    color: #2cb7ca !important;
+  }
+
+  .visited-ft {
+    color: #9B9CA3 !important;
+  }
+}
+.monitor-popover {
+  border-radius: 12px!important;
+  border: 1px solid #ececec!important;
+}
+</style>

+ 32 - 0
apps/bigmember_pc/src/api/axios.js

@@ -0,0 +1,32 @@
+import axios from 'axios'
+import mock from '@/api/mock'
+
+console.log('[debug]当前环境:', process.env)
+const service = axios.create({
+  baseURL: process.env.VUE_APP_BASE_API
+})
+service.interceptors.request.use(config => {
+  // 在请求发送之前做一些事
+  return config
+}, function (error) {
+  // 当出现请求错误是做一些事
+  console.log('--请求超时--', error)
+  return Promise.reject(error)
+})
+
+// 添加一个返回拦截器
+service.interceptors.response.use(response => {
+  // 此处添加响应拦截
+  if (process.env.NODE_ENV === 'production' && response.config && !response.config.noIntercept && !window.$noIntercept) {
+    const noPermissionText = ['未登录', '需要登录', '需要登录!']
+    const noPermission = noPermissionText.includes(response.data.error_msg)
+    if (noPermission) {
+      location.href = '/notin/page'
+    }
+  }
+  return response.data
+})
+
+const useMock = process.env.NODE_ENV === 'development' && process.env.VUE_APP_MOCK === 'true'
+
+export default useMock ? mock : service

+ 74 - 0
apps/bigmember_pc/src/api/index.js

@@ -0,0 +1,74 @@
+import axios from './axios'
+import $ from 'jquery'
+import qs from 'qs'
+
+// 此处添加全局请求拦截
+// $.ajaxPrefilter((options, originalOptions, jqXHR) => {
+//   console.log('options', options)
+//   console.log('originalOptions', originalOptions)
+//   console.log('jqXHR', jqXHR)
+// })
+// jquery请求
+const ajax = config => new Promise((resolve, reject) => {
+  // 获取url参数
+  const url = config.baseURL ? config.baseURL + config.url : process.env.VUE_APP_BASE_API + config.url
+
+  const ajaxConf = {
+    url: url,
+    method: config.method
+  }
+
+  // 获取data数据
+  const data = config.data
+  const params = config.params
+  const headers = config.headers
+
+  if (ajaxConf.method.toLowerCase() === 'post') {
+    if (data) {
+      if (typeof data === 'string') {
+        // formData
+        ajaxConf.data = qs.parse(data)
+      } else {
+        // json
+        ajaxConf.contentType = 'application/json;charset=UTF-8'
+        ajaxConf.data = JSON.stringify(data)
+      }
+    }
+  } else if (ajaxConf.method.toLowerCase() === 'get') {
+    if (params) {
+      ajaxConf.data = params
+    }
+  }
+  if (headers) {
+    ajaxConf.headers = headers
+  }
+
+  // 此处数据预处理
+  // 此处添加请求拦截(请求发送前处理参数)
+
+  $.ajax({
+    ...ajaxConf,
+    beforeSend: xhr => {
+      // 此处请求预处理
+      // 此处添加请求拦截(请求发送前处理参数)
+    },
+    success: res => {
+      // 此处添加响应拦截
+      if (process.env.NODE_ENV === 'production' && config && !config.noIntercept && !window.$noIntercept) {
+        const noPermissionText = ['未登录', '需要登录', '需要登录!']
+        const noPermission = noPermissionText.includes(res.error_msg)
+        if (noPermission) {
+          location.href = '/notin/page'
+          return
+        }
+      }
+      resolve(res)
+    },
+    error: err => {
+      reject(err)
+    }
+  })
+})
+
+const useJQueryAjax = !!window.antiAdd
+export default useJQueryAjax ? ajax : axios

+ 29 - 0
apps/bigmember_pc/src/api/mock.js

@@ -0,0 +1,29 @@
+const files = require.context('@/api/mock', false, /\.json$/)
+const mocks = {}
+files.keys().forEach(key => {
+  const tempK = '/' + key.replace(/\$/g, '/').replace(/(\.\/|\.json)/g, '')
+  mocks[tempK] = files(key)
+})
+
+function mock (config) {
+  return new Promise(resolve => {
+    setTimeout(() => {
+      const result = {
+        data: mocks[config.url]
+      }
+      // Toast.clear()
+      try {
+        console.log('[debug]当前mock', config, result.data)
+        if (!result.data.error_msg) {
+          // Toast(result.data.msg)
+        }
+      } catch (e) {
+        console.log('[debug]当前mock', config)
+        console.log(e)
+      }
+      resolve(result.data)
+    }, Math.random() * 3 * 1000 + 2000)
+  })
+}
+
+export default mock

+ 200 - 0
apps/bigmember_pc/src/api/mock/commodity$couponInfo.json

@@ -0,0 +1,200 @@
+{
+  "data": [
+    {
+      "title": "超级订阅",
+      "desc": "续费超级订阅",
+      "extend": null,
+      "sku": [
+        {
+          "productId": 1012,
+          "name": "超级订阅10月",
+          "info": "10月",
+          "choosed": false,
+          "lotteryId": 11028,
+          "activityId": 569,
+          "originalPrice": 6666,
+          "discountPrice": 5555,
+          "discountAmount": 1111,
+          "activity": [
+            {
+              "activityId": 569,
+              "title": "开发测试满折",
+              "desc": "",
+              "starttime": 1676390400,
+              "endtime": -62135596800,
+              "type": 1,
+              "preStartTime": 0,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "满200元打7折",
+                  "starttime": 1676706423,
+                  "endtime": 1677570423,
+                  "type": 1,
+                  "stockNumber": 0,
+                  "lotteryId": 1028,
+                  "activityId": 569,
+                  "usable": false,
+                  "choosed": false,
+                  "UserLotterId": 1422923,
+                  "full": 20000,
+                  "reduce": 0,
+                  "discount": 7,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                },
+                {
+                  "title": "满200元打7折",
+                  "starttime": 1676706423,
+                  "endtime": 1677570423,
+                  "type": 1,
+                  "stockNumber": 0,
+                  "lotteryId": 11028,
+                  "activityId": 569,
+                  "usable": true,
+                  "choosed": false,
+                  "UserLotterId": 1422923,
+                  "full": 20000,
+                  "reduce": 0,
+                  "discount": 7,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                }
+              ]
+            },
+            {
+              "activityId": 570,
+              "title": "开发测试限时折扣",
+              "desc": "",
+              "starttime": 1676390400,
+              "endtime": -62135596800,
+              "type": 4,
+              "preStartTime": 1676390400,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "",
+                  "starttime": 1676390400,
+                  "endtime": 1676995200,
+                  "type": 4,
+                  "stockNumber": 10,
+                  "lotteryId": 1647,
+                  "activityId": 570,
+                  "usable": true,
+                  "choosed": true,
+                  "UserLotterId": 0,
+                  "full": 0,
+                  "reduce": 0,
+                  "discount": 0.1,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                },
+                {
+                  "title": "",
+                  "starttime": 1676390400,
+                  "endtime": 1676995200,
+                  "type": 4,
+                  "stockNumber": 10,
+                  "lotteryId": 31647,
+                  "activityId": 2570,
+                  "usable": false,
+                  "choosed": true,
+                  "UserLotterId": 0,
+                  "full": 0,
+                  "reduce": 0,
+                  "discount": 0.1,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                }
+              ]
+            },
+            {
+              "activityId": 621,
+              "title": "超级订阅满赠",
+              "desc": "",
+              "starttime": 1676875560,
+              "endtime": -62135596800,
+              "type": 2,
+              "preStartTime": 0,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "超级订阅7天",
+                  "starttime": 1676875560,
+                  "endtime": 1676908800,
+                  "type": 2,
+                  "stockNumber": 5,
+                  "lotteryId": 1717,
+                  "activityId": 621,
+                  "usable": true,
+                  "choosed": false,
+                  "UserLotterId": 0,
+                  "full": 0,
+                  "reduce": 0,
+                  "discount": 0,
+                  "promotionalPrice": 0,
+                  "time": 7,
+                  "timeType": 1
+                },
+                {
+                  "title": "超级订阅7天",
+                  "starttime": 1676875560,
+                  "endtime": 1676908800,
+                  "type": 2,
+                  "stockNumber": 5,
+                  "lotteryId": 51717,
+                  "activityId": 3621,
+                  "usable": false,
+                  "choosed": false,
+                  "UserLotterId": 0,
+                  "full": 0,
+                  "reduce": 0,
+                  "discount": 0,
+                  "promotionalPrice": 0,
+                  "time": 7,
+                  "timeType": 1
+                }
+              ]
+            },
+            {
+              "activityId": 622,
+              "title": "f测试",
+              "desc": "",
+              "starttime": 1676908800,
+              "endtime": -62135596800,
+              "type": 4,
+              "preStartTime": 0,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "",
+                  "starttime": 1676908800,
+                  "endtime": 1677081600,
+                  "type": 4,
+                  "stockNumber": 4,
+                  "lotteryId": 1718,
+                  "activityId": 622,
+                  "usable": false,
+                  "choosed": false,
+                  "UserLotterId": 0,
+                  "full": 0,
+                  "reduce": 0,
+                  "discount": 0.4,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                }
+              ]
+            }
+          ]
+        }
+      ]
+    }
+  ],
+  "error_code": 0,
+  "error_msg": ""
+}

+ 415 - 0
apps/bigmember_pc/src/api/mock/commodity$detail.json

@@ -0,0 +1,415 @@
+{
+  "data": [
+    {
+      "title": "超级订阅",
+      "desc": "续费超级订阅",
+      "extend": null,
+      "sku": [
+        {
+          "productId": 1012,
+          "name": "超级订阅1月",
+          "info": "1月",
+          "choosed": false,
+          "lotteryId": 88500,
+          "activityId": 99500,
+          "originalPrice": 3800,
+          "discountPrice": 380,
+          "discountAmount": 3420,
+          "activity": [
+            {
+              "activityId": 99500,
+              "title": "满减活动-活动开始-有库存",
+              "desc": "",
+              "starttime": 1674208148,
+              "endtime": 1705744148,
+              "type": 0,
+              "stockNumber": 10,
+              "preStartTime": 0,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "满20元打7折",
+                  "starttime": 1676706423,
+                  "endtime": 1677570423,
+                  "type": 1,
+                  "stockNumber": 0,
+                  "lotteryId": 88500,
+                  "activityId": 99500,
+                  "usable": true,
+                  "choosed": false,
+                  "UserLotterId": 1422923,
+                  "full": 2000,
+                  "reduce": 0,
+                  "tag": "立减1000",
+                  "discount": 99500,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                }
+              ]
+            },
+            {
+              "activityId": 99501,
+              "title": "满减活动-活动未开始-有库存",
+              "desc": "",
+              "starttime": 1684576148,
+              "endtime": 1705744148,
+              "type": 0,
+              "stockNumber": 10,
+              "preStartTime": 0,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "满减活动-活动未开始-有库存 -- 满20元打7折",
+                  "starttime": 1676706423,
+                  "endtime": 1677570423,
+                  "type": 1,
+                  "stockNumber": 0,
+                  "lotteryId": 88501,
+                  "activityId": 99501,
+                  "usable": true,
+                  "choosed": false,
+                  "UserLotterId": 1422923,
+                  "full": 2000,
+                  "reduce": 0,
+                  "discount": 99501,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                }
+              ]
+            },
+            {
+              "activityId": 99502,
+              "title": "开发测试满折",
+              "desc": "",
+              "starttime": 1676390400,
+              "endtime": -62135596800,
+              "type": 1,
+              "preStartTime": 0,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "满200元打7折",
+                  "starttime": 1676706423,
+                  "endtime": 1677570423,
+                  "type": 1,
+                  "stockNumber": 0,
+                  "lotteryId": 88502,
+                  "activityId": 99502,
+                  "usable": false,
+                  "choosed": false,
+                  "UserLotterId": 1422923,
+                  "full": 20000,
+                  "reduce": 0,
+                  "discount": 99502,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                }
+              ]
+            },
+            {
+              "activityId": 570,
+              "title": "开发测试限时折扣",
+              "desc": "",
+              "starttime": 1676390400,
+              "endtime": -62135596800,
+              "type": 4,
+              "preStartTime": 1676390400,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "",
+                  "starttime": 1676390400,
+                  "endtime": 1676995200,
+                  "type": 4,
+                  "stockNumber": 10,
+                  "lotteryId": 1647,
+                  "activityId": 570,
+                  "usable": true,
+                  "choosed": true,
+                  "UserLotterId": 0,
+                  "full": 0,
+                  "reduce": 0,
+                  "discount": 0.1,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                }
+              ]
+            },
+            {
+              "activityId": 621,
+              "title": "超级订阅满赠",
+              "desc": "",
+              "starttime": 1676875560,
+              "endtime": -62135596800,
+              "type": 2,
+              "preStartTime": 0,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "超级订阅7天",
+                  "starttime": 1676875560,
+                  "endtime": 1676908800,
+                  "type": 2,
+                  "stockNumber": 5,
+                  "lotteryId": 1717,
+                  "activityId": 621,
+                  "usable": true,
+                  "choosed": false,
+                  "UserLotterId": 0,
+                  "full": 0,
+                  "reduce": 0,
+                  "discount": 0,
+                  "promotionalPrice": 0,
+                  "time": 7,
+                  "timeType": 1
+                }
+              ]
+            },
+            {
+              "activityId": 622,
+              "title": "f测试",
+              "desc": "",
+              "starttime": 1676908800,
+              "endtime": -62135596800,
+              "type": 4,
+              "preStartTime": 0,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "",
+                  "starttime": 1676908800,
+                  "endtime": 1677081600,
+                  "type": 4,
+                  "stockNumber": 4,
+                  "lotteryId": 1718,
+                  "activityId": 622,
+                  "usable": false,
+                  "choosed": false,
+                  "UserLotterId": 0,
+                  "full": 0,
+                  "reduce": 0,
+                  "discount": 0.4,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                }
+              ]
+            }
+          ]
+        },
+        {
+          "productId": 1013,
+          "name": "超级订阅1季",
+          "info": "1季",
+          "choosed": false,
+          "lotteryId": 1647,
+          "activityId": 570,
+          "originalPrice": 9900,
+          "discountPrice": 990,
+          "discountAmount": 8910,
+          "activity": [
+            {
+              "activityId": 569,
+              "title": "开发测试满折",
+              "desc": "",
+              "starttime": 1676390400,
+              "endtime": -62135596800,
+              "type": 1,
+              "preStartTime": 0,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "满200元打7折",
+                  "starttime": 1676706423,
+                  "endtime": 1677570423,
+                  "type": 1,
+                  "stockNumber": 0,
+                  "lotteryId": 1028,
+                  "activityId": 569,
+                  "usable": false,
+                  "choosed": false,
+                  "UserLotterId": 1422923,
+                  "full": 20000,
+                  "reduce": 0,
+                  "discount": 7,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                }
+              ]
+            },
+            {
+              "activityId": 570,
+              "title": "开发测试限时折扣",
+              "desc": "",
+              "starttime": 1676390400,
+              "endtime": -62135596800,
+              "type": 4,
+              "preStartTime": 1676390400,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "",
+                  "starttime": 1676390400,
+                  "endtime": 1676995200,
+                  "type": 4,
+                  "stockNumber": 10,
+                  "lotteryId": 1647,
+                  "activityId": 570,
+                  "usable": true,
+                  "choosed": true,
+                  "UserLotterId": 0,
+                  "full": 0,
+                  "reduce": 0,
+                  "discount": 0.1,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                }
+              ]
+            },
+            {
+              "activityId": 621,
+              "title": "超级订阅满赠",
+              "desc": "",
+              "starttime": 1676875560,
+              "endtime": -62135596800,
+              "type": 2,
+              "preStartTime": 0,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "超级订阅7天",
+                  "starttime": 1676875560,
+                  "endtime": 1676908800,
+                  "type": 2,
+                  "stockNumber": 5,
+                  "lotteryId": 1717,
+                  "activityId": 621,
+                  "usable": true,
+                  "choosed": false,
+                  "UserLotterId": 0,
+                  "full": 0,
+                  "reduce": 0,
+                  "discount": 0,
+                  "promotionalPrice": 0,
+                  "time": 7,
+                  "timeType": 1
+                }
+              ]
+            }
+          ]
+        },
+        {
+          "productId": 1014,
+          "name": "超级订阅1年",
+          "info": "1年",
+          "choosed": true,
+          "lotteryId": 1647,
+          "activityId": 570,
+          "originalPrice": 38000,
+          "discountPrice": 3800,
+          "discountAmount": 34200,
+          "activity": [
+            {
+              "activityId": 569,
+              "title": "开发测试满折",
+              "desc": "",
+              "starttime": 1676390400,
+              "endtime": -62135596800,
+              "type": 1,
+              "preStartTime": 0,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "满200元打7折",
+                  "starttime": 1676706423,
+                  "endtime": 1677570423,
+                  "type": 1,
+                  "stockNumber": 0,
+                  "lotteryId": 1028,
+                  "activityId": 569,
+                  "usable": true,
+                  "choosed": false,
+                  "UserLotterId": 1422923,
+                  "full": 20000,
+                  "reduce": 0,
+                  "discount": 0.7,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                }
+              ]
+            },
+            {
+              "activityId": 570,
+              "title": "开发测试限时折扣",
+              "desc": "",
+              "starttime": 1676390400,
+              "endtime": -62135596800,
+              "type": 4,
+              "preStartTime": 1676390400,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "",
+                  "starttime": 1676390400,
+                  "endtime": 1676995200,
+                  "type": 4,
+                  "stockNumber": 10,
+                  "lotteryId": 1647,
+                  "activityId": 570,
+                  "usable": true,
+                  "choosed": true,
+                  "UserLotterId": 0,
+                  "full": 0,
+                  "reduce": 0,
+                  "discount": 0.1,
+                  "promotionalPrice": 0,
+                  "time": 0,
+                  "timeType": 0
+                }
+              ]
+            },
+            {
+              "activityId": 621,
+              "title": "超级订阅满赠",
+              "desc": "",
+              "starttime": 1676875560,
+              "endtime": -62135596800,
+              "type": 2,
+              "preStartTime": 0,
+              "isAppointment": 0,
+              "discount": [
+                {
+                  "title": "超级订阅7天",
+                  "starttime": 1676875560,
+                  "endtime": 1676908800,
+                  "type": 2,
+                  "stockNumber": 5,
+                  "lotteryId": 1717,
+                  "activityId": 621,
+                  "usable": true,
+                  "choosed": false,
+                  "UserLotterId": 0,
+                  "full": 0,
+                  "reduce": 0,
+                  "discount": 0,
+                  "promotionalPrice": 0,
+                  "time": 7,
+                  "timeType": 1
+                }
+              ]
+            }
+          ]
+        }
+      ]
+    }
+  ],
+  "error_code": 0,
+  "error_msg": ""
+}

+ 9 - 0
apps/bigmember_pc/src/api/mock/commodity$price.json

@@ -0,0 +1,9 @@
+{
+  "data": {
+    "originalPrice": 9999,
+    "discountPrice": 8888,
+    "discountAmount": 1111
+  },
+  "error_code": 0,
+  "error_msg": ""
+}

+ 27 - 0
apps/bigmember_pc/src/api/mock/use$isAdd.json

@@ -0,0 +1,27 @@
+{
+  "error_code": 0,
+  "error_msg": "",
+  "data": {
+    "combo": "自定义",
+    "entname": "2222",
+    "isSubCount": false,
+    "isUsed": true,
+    "is_member_trial": false,
+    "memberStatus": 5,
+    "power": [
+      1,
+      12,
+      13,
+      15,
+      4,
+      5,
+      10,
+      14,
+      3,
+      6,
+      7,
+      8,
+      9
+    ]
+  }
+}

+ 99 - 0
apps/bigmember_pc/src/api/modules/analysis.js

@@ -0,0 +1,99 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 获取是否关注
+export function getFollowInfo (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/project/check',
+    method: 'post',
+    data
+  })
+}
+
+// 关注项目
+export function addFollow (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/project/add',
+    method: 'post',
+    data
+  })
+}
+
+// 取消关注
+export function cancelFollow (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/project/cancel',
+    method: 'post',
+    data
+  })
+}
+
+// 获取项目基本信息(同跟筛选条件)
+export function getProjectInfo (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/analysis/projectInfo',
+    method: 'post',
+    data
+  })
+}
+
+// 获取项目基本信息(同跟筛选条件)
+export function getFollowAssociationList (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/ent/association',
+    method: 'post',
+    data
+  })
+}
+
+// 获取投标决策分析结果
+export function getAnalysisResult (data) {
+  // data = qs.stringify(data)
+  return request({
+    url: '/decision/decInfo',
+    method: 'post',
+    data
+  })
+}
+
+// 获取投标决策分析项目明细
+export function getAnalysisDetail (data) {
+  // data = qs.stringify(data)
+  return request({
+    url: '/decision/projectInfoByBW',
+    method: 'post',
+    data
+  })
+}
+
+// 分析内容-中标企业top10
+export function getAnalysisHotTop10 (data) {
+  return request({
+    url: '/decision/hotWinnerTop',
+    method: 'post',
+    data
+  })
+}
+
+// 分析内容-评标专家top10
+export function getAnalysisDecReviewExperts (data) {
+  return request({
+    url: '/decision/decReviewExperts',
+    method: 'post',
+    data
+  })
+}
+
+// 分析内容-评标专家top10项目信息明细
+export function getAnalysisERProjects (data) {
+  return request({
+    url: '/decision/getREProjects',
+    method: 'post',
+    data
+  })
+}

+ 18 - 0
apps/bigmember_pc/src/api/modules/biService.js

@@ -0,0 +1,18 @@
+import request from '@/api'
+
+export function getBiAddedProjects () {
+  return request({
+    baseURL: '/jyapi/biService',
+    url: '/getInfoId',
+    method: 'POST'
+  })
+}
+
+export function addBiProject (data) {
+  return request({
+    baseURL: '/jyapi/biService',
+    url: '/addProject',
+    method: 'POST',
+    data
+  })
+}

+ 262 - 0
apps/bigmember_pc/src/api/modules/chart.js

@@ -0,0 +1,262 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 获取大会员采购单位动态信息
+export function getUnitDt (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/buyer/getNewMsg',
+    method: 'post',
+    data
+  })
+}
+
+// 获取超级订阅采购单位动态信息
+export function getVipUnitDt (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/subVipPortrait/buyer/getNewMsg',
+    method: 'post',
+    data
+  })
+}
+
+// 获取大会员采购单位画像信息
+export function getUnitChart (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/buyer/getData',
+    method: 'post',
+    data
+  })
+}
+
+// 获取超级订阅采购单位画像信息
+export function getVipUnitChart (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/subVipPortrait/buyer/getData',
+    method: 'post',
+    data
+  })
+}
+
+// 获取地图json文件
+export function getMapJson (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '@/assets/js/china.json',
+    method: 'get',
+    data
+  })
+}
+
+// 获取企业画像图表信息
+export function getEntChart (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/winner/getData',
+    method: 'post',
+    data
+  })
+}
+
+// 获取企业画像关联信息
+export function getEntAssociatedInfo (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/winner/noLoginAssociatedInfo',
+    method: 'post',
+    data
+  })
+}
+
+// 获取超级订阅企业画像图表信息
+export function getSubVipEntChart (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/subVipPortrait/winner',
+    method: 'post',
+    data
+  })
+}
+
+// 企业画像可筛选项*
+export function getEntWinnerSelect (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/winner/selects',
+    method: 'post',
+    data
+  })
+}
+
+// 超级订阅企业画像可筛选项*
+export function getsubVipPortraitSelect (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/subVipPortrait/selects',
+    method: 'post',
+    data
+  })
+}
+
+// 企业画像-企业基本信息*
+export function getEntForm (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/ent/detail',
+    method: 'post',
+    data
+  })
+}
+
+// 超级订阅-企业画像-企业基本信息*
+export function getSubVipEntForm (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/subVipPortrait/entDetail',
+    method: 'post',
+    data
+  })
+}
+
+// 企业情报历史数据接口
+export function getEntChangeList (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/ent/entChangeList',
+    method: 'post',
+    data
+  })
+}
+
+// 大会员采购单位画像可筛选项*
+export function getBuyerSelect (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/buyer/selects',
+    method: 'post',
+    data
+  })
+}
+
+// 超级订阅采购单位画像可筛选项*
+export function getVipBuyerSelect (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/subVipPortrait/buyer/selects',
+    method: 'post',
+    data
+  })
+}
+
+// 采购单位画像-中标动态
+export function getNewMsg (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/winner/getNewMsg',
+    method: 'post',
+    data
+  })
+}
+
+// 超级订阅-采购单位画像-中标动态
+export function getSvipNewMsg (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/subVipPortrait/winnerNewMsg',
+    method: 'post',
+    data
+  })
+}
+
+// 添加关注的企业*
+export function setFollowEnt (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/ent/addFollow',
+    method: 'post',
+    data
+  })
+}
+
+// 取消关注的企业*
+export function setCancelEnt (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/ent/delFollow',
+    method: 'post',
+    data
+  })
+}
+
+// 查询当前企业是否在 关注的客户 列表中
+export function getStatusCustomer (data) {
+  return request({
+    baseURL: '/publicapply',
+    url: '/customer/check',
+    method: 'post',
+    data
+  })
+}
+
+// 添加/取消关注的客户*
+export function setStatusCustomer (data) {
+  // data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/customer/attention',
+    method: 'post',
+    data
+  })
+}
+
+// 获取采购单位画像历史项目联系方式
+export function getBuyerHistoryContact (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/contacts',
+    method: 'post',
+    data
+  })
+}
+
+// 获取中标企业画像联系人联系方式
+export function getWinnerHistoryContact (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/winner/contacts',
+    method: 'post',
+    data
+  })
+}
+
+// 超级订阅用户获取采购单位画像历史项目联系方式
+export function vipBuyerHistoryContact (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/subVipPortrait/buyer/contacts',
+    method: 'post',
+    data
+  })
+}
+
+// 周报月报项目明细
+export function getWeekMonthReportProjectList (data) {
+  return request({
+    url: '/report/projectInfo',
+    method: 'post',
+    data
+  })
+}
+
+// 市场分析报告项目明细
+export function getMarketAnalysisReportProjectList (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/marketAnalysis/projectInfo',
+    method: 'post',
+    data
+  })
+}

+ 65 - 0
apps/bigmember_pc/src/api/modules/coupon.js

@@ -0,0 +1,65 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 1. 查询当前价格产品可以使用的优惠券
+// 2. 自动领券功能JYR: 1
+export function getCouponList (data) {
+  if (data && data.token) {
+    data = qs.stringify(data)
+    return request({
+      baseURL: '/jyCoupon',
+      url: '/offlineCoupons',
+      method: 'POST',
+      data
+    })
+  } else {
+    data = qs.stringify(data)
+    return request({
+      baseURL: '/jyCoupon',
+      url: '/showCoupons',
+      method: 'POST',
+      data
+    })
+  }
+}
+
+// 优惠券最优选择接口
+export function optimalCoupon (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/jyCoupon',
+    url: '/optimalCoupon',
+    method: 'POST',
+    data
+  })
+}
+
+// 产品下的赠品
+export function getGiftList (data) {
+  if (data && data.token) {
+    data = qs.stringify(data)
+    return request({
+      baseURL: '/jyCoupon',
+      url: '/offlineGiveInfo',
+      method: 'POST',
+      data
+    })
+  } else {
+    data = qs.stringify(data)
+    return request({
+      baseURL: '/jyCoupon',
+      url: '/giveInfo',
+      method: 'POST',
+      data
+    })
+  }
+}
+export function getInfoByUser (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/jyCoupon',
+    url: '/getInfoByUser',
+    method: 'POST',
+    data
+  })
+}

+ 11 - 0
apps/bigmember_pc/src/api/modules/course.js

@@ -0,0 +1,11 @@
+import request from '@/api'
+
+// 根据ID获取线上课程详情
+export function getCourseInfo (params) {
+  return request({
+    baseURL: '/OnlineCourses',
+    url: '/course/onlineCourseDetails',
+    method: 'GET',
+    params
+  })
+}

+ 41 - 0
apps/bigmember_pc/src/api/modules/crmApplication.js

@@ -0,0 +1,41 @@
+import request from '@/api'
+// 忽略操作
+export function ajaxIgnoreOperate (data) {
+  // data = qs.stringify(data)
+  return request({
+    baseURL: '/jyapi',
+    url: '/crmApplication/ignore/operate',
+    method: 'post',
+    data
+  })
+}
+
+// 收录操作
+export function ajaxEmployOperate (data) {
+  return request({
+    baseURL: '/jyapi',
+    url: '/crmApplication/employ/operate',
+    method: 'post',
+    data
+  })
+}
+
+// 收录情况
+export function ajaxEmployInfo (data) {
+  return request({
+    baseURL: '/jyapi',
+    url: '/crmApplication/employ/info',
+    method: 'post',
+    data
+  })
+}
+
+// 判断是否能创建
+export function isAjaxCanAdd (data) {
+  return request({
+    baseURL: '/jyapi',
+    url: '/crmApplication/info/canAdd',
+    method: 'post',
+    data
+  })
+}

+ 83 - 0
apps/bigmember_pc/src/api/modules/customer.js

@@ -0,0 +1,83 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 广东移动单位画像-搜索
+export function getCustomQuery (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/privatedata',
+    url: '/enterpriseSearch/doQuery',
+    method: 'POST',
+    data: data
+  })
+}
+// 广东移动单位画像-详情
+export function getCustomBuyerData (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/privatedata',
+    url: '/portrait/buyer/getData',
+    method: 'POST',
+    data: data
+  })
+}
+// 广东移动单位画像-招标动态
+export function getBuyerNewMsg (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/privatedata',
+    url: '/portrait/buyer/getNewMsg',
+    method: 'POST',
+    data: data
+  })
+}
+// 广东移动单位画像-高级分析筛选条件
+export function getCustomBuyerSelect (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/privatedata',
+    url: '/portrait/buyer/selects',
+    method: 'POST',
+    data: data
+  })
+}
+// 广东移动单位画像-拟建项目
+export function getBuyerProposed (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/privatedata',
+    url: '/portrait/buyer/getProposed',
+    method: 'POST',
+    data: data
+  })
+}
+// 广东移动单位画像-预告项目
+export function getBuyerNotice (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/privatedata',
+    url: '/portrait/buyer/getNotice',
+    method: 'POST',
+    data: data
+  })
+}
+// 广东移动单位画像-即将到期项目
+export function getBuyerExpire (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/privatedata',
+    url: '/portrait/buyer/getExpire',
+    method: 'POST',
+    data: data
+  })
+}
+// 商机管理权限
+export function getEntNicheAuth (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/front',
+    url: '/entExportAuth/getAuth?t=' + Date.now(),
+    method: 'GET',
+    data: data
+  })
+}

+ 114 - 0
apps/bigmember_pc/src/api/modules/dataExport.js

@@ -0,0 +1,114 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 画像动态导出
+// isMember bool 是否是大会员
+// isWinner bool false 采购单位画像;true 中标企业画像
+export function getPortrayalSearchExportId (isMember, isWinner, data) {
+  let url = ''
+  if (isMember) {
+    if (isWinner) {
+      url = '/portrait/winner/winnerNewMsgExport'
+    } else {
+      url = '/portrait/buyer/getNewMsgExport'
+    }
+  } else {
+    if (isWinner) {
+      url = '/portrait/subVipPortrait/winnerNewMsgExport'
+    } else {
+      url = '/subVipPortrait/buyer/getNewMsgExport'
+    }
+  }
+  data = qs.stringify(data)
+  return request({
+    url: url,
+    method: 'post',
+    data
+  })
+}
+
+// 获取数据导出页面个人支付价格信息
+export function getDataExportPrice (data) {
+  return request({
+    baseURL: '/jypay',
+    url: '/dataexport/getPrice',
+    method: 'post',
+    data
+  })
+}
+
+// 获取数据导出页面数据包信息
+export function getDataPackUsage (data) {
+  return request({
+    baseURL: '/subscribepay',
+    url: '/dataExportPack/account',
+    method: 'post',
+    data
+  })
+}
+
+// 根据ID获取数据导出相关信息
+export function getDataExportInfo (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/dataexport/payPageParams',
+    method: 'post',
+    data
+  })
+}
+
+// 获取数据导出数据包抵扣信息
+export function getDataExportFilterInfo (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/subscribepay',
+    url: '/dataExportPack/statistics',
+    method: 'post',
+    data
+  })
+}
+
+// 发送邮箱验证码
+export function sendMailCode (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/front',
+    url: '/dataExport/sendMailVerify',
+    method: 'POST',
+    data
+  })
+}
+
+// 验证邮箱验证码
+export function checkMailCode (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/front',
+    url: '/dataExport/checkMailVerify',
+    method: 'POST',
+    data
+  })
+}
+
+// 数据导出-超出2w条,点击不在提示
+export function ajaxSetDontPromptAgain (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/front',
+    url: '/dataExport/setDontPromptAgain',
+    method: 'POST',
+    data
+  })
+}
+
+// 数据导出-判断是否展示弹框
+export function ajaxGetDontPromptAgain (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/front',
+    url: '/dataExport/getDontPromptAgain',
+    method: 'POST',
+    data
+  })
+}

+ 60 - 0
apps/bigmember_pc/src/api/modules/entbase.js

@@ -0,0 +1,60 @@
+import request from '@/api'
+
+export function entBaseInfo (typeobj) {
+  if (typeobj && typeobj.noIntercept) {
+    return request({
+      baseURL: '/entbase',
+      url: '/ent/entinfo',
+      method: 'GET',
+      noIntercept: true
+    })
+  } else {
+    return request({
+      baseURL: '/entbase',
+      url: '/ent/entinfo',
+      method: 'GET'
+    })
+  }
+}
+export function userRule () {
+  return request({
+    baseURL: '/entnicheNew',
+    url: '/distribute/userRule',
+    method: 'GET'
+  })
+}
+
+export function defaultSelectEnt (typeobj) {
+  if (typeobj && typeobj.noIntercept) {
+    return request({
+      baseURL: '/entbase',
+      url: '/ent/mySelectent',
+      method: 'GET',
+      noIntercept: true
+    })
+  } else {
+    return request({
+      baseURL: '/entbase',
+      url: '/ent/mySelectent',
+      method: 'GET',
+      noIntercept: true
+    })
+  }
+}
+// 获取当前用户的企业信息
+export function getUserEntInfo () {
+  return request({
+    baseURL: '/entbase',
+    url: '/ent/entinfo',
+    method: 'POST'
+  })
+}
+
+//  企业人员结构信息(过滤企业管理员、部门管理员权限)
+export function getEntPowerPersons () {
+  return request({
+    baseURL: '/entbase',
+    url: '/person/dept',
+    method: 'POST'
+  })
+}

+ 32 - 0
apps/bigmember_pc/src/api/modules/entnicheNew.js

@@ -0,0 +1,32 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 获取用户自定义标签/分类标签列表
+export function getEntUserTags () {
+  return request({
+    baseURL: '/entnicheNew',
+    url: `/customer/getLabel?t=${Date.now()}`,
+    method: 'POST'
+  })
+}
+
+// 添加标签后认领接口
+export function renLingCustomerAddTags (data) {
+  return request({
+    baseURL: '/entnicheNew',
+    url: '/customer/attention',
+    method: 'POST',
+    data
+  })
+}
+
+// 新增标签
+export function customerAddLabel (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/entnicheNew',
+    url: '/customer/addLabel',
+    method: 'POST',
+    data
+  })
+}

+ 21 - 0
apps/bigmember_pc/src/api/modules/file.js

@@ -0,0 +1,21 @@
+import request from '@/api'
+import qs from 'qs'
+
+export function createOrder (data) {
+  return request({
+    baseURL: '/jypay',
+    url: '/resourcePack/createOrder',
+    method: 'POST',
+    data
+  })
+}
+
+export function getFilePackList (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/jypay',
+    url: '/resourcePack/price',
+    method: 'POST',
+    data
+  })
+}

+ 200 - 0
apps/bigmember_pc/src/api/modules/forecast.js

@@ -0,0 +1,200 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 潜在项目预测list接口
+export function getPotenList (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/forecast/forPList',
+    method: 'post',
+    data: data
+  })
+}
+
+// 根据项目名称联想项目信息接口
+export function getProjectList (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/analysis/projectName',
+    method: 'post',
+    data: data
+  })
+}
+
+// 中标预测结果详情页接口
+export function getResultDetail (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/forecast/forWResult',
+    method: 'post',
+    data: data
+  })
+}
+
+// 我关注的企业列表
+export function getEntFollowList (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/ent/list',
+    method: 'post',
+    data: data
+  })
+}
+
+// 中标企业联想接口
+export function getBidAssociation (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/search/ent/association',
+    method: 'post',
+    data: data
+  })
+}
+
+// 采购单位联想接口
+export function getBuyerAssociation (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/search/buyer/association',
+    method: 'post',
+    data
+  })
+}
+
+// 筛选条件数据接口
+export function getBidProjectInfo (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/analysis/projectInfo',
+    method: 'post',
+    data: data
+  })
+}
+
+// 中标预测预测数据接口
+export function getForWData (data) {
+  // data = qs.stringify(data)
+  return request({
+    url: '/forecast/forWData',
+    method: 'post',
+    data: data
+  })
+}
+
+// 中标预测数据状态接口
+export function getForWStatus (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/forecast/forWStatus',
+    method: 'post',
+    data: data
+  })
+}
+
+// 中标预测数据状态接口
+export function getForWResult (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/forecast/forWResult',
+    method: 'post',
+    data: data
+  })
+}
+
+// 潜在项目预测详情页接口
+export function getPotenDetail (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/forecast/forPContent',
+    method: 'post',
+    data: data
+  })
+}
+
+// 查询企业是否关注
+export function getfollowCheck (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/ent/followCheck',
+    method: 'post',
+    data: data
+  })
+}
+
+// AI中标预测历史记录
+export function getBidAiused (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/use/aiused_history',
+    method: 'post',
+    data: data
+  })
+}
+
+// AI中标预测历史记录
+export function getBdInfoStatus (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/forecast/bdInfoStatus',
+    method: 'post',
+    data: data
+  })
+}
+
+// 超级订阅-企业查询默认列表
+export function getSearchByNames (data) {
+  // data = qs.stringify(data)
+  return request({
+    url: '/entinfo/bynames',
+    method: 'post',
+    data: data
+  })
+}
+
+// 大会员-中标动态-可筛选项
+export function getNewMsgSelects (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/winner/getNewMsgSelects',
+    method: 'post',
+    data: data
+  })
+}
+
+// 超级订阅-中标动态-可筛选项
+export function getSvipMsgSelects (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/subVipPortrait/getNewMsgSelects',
+    method: 'post',
+    data: data
+  })
+}
+
+// 更改关注企业分组
+export function changeEntGroup (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/ent/changeGroup',
+    method: 'post',
+    data: data
+  })
+}
+
+// 潜在预测订阅省份
+export function forecastArea () {
+  return request({
+    url: '/forecast/forArea',
+    method: 'get'
+  })
+}
+
+// 潜在预测数据导出
+export function forecastDataExport (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/forecast/forDerive',
+    method: 'post',
+    data: data
+  })
+}

+ 105 - 0
apps/bigmember_pc/src/api/modules/home.js

@@ -0,0 +1,105 @@
+import request from '@/api'
+import qs from 'qs'
+
+export const getSearchTag = params => request({
+  url: '/indexTag',
+  method: 'get',
+  params
+})
+
+const vtMap = {
+  v: 'vType',
+  m: 'mType',
+  s: 'eType',
+  f: 'fType',
+  q: 'eType' // 企业订阅-也需调商机管理订阅信息接口,定义q为了区分企业订阅和个人订阅(商机管理)所传参数
+}
+export function getPushList (vt, data) {
+  // data = qs.stringify(data)
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: `/subscribe/${vtMap[vt]}/list`,
+    method: 'post',
+    data: data
+  })
+}
+
+export function getPushListExport (vt, data) {
+  return request({
+    baseURL: '/jyapi',
+    url: `/jybx/subscribe/${vtMap[vt]}/byPushHistory`,
+    method: 'post',
+    data: data
+  })
+}
+
+export function getSimpleFollowList (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/ent/pcSimpleFollowList',
+    method: 'post',
+    data: data
+  })
+}
+
+export function getDeskFollowList (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/ent/list',
+    method: 'post',
+    data: data
+  })
+}
+
+// 获取周报月报
+export function getReportList (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/subscribepay',
+    url: '/report/newest?type=member',
+    method: 'post',
+    data: data
+  })
+}
+
+// 获取订阅关键词
+export function getSubscribeKeywords (vt, data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/jyapi',
+    url: `/jybx/subscribe/${vtMap[vt]}/getKey`,
+    method: 'post',
+    data: data
+  })
+}
+
+// 设置列表阅读状态
+export function setSubscribeInfoRead (vt, data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/jyapi',
+    url: `/jybx/subscribe/${vtMap[vt]}/setRead`,
+    method: 'post',
+    data: data
+  })
+}
+
+// 设置列表阅读状态
+export function getAttendBiddingList (type, data) {
+  return request({
+    baseURL: '/jyapi',
+    url: `/jybx/core/participate/${type}/list`,
+    method: 'post',
+    data: data
+  })
+}
+
+// 企业人员结构信息
+export function getEntPersons (data) {
+  return request({
+    baseURL: '/jyapi',
+    url: '/jybx/core/participate/persons',
+    method: 'post',
+    data: data
+  })
+}

+ 29 - 0
apps/bigmember_pc/src/api/modules/index.js

@@ -0,0 +1,29 @@
+export * from './home'
+export * from './user'
+export * from './chart'
+export * from './report'
+export * from './forecast'
+export * from './analysis'
+export * from './subscribe'
+export * from './potential'
+export * from './project'
+export * from './coupon'
+export * from './svip'
+export * from './file'
+export * from './customer'
+export * from './dataExport'
+export * from './marketing'
+export * from './medicalField'
+export * from './medical'
+export * from './workspace'
+export * from './entbase'
+export * from './public'
+export * from './entnicheNew'
+export * from './biService'
+export * from './leadGeneration'
+export * from './placeOrder'
+export * from './order'
+export * from './course'
+export * from './jyMerge'
+export * from './crmApplication'
+export * from './pay'

+ 9 - 0
apps/bigmember_pc/src/api/modules/jyMerge.js

@@ -0,0 +1,9 @@
+import request from '@/api'
+
+export function getMergeStatus () {
+  return request({
+    baseURL: '/jyMerge',
+    url: '/usermerge/state?t=' + Date.now(),
+    method: 'GET'
+  })
+}

+ 23 - 0
apps/bigmember_pc/src/api/modules/leadGeneration.js

@@ -0,0 +1,23 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 市场分析报告&超前项目
+export function leadGetDate (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/getDate',
+    baseURL: '/leadGeneration',
+    method: 'post',
+    data
+  })
+}
+
+// 市场分析报告&超前项目 点击事件统计
+export function ajaxSetLeadGetDateRecord (data) {
+  return request({
+    url: '/clickRecord',
+    baseURL: '/leadGeneration',
+    method: 'get',
+    params: data
+  })
+}

+ 44 - 0
apps/bigmember_pc/src/api/modules/marketing.js

@@ -0,0 +1,44 @@
+import request from '@/api'
+
+/**
+ * 轻量化营销服务
+ */
+
+// 获取服务端当前时间戳
+export function getServerInitTime () {
+  return request({
+    baseURL: '/jyapi/marketing',
+    url: '/time/now?t=' + Date.now(),
+    method: 'post'
+  })
+}
+
+// 预约
+export function appointmentAdd (data) {
+  return request({
+    baseURL: '/jyapi/marketing',
+    url: '/appointment/add',
+    method: 'post',
+    data
+  })
+}
+
+// 预热信息
+export function getAppointmentInfo (data) {
+  return request({
+    baseURL: '/jyapi/marketing',
+    url: '/appointment/info',
+    method: 'post',
+    data
+  })
+}
+
+// 是否已预约
+export function getIsAppointment (data) {
+  return request({
+    baseURL: '/jyapi/marketing',
+    url: '/appointment/isAppointment',
+    method: 'post',
+    data
+  })
+}

+ 71 - 0
apps/bigmember_pc/src/api/modules/medical.js

@@ -0,0 +1,71 @@
+import request from '@/api'
+
+// 资源查询
+export function GetResourceSurplus (headers) {
+  return request({
+    url: '/resourceCenter/surplus',
+    baseURL: '/jyapi',
+    headers: headers,
+    method: 'post'
+  })
+}
+
+// 查询我关注的医疗机构
+export function followInstitutionList (data) {
+  return request({
+    url: '/domain/claim/institution',
+    baseURL: '/jyapi',
+    method: 'POST',
+    data
+  })
+}
+
+// 查询我关注的经销商
+export function followDistributorList (data) {
+  return request({
+    url: '/domain/claim/distributor',
+    baseURL: '/jyapi',
+    method: 'POST',
+    data
+  })
+}
+
+// 医疗机构画像-基本信息
+export function getInstitution (data) {
+  return request({
+    url: '/domain/portrait/institution',
+    baseURL: '/jyapi',
+    method: 'post',
+    data: data
+  })
+}
+
+// 医疗机构-最新标讯信息
+export function getMeNewMsgList (data) {
+  return request({
+    url: '/domain/portrait/getNewMsgList',
+    baseURL: '/jyapi',
+    method: 'post',
+    data: data
+  })
+}
+
+// 医疗机构画像-是否认领
+export function isClaimed (data) {
+  return request({
+    url: '/domain/isClaimed',
+    baseURL: '/jyapi',
+    method: 'post',
+    data: data
+  })
+}
+
+// 医疗机构标讯信息导出
+export function getPortrayalMedicalExportId (data) {
+  return request({
+    url: '/domain/portrait/newMsgListExport',
+    baseURL: '/jyapi',
+    method: 'post',
+    data: data
+  })
+}

+ 92 - 0
apps/bigmember_pc/src/api/modules/medicalField.js

@@ -0,0 +1,92 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 用户认证信息保存
+export function domainUsersave (data) {
+  return request({
+    url: '/domain/userAuthInfoSave',
+    baseURL: '/jyapi',
+    method: 'post',
+    data
+  })
+}
+
+// 获取用户认证信息
+export function domainUserauthinfo (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/domain/userAuthInfo',
+    baseURL: '/jyapi',
+    method: 'post',
+    data
+  })
+}
+
+// 经销商列表
+export function getDistributorList (data) {
+  return request({
+    baseURL: '/jyapi/domain',
+    url: '/search/distributor',
+    method: 'post',
+    data
+  })
+}
+
+// 获取医疗机构筛选条件
+export function getMedicalFilter () {
+  return request({
+    baseURL: '/jyapi/domain',
+    url: '/getFilterItem',
+    method: 'post'
+  })
+}
+
+// 筛选医疗机构列表
+export function getSearchMedicalList (data) {
+  return request({
+    baseURL: '/jyapi',
+    url: '/domain/search/institution',
+    method: 'post',
+    data
+  })
+}
+
+// 经销商认领
+export function distributorClaim (data) {
+  return request({
+    baseURL: '/jyapi/domain',
+    url: '/distributor/claim',
+    method: 'post',
+    data
+  })
+}
+
+// 经销商取消认领
+export function distributorUnClaimed (data) {
+  return request({
+    baseURL: '/jyapi/domain',
+    url: '/distributor/unclaimed',
+    method: 'post',
+    data
+  })
+}
+
+// 机构认领
+export function setInstitutionClaim (data) {
+  return request({
+    baseURL: '/jyapi/domain',
+    url: '/institution/claim',
+    method: 'post',
+    data
+  })
+}
+
+// 机构取消认领
+export function institutionUnClaimed (data) {
+  return request({
+    baseURL: '/jyapi/domain',
+    url: '/institution/unclaimed',
+    method: 'post',
+    data
+  })
+}

+ 75 - 0
apps/bigmember_pc/src/api/modules/order.js

@@ -0,0 +1,75 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 根据商品ID、扩展等参数获取商品规格信息
+export function ajaxGetProductInfo (data) {
+  return request({
+    url: '/commodity/detail',
+    baseURL: '/jypay',
+    method: 'post',
+    data
+  })
+}
+
+// 根据商品ID、规格等参数获取商品优惠信息
+export function ajaxGetProductOffers (data) {
+  return request({
+    url: '/commodity/couponInfo',
+    baseURL: '/jypay',
+    method: 'post',
+    data
+  })
+}
+
+// 根据商品ID、规格、优惠等参数获取商品订单金额信息
+export function ajaxGetProductOrderAmount (data) {
+  return request({
+    url: '/commodity/price',
+    baseURL: '/jypay',
+    method: 'post',
+    data
+  })
+}
+// 根据商品ID、规格、优惠等参数获取商品订单金额信息
+export function ajaxSubmitCreatedProductOrder (data) {
+  return request({
+    url: '/common/createorder',
+    baseURL: '/jypay',
+    method: 'post',
+    data
+  })
+}
+
+// 数据流量包支付
+// https://showdoc.jydev.jianyu360.com/web/#/49?page_id=743
+export function packPayApi (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/subscribepay',
+    url: '/dataExportPack/packPay',
+    method: 'POST',
+    data
+  })
+}
+
+export function packExportFile (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/subscribepay',
+    url: '/dataExportPack/fileCheck',
+    method: 'POST',
+    data
+  })
+}
+
+// 超级订阅购买获取续费周期
+// https://yapi.jydev.jianyu360.com/project/63/interface/api/1911
+export function getEffectiveTime (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/subscribepay',
+    url: '/vipsubscribe/effectiveTime',
+    method: 'post',
+    data
+  })
+}

+ 50 - 0
apps/bigmember_pc/src/api/modules/pay.js

@@ -0,0 +1,50 @@
+import request from '@/api'
+import qs from 'qs'
+
+export function getPhoneCaptcha () {
+  return request({
+    baseURL: '/jypay',
+    url: `/user/phone/imgCaptcha?t=${Date.now()}`,
+    method: 'GET'
+  })
+}
+
+export function phoneBind (data, type) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/jypay',
+    url: `/user/phone/${type}`,
+    method: 'POST',
+    data
+  })
+}
+
+export function emailBind (data, type) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/jypay',
+    url: `/user/mail/${type}`,
+    method: 'POST',
+    data
+  })
+}
+
+export function accountAuth (data, type) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/jypay',
+    url: `/user/auth/${type}`,
+    method: 'POST',
+    data
+  })
+}
+
+export function filePackUseHistory (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/jypay',
+    url: '/resourcePack/exchangeCancelList',
+    method: 'POST',
+    data
+  })
+}

+ 30 - 0
apps/bigmember_pc/src/api/modules/placeOrder.js

@@ -0,0 +1,30 @@
+import request from '@/api'
+
+export function commodityDetail (data) { // 商品详情
+  // data = qs.stringify(data)
+  return request({
+    baseURL: '/jypay',
+    url: '/commodity/detail',
+    method: 'POST',
+    data
+  })
+}
+
+export function commodityDiscounts (data) { // 获取优惠券
+  // data = qs.stringify(data)
+  return request({
+    baseURL: '/jypay',
+    url: '/commodity/couponInfo',
+    method: 'POST',
+    data
+  })
+}
+
+export function commodityPrice (data) { //  计算价格
+  return request({
+    baseURL: '/jypay',
+    url: '/commodity/price',
+    method: 'POST',
+    data: data
+  })
+}

+ 88 - 0
apps/bigmember_pc/src/api/modules/potential.js

@@ -0,0 +1,88 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 潜在客户/竞争对手接口
+export function getCorList (data) {
+  return request({
+    url: '/potential/corList',
+    method: 'post',
+    data
+  })
+}
+
+// 潜在客户/竞争对手接口--首页
+export function getIndexCorList (data) {
+  return request({
+    url: '/potential/index',
+    method: 'post',
+    data
+  })
+}
+
+export function setRemoveEnt (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/potential/rMyRivals',
+    method: 'POST',
+    data
+  })
+}
+
+export function setRemoveCustomer (data) {
+  // data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/customer/exclude',
+    method: 'POST',
+    data
+  })
+}
+
+export function getUsage (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/portrait/subVipPortrait/usage',
+    method: 'POST',
+    data
+  })
+}
+
+export function setLogs (data) {
+  // data = qs.stringify(data)
+  return request({
+    url: '/drainage/buyerunit',
+    baseURL: '/publicapply',
+    method: 'POST',
+    data
+  })
+}
+
+export function followClientList (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/customer/list',
+    baseURL: '/publicapply',
+    method: 'POST',
+    data
+  })
+}
+
+// 是否认领企业
+export function claimchecked (data) {
+  return request({
+    baseURL: '/entnicheNew',
+    url: '/customer/claimcheck',
+    method: 'POST',
+    data
+  })
+}
+
+// 添加认领
+export function custAttention (data) {
+  return request({
+    baseURL: '/entnicheNew',
+    url: '/customer/attention',
+    method: 'POST',
+    data
+  })
+}

+ 240 - 0
apps/bigmember_pc/src/api/modules/project.js

@@ -0,0 +1,240 @@
+import request from '@/api'
+import qs from 'qs'
+
+export function getFollowProjectDetail (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/project/detail',
+    method: 'POST',
+    data
+  })
+}
+
+export function getProjectReport (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/bigmember',
+    url: '/project/getPdfFile',
+    method: 'POST',
+    data
+  })
+}
+
+// 项目历程
+export function getProjectHistory (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/project/history',
+    method: 'POST',
+    data
+  })
+}
+
+export function getFollowProjectList (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/project/list',
+    method: 'POST',
+    data
+  })
+}
+
+export function followProjectAdd (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/project/add',
+    method: 'POST',
+    data
+  })
+}
+
+export function followProjectCancel (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/project/cancel',
+    method: 'POST',
+    data
+  })
+}
+
+export function setFollowRemove30Day (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/project/remove30Day',
+    method: 'POST',
+    data
+  })
+}
+
+export function attentionProject (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/project/list',
+    method: 'POST',
+    data
+  })
+}
+
+export function areaProject (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/follow/project/screenArea',
+    method: 'POST',
+    data
+  })
+}
+
+export function showAnnouncement (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/project/history',
+    method: 'POST',
+    data
+  })
+}
+
+// 首页-已认领的项目
+export function getClaimList () {
+  return request({
+    baseURL: '/bigmember',
+    url: '/project/claim/list',
+    method: 'get'
+  })
+}
+
+/**
+ * 获取项目详情页投标状态信息
+ * @param data
+ * @returns {AxiosPromise}
+ */
+export function getProjectRecordStatus (data) {
+  return request({
+    baseURL: '/jyapi',
+    url: '/jybx/core/participate/content',
+    method: 'post',
+    data
+  })
+}
+
+/**
+ * 更新项目详情页投标状态信息
+ * @param data
+ * @returns {AxiosPromise}
+ */
+export function setProjectRecordStatus (data) {
+  return request({
+    baseURL: '/jyapi',
+    url: '/jybx/core/participate/updateBidStatus',
+    method: 'post',
+    data
+  })
+}
+
+/**
+ * 获取项目详情页投标状态操作记录列表
+ * @param data
+ * @returns {AxiosPromise}
+ */
+export function getProjectRecords (data) {
+  return request({
+    baseURL: '/jyapi',
+    url: '/jybx/core/participate/records',
+    method: 'post',
+    data
+  })
+}
+
+/**
+ * 获取项目详情页投标状态选项列表信息
+ * @param data
+ * @returns {AxiosPromise}
+ */
+export function getProjectRecordStatusOptions (data) {
+  return request({
+    baseURL: '/jyapi',
+    url: '/jybx/core/participate/setUpInfo',
+    method: 'post',
+    data
+  })
+}
+
+/**
+ * 获取列表参标数据
+ * @param data
+ */
+export function getBidIsJoin (data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: '/core/participate/show',
+    method: 'post',
+    data
+  })
+}
+/**
+ * 获取项目详情页参标数据
+ * @param data{sid}
+ * 返回参数
+ *
+ bool showParticipate = 1;// 是否显示参标按钮  true-显示  false-不显示
+ bool showStopParticipate = 2;// 是否显示终止参标参标按钮  true-显示  false-不显示
+ bool showTransfer = 3;// 转给同事按钮是否展示:true-展示 false-不展示
+ string userName = 4;//参标人姓名 逗号分割
+ string projectId = 5;// 项目id
+ int64 bidEndTime = 6 ;// 投标截止时间
+ int64 currentTime = 7 ;// 服务器当前时间
+ */
+export function getDetailBidIsJoin (data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: '/core/participate/info',
+    method: 'post',
+    data
+  })
+}
+/**
+ * 参标、终止参标
+ * @param action in:参标;out:终止参标;transfer:划转
+ * @param bidIds 招标信息id(加密) 必传
+ * @param projectIds 项目信息id ,多个,号隔开 划转和终止参标必传(bidIds和projectIds必传一个)
+ * @param callback
+ */
+export function joinBidAction (action, data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: `/core/participate/${action}/info`,
+    method: 'post',
+    data
+  })
+}
+
+// 订阅推送列表参标统计
+export function getPushBidStatistics (data) {
+  return request({
+    baseURL: '/jyapi',
+    url: '/jybx/core/statistics/pushStatistics',
+    method: 'post',
+    data
+  })
+}
+
+// 参标项目汇总统计
+export function getProjectBidStatistics (data) {
+  return request({
+    baseURL: '/jyapi',
+    url: '/jybx/core/statistics/projectStatistics',
+    method: 'post',
+    data
+  })
+}
+
+// 项目明细汇总统计
+export function getProjectBidDetailStatistics (data) {
+  return request({
+    baseURL: '/jyapi',
+    url: '/jybx/core/statistics/projectDetails',
+    method: 'post',
+    data
+  })
+}

+ 173 - 0
apps/bigmember_pc/src/api/modules/public.js

@@ -0,0 +1,173 @@
+import request from '@/api'
+import qs from 'qs'
+
+export function getCommonAdList (data) {
+  return request({
+    baseURL: '/publicapply',
+    url: '/free/getJyAdList',
+    method: 'POST',
+    data
+  })
+}
+
+export function getFreeUserPushInfo (data) {
+  return request({
+    baseURL: '/publicapply',
+    url: '/myinfo',
+    method: 'POST'
+  })
+}
+
+// 获取免费订阅信息接口
+export function getFreeUserSubscribeList (data) {
+  return request({
+    baseURL: '/publicapply',
+    url: '/free/subscribe',
+    method: 'POST'
+  })
+}
+export const getFreeSubscribeInfo = getFreeUserSubscribeList
+
+/*
+  收藏或取消收藏ajax
+  params: {
+    baction: String, //用户行为:R:移除收藏;C:收藏(默认)非必填
+    binfo: Array, // 招标信息数组 必填
+    bid: String, // 招标信息加密后id 必填
+  }
+  参数示例 (baction=R binfo数组只需要bid即可)
+*/
+export function bidCollAction (data) {
+  return request({
+    baseURL: '/publicapply',
+    url: '/bidcoll/action',
+    method: 'POST',
+    data
+  })
+}
+
+// 获取用户标讯收藏自定义标签
+export function getBidCollTagList () {
+  return request({
+    baseURL: '/publicapply',
+    url: `/bidcoll/getLabel?t=${Date.now()}`,
+    method: 'POST'
+  })
+}
+
+// 新增自定义标签
+export function createBidTag (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/bidcoll/addLabel',
+    method: 'POST',
+    data
+  })
+}
+
+/*
+  保存或清除标讯绑定的标签 ajax
+  params: {
+    lids: String 标签id(加密后),  非必传
+    lname: String 标签名称,  非必传
+    laction: String  用户行为:S添加或绑定标签;D删除标签  非必传
+    binfo: Array 招标信息数组(已收藏的招标信息) 非必传
+    bid: String 招标信息加密后id  必传
+  }
+  1:lids为空;lname不为空;laction=”S”;binfo数组不为空->新增标签并且绑定收藏信息
+  2:lids不为空;laction=”S”;binfo数组不为空->收藏信息绑定标签
+  3:lids不为空;laction=”D”;->删除标签 并解绑收藏的信息
+*/
+export function saveBidCollAddTag (data) {
+  return request({
+    baseURL: '/publicapply',
+    url: '/bidcoll/label',
+    method: 'POST',
+    data
+  })
+}
+
+// 检查是否收藏
+export function checkBidsIsColl (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/bidcoll/isColl?t=' + Date.now(),
+    method: 'POST',
+    data
+  })
+}
+
+// 获取身份列表
+export function getIdentityList () {
+  return request({
+    timeout: 5000,
+    baseURL: '/publicapply',
+    url: '/identity/list',
+    method: 'POST'
+  })
+}
+
+// 校验密码
+export function passwordCheck (data) {
+  return request({
+    baseURL: '/publicapply',
+    url: '/password/check',
+    method: 'POST',
+    data
+  })
+}
+
+// 修改密码
+export function passwordUpdate (data) {
+  return request({
+    baseURL: '/publicapply',
+    url: '/password/update',
+    method: 'POST',
+    data
+  })
+}
+
+// 身份信息维护 - 查询
+export function getUserIdentity (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/identity/maintenance/detail',
+    method: 'POST',
+    data
+  })
+}
+// 身份信息维护 - 编辑
+export function editUserIdentity (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/identity/maintenance/edit',
+    method: 'POST',
+    data
+  })
+}
+
+// 获取活动配置信息
+export function getActivityConfig (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/activity/day/info',
+    method: 'post',
+    data
+  })
+}
+
+// 业主监控采购单位已读接口
+export function setReadStatus (data) {
+  // data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/customer/read',
+    method: 'POST',
+    data
+  })
+}

+ 92 - 0
apps/bigmember_pc/src/api/modules/report.js

@@ -0,0 +1,92 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 周报详情
+export function getReportDetail (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/report/detail',
+    method: 'post',
+    data: data
+  })
+}
+
+// 首页接口
+export function getReportIndex (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/report/index',
+    method: 'post',
+    data: data
+  })
+}
+
+// 获取第一个周报月报的时间接口
+export function getReportStartTime (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/report/starttime',
+    method: 'post',
+    data: data
+  })
+}
+
+// 获取市场分析报告历史记录
+export function getReportHistoryList (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/marketAnalysis/analysisHistory',
+    method: 'post',
+    data: data
+  })
+}
+
+// 定制化报告开始分析
+export function doReportAnalysis (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/marketAnalysis/doAnalysis',
+    method: 'post',
+    data: data
+  })
+}
+
+// 定制化报告闲情
+export function getReportAnalysisInfo (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/marketAnalysis/getAnalysisResult',
+    method: 'post',
+    data: data
+  })
+}
+
+// 取消指定报告分析操作
+export function cancelReportAnalysis (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/marketAnalysis/cancel',
+    method: 'post',
+    data: data
+  })
+}
+
+// 删除报告
+export function deleteReportItem (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/marketAnalysis/delete',
+    method: 'post',
+    data: data
+  })
+}
+
+// 查看报告--是否离线查询
+export function isOfflineReport (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/marketAnalysis/isOffline',
+    method: 'post',
+    data: data
+  })
+}

+ 258 - 0
apps/bigmember_pc/src/api/modules/subscribe.js

@@ -0,0 +1,258 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 获取大会员信息(订阅设置)
+export function getBigMemberInfo () {
+  return request({
+    url: '/use/info?t=' + Date.now(),
+    method: 'get'
+  })
+}
+
+// 获取订阅关键词(市场分析报告
+export function getAnalysisrKeyInfo () {
+  return request({
+    url: '/marketAnalysis/analysisKeyWord?t=' + Date.now(),
+    method: 'get'
+  })
+}
+
+// 修改关键词
+export function updateKey (data) {
+  // data = qs.stringify(data)
+  return request({
+    url: '/subscribe/key/update',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改区域设置
+export function updateArea (data) {
+  return request({
+    url: '/subscribe/area/update',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改信息类型
+export function updateInfoType (data) {
+  return request({
+    url: '/subscribe/infotype/update',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改采购单位行业
+export function updateBuyClass (data) {
+  return request({
+    url: '/subscribe/buyerclass/update',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改项目匹配
+export function updateProjectMatch (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/subscribe/projectmatch/update',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改”其他“采购单位按钮
+export function updateOtherBuyClass (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/subscribe/otherbuyclass/update',
+    method: 'post',
+    data: data
+  })
+}
+
+// 修改匹配方式
+export function updateMatchType (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/subscribe/matchtype/update',
+    method: 'post',
+    data: data
+  })
+}
+
+// 订阅地区、采购单位行业修改
+export function setAreaBuyer (data) {
+  data.vSwitch = 'm'
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/subscribe/update',
+    method: 'post',
+    data: data
+  })
+}
+
+// 订阅修改(换成超级订阅)
+export function setUserInfoVip (data) {
+  data.vSwitch = 'm'
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/subscribe/setUserInfo',
+    method: 'post',
+    data: data
+  })
+}
+
+// 相似订阅推荐
+export function getRecommend (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/member',
+    url: '/getRecomKWs',
+    method: 'post',
+    data: data
+  })
+}
+
+// 关键词近30天推送数量查询
+export function getPushCount (data) {
+  data.vt = 'm'
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/subscribe/keyset/getPushCount',
+    method: 'post',
+    data: data
+  })
+}
+
+// 超级订阅订阅设置-推送设置
+export function getPushSetDetail (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/pushset/detail',
+    method: 'post',
+    data: data
+  })
+}
+
+// 超级订阅订阅设置-修改订阅设置(全量提交,新增接口)
+export function updateVipSubscribe (data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: '/subscribe/vType/update',
+    method: 'post',
+    data: data
+  })
+}
+
+const vtMap = {
+  v: 'vType',
+  m: 'mType',
+  s: 'eType',
+  f: 'fType',
+  q: 'eType' // 企业订阅-也需调商机管理订阅信息接口,定义q为了区分企业订阅和个人订阅(商机管理)所传参数
+}
+// 企业订阅查询状态
+export function getViewStatus (vt, data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: `/subscribe/${vtMap[vt]}/viewStatus`,
+    method: 'post',
+    data: data
+  })
+}
+
+// 企业订阅接收人员获取
+export function getDistributor (vt, data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: `/subscribe/${vtMap[vt]}/distributor`,
+    method: 'post',
+    data: data
+  })
+}
+
+// 订阅手动分发
+export function getMsgDistributor (data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: '/subscribe/msgDistributor',
+    method: 'post',
+    data: data
+  })
+}
+
+// 用户绑定信息获取
+export function getUserBindInfo (data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: '/subscribe/getUser',
+    method: 'post',
+    data: data
+  })
+}
+
+// 用户绑定信息获取
+export function setUserBindInfo (data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: '/subscribe/setUser',
+    method: 'post',
+    data: data
+  })
+}
+
+// 用户推送设置信息获取
+export function getUserPushInfo (data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: '/subscribe/getPushSet?t=' + Date.now(),
+    method: 'post',
+    data: data
+  })
+}
+
+// 用户推送设置信息设置
+export function setUserPushInfo (data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: '/subscribe/setPushSet',
+    method: 'post',
+    data: data
+  })
+}
+
+// 查询用户订阅列表
+export function getStaffSubscribeList (data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: '/subscribe/getStaffSubscribe',
+    method: 'post',
+    data: data
+  })
+}
+
+// 查询用户订阅详情
+export function getStaffSubscribeDetail (data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: '/subscribe/getStaffSubscribeDetail',
+    method: 'post',
+    data: data
+  })
+}
+// 采购单位详情未登录右侧数据
+export function relatesInformation (data) {
+  return request({
+    baseURL: '/jyapi/jybx',
+    url: '/buyer/relates/information',
+    method: 'post',
+    data: data
+  })
+}

+ 104 - 0
apps/bigmember_pc/src/api/modules/svip.js

@@ -0,0 +1,104 @@
+import request from '@/api'
+import qs from 'qs'
+
+// 获取用户超级订阅购买信息
+export function getSVIPBuyInfo (data) {
+  // 免登录获取信息
+  if (data && data.token) {
+    data = qs.stringify(data)
+    return request({
+      baseURL: '/jypay',
+      url: '/free/seller/svip/getSubBuyMsg',
+      method: 'POST',
+      data
+    })
+  } else {
+    return request({
+      baseURL: '/subscribepay',
+      url: '/vipsubscribe/getSubBuyMsg?t=' + Date.now(),
+      method: 'POST'
+    })
+  }
+}
+
+// 获取超级订阅价格表
+export function getGoodsPrice (data) {
+  if (data && data.token) {
+    // 免登录状态查询
+    data = qs.stringify(data)
+    return request({
+      baseURL: '/jypay',
+      url: '/free/seller/svip/getPrice',
+      method: 'POST',
+      data
+    })
+  } else {
+    return request({
+      baseURL: '/subscribepay',
+      url: '/vipsubscribe/getPrice',
+      method: 'POST'
+    })
+  }
+}
+
+// 获取超级订阅价格
+export function getSelectPrice (data) {
+  if (data && data.token) {
+    data = qs.stringify(data)
+    return request({
+      baseURL: '/jypay',
+      url: '/free/seller/svip/getSelectPrice',
+      method: 'POST',
+      data
+    })
+  } else {
+    data = qs.stringify(data)
+    return request({
+      baseURL: '/subscribepay',
+      url: '/vipsubscribe/getSelectPrice',
+      method: 'POST',
+      data
+    })
+  }
+}
+
+// 超级订阅购买
+export function createSVIPOrder (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/subscribepay',
+    url: '/vipsubscribe/createOrder',
+    method: 'POST',
+    data
+  })
+}
+
+// 超级订阅升级
+export function svipUpgrade (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/subscribepay',
+    url: '/vipsubscribe/upgrade',
+    method: 'POST',
+    data
+  })
+}
+
+// 统一下单接口
+export function createCommonOrder (data) {
+  if (data && data.token) {
+    return request({
+      baseURL: '/jypay',
+      url: '/free/seller/createOrder',
+      method: 'POST',
+      data
+    })
+  } else {
+    return request({
+      baseURL: '/jypay',
+      url: '/common/createorder',
+      method: 'POST',
+      data
+    })
+  }
+}

+ 165 - 0
apps/bigmember_pc/src/api/modules/user.js

@@ -0,0 +1,165 @@
+import request from '@/api'
+import qs from 'qs'
+
+export function getEntApi (typeobj) {
+  if (typeobj && typeobj.noIntercept) {
+    return request({
+      baseURL: '/entnicheNew',
+      url: '/buy/whetherbuy',
+      method: 'post',
+      noIntercept: true // 不走登录拦截逻辑
+    })
+  } else {
+    return request({
+      baseURL: '/entnicheNew',
+      url: '/buy/whetherbuy',
+      method: 'post',
+      noIntercept: true // 不走登录拦截逻辑
+    })
+  }
+}
+
+export function getUserPower () {
+  return request({
+    url: '/use/isAdd',
+    method: 'get'
+  })
+}
+
+export function getUserAccountInfo () {
+  return request({
+    baseURL: '/jypay',
+    url: '/user/getAccountInfo',
+    method: 'get'
+  })
+}
+
+// 获取entSearch权限信息
+export function getEntSearchPower () {
+  return request({
+    baseURL: '/publicapply',
+    url: '/bidcoll/power',
+    method: 'POST'
+  })
+}
+
+// 获取标讯收藏列表
+export function getEntCollectionList (data) {
+  return request({
+    baseURL: '/publicapply',
+    url: '/bidcoll/list',
+    method: 'POST',
+    data
+  })
+}
+
+// 获取广告位图片和链接
+export function getAdList (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/jypay',
+    url: '/getAdvertisement',
+    method: 'post',
+    data
+  })
+}
+
+// 获取大会员用户套餐信息
+export function getUseEquity (data) {
+  data = qs.stringify(data)
+  return request({
+    url: '/use/equity',
+    method: 'post',
+    data
+  })
+}
+
+// 获取所有用户可用功能接口
+export function getAllFunctions (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/userbase/allFunctions',
+    method: 'post',
+    data
+  })
+}
+
+export function getMedicalIndustry (data) {
+  return request({
+    baseURL: '/publicapply',
+    url: '/userbase/medical/industryTag',
+    method: 'post',
+    data
+  })
+}
+
+// 获取用户当前常用功能
+export function getCanUseFunctions (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/userbase/functions',
+    method: 'post',
+    data
+  })
+}
+
+// 保存用户常用功能
+export function saveCommonFunctions (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/userbase/saveFunctions',
+    method: 'post',
+    data
+  })
+}
+
+// PC端大会员侧边栏菜单
+export function getLeftMenu (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/publicapply',
+    url: '/userbase/bigmemberMenu',
+    method: 'post',
+    data
+  })
+}
+
+// 大会员首页消息展示
+export function latestNews () {
+  return request({
+    baseURL: '/jymessageCenter',
+    url: '/latestNews',
+    method: 'post'
+  })
+}
+
+/**
+ * 消息点击记录接口
+ * @param data
+ * @returns {*}
+ */
+export function clickMessage (data) {
+  return request({
+    baseURL: '/jyapi/messageCenter',
+    url: '/msgOpenLog',
+    method: 'post',
+    data
+  })
+}
+
+/**
+ * 标记为已读
+ * @param data
+ * @returns {*}
+ */
+export function readMark (data) {
+  return request({
+    baseURL: '/jyapi/messageCenter/',
+    url: '/markRead',
+    method: 'post',
+    data
+  })
+}

+ 105 - 0
apps/bigmember_pc/src/api/modules/workspace.js

@@ -0,0 +1,105 @@
+import request from '@/api'
+import qs from 'qs'
+
+/**
+ * @param {*} actionMode
+ * 常用功能更新(保存):commonlyRenew
+ * 常用功能列表:commonlyList
+ * 菜单模式更新:menuMode
+ * @returns
+ */
+const actionModeMap = {
+  save: 'commonlyRenew',
+  list: 'commonlyList',
+  mode: 'menuMode'
+}
+export function workspaceCommonUse (type, data) {
+  const actionMode = actionModeMap[type]
+  if (!actionMode) {
+    return console.warn('未知类型type')
+  }
+  return request({
+    baseURL: '/userCenter',
+    url: `/workDesktop/renew/${actionMode}`,
+    method: 'POST',
+    data
+  })
+}
+
+// 获取工作桌面菜单
+export function getWorkspaceMenu () {
+  return request({
+    baseURL: '/userCenter',
+    url: '/workDesktop/menuInfo',
+    method: 'POST'
+  })
+}
+
+// 商机管理 - 我的客户
+export function customerQuery (data) {
+  return request({
+    baseURL: '/entnicheNew',
+    url: '/customer/query',
+    method: 'POST',
+    data
+  })
+}
+
+// 商机管理 - 客户关注列表
+export function entNewFollowClientList (params) {
+  return request({
+    baseURL: '/entnicheNew',
+    url: '/customer/list',
+    method: 'GET',
+    params
+  })
+}
+
+// 商机管理 - 过程数据看板 - 数据概览 - 个人数据概览
+export function getEmployeeDataOverview (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/entnicheNew',
+    url: '/employeeDataBoard/userDataView',
+    method: 'POST',
+    data
+  })
+}
+// 商机管理 - 过程数据看板 - 数据概览 - 部门数据概览
+export function getDepDataOverview (data) {
+  data = qs.stringify(data)
+  return request({
+    baseURL: '/entnicheNew',
+    url: '/reportform/departDataOverView',
+    method: 'POST',
+    data
+  })
+}
+
+// 商机管理 - 查询用户关键词列表
+export function getEntNicheSubKeyList () {
+  return request({
+    baseURL: '/entnicheNew',
+    url: '/subscribe/key/get',
+    method: 'POST'
+  })
+}
+
+// 消息中心 - 消息列表查询
+export function getMessageCenterList (data) {
+  return request({
+    baseURL: '/jyapi/messageCenter',
+    url: '/MessageList',
+    method: 'POST',
+    data
+  })
+}
+
+// 获工作台介绍
+export function getWhatIsWorkspace () {
+  return request({
+    baseURL: '/front',
+    url: '/bootstrap/specification',
+    method: 'get'
+  })
+}

BIN
apps/bigmember_pc/src/assets/fonts/Fontquan-XinYiGuanHeiTi.ttf


BIN
apps/bigmember_pc/src/assets/fonts/iconfont.ttf


BIN
apps/bigmember_pc/src/assets/fonts/iconfont.woff


BIN
apps/bigmember_pc/src/assets/fonts/iconfont.woff2


BIN
apps/bigmember_pc/src/assets/images/advanced/dialog-head.png


BIN
apps/bigmember_pc/src/assets/images/advanced/dialog-qrcode.png


BIN
apps/bigmember_pc/src/assets/images/analysis-divider-bg.png


BIN
apps/bigmember_pc/src/assets/images/auto.png


BIN
apps/bigmember_pc/src/assets/images/bg_1.png


BIN
apps/bigmember_pc/src/assets/images/big-1.png


BIN
apps/bigmember_pc/src/assets/images/big-2.png


BIN
apps/bigmember_pc/src/assets/images/big-3.png


BIN
apps/bigmember_pc/src/assets/images/big-4.png


BIN
apps/bigmember_pc/src/assets/images/big-5.png


BIN
apps/bigmember_pc/src/assets/images/big-6.png


BIN
apps/bigmember_pc/src/assets/images/big-7.png


BIN
apps/bigmember_pc/src/assets/images/big/1-big.png


BIN
apps/bigmember_pc/src/assets/images/big/1-old-big.png


BIN
apps/bigmember_pc/src/assets/images/big/10-big.png


BIN
apps/bigmember_pc/src/assets/images/big/11-big.png


BIN
apps/bigmember_pc/src/assets/images/big/12-big.png


BIN
apps/bigmember_pc/src/assets/images/big/13-big.png


BIN
apps/bigmember_pc/src/assets/images/big/14-big.png


BIN
apps/bigmember_pc/src/assets/images/big/14.1-big.png


BIN
apps/bigmember_pc/src/assets/images/big/15-big.png


BIN
apps/bigmember_pc/src/assets/images/big/16-big.png


BIN
apps/bigmember_pc/src/assets/images/big/17-big.png


BIN
apps/bigmember_pc/src/assets/images/big/2-big.png


BIN
apps/bigmember_pc/src/assets/images/big/3-big.png


BIN
apps/bigmember_pc/src/assets/images/big/4-big.png


BIN
apps/bigmember_pc/src/assets/images/big/5-big.png


BIN
apps/bigmember_pc/src/assets/images/big/6-big.png


BIN
apps/bigmember_pc/src/assets/images/big/7-big.png


BIN
apps/bigmember_pc/src/assets/images/big/8-big.png


BIN
apps/bigmember_pc/src/assets/images/big/88-big.png


BIN
apps/bigmember_pc/src/assets/images/big/9-big.png


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